【问题标题】:How to improve a twitter sentiment analyzer?如何改进 Twitter 情绪分析器?
【发布时间】:2016-10-04 00:22:10
【问题描述】:

我正在开发一个 C++ Twitter 公司情绪分析工具。用户输入一家公司,该工具会分析 # 条推文并返回一种情绪。

到目前为止,我做了以下工作:

  1. 将推文限制为英语和最近的推文
  2. 小写
  3. 删除 RT、# 符号、@用户名和 URL
  4. 删除 &^%$(){}... 等字符

然后,我将推文解析为单词,并对照两个正负单词词典检查单词。我为每条推文创建了一个总体情绪。然后我计算正面、中性和负面推文的数量以得出最终答案。没有使用权重。

我正在考虑实现以下两件事:

  1. 从推文中删除停用词
  2. 从推文中删除特殊字符和表情符号(基本上是非英文 Unicode)

但是,即使这样,大多数搜索最终都是非常中立的。例如,如果我在 100 条推文中搜索“Apple”,我会得到 30 条肯定、10 条否定和 60 条中立。

问题:
1. 有没有办法降低中性点?
2.我应该添加什么样的正面和负面词来代表我的搜索条件(公司)

【问题讨论】:

  • 你说你remove special characters and emoticons from tweets,为什么不也分析一下表情包呢?开心的脸 = 积极的情绪
  • 如果您手动对这些推文进行分类,您会得到截然不同的结果吗? (滚动浏览“Apple”搜索,我看到的大多数推文非常中性。)
  • @Keatinge 常规表情符号会很容易...例如::) 或 :( 或 :D 。但是现在大多数推文都包含符号。实际上是表情符号。我使用了表情符号。我应该说表情符号。那些在文本中显示为奇怪的字符

标签: c++ twitter machine-learning sentiment-analysis


【解决方案1】:

您说没有使用权重,但为什么不添加它。为每个 +/- 词分配一个 1 的基本权重,然后可以应用以下一些条件:

  1. 如果他们使用“非常”、“非常”等词,则加重以下形容词的权重(或不加权重,将它们都算作 +/- 词)
  2. 而不是将所有内容都更改为小写,如果单词涉及大写锁定,则使用乘数对这些单词进行加权
  3. 对“fantastic”等词的评价要比“good”等词重

【讨论】:

  • 听起来是个好主意,但我不确定我是否有时间实施体重系统。我必须在周末结束前介绍一些东西。我将它们设为小写以简化比较。另外,我在想重复的字母会产生不同的情绪。就像电影很好。这部电影太棒了 :)
  • 您也可以在将单词转换为小写之前检查单词是否全部大写,然后增加权重。就像“我绝对喜欢编程”比“我绝对喜欢编程”热情一点。
猜你喜欢
  • 2022-11-20
  • 2022-01-10
  • 1970-01-01
  • 2018-04-10
  • 2016-03-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多