第15回 データマイニング+WEB @東京
2chのイカ娘スレッドを時系列分析してみた
@gepuro
自己紹介
自己紹介早川 敦士
電気通信大学システム工学科三年
興味
テキストマイニングデータマイニング統計学品質管理
目次● 2chのスレッドからデータ取得とパース● 自然言語を数値化する● Rを使って、分析する。● スレッドの盛り上がり具合いを見る● 相互相関関数でみてみる● 主成分分析でみてみる
2chのスレッドから
データの取得とパース
イカ娘のスレッドからデータを取得
2010/3/26 ~ 2011/10/18のレス
HTML?DATじゃ無いの?
htmlはこんな感じ
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<base href="http://kamome.2ch.net/study/">
<title>TokyoWebmining part15</title>
…
<dt>2 :<a href="mailto:sage"><b>名無しさん</b></a>:2011/11/06(日) 01:23:45.67 ID:nJVDPiU9O<dd> TokyoWebmining楽しみだなあ。<br>遅れないようにしないと<br><br>
<dt>3 :<a href="mailto:sage"><b>名無しさん</b></a>:2011/10/06(木) 21:33:40.79 ID:xJNKLfU4R dd> <a href="../test/read.cgi/study/1234567890/2" target="_blank">>>2</a>お待ちしております。<br><br>
...
datはこんな感じ
名無しさん<>sage<>2011/11/6(日) 01:23:45.67 ID:nJVDPiU9O <> TokyoWebmining楽しみだなあ。<br> 遅れないようにしないと<>
名無しさん<>sage<>2011/11/6(日) 01:24:45.67 ID:xJNKLfU4R <> <a href="../test/read.cgi/study/1234567890/2" target="_blank">>>2</a> お待ちしております。<>
…
htmlを直接に利用すれば、タイトルやレスの番号、
広告などが記述されている。
スレッドのタイトルを予め取得しておけば、
DATの方がパースするのが簡単!
2ch DAT落ちスレ ミラー変換機 ver.12http://mirrorhenkan.g.ribbon.to/
やhtmltodat
http://mukiyu.g.ribbon.to/を利用すれば楽に出来そう
儀式のようなクリーニング
ハウツー
1.URLを取り除く2.AAのようなものを取り除く1.1レスに記号が含まれる割合が50%以上2.何%の精度か確認してないが、ほぼ全て取れたみたい
3. >>2 などを取り除く4.mecabで名詞、形容詞を取り出す1.今回は、ipadicの辞書にある単語のみ使った2.基本形を利用する < 表記のぶれを少なく
ネットスラングを考慮して、未知語も利用するべきだったかもしれない・・・
あとから、使いやすいように
2 名無しさん 2011/11/6 楽しみ 遅れるない
3 名無しさん 2011/11/6 お待ち する お る
…
自然言語を数値化する
まずは、全てのデータの
語の頻度を数えた
語が27623種類
あった。
種類が多すぎて、分析するのが大変になるので、上位100語を
分析対象にしました。
次に、月毎に語の頻度を数えた。
また、それぞれの語が
月毎にどれくらいの割合で含まれるか調べた。
Rを使って、分析する。
スレッドの盛り上がり具合いを
見てみる
テンションが上がると語の出現頻度が変わるのでは?
こんな記事を見つけた
どうしてこんな事に?
『侵略!イカ娘』セーブオンオリジナルくじ、7月18日(海の日)より発売!
http://jin115.com/archives/51793457.html
景品を見る限りでは、可愛かったのに・・・なぜ?
相互相関関数を見てみる
相互相関関数って?
相互相関関数は、ふたつの信号、配列(ベクトル)の類似性を確認するために使われる。
相関と略されることがあり、相関係数と似ているために混同することがある。
Wikipedia 相互相関関数より
離散な時は、こんな式で求める。
試しに、「イカ」と「可愛い」で求めてみる。
頻度情報で見ると、ほとんどの語と語で
相互相関があると出てきてしまう。
↓頻度の分布が似ている。
頻度情報で見ると、ほとんどの語と語で
相互相関があると出てきてしまう。
↓頻度の分布が似ている。
頻度ではなく、相対度数を
見れば良いのでは?
相互相関が0.8以上or-0.8以下(lagが-1〜1で,一部抜粋)
● ネタ & キャラ
● 作品 & 声
● 絵 & 化
● 日 & 発売
● 平成 & 年月日
● チャンピオン & 漫画
● 漫画 & チャンピオン
● 悪い & 違い
● 悪い & 反省
● 違い & 反省
● 差 & 悪い
● 差 & 違い
● 発売 & 年月日
● 反省 & 点
● 特典 & 年月日
● 特典 & 発売
● 原作 & 発売
● 原作 & 特典
● 発売 & 原作
● イカ & 人
● 原作 & 特典
主成分分析をしてみる
PC1 PC2 PC3
Standard deviation
603.340
237.657
65.255
Proportion of Variance
0.855 0.133 0.00881
Cumulative Proportion
0.0.855 0.987 0.996
2期放送やミニイカ娘の回が強く現れている
相対度数を使ってみると・・・
PC1 PC2 PC3
Standard deviation
0.0525 0.0345 0.0173
Proportion of Variance
0.5507 0.2374 0.0601
Cumulative Proportion
0.5507 0.7881 0.8482
第1主成分では、オリジナルくじの月が主成分得点が高い。
第2主成分では、月を経るごとに
評価が下がってる?
標準化もやってみると・・・
PC1 PC2 PC3 PC4
Standard deviation
4.971 4.603 3.420 3.0889
Proportion of Variance
0.247 0.212 0.117 0.0954
Cumulative Proportion
0.247 0.459 0.576 0.6713
累積寄与率も低いし、もう少し見てみよう
感想
2chのスレッドを時系列に
分析をしてみると、それぞれの月の特徴を掴む事が出来た。
参考
JIN'S PAGE http://mjin.doshisha.ac.jp/R/
ご清聴ありがとうございました。
Top Related