聽(tīng)懂用戶們?cè)谡f(shuō)什么——UGC文本分析怎么做?
編輯導(dǎo)語(yǔ):文本分析對(duì)于用戶研究來(lái)說(shuō)十分重要,本文作者分享了UGC文本分析的具體方法邏輯,從獲取評(píng)論數(shù)據(jù)、預(yù)處理評(píng)論數(shù)據(jù)、分析評(píng)論數(shù)據(jù)、主題分析展開(kāi)闡述,感興趣的一起來(lái)學(xué)習(xí)一下吧,希望對(duì)你有幫助。
如果你的評(píng)論區(qū)僅有10條用戶評(píng)論,你可以很輕松地了解他們對(duì)這個(gè)產(chǎn)品/商品的態(tài)度如何以及表達(dá)了什么想法。但是,如果是100條,是不是需要稍微花點(diǎn)時(shí)間,變得吃力了?
如果是1000條,恐怕需要附上一些數(shù)據(jù)篩選的方式,一條一條看就不太適合了。即使1000條可以勉強(qiáng)人力處理,但問(wèn)題是,如果評(píng)論的數(shù)量擴(kuò)大到了10000條,別說(shuō)讀懂了,就連翻頁(yè)都得好長(zhǎng)時(shí)間,人力就捉襟見(jiàn)肘了。
這時(shí)候你需要運(yùn)用一些文本分析的方法,來(lái)幫助你讀懂海量的評(píng)論文本究竟在表達(dá)什么。
一、獲取評(píng)論數(shù)據(jù)
最樸實(shí)無(wú)華的方式當(dāng)然是Crtl C+Crtl V,將每一條數(shù)據(jù)手動(dòng)復(fù)制到Excel表格當(dāng)中。但正如上文所言,人力是有上限的,請(qǐng)讓我結(jié)合自身經(jīng)驗(yàn)來(lái)分享一下高效點(diǎn)的方法。
1. 如果你想通過(guò)編程的方法
在大家都是技術(shù)大佬的內(nèi)網(wǎng),我不敢班門弄斧,只簡(jiǎn)單地推薦一下學(xué)習(xí)路徑、科普一下相關(guān)概念。
做網(wǎng)絡(luò)爬蟲最易用的語(yǔ)言應(yīng)該非python莫屬,因?yàn)樯鲜值拈T檻很低,在掌握了一系列基本語(yǔ)法,會(huì)定義函數(shù)后,就可以安裝beautiful soup庫(kù)來(lái)開(kāi)始爬蟲之旅。網(wǎng)絡(luò)上的免費(fèi)課程非常地多,讓人眼花繚亂。
如果你自制力足夠,學(xué)習(xí)能力夠強(qiáng),其實(shí)隨便一搜,python的基礎(chǔ)語(yǔ)法對(duì)你來(lái)說(shuō)一定不算難。但如果你學(xué)習(xí)的時(shí)候需要一些交互,趣味對(duì)你來(lái)說(shuō)是必要的話,我會(huì)推薦你選擇風(fēng)變編程的課程,在線編程,即學(xué)即反饋是它的最大優(yōu)點(diǎn)。學(xué)習(xí)時(shí)間上來(lái)看,30小時(shí)是足夠了的。
2. 如果你想通過(guò)無(wú)代碼的方法
市面上越來(lái)越多的不用使用代碼就可以實(shí)現(xiàn)網(wǎng)絡(luò)爬取的工具,讓本懶人很是快樂(lè)。
1)八爪魚采集器
八爪魚應(yīng)該是目前中文互聯(lián)網(wǎng)曝光度最高的網(wǎng)絡(luò)抓取工具。
- 優(yōu)點(diǎn):具有一定數(shù)量現(xiàn)成的采集模版,有專門的問(wèn)題解決qq群。
- 缺點(diǎn):自定義采集做得并不是很好用,具有一定的上手門檻。
2)后羿采集器
很低調(diào)但是很好用的一款網(wǎng)絡(luò)爬蟲工具。
- 優(yōu)點(diǎn):智能采集很智能,識(shí)別準(zhǔn)確度高,同時(shí)自定義流程上手也較為簡(jiǎn)單。
- 缺點(diǎn):價(jià)格昂貴,免費(fèi)版的網(wǎng)速實(shí)在令人汗顏。
3)集搜客
- 優(yōu)點(diǎn):集文本分析的部分功能于一體,可以一站式實(shí)現(xiàn)較多需求;
- 缺點(diǎn):爬蟲功能實(shí)在不好用,遠(yuǎn)不如后裔采集器。
如果你的爬取要求不是很復(fù)雜的那種,個(gè)人推薦使用后羿采集器來(lái)爬取,慢就慢點(diǎn),大不了,開(kāi)著電腦給它掛一晚上?
二、預(yù)處理評(píng)論數(shù)據(jù)
1. 評(píng)論內(nèi)容分詞與去詞
1)分詞是什么,為什么這樣做
Why?我爬取下來(lái)了咋還要分詞,「分詞」又是個(gè)什么東東?速速聽(tīng)我說(shuō)來(lái),我們都知道,計(jì)算機(jī)和人腦的區(qū)別在于理性與感性,計(jì)算機(jī)為了更高效地處理數(shù)據(jù),需要做出一些更符合計(jì)算機(jī)運(yùn)行邏輯的加工,分詞就是其中一種。
舉個(gè)栗子:我今天駕駛寶馬的汽車前往商場(chǎng)了。
經(jīng)過(guò)分詞處理后:我/今天/駕駛/寶馬/的/汽車/前往/商場(chǎng)/了。
就是這樣,經(jīng)過(guò)了分詞的文本,將更利于計(jì)算機(jī)來(lái)進(jìn)行統(tǒng)計(jì)分析。
在分詞系統(tǒng)的推薦上,我認(rèn)為NLPIR-ICTCLAS漢語(yǔ)分詞系統(tǒng)會(huì)比較好使,這是它的官網(wǎng),有下載地址以及簡(jiǎn)單的功能介紹。
2)去詞呢
與分詞同一步調(diào)的,是「去詞」。去詞一般來(lái)說(shuō)是去除停用詞(Stopwords),意指可以忽略的詞。在文本分析中,一些特定的詞語(yǔ)或字不提供信息價(jià)值(或提供很少),而為了提高效率,產(chǎn)出更可直接用于解讀的分析結(jié)果,我們會(huì)選擇在正式的文本分析前,將它們?nèi)コ簟?/p>
同樣舉個(gè)栗子,這里經(jīng)過(guò)分詞的句子:我/今天/駕駛/寶馬/的/汽車/前往/商場(chǎng)/了。
經(jīng)過(guò)去除停用詞后,它變成了:我/今天/駕駛/寶馬/汽車/前往/商場(chǎng)(一些停用詞表中,「我」以及「今天」都在其列,為了方便理解,舉的例子并未去除這兩個(gè)詞)。
就是這樣,去除停用詞的目的在于提高信息密度,提高計(jì)算機(jī)分析產(chǎn)生結(jié)果的效率以及方便人為解讀結(jié)果。
去詞一般不會(huì)成為一項(xiàng)專門的流程,而是被混在分詞過(guò)程中。停用詞表是需要額外準(zhǔn)備(一般分詞的系統(tǒng)中也會(huì)自帶停用詞表),百度一搜,會(huì)有很多的停用詞表,csdn和github上也可以隨意下載,不做贅述。
三、分析評(píng)論數(shù)據(jù)
做完評(píng)論文本數(shù)據(jù)的預(yù)處理后,就進(jìn)入到具體的分析階段了。文本分析的方法與目的是高度相關(guān)的,因此難以全部囊括,就簡(jiǎn)單聊幾個(gè)通用的、容易上手的。
注:下文幾個(gè)分析方法并不存在直接的次序關(guān)系。
1. 情感分析
「情感分析」,顧名思義是用來(lái)判斷文本情感傾向的,一般來(lái)說(shuō)會(huì)分為積極、中性與消極情感,也可以根據(jù)打分的高低,分一分極端積極/消極的情況。
但是如果想要細(xì)化到喜怒哀懼悲嗔愛(ài)就難以通過(guò)簡(jiǎn)單的三方工具做到了,需要自己構(gòu)建詞庫(kù),暫且不提,菜鳥本人也在修煉ing。
用一些工具/平臺(tái)來(lái)實(shí)現(xiàn)情感分析,那么精度只能說(shuō)差強(qiáng)人意而已,不能做到盡善盡美,簡(jiǎn)單推薦罷。
- 首先是很古老的一個(gè)軟件,rost cm6。是由武漢大學(xué)在很久之前編寫的,據(jù)我所知往后的(十)幾年里并沒(méi)有進(jìn)行任何更新。
- 上文提到的可以用于網(wǎng)絡(luò)爬取的集搜客也可以進(jìn)行情感分析,而且據(jù)它介紹,自己的情感分析準(zhǔn)度要比rost cm6高上不少以期獲得用戶的青睞。
好用的軟件只推薦這兩個(gè),因?yàn)槭忻嫔夏苤苯幽脕?lái)用的工具實(shí)在太少。但是如果加一步調(diào)用api的話,其實(shí)百度開(kāi)放平臺(tái)/訊飛開(kāi)放平臺(tái)/騰訊云智以及一些大神們都有很成熟的解決方案,想必精度也會(huì)更高。
2. 詞頻分析
講道理,詞頻分析很難稱得上什么高大上的分析方法,只是把詞語(yǔ)出現(xiàn)的頻率直白地展現(xiàn)出來(lái)而已。一段文本在經(jīng)歷過(guò)去除停用詞、分詞之后,便都是落單的詞語(yǔ)了,數(shù)數(shù)數(shù)出來(lái)就行。上文提到的NLPIR分詞系統(tǒng)、rost cm6、集搜客都能很輕松地做到。
額外提一嘴,在這個(gè)過(guò)程中,詞頻分析的精度取決于分詞的精度。如果你發(fā)現(xiàn)詞頻分析的結(jié)果不是很讓人滿意,不妨多試試幾套分詞系統(tǒng),然后也可以自定義一下詞庫(kù),避免特定的詞語(yǔ)被分開(kāi)。
舉個(gè)栗子:「夏日泳池」「冬日泳池」作為某個(gè)酒店專門的兩個(gè)泳池,我們會(huì)更期待他們以組合的形式而非「夏日」「冬日」以及「泳池」的形式出現(xiàn)。
至于如何讓詞頻分析可視化一點(diǎn),好看一點(diǎn),自然是做一張大家都熟悉的詞云圖,這里推薦Wordart
https://wordart.com/create,純凈免費(fèi)無(wú)廣告,便民實(shí)用。
3. 網(wǎng)絡(luò)語(yǔ)義共現(xiàn)
「語(yǔ)義網(wǎng)絡(luò)共現(xiàn)」的目的在于可視化的展現(xiàn)詞語(yǔ)與詞語(yǔ)之間的關(guān)系。而生成一個(gè)語(yǔ)義網(wǎng)絡(luò)共現(xiàn)圖的的基礎(chǔ)在于建立起詞語(yǔ)的共現(xiàn)矩陣。行文至此,感受到不動(dòng)用編程手段的話,能使用的工具越發(fā)寥寥。
關(guān)于語(yǔ)義網(wǎng)絡(luò)共現(xiàn),仍然需要祭出rost cm6,它有一個(gè)很方便的功能,可以一鍵式生成語(yǔ)義網(wǎng)絡(luò)。
一鍵生成的語(yǔ)義網(wǎng)絡(luò)會(huì)有兩個(gè)問(wèn)題:
- 一是精度不夠好,因?yàn)閞ost cm6本身的分詞做得不是很好,自然影響到后續(xù)的共現(xiàn)矩陣的構(gòu)建,可以導(dǎo)入已經(jīng)分好詞的文件代替它,可以做到一定程度上的優(yōu)化;
- 第二個(gè)是圖片不夠美觀,這個(gè)問(wèn)題的優(yōu)化措施是,將rost cm6生成的共現(xiàn)矩陣導(dǎo)出,再將這個(gè)表格導(dǎo)入到Gephi軟件中生成語(yǔ)義網(wǎng)絡(luò)共現(xiàn)圖,會(huì)好看很多。
(圖源google)
四、主題分析
或許再難避開(kāi)編程手段,我做到主題分析的這一步,使用的是Python的現(xiàn)成代碼,做簡(jiǎn)單的調(diào)參來(lái)滿足自己的需求。功能實(shí)現(xiàn)的主要過(guò)程離不開(kāi)一個(gè)模型,其名為「lda」。
「lda」的功能描述為試圖找到兩類物體或事件的特征的一個(gè)線性組合,以能夠特征化或區(qū)分它們(據(jù)百度)。
親測(cè)在短文本分析的領(lǐng)域,無(wú)論是中文還是英文都表現(xiàn)地挺差的,搜索了解到,原因可能出現(xiàn)在
短文本的特征稀疏性上。
因此,在面對(duì)短文本居多的評(píng)論領(lǐng)域,不太推薦使用lda來(lái)做主題聚類分析。
所以,如果是游記類的長(zhǎng)文本,可以嘗試用lda主題聚類來(lái)做分析,但在短文本的數(shù)據(jù)集中,lda的表現(xiàn)難稱優(yōu)秀。而我在這一方面也并未具備見(jiàn)解性的看法,便不斗膽做推薦分享了。
本文由 @ 我叫徐知魚 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載
題圖來(lái)自 unsplash,基于 CC0 協(xié)議
嗚嗚嗚,大佬寫的好清楚。