豆瓣電影短評:Scrapy 爬蟲+數據清理/分析+構建中文文本情感分析模型

向AI轉型的程序員都關注了這個號???
機器學習AI算法工程?? 公眾號:datayx
項目——豆瓣電影Top250的短評分析
Scrapy 爬蟲 + 數據清理 + 數據分析 + 構建情感分析模型
一、爬取豆瓣Top250的短評數據
movie_item
movie_comment
movie_people
二、數據清理與特征工程+統(tǒng)計分析
就肖申克的救贖這個電影而言
全部影片的短評數據分析
短評詞云
用樸素貝葉斯完成中文文本分類器
用svc完成中文文本分類器
用facebook-fasttext有監(jiān)督完成中文文本分類
用facebook-fasttext無監(jiān)督學習
用cnn做中文文本分類
用rnn做中文文本分類
用gru來完成中文文本分類
總評分最高的前10部電影
最受歡迎的電影類別排名
最受歡迎的電影出品國家排名
最受歡迎的電影導演排名
最受歡迎的電影演員排名
最受歡迎的電影語言排名
根據電影時長的電影排名
根據電影投票數的電影排名
根據電影評價數的電影排名
根據電影提問數的電影排名
根據電影發(fā)布時間的規(guī)律
1~5星級投票的百分比
電影簡介的情感分析
movie_item
movie_comment
movie_people
短評人常居地按照國家分布
中國短評人常居地按照省份分布
每個短評人的被關注數與好友數
中國短評人的被關注數和好友數的人均地域分布
根據點評人個人簡介構建中文文本分類模型
三、movie_item + movie_comment + movie_people
三個數據集間的協同分析
通過短評來預測被評價電影是什么類型

代碼及運行教程,數據集??獲?。?/span>
關注微信公眾號 datayx ?然后回復??豆瓣? 即可獲取。
AI項目體驗地址 https://loveai.tech
項目要求:
爬取豆瓣Top250 or 最新電影(例如戰(zhàn)狼2、敦刻爾克、蜘蛛俠、銀魂)的短評數據,保證抓取盡量完整;
分析大家的短評用詞,分析 總體/分詞性 的核心詞,通過可視化方式展示;
統(tǒng)計分析電影的打分分布狀況、右側有用的分布、點評量隨時間的變化、點評人常居地的分布等,并用可視化的方式展示;
通過評分與短評數據,構建情感褒貶分析分類器,通過短評數據預測用戶“喜歡”or“不喜歡”電影。
項目總目標:
盡可能完備的爬取與短評相關的信息,足夠完備的給出所有分析。
項目分步目標:
爬取豆瓣Top250電影站點中三類數據:每個電影詳情信息、每個電影的短評內容和每個短評背后點評人的個人信息。
給每個數據集,分別完成統(tǒng)計分析、構建中文文本情感分析模型。
三個數據集交叉的統(tǒng)計分析,并構建中文文本深度學習模型。
Idea:
各個電影的信息與其所有短評之間的關聯,如根據短評判斷電影的是喜劇片還是犯罪片。
各個點評人的信息與其所發(fā)出的所有短評之間的關聯,如通過短評判斷點評人的常居地。
構造模型,給定某電影信息和點評人信息,推斷其會如何短評。
250電影的縱向對比:最受歡迎(前10)的電影(根據豆瓣?總評分?)/電影類別(按出現頻次)/導演(按出現頻次)/演員(按出現頻次)/語言(按出現頻次,可以對其根據**分類?)/出品國家(按出現頻次,可以對其根據大洲分類)/電影時長(按出現頻次,可以對其分段,看不同段的直方圖);所有電影的發(fā)布時間分布,以觀察什么年代的電影最受歡迎(可以對其分段);在發(fā)布時間基礎上,對比總評分/評價數/提問數的分布;以及,上述三者之間的分布依賴關系。從電影簡介中分析情感關鍵詞,看其與電影類別的關聯、與導演的性格關聯、與演員的關聯。
所有短評的統(tǒng)計分析:對每個電影爬取的短評量大致分布均勻;取前10電影,分別觀察,短評喜歡和不喜歡為label構建模型。
對點評人的常居地可視化;查看活躍的點評人(高關注數和好友數)的地理分布;點評人的個人簡介中蘊含的特征詞信息與地域的分布。
對每個數據集單獨做一個統(tǒng)計分析:
多個數據集綜合分析:
效果展示
我們會發(fā)現電影評價數和電影的投票數是極強相關的,pearsonr系數達到了0.9:

根據電影發(fā)布時間的規(guī)律
將所有Top電影按照發(fā)布時間排序后,我們可以對比觀察到Top好電影大多集中在90年代之后。每部電影的投票數也與之基本正相關,主要對90年代以來的電影尤為青睞和關注。

1~5星級投票的百分比
最后就只剩下給分星級所占比例的分析了,我們根據核密度估計繪制1-5星所占百分比的分布曲線


上圖是各省份人均被關注數的分布情況,常居北京的最容易收到最多的關注,而緊隨其后的常居地都是典型的旅游型省份:新疆、國外、云南、西藏。一方面來看,前段時間剛從新疆旅行回來,那邊的生活水平還是不錯的,網絡社交活動比較活躍也可以理解;另一方面,我猜測是一些點評人為了社交的便利或給自己增添一些異域風情,而胡亂寫的常居地,以此增加自己的被關注數。
雖然大部分人并不熱衷于寫短評,但是還是可以發(fā)現有相當一部分人簡直就是“短評小王子”,居然在Top250電影中留下過上百的評論。

根據短評文本生成該電影短評的詞云:

閱讀過本文的人還看了以下文章:
基于40萬表格數據集TableBank,用MaskRCNN做表格檢測
《深度學習入門:基于Python的理論與實現》高清中文PDF+源碼
python就業(yè)班學習視頻,從入門到實戰(zhàn)項目
2019最新《PyTorch自然語言處理》英、中文版PDF+源碼
《21個項目玩轉深度學習:基于TensorFlow的實踐詳解》完整版PDF+附書代碼
PyTorch深度學習快速實戰(zhàn)入門《pytorch-handbook》
【下載】豆瓣評分8.1,《機器學習實戰(zhàn):基于Scikit-Learn和TensorFlow》
《Python數據分析與挖掘實戰(zhàn)》PDF+完整源碼
汽車行業(yè)完整知識圖譜項目實戰(zhàn)視頻(全23課)
李沐大神開源《動手學深度學習》,加州伯克利深度學習(2019春)教材
筆記、代碼清晰易懂!李航《統(tǒng)計學習方法》最新資源全套!
【Keras】完整實現‘交通標志’分類、‘票據’分類兩個項目,讓你掌握深度學習圖像分類
如何利用全新的決策樹集成級聯結構gcForest做特征工程并打分?
Machine Learning Yearning 中文翻譯稿
斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)
中科院Kaggle全球文本匹配競賽華人第1名團隊-深度學習與特征工程
不斷更新資源
深度學習、機器學習、數據分析、python
?搜索公眾號添加:?datayx??
機大數據技術與機器學習工程
?搜索公眾號添加:?datanlp
長按圖片,識別二維碼
