python - nltk 表达情绪的词袋
问题描述
我正在使用 python 和 nltk 研究 NLP。
我想知道是否有任何数据集包含包含与情绪相关的关键字的词袋,例如快乐、快乐、愤怒、悲伤等
从我在 nltk 语料库中挖掘出来的内容,我看到有一些情绪分析语料库包含正面和负面评论,这些评论与显示情绪的关键字并不完全相关。
无论如何,我可以建立自己的字典,其中包含为此目的表达情感的单词吗?是这样,我该怎么做,有没有这样的词的集合?
任何帮助将不胜感激
解决方案
我不知道有任何将情绪与关键字相关联的数据集,但您可以从通用情绪分析数据集开始轻松构建一个。
1) 从停用词和您不想与情绪关联的所有术语中清除数据集。
2)计算两个情感类中每个单词的计数并对其进行归一化。通过这种方式,您将为每个单词关联一个属于某个类的概率。假设你在肯定句中出现了 300 次“爱”这个词,而在否定句中出现了 150 次同一个词。规范化你有“爱”这个词有 66% (300/(150+300)) 的概率属于正类,33% 属于负类。
3)为了使字典对边界术语更加健壮,您可以设置一个阈值以将最大概率低于阈值的所有单词视为中性。
这是构建您正在寻找的字典的简单方法。您可以使用更复杂的方法作为术语频率 - 逆文档频率。
推荐阅读
- azure - 允许访问 Azure Web 应用的等效 Azure 服务
- continuous-integration - Gitlab CI/CD 部署到本地 Tomcat
- c# - 从另一个窗口更新主窗口列表
- redux - GraphQL 查询在突变后仅获取一次数据
- f# - c# 到 f# 当 3rd 方库想要一个 byref 作为输出参数时
- reactjs - 在某些操作(任何)之后,如何重新获取位于另一个页面上的组件中的查询,但只有当您转到此页面时?
- php - 为什么使用 LIKE %value% 给我的 php 页面一个 500 代码?
- node.js - 在服务器端保存用户会话,而不在 client.side 上保存任何内容
- python - 如何在以下代码中隐藏 ping 结果?
- javascript - 根据复选框添加数字