最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Python酒店評論文本數(shù)據(jù)分析:tf-idf、貝葉斯、邏輯回歸,支持向量機SVM、K最鄰近算法

2023-01-10 22:20 作者:拓端tecdat  | 我要投稿

全文鏈接:http://tecdat.cn/?p=31233

原文出處:拓端數(shù)據(jù)部落公眾號

分析師:Yuanyuan Zhang

隨著互聯(lián)網(wǎng)的普及和移動端的應(yīng)用的飛速發(fā)展,消費者在各大電商平臺進行活動交易時產(chǎn)生了大量的行為數(shù)據(jù),在線評論文本就是其中一種。

去年,我們?yōu)橐晃豢蛻暨M行了短暫的咨詢工作,他正在構(gòu)建一個主要基于酒店評論數(shù)據(jù)的文本分析應(yīng)用程序。在線評論文本是消費者對消費對象切身體驗后以文本的形式反饋至電商平臺,被作為大眾的輿論觀點導(dǎo)向。對此類觀點進行有效情感分類不僅可以幫助消費者進行決策,還可以幫助商家對服務(wù)進行改善。

本文分析的數(shù)據(jù)是從某酒店預(yù)定網(wǎng)站獲取到的評論數(shù)據(jù)。通過對評論數(shù)據(jù)的分析,得到影響好差酒店的關(guān)鍵影響因素,并建立模型預(yù)測評論所對應(yīng)的等級。在眾多文本中篩選人們評論的關(guān)鍵因素因為存在情感傾向,中文表達的多樣,隱性表達使得提取關(guān)鍵影響因素稱為本項目的一大挑戰(zhàn)。另一個挑戰(zhàn)是評分預(yù)測,由于數(shù)據(jù)的不規(guī)則,對于模型的選取又是一大難點。

任務(wù)/目標

l? 根據(jù)給定評價(review),預(yù)測評分(rating)

l? 提取“好”,“差”酒店的關(guān)鍵影響因素

分析思路:

對于問題一,需要根據(jù)給定評價預(yù)測評分,由于每一條評論都有1~5五種評分方式,因此屬于文本多分類問題,文本分類的算法很多,有機器學(xué)習(xí)方面的也有深度學(xué)習(xí)方面的,在這里我們嘗試了樸素貝葉斯、邏輯回歸,支持向量機(SVM)、K最鄰近算法(KNN)、隨機森林等多分類算法,并進行了相關(guān)比較。本次分類任務(wù)的最大特點是我們處理的是英文的文本,為此我們使用了經(jīng)典的tf-idf模型進行特征提取,對train_data進行初步簡單的劃分,并訓(xùn)練后發(fā)現(xiàn)預(yù)測準確率都不高。隨后我們從數(shù)據(jù)預(yù)處理、調(diào)參以及數(shù)據(jù)劃分和訓(xùn)練及預(yù)測方法上做了優(yōu)化處理,具體來說,就是數(shù)據(jù)預(yù)處理時充分考慮了英文文本自身的特點,調(diào)參時用到了控制變量法和交叉檢驗法,同時在訓(xùn)練集與測試集劃分和緊接著的訓(xùn)練與預(yù)測上也用的是交叉檢驗法。最后對我們的Testing data.csv 文件進行預(yù)測時,我們是選取了準確率最高的模型和我們自己調(diào)試的相應(yīng)參數(shù)。

對于問題二,提取“好”,“差”酒店的關(guān)鍵影響因素,所研究的情感分類是二分類(正面情感和負面情感)的,給定文本已經(jīng)有了評分標簽,故可以通過評分標簽對文本進行分類,由于3分的評論情感傾向不明確,影響分類的準確性,為了得到更好的結(jié)果,剔除3分的評論數(shù)據(jù),將評分為1-2的差評數(shù)據(jù)和評分為4-5的好評數(shù)據(jù)進行訓(xùn)練,并根據(jù)TF-IDF算法提取關(guān)鍵詞繪制詞云圖。根據(jù)詞云圖可以初步確定好評和差評的關(guān)鍵因素。但是由于用戶表達的情感傾向和其使用的關(guān)鍵詞存在反向否定的情況,為了進一步捕捉用戶的情感傾向,使用具有潛在狄氏分配的主題模型對所有評論數(shù)據(jù)建模,每一條評論,可視為一個主題,評論文本共19003條,對所有文本進行主題建模,設(shè)置主題參數(shù)為2,得到兩個主題的按升序排列的單詞重要性矩陣,顯示前60個主題關(guān)鍵詞,得到結(jié)果

如下訓(xùn)練樣本(只列舉部分特征)。

評分預(yù)測建模

1.?樸素貝葉斯模型

貝葉斯方法以貝葉斯原理為基礎(chǔ),在先驗概率的基礎(chǔ)上將數(shù)據(jù)集歸為n個標簽中后驗概率最大的標簽(基于最小錯誤率貝葉斯決策原則),其特點是結(jié)合先驗概率和后驗概率,避免了只使用先驗概率的主觀偏見,也避免了單獨使用樣本信息的過擬合現(xiàn)象。本次實驗中貝葉斯算法訓(xùn)練速度最快,準確度較高。

2.?隨機森林

隨機森林是一種集成算法(Ensemble Learning),它屬于Bagging類型,通過組合多個弱分類器,最終結(jié)果通過投票或取均值,使得整體模型的結(jié)果具有較高的精確度和泛化性能。其可以取得不錯成績,主要歸功于“隨機”和“森林”,一個使它具有抗過擬合能力,一個使它更加精準。在本次實驗中其預(yù)測準確率較低,訓(xùn)練速度較慢。

3.?邏輯回歸

邏輯回歸的思想就是 在線性回歸上再做一次函數(shù)轉(zhuǎn)換,對線性回歸的結(jié)果做一個在函數(shù)上的轉(zhuǎn)換,變化為邏輯回歸。這個函數(shù)一般取為sigmoid函數(shù),經(jīng)常用來解決二分類問題,也可以解決多分類問題,主要有兩種實現(xiàn)策略,一種是為每個類別創(chuàng)建一個sigmod分類器,再進行整合,另一種是就用一個digmod分類器,同時基于softmax思想為每個類別分配一個概率(所有類別的概率和為1)來訓(xùn)練模型,實現(xiàn)分類。本次實驗中使用這種方法取得了最高的預(yù)測準確率

4.?支持向量機(SVM)

支持向量機的目的在于求得最優(yōu)的即幾何間隔最大的超平面,在樣本數(shù)據(jù)是線性可分的時候,這里的間隔最大化又叫硬間隔最大化(訓(xùn)練數(shù)據(jù)近似可分的話就叫軟間隔)

實驗發(fā)現(xiàn)其訓(xùn)練速度較慢,準確度一般。

模型優(yōu)化

交叉檢驗是在機器學(xué)習(xí)建立模型和驗證模型參數(shù)時常用的辦法。交叉驗證,顧名思義,就是重復(fù)的使用數(shù)據(jù),把得到的樣本數(shù)據(jù)進行切分,組合為不同的訓(xùn)練集和測試集,用訓(xùn)練集來訓(xùn)練模型,用測試集來評估模型預(yù)測的好壞。在此基礎(chǔ)上可以得到多組不同的訓(xùn)練集和測試集,某次訓(xùn)練集中的某樣本在下次可能成為測試集中的樣本,即所謂“交叉”?!?/p>

根據(jù)切分的方法不同,交叉驗證分為下面三種:   
第一種是簡單交叉驗證,所謂的簡單,是和其他交叉驗證方法相對而言的。首先,我們隨機的將樣本數(shù)據(jù)分為兩部分(比如:?70%的訓(xùn)練集,30%的測試集),然后用訓(xùn)練集來訓(xùn)練模型,在測試集上驗證模型及參數(shù)。接著,我們再把樣本打亂,重新選擇訓(xùn)練集和測試集,繼續(xù)訓(xùn)練數(shù)據(jù)和檢驗?zāi)P汀W詈笪覀冞x擇損失函數(shù)評估最優(yōu)的模型和參數(shù)?!?br>第二種是S折交叉驗證(S-Folder?Cross?Validation)。和第一種方法不同,S折交叉驗證會把樣本數(shù)據(jù)隨機的分成S份,每次隨機的選擇S-1份作為訓(xùn)練集,剩下的1份做測試集。當這一輪完成后,重新隨機選擇S-1份來訓(xùn)練數(shù)據(jù)。若干輪(小于S)之后,選擇損失函數(shù)評估最優(yōu)的模型和參數(shù)。
第三種是留一交叉驗證(Leave-one-out?Cross?Validation),它是第二種情況的特例,此時S等于樣本數(shù)N,這樣對于N個樣本,每次選擇N-1個樣本來訓(xùn)練數(shù)據(jù),留一個樣本來驗證模型預(yù)測的好壞。此方法主要用于樣本量非常少的情況,比如對于普通適中問題,N小于50時,一般采用留一交叉驗證。
本次實驗采用簡單交叉進行驗證

關(guān)鍵詞提取建模

LDA模型:LDA即LatentDirichletAllocation(隱含狄利克雷分布),是由Blei于2003年提出的三層貝3葉斯主題模型,通過無監(jiān)督的學(xué)習(xí)方法發(fā)現(xiàn)文本中隱含的主題信息,LDA是一種概率生成模型,試圖找出幾個常出現(xiàn)在不同文檔中的單詞。假設(shè)每個單詞都是由不同文檔組成的混合體,那么經(jīng)常出現(xiàn)的單詞就代表主題。LDA 的輸入是詞袋模型,LDA把詞袋矩陣作為輸入然后分解成兩個新矩陣:1.文檔主題矩陣2.單詞主題矩陣

模型圖如下:

使用各種模型的正確率圖示:

問題二結(jié)果圖:

分別對評分為1-3分和評論與評分為4-5分的評論制作詞云圖如下:

<評分4~5分詞云圖>

<評分1~3分詞云圖>

發(fā)現(xiàn)在低分的評論詞云圖中出現(xiàn)了正向情感詞,因為3分的評論對于“好”“差”的傾向度不高,因此選擇了45分的評論和12分的評論分別繪制詞云圖,結(jié)果如下

<評分為4~5分詞云圖>

<評分為1~2分詞云圖>

為了得到更強的區(qū)分度,分別對評分為5分的評論集和1分的評論集繪制詞云,得到如下結(jié)果

<評分為5分詞云圖>

<評分為1分詞云圖>

從上述結(jié)果可以直觀的看到,剔除描述情感傾向的詞匯

好酒店的關(guān)鍵影響因素:uinique parking? staying?? convenient? location? clean? large? quick? seahawk? time monaco cruise spent

差酒店的關(guān)鍵影響因素:staff airconditioner?? charge? theft? looked? building? tiny? unfriendly?? outside cleanliness?? wire? ruined? talking booked/reservation? noise? internet

為了得到更準確的結(jié)果,使用LDA進行情感主題分類,得到量化結(jié)果如下:

好酒店的關(guān)鍵影響因素

差酒店的關(guān)鍵影響因素

關(guān)于作者

在此對Yuanyuan Zhang對本文所作的貢獻表示誠摯感謝,她擅長深度學(xué)習(xí)、數(shù)理金融。

最受歡迎的見解

1.Python主題建模LDA模型、t-SNE 降維聚類、詞云可視化文本挖掘新聞組

2.R語言文本挖掘、情感分析和可視化哈利波特小說文本數(shù)據(jù)

3.r語言文本挖掘tf-idf主題建模,情感分析n-gram建模研究

4.游記數(shù)據(jù)感知旅游目的地形象

5.疫情下的新聞數(shù)據(jù)觀察

6.python主題lda建模和t-sne可視化

7.r語言中對文本數(shù)據(jù)進行主題模型topic-modeling分析

8.主題模型:數(shù)據(jù)聆聽人民網(wǎng)留言板的那些“網(wǎng)事”

9.python爬蟲進行web抓取lda主題語義數(shù)據(jù)分析


Python酒店評論文本數(shù)據(jù)分析:tf-idf、貝葉斯、邏輯回歸,支持向量機SVM、K最鄰近算法的評論 (共 條)

分享到微博請遵守國家法律
晋州市| 平凉市| 昌黎县| 江门市| 尉犁县| 海晏县| 普陀区| 阳春市| 武汉市| 姜堰市| 永顺县| 武宁县| 思南县| 饶平县| 蓝田县| 湄潭县| 阿坝县| 甘孜县| 灵寿县| 平遥县| 庐江县| 白朗县| 寿宁县| 合川市| 镇原县| 色达县| 丽江市| 芒康县| 财经| 兴城市| 乐清市| 新野县| 德令哈市| 桃源县| 定日县| 冕宁县| 会同县| 吉木萨尔县| 马龙县| 泸州市| 买车|