gpt4 book ai didi

python - 大量在线对话文本的情感分析

转载 作者:太空狗 更新时间:2023-10-29 18:31:40 26 4
gpt4 key购买 nike

标题说明了一切;我有一个充满在线对话文本的 SQL 数据库。我已经用 Python 完成了这个项目的大部分工作,所以我想使用 Python 的 NLTK 库来完成这项工作(除非有strong理由不这样做)。

数据按ThreadUsernamePost 组织。每个线程或多或少都侧重于讨论我有兴趣分析的类别中的一个“产品”。最终,当这完成时,我想从每个用户那里得到他们在某个时候讨论过的任何产品的估计意见(喜欢/不喜欢某种交易)。

那么,我想知道的是:

1) 我怎样才能确定每个线程是关于什么产品的?我正在阅读有关关键字提取的内容...这是正确的方法吗?

2) 我如何根据他们的帖子确定特定用户的情绪?根据我有限的理解,我必须首先“训练”NLTK 以识别某些意见指标,然后我简单地确定这些词出现在文本中时的上下文?

您现在可能已经猜到了,我之前没有使用 NLP 的经验。从我目前的阅读来看,我认为我可以应付学习它。如果有人能为我指出正确的方向,即使现在只是一个基本和粗略的工作模型也会很棒。 Google 对我帮助不大。

P.S. 我有权分析此数据(以防万一)

最佳答案

训练任何分类器都需要一个训练集标记数据和一个特征提取器来获取每个文本的特征集。拥有经过训练的分类器后,您可以将其应用于以前未见过的文本(未标记)并根据所使用的机器学习算法获得分类。 NLTK gives a good explanation and some samples to play around with .

如果您有兴趣使用自己的训练数据集构建积极/消极情绪的分类器,我会避免简单的关键字计数,如 they aren't accurate for a number of reasons (例如,否定积极的词:“不开心”)。另一种方法是远程监督,您仍然可以使用大型训练集而无需手动标记任何内容。基本上,这种方法使用表情符号 或其他特定文本元素作为噪声标签。您仍然必须选择哪些特征是相关的,但许多研究仅使用 unigramsbigrams(分别是单个词或词对)就取得了很好的效果。

使用 Python 和 NLTK 可以相对轻松地完成所有这些工作。您还可以选择使用类似 NLTK-trainer 的工具,它是 NLTK 的包装器,需要的代码更少。

我认为this study由 Go 等人撰写。是最容易理解的之一。您还可以阅读关于 distant supervision 的其他研究, distant supervision sentiment analysis , 和 sentiment analysis .

NLTK 中有一些带有训练和分类方法的内置分类器(Naive BayesMaxEnt 等),但如果您对使用支持向量机 (SVM) 感兴趣,那么您应该看看别处。从技术上讲,NLTK 为您提供了一个 SVM class但它实际上只是 PySVMLight 的包装器,它本身是 SVMLight 的包装器,用 C 语言编写。虽然我在使用这种方法时遇到了很多问题,但我会推荐 LIBSVM .

为了确定主题,许多人使用简单的关键字,但也有一些更复杂的方法可用。

关于python - 大量在线对话文本的情感分析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15326694/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com