twitter研究会 榊 剛史 takeshi sakaki
TRANSCRIPT
今そこにある呟きTwitterからのリアルタイムなイベント抽出
及び応用アプリケーションについて
榊 剛史 @tksakaki 松尾 豊 @ymatsuo
東京大学 松尾研究室
軽く自己紹介
東京大学 松尾研究室 博士課程1年
株式会社 ホットリンク 特任研究員
以前は、東京電力で電柱昇ったりしてました。
Twitter上で、よく教授と間違われます。
海外でも間違えられてた・・・・
↑ウェブ学会のところ
↑口コミ係長のところ
今日のアジェンダ
Twitterで分かる「今」と「どこ」
地震抽出システムについて
リアルタイムイベント抽出の仕組み
キーワード検索とSVMによるイベント抽出
Particle Filter による位置推定
Twitter上でのリアルタイム情報伝播の特徴
イベント種類による情報伝播の特性
リアルタイムイベント抽出 応用システム
にじったー/Toretter
電車遅延抽出/渋滞抽出
Celeb Paparazzi(仮)
今日のアジェンダ
Twitterで分かる「今」と「どこ」
地震抽出システムについて
リアルタイムイベント抽出の仕組み
キーワード検索とSVMによるイベント抽出
Particle Filter による位置推定
Twitter上でのリアルタイム情報伝播の特徴
イベント種類による情報伝播の特性
リアルタイムイベント抽出 応用システム
にじったー/Toretter
電車遅延抽出/渋滞抽出
Celeb Paparazzi(仮)
Twitterにおける「今」と「どこ」
Twitterにおける「今」の重要性
ニュースサイト
ツイちぇき!!
Buzztter
TV見ながらTweet
TVzin
フォロワーの行動
Twitterにおける「今」と「どこ」
Twitterにおける「今」の重要性
ニュースサイト
Buzztter
TV見ながらTweet
TVzin
フォロワーの行動
今何が起きているかが分かる
Twitterにおける「今」と「どこ」
Twitterにおける「今」の重要性
ニュースサイト
Buzztter
TV見ながらTweet
TVzin
フォロワーの行動
今何が起きているかが分かる
他人が何をしているかが分かる
リアルタイム性と位置情報を利用した使い方
地震の発生と震源地を知る
天体現象を知る
ゲリラ豪雨
虹
朝の電車遅延情報
Twitterにおける「今」と「どこ」
リアルタイム性と位置情報を利用した使い方
地震の発生と震源地を知る
天体現象を知る
ゲリラ豪雨
虹
朝の電車遅延情報
Twitterにおける「今」と「どこ」
リアルな世界で「今」「そこで」何かが起きているのが
分かる
Twitterにおける「今」と「どこ」
「今」と「どこ」を利用したアプリケーション
Torretter :地震検出システム
時間的な近さから同じ地震であることを同定
Geolocation情報、ユーザーのプロフィールの場所情報を利用して、震源地を推定する(未実装)
Nijitter:虹検出システム
時間的な近さとTweet数から虹が出ていることを同定
位置情報をもとに、虹が出ていると思われる場所に虹を表示
本日はこの仕組みについて説明
サンプル:地震
今日のアジェンダ
Twitterで分かる「今」と「どこ」
地震抽出システムについて
リアルタイムイベント抽出の仕組み
キーワード検索とSVMによるイベント抽出
Particle Filter による位置推定
Twitter上でのリアルタイム情報伝播の特徴
イベント種類による情報伝播の特性
リアルタイムイベント抽出 応用システム
にじったー/Toretter
電車遅延抽出/渋滞抽出
Celeb Paparazzi(仮)
アプローチ
「地震」「揺れた」を含むTweetから地震直後に呟いたTweetのみを抽出
Twitterユーザーをセンサーと捉えて地震検出・震源地推定
ポイント1
「地震」「揺れた」を含むTweetから地震直後に呟いたTweetのみを抽出
機械学習で
ポイント1
□地震直後につぶやいた呟き
地震だ!!地震!?
揺れた!
こえ~~
地震!
びびったー
□その他のつぶやいた呟き
今更、何故「鍋焼きうどん」買うの! こん
なに沢山?!地震に供えて?
十年後って、自分が生きてる保証も無いですよ
ね。 地震とか、戦争とかもわからんし・・・?
ポイント1
□地震直後につぶやいた呟き
地震だ!!地震!?
揺れた!
こえ~~
地震!
びびったー
□その他のつぶやいた呟き
今更、何故「鍋焼きうどん」買うの! こん
なに沢山?!地震に供えて?
十年後って、自分が生きてる保証も無いですよ
ね。 地震とか、戦争とかもわからんし・・・?
ポイント1~説明
Twitter search API
Mecab
SVMデータベース
Tweetクローラー
提案システム
検索 キーワードを含む呟き
テキスト分析器
Tweet TweetTweet Tweet …
「地震」
「揺れた」
ポイント1~説明
Twitter search API
Mecab
SVMデータベース
Tweetクローラー
提案システム
検索 キーワードを含む呟き
テキスト分析器
Tweet TweetTweet Tweet …
「地震」
「揺れた」
ポイント1~説明
Twitter search API
Mecab
SVMデータベース
Tweetクローラー
提案システム
検索 キーワードを含む呟き
テキスト分析器
Tweet TweetTweet Tweet …
「地震」
「揺れた」
ポイント1~説明
Twitter search API
Mecab
SVMデータベース
Tweetクローラー
提案システム
検索 キーワードを含む呟き
テキスト分析器
Tweet TweetTweet Tweet …
地震に関する呟きのみ抽出
Support Vector
Machine
=機械学習の手法「地震」
「揺れた」
ポイント1~詳細説明
ターゲットとするイベントに関するキーワードを含むTweetを抽出
地震の場合
「揺れた」「地震」
虹の場合
「虹」
収集したTweetを正解と不正解に分類→ 学習データ
例:
「地震だ!!」 --正解
「地震が多い国って、日本だけじゃないんだよな・・・」 --不正解
ポイント1~詳細説明
ターゲットイベント用Tweets分類器作成 収集した学習データを利用
学習手法:Support Vector Machine
使用した特徴量(例文:やばい、地震きた!) 統計量 (3語、2番目)
Tweetsが全部で何語か?また、キーワードは何番目か?
キーワード ( やばい、地震、くる)
Tweets中に含まれている全ての語
キーワード文脈情報 (やばい、くる)
キーワードの前後に出現する語
アプローチ
「地震」「揺れた」を含むTweetから地震直後に呟いたTweetのみを抽出
Twitterユーザーをセンサーと捉えて地震検出・震源地推定
ポイント2
Twitterユーザーをセンサーと捉えて地震検出・震源地推定
ポイント2~説明
・・・ ・・・ ・・・tweets
・・・・・・
確率モデル
呟き分類器
センサーによる観測Twitterユーザーによる観測
イベント発生 ターゲットオブジェクト
確率モデル
センサーの測定値
Twitterからのイベント検出 センサーによるイベント検出
ポイント2~説明
ユーザーが「地震」について呟
く
・・・ ・・・ ・・・tweets
確率モデル
呟き分類器
センサーによる観測Twitterユーザーによる観測
イベント発生 ターゲットオブジェクト
確率モデル
センサーの測定値
Twitterからのイベント検出 センサーによるイベント検出
・・・・・・
ポイント2~説明
ユーザーが「地震」について呟
く
・・・
・・・ ・・・tweets
確率モデル
呟き分類器
センサーによる観測Twitterユーザーによる観測
イベント発生 ターゲットオブジェクト
確率モデル
センサーの測定値
Twitterからのイベント検出 センサーによるイベント検出
・・・・・・
ポイント2~説明
ユーザーが「地震」について呟
く
・・・ ・・・tweets
確率モデル
呟き分類器
センサーによる観測Twitterユーザーによる観測
イベント発生 ターゲットオブジェクト
確率モデル
センサーの測定値
Twitterからのイベント検出 センサーによるイベント検出
地震に関する呟きを抽出
ポイント2~説明
ユーザーが「地震」について呟
く
・・・ ・・・tweets
確率モデル
呟き分類器
センサーによる観測Twitterユーザーによる観測
イベント発生 ターゲットオブジェクト
確率モデル
センサーの測定値
Twitterからのイベント検出 センサーによるイベント検出
地震に関する呟きを抽出
地震を検出
ポイント2~説明
ユーザーが「地震」について呟
く
・・・ ・・・tweets
確率モデル
呟き分類器
センサーによる観測Twitterユーザーによる観測
イベント発生 ターゲットオブジェクト
確率モデル
センサーの測定値
Twitterからのイベント検出 センサーによるイベント検出
地震に関する呟きを抽出
地震を検出
地震センサーが地震を検出
ポイント2~説明
ユーザーが「地震」について呟
く
・・・ ・・・tweets
確率モデル
呟き分類器
センサーによる観測Twitterユーザーによる観測
イベント発生 ターゲットオブジェクト
確率モデル
センサーの測定値
Twitterからのイベント検出 センサーによるイベント検出
地震に関する呟きを抽出
地震を検出
地震センサーが地震を検出
ポイント2~説明
ユーザーが「地震」について呟
く
センサーによる観測と同じ確率的処理で検出可能
・・・ ・・・tweets
確率モデル
呟き分類器
センサーによる観測Twitterユーザーによる観測
イベント発生 ターゲットオブジェクト
確率モデル
センサーの測定値
Twitterからのイベント検出 センサーによるイベント検出
地震に関する呟きを抽出
地震を検出地震を検出
地震センサーが地震に反応
ポイント2~詳細説明
実際には確率モデルを使用して検出
Twitterユーザーをセンサーを考えると、ノイズが多く、また誤検出もあり得る
1つのTweetだけでは、イベントが起きたとは判定できない
→時系列的なセンサーの値から、イベント判定を行う
2つの確率モデルを利用
時系列データよりイベント検出を行う確率モデル
一連の位置情報より位置推定を行う確率モデル
ポイント2~詳細説明~時系列モデル
0
20
40
60
80
100
120
140
160A
ug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Aug …
Au
g …
Au
g …
Au
g …
Aug …
Aug …
Aug …
num
ber
of tw
eets
ポイント2~詳細説明~時系列モデル
0
20
40
60
80
100
120
140
160
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…num
ber
of
tweets
ポイント2~詳細説明~時系列モデル
0
20
40
60
80
100
120
140
160
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…num
ber
of
tweets
0
20
40
60
80
100
120
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
num
ber
of tw
eets
ポイント2~詳細説明~時系列モデル
0
20
40
60
80
100
120
140
160
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…num
ber
of
tweets
0
20
40
60
80
100
120
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
num
ber
of
tweets
ポイント2~詳細説明~時系列モデル
0
20
40
60
80
100
120
140
160
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…n
um
ber
of
tweets
0
20
40
60
80
100
120
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
num
ber
of
tweets
ポイント2~詳細説明~時系列モデル
0
20
40
60
80
100
120
140
160
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…
A…n
um
ber
of
tweets
0
20
40
60
80
100
120
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
num
ber
of
tweets
ポイント2~詳細説明~時系列モデル
観測データを指数関数にフィッティング
ターゲットイベントの発生判定を、指数分布に基づいて確率的に算出
0,0; tetf t34.0
ポイント2~詳細説明~空間モデル
ターゲットイベントの発生場所の確率分布を算出
センサーによる位置推定に使われるベイズフィルタを利用
カルマン フィルタ
パーティクルフィルタ
ポイント2~詳細説明~空間モデル
カルマンフィルタ
ベイズ フィルタとして最もよく使われている手法
長所 計算が速い
短所 適用対象が、高精度かつ計測間隔の短い
センサーに限られてしまう
ポイント2~詳細説明~空間モデル
パーティクルフィルタ(粒子フィルタ)
確率分布をparticle=粒子の集合でシミュレートする手法
長所 さまざまな確率分布に適用可能
短所 高次元なデータを用いた予測には適用できない
(位置推定は2次元なので適用可能)
検出の精度
どのくらいの精度で検出できたのか?
地震自体の検出結果
震度 震度2以上 震度3以上 震度4以上
地震回数 78 25 3
検出数 70(89.7%) 24(96.0%) 3(100.0%)
1分以内の検出数 53(67.9%) 20(80.0%) 3(100.0%)
期間: 2009年8月 – 2009年9月収集したTweet数: 49,314 tweets
利用したTweet数: 6291 tweets by 4218 users
震度3以上の地震を96%の精度で検出
震源地予測結果
Tokyo
Osaka
実際の震源地
Kyoto
予測震源地(提案)
風船:呟きの位置色:呟き時刻
台風の進路予測
実際の経路
予測経路(Particle Filter)
問題点
地震検出の精度・位置推定の精度が
Twitterユーザーの多い地域>少ない地域
震源地が海だと予測できない
今日のアジェンダ
Twitterで分かる「今」と「どこ」
地震抽出システムについて
リアルタイムイベント抽出の仕組み
キーワード検索とSVMによるイベント抽出
Particle Filter による位置推定
Twitter上でのリアルタイム情報伝播の特徴
イベント種類による情報伝播の特性
リアルタイムイベント抽出 応用システム
にじったー/Toretter
電車遅延抽出/渋滞抽出
Celeb Paparazzi(仮)
Twitter上でのイベント情報の伝播
調査の発端
センサーによる観測手法
→センサー同士が影響しないことが前提
→ Twitterユーザー同士は影響を及ぼしてしまうのではないか?
2種類のイベントについてネットワークの特徴量を比較
ユーザーの周囲で突発的に発生するイベント
地震・台風
学会/研究会イベント
Twitter上でのイベント情報の伝播
2種類の情報伝播ネットワークを定義
フォロワー ネットワーク
Retweetネットワーク
user A’s timeline地震??
ユーザーAユーザーB follow
ユーザーAユーザーB
地震??大丈夫!? RT @user B: 地
震??
follow
突発的に発生するイベントの情報伝播
フォロワーネットワークの密度:普通
Retweetネットワーク:中心性の高いユーザーがいない
フォロワーネットワーク 台風
Retweetネットワーク 台風
突発的に発生するイベントの情報伝播
フォロワーネットワーク v.s. Retweet ネットワーク
Rpagerank v.s. Rbetweenretweet
follower
Pagerank max
Pagerank max
pagerankRretweet
follower
betweenmax
betweenmax
betweenR
pagerankR
betweenR0
2
4
6
8
10
12
0.1 1 10 100 1000 10000 100000
0
2
4
6
8
10
12
0.1 1 10 100 1000 10000 100000
突発的に発生するイベントの情報伝播
フォロワーネットワーク v.s. Retweet ネットワーク
Rpagerank v.s. Rbetweenretweet
follower
Pagerank max
Pagerank max
pagerankRretweet
follower
betweenmax
betweenmax
betweenR
pagerankR
betweenR
0
2
4
6
8
10
12
0.1 1 10 100 1000 10000 100000
突発的に発生するイベントの情報伝播
フォロワーネットワーク v.s. Retweet ネットワーク
Rpagerank v.s. Rbetweenretweet
follower
Pagerank max
Pagerank max
pagerankRretweet
follower
betweenmax
betweenmax
betweenR
pagerankR
betweenR
地震台風
地震
学会/研究会イベントの情報伝播
フォロワーネットワークの密度が高い
RTネットワークの密度が高い
フォロワーネットワークWI2
Retweet ネットワークWI2
学会/研究会イベントの情報伝播
フォロワーネットワーク v.s. Retweet ネットワーク
ネットワーク密度
0
0.005
0.01
0.015
0.02
0.025
0.03
0 0.01 0.02 0.03 0.04 0.05 0.06
retweetD
followingD
学会/研究会イベントの情報伝播
0
0.005
0.01
0.015
0.02
0.025
0.03
0 0.01 0.02 0.03 0.04 0.05 0.06
retweetD
followingD
フォロワーネットワーク v.s. Retweet ネットワーク
ネットワーク密度
学会/研究会イベントの情報伝播
0
0.005
0.01
0.015
0.02
0.025
0.03
0 0.01 0.02 0.03 0.04 0.05 0.06
SIG-WI2
Twitter 研究会
web 学会
retweetD
followingD
フォロワーネットワーク v.s. Retweet ネットワーク
ネットワーク密度
Twitter上でのイベント情報の伝播
Conference Events
他のイベントと比べ、フォロワーネットワークの密度が高い
Retweetも発生しやすい
→ 情報伝播が発生しやすいイベント
Events around them
Retweetネットワークには中心性の高いユーザーはいない.
=ユーザーは突発的なイベントについてはあまりRetweet
しない
→ 情報伝播が発生しにくいイベント
今日のアジェンダ
Twitterで分かる「今」と「どこ」
地震抽出システムについて
リアルタイムイベント抽出の仕組み
キーワード検索とSVMによるイベント抽出
Particle Filter による位置推定
Twitter上でのリアルタイム情報伝播の特徴
イベント種類による情報伝播の特性
リアルタイムイベント抽出 応用システム
にじったー/Toretter
電車遅延抽出/渋滞抽出
Celeb Paparazzi(仮)
地震速報システム Toretter
虹出現お知らせシステム Nijitter
芸能人を目撃せよ Celeb Paparazzi(作成中)
芸能人を目撃せよ Celeb Paparazzi(作成中)
今、新宿三丁目であの伝説の外人
チャックウィルソン発見!
芸能人を目撃せよ Celeb Paparazzi(作成中)
今、新宿三丁目であの伝説の外人
チャックウィルソン発見!
いま伊集院光氏が秋葉原うろうろしてるみたいですよ^^接近遭遇の
ちゃちゃちゃチャンスですよ!w 。
芸能人を目撃せよ Celeb Paparazzi(作成中)
今、新宿三丁目であの伝説の外人
チャックウィルソン発見!
フジテレビ内のローソンでとんちゃんとフォンチーを見かけた
よ。いま伊集院光氏が秋葉原うろうろしてるみたいですよ^^接近遭遇の
ちゃちゃちゃチャンスですよ!w 。
芸能人を目撃せよ Celeb Paparazzi(作成中)
今、新宿三丁目であの伝説の外人
チャックウィルソン発見!
フジテレビ内のローソンでとんちゃんとフォンチーを見かけた
よ。いま伊集院光氏が秋葉原うろうろしてるみたいですよ^^接近遭遇の
ちゃちゃちゃチャンスですよ!w 。
明治通りで美川憲一に遭遇なう。
めっちゃくねくねしてる。
芸能人を目撃せよ Celeb Paparazzi(作成中)
今、新宿三丁目であの伝説の外人
チャックウィルソン発見!
フジテレビ内のローソンでとんちゃんとフォンチーを見かけた
よ。いま伊集院光氏が秋葉原うろうろしてるみたいですよ^^接近遭遇の
ちゃちゃちゃチャンスですよ!w 。
明治通りで美川憲一に遭遇なう。
めっちゃくねくねしてる。
楳図かずおさん見かけた@吉祥寺。
赤と白のボーダーすごい似合って
た。 。
8月31日の16:00~20:00の間のTweet
芸能人を目撃せよ Celeb Paparazzi(作成中)
実際の仕組み
「発見」「遭遇」などを含むTweetを収集
有名人の人名が含まれてるTweetを抽出
Wikipedia等から収集した人物名リストを使用
地名情報・位置情報を取得
→ リアルタイムに芸能人目撃情報を表示
その他作りたいアプリ(計画&妄想)
計画中
電車遅延情報お知らせシステム(メールも配信)
渋滞情報表示システム
妄想
なんでもイベント判別器作成システム
正解データ/不正解データをユーザーがトゥギャる
イベント判別器を自動作成
天体情報表示&写真収集システム
まとめ
ある程度の位置推定も可能
様々なイベント抽出サイトを作成
他のリアルタイムなイベントに応用可能
例:電車遅延、芸能人出現情報etc
高い精度でイベント検出可能
イベントごとの情報伝播の違いを検証
おしまい@tksakaki
位置情報推定の精度
地震
平均値 - 5.47 3.62 3.85 3.01
Particle filters works better than other methods
日付 実際の中心 中間値 平均値 カルマンフィルタ 粒子フィルタ
緯度・経度の最小2乗誤差
位置情報推定の精度
台風
平均値 - 4.39 4.02 9.56 3.58
Particle Filters works better than other methods
日付 実際の中心 中間値 平均値 カルマンフィルタ 粒子フィルタ
緯度・経度の最小2乗誤差