關(guān)鍵詞:社交網(wǎng)絡(luò)分析(SNA) | 統(tǒng)計 | 冪律分布
簡介
為保證可讀性,本文將分為上下兩篇螟左,上篇只涉及數(shù)據(jù)介紹及基本的統(tǒng)計描述性分析,下篇是基于用戶關(guān)注網(wǎng)絡(luò)關(guān)系進行的分析觅够。
本文源自我在2015年Social Computing課程中參與的一個小組項目胶背,主要語言為Python,這里是項目包括數(shù)據(jù)集的Github傳送門(引用請使用該地址)喘先。項目內(nèi)容包括了知乎社交網(wǎng)絡(luò)數(shù)據(jù)的爬取钳吟、存取、分析全過程窘拯。在本文中我打算略去數(shù)據(jù)爬取和數(shù)據(jù)庫I/O的部分红且,重點在分享一些有趣的結(jié)果。分析過程若有不周之處涤姊,還望指正暇番,也期待可以和有興趣的小伙伴討論及合作,繼續(xù)一些更深入的分析思喊。
數(shù)據(jù)
(自帶吐槽模式開啟)
雖說不講數(shù)據(jù)爬取壁酬,但要說清楚我們所使用的數(shù)據(jù)到底是啥,還是得簡單提一下的恨课。2015年10月舆乔,我們使用了本人的知乎賬號作為種子,先獲得了所有我關(guān)注的用戶的數(shù)據(jù)庄呈,再獲得了這些用戶所關(guān)注的用戶的數(shù)據(jù)蜕煌,所以算上種子的話一共是3層的廣度遍歷(注意其實這個數(shù)據(jù)可能是存在嚴重bias的,畢竟seed是一個逗逼诬留,逗逼關(guān)注的人呢...咦怎么感覺脖子一涼)斜纪。這里的用戶數(shù)據(jù)包括:用戶的回答數(shù),用戶獲得的贊同數(shù)文兑、感謝數(shù)盒刚,用戶關(guān)注的人和關(guān)注用戶的人,用戶回答過的問題以及每個問題的話題標簽绿贞。這里給出數(shù)據(jù)的簡要統(tǒng)計信息:
- 數(shù)據(jù)庫文件: 688 MB(SQLite)
- 數(shù)據(jù)包含:2.6萬名用戶, 461萬條關(guān)注連接, 72萬個問題
- 數(shù)據(jù)的壓縮包可以在這里下載因块。
這里是一張數(shù)據(jù)全貌的示意圖:
下面將著重介紹我們所做的分析。
玩的不是同一個知乎:均值籍铁、中位數(shù)與標準差
要告訴別人我們在知乎上混得怎樣涡上,最基礎(chǔ)的幾個指標是什么呢趾断?一定是關(guān)注、回答吩愧、贊同芋酌、感謝。所以我們首先對用戶的關(guān)注數(shù)(followee)雁佳、關(guān)注者數(shù)(follower脐帝,粉絲數(shù))、回答數(shù)(answer)糖权、收到贊同數(shù)(agree)和收到感謝數(shù)(thanks)的平均數(shù)堵腹、中位數(shù)以及標準差進行了計算,結(jié)果如下表:
這里其實就有許多有趣的結(jié)論了星澳。
首先我們看平均值疚顷,哇,平均每個人有三千多粉絲募判,三千多贊同荡含,再看看可憐的我咒唆,306個粉和837個贊届垫,而且他們回答的問題也并不多啊,卻有那么多贊和粉絲全释,還讓不讓人玩知乎了装处?再看看中位數(shù),頓時心里好受一些了浸船,原來我混得挺不錯嘛妄迁,五個指標都是我比較大,真開心(你是不是傻)李命。
究竟是什么原因造成平均值和中位數(shù)差異這么大呢登淘,也許我們能從標準差看出來一些端倪——太大了,粉絲數(shù)和贊同數(shù)的標準差甚至超過了兩萬封字。
這意味著什么呢黔州?我們知道,標準差其實衡量了數(shù)據(jù)個體之間的離散程度阔籽,也可以解釋為大部分的數(shù)值和其平均值之間的差異流妻。因此這么大的標準差可以說明知乎用戶之間的差距可能略大于整個銀河系(霧),同時也說明絕大部分用戶的數(shù)值和平均值有很大的差距笆制,要么大得離譜(比如張佳瑋)绅这,要么小得可憐(比如我)。
有人可能會不服氣在辆,說標準差嚴重依賴于數(shù)據(jù)本身的scale证薇,不能充分說明問題度苔。那么這里使用標準離差率(標準差除以平均值)來算算贊同數(shù),21951.4/3858.4 = 568.9%浑度。
以上現(xiàn)象還可以導(dǎo)出一個猜測林螃,那就是知乎用戶的這五個指標的值分布,都不大可能是正態(tài)分布及其近似俺泣。讓我們回想正態(tài)分布的樣子:
如果是正態(tài)分布疗认,中位數(shù)(最中間的值)、眾數(shù)(最多的值)以及平均值三者至少應(yīng)該是非常接近的伏钠,然而我們這里卻是地月距離(怎么一下縮水那么多)横漏。
當雪球滾到最后:長尾和冪律分布
為了進一步驗證上面的猜測,我們繪制了五個指標的分布圖(Distribution Graph)熟掂。
這里說明一下這五張分布圖的含義缎浇,橫軸表示指標的具體數(shù)值,縱軸表示有多少用戶具有該指標值赴肚。需要注意的是橫軸值和縱軸值都取了以10為底的log素跺,這是研究中一種常見的處理辦法,能夠使圖所表達的信息更清晰誉券。以感謝數(shù)分布圖為例指厌,那個最左上方的點表示在這兩萬多知乎用戶里面,有大于10的三次方也就是1000的人沒有獲得一個感謝(摸摸大)踊跟;而最下面那一排點則是說踩验,感謝數(shù)是x1,x2商玫,...箕憾, xn (反正都不小)的用戶,都只有一個人——注意僅這一排點并不能形成什么有效的結(jié)論拳昌,因為可能感謝數(shù)100的只有一個人袭异,101的就有好多人了,這一定程度上大概是因為數(shù)據(jù)量小炬藤,采樣不足御铃。但是如果把下面幾排點放到一起考慮,也許會更有啟發(fā)一些刻像。
順便提一句畅买,其實關(guān)注數(shù)和粉絲數(shù)的分布圖分別還有另外一個名字,它們其實是知乎用戶關(guān)注網(wǎng)絡(luò)的出度(out-degree)分布圖和入度(in-degree)分布圖细睡,這點在下篇中還會有所提到谷羞。
如果是對這種分布圖比較熟悉的童鞋,應(yīng)該一眼就能看出,這絕壁不是正態(tài)分布湃缎,而極有可能是冪律(power law)分布(不過因為懶我們并沒有做擬合去驗證)犀填,這種分布在許多有人參與其中的網(wǎng)絡(luò)中都會出現(xiàn)。此外嗓违,仔細比較這五條曲線的整體形狀九巡,有沒有覺得有兩條與另外三條略有不同?一條是關(guān)注數(shù)蹂季,一條是答案數(shù)冕广,這兩條曲線向外的彎曲程度似乎更明顯,也就是說隨著橫軸值的增大偿洁,縱軸值減小的趨勢相對較慢撒汉,而恰好五個指標里只有這兩個是某個用戶自己可以控制的,而其他三個指標則是由其他用戶形成的群體所控制涕滋,這是很奇妙的一點睬辐,我覺得其實還有深挖的可能性。
現(xiàn)在讓我們以感謝數(shù)為例宾肺,再畫另外一種分布圖溯饵。橫軸表示每個用戶的index也就是0,1锨用, 2丰刊, 3...,順序由感謝數(shù)大小決定黔酥,縱軸則是該用戶收到感謝數(shù)的具體數(shù)值:
看到那個突破天際的點了嗎藻三,二十七八萬的感謝(其實這個點在前面那張感謝數(shù)分布圖中也出現(xiàn)了洪橘,你還認得僅在幾個自然段以外的它嗎)跪者!再看看下面那條長長的尾巴,人艱莫拆熄求。再來看一個更夸張的渣玲,贊同數(shù):
其他三個指標的圖的形狀也基本如此。
有其他知友使用遠大于我們的數(shù)據(jù)量做了類似的分析弟晚,結(jié)論是一致的忘衍。總結(jié)一下就是:大多數(shù)人小得可憐卿城,卻有極少數(shù)人大得可怕枚钓,一點也不正(可)態(tài)(愛)。前幾年不是有本書很火嗎瑟押,叫做《長尾理論》搀捷?所謂長尾,指的就是這樣一種現(xiàn)象(附送我對該現(xiàn)象的一些解釋:什么是「長尾效應(yīng)」)
到這里不由得讓人提到另外一個東西:馬太效應(yīng)。所謂窮的人越來越窮嫩舟,富的人越來越富氢烘,感覺上其實就是長尾效應(yīng)的動態(tài)解釋(最近打算看看有沒有相關(guān)的文獻)。富的人掌握大量資源家厌,因此更可能攫取更多資源播玖,而窮的人則相反;大V因為有名而得到更多關(guān)注饭于,同時因此變得更加有名蜀踏;玩游戲carry從而得到更多錢,有了錢買裝備又更可能carry掰吕。這是典型的正(滾)反(雪)饋(球)脓斩。最后造成的結(jié)果,就是長尾現(xiàn)象畴栖。
論如何滾成人生贏家:贊同與關(guān)注
這一節(jié)可以算是對上一節(jié)結(jié)論的一個支撐随静。下面這張圖同時包含了用戶的贊同數(shù)和粉絲數(shù)兩個指標:
(!密集恐懼癥高能預(yù)警!)
我想不需要我們再做個回歸什么的了,一看就是赤裸裸的正相關(guān)啊吗讶。這也為我等如何冷啟動逆襲成為知乎大V提供了理論支持——要么你就有本事回答出幾個贊數(shù)突破天際的答案燎猛,要么你一開始就很有名,沒寫啥答案也能吸粉...(說的都是屁話...)
好了本篇到此結(jié)束照皆,對網(wǎng)絡(luò)關(guān)系更感興趣的童鞋重绷,不要錯過下篇,下篇信息量更大哦~