使用自然语言处理来区分员工调查中的坏评论和好评论

问题描述 投票:0回答:4

这里的镜头有点远,对于缺乏信息,我深表歉意。然而,我现在甚至不知道该去哪里寻找。

因此,我试图从对随机公司员工的虚构调查中区分好评论和坏评论。我所拥有的只是一个数据框,其中包含员工发表的评论及其经理 ID 代码。这个想法是尝试通过 ID 来查看有多少好评和/或差评与经理相关联。

import pandas as pd 
trial_text=pd.read_csv("trial.csv")
trial_text.head()

   ManagerCode              Comment
0        AB123  Great place to work
1        AB123  Need more training
2        AB123  Hate working here
3        AB124  Always late home
4        AB124  Manager never listens

对于包含更多信息的数据集,我经常使用 NLTK,因此任何基于 NLTK 的内容都不会成为问题。就像我说的,就我所拥有的而言,“谷歌”有太多的信息,我不知道从哪里开始(或者说这是有用的)!如果有人能给我一个建议,让我走上正轨,那就太好了!

谢谢

python nlp nltk
4个回答
2
投票

textblob 怎么样?一个例子:

from textblob import TextBlob
TextBlob('this sounds pretty good!').sentiment

输出:

Sentiment(polarity=0.5625, subjectivity=0.8)

1
投票

你需要情绪分析。不过,我认为您不会使用现成的模型获得惊人的结果,因为您的回答非常简短并且非常特定于领域。如果您无论如何都想尝试,这里是如何将

vader
模型与
nltk
一起使用的示例:

from nltk.sentiment.vader import SentimentIntensityAnalyzer
sid = SentimentIntensityAnalyzer()
sid.polarity_scores('Great place to work')
>>> {'neg': 0.0, 'neu': 0.423, 'pos': 0.577, 'compound': 0.6249}
sid.polarity_scores('Manager never listens')
>>> {'neg': 0.0, 'neu': 1.0, 'pos': 0.0, 'compound': 0.0}

如您所见,您的里程可能会有所不同。

如果您有大量回复(数千个),更可行的策略是手动标记样本,例如几十到几百并训练你自己的情感分类器。以下是一些关于如何使用 nltksklearn

执行此操作的好教程

1
投票

如果您的数据集较小,您可以使用逻辑回归进行情感分析,因为它是分类问题。您可以在这里找到类似的示例:使用逻辑回归进行情感分析


-3
投票

本讨论对如何将自然语言处理应用于员工反馈的情绪分析进行了有益的探索。使用 TextBlob 和 VADER 等实用建议特别有帮助。要更深入地了解什么是自然语言处理及其未来潜力,请查看这份综合指南。感谢您分享这些见解!

© www.soinside.com 2019 - 2024. All rights reserved.