Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

chuanyaoliu/emotionAnalysis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

1 Commit

Repository files navigation

美团酒店评论抓取和情感分析

​ 作为一个练手项目,协助笔者本人一位文科同学做数据分析,作为课程论文。文科生做数据分析项目,拿一堆的编程框架和机器学习的数学公式,这是很不适合的;因此我的思路是尽量目的明确,用的工具简单、明了、易上手。用到的工具有八爪鱼、pandas、jieba分词、SnowNLP自然语言处理库

​ 我选用八爪鱼这类爬虫工具来爬取数据,省去了用python来写爬虫的繁琐过程,用python来写这个爬虫有点杀鸡用牛刀。

​ 数据来了之后,首先第一步就是对数据进行清洗、查重,除去那些没有意义的评论。(这个是做数据科学处理的必备项目,不要小看这一步,数据处理的好与不好,对后面的分析流程很关键,甚至能决定你模型的好坏,我本科那会刚开始做数学建模的时候,没有意识到这个问题,吃了很多亏)。

​ 做中文文本分析的同学,对jieba这个库来说应该不陌生,算是目前做中文分词作的最好的一个库了。我们直接调用jiba库的api进行分词,调用tf-idf或者TextRank算法都可以实现文摘提取,具体用那种算法,根据实际情况认定。在这个分析过程中,我觉得TextRank算法的记过更为准确。

​ 情感分析方面,是属于NLP领域的内容,从原理上来说还是蛮难的,设计到词向量以及语义分析等一系列理论和复杂的数学公式,这个显然不是本项目的重点。从github上查了几个做类似的工作用到了SnowNLP这个NLP的库(https://github.com/isnowfy/snownlp)。这个库简单易用,集合了如下功能:

  • 中文分词(Character-Based Generative Model)

  • 词性标注(TnT 3-gram 隐马)

  • 情感分析(现在训练数据主要是买卖东西时的评价,所以对其他的一些可能效果不是很好,待解决)

  • 文本分类(Naive Bayes)

  • 转换成拼音(Trie树实现的最大匹配)

  • 繁体转简体(Trie树实现的最大匹配)

  • 提取文本关键词(TextRank算法)

  • 提取文本摘要(TextRank算法)

  • tf,idf

  • Tokenization(分割成句子)

  • 文本相似(BM25)

  • 支持python3(感谢erning)

    使用下来发现,这个库的分词效果没有jieba做到好(最好的中文分词库过然名不虚传),这个库的情感分析还是蛮不错的,而且官方说明了,原始的库就是基于淘宝消费评论来训练这个情感模型的,所以还是比较适合来做美团评论的情感分析。如果想用这个库来做其他的情感分析,可能不是很合适,这个库很友好也给出了基于你自己的数据来训练情感分类模型,这就需要你有很多做好情感标注的文本数据了(一般人做不来额~~)。

    SnowNLP做情感分析的tips:

    • 要先做好数据清洗再开始情感分析,不要让离谱的样本参与情感分析
    • 对于长文本的情感分析容易出现分析的结果不正确,这时候可以先对文本提取摘要再进行情感分析,会准确很多。具体的过程参看项目的jupyter notebook文件

About

抓取美团点评评论做情感分析

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

AltStyle によって変換されたページ (->オリジナル) /