我不知道这是否是问这个问题的正确地方,但是,我正在尝试用Python构建一个机器人,它将读取Slack频道上的传入消息,客户在该频道上发布他们的问题,如"无法连接到VPN"、"有人能回复我的机票吗"等。
机器人会分析消息,确定客户是否愤怒,然后提出解决方案,直到代理可以自由地实际检查问题。
现在,我正在尝试使用TextBlob进行情绪分析,但我不知道该使用哪些技术来根据特定的关键词来确定问题,并为用户提供解决方案。有人能向我推荐一些我可以用来实现这一点的python库/技术吗?
老实说,你的问题是一次性回答的。
无论如何,你首先必须清楚地定义你的项目范围。在这样做的时候,你可能想先做一个快速的文字回顾(谷歌学者(,以熟悉最先进的技术和方法。
根据我的小经验,用于确定单词情感的一种常见(可能很简单(技术(基于词典的方法(是使用一个预先编译的词典(尽管你可以创建自己的词典(,其中包含单词-情感映射。例如:
word:tired, sentiment:negative, score:5
因此,每当机器人找到关键字"时;累了";在一个句子中,它会给这个句子指定相应的负值(极性(。
您可能需要考虑在输入文本中应用POS tags
,因为有时nouns
或"动词与adjectives
相比具有重要意义。
但请记住,负面评论可以用sarcasm
的形式写。然而,讽刺检测是一项更为艰巨的任务。
或者,你可以尝试使用一个预先训练好的模型,比如bert-base-multilingual-uncased-sentiment
,它可以在"拥抱脸"中找到。
有关这件事的更多信息,你可以看看这篇文章。
正如我再次提到的,你必须清楚地定义你的目标。这将使您能够指定可用于解决问题的库或方法。希望我的回答能有所帮助。