使用 NLP 检查英语句子是否对它们产生影响

数据挖掘 nlp
2022-03-09 17:17:09

我正在寻找高级方法来确定给定句子是否具有影响例如,在下面的两个示例中,第 2 句捕获了影响。

示例 1

句子 1:我今年学会了说西班牙语。

句子 2:我今年学会了说西班牙语,这有助于我将业务扩展到墨西哥。

示例 2

句子 1:我今年教给我的学生机器学习。

句子 2:我今年早些时候向我的学生教授机器学习,这导致​​学生的基本工资增加了 20,000 美元。

我最初的想法是以下方法。

  1. 想想所有的英语单词,比如helped、resulting等,
  2. 将这些词作为过滤器应用于公共域数据集以获取句子
  3. 整理句子以查看它们是否属于“句子 2”类别。
  4. 应用分类/建模将有影响和无影响的句子分类

问题

  1. 上述方法好还是有更好的方法?
  2. 解决此问题的最佳公开日期集是什么。

非常感谢任何输入。提前非常感谢!

1个回答

您提出的方法还可以,但我认为可以改进:

  1. 找到一个语料库(或几个语料库),选择代表您希望最终处理的那种数据。理想情况下,它将直接是目标数据的样本。
  2. 标记语料库或随机子集中的所有句子。这是因为您需要尽可能地保留分布,尤其是正/负实例的比例。如果您从过滤后的句子集开始,您将遇到两个问题:
    • 阳性案例的比例高于常规文本,这可能会使您的模型过度预测阳性案例;
    • 仅包含选定触发词的句子,这将导致您的模型将任何没有触发词的句子预测为否定(这是一个问题,因为您的触发词列表不能详尽)。

理想情况下,您会手动标记所有语料库,但这可能不现实。这就是为什么您可以尝试以稍微不同的方式使用触发词的想法,以便有效地标记所有实例:

  1. 过滤包含任何触发词的句子并标记它们;这是你的初始训练集
  2. 使用半监督的方法来标记其余的句子(也许你可以考虑主动学习)。