国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于Python的商品評論數(shù)據(jù)智能獲取與分析技術(shù)

2018-06-13 06:51孫雋韜陳炳豐黃愛華
現(xiàn)代計算機 2018年14期
關(guān)鍵詞:爬蟲分詞定性

孫雋韜,陳炳豐,黃愛華

(1.電子科技大學(xué)格拉斯哥學(xué)院,成都 611731;2.廣東工業(yè)大學(xué)計算機學(xué)院,廣州 510006;3.廣東工業(yè)大學(xué)發(fā)展規(guī)劃處,廣州 510006)

0 引言

隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,網(wǎng)上購物已然成為社會的主流購物方式,而這種購物方式存在普遍的弊端,人們無法在購買商品時對其好壞進行評判,而只能通過商家的描述與買家的商品評論來辨別。對于賣家對商品的描述多數(shù)存在不確定因素,即買家無法辨別商家所陳述的是否屬實。因此,買家對商品的評論成為評價該商品的重要因素。然而,對于購物者而言,要在短時間內(nèi)獲取大量評論信息并加以分析是不現(xiàn)實的,而在大量的評論樣本集合中抽取個別樣本分析會導(dǎo)致估計的評價缺乏準(zhǔn)確性與可信性,因此需獲取大量的評論數(shù)據(jù)并且加以分析才可得出可靠準(zhǔn)確的評論結(jié)果。

為解決上述問題,本文通過使用Python爬蟲,從網(wǎng)絡(luò)商城上獲取每一件商品下的所有評論,并且將這些數(shù)據(jù)持久化地保存于電腦硬盤中,同時對于已保存的評論數(shù)據(jù),再將其通過分詞手段將句子分割成若干詞語,并對分割出的詞語進行篩選,獲取對評論商品有意義的特定詞語,從而達到分析評論的目的。

1 相關(guān)工作

網(wǎng)絡(luò)爬蟲是獲取互聯(lián)網(wǎng)信息的重要工具。目前對于網(wǎng)絡(luò)爬蟲的研究與技術(shù)有很多[1-3],國內(nèi)也有很多針對社交平臺的網(wǎng)絡(luò)爬蟲[4-5],而社交平臺上的信息抓取同獲取網(wǎng)購商品評論是類似的。同時,針對于中文句子的分詞處理,現(xiàn)有的基于不同語言的函數(shù)庫如NL?PIR、結(jié)巴分詞等都可勝任。

1.1 Python爬蟲

憑借其擁有強大的函數(shù)庫以及部分函數(shù)對獲取網(wǎng)站源碼的針對性,Python成為能夠勝任完成網(wǎng)絡(luò)數(shù)據(jù)爬取的計算機語言。對于大量網(wǎng)絡(luò)信息的爬取,周中華等[4]針對新浪微博的數(shù)據(jù)獲取開發(fā)了一款從用戶登錄到關(guān)鍵字匹配的網(wǎng)絡(luò)爬蟲,并采用并行處理方式提高爬蟲效率。同樣,李俊麗[6]也提出了基于Linux的Python多線程爬蟲程序設(shè)計方法以獲取大量微博數(shù)據(jù),通過和基于開方API的爬蟲程序進行比較,在較長時間下,基于Linux的Python多線程爬蟲性能更優(yōu)異。

1.2 中文分詞

對于中文自然語言的詞語分割,俞鴻魁等[7]采用HMM模型識別出嵌套了人名、地名的復(fù)雜地名與機構(gòu)名,并在對大規(guī)模真實語料庫的封閉實驗中,人名、地名和機構(gòu)名的F-1值分別達到92.55%、94.53%、86.51%。袁俊[8]對基于HMM連續(xù)語音識別系統(tǒng)聲學(xué)層的Viterbi算法進行了改進,以提高解碼效率。而結(jié)巴分詞系統(tǒng)[9]在算法上采用了基于漢字成詞能力的HMM模型以及使用了Viterbi算法,使得該系統(tǒng)在基于Intel Core i7-2600 CPU@3.4GHz環(huán)境下?lián)碛?.5Mb/s的最大分詞速度。

1.3 分布式文件存儲

由F.Chang等[10]提出的Bigtable分布式存儲系統(tǒng)提供了一個靈活的、高性能的解決方案用來管理龐大數(shù)量的結(jié)構(gòu)化數(shù)據(jù);同樣為NoSQL類型的數(shù)據(jù)庫還有Redis、MongoDB、HBase等。朱建生等[11]則驗證了采用NoSQL數(shù)據(jù)庫可極大縮短數(shù)據(jù)搜索時間,提高數(shù)據(jù)讀寫效率和橫向拓展能力,即驗證了NoSQL數(shù)據(jù)庫技術(shù)在處理大數(shù)據(jù)查詢和分析中的高可用性。

2 數(shù)據(jù)智能獲取技術(shù)

將商品評論信息進行定性評判有四個部分,即數(shù)據(jù)篩選獲取、分詞處理、數(shù)據(jù)定性、數(shù)據(jù)整合。

2.1 評論數(shù)據(jù)獲取

目前,主流的網(wǎng)絡(luò)商城有淘寶、天貓、京東、蘇寧易購等,所有的網(wǎng)絡(luò)商城會針對不同的商品為其進行分類,以方便消費者對所要購買的商品進行合理的瀏覽,而在同一類別下有數(shù)目龐大的商品品種,其評論數(shù)目之多,無法采用人工方法去收集數(shù)據(jù),而采用爬蟲來解決評論數(shù)據(jù)獲取的問題。

圖1 爬蟲獲取評論數(shù)據(jù)流程

數(shù)目龐大的評論需要一條清晰的收集思路。對于消費者而言,最為重要的是同類商品不同種之間的對比,通常的,在網(wǎng)上商城輸入的搜索關(guān)鍵詞即為產(chǎn)品的分類,商品分類的粗細與關(guān)鍵詞的多少為直接關(guān)系。在搜索關(guān)鍵詞后得到的一系列商品便是目標(biāo)商品,而目標(biāo)商品的評論便是所需獲取的數(shù)據(jù)。

2.2 分詞處理

對于一個句子而言,往往可以通過其中的字詞的使用從而判定該句子的語氣與性質(zhì),針對于這一流程,為了讓電腦能同樣準(zhǔn)確的識別出一個句子的意義,則需要建立字典,通過運用字典來比對句子中的詞語,從而對句子意思進行判別。而在比對的過程中,需要根據(jù)自然語言的斷句規(guī)則先將句子進行拆分,即為分詞,從而得到有意義的詞語,這一步運用結(jié)巴分詞系統(tǒng)來得以實現(xiàn)。

圖2 分詞處理示例

2.3 評論定性

一條評論中可以有很多種的表述,對于商品的各方各面都會有所評判,因此,字典不僅僅為評論的定性提供標(biāo)準(zhǔn),也要為評論對商品所評價的方面提供基礎(chǔ)。通過建立兩個分別定性與分類的字典,來達到對評論進行精準(zhǔn)分類與定性的目的。

圖3 評論的判定過程示例

先使用分類字典與分詞后所得的詞語進行比對,得出評論中所涉及到的評論方面,再通過使用定性詞典對該方面之后的描述進行判定,所得結(jié)果輸出是與否,即表為褒義評價或貶義評價。而對于未能識別的評論,或者提到該方面卻為識別出性質(zhì)的評論,則將其判定為籠統(tǒng)評論,如圖3所示。

2.4 結(jié)果處理

在每一條評論進行處理之后,經(jīng)過分類處理,使用分布式存儲系統(tǒng)將處理后評論系統(tǒng)性地存儲進數(shù)據(jù)庫中。完成所有的評論收集工作,得到一個分類詳盡的評論分析列表,如圖4例中所示,列表可清晰羅列出每一條評論所評價的方面及褒貶。

圖4 數(shù)據(jù)儲存后的示例視圖

同時,對列表數(shù)據(jù)進行整合統(tǒng)計,可以得出對該商品所有評論的分析統(tǒng)計,進而全面詳細地了解商品各方面的好壞。最后所得出的結(jié)論可直接反饋給消費者,由此完成通過大量評論數(shù)據(jù)的分析而反映出的商品問題。

3 實驗結(jié)果與分析

以京東網(wǎng)絡(luò)商城中“技嘉顯卡”目錄下的部分商品為測試數(shù)據(jù),通過對其評論數(shù)據(jù)進行獲取與分析,并且通過分析后所得結(jié)果的整合與統(tǒng)計,所得結(jié)論用以驗證該設(shè)計方法的可行性。

表1 七款顯卡商品關(guān)于九個方面的褒貶評價

3.1 實驗數(shù)據(jù)集獲取

該實驗中共獲取20367條評論數(shù)據(jù),分別屬于7種商品的評論列表中,其中GTX 1060系列產(chǎn)品的評論數(shù)為6455條,GTX 1080為1439條,GTX 1070系列有3423條,GTX 1050Ti中有6454條,GTX 1050系列有1153條,GT 1030系列擁有577條,以及GTX 1070Ti系列的866條。

3.2 實驗數(shù)據(jù)處理

對于顯卡這類商品而言,消費者的主要關(guān)注點在于以下九個方面:游戲、質(zhì)量、性能、物流、做工、包裝、速度、性價比、散熱;對于形容這九個詞的描述,則建立為定性字典。將分詞處理后的評論與字典比對,得出評論中是否所涉及到如上九個方面,以及對這些方面的評價,實驗中用“P”表示了積極評價(Positive)以及用“N”表示了負面評價(Negative)。在對數(shù)據(jù)的統(tǒng)計中記錄該商品每一方面所擁有的“P”與“N”的個數(shù),從而可直觀的對商品進行分析。

3.3 實驗數(shù)據(jù)分析

對實驗所得數(shù)據(jù)經(jīng)過處理之后,得到的是評論面向不同方面的性質(zhì)統(tǒng)計,如表1所示,共列舉了所有七款商品關(guān)于九個方面的褒貶評價統(tǒng)計。在這些評論中,共有3511條評論是可以被成功識別出在這九個方面有所評價。

表2所示為在被成功識別出的評論中,關(guān)于其中三款顯卡商品評論的判斷與評論本意相比的正誤統(tǒng)計,以及得出的識別正確率。

表2 其中三款商品關(guān)于成功識別評論的識別正誤統(tǒng)計

對于識別率與正確率,其計算公式為:

識別率(正確率)=成功識別數(shù)(識別正確數(shù))/樣本總數(shù)(成功識別數(shù))×100%

由上述數(shù)據(jù)可得知,評論的識別率為17.24%,可知對于這九個方面的評論數(shù)據(jù)識別并不多,約6條評論中有1條被成功識別,評論的無法識別是因為其中沒有有關(guān)這九個方面的關(guān)鍵字,或者即使有,也無法識別出其所表達的褒貶含義,即如圖5所示,而京東評論中則存在多數(shù)此類只有籠統(tǒng)而無具體意義的評論。但是對于成功識別的評論而言,其定性的正確率高于90%。

圖5 評論無法識別例子

同時,對表1數(shù)據(jù)進行分析可知,對于入門級顯卡而言(GT 1030、GTX 1050),消費者普遍在游戲、性能與做工上存在抱怨,而中高端顯卡(GTX 1050Ti、GTX 1060、GTX 1070)消費者不滿的方面多數(shù)集中在游戲、性能、做工與包裝上,頂級游戲顯卡(GTX 1070、GTX 1070Ti、GTX 1080)則是表現(xiàn)在包裝、做工及散熱上。這一統(tǒng)計說明入門低端顯卡不能滿足消費者對性能與游戲的追求,同時低價位的顯卡也體現(xiàn)了做工上的問題;中高端顯卡有著同樣的問題,且體現(xiàn)了與低端顯卡的多一點需求:包裹的包裝問題;而消費者對于頂級顯卡則有著良好散熱的需求。因此,這符合顯卡市場的需求規(guī)律,繼而驗證了評論識別的準(zhǔn)確性。

4 結(jié)語

本文關(guān)于對網(wǎng)絡(luò)商城評論的獲取與分析的方法給予了一般消費者一個快捷的手段去獲取商品的評論統(tǒng)計,進而方便了消費者在選購商品是對于商品更客觀的對比。通過爬蟲先對網(wǎng)購商品評論進行批量獲取,對已獲取的評論進行分詞與比對分析,得出評論對于商品某些方面的定性評判。該方法可滿足不同商品對于不同方面的定性評判,因而具有普遍適用性。

[1]Boldi,Paolo,et al.Ubicrawler:A Scalable Fully Distributed Web Crawler.Software:Practice and Experience[J],2004,34(8):711-726.

[2]Ahmadi-Abkenari F,Selamat A.An Architecture for a Focused Trend Parallel Web Crawler with the Application of Clickstream Analysis[J].Information Science,2012,184(1):266-281.

[3]鄭冬冬,趙朋朋,崔志明.Deep Web爬蟲研究與設(shè)計[J].清華大學(xué)學(xué)報(自然科學(xué)版),2005(S1):1896-1902.

[4]周中華,張惠然,謝江.基于Python的新浪微博數(shù)據(jù)爬蟲[J].計算機應(yīng)用,2014,34(11):3131-3134.

[5]陳政伊,袁云靜,賀月錦,武瑞軒.基于Python的微博爬蟲系統(tǒng)研究[J].大眾科技,2017,19(08):8-11.

[6]李俊麗.基于Linux的python多線程爬蟲程序設(shè)計[J].計算機與數(shù)字工程,2015,43(05):861-863+876.

[7]俞鴻魁,張華平,劉群,呂學(xué)強,施水才.基于層疊隱馬爾可夫模型的中文命名實體識別[J].通信學(xué)報,2006(02):87-94.

[8]袁俊.HMM連續(xù)語音識別中Viterbi算法的優(yōu)化及應(yīng)用[J].電子技術(shù),2001(02):48-51.

[9]Github-fxsjy/jieba:結(jié)巴中文分詞[EB/OL].https://github.com/fxsjy/jieba/,2018-01-20.

[10]F.Chang,J.Dean,S.Ghemawat,W.C.Hsieh,D.A.Wallach,M.Burrows,T.Chandra,A.Fikes,R.E.Gruber.Bigtable:A Distributed Storage System for Structured Data[J].ACM Transactions on Computer Systems(TOCS),2008,26(2).

[11]朱建生,汪健雄,張軍鋒.基于NoSQL數(shù)據(jù)庫的大數(shù)據(jù)查詢技術(shù)的研究與應(yīng)用[J].中國鐵道科學(xué),2014,35(01):135-141.

猜你喜歡
爬蟲分詞定性
利用網(wǎng)絡(luò)爬蟲技術(shù)驗證房地產(chǎn)灰犀牛之說
近紅外光譜分析技術(shù)在紡織品定性定量分析上的應(yīng)用
分裂平衡問題的Levitin-Polyak適定性
基于UPLC-Q-Tof-MS/MS和HPLC的牙膏中葉綠素銅鈉主要成分的定性與定量研究
帶定性判斷的計分投票制及其公理刻畫
基于Python的網(wǎng)絡(luò)爬蟲和反爬蟲技術(shù)研究
分詞在英語教學(xué)中的妙用
結(jié)巴分詞在詞云中的應(yīng)用
結(jié)巴分詞在詞云中的應(yīng)用
基于Scrapy框架的分布式網(wǎng)絡(luò)爬蟲的研究與實現(xiàn)