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

?

基于Twitter大數(shù)據(jù)處理的境外輿情分析系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

2020-11-10 04:38:45劉斌
電腦知識(shí)與技術(shù) 2020年27期
關(guān)鍵詞:社交網(wǎng)絡(luò)

摘要:境外輿情對(duì)于我國(guó)的國(guó)際形象和國(guó)內(nèi)的穩(wěn)定具有重要作用,是國(guó)家安全的重要部分。通過(guò)對(duì)Twitter數(shù)據(jù)分析,該文設(shè)計(jì)了基于Twitter的境外輿情分析系統(tǒng)。該系統(tǒng)使用Twitter提供的APl數(shù)據(jù)作為數(shù)據(jù)源,使用自然語(yǔ)言處理的方法進(jìn)行數(shù)據(jù)清洗,通過(guò)數(shù)據(jù)挖掘方法對(duì)數(shù)據(jù)進(jìn)行大數(shù)據(jù)分析,最后通過(guò)工具進(jìn)行可視化展示。

關(guān)鍵詞:社交網(wǎng)絡(luò);境外輿情分析;大數(shù)據(jù)挖掘;Twitter

中圖分類號(hào):G350 文獻(xiàn)標(biāo)識(shí)碼:A

文章編號(hào):1009-3044(2020)27-0030-04

開(kāi)放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):

1 背景

輿情是公眾對(duì)社會(huì)現(xiàn)象、問(wèn)題、信仰、態(tài)度、情緒等的反應(yīng)。境外輿情對(duì)于我國(guó)的國(guó)際形象和國(guó)內(nèi)的穩(wěn)定具有重要作用,是國(guó)家安全的重要部分。通過(guò)境外輿情進(jìn)行分析系統(tǒng),及時(shí)發(fā)現(xiàn)并處理不利于我國(guó)的輿論是十分必要的。

Twitter[1](官方中文譯名推特,但繁體中文和簡(jiǎn)體中文的界面均記作Twitter)是一個(gè)社交網(wǎng)絡(luò)與微博服務(wù),它可以讓用戶更新不超過(guò)280個(gè)字符的消息(中文、日文和韓文為140個(gè)),這些消息也被稱作“推文(Tweet)”,是全球使用最多的社交網(wǎng)絡(luò)服務(wù)。

Twitter是互聯(lián)網(wǎng)上訪問(wèn)量最大的十個(gè)網(wǎng)站之一,世界排名前100名的公司中已經(jīng)有73%出現(xiàn)在了Twitter上,比爾·蓋茨、Lady Gaga、FBI、美國(guó)紅十字會(huì)、卡塔爾半島電視臺(tái)等很多名人和組織都通過(guò)Twitter與大眾進(jìn)行互動(dòng),甚至還有60余位國(guó)家首腦活躍其中。從個(gè)人的生活瑣事至官方代言、企業(yè)營(yíng)銷,再到全球性的新聞事件,以Twitter為代表的微博網(wǎng)站作為互聯(lián)網(wǎng)Web2.0時(shí)代的最新的應(yīng)用,憑借其對(duì)信息傳播模式的變革影響著這個(gè)世界的溝通方式與生活方式。因此,Twitter數(shù)據(jù)十分適合進(jìn)行境外輿情分析。

2 系統(tǒng)設(shè)計(jì)

通過(guò)對(duì)Twitter平臺(tái)進(jìn)行分析。它與其他數(shù)據(jù)分析系統(tǒng)有相當(dāng)大的區(qū)別:

1 )Twitter在國(guó)內(nèi)無(wú)法訪問(wèn),需要使用境外代理服務(wù)。

2)Twitter數(shù)據(jù)是以數(shù)據(jù)流的方式進(jìn)行傳輸,需要使用Twit-ter自身的數(shù)據(jù)傳輸接口[2-4]。

3 )Twitter數(shù)據(jù)的鍵值的特殊格式需要使用NoSQL方式進(jìn)行存儲(chǔ)。

4)輿情分析主要任務(wù)包括發(fā)現(xiàn)目前流行的話題和話題的導(dǎo)向。

系統(tǒng)分為五個(gè)部分,系統(tǒng)結(jié)構(gòu)如圖1所示:

1)輿情數(shù)據(jù)抓?。菏褂胮ython的tweepy[5]工具包來(lái)獲取Twitter數(shù)據(jù)。

2)輿情數(shù)據(jù)預(yù)處理:使用NLTK[6]工具包來(lái)進(jìn)行數(shù)據(jù)預(yù)處理。

3)輿情數(shù)據(jù)存儲(chǔ);使用NoSQL數(shù)據(jù)庫(kù)MongoDB[7]來(lái)存儲(chǔ)數(shù)據(jù)。

4)輿情數(shù)據(jù)分析:使用GemSim[8]發(fā)現(xiàn)輿情主題,使用vad-erSentiment[9]進(jìn)行主題情感分析。

5)分析結(jié)果可視化:使用Flask[10]開(kāi)發(fā)web應(yīng)用,使用mat-plotlib[11],D3.js[12]和wordcloudn3]來(lái)進(jìn)行數(shù)據(jù)可視化。

2.1 Twitter數(shù)據(jù)抓取

基于Twitter Streaming API[6]的Twitter實(shí)時(shí)數(shù)據(jù)抓取。Twit-ter公司為了便于開(kāi)發(fā)者使用Twitter的數(shù)據(jù),提供了開(kāi)發(fā)者平臺(tái),該平臺(tái)提供了不同的API接口,用于調(diào)取不同的Twitter數(shù)據(jù)。該接口分為兩大類:‘rwitter REST API和Twitter StreamingAPI。Twitter REST API用于讀寫Twitter數(shù)據(jù),包括用戶資料、用戶推文、用戶好友、用戶時(shí)間軸、檢索推文、地理位置信息、區(qū)域話題趨勢(shì)等等。Twitter REST API使用Twitter應(yīng)用和用戶提供的OAuth信息進(jìn)行身份驗(yàn)證,返回結(jié)果是JSON格式數(shù)據(jù)。Twitter Stream API用于實(shí)時(shí)的監(jiān)控和獲取Twitter數(shù)據(jù)流。

OAuth(開(kāi)放授權(quán))是一個(gè)開(kāi)放標(biāo)準(zhǔn),允許用戶讓第三方應(yīng)用訪問(wèn)該用戶在某一網(wǎng)站上存儲(chǔ)的私密的資源(如照片,視頻,聯(lián)系人列表),而無(wú)須將用戶名和密碼提供給第三方應(yīng)用。Twitter OAuth由以下四個(gè)部分組成:consumer key,consumer se-cret.access token和access token secret。JSON這種數(shù)據(jù)格式的特點(diǎn)是,冗余少,數(shù)據(jù)結(jié)構(gòu)清晰,非常適用于對(duì)數(shù)據(jù)的抽取分析。

Twitter的Streaming API提供給開(kāi)發(fā)者獲取Twitter全球?qū)崟r(shí)數(shù)據(jù)流的途徑。通過(guò)該方法抓取的Twitter實(shí)時(shí)數(shù)據(jù)流,效率高質(zhì)量好,但由于抽樣獲取數(shù)據(jù)不齊全。Twitter Streaming API包括三個(gè)方面Public Streams,User Streams和Site Streams。一般使用Public Streams,Twitter Streaming API和REST API的區(qū)別如圖3,圖4所示。

為了便于使用本系統(tǒng)使用基于python實(shí)現(xiàn)的Twitter API工具包tweepy來(lái)調(diào)用Twitter Streaming API獲取實(shí)時(shí)數(shù)據(jù)。tweepy工具包可以使用地理坐標(biāo)信息或關(guān)鍵詞信息來(lái)獲取實(shí)時(shí)數(shù)據(jù)。

2.2 Twitter數(shù)據(jù)預(yù)處理

Twitter數(shù)據(jù)文本含有很多標(biāo)簽、注釋、標(biāo)簽和地址等特殊符號(hào)的情況,綜合使用Python自然語(yǔ)言處理工具包NLTK和正則表達(dá)式等工具對(duì)其進(jìn)行數(shù)據(jù)清洗。主要處理過(guò)程包括,提取詞元(token)、詞根化(stemming),保留表情、標(biāo)簽等特殊符號(hào),去停用詞.完整的Twitter數(shù)據(jù)預(yù)處理過(guò)程如圖4所示。

2.3 數(shù)據(jù)存儲(chǔ)

通過(guò)Twitter Streaming API抓取的數(shù)據(jù)格式JSON,先分析該JSON文件的結(jié)構(gòu),如表1所示。

從結(jié)構(gòu)中我們可以選出重要的字段,“text”推文的文本內(nèi)容,“created at”推文創(chuàng)建時(shí)間,“favorite count”喜愛(ài)的成員個(gè)數(shù),“retweet count”轉(zhuǎn)推成員個(gè)數(shù),“retweeted”是否被轉(zhuǎn)推,“Lang”語(yǔ)言,“id”推文的標(biāo)識(shí),“entities”推文中實(shí)體名:如URLs,hashtag,“place”推文發(fā)布位置信息,“user”推文發(fā)布者信息和“source”發(fā)送推特源等字段。

這種用JSON格式數(shù)據(jù)的鍵值性數(shù)據(jù),并不適合存儲(chǔ)在關(guān)系型數(shù)據(jù)庫(kù)中??梢源鎯?chǔ)到MongoDB這樣的NoSQL型數(shù)據(jù)庫(kù),使用它存儲(chǔ)twitter數(shù)據(jù)最大的好處是大大地壓縮存儲(chǔ)空間,而且對(duì)于大量數(shù)據(jù)可以提供強(qiáng)大的查詢操作和檢索機(jī)制,分析處理過(guò)程。

在python中使用pymongo[15]來(lái)對(duì)mongo dB數(shù)據(jù)庫(kù)進(jìn)行操作,對(duì)于獲取的每一條twitter數(shù)據(jù)只需要將我們關(guān)心的推文內(nèi)容,地理位置,標(biāo)簽,創(chuàng)建時(shí)間,語(yǔ)言,發(fā)送源等字段信息保存起來(lái)即可,大幅減少需要存儲(chǔ)的數(shù)據(jù)量。存儲(chǔ)在mongodb數(shù)據(jù)庫(kù)中狀態(tài),可以通過(guò)命令行查看(如圖5),也可以通過(guò)可視化軟件Rob0 3T[16](如圖6)來(lái)加以查看。

2.4 twitter熱點(diǎn)主題發(fā)現(xiàn)

隱含狄利克雷分布簡(jiǎn)稱LDAn[17](Latent Dirichlet allocation),是一種主題模型,它可以將文檔集中每篇文檔的主題按照概率分布的形式給出。同時(shí)它是一種無(wú)監(jiān)督學(xué)習(xí)算法,在訓(xùn)練時(shí)不需要手工標(biāo)注的訓(xùn)練集,需要的僅僅是文檔集以及指定主題的數(shù)量k即可。此外LDA的另一個(gè)優(yōu)點(diǎn)則是,對(duì)于每一個(gè)主題均可找出一些詞語(yǔ)來(lái)描述它。LDA方法原理示意圖如圖7所示。

LDA是一種典型的詞袋模型,即它認(rèn)為一篇文檔是由一組詞構(gòu)成的一個(gè)集合,詞與詞之間沒(méi)有順序以及先后的關(guān)系。一篇文檔可以包含多個(gè)主題,文檔中每一個(gè)詞都由其中的一個(gè)主題生成。

狄利克雷分布作為多項(xiàng)式分布的共軛先驗(yàn)概率分布。因此正如LDA貝葉斯網(wǎng)絡(luò)結(jié)構(gòu)中所描述的,在LDA模型中一篇文檔生成的方式圖8所示。

但GemSim庫(kù)已經(jīng)提供了所有需要的基本功能。通過(guò)以下步驟使用GemSim提取LDA主題模型:

1)獲取語(yǔ)料。

2)文本預(yù)處理。

3)LDA分析。

4)顯示結(jié)果。

表2為使用GemSim建立里約2016奧運(yùn)會(huì)LDA話題模型代碼示例。圖9為獲得的十大話題。

2.5 twitter情感分析

文本情感分析是以情感為計(jì)算對(duì)象,對(duì)文本的正面和負(fù)面情緒等不同情緒,通過(guò)工程方法進(jìn)行分析處理,得出情感傾向性的計(jì)算過(guò)程。通常情況下,文本情感分析被當(dāng)作分類問(wèn)題來(lái)處理。與常規(guī)的文本分類問(wèn)題不同的是情感分類的類別標(biāo)簽是情感因素。文本情感分析可分為二分類和多分類。前者是將文本情感分為正面和負(fù)面;后者是將情感細(xì)化為高興、悲傷、憤怒、害怕、憎恨等。按照文本情感分析的粒度大小,文本情感分析可劃分為詞語(yǔ)級(jí)別的情感分析、句子級(jí)別的情感分析和段落級(jí)別的情感分析。情感分析也稱為觀點(diǎn)挖掘,是自然語(yǔ)言處理的核心研究?jī)?nèi)容之一。其研究目的是使用自然語(yǔ)言處理手段對(duì)文本中體現(xiàn)的個(gè)人觀點(diǎn)情感進(jìn)行分析、評(píng)估。

為了高效地對(duì)twilter文本進(jìn)行情感分析,本系統(tǒng)使用py—thon的基于情感詞典的VADER分析包vaderSentiment,進(jìn)行情感分析,而且實(shí)驗(yàn)證明它對(duì)于mitter這樣的微博分析尤其出色。其情感詞典不僅包括了很多的帶有很強(qiáng)感情色彩的詞語(yǔ)及對(duì)應(yīng)的分值比例還包括了twitter數(shù)據(jù)中可能會(huì)出現(xiàn)的表情符號(hào)的感情分值和比例,因此對(duì)于twilter的情感分析十分高效精確。開(kāi)發(fā)vaderSentiment分析包的佐治亞理工學(xué)院的C.J.Hutto等人,通過(guò)實(shí)驗(yàn)分析出對(duì)于小而多的社交網(wǎng)站數(shù)據(jù)的情感分析,使用vaderSentiment效果更好。

2.6 數(shù)據(jù)可視化

數(shù)據(jù)可視化是數(shù)據(jù)挖掘的一個(gè)重要的部分。數(shù)據(jù)可視化借助圖形化手段,清晰有效地傳達(dá)與溝通信息。數(shù)據(jù)可視化與信息圖形、信息可視化、科學(xué)可視化以及統(tǒng)計(jì)圖形等有密切關(guān)系。數(shù)據(jù)可視化為人類洞察數(shù)據(jù)的內(nèi)涵、理解數(shù)據(jù)蘊(yùn)藏的規(guī)律提供了重要的手段。

本系統(tǒng)采用使用python T具包matplotlib實(shí)現(xiàn)數(shù)據(jù)分析可視化,使用JavaScript包D3.js實(shí)現(xiàn)數(shù)據(jù)動(dòng)態(tài)可視化,使用python的wordcloud包實(shí)現(xiàn)詞云圖。

3 系統(tǒng)實(shí)現(xiàn)

通過(guò)本文設(shè)計(jì)的系統(tǒng)分析當(dāng)前編程語(yǔ)言的流行程度,得出在twitter上Java、Python、C++的正面、負(fù)面和一般評(píng)價(jià)。

3.1開(kāi)發(fā)語(yǔ)言和環(huán)境

開(kāi)發(fā)語(yǔ)言主要為python,開(kāi)發(fā)環(huán)境如表3所示。

3.2實(shí)驗(yàn)結(jié)果

通過(guò)抓取得到4個(gè)小時(shí)的twitter數(shù)據(jù)。圖10為對(duì)編程語(yǔ)言的分析結(jié)果python在twitter上關(guān)注度最高,其次是Java,最后是C++,這也與現(xiàn)實(shí)中python目前是最熱門的編程語(yǔ)言相符。對(duì)于三種編程語(yǔ)言的正負(fù)面評(píng)價(jià),對(duì)于python的正面評(píng)價(jià)最高。

4 總結(jié)

本文設(shè)計(jì)并實(shí)現(xiàn)了基于Twitter大數(shù)據(jù)的境外輿情分析系統(tǒng),通過(guò)實(shí)例證明了該系統(tǒng)可以較好地滿足要求。但本系統(tǒng)只可以使用文字信息,為了將要研究如何將Twitter圖片和視頻信息也進(jìn)行分析和處理,這將取得更好的效果。

參考文獻(xiàn):

[1] Twitter[EB/OL]. [2020-02-20]. https://zh. wikipedia. org/wiki/Twitter.

[2] Ali D. Mining the social web: data mining facebook, twitter, Linkedln, google+ , github, and more, by Matthew A. RusseII[J].Journal of Information Privacy and Security, 2015, 11(2): 137- 138.

[4] Twitter development document[EB/OLl. [2020-02-20l. https://dev.twitter.com/overview/documentation.

[5] Tweepy: an easy-to-use python library for accessing the twit-ter api[EB/OL].[2020-02-20].http://www.tweepy.org/.

[6] N LTK[E B/OLl.[2020-02-20l.https ://www.nltk.org/.

[7] Mongodb[E B/OL].[2020-02-20].https://www.mongodb.com/e n.

[8] GemSim[EB/OLl. [2020-02-20]. https://sourceforge. net/projects/gemsim/.

[9] VaderSentiment[EB/OL]. [2020-02-20]. https://github. com/vad-erSentiment.

[10] flask[E B/O L].[2020-02-20l.http://flask.pocoo.org/.

[11] matplotlib[EB/OL].[2020-02-20l.https://matplotlib.org/.

[12] d3.j s[E B/OLl.[2020-02-20l.https://d3j s.org/.

[13] wordcloud[EB/OL]. [2020-02-20]. https://amueller. github. io/word_cloud/.

[14] "Twitter's API - HowStuffWorks[EB/OL].[2020-02-20].https://computer. howstuffworks. com/intemet/social-networking/net-works/twitter2.htm.

[15] pymongo[EB/OL]. [2020-02-20]. https://api. mongodb. com/py-thon/current/tutorial.html.

[16] Rob0 3T[EB/OLl.[2020-02-20].https://robomongo.org/.

[17] LDA[EB/OL]. [2020-02-20]. https://en. wikipedia. org/wiki/La-tent_Dirichlet_allocation.

作者簡(jiǎn)介:劉斌(1983-),男,中級(jí)工程師,碩士,研究方向?yàn)榇髷?shù)據(jù)挖掘、自然語(yǔ)言處理。

猜你喜歡
社交網(wǎng)絡(luò)
口碑信息傳播對(duì)圖書(shū)館服務(wù)創(chuàng)新的啟示
社交網(wǎng)絡(luò)對(duì)大學(xué)英語(yǔ)教學(xué)的影響及應(yīng)用
科技視界(2016年26期)2016-12-17 20:01:00
社交網(wǎng)絡(luò)推薦系統(tǒng)
社交網(wǎng)絡(luò)對(duì)大學(xué)生人際交往的影響及對(duì)策研究
基于五要素理論的視頻自媒體盈利模式
聲屏世界(2016年10期)2016-12-10 21:16:45
大數(shù)據(jù)時(shí)代社交網(wǎng)絡(luò)個(gè)人信息安全問(wèn)題研究
社交網(wǎng)絡(luò)中的隱私關(guān)注及隱私保護(hù)研究綜述
基于圖片分享為核心的社交網(wǎng)絡(luò)應(yīng)用分析
戲劇之家(2016年19期)2016-10-31 19:44:28
社交網(wǎng)絡(luò)自拍文化的心理解讀
新聞前哨(2016年10期)2016-10-31 17:46:44
社交網(wǎng)絡(luò)營(yíng)銷策略及盈利模式探討
商情(2016年11期)2016-04-15 20:16:05
青海省| 镶黄旗| 乡城县| 怀来县| 新津县| 襄樊市| 大田县| 河间市| 保康县| 两当县| 寿光市| 延寿县| 达日县| 黄山市| 仁化县| 佛学| 漠河县| 周口市| 郁南县| 读书| 伊宁县| 周至县| 资中县| 博白县| 衡阳市| 阳江市| 睢宁县| 长丰县| 阳高县| 扶风县| 宁城县| 炉霍县| 隆林| 仙游县| 日土县| 大余县| 甘孜县| 高雄县| 昔阳县| 巴林右旗| 静安区|