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

?

基于微博社交平臺的輿情分析

2019-01-11 06:00盛成成
關(guān)鍵詞:爬蟲分詞向量

盛成成, 朱 勇, 劉 濤

(南京工程學(xué)院 計(jì)算機(jī)工程學(xué)院,南京 211167)

0 引 言

近年互聯(lián)網(wǎng)的不斷發(fā)展,網(wǎng)絡(luò)已經(jīng)成為人們生活中不可或缺的一部分,而社交網(wǎng)絡(luò)、移動互聯(lián)網(wǎng)技術(shù)和智能手機(jī)的迅猛發(fā)展又為網(wǎng)民提供了快捷、迅速、有影響力的發(fā)聲渠道。網(wǎng)民通過社交平臺對于社會熱點(diǎn)事件發(fā)表自己的觀點(diǎn)情緒已成為主要現(xiàn)象,社交網(wǎng)絡(luò)平臺上網(wǎng)民的情感趨向產(chǎn)生了重大的社會影響。而隨著大學(xué)生等低收入高消費(fèi)群體的增長,以及大學(xué)生缺乏風(fēng)險意識等原因,網(wǎng)絡(luò)貸款引發(fā)的悲劇也屢見不鮮。對此,本文提出了一種基于社交網(wǎng)絡(luò)的輿情分析方法,采用網(wǎng)絡(luò)爬蟲獲取數(shù)據(jù),使用Word2Vec建立詞向量并采用機(jī)器學(xué)習(xí)中的半監(jiān)督學(xué)習(xí)訓(xùn)練模型進(jìn)行文本分類處理,最后采用數(shù)據(jù)可視化呈現(xiàn)網(wǎng)民的情感傾向、影響熱度等,直觀展現(xiàn)網(wǎng)貸行為的情況。

1 研究內(nèi)容

本文進(jìn)行社交網(wǎng)絡(luò)網(wǎng)貸輿情分析的過程,主要包括數(shù)據(jù)挖掘、文本分類、情感分析、數(shù)據(jù)可視化4個步驟。數(shù)據(jù)挖掘采用網(wǎng)絡(luò)爬蟲實(shí)現(xiàn),文本分類采用有監(jiān)督的多層次二分類方法、基于標(biāo)簽傳播算法的MAD吸附算法,情感分析利用文本分類中使用的有監(jiān)督方法結(jié)合集成式學(xué)習(xí)提高準(zhǔn)確度,最后利用ECharts進(jìn)行數(shù)據(jù)可視化。技術(shù)路線如圖1所示。

1.1 數(shù)據(jù)獲取

數(shù)據(jù)獲取主要包括2部分,分別是:信息爬取和分詞。

(1)通過網(wǎng)絡(luò)爬蟲實(shí)現(xiàn)對微博的抓取。網(wǎng)絡(luò)爬蟲是一個自動提取網(wǎng)頁的程序,為搜索引擎從萬維網(wǎng)上下載網(wǎng)頁,是搜索引擎的重要組成[1]。由于微博等社交網(wǎng)絡(luò)平臺采用反爬蟲機(jī)制,對訪問IP限制甚至直接封禁,為了自動化爬取足夠數(shù)量的數(shù)據(jù),在網(wǎng)絡(luò)上眾多代理網(wǎng)站上爬取大量免費(fèi)代理IP,并對其進(jìn)行測試,高質(zhì)量的存入數(shù)據(jù)庫中,構(gòu)建自己的代理池,通過代理池使用多個不同的IP訪問微博API,以此來消除訪問IP限制對爬蟲的干擾,繞過反爬蟲機(jī)制進(jìn)行數(shù)據(jù)獲取。主要爬取的數(shù)據(jù)內(nèi)容為:

① 短文本數(shù)據(jù)(描述性內(nèi)容、評論等)。

② 發(fā)布消息的用戶數(shù)據(jù)(昵稱、年齡、地理位置、粉絲數(shù)等)。

③ 用戶之間的聯(lián)系數(shù)據(jù)(文本的轉(zhuǎn)發(fā)關(guān)系、轉(zhuǎn)發(fā)時間、用戶粉絲的個人id等)。

④ 熱度數(shù)據(jù)(發(fā)帖時間、發(fā)帖數(shù)、評論數(shù)、微博的轉(zhuǎn)發(fā)數(shù)等)。

圖1 技術(shù)路線

(2) 對抓取的輿情信息進(jìn)行分詞。分詞按文本內(nèi)容分為中文分詞和英文分詞。英文分詞一般通過空格分開,易于實(shí)現(xiàn)。中文分詞情況下詞與詞之間沒有明顯分隔表示,業(yè)界使用的主要方法有基于詞表的分詞方法、基于n元語法的分詞方法、N-最短路徑法等。本文采取了基于概率語言模型分詞的jieba分詞器中的全分詞模式進(jìn)行分詞。jieba自帶了一個叫做dict.txt的詞典, 里面有2萬多條詞, 包含了詞條出現(xiàn)的次數(shù)和詞性。在分詞過程中,基于Trie樹結(jié)構(gòu)實(shí)現(xiàn)高效的詞圖掃描,生成句子中漢字所有可能成詞情況所構(gòu)成的有向無環(huán)圖(DAG),然后采用動態(tài)規(guī)劃查找最大概率路徑, 找出基于詞頻的最大切分組合。對于未登錄詞,采用基于漢字成詞能力的HMM模型進(jìn)行識別并重新計(jì)算最佳切分路徑,輸出分詞結(jié)果。

1.2 文本分類

獲取的數(shù)據(jù)當(dāng)中存在多種類型的文本,包括客觀新聞、網(wǎng)友的評論、參與者的發(fā)言等,不同文本反映不同的信息,所以需將其分類。采用多層次二分類方法,先將文本分成2類,再將分好的文本繼續(xù)細(xì)化分類直至達(dá)到需求。

(1)首先對部分短文本進(jìn)行手動標(biāo)注來區(qū)分新聞報(bào)道、官方通告、網(wǎng)友發(fā)表的觀點(diǎn)等。

(2)建立詞向量,將文本進(jìn)行數(shù)學(xué)化表達(dá),作為訓(xùn)練模型的輸入。這里使用了搜狐的互聯(lián)網(wǎng)語料庫進(jìn)行jieba分詞后,利用Word2Vec中的CBOW訓(xùn)練詞嵌入(word embedding),將自然語言中的字詞轉(zhuǎn)為計(jì)算機(jī)可以理解的稠密向量,核心思路即“用詞附近的詞來表示該詞”。在Word2Vec出現(xiàn)之前,自然語言處理經(jīng)常把字詞轉(zhuǎn)為離散的單獨(dú)的符號,也就是One-Hot Encoder Word,每個詞用長向量表示,向量維度是詞表大小。向量中只有一個值為1,其余都為0。這種方法存在以下問題。一方面,單詞編碼是隨機(jī)的,向量之間相互獨(dú)立,看不出各個單詞之間可能存在的關(guān)聯(lián)關(guān)系。其次,向量維度的大小取決于語料庫中字詞的多少。如果將所有單詞對應(yīng)的向量合為一個矩陣的話,矩陣過于稀疏,會造成維度災(zāi)難(一個大的語料庫維度超過幾十萬)。而Word2Vec將一個詞所在的上下文中的詞作為輸入,而那個詞本身作為輸出。通過對一個大的語料庫訓(xùn)練,得到一個從輸入層到隱含層的權(quán)重模型。訓(xùn)練完成后,就得到了每個詞到隱含層的每個維度的權(quán)重,就是每個詞的向量表示(維度一般在50~100)。對于句子“My major is computer science.”“my”與其它單詞之間距離見表1。其可視化表示如圖2所示。

表1 詞向量示意

(3)最后使用機(jī)器學(xué)習(xí)的有監(jiān)督學(xué)習(xí)方法。有監(jiān)督學(xué)習(xí)方法在訓(xùn)練過程中不僅輸入訓(xùn)練數(shù)據(jù),還輸入分類的結(jié)果(數(shù)據(jù)具有的標(biāo)簽),模型經(jīng)過訓(xùn)練后再輸入未知特性的新數(shù)據(jù)也能計(jì)算出該數(shù)據(jù)導(dǎo)致各種結(jié)果的概率,輸出一個最接近正確的結(jié)果。由于模型在訓(xùn)練的過程中不僅訓(xùn)練數(shù)據(jù),而且訓(xùn)練結(jié)果(標(biāo)簽),因此訓(xùn)練的效果通常不錯。將通過標(biāo)注好的文本分詞獲得詞列表并以此作為輸入,采用集成方法隨機(jī)森林進(jìn)行訓(xùn)練。隨機(jī)森林是Bagging方法的變體,Bagging方法是對輸入集進(jìn)行有放回的隨機(jī)采樣獲得m個樣本集利用不同的基學(xué)習(xí)器訓(xùn)練,然后將結(jié)果用投票法等策略組合。例如,若3個學(xué)習(xí)器結(jié)果為1 1 0,那么最終結(jié)果就置為1。對于質(zhì)量高的文本,分類準(zhǔn)確率在85%以上。最后將數(shù)據(jù)輸入訓(xùn)練好的模型中,獲得全部文本的分類數(shù)據(jù)。分類流程如圖3所示。

圖2 詞向量可視化表示

圖3 文本分類流程

1.3 MADDL吸附算法

(1)半監(jiān)督學(xué)習(xí)

半監(jiān)督學(xué)習(xí)(Semi-supervised learning)發(fā)揮作用的場合是:數(shù)據(jù)集中僅有部分?jǐn)?shù)據(jù)存在label。通常情況下數(shù)據(jù)集中大部分?jǐn)?shù)據(jù)沒有l(wèi)abel,即整個數(shù)據(jù)集只有少許幾個label。半監(jiān)督學(xué)習(xí)算法會充分地利用unlabeled數(shù)據(jù)來捕捉整個數(shù)據(jù)集的潛在分布。其基于3大假設(shè):

① Smoothness平滑假設(shè):相似的數(shù)據(jù)具有相同的label。

② Cluster聚類假設(shè):處于同一聚類下的數(shù)據(jù)具有相同label。

③ Manifold流形假設(shè):處于同一流形結(jié)構(gòu)下的數(shù)據(jù)具有相同label。

(2) LP標(biāo)簽傳播算法

標(biāo)簽傳播算法(label propagation)的核心思想即相似的數(shù)據(jù)應(yīng)該具有相同的label。

構(gòu)建節(jié)點(diǎn)相關(guān)系數(shù)的算法為:

(3)MAD算法

吸附算法是一個用于傳感器學(xué)習(xí)的通用算法框架, 在這個框架中,學(xué)習(xí)者通常會得到一小套標(biāo)記的示例和一組非常大的未標(biāo)記示例。目標(biāo)是標(biāo)記所有未標(biāo)記的示例, 并可能在標(biāo)簽噪聲的假設(shè)下, 也重新標(biāo)記已標(biāo)記的示例。

與許多相關(guān)算法一樣, “吸附”假定學(xué)習(xí)問題是以圖形形式給出的, 其中示例或?qū)嵗硎緸楣?jié)點(diǎn)或頂點(diǎn), 并且邊緣代碼在示例之間相似。某些節(jié)點(diǎn)與預(yù)先指定的標(biāo)簽相關(guān)聯(lián), 該標(biāo)簽在無噪聲情況下是正確的, 或者可能受到標(biāo)簽噪聲的影響。其它信息可以以標(biāo)簽權(quán)重的形式提供。吸附通過邊緣將標(biāo)簽信息從標(biāo)記的示例傳播到整個頂點(diǎn)集。標(biāo)簽使用每個標(biāo)簽的非負(fù)分?jǐn)?shù)表示, 某些標(biāo)簽的高分值表示高關(guān)聯(lián)。

1.4 情感分析

在情感分析的技術(shù)實(shí)現(xiàn)上,先對短文本標(biāo)注情感極性—消極或積極。利用Word2Vec計(jì)算詞向量,然后使用支持向量機(jī),貝葉斯等進(jìn)行訓(xùn)練,準(zhǔn)確度在70%左右。了解集成學(xué)習(xí)后,利用了隨機(jī)森林、XGBoost模型,XGBoost是一種集成學(xué)習(xí)boost方法,模型輸出百分比,即對正負(fù)文本的相似度,本文直接采用為情感二極性。由于模型訓(xùn)練所耗費(fèi)時間較多,無法進(jìn)行增量的實(shí)時訓(xùn)練等問題,所以使用SnownNLP進(jìn)行新的情感分析訓(xùn)練,以達(dá)到實(shí)時訓(xùn)練、實(shí)時預(yù)測的目的。

2 結(jié)束語

在對以微博為代表的社交網(wǎng)絡(luò)“網(wǎng)貸”相關(guān)字眼數(shù)據(jù)進(jìn)行爬蟲獲取,使用Word2Vec結(jié)合隨機(jī)森林、XGBoost等方法進(jìn)行文本分類、情感分析后,實(shí)現(xiàn)了一種基于社交網(wǎng)絡(luò)的輿情分析方法。實(shí)際測試表明該分析方法及結(jié)果已達(dá)到預(yù)期效果,結(jié)合數(shù)據(jù)可視化后可直觀展現(xiàn)“網(wǎng)貸”在社交網(wǎng)絡(luò)平臺實(shí)時的輿論影響。該方法適用性強(qiáng),可用于社交網(wǎng)絡(luò)環(huán)境下其它多種詞條輿論傳播情況分析,直觀展現(xiàn)詞條輿論情況,便于決策者及時做出反應(yīng)和調(diào)整。

猜你喜歡
爬蟲分詞向量
利用網(wǎng)絡(luò)爬蟲技術(shù)驗(yàn)證房地產(chǎn)灰犀牛之說
向量的分解
基于Python的網(wǎng)絡(luò)爬蟲和反爬蟲技術(shù)研究
聚焦“向量與三角”創(chuàng)新題
分詞在英語教學(xué)中的妙用
結(jié)巴分詞在詞云中的應(yīng)用
結(jié)巴分詞在詞云中的應(yīng)用
基于Scrapy框架的分布式網(wǎng)絡(luò)爬蟲的研究與實(shí)現(xiàn)
誰搶走了低價機(jī)票
向量垂直在解析幾何中的應(yīng)用