2

我正在做一个小型研究项目,我应该尝试将财经新闻文章标题分为正类和负类。对于分类,我使用的是 SVM 方法。我现在看到的主要问题是不能产生很多特征对于机器学习。新闻文章包含许多命名实体和其他“垃圾”元素(当然从我的角度来看)。

您能否推荐可用于 ML 训练的 ML 功能?目前的结果是:精度=0.6,召回率=0.8

谢谢

4

3 回答 3

2

这项任务根本不是微不足道的。

直接的方法是找到或创建一个训练集。那是一组带有正面新闻的标题和一组带有负面新闻的标题。您将训练集转换为 TF/IDF 表示,然后训练线性 SVM 以分离两个类。根据您的训练集的质量和大小,您可以取得不错的成绩 - 不确定 0.7 的盈亏平衡点。

然后,为了获得更好的结果,您需要采用 NLP 方法。尝试使用词性标注器来识别形容词(微不足道的),然后使用 SentiWordNet 等情感数据库对它们进行评分。

Bo Pang 和 Lillian Lee对情绪分析有一个很好的概述,你应该阅读:

于 2012-07-17T23:28:04.627 回答
1

这些功能怎么样?

  1. 文章标题的长度(以单词为单位)
  2. 平均字长
  3. “坏”词词典中的词数,例如dictionary = {terrible,可怕的,低迷,破产,...}。您可能必须自己生成此词典。
  4. 该词典中的单词与句子中总单词的比率
  5. 与 3 类似,但在“好”词词典中的词数,例如 dictionary = {boon, booming,employment, ...}
  6. 类似于 5,但使用“好”字词典
  7. 文章发表时间
  8. 文章发表日期
  9. 发布的媒介(您必须进行一些主观分类)
  10. 某些标点符号的计数,例如感叹号

如果您被允许访问实际文章,您可以使用实际文章的表面特征,例如其总长度,甚至可能是回复的数量或对该文章的反对程度。您还可以查看许多其他在线词典,例如 Ogden 的 850 基本英语词典,看看坏/好文章是否可能从中提取很多单词。我同意为此目的提出一长串有用的功能(例如 100 个功能)似乎很困难。

于 2012-07-17T17:20:45.923 回答
0

iliasfl 是对的,这不是一个简单的任务。

我会使用词袋方法,但首先使用 POS 标记器来标记标题中的每个单词。然后您可以删除所有命名实体 - 正如您正确指出的那样,这不会影响情绪。其他词应该足够频繁地出现(如果你的数据集足够大),以消除它们被极化为正面或负面的影响。

更进一步,如果您仍然不接近,可能只从标记数据中选择形容词和动词,因为它们是倾向于传达情感或情绪的词。

不过,我不会对您的精确度和召回率数据感到灰心,0.8 及以上的 F 数实际上是相当不错的。

于 2012-07-18T16:55:29.187 回答