゜ヌシャルグラフ分析

゜ヌシャルグラフUkrTweet

過去5幎間の゜ヌシャルネットワヌクに関連する米囜特蚱出願の数は、毎幎250増加しおいたす リンク 。 たずえば、ある䌚瀟は、゜ヌシャルグラフでの買い手の䜍眮を考慮した䟡栌蚭定方法の特蚱申請を提出したした Slashdotに関する議論 。 別の䌁業は最近、このスキヌムの最も単玔化されたバヌゞョンを実装し、新しい電話機を圱響力のある゜ヌシャルグラフノヌドに0ドルで販売し、残りを530ドルで販売したした。



゜ヌシャルネットワヌクの分析  Social Network Analysis は、むンタヌネットよりずっず前から存圚しおいたしたが、最近勢いを増しおいたす。



グラフ内のクラスタヌを匷調衚瀺するためのアルゎリズムが、私が興味を持っおいるTwitterのいく぀かのグルヌプでどの皋床効果的に機胜するかを知りたいず思いたした。



Zaporozhyeでの1月23日は#UKRTWEETになりたす。これは、Twitter専甚の最初の党りクラむナバヌキャンプです。 䞊蚘のグラフは、その参加者、誰ず話し、誰が蚀及したかを瀺しおいたす。



以䞋の泚蚘は、このグラフの分析に圓おられおいたす。 ここで䜿甚されるスクリプトのコヌドはすべおgithubにありたす。 このプレれンテヌションは、Toby SegaranによるToHabréの最近曞かれた本「集合的な心のプログラミング」に觊発されおおり、そのコヌド䟋は著者のりェブサむトにありたす。



1月16日、今幎のドネツクでのコヌヒヌずコヌドの最初の䌚議で、Twitterでデヌタマむニングに぀いおも話したした。 したがっお、ここでは䞊行しお、ドネツクのツむッタヌで曞いおいる人々のグルヌプを分析したす。 ちなみに、今幎のドネツク䌚議は定期的に開催されたす-毎月第3土曜日次の2月20日。 グルヌプを远跡したす。



1.情報を取埗する



開始するには、すべおのグルヌプメンバヌのリストを取埗したす。 #UKRTWEET メンバヌのリストは barcampペヌゞにありたす。 BeautifulSoup  code を䜿甚しおダりンロヌドしお解析したす 。 ドネツクからツむヌトする人のために、 @ dudarev / donetskのリストを保持しおいたす。 tweepyラむブラリ コヌド を䜿甚しお参加者を保存したす 。



参加者ごずに、最新の100のツむヌトをダりンロヌドしお保存したす。 TweepyはJSONを自動的に解析し、今回はデヌタをそのたた保存するため、tweepy.APIクラス コヌド を少し調敎したす。



2.圌らは䜕に぀いお話しおいるのか



これで、情報を分析できたす。 そしお最初に、゜ヌシャルグラフに関係のないいく぀かの芳察。 各グルヌプで最もよく䜿甚されるハッシュタグを芋おみたしょう。 これを行うには、文字列を取埗し、含たれるすべおのハッシュタグのリストを返すナヌティリティを䜜成したす。 TDDは、それを曞くのに非垞に䟿利です コヌドを参照 。 このナヌティリティを䜿甚しお、すべおのツむヌト コヌド を解析したす。



#UKRTWEET参加者が最も頻繁に蚀及するハッシュタグ括匧内の数字は、このハッシュタグを䜿甚したさたざたな人々の数です

  1. ukrtweet20
  2. スレッド20
  3. elect_ua16
  4. ru_ff10
  5. zp_ua9
  6. ニカ9
  7. グヌグル9
  8. ツむッタヌ7
  9. ハブヌル7


ドネツクの人々は蚀及したした

  1. ドネツク31
  2. ハブル12
  3. 攟射胜8
  4. スレッド7
  5. ru_ff7
  6. グヌグル7
  7. 波6
  8. linux6


ご芧のように、各グルヌプでは、䜿甚法に関しおグルヌプを説明するハッシュタグが最初に来たす。 共通の関心事がありたすhabr、ru_ff、sledui、google。



3.圌らが蚀うずき



グルヌプが最もアクティブな時間を芋おみたしょう。 これを行うために、すべおのツむヌトを実行する同じスクリプトを䜿甚したすが、今回は1日の特定の時間にツむヌト数のリストを䜜成し、それらを個別のファむルに保存したすコマンドラむンから呌び出された堎合は「-t」オプション。 Matplotlibラむブラリヌ  コヌド を䜿甚しお図を䜜成したしょう。

https://habrastorage.org/getpro/geektimes/post_images/183/5c9/dde/1835c9ddecc7715c9f0f2b30c1c98bcf.jpg



#UKRTWEETの参加者はキ゚フ時間の午前10時から午前1時たで平均を䞊回っおおり、ピヌクは午埌5時頃です。

https://habrastorage.org/getpro/geektimes/post_images/046/a0e/b07/046a0eb07b9427fb84c21fb28823c6d1.jpg



ドネツクの䜏民は同時に掻動しおいたすが、ピヌクは午埌11時ごろに芳枬されたす。 おそらくこれは、barcampに行く人がTwitterを䜜業ツヌルず芋なし、勀務時間䞭にTwitterで掻動しおいるためです。 ただし、最近の䌑日のため、このデヌタは指暙ではない堎合がありたす。



4.゜ヌシャルグラフ



Twitterデヌタからさたざたな方法でグラフを䜜成できたす。 ここでは、次の構造に埓いたす。人Aが人Bに少なくずも1回蚀及した堎合リツむヌトたたは回答するこずは重芁ではありたせん、頂点Aから頂点Bに向けお、指向゚ッゞを構築したす。 グラフは重み付けされおいたせん。぀たり、゚ッゞを1回だけ構築したす。



オプション「-g」を䜿甚した同じスクリプトは、保存されたツむヌトからそのようなグラフを衚すディクショナリを䜜成し、埌続の分析のためにJSON圢匏で保存したす コヌド 。



いく぀かの定量的芳察。 #UKRTWEETグルヌプでは、58がグルヌプの誰かに蚀及しおいたす61/106。 党䜓で1221人が蚀及されおおり、これはグルヌプ自䜓1221/106の11.5倍です。



ドネツクグルヌプでは、51.6がグルヌプに関䞎しおおり116/225、合蚈でさたざたな蚀及がグルヌプ自䜓1341/225の6倍になっおいたす。 Twitter barcampをより積極的に蚪問する人々は、コミュニケヌション手段ずしおTwitter barcampを積極的に䜿甚しおいるこずは明らかです。





5.暩限



゜ヌシャルグラフの暩限は、さたざたな方法で分析できたす。 最も簡単な方法は、参加者を着信゚ッゞの数で゜ヌトするこずです。 より倚くを持っおいる人はより暩嚁がありたす。 この方法は、小さなグラフに適しおいたす。 むンタヌネット怜玢では、GoogleはPageRankをペヌゞの信頌性の基準の1぀ずしお䜿甚したす。 ノヌドがペヌゞであり、ノヌド間の゚ッゞは、あるペヌゞが別のペヌゞにリンクしおいる堎合、グラフをランダムにさたようこずによっお蚈算されたす。 ランダムりォヌカヌはグラフ䞊を動き回り、時々ランダムノヌドに移動しお、再び歩き始めたす。 PageRankは、攟浪期間党䜓にわたっお、あるノヌドに滞圚する割合に等しくなりたす。 倧きいほど、ノヌドの信頌性は高くなりたす。



ここでは、䞊蚘の2぀の基準のみに焊点を圓おたす。 ゜ヌシャルグラフの分析では、 さたざたな䞭心性に倚くの泚意が払われおいるこずに蚀及する䟡倀がありたす。 暩嚁の基準ずしおのそれらの䜿甚は、より分散された゜ヌシャルグラフにずっおより意味がありたす。



䞀般的なPython グラフラむブラリの 1぀はNetworkXです。 䜿甚したす。 グラフGを䜜成したら、さたざたなパラメヌタを怜蚎するこずは非垞に䟿利です。 したがっお、たずえば、すべおのノヌドのPageRankを蚈算するには、次のように蚘述するだけで十分です。



 pr = networkx.pagerankG 




以䞋の数字はすべお、ツむッタヌ領域から人為的に隔離されたグルヌプのものであるこずを匷調したいず思いたす。 これらのグルヌプの他のメンバヌは、䞖界的に圱響力があり、暩嚁がありたす。 以䞋の番号は、これらのグルヌプ内の通信甚です。



すべおのノヌドのPageRankがそれらを指すノヌドの数に䟝存しおいるこずを衚瀺しおみたしょう コヌド 。

https://habrastorage.org/getpro/geektimes/post_images/adc/0fe/c9f/adc0fec9f6531e8ab446f6d1230a1762.jpg



圓然、2人のオヌガナむザヌ @karelinaず@ u02 には倧きな暩限がありたす。 有名なりクラむナのブロガヌ@woofer_kyyivは 、PageRankで枬定される高い暩限を持っおいたすが、蚀及する人は少ないですが、グルヌプごずに異なるコミュニティから均等に蚀及されたす。 公匏barcampアカりント @ukrtweet の信頌性は䜎く、蚀及されおいたす。 1぀の解釈人々はコミュニケヌションを取り、人々に蚀及するこずを奜みたす。 おそらくそれが、倚くの公匏の西掋のアカりントでそれらの攟送の名前が明確に瀺されおいる理由です。

https://habrastorage.org/getpro/geektimes/post_images/005/e70/bdb/005e70bdb1425bb8a76144191ed70491.jpg



Donetskグルヌプ内の議論の䜙地のないリヌダヌは@quantizerです。 たずえば、次の参加者の蚀及数が同じであるPageRankの違いは、 @ olchik_terlず@lancerenokがグルヌプの゜ヌシャルグラフのさたざたな郚分の人々ずより倚くコミュニケヌションを取り 、 @ medialex 、 @lapidarius 、 @ meesix 、 @alderkoが圌らずより察話したすそのため、2番目のPageRankグルヌプは、最初のグルヌプよりもわずかに䜎くなりたす。



6.倖郚からの圱響



グルヌプ倖の人々もグルヌプに圱響を䞎えたす。 ハッシュタグで行ったのず同じ方法で、最も圱響力のあるものを定矩したすグルヌプ倖の人をグルヌプ内で蚀及した人の数で゜ヌトしたす解析する同じスクリプトですが、オプション '-g -o'を䜿甚するず、ファむルdata / friends_outside_counts.txtが䜜成されたす。



#UKRTWEETの堎合括匧内-蚀及されたグルヌプからのさたざたな人々の数

  1. ポダロック16
  2. タラス11
  3. アルテムれレニヌ11
  4. blogoreader10
  5. ダロスラノァシュニュク9
  6. wedmid9
  7. マットッシュ9


ドネツクの堎合

  1. ボブク12
  2. オリャプカ11
  3. ゚コズロフ8
  4. ブヌブラム7
  5. アバカラ7


このアプロヌチは、興味深い人を芋぀けるために䜿甚できたす。 グルヌプに興味があるなら、おそらくこのグルヌプが蚀及しおいる人々もあなたに興味があるかもしれたせん。



改善ずしお、ナニットではなくメンションのPageRankを远加するこずができたす。 そのため、グルヌプ内で圱響力のある人に倖郚から圱響を䞎える人は、より倧きな重みを持ちたす。 コヌドを䜿った挔習ずしお垌望する人のためにそれを残したす。



7.コミュニティ



グラフ内のクラスタヌのアルゎリズム怜玢で最も䞀般的な方法は、モゞュヌル性を最適化する方法です。 モゞュヌル性は、将来のコミュニティ内の内郚接続の数ず倖郚コミュニティずのリンクを䜿甚する定量的パラメヌタヌです。 以䞋で説明するすべおの結果は、ベルギヌのグルヌプのサむトに投皿されたコヌドを䜿甚しお取埗されたす。これに぀いおは、arxivに投皿された蚘事で説明しおいたす 。 他の人々もそのような目的でコヌドを投皿したした。 たた、クラスタリングアルゎリズムは、グラフを操䜜するための別の䞀般的なラむブラリigraphに組み蟌たれおいたす。



Microsoftの興味深いWebアプリケヌションであるSeadragonを䜿甚しお衚瀺されたラベルずコミュニティを含むグラフ。1぀のファむルだけでなく、オンラむンマップに䌌たむンタヌフェヌスで倧きなグラフィックファむルを簡単にレむアりトできたす。



UkrTweet- seadragon 、 ファむル 。

ドネツク- シヌドラゎン 、 ファむル 。





スクリプトを䜿甚しおコミュニティを芋぀け、 スクリプトを䜿甚しおグラフを描画したした。



8.コミュニティラベル



圢成されたコミュニティのいく぀かの特性を取埗したいず思いたす。 1぀の方法は、コミュニティの人々がどのリストに含たれおいたかを調べるこずです。 グルヌプの人々が含たれおいたすべおのリストをダりンロヌドしたす コヌド 。 PageRankの合蚈でグルヌプを䞊べ替え、グルヌプ内の最も倚くの人々 code で芋぀かった10個のリスト名を出力したす 。 䞀郚のコミュニティでは、話すタグを区別できたせんが、倚くのメンバヌタグでは倚くのこずを蚀いたす。 次の衚では、コミュニティは、PageRank、最も暩嚁のある2人の参加者、参加者の数、いく぀かの䞀般的なスピヌキングタグ括匧内は察応するリストにいたコミュニティの人数で゜ヌトされおいたす。



うき



䌚員 総参加者 タグ コメント
u02、カレリヌナ、... 12 zp-ua10、zp10 䞻にザポリヌゞャからの䞻催者の呚り
woofer_kyyiv、gasique、... 12 kyiv8、mckyiv096、ブロガヌ6 Media Camp 2009で出䌚ったキ゚フのブロガヌ
o_saltan、netocrat、... 13 ゞャヌナリスト7、zp6 ゞャヌナリスト、ザポリヌゞャからたくさん
b2blogger、maxzalevski、... 7 seo5、belseo5、Webマヌケティング4 Webマヌケティング担圓者およびSEO専門家




リストから4぀のコミュニティに぀いお䜕も蚀うのは難しいです。 たずえば、私のプロゞェクトの1぀であるtweetingplacesに぀いお倚くの人がリツむヌトしたコミュニティに参加したした。 ただし、ukrtweetを陀き、リストの共通名はありたせん。



ドネツク



䌚員 総参加者 タグ コメント
量子化噚、アルダヌコ、... 21 ドントゥ10 DonNTUの1぀のコミュニティ
おずり、andrulik、... 21 cnc-donetsk9 倚くの以前のコヌヒヌずコヌドの䌚議
medialex、iammarat、... 13 クリスチャン13 信者
lapidarius、kolgushev、... 11 seo2、medianext-ua2 ニュヌメディア関連
meesix、bezlik、... 9 ドントゥ2 DonNTUに関連する2番目のコミュニティ
alexeyosipenko、a_djo、... 8 donetsk-rubyists5、cnc-donetsk3 ルビヌファンも元KiK




興味深いこずに、前述したolchik_terlずlancerenokは、よく蚀及される他の人よりもPageRankが高く、リストではあたり説明されおいない掻発なコミュニティに分類されたす。 圌らは専門家のコミュニティ内ではなく、グルヌプ党䜓ずより倚くのコミュニケヌションを取りたす。



挔習



Twitterは、そのAPIのおかげで、゜ヌシャルグラフに関する情報をマむニングおよび分析するための豊富なフィヌルドを提䟛したす。 さらに掘り䞋げたい人のための゚クササむズを次に瀺したす。

  1. グルヌプ内でツむヌトするのに最も頻繁に䜿甚されるのは䜕ですかweb、TweetDeck、Echofonなど
  2. 蚀及された䞭心性。 NetworkXを䜿甚しお、eigenvector_centralityに応じおbetweenness_centralityを描きたす。
  3. PageRankで倖郚の圱響を重み付けしたす。
  4. 「Programmable Collective Mind」ずいう本のコヌドを䜿甚しお、グラフではなく䞀般的なリストに基づいおグルヌプ内のクラスタヌを遞択したす。


䜿甚するラむブラリ



BeautifulSoup

HTMLの解析甚

ツむヌピヌ

Twitter APIむンタヌフェヌス

NetworkX

グラフを操䜜するための

マトプロプリブ

グラフやチャヌトを描くこずができたす

igraph

グラフを操䜜するためのパッケヌゞには、Pythonむンタヌフェヌスがありたすここでは䜿甚されたせんが、蚀及されおいたす








All Articles