陳佳舟,陳樟樟,秦緒佳
(浙江工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,杭州 310023)
隨著社交網(wǎng)絡(luò)服務(wù)的盛行,數(shù)以萬計(jì)的用戶每天活躍在社交網(wǎng)絡(luò)服務(wù)中,在網(wǎng)絡(luò)上創(chuàng)造著豐富的信息,由此構(gòu)建了一個(gè)龐大而復(fù)雜多樣的虛擬社交網(wǎng)絡(luò).在社交網(wǎng)絡(luò)中,發(fā)現(xiàn)社交關(guān)系是一個(gè)至關(guān)重要的問題,涉及到每一個(gè)人在社交網(wǎng)絡(luò)中的自我定位和價(jià)值發(fā)現(xiàn).因此,通過分析人們?cè)谏缃痪W(wǎng)絡(luò)服務(wù)中的社交行為(發(fā)布博文、轉(zhuǎn)發(fā)、關(guān)注),挖掘社交關(guān)系引起了許多學(xué)者的關(guān)注,其中基于社交網(wǎng)絡(luò)好友推薦拓展社交關(guān)系頗受人們關(guān)注.Piao等根據(jù)用戶興趣傾向的主題,推薦關(guān)注相似主題的用戶,以拓展用戶的社交關(guān)系[1].Zhu等以用戶微博文本相似度計(jì)算用戶之間的相似度以及對(duì)其他用戶的信任度,來挖掘隱含的社交關(guān)系[2].這些方法雖然能挖掘出有意義的社交關(guān)系,但構(gòu)造的社交關(guān)系缺少現(xiàn)實(shí)的指導(dǎo),可能存在虛假甚至錯(cuò)誤的社交關(guān)系.
隨著數(shù)碼相機(jī)和智能手機(jī)等數(shù)碼攝影設(shè)備的普及,在朋友聚會(huì)、活動(dòng)慶典、學(xué)術(shù)報(bào)告、婚禮等社交活動(dòng)中,拍攝照片成為其中必不可少的環(huán)節(jié),稱之為“社交照片”[3].通過人臉識(shí)別以及照片中的面部共現(xiàn)的技術(shù),從社交照片中分析人們之間的社交關(guān)系是近年來的研究熱點(diǎn).Singla等使用馬爾科夫邏輯檢測(cè)照片中的社交關(guān)系,并為關(guān)系預(yù)測(cè)定義了一階邏輯加以約束[4].Plantié等從代表家庭活動(dòng)的社交照片中提取社交網(wǎng)絡(luò)用于幫助構(gòu)建個(gè)人照片集[5].Kim等將照片集作為社交網(wǎng)絡(luò)分析的來源,分析照片存在的潛在朋友關(guān)系,提取人與人之間的強(qiáng)關(guān)聯(lián)關(guān)系.從這些研究可以得出在照片中面部共現(xiàn)可能表明面孔之間存在強(qiáng)關(guān)聯(lián)關(guān)系[6].即在照片中共現(xiàn)的人臉,在現(xiàn)實(shí)社交中存在關(guān)系,這可以作為從社交網(wǎng)絡(luò)服務(wù)中獲取社交關(guān)系的指導(dǎo).但是,基于照片集的社交網(wǎng)絡(luò)分析,得出的社交關(guān)系都比較簡(jiǎn)單,且沒有對(duì)關(guān)系做出有意義的解釋.這就需要從社交網(wǎng)絡(luò)服務(wù)中提取社交關(guān)系以彌補(bǔ)由單一社交照片構(gòu)建的社交關(guān)系的不足.
為此,本文提出一種基于照片的社交關(guān)系可視化方法,并結(jié)合微博設(shè)計(jì)實(shí)現(xiàn)了一個(gè)可視化系統(tǒng)SPVis.本文設(shè)計(jì)了照片與微博、現(xiàn)實(shí)與虛擬相結(jié)合的可視化探索,首先,利用人臉識(shí)別技術(shù)識(shí)別社交照片中的人物,并獲取識(shí)別對(duì)象在微博上的社交數(shù)據(jù)(關(guān)注數(shù)據(jù),文本數(shù)據(jù));接著,利用LDA模型發(fā)現(xiàn)微博文本主題并計(jì)算微博文本相似度,以此度量識(shí)別對(duì)象間的相似度;最后,通過可視分析識(shí)別對(duì)象的關(guān)注數(shù)據(jù)和相似度,挖掘?qū)ο箝g虛擬社交關(guān)系的特點(diǎn),分析對(duì)象間現(xiàn)實(shí)社交關(guān)系更加緊密的潛力.
本文研究工作涉及社交關(guān)系分析及可視化分析.根據(jù)針對(duì)不同的社交數(shù)據(jù)類型,可將社交關(guān)系分析的相關(guān)工作分為兩種類型,基于社交照片和社交網(wǎng)絡(luò)服務(wù)這兩類工作.可視化分析挖掘人類對(duì)于信息的認(rèn)知能力與優(yōu)勢(shì),將人、機(jī)有機(jī)融合,借助人機(jī)交互高效洞悉大數(shù)據(jù)背后的信息與規(guī)律,是大數(shù)據(jù)分析的重要方法[7].
基于社交照片的社交關(guān)系分析,主要通過觀察照片中人物共現(xiàn)的情況,來分析人物間的社交關(guān)系.例如,Lewis等根據(jù)Facebook用戶之間的社交關(guān)系,如Facebook好友、照片好友、室友等,分析興趣愛好的相互影響,報(bào)告結(jié)果顯示,與其他關(guān)系相比較,出現(xiàn)在彼此相冊(cè)中的朋友在喜愛的電影、音樂和書籍中有著高度的相似性[8].Kim等將個(gè)人照片集作為社交網(wǎng)絡(luò)分析的來源,分析照片存在的潛在朋友關(guān)系,定義了一種數(shù)據(jù)結(jié)構(gòu)——人臉共現(xiàn)網(wǎng)絡(luò)(Face Co-Occurrence Networks,F(xiàn)CON),用于提取人與人之間的強(qiáng)關(guān)聯(lián)關(guān)系,并利用FCON推薦可靠的社交朋友.Bo等通過人臉識(shí)別算法構(gòu)建具有照片收集功能的社交網(wǎng)絡(luò),并使用社交網(wǎng)絡(luò)分析方法分析社區(qū)屬性和個(gè)體特征.這些研究都表明在照片中人臉共現(xiàn)可以代表人物之間存在強(qiáng)相關(guān)性[9].然而,他們主要利用照片集來解析社交關(guān)系,根據(jù)照片集中的人臉共現(xiàn)來建立潛在的關(guān)系,而且他們所展示出的關(guān)系都比較簡(jiǎn)單,且沒有對(duì)關(guān)系做出有意義的解釋.
基于社交網(wǎng)絡(luò)服務(wù)的社交關(guān)系分析,主要根據(jù)人們?cè)谏缃幻襟w上的社交行為(發(fā)布博文、轉(zhuǎn)發(fā)、關(guān)注等),來分析人際間的社交關(guān)系.Piao等利用LDA模型挖掘Tweet文本的主題詞以及主題詞上的概率分布,找出用戶興趣傾向的主題,推薦關(guān)注相似主題的用戶,以拓展用戶的社交關(guān)系.Zhu等以用戶微博文本相似度為似然函數(shù),使用K-means聚類對(duì)微博用戶聚類,得到社交圈并計(jì)算用戶間的相似度及信任度,以此挖掘出隱含的用戶社交關(guān)系.Yin等根據(jù)數(shù)據(jù)分析,發(fā)現(xiàn)超過90%的用戶關(guān)注關(guān)系由已有的好友建立[10].Chen等發(fā)現(xiàn)基于社交網(wǎng)絡(luò)用戶間的關(guān)注關(guān)系對(duì)于同屬一個(gè)社交圈的用戶擴(kuò)展社交關(guān)系具有很強(qiáng)的指導(dǎo)意義[11].Miao針對(duì)微博媒體分析人物數(shù)據(jù)的特點(diǎn),挖掘用戶的密友、校友和同事等,識(shí)別話題、挖掘興趣等[12].Wang從微博數(shù)據(jù)中抽取用戶主題,結(jié)合用戶之間關(guān)注關(guān)系,對(duì)用戶進(jìn)行相似度計(jì)算,通過聚類檢測(cè)出隱含的社交關(guān)系[13].根據(jù)社交行為分析所得的社交關(guān)系,雖然具有具體而有意義的解析,但虛擬網(wǎng)絡(luò)中存在的多樣性和不確定性,可能存在虛假甚至錯(cuò)誤的社交關(guān)系.
由上述的工作中存在的不足,本文利用現(xiàn)實(shí)社交與虛擬社交的結(jié)合,通過識(shí)別一張照片中的人臉,結(jié)合識(shí)別對(duì)象在微博上的社交行為,構(gòu)建對(duì)象間真實(shí)而又具體的社交關(guān)系,并通過可視化的方式探索分析對(duì)象間的關(guān)系.
本文提出的SPVis可視化系統(tǒng)如圖1所示.SPVis系統(tǒng)主要由人臉識(shí)別、數(shù)據(jù)采集與預(yù)處理、社交關(guān)系網(wǎng)絡(luò)構(gòu)建和可視化分析4個(gè)模塊組成.
圖1 SPVis系統(tǒng)架構(gòu)圖Fig.1 Architecture of SPVis visualization system
人臉識(shí)別模塊的功能主要為:1)檢測(cè)照片中的待識(shí)別人臉;2)提取待識(shí)別人臉的特征值;3)匹配待識(shí)別人臉的特征值和特征值庫(kù);4)獲取識(shí)別人臉的個(gè)人信息.
數(shù)據(jù)采集與預(yù)處理模塊的功能為:1)通過個(gè)人信息,從微博中爬取對(duì)象的關(guān)注數(shù)據(jù)和微博文本數(shù)據(jù);2)對(duì)微博文本數(shù)據(jù)進(jìn)行清洗,刪除錯(cuò)誤或重復(fù)數(shù)據(jù);3)對(duì)文本數(shù)據(jù)進(jìn)行中文分詞,以用于主題提取.
社交關(guān)系網(wǎng)絡(luò)構(gòu)建模塊的功能可分為:1)根據(jù)識(shí)別的人臉構(gòu)建Ⅰ級(jí)社交關(guān)系網(wǎng)絡(luò);2)將Ⅰ級(jí)社交關(guān)系網(wǎng)絡(luò)結(jié)合關(guān)注數(shù)據(jù)構(gòu)建Ⅱ級(jí)社交關(guān)系網(wǎng)絡(luò);3)運(yùn)用LDA主題模型提取文本主題,并進(jìn)行主題相似性分析;4)結(jié)合文本主題相似性構(gòu)建Ⅲ級(jí)社交關(guān)系網(wǎng)絡(luò).
基于以上的數(shù)據(jù)處理,本系統(tǒng)設(shè)計(jì)了以下視圖:1)關(guān)系網(wǎng)絡(luò)視圖,利用節(jié)點(diǎn)鏈接方式對(duì)社交關(guān)系網(wǎng)絡(luò)進(jìn)行可視化,用戶在視圖中了解識(shí)別對(duì)象間社交關(guān)系的構(gòu)成,通過交互探索社交關(guān)系的特點(diǎn);2)關(guān)系網(wǎng)絡(luò)3d視圖,通過三維視角可視化社交關(guān)系網(wǎng)絡(luò),豐富對(duì)社交關(guān)系的探索;3)個(gè)人信息視圖,可視化識(shí)別對(duì)象個(gè)人的關(guān)注信息;4)共同關(guān)注信息圖,可視化識(shí)別對(duì)象間共同關(guān)注的信息.
本文設(shè)計(jì)實(shí)現(xiàn)了SPVis可視化系統(tǒng),意在通過識(shí)別照片中的人臉,并結(jié)合微博,實(shí)現(xiàn)現(xiàn)實(shí)社交與虛擬社交關(guān)系的融合,可多層次展現(xiàn)出人物間的社會(huì)關(guān)系,分析對(duì)象間關(guān)系更加緊密的潛力.
人臉識(shí)別是從數(shù)字圖像或視頻幀中識(shí)別人的技術(shù),主要是根據(jù)人的臉部特征信息與數(shù)據(jù)庫(kù)中的人臉進(jìn)行比較來識(shí)別的.通過攝像機(jī)或攝像頭采集含有人臉的圖像或視頻流,并自動(dòng)在圖像檢測(cè)和跟蹤人臉,進(jìn)而對(duì)檢測(cè)到的人臉進(jìn)行臉部識(shí)別.本文利用開源的跨平臺(tái)軟件庫(kù)Dlib,實(shí)現(xiàn)人臉檢測(cè)與識(shí)別.對(duì)于人臉檢測(cè)、人臉識(shí)別,Dlib提供了基于深度學(xué)習(xí)的算法,利用訓(xùn)練好的人臉關(guān)鍵點(diǎn)檢測(cè)器和人臉識(shí)別模型得到人臉面部特征,并通過檢測(cè)歐氏距離的近似值來識(shí)別人臉.
本文利用訓(xùn)練好的人臉關(guān)鍵點(diǎn)檢測(cè)器以及基于ResNet人臉識(shí)別模型,以320位明星的個(gè)人照片集為數(shù)據(jù)源,檢測(cè)照片中的人臉,并保存其人臉特征數(shù)據(jù)及標(biāo)簽(中英文姓名),構(gòu)建人臉特征模板庫(kù),以文本格式記錄.
在人臉識(shí)別過程中,通過人臉檢測(cè)可以檢測(cè)出在社交照片中的所有人臉,再計(jì)算所檢測(cè)到的人臉特征數(shù)據(jù)與人臉特征模板庫(kù)中特征數(shù)據(jù)間的歐式距離,通過閾值篩選距離最小者為識(shí)別結(jié)果,記錄其人臉標(biāo)簽并從已構(gòu)成的個(gè)人信息檢索出相應(yīng)的微博ID用于后續(xù)步驟.若檢測(cè)出照片中的人臉并成功識(shí)別,則標(biāo)記出人臉的位置并記錄對(duì)應(yīng)人臉的個(gè)人信息;若在人臉識(shí)別結(jié)果中出現(xiàn)未標(biāo)記人臉的情況,則表示該人物的人臉信息未錄入人臉特征模板庫(kù)中或該照片中此人物的臉部存在遮擋或角度不當(dāng)使得無法提取人臉特征.
微博數(shù)據(jù)大致可分為微博博文數(shù)據(jù)、用戶信息數(shù)據(jù)、社交關(guān)系數(shù)據(jù).其中微博博文數(shù)據(jù)包括微博的內(nèi)容、微博發(fā)表時(shí)間、轉(zhuǎn)發(fā)數(shù)、評(píng)論數(shù)、點(diǎn)贊數(shù)、是否是長(zhǎng)微博、是否是轉(zhuǎn)發(fā)的微博、源微博的URL等,用戶信息數(shù)據(jù)包括用戶ID、昵稱、個(gè)人簡(jiǎn)介、性別、微博發(fā)表數(shù),粉絲數(shù),關(guān)注數(shù)等,社交關(guān)系數(shù)據(jù)包括關(guān)注者的用戶ID、昵稱以及關(guān)注類別、被關(guān)注者的用戶ID及昵稱.本文獲取的微博數(shù)據(jù)主要為微博博文數(shù)據(jù)和社交關(guān)系數(shù)據(jù)中的關(guān)注者數(shù)據(jù).
本文采用Ajax數(shù)據(jù)爬取的方法獲取數(shù)據(jù),以微博手機(jī)端為數(shù)據(jù)獲取平臺(tái),通過特定的請(qǐng)求地址,向服務(wù)器請(qǐng)求數(shù)據(jù)接口,數(shù)據(jù)以json格式返回.通過id、container_id、page這三個(gè)參數(shù)來調(diào)節(jié)對(duì)微博博文數(shù)據(jù)和社交關(guān)系數(shù)據(jù)的不同請(qǐng)求.id代表微博用戶的ID,通過輸入不同用戶的微博ID,可以向服務(wù)器請(qǐng)求不同用戶的微博數(shù)據(jù).container_id是獲取微博博文數(shù)據(jù)時(shí)需要的參數(shù),從各用戶的微博主頁(yè)中獲取.page表示微博博文數(shù)據(jù)按照頁(yè)數(shù)順序獲取,每頁(yè)的微博博文數(shù)量最多為10篇.關(guān)注者數(shù)據(jù)主要是通過id參數(shù)向服務(wù)器請(qǐng)求獲得,而關(guān)注者數(shù)據(jù)分為有分組標(biāo)記和未分組標(biāo)記兩種.其中有分組標(biāo)記的關(guān)注者數(shù)據(jù),需要通過不同的分組tag獲取相應(yīng)的關(guān)注者數(shù)據(jù),分組大致為“美妝”,“體育”,“電影”,“綜藝”,“娛樂”,“朋友”等,其中分組的親密程度為“朋友”<“娛樂”<其他.獲取到的微博文本數(shù)據(jù)和關(guān)注者數(shù)據(jù)都以xlsx格式保存.為提高爬蟲速度,采用多線程的方式進(jìn)行微博爬蟲,開啟3條線程進(jìn)行爬蟲,同時(shí)為避免反爬機(jī)制設(shè)置一定延時(shí),實(shí)驗(yàn)結(jié)果顯示基本實(shí)現(xiàn)每個(gè)對(duì)象的爬蟲時(shí)間為2分鐘左右.
如果兩個(gè)用戶發(fā)布的微博文本有著相似主題,則說明這兩個(gè)用戶可能有相似的價(jià)值取向,因而能有更多的共同話題,社交關(guān)系也能更加緊密.由微博文本相似性來度量用戶相似性,若文本的主題越接近,它們的聯(lián)系越緊密,則用戶之間的相似度就越高,反之如果主題越疏遠(yuǎn),則用戶相似度越低.
首先,使用基于textRank方法的jieba分詞對(duì)微博文本進(jìn)行分詞[14];然后通過LDA主題模型提取微博文本主題,LDA在提取主題時(shí)會(huì)考慮到文檔中的語(yǔ)義信息[15];最后,使用Jensen-Shannon散數(shù)的倒數(shù)來衡量文本與文本之間的主題相似度,如公式(1)所示:
(1)
其中,vi,vj表示微博文本的主題概率分布.
根據(jù)社交環(huán)境不同可以分為現(xiàn)實(shí)社交和虛擬社交.現(xiàn)實(shí)社交顧名思義就是指在現(xiàn)實(shí)世界中人與人之間的直接交際往來,例如聚會(huì)、學(xué)術(shù)報(bào)告、活動(dòng)慶典等.虛擬社交是以虛擬技術(shù)為基礎(chǔ),人與人之間的交往是以間接交往為主,通過社交網(wǎng)絡(luò)服務(wù)平臺(tái)進(jìn)行人際交流.
社交照片作為現(xiàn)實(shí)社交活動(dòng)的記錄,直接可以映射出人們?cè)诂F(xiàn)實(shí)世界中存在著社交關(guān)系,但是他們之間存在著怎么樣的關(guān)系,是否有相同認(rèn)識(shí)的人,是否有相同的興趣愛好,這些我們并不能從照片中獲取.而社交網(wǎng)絡(luò)服務(wù)平臺(tái)作為人際交流的媒介,可以記錄下人們?cè)谏缃贿^程中的各種行為,通過數(shù)據(jù)挖掘可以從中獲取許多信息,以彌補(bǔ)從社交照片中獲取得到的社交關(guān)系的不足.本文主要研究將現(xiàn)實(shí)社交與虛擬社交結(jié)合,構(gòu)建多層次的社交關(guān)系,以分析社交關(guān)系的可發(fā)展性.
本文通過三個(gè)不同層次構(gòu)建社交關(guān)系.Ⅰ級(jí)社交關(guān)系構(gòu)建:若在人物A和人物B同時(shí)出現(xiàn)在一張社交照片中,那么認(rèn)為人物A和B之間存在聯(lián)系.該聯(lián)系為現(xiàn)實(shí)關(guān)系,是作為整個(gè)社交關(guān)系網(wǎng)絡(luò)的基礎(chǔ),視為強(qiáng)關(guān)聯(lián)關(guān)系;Ⅱ級(jí)社交關(guān)系構(gòu)建:在I級(jí)社交關(guān)系的基礎(chǔ)上,結(jié)合已識(shí)別的人物A和B的關(guān)注人信息構(gòu)建社交關(guān)系;Ⅲ級(jí)社交關(guān)系構(gòu)建:在II級(jí)社交關(guān)系的基礎(chǔ)上,結(jié)合微博的文本數(shù)據(jù),通過對(duì)微博文本相似度的計(jì)算,若微博文本相似度越大,則表明用戶相似度越高,人物之間的隱性關(guān)聯(lián)越緊密.
本文的社交關(guān)系以Ⅱ級(jí)社交關(guān)系為主體,I級(jí)社交關(guān)系為基礎(chǔ),III級(jí)社交關(guān)系為輔助而構(gòu)建.在構(gòu)建II級(jí)社交關(guān)系時(shí),若人物A關(guān)注人物B,那么人物A與人物B間存在(A,B)的直接聯(lián)系.若人物之間的直接聯(lián)系有標(biāo)簽,則標(biāo)注為具體的關(guān)注類別.若人物A和人物B同時(shí)關(guān)注人物C,那么人物A和人物B之間存在(A,C,B)的間接聯(lián)系,人物C為他們聯(lián)系的紐帶,聯(lián)系的緊密程度即人物之間共同關(guān)注的數(shù)量,共同關(guān)注的數(shù)量越多,人物之間的間接聯(lián)系越緊密.
圖分析是揭示數(shù)據(jù)中復(fù)雜關(guān)聯(lián)關(guān)系的一種有效手段,而可視化通常為該過程的核心組成部分[15-17].本文使用節(jié)點(diǎn)鏈接的方式對(duì)社交照片中識(shí)別對(duì)象的社交關(guān)系進(jìn)行可視化.如圖2(a)所示,社交關(guān)系主要由照片中直接獲取的強(qiáng)關(guān)聯(lián)關(guān)系即I級(jí)社交關(guān)系,結(jié)合微博關(guān)注關(guān)系構(gòu)建成II級(jí)社交關(guān)系,再加上用戶相似度信息構(gòu)成.圖2中以人臉照片為填充的節(jié)點(diǎn)表示為中心節(jié)點(diǎn),即社交照片中識(shí)別出的人臉,較大的節(jié)點(diǎn)為分組節(jié)點(diǎn),較小的節(jié)點(diǎn)為關(guān)注者節(jié)點(diǎn),邊表示節(jié)點(diǎn)間的聯(lián)系.在關(guān)系網(wǎng)絡(luò)視圖中,不同粗細(xì)的線段表示了不同的層次,越粗就表示越底層,而用戶相似度由中心節(jié)點(diǎn)間的線段粗細(xì)來表示,線段越粗表示用戶相似度越高.
在二維平面上展示的關(guān)系網(wǎng)絡(luò)由于節(jié)點(diǎn)過多,可能會(huì)存在邊交叉繁亂,關(guān)系較少的節(jié)點(diǎn)會(huì)聚集在一起,影響交互效果.由此,本文引入了3D的節(jié)點(diǎn)鏈接圖,在三維空間中可以通過旋轉(zhuǎn)、拖拽,調(diào)整不同的視角來觀察、探索關(guān)系網(wǎng)絡(luò).如圖2(b)和圖2(c)所示,3D視圖中節(jié)點(diǎn)由小球構(gòu)成,小球若可點(diǎn)擊則表示該節(jié)點(diǎn)存在子節(jié)點(diǎn),可展開或收回其子節(jié)點(diǎn),若小球不能則表示小球?yàn)槟┕?jié)點(diǎn).若小球之間存在直接連接的閉合環(huán),則為中心節(jié)點(diǎn).
圖3 個(gè)人信息視圖Fig.3 Personal information view
由于在節(jié)點(diǎn)鏈接圖中個(gè)人的關(guān)注者信息由節(jié)點(diǎn)的形式表現(xiàn),無法直觀的了解個(gè)人關(guān)注者的數(shù)量以及各個(gè)分類占比,本文使用分區(qū)圖來對(duì)其進(jìn)行可視化.如圖3所示,中心為社交照片識(shí)別的人物,第二層為關(guān)注者的分組,該分組由微博關(guān)注數(shù)據(jù)的分組標(biāo)簽構(gòu)成.個(gè)人信息視圖將每個(gè)對(duì)象所有分組情況展現(xiàn),同時(shí)可以獲取每個(gè)分組的比例以及分組中具體的關(guān)注者.如圖中何炅的總關(guān)注數(shù)量為647,其中占比最大的娛樂分組為總數(shù)的68.3%;李小冉的電影分組中有趙寶剛、楊陽(yáng)、李瀟等人.
圖4 共同關(guān)注信息視圖Fig.4 Common concern information view
為了深入分析識(shí)別對(duì)象間社交關(guān)系的緊密性及可發(fā)展性,本文通過打包圖可視化方法展示對(duì)象間共同關(guān)注信息.如圖4(a)所示,用大圓包含識(shí)別對(duì)象的所有共同關(guān)注,用中圓包含該對(duì)象與其他任一對(duì)象的共同關(guān)注,用小圓包括不同類別的共同關(guān)注.以何炅為例,圖4(b)為何炅的共同關(guān)注信息視圖,其中何炅與謝娜之間的共同關(guān)注人數(shù)為275,何炅與李小冉之間的共同關(guān)注人數(shù)為23.為細(xì)化共同關(guān)注信息,將對(duì)象間的共同關(guān)注分類,如圖4(c)所示,“娛樂”分類在何炅與謝娜的共同關(guān)注人數(shù)中占最大比重有204人.
本文中所使用的實(shí)驗(yàn)數(shù)據(jù)均來源于網(wǎng)絡(luò),人臉特征模板庫(kù)由共約320個(gè)明星主要為大陸明星和臺(tái)灣明星構(gòu)成,并以他們的姓名、微博ID構(gòu)建基本的個(gè)人信息庫(kù).
在實(shí)驗(yàn)過程中,以明星的社交照片為輸入數(shù)據(jù),通過人臉識(shí)別技術(shù)識(shí)別出照片中的人臉,通過匹配數(shù)據(jù)庫(kù)獲取相應(yīng)識(shí)別對(duì)象的微博ID,用以實(shí)時(shí)的微博數(shù)據(jù)獲取.
微博數(shù)據(jù)獲取主要包含關(guān)注人數(shù)據(jù)、微博文本數(shù)據(jù).其中,關(guān)注人數(shù)據(jù)主要包括關(guān)注人姓名、關(guān)注人微博ID、關(guān)注類別.本文主要通過這兩種微博數(shù)據(jù)構(gòu)建人物關(guān)系網(wǎng)絡(luò),首先,通過識(shí)別對(duì)象的關(guān)注人信息,判斷對(duì)象之間是否相互關(guān)注,是否存在共同的關(guān)注人物,構(gòu)建出基礎(chǔ)的人物關(guān)系網(wǎng)絡(luò).然后,通過分析微博文本的相似度,判斷對(duì)象之間的相似性,以分析對(duì)象關(guān)系更加緊密的可能性.
獲取關(guān)系數(shù)據(jù)后,在進(jìn)行主要的可視化處理前,對(duì)數(shù)據(jù)需要進(jìn)行一些處理.在關(guān)系挖掘前,由于獲取到的數(shù)據(jù)均以列表的形式存儲(chǔ)的,為了便于進(jìn)行人物關(guān)系網(wǎng)絡(luò)的挖掘工作,需要先對(duì)數(shù)據(jù)進(jìn)行關(guān)系的網(wǎng)絡(luò)化處理.首先將每個(gè)人物具體抽象為一個(gè)節(jié)點(diǎn),而每個(gè)節(jié)點(diǎn)可以具有自己的屬性信息,如姓名、微博ID等.如果對(duì)象與另一個(gè)對(duì)象間存在較多共同關(guān)注人,則說明兩對(duì)象間的關(guān)系較為緊密,且關(guān)系再發(fā)展的潛力較大.
系統(tǒng)的交互主要分為以下幾個(gè)部分:1)照片文件上傳,應(yīng)用于人臉識(shí)別功能,上傳所需識(shí)別的社交照片,以識(shí)別人臉獲取人物信息;2)平移和縮放,應(yīng)用于社交關(guān)系視圖,用以支持用戶按照不同尺度縮放、查看可視化界面;3)節(jié)點(diǎn)篩選,應(yīng)用于社交關(guān)系視圖,用于支持用戶篩選出所需查看的關(guān)注分組,點(diǎn)擊關(guān)系圖中的其中一個(gè)分組,可展示出該分組的關(guān)注者對(duì)象并以表格的方式載入到頁(yè)面下方,以及與其他分組是否存在信息重疊的情況;4)分區(qū)變焦,應(yīng)用于個(gè)人信息視圖和共同關(guān)注視圖,用于用戶根據(jù)不同焦點(diǎn)來查看個(gè)人信息和共同關(guān)注信息;5)焦點(diǎn)節(jié)點(diǎn),用于3D社交關(guān)系視圖,用以用戶選擇不同的節(jié)點(diǎn)為中心視角來觀察可視化界面;6)節(jié)點(diǎn)擴(kuò)展,用于3D社交關(guān)系視圖,點(diǎn)擊節(jié)點(diǎn)可以擴(kuò)展或收縮節(jié)點(diǎn);7)邊長(zhǎng)控制,用于3D社交關(guān)系視圖,通過滑動(dòng)條調(diào)節(jié)各層次的邊長(zhǎng)長(zhǎng)度,方便用戶觀察.
為了更好地解釋系統(tǒng)的探索流程,本文在下面描述一個(gè)使用場(chǎng)景.假設(shè)某用戶A希望了解某社交活動(dòng)上何炅、謝娜、李小冉之間的社交關(guān)系,他想通過SPVis系統(tǒng)得到一些信息.首先他通過SPVis界面上傳一張此社交活動(dòng)上這些明星的合照,系統(tǒng)通過與人臉數(shù)據(jù)庫(kù)的信息匹配,獲取相應(yīng)的微博ID用以爬取其微博數(shù)據(jù).
圖5 系統(tǒng)主界面圖Fig.5 Diagram of system main interface
SPVis系統(tǒng)的主界面顯示如圖5所示,SPVis主要提供了4種不同的可視化視圖:社交關(guān)系視圖、個(gè)人信息視圖、共同關(guān)注信息視圖、3D社交關(guān)系視圖,如圖2-圖4所示.在個(gè)人信息視圖中,用戶A發(fā)現(xiàn)李小冉的關(guān)注人數(shù)只有193個(gè),且對(duì)比何炅與謝娜的關(guān)注分組,李小冉的關(guān)注分組也較少,由此推測(cè)李小冉可能較少進(jìn)行微博社交,且對(duì)微博社交關(guān)系并不緊密.何炅與謝娜的關(guān)注人數(shù)比較相近,關(guān)注分組相似,并且各分組占總關(guān)注人數(shù)的比例也大致相同,可以推測(cè)何炅與謝娜的相似度較高,微博社交比較頻繁,他們之間的社交關(guān)系比較緊密.
社交關(guān)系視圖通過三個(gè)層次來展示,分別為中心人物、關(guān)注分組、關(guān)注者,如圖6(a)和圖6(b)以及圖2(a)所示.中心人物關(guān)系,由識(shí)別社交照片所得的強(qiáng)關(guān)系構(gòu)成,其關(guān)系緊密程度由識(shí)別對(duì)象間的用戶相似性決定.在中心人物關(guān)系視圖中,三人中謝娜和李小冉的相似度較高,可見她們?cè)谖⒉┲兴l(fā)布的信息較為接近,由此可以推測(cè)她們之間的個(gè)人愛好或者價(jià)值取向較為相似,她們之間可能存在更多共同話題,她們的社交關(guān)系可以更加緊密.關(guān)注分組關(guān)系視圖所展示的信息與個(gè)人信息視圖較為相似.從社交關(guān)系視圖與3D社交關(guān)系視圖中,用戶A發(fā)現(xiàn)何炅、謝娜、李小冉之間在微博上有互相關(guān)注,而且他們之間存在許多共同關(guān)注.
圖6 不同層次的關(guān)系視圖Fig.6 Relationship between different levels
共同關(guān)注信息視圖中的可視化信息能夠指導(dǎo)用戶A在社交關(guān)系視圖和3D社交關(guān)系視圖的交互.在共同關(guān)注信息視圖中,何炅、謝娜、李小冉的共同關(guān)注人數(shù)比例與他們個(gè)人關(guān)注比例基本相同.在李小冉的共同關(guān)注人數(shù)中,她與謝娜和何炅的共同關(guān)注人數(shù)分別為27、23,占關(guān)注人數(shù)的1/10左右,由此可以看出李小冉與何炅和謝娜的交集并不密切,且親密程度相似.通過謝娜和何炅的社交關(guān)系網(wǎng)絡(luò),李小冉的社交關(guān)系可以進(jìn)一步拓展,可以結(jié)交更多的朋友.謝娜與何炅之間的共同關(guān)注人數(shù)較多,有275人,占總關(guān)注人數(shù)的1/2左右,其中“娛樂”分組的共同關(guān)注人數(shù)最多,由此得出謝娜和何炅的交友傾向比較接近,他們之間關(guān)系的親密程度較李小冉更為緊密,但他們之間通過彼此的社交關(guān)系拓展個(gè)人社交較為困難.
在共同信息關(guān)注視圖中,共同關(guān)注者在不同的對(duì)象關(guān)注列表中分組不同.通過在社交關(guān)系視圖和3D社交關(guān)系視圖交互,發(fā)現(xiàn)李小冉“朋友”分組的關(guān)注者中存在最多分組的共同關(guān)注,有謝娜的“大V”、“綜藝”、“時(shí)尚”等和何炅的“美妝”、“綜藝”、“朋友”等.何炅的“娛樂”分組中,存在204個(gè)與謝娜的“娛樂”共同關(guān)注,20個(gè)與李小冉的“娛樂”共同關(guān)注;謝娜的“娛樂”分組中,存在204個(gè)與何炅的“娛樂”共同關(guān)注,2個(gè)“朋友”共同關(guān)注,21個(gè)與李小冉的“娛樂”共同關(guān)注,由此得出何炅與謝娜的相似性很高.
根據(jù)SPVis系統(tǒng)提供的信息,最終,用戶A推測(cè)李小冉與何炅和謝娜的社交關(guān)系并不緊密,但可以通過與何炅和謝娜存在的共同關(guān)注拓展她的社交.李小冉與謝娜的個(gè)人愛好或價(jià)值觀較為接近,她們之間的社交關(guān)系更具有發(fā)展性,可以更加緊密.何炅與謝娜的社交圈存在較多相似性,且社交圈的交集較多,他們的社交關(guān)系可能較為緊密,但難以通過彼此的社交圈拓展社交關(guān)系.
本文設(shè)計(jì)實(shí)現(xiàn)了一個(gè)基于照片的社交網(wǎng)絡(luò)可視化系統(tǒng)SPVis,使用社交照片結(jié)合社交網(wǎng)絡(luò)服務(wù)探索人物之間的社交關(guān)系,構(gòu)建多層次的社交關(guān)系網(wǎng)絡(luò).SPVis首先對(duì)社交照片進(jìn)行人臉識(shí)別,構(gòu)建以人臉共現(xiàn)為標(biāo)準(zhǔn)的強(qiáng)社交關(guān)系.其次,通過微博爬蟲,從微博中獲取所識(shí)別對(duì)象的微博數(shù)據(jù),其中包括微博文本數(shù)據(jù)和關(guān)注者數(shù)據(jù).通過微博關(guān)注者數(shù)據(jù),在強(qiáng)社交關(guān)系的基礎(chǔ)上添加虛擬社交關(guān)系.然后,利用LDA主題模型提取微博文本的主題,通過計(jì)算微博文本主題的相似度,增加人物之間的隱性社交關(guān)系.本文構(gòu)建了現(xiàn)實(shí)社交和虛擬社交結(jié)合的社交網(wǎng)絡(luò),并通過可視化方式,將抽象的數(shù)據(jù)具象化,結(jié)合不同交互以分析人物之間的虛擬社交特點(diǎn)以及對(duì)現(xiàn)實(shí)社交關(guān)系再發(fā)展的影響.