あんちべの
 すべらない話
~俺のツイートがこんなにウケないはずがない~
目的
twitter
 渾身のネタが
スルーされたり
何気ない呟きが
めっちゃウケたり
滑ったときの
恥ずかしさ
マジパネェ
tweetする前に
ウケルかどうか
予測できれば!
それ、Rなら
簡単ですよ!
発表の目的

Rで自分のtweetが
 ウケるかどうか
 予測をしよう!
自己紹介
●   ID:AntiBayesian
●   あんちべ!とお呼び下さい

●   専門:テキストマイニング、自然言語処理
●   職業:某ATMが○○な銀行で金融工学研究員とか
    いう胡散臭い素敵なことしてる
●   自然言語処理職大絶賛募集中!!!!
●   math.empress@gmail.com
なんで急にLTすることに???


↑今日の0時くらいの話です
分析手順
1.訓練データ(正例、負例)を用意する
2.訓練データから予測モデルを立てる
3.自分のtweetを予測モデルに放り込んで判定
訓練データを集めよう
●   正例:favstarから人気tweetを取得
●   負例:twitter Streaming APIから適当にサンプリン
    グ
●   6月中のtweetを各々約1500件ずつチョイス
●   正例にはfav、負例にはnonタグを付ける
※Tweetを取得するツール作ったよ!
http://d.hatena.ne.jp/AntiBayesian/20110702
さくさくツイートマイニング


こんな感じ→
訓練データの加工
               ttmの紹介
●   TinyTextMiner
●   テキストを形態素解析に掛け、さらに分析ツールに
    投げやすいよう整形してくれるフリーソフト
●   ここからDL http://mtmr.jp/ttm/
※MeCabもインストールしてね
加工済みデータ


●   1行目が各単語。2行目以降は、各文章から表頭
    の単語が何回出現したか
●   右端のTAG列がクラス。fav=正例、non=負
    例、test=検証するtweet。
●   要するに、testテキストがfav、nonどちらに分類さ
    れるか知りたい
予測モデルを立てよう
●   RandomForestを使おう!
●   精度高いし汚いデータにも強い!Googleも利用!
●  詳細は下記ブログを参考に
http://d.hatena.ne.jp/hamadakoichi/20110130/
Rのコード
twit <- read.csv(file="twit.csv")
library(randomForest)
train.data <- twit[1:2877,]#訓練データが2877ある
test.data <- twit[2878:2911,]#テストデータは33
rf.model <- randomForest(TAG~., data=train.data,
na.a="na.omit", ntree=10)
精度はどう???
rf.predict <- predict(rf.model, train.data)
(result <- table(train.data$TAG, rf.predict))
● 緑色のセル=正しく分類
● 行:予測


● 列:実際


2*result[2,2] / (2*result[2,2]+result[1,2]+result[2,1])
●   F値:0.9019064
※訓練データで高精度は当たり前。ただの目安
学習結果
rf.predict <- predict(rf.model, test.data)




●   2878行目のデータはfav、2879行目はnonと予測
●   favと予測されたtweetはウケルのでは???
まとめ
●   人気tweetを収集し、人気tweetを判別するモデル
    を作る
●   自分のtweetをモデルで評価して、ウケル内容だ
    けtweetする
●   これで広瀬香美や孫正義を超える人気ついっ
    たったーになれる!

あんちべのすべらない話~俺のツイートがこんなにウケないはずがない~