計測自動制御学会東北支部	  第 284 回研究集会（2013.11.8）
資料番号	  284-1

SNS 上での BOT 検出
A Study on Detecting BOTs in SNS○岡部茂樹*, 趙強福*
○Shigeki Okabe, Qiangfu Zhao
*会津大学システム知能学講座*System Intelligence Lab in University of Aizu
キ ー ワ ー ド ：機械学習,	 クラスタリング,	 K-means 法,	 Twitter,	 BOT	 
連 絡 先 ：福島県会津若松市一箕町鶴賀
公立大学法人会津大学	  システム知能学講座
岡部 茂樹 電話番号：080-6030-1995, Email: m5171105@u-ziau.ac.jp	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	  	 わず製作されユーザに為になる情報を発信

1. はじめに	 している. 個人で製作可能なプログラムであ	  近年, ソーシャルネットワーキングサービる為, 悪意のあるユーザに製作される可能性

ス(SNS)が世界中で普及している. 個人個人がある. 意味のない冗長的なメッセージを連で同じ趣味や地域同士で繋がり, その繋がり続で送る, 個人情報を抜き取るサイトに誘導をスマートフォンやタブレットなどの端末する, 迷惑なメッセージをそのユーザ自身にが普及した事により更に加速した. 個人から発信させるなどと実際の被害が確認されて情報発信は容易になり, 情報が膨大化する事いる. この問題を解決する一つの方法としてになった. 個人が自分の探したいものや他の機械学習を用いて Bot を検出し, 一般的なユユーザを大量のデータから探せる利点もあーザと分けよう考えた.

るが, 大量のデータから探し出す事は欠点で	  本研究では, 教師なし機械学習の非階層型もある. 多くのユーザの中には, 悪意のあるクラスタリング手法である K-means 法を用ユーザも存在しており, それらの被害も報告いて一般的なユーザと Bot を判別している.

されている. SNS の一つである Twitter サー

ユーザと Bot それぞれのメッセージを基にデビスでは, 利用者である一般的なユーザの他ータベースを自作し, Bot の特徴を利用しよに Bot サービスというものが存在している.

うと試みている. Bot の特徴として, プログ

Robot の短縮形で Bot と呼ばれ, 個人法人問ラムを利用している為発信されるメッセー

1ジの内容の重複度合いや定期的な発信に着る。ユーザと Bot それぞれのデータベース目し, それらをクラスタリング生成を作り, 1 つのデータベースを 1 人のユーザ,に用いた.

もしくは 1 つの Bot のメッセージで構築されている. データベース数とそれらに含まれて	 2.	 提案手法	 

いる要素は以下の通りである.	  ユーザと Bot を判別する為, 教師なし機械

Table 1 Database Nam e and Num ber of Data

学習の非階層型クラスタリング手法である
K-means 法を用いている. このアルゴリズ
ムは以下のステップで K 個のクラスタリングを生成する.
1.

各データに対してランダムにクラ271

Bot

186

以下に要素を示す.	  Tweet Text: 140 文字以下の文字列

各データと各重心との距離を求め,	  Tweet At: 発信した時刻

各データに最も近い重心に割り当て直す
4.

ユーザ含み, それらの要素を使い特徴を算出する.

割り振ったデータをもとに重心を計算する.

3.

データ数

それぞれのデータベースには共通の要素をスタを割り振る
2.

データベース名

これらのデータを 500 から 3000 まで 500 刻

重心の更新がなくなった場合終了

みで特徴として使用し, それぞれの特徴数のするクラスタリング生成を行う.	  K-means でクラスタリング生成の為, Botの特徴を用いた. Bot の特徴として, プログ

4.	 結果と考察	 

ラムから発信されている為メッセージが同	  それぞれのデータベースのデータを 500じで内容であるという点. そして, 定期的なから 3000 まで 500 刻みで使用した K-means発信である点に着目した. 同じ内容である場クラスタリングを次の頁に示す.加えて, 各合, 完全に同じメッセージが有るならその数使用データ数の正答率を下記の表で示す.

をカウントし, その割合を算出した. 定期的

Table 2 Recall of Bots and Users

な発信の場合, メッセージ間の時間差を用いてその標準偏差を算出することによって求めた.

𝑠=1𝑛!

𝑥! − 𝑚 !
!!!

𝑥! ∶ 発信の時間差

3.	 実験	 	  先程上げた特徴を用いて、クラスを分類す
2

データ数

Bot

ユーザ

500

0.538

0.967

1000

0.538

0.963

1500

0.511

0.963

2000

0.435

0.956

2500

0.425

0.967

3000

0.425

0.970

Fig 1 K-m eans by using 500 dataFig 4 K-m eans by using 2000 dataFig 2 K-m eans by using 1000 data

Fig 5 K-m eans by using 2500 dataFig 3 K-m eans by using 1500 dataFig 6 K-m eans by using 3000 data3

ば正答率が向上すると考える.	  一般的なユーザは高い正答率が得られたが,逆に Bot に対しては高い正答率は得られなかった. その理由として,参考文献	 

今回の実験の場合同

1) 人工知能に関する断創録	 

じ内容と定期的な発信を元にクラスタリング生成を行った. ユーザと Bot 共に定期的な発http://aidiary.hatenablog.com/	 

信ではそれぞれ顕著な結果は得られなかった.

2) 大倉一馬,	 塩田茂雄“Twitter におけるしかし, 同じ内容についてはユーザが多くの場時系列変化解析に関する研究”(2013)	 

合低い値を示し, 広範囲に広がる Bot とは全3) GeSource	 
http://www.gesource.jp/	 

く異なる結果が得られた. ユーザが同じ内容を何度も発信する可能性は低い事が示された.
Bot に対しては同じ内容を発信する Bot が多くを占めていない事が示された. 考えられる可能性として, 同じ内容を発信するのではなくそれぞれの Bot が持つ規則性によって発信が行われている事である. 今回の実験では, 完全に一致する場合カウントすることにした為, ある規則性を持ちながら内容を少し変更した場合カウントはされない. よって, 規則性を持つ場
合別な機械学習を用いてその規則性を学習させれば正答率もよくなると考える.

5.	 	 まとめ	 	  今回の研究では, 2 つの特徴を用いて 使用したデータ数毎の K-means クラスタリングを生成した. ユーザクラスの正答率は高い値を示したが, Bot クラスの正答率に問題が残る結果となった.	  今後の課題として, Bot の特徴となる仮定した 2 つの項目を使用してクラスタリングを生成したが, 定期的な発信については高い値を示さなかった. よって, この特徴以外のBot の特徴として使える項目を用いて新たにクラスタリングを行いたいと考えている.	  また, 今回のクラスタリングは教師なしの機械学習の 1 つとして用いたが, 別な教師ありの機械学習を用いて, 未知の問題に対応出来る様にする必要性を考える. 考察で述べた通り,Bot にある規則性が存在していた場合, その都度学習させ適応させる事ができれ4