我有一个名为data_feed
的数据集包含反馈:
feedback
Fast Delivery. Always before time.Thanks
I have order brown shoe .And I got olive green shoe
Delivery guy is a decent nd friendly guy
Its really good .. my daughter loves it
One t shirt was fully crushed rest everything is good
Superfast delivery! I'm impressed.
......................... .
........................ .
so on
和另一个名为reference
的数据集: -
refer_feedback sub-category category sentiment
The delivery was on time. delivery speed delivery positive
he was polite enough delivery man behaviour delivery positive
worst products product quality general negative
现在我想用以下列扩展数据集datafeed
: -
feedback sub-category category sentiment
我如何匹配类似的反馈,即我希望将数据框feedback
中的列data_feed
与数据框refer_feedback
中的列reference
匹配,并将相应的标签提供给子类别,类别和情绪。
对于数据集data_feed
中的前第一反馈非常类似于数据集reference
的第一反馈,然后data_feed
的第一次观察将是:
feedback subcategory category sentiment
Fast Delivery. Always before time.Thanks delivery speed delivery positive
答案 0 :(得分:0)
您可以使用的一种策略是使用LDA分析反馈,以发现常见主题。然后,您可以使用主题在两个表之间进行映射。
LDA分析了所谓的语料库'的文件。文档在这里被抽象地使用。 refer_feedback
或feedback
的每个示例都可以构成语料库。
可以使用两种不同的方法:
refer_feedback
refer_feedback
的每个示例都将是您的语料库中用于此方法的文档。您要查找的主题数量等于唯一子类别的数量。
使用nltk删除停用词并执行lemmatisation。使用gensim对结果执行LDA以获取主题模型。使用此主题模型对feedback
进行分类。
feedback
如果您没有足够的refer_feedback
示例或尝试第一种方法但它不起作用,请尝试从大量feedback
示例中构建语料库。在这种方法中,主题的数量并不容易确定,但从接近您拥有的子类别数量的东西开始是有价值的。
再次使用ntlk
删除停用词并执行lemmatisation。构建LDA模型。
接下来,您需要手动将模型生成的主题映射到子类别。保存此映射。
当未来的反馈进来时,使用ldamodel发现其最可能的主题,然后使用您的主题到子类别的映射来分配适当的字段。