説明

ソーシャルネットワークから小集団を抽出し、名前付け、並びに可視化する方法およびプログラム

【課題】ソーシャルネットワークから小集団を抽出し、この小集団のメンバ共通の興味を表すキーワードを名前付け、可視化する。
【解決手段】投稿に対してコメントを付与することが可能なネットワークから、特定の利用者に対するフォロー関係に基づいて、パーソナルネットワークを抽出し、パーソナルネットネットワークを、フォロー関係に基づいて小集団に分割する。小集団に含まれる利用者を、ニュースまたは一般的な情報を投稿するニュースソースユーザと、それ以外の一般ユーザに区別し、ニュースソースユーザの投稿およびプロフィールに高い重み付けを行い、全利用者の投稿およびプロフィールからキーワードを抽出する。抽出したキーワードに基づいて、小集団に名前付けする。これらを、抽出されたすべての小集団に行う。また、小集団をノードとし、フォロー関係をエッジとして、パーソナルネットワークのグラフを作成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、フェイスブック(Facebook)またはツイッター(Twitter)のようなオンラインソーシャルネットワーキングサービス(SNS)から、小集団を抽出し、各小集団の特徴を表すキーワードを名前付け、小集団を可視化する方法およびプログラムに関する。
【背景技術】
【0002】
フェイスブックまたはツイッターようなオンラインのソーシャルネットワーキングサービスでは、利用者はお互いに情報を共有している。利用者は、これらの情報に従って、彼らが読みたい投稿を選択している。ソーシャルネットワーキングサービスを効果的に利用するため、多くのアプリケーションが提供されている。
【0003】
例えば、フォロワー(Follower)/フォロウィー(Followee)を管理するためのアプリケーションがいくつか提供されている。なお、フォロワーとは、投稿に対してフォローしている人を示し、フォロウィーとは、逆に投稿がフォローされている人を示す。非特許文献1のTweetDeckは、利用者が属している小集団に応じて、利用者のフォロウィーの投稿を配列する。また、非特許文献2のMentionMap、および非特許文献3のTwitter Browserは、SNS利用者のパーソナルネットワークを抽出し、可視化する。
【0004】
また、非特許文献5のNodeXLは、SNS利用者のパーソナルネットワークを取り込み、ネットワーク解析の分野での標準アルゴリズムであるCNM(Clauset-Newman-Moore)アルゴリズム(非特許文献4)を用いて、ネットワークを小集団に分割する。また、NodeXLは、Harel-KorenのFast Multiscaleアルゴリズム(非特許文献7)を用いて、ネットワークを可視化する。非特許文献6は、TF−IDF(Term Frequency - Inverse Document Frequency:単語の出現頻度−逆出現頻度)法を用いて、SNSからキーワードを抽出する方法を開示している。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】TweetDeck, http://www.tweetdeck.com/、[平成23年6月20日検索]
【非特許文献2】MentionMap, http://apps.asterisq.com/mentionmap/、[平成23年6月20日検索]
【非特許文献3】Twitter Browser, http://www.neuroproductions.be/twitter_friends_network_browser/、[平成23年6月20日検索]
【非特許文献4】A. Clauset, M.E.J. Newman and C. Moore,"Finding community structure in very large networks", Physical ReviewE, Vol.70, No.6, 2004
【非特許文献5】M. Smith, N. Milic-Frayling, B. Shneiderman,E. Mendes Rodrigues, J. Leskovec, C. Dunne, "NodeXL: a free and opennetwork overview, discovery and exploration add-in for Excel 2007/2010", http://nodexl.codeplex.com/from the Social Media Research Foundation, http://www.smrfoundation.org、[平成23年6月20日検索]
【非特許文献6】Z. Li, D. Zhou, Y. Juan, J. Han, "Keywordextraction for social snippets", Proceedings of the 19th internationalconference on World Wide Web, pages 1143-1144, 2010
【非特許文献7】D. Harel and Y. Koren, “A Fast Multi-scaleMethod for Drawing Large Graphs”, Proceedings of the 8th InternationalSymposium on Graph Drawing, pages 183-196, 2001
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、利用者が、フォロワー/フォロウィーの増加のため、パーソナルネットワークを小集団に分割し、分類したいと思っても、既存のアプリケーションでは、このような要求を満たすことはできないという課題があった。
【0007】
TweetDeckのようなアプリケーションでは、フォロワー/フォロウィーを手動で分類することに頼っている。これは時間がかかり困難であるという問題がある。
【0008】
MentionMapおよびTwitter Browserのようなネットワーク可視化のアプリケーションは、Twitter利用者の選択されたフォロワー/フォロウィーを抽出するのみであり、、パーソナルネットワークから小集団を抽出する機能を有していない。
【0009】
NodeXLを用いて、利用者のパーソナルネットワークを自動的に小集団に分割し、可視化することは可能である。しかし、グラフ構造の可視化は、全体を把握するのは困難である。さらに、小集団のメンバ共通の興味を示すため、小集団に自動的に名前付けする機能を備えていない。
【0010】
非特許文献6のTF−IDF法によるキーワードの抽出は、SNS上に投稿された文章が、「短くかつ口語体である」ため、解析が難しいという問題を有している。さらに、利用者の投稿は、多くの「意味のない無駄話」を含んでおり、キーワード抽出方法は、フィルタされるべきノイズを含む結果となる。
【0011】
したがって、本発明は、ソーシャルネットワークから小集団を抽出し、この小集団のメンバ共通の興味を表すキーワードを名前付け、並びに可視化する方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
上記目的を実現するため本発明による小集団を抽出し、名前付けする方法は、投稿に対してコメントを付与することが可能なネットワークから、小集団を抽出し、名前付けする方法において、前記ネットワークから、特定の利用者に対するフォロー関係に基づいて、パーソナルネットワークを抽出するネットワーク抽出ステップと、前記パーソナルネットネットワークを、フォロー関係に基づいて小集団に分割する分割ステップと、前記小集団に含まれる利用者を、ニュースまたは一般的な情報を投稿するニュースソースユーザと、それ以外の一般ユーザに区別する区別ステップと、前記ニュースソースユーザの投稿およびプロフィールに高い重み付けを行い、全利用者の投稿およびプロフィールからキーワードを抽出するキーワード抽出ステップと、前記抽出したキーワードに基づいて、前記小集団に名前付けする名前付けステップと、前記区別ステップから前記名前付けステップを、抽出されたすべての小集団に行うステップとを含む。
【0013】
また、前記小集団をノードとし、前記フォロー関係をエッジとして、前記パーソナルネットワークのグラフを作成するステップをさらに含むことも好ましい。
【0014】
また、前記グラフを作成するステップは、Fast Multiscaleアルゴリズムを用いて、前記特定の利用者が空の小集団におかれ、ノードの大きさが小集団の中の利用者数を表し、エッジの太さが小集団間の接続の数を表すグラフを作成することも好ましい。
【0015】
また、前記分割ステップは、CNMアルゴリズムを用いて、前記パーソナルネットワークを小集団に分割することも好ましい。
【0016】
また、前記区別ステップは、利用者のネットワーク関係及びコミュニケーション履歴に基づいてニュースソースユーザと一般ユーザを区別することも好ましい。
【0017】
また、前記区別ステップは、利用者のフォロワーとフォロウィー関係から得られる係数αを計算するステップと、利用者の投稿数から得られる係数βを計算するステップと、利用者の投稿したテキストに含まれるキーワードの頻度から得られる係数γを計算するステップとを有し、前記係数群から評価関数Sを計算し、該評価関数Sからニュースソースユーザを判別することも好ましい。
【0018】
また、前記キーワード抽出ステップは、TF−IDF法により、全利用者の投稿およびプロフィールからキーワードを抽出することも好ましい。
【0019】
上記目的を実現するため本発明によるプログラムは、投稿に対してコメントを付与することが可能なネットワークから、小集団を抽出し、名前付けするコンピュータを、前記ネットワークから、特定の利用者に対するフォロー関係に基づいて、パーソナルネットワークを抽出するネットワーク抽出手段と、前記パーソナルネットネットワークを、フォロー関係に基づいて小集団に分割する分割手段と、前記小集団に含まれる利用者を、ニュースまたは一般的な情報を投稿するニュースソースユーザと、それ以外の一般ユーザに区別する区別手段と、前記ニュースソースユーザの投稿およびプロフィールに高い重み付けを行い、全利用者の投稿およびプロフィールからキーワードを抽出するキーワード抽出手段と、前記抽出したキーワードに基づいて、前記小集団に名前付けする名前付け手段と、前記区別手段から前記名前付け手段を、抽出されたすべての小集団に行う手段として機能させる。
【発明の効果】
【0020】
本発明によれば、ソーシャルネットワークから小集団が自動的に抽出され、この小集団のメンバ共通の興味を表すキーワード(スポーツ、音楽、政治、技術など)が付与される。さらに、本発明は、ニュースや一般的な情報を配信するニュースソースユーザの投稿からのキーワードの優先度を上げているため、名前付けの精度が向上している。
【図面の簡単な説明】
【0021】
【図1】本発明の機能構成図を示す。
【図2】本発明の処理フローチャートを示す。
【図3】ホップの概念図を示す。
【図4】抽出されたパーソナルネットワークの例を示す。
【図5】図3のネットワークをCNMアルゴリズムで分割した例を示す。
【図6】小集団をノードとして表現した例を示す。
【発明を実施するための形態】
【0022】
本発明を実施するための最良の実施形態について、以下では図面を用いて詳細に説明する。図1は、本発明の機能構成図を示す。本発明は、パーソナルネットワーク抽出部1、小集団分割部2、投稿プロフィール抽出部3、ニュースソースユーザ区別部4、小集団名前付け部5、および小集団可視化部6から構成される。
【0023】
パーソナルネットワーク抽出部1は、対象となる利用者のパーソナルネットワークを、利用者に対して誰がフォローし、誰がフォローされたかを解析することによって抽出する。
【0024】
小集団分割部2は、対象となる利用者のパーソナルネットワークをフォロー関係に基づいて小集団に分割する。例えば、非特許文献4のCNMアルゴリズムを用いて、ネットワークを小集団に分割する。
【0025】
投稿プロフィール抽出部3は、小集団の利用者のプロフィールと全ての投稿をプレインテキストとして抽出する。可能ならば、利用者の通信記録も収集する。
【0026】
ニュースソースユーザ区別部4は、各小集団の利用者を「ニュースソースユーザ」と「一般ユーザ」とに区別する。
【0027】
小集団名前付け部5は、キーワードで小集団を名前付けを行う。利用者のプロフィールと全ての投稿のプレインテキストから、TF−IDF法によりキーワードとして重要語を抽出する。この際、ニュースソースユーザの投稿に高い重み付けを割り当て、優先度を上げる。
【0028】
小集団可視化部6は、対象となる利用者を空の小集団に置き、小集団と小集団との接続関係を可視化する。可視化の際、小集団の中の利用者数でノードの大きさを変えて表示する。さらに、小集団間のエッジで、フォロワー/フォロウィーの関係を示し、エッジの太さで利用者の接続の数を示す。
【0029】
図2は、本発明の処理フローチャートを示す。以下、本フローチャートに従って、本発明の処理を詳細に説明する。
【0030】
ステップ1:パーソナルネットワーク抽出。対象となるオンラインソーシャルネットワーキングサービスの利用者のパーソナルネットワークを、この利用者に対して誰がフォローし、誰がフォローされたかを解析することによって抽出する。この抽出では、少なくとも、対象となる利用者から、少なくとも1.5ホップ範囲以上のフォロワー/フォロウィーを抽出する。
【0031】
図3は、ホップの概念図を示す。矢印はフォローを行ったことを示す。図3(a)では、利用者1の投稿に、利用者2がフォローしたことを示す。この場合、利用者2は、利用者1から1ホップの位置にある。図3(b)では、さらに利用者2の投稿に、利用者3がフォローしたことを示す。この場合、利用者3は、利用者1から2ホップの位置にある。図3(c)では、さらに利用者1の投稿に、利用者3がフォローしたことを示す。この場合、利用者3は、利用者1から1ホップと2ホップの両方にあるため、1.5ホップの位置にある。
【0032】
図4は、抽出されたパーソナルネットワークの例を示す。ここで1で示される点が対象となる利用者である。
【0033】
ステップ2:パーソナルネットワークを小集団に分割。パーソナルネットワークをフォロー関係に基づいて小集団に分割する。本実施形態では、非特許文献4のCNMアルゴリズムを用いて、ネットワークを小集団に分割する。一般に、対象となる利用者はいくつかの小集団に属する。しかし、CNMアルゴリズムは、ハードクラスタリングであるため、利用者は1つの小集団に属することしかできない。そのため、対象となる利用者をもとの小集団から除き、人工的に空の小集団に置く。
【0034】
図5は、図4のネットワークをCNMアルゴリズムで分割した例を示す。ここでは、3つの小集団に分割される。対象となる利用者は一番上の小集団に含まれるが、この小集団から取り除かれる。
【0035】
ステップ3:利用者のプロフィールと投稿を抽出。各小集団の利用者のプロフィールと全ての投稿をプレインテキストとして抽出する。可能ならば、利用者の通信記録も収集する。
【0036】
ステップ4:利用者が「ニュースソースユーザ」であるか確認。各小集団の利用者を「ニュースソースユーザ」と「一般ユーザ」とに区別する。例えば、ユーザのコミュニケーションの履歴やネットワーク関係を利用してニュースソースユーザと一般ユーザを区別することが可能である。あるユーザのフォロワー・フォロウィーの関係から算出される係数をα、投稿者IDの投稿数から算出される係数β、投稿に含まれるキーワードの出現頻度から算出される係数をγとすると、ユーザXがニュースソースユーザであるかどうかを判別する評価関数S以下のように求めることが可能である。
【0037】
S=α+β+γ
例えば、S>N(Nは事前に設定した閾値、N=2など)を満たす場合にユーザがニュースソースであると判別することなどが可能である。尚、αは例えばフォロワー数とフォロウィー数の比を利用することが可能である。βは投稿数と平均的投稿数の比で算出することが可能である。また、γは事前に設定したキーワードの出現頻度などで算出可能である。尚、αβγは3つに絞る必要はなく、追加で設定することも可能。αβγの計算方法はこの限りではない。
【0038】
また、事前に設定されたキーワードは、新聞、ニュース等で出てきた言葉であり、事前に設定される。
【0039】
また、ニュースソースユーザの区別として、放送局や政府関係者が使っているもので、自動的に発信するだけのアカウントをデータベースに設定しておき、このデータベースのアカウントのユーザをニュースソースユーザとすることも可能である。
【0040】
ステップ5:高/通常重み付けを割り当て。ニュースソースユーザから抽出されたテキストに、高い重み付けを割り当て、一般ユーザからの抽出されたテキストに、通常の重み付けを割り当てる。
【0041】
ニュースソースユーザは、ニュースや一般的な情報を投稿するユーザであり、主に個人的な情報を投稿する一般ユーザより、意味のない無駄話等のノイズが少ないと考えられる。そのため、ニュースソースユーザから抽出した投稿に高い重み付けを割り当て、優先度を上げることで、小集団の名前付け精度を向上させる。
【0042】
ステップ6:プロフィールと投稿からキーワード抽出。小集団に属する全ての利用者のプロフィールと投稿を結合する。利用者の通信記録が収集されていた場合、これも結合する。結合結果から、TF−IDF法によりキーワードとして重要なM個の語を抽出する(Mは、あらかじめ定めた1以上の整数)。なお、TF−IDF法による抽出とは、結合結果を形態素解析し、抽出された単語に対してTF−IDF値を求め、TF−IDF値が、上位M件の語をキーワードとすることである。
【0043】
ステップ7:キーワードで小集団を名前付け。小集団は、抽出されたキーワードで名前付けられる。
【0044】
ステップ8:全小集団終了?上記ステップ3からステップ7を、すべての小集団に実行し、すべての小集団に名前付けを行う。このようにして、利用者の共通の興味に従って、各小集団を自動的に名前付けすることが可能になる。
【0045】
ステップ9:小集団を可視化。小集団をノードとし、エッジをフォロワー/フォロウィーの関係として、Fast Multiscaleアルゴリズムを用いて、グラフを作成することにより、パーソナルネットワークを可視化する。この場合、対象となる利用者を空の小集団とする。また、小集団の中の利用者数でノードの大きさを変えて表示し、小集団間のエッジの太さで利用者の接続の数を示す。
【0046】
図6は、小集団をノードとして表現した例を示す。本例では、小集団G1に最も多くの利用者が存在し、対象となる利用者G0と最も多く接続されることが分かる。また、小集団G3、小集団G5にも多くの利用者が存在し、小集団G3と小集団G5間でも多くの接続があることが分かる。
【0047】
なお、上記実施形態は、フェイスブックまたはツイッターようなオンラインソーシャルネットワーキングサービスの形態で説明された。しかしながら、本発明は、オンラインソーシャルネットワーキングサービスだけに限定されるものではない。利用者による投稿と、この投稿に対しコメントを付与する(フォロー)関係が存在するネットワーク形態に対し適用可能である。
【0048】
本発明による小集団を抽出し、名前付け、可視化する方法は、コンピュータを、上述した各ステップを機能させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。さらに、本発明は、ハードウェア及びソフトウェアの組合せによっても実現可能である。
【0049】
また、以上述べた実施形態は全て本発明を例示的に示すものであって限定的に示すものではなく、本発明は他の種々の変形態様および変更態様で実施することができる。従って本発明の範囲は特許請求の範囲およびその均等範囲によってのみ規定されるものである。
【符号の説明】
【0050】
1 パーソナルネットワーク抽出部
2 小集団分割部
3 投稿プロフィール抽出部
4 ニュースソースユーザ区別部
5 小集団名前付け部
6 小集団可視化部

【特許請求の範囲】
【請求項1】
投稿に対してコメントを付与することが可能なネットワークから、小集団を抽出し、名前付けする方法において、
前記ネットワークから、特定の利用者に対するフォロー関係に基づいて、パーソナルネットワークを抽出するネットワーク抽出ステップと、
前記パーソナルネットネットワークを、フォロー関係に基づいて小集団に分割する分割ステップと、
前記小集団に含まれる利用者を、ニュースまたは一般的な情報を投稿するニュースソースユーザと、それ以外の一般ユーザに区別する区別ステップと、
前記ニュースソースユーザの投稿およびプロフィールに高い重み付けを行い、全利用者の投稿およびプロフィールからキーワードを抽出するキーワード抽出ステップと、
前記抽出したキーワードに基づいて、前記小集団に名前付けする名前付けステップと、
前記区別ステップから前記名前付けステップを、抽出されたすべての小集団に行うステップと、
を含むことを特徴とする小集団を抽出し、名前付けする方法。
【請求項2】
前記小集団をノードとし、前記フォロー関係をエッジとして、前記パーソナルネットワークのグラフを作成するステップをさらに含むことを特徴とする請求項1に記載の方法。
【請求項3】
前記グラフを作成するステップは、Fast Multiscaleアルゴリズムを用いて、前記特定の利用者が空の小集団におかれ、ノードの大きさが小集団の中の利用者数を表し、エッジの太さが小集団間の接続の数を表すグラフを作成することを特徴とする請求項2に記載の方法。
【請求項4】
前記分割ステップは、CNMアルゴリズムを用いて、前記パーソナルネットワークを小集団に分割することを特徴とする請求項1から3のいずれか1項に記載の方法。
【請求項5】
前記区別ステップは、利用者のネットワーク関係及びコミュニケーション履歴に基づいてニュースソースユーザと一般ユーザを区別することを特徴とする請求項1から4のいずれか1項に記載の方法。
【請求項6】
前記区別ステップは、利用者のフォロワーとフォロウィー関係から得られる係数αを計算するステップと、利用者の投稿数から得られる係数βを計算するステップと、利用者の投稿したテキストに含まれるキーワードの頻度から得られる係数γを計算するステップとを有し、前記係数群から評価関数Sを計算し、該評価関数Sからニュースソースユーザを判別することを特徴とする請求項1から4のいずれか1項に記載の方法。
【請求項7】
前記キーワード抽出ステップは、TF−IDF法により、全利用者の投稿およびプロフィールからキーワードを抽出することを特徴とする請求項1から6のいずれか1項に記載の方法。
【請求項8】
投稿に対してコメントを付与することが可能なネットワークから、小集団を抽出し、名前付けするコンピュータを、
前記ネットワークから、特定の利用者に対するフォロー関係に基づいて、パーソナルネットワークを抽出するネットワーク抽出手段と、
前記パーソナルネットネットワークを、フォロー関係に基づいて小集団に分割する分割手段と、
前記小集団に含まれる利用者を、ニュースまたは一般的な情報を投稿するニュースソースユーザと、それ以外の一般ユーザに区別する区別手段と、
前記ニュースソースユーザの投稿およびプロフィールに高い重み付けを行い、全利用者の投稿およびプロフィールからキーワードを抽出するキーワード抽出手段と、
前記抽出したキーワードに基づいて、前記小集団に名前付けする名前付け手段と、
前記区別手段から前記名前付け手段を、抽出されたすべての小集団に行う手段と、
して機能させることを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−15973(P2013−15973A)
【公開日】平成25年1月24日(2013.1.24)
【国際特許分類】
【出願番号】特願2011−147607(P2011−147607)
【出願日】平成23年7月1日(2011.7.1)
【出願人】(000208891)KDDI株式会社 (2,700)