言語処理学会 第21回年次大会 発表論文集 (2015年3月)

単語の特徴に着目した Twitter ユーザのリスト分類
松本 悠斎藤 博昭

慶應義塾大学理工学部 情報工学科{matumoto, hxs}@nak.ics.keio.ac.jp

1

はじめに

2

関連研究

近年では Twitter1 が重要な役割を担っている．こPennacchiotti らは Twitter ユーザの分類を 4 つのれは Twitter を通じて友人や興味のあるユーザとの密タスクで行った [1]．分類に用いた特徴量としてはプ接な繋がりを構築できるといった点が挙げられる．まロフィール情報，ツイート頻度，ツイート内容，ユーた個人のみの利用だけでなく，企業や政府機関などでザとの関わりなどを使用した．特にツイートの内容をも Twitter の活用がみられる．これは最新の情報の発特徴として使用するにあたり，Latent Dirichlet Allo-

信などで情報の格差の解消や，災害時におけるデマなcation(LDA) という文書分類においてよく使用されるどの誤った情報を排除する働きがあるため重要視されモデルを使用している．LDA では与えた文書からトている．このように Twitter は他ユーザとのコミュニピックを抽出することができ，抽出したトピックを特ケーションを目的とする側面と，自身にとって有用な徴として使用することができる．これらの特徴を使用情報を素早く取得することを目的とした側面があるとし，ユーザの分類を行った．

考えられる．

Yamashita らはフォロー関係を用いて Twitter のTwitter においてはユーザをフォローすることによ

ユーザの分類に関する研究を行った [2]．フォロー関係

り，多数のユーザのツイートと呼ばれる 140 文字以を使用することで，好みなどが近いユーザどうしが同内からなる短文を時系列に並べてタイムラインと呼ばじクラスに分類される．山下らの手法ではユーザ間のれる画面に表示することができる．しかし多くのユーフォロー関係をグラフで表現し，グラフから隣接行列ザをフォローしているユーザにとっては一度にすべてを作る．隣接行列をもとにした類似行列というユーザのツイートを見ることは困難であり，また有益な情報間の近さを表す行列を作り，ユーザの分類を行った．

を見逃す可能性も低くはない．Twitter にはリストとBergsma らはツイートに付与される言語データおよび地域データを用いてユーザの素性 (国，言語，宗教いうユーザをグループに分け，そのグループ毎にタイムラインを表示させる機能があるため，上記のようななど) に関する分類を行った [3]．言語データおよび地問題をさけることは可能である．しかしながら多くの域データから各ユーザの属性を決定し，K-means アルユーザにとってリストを作成するのは容易ではない．

ゴリズムを利用してユーザの分類を行った．分類の結理由として次の 2 点が挙げられる．

果から得られた各クラスタを素性として用い，サポートベクターマシンを用いた多クラス分類器によるユー

1. リスト数は Twitter 使用者によって異なるザの分類を行った．

2. それぞれのユーザがどのリストに含まれるかを考えなければならない

3
本稿では同じ内容を多くツイートするユーザは同じリ提案手法

ストに分類される可能性が高い，Twitter 使用者ごと

本提案手法の概要を図 1 に示す．提案手法では Twit-に最適なリスト数は異なるという仮定のもと，ユーザ

ter 使用者のスクリーンネーム 2 を入力とし，Twitter使用者のアカウントがフォローしているユーザのツを自動でリストに分類する手法を提案する．
1 https://twitter.com

2 Twitter ユーザのアカウント名のようなもので”@”から始まる一意な文字列である― 210 ―

Copyright(C) 2015 The Association for Natural Language Processing.
All Rights Reserved.

図 2: CBOW の概要
図 1: 提案手法の概要

3.2

イートを取得する．ツイートから特徴を抽出することによりユーザの分類を行い，分類結果を本提案手法の出力とする．

3.1

ユーザの特徴ベクトル

Twitter を利用した研究では，特徴を抽出するための手段として LDA が多く使用されていることが奥村[5] により報告されている．一方本研究ではユーザの特徴として，CBOW を使用して得られた単語の特徴ベクトルから算出したユーザの特徴を使用する．CBOW

単語の特徴抽出

ではユーザが使用するすべての単語に着目して特徴を本研究において単語の特徴抽出には Continuous-推定するため，LDA のようなトピックのみを特徴とBag-of-Words Model(CBOW)[4] と呼ばれるニューラするよりもユーザの特徴をうまくとらえることができルネットワーク言語モデルの一種を使用する．図 2 にると考えられる．CBOW のようなニューラルネット

CBOW の概要を示す．

ワーク言語モデルから得られる単語の特徴ベクトルは，

図 2 のように CBOW は単語列 w(t − 2), w(t −単語間の類似度を使用して類義語などを判定するタス1), w(t), w(t + 1), w(t + 2) のような順で存在するとき，単語 w(t) を w(t − 2), w(t − 1), w(t + 1), w(t + 2)

クなどに用いられる．本手法ではこれを応用し，異なから予測するようなモデルである．CBOW の入出力する同じ単語の類似度からユーザの特徴を得る．以下

は単語の 1-of-V 表現であり，射影層では入力されたではユーザの特徴ベクトルを算出する方法を述べる．

各単語の 1-of-V 表現を d(< V ) 次元のベクトルに射これ以降では単語の特徴ベクトルを CBOW ベクトル影する，このとき射影された d 次元のベクトルを単語と表記する．CBOW ベクトルはすべて同次元であるの特徴ベクトルとよぶ．単語の特徴ベクトルとは，学とする．

る単語間の類似度ではなく，それぞれのユーザが使用習コーパス上でその単語をよく表すベクトル表現のこ

全ユーザのツイートを使用して学習した CBOW ベとであり，単語どうしの類似度などを計算することがクトル (全体の CBOW ベクトル) とユーザごとに学習できる．CBOW では誤差逆伝搬法を用い，射影層へした CBOW ベクトル (ユーザの CBOW ベクトル) かの重みを学習する．学習終了後は入力単語の 1-ofV 表

らユーザの特徴ベクトルを算出する．ユーザ i の特徴

現と射影層への重みから，入力単語の特徴ベクトルをベクトルの t 番目の要素 xit は{
1 − sim(M (wt ), mi (wt ))xit =0得ることができる．この特徴ベクトルを使用してユーザごとの特徴ベクトルを算出する．

― 211 ―

(wt ∈ Wi )(wt ∈/ Wi )Copyright(C) 2015 The Association for Natural Language Processing.
All Rights Reserved.

と計算される．ユーザの数を k ，全ユーザのツイートツチームなど多くの人が目にしたことがあると思われに含まれる語彙数を V とすると．wt (t = 1, 2, ..., V )るアカウントをフォローした．

は t 番目の単語，M (wt ) は単語 wt の全体の CBOW

本研究において Twitter のデータはすべて Twitter-ベクトル，mi (wt )(i = 1, 2, ..., k) は単語 wt のユーザ

i の CBOW ベクトル，Wi はユーザ i のツイートにApi4 を使用して取得している．今回は 1 アカウント
あたり 800 ツイートを取得し，リツイートなども含め含まれる単語集合，sim(M (wt ), mi (wt )) は M (wt ) とた．CBOW では入力を単語に区切る必要があるため，mi (wt ) のコサイン類似度である．
ユーザの特徴ベクトルの各要素は同じ単語どうしの取得したツイートは形態素解析ツール MeCab5 を用い類似度をもとに計算される．単語 wt の全体の CBOW

数が少ない単語はよいベクトル表現を得ることができベクトルは全ユーザのツイートから得られた特徴であないため，本実験では出現回数が 10 回未満の単語はるので，単語 wt の平均的な特徴が得られていると考取り除いた．また以下のような文字列も取り除いた．て形態素解析を行った．Bengio ら [7] によると出現回えられる．一方単語 wt のユーザ i の CBOW ベクトル

• 句読点はユーザ i のツイートのみで得られた特徴である．すなわち sim(M (wt ), mi (wt )) が 1 に近いほどユーザ i• @から始まる文字列

は単語 wt を全体と同じように使い，0 に近いほど全• http://から始まる文字列体とは異なる使い方をしていると考えられる．1 から• RT

この類似度を引いた値をユーザ i における単語 wt の特徴値とする．すなわちユーザの特徴ベクトルの各要

4.2

素は各単語の特徴値からなる．

実験方法

本提案手法に従って 4.1 節で作成したアカウントの3.3

リスト分類

分類結果を被験者に見てもらい以下の質問に 1 から 5はじめに述べたように，本研究では Twitter のリスの 5 段階 (5 が最良) で答えてもらい評価とした．

トを作成することを目的としたユーザ分類を行う．し質問 1 分類結果は妥当かかしながらリスト作成では事前にクラス数を知るこ

質問 2 各クラスに対してジャンル，内容のまとまりとはできないため，本研究では事前に分類するクラスがあると思うか数を指定する必要のない Aﬃnity Propagation 法 (AP法)[6] を使用する．また分類をする際に，ユーザの特徴ベクトルは高次元でありそのままではうまく分類できないこともあるため主成分分析 (PCA) を使用して次元を削減する．AP 法および PCA には python ライブラリである scikit-learn3 で実装されているものを使用する．

質問 3 クラス数は妥当か
質問 4 この結果をリストとして使用したいか
また本研究で用いた単語の特徴がリスト分類において有用であることを確かめるために，単語の特徴の代わりに LDA を用いて抽出したトピックベクトルも分類に使用する．そのため本実験では次のような 3 通りの特徴で分類を行う．

4

実験• CBOW ベクトルのみを用いる (CBOW)

4.1

実験データ

• トピックベクトルのみを用いる (LDA)• CBOW ベクトルとトピックベクトルの両方を用

Twitter の認証済みアカウントを 80 人フォローしたアカウントを作成した．認証済みアカウントとはTwitter 社がそのアカウントが本人のものであると保証するもので，著名人，公的機関，企業など様々なアカウントが存在する．本実験では著名人，企業，スポーいる (CBOW+LDA)
ここで CBOW ベクトルは 120 次元，LDA のトピック数は 500，分類する際の PCA のパラメータはn components=8 とした．
4 https://dev.twitter.com
5 http://mecab.googlecode.com/svn/

3 http://scikit-learn.org/stable/index.html

trunk/mecab/doc/index.html― 212 ―

Copyright(C) 2015 The Association for Natural Language Processing.
All Rights Reserved.

4.3

実験結果ない．他の分類アルゴリズムも使用した実験を行い評実験の結果を図 3 に示す．この結果は被験者 7 名による評価であり，評価値はその平均値である．

価値を比較することで，有用性を検証していく必要がある．

6

おわりに
本稿ではツイートから単語の特徴を抽出し，ユーザの特徴ベクトルを考えることでユーザをリストに分類する手法を提案した．今回の実験では Twitter 使用者の一人一人アカウントを使用せずに，意図的に作成したアカウントの分類結果の評価をしてもらったため，今後はユーザ個人のアカウントも使用した実験も行い評価の改善を目指したい．また本研究において使用しなかったフォロー関係やプロフィール情報などの特徴も使用し，リスト分類において有用な特徴の組み合
図 3: 被験者による評価わせを検証していくことが評価向上に繋がると考えら
れる．

5

考察

7

図 3 よりすべての質問項目に対し，CBOW のみの評価が LDA のみの評価を上回っている．しかしながら CBOW の質問 4 に対する評価はそこまで高くない，これは CBOW の分類結果の 1 つには政治家やサッカー選手など同じジャンルには属していないようなアカウントが集まっているものがあるからだと考えられる．このような結果になる理由としては，違う内容をツイートしている場合でも例えば地名などを多くつぶやくアカウントは比較的同じクラスに分類されやすいことがある．例えば政治家なら街頭演説を行う場所，サッカー選手なら試合をする場所が挙げられる．
今回の実験結果から CBOW を用いたユーザの特徴はリスト分類において LDA を利用したトピックよりも適していることがわかったが，評価値はそこまで高くないため改善法を考える必要がある．また単語の特徴とトピックを同時に使用した場合の分類結果の評価値も上がることはなかったが，トピックを使用した分類結果の評価値を上げることができれば単語の特徴とトピックを同時に使用した場合の評価値も上がると考えられるため，トピックを使用した分類も改善する利点はある．
本研究では Twitter 使用者ごとにリストの数は異なるという仮定のもと，分類アルゴリズムとして AP 法を使用した．しかし AP 法がリスト作成において最良のアルゴリズムであるかは本実験のみでは断定でき

参考文献

参考文献
[1] Marco Pennacchiotti and Ana-Maria Popescu, A
Machine Learning Approach to Twitter User Classification, Proceedings of the Fifth International
AAAI Conference on Weblogs and Social Media, pp.
281-288, 2011.
[2] Takuya Yamashita, Haruhiko Sato, Satoshi Oyama
and Masahito Kurihara, Classification of Twitter
Users Based on Following Relations, Proceedings ofthe International MultiConference of Engineers andComputer Scientists, 2013.
[3] Shane Bergsma, Mark Dredze, Benjamin Van
Durme, Theresa Wilson and David Yarowsky,
Broadly Improving User Classification via
Communication-Based Name and Location Clustering on Twitter, Proceedings of NAACL-HLT,
2013.
[4] Tomas Mikolov, Kai Chen, Greg Corrado
and Jeﬀrey Dean, Eﬃcient Estimation ofWord
RepresentationsinVector
Space,
http://arxiv.org/abs/1301.3781, 2013.
[5] 奥村 学, マイクロブログマイニングの現在, 電子情報通信学会第 3 回集合知シンポジウム, 2012.
[6] Brendan J. Frey and Delbert Dueck, Clustering byPassing Messages Between Data Points, Science 315,
pp. 972-976, 2007.
[7] Yoshua Bengio, Rejean Ducharme, Pascal Vincent,and Christian Jauvin, A Neural Probabilistic Language Model, Journal of Machine Learning Research, 3:1137-1155, 2003.

― 213 ―

Copyright(C) 2015 The Association for Natural Language Processing.
All Rights Reserved.