SlideShare ist ein Scribd-Unternehmen logo
1 von 16
ドワンゴインターンシップ成果発
表
東京大学工学系研究科
システム創成学専攻
修士1年 伊藤 友貴
自己紹介
• 東京大学大学院工学系研究科システム創成学専攻和泉研究室
所属
• 経済の研究室
– マルチエージェントシミュレーション
– 板情報の異常検知
– テキストマイニング
– ジオタグ付きツイッターを使った分析
• 卒論は「市場価格変動のハイブリッド力学系モデルの挙動解析」
(東京大学工学部計数工学科)
– マルチエージェントシミュレーション, カオス性
• 機械学習の勉強は4月から開始
目次
• 目的
• 手法
• 結果
– 分類精度
– 単語抽出
• 結論・今後の課題
目的
• ニコニコ動画再生数(再生数上位100個は除く)
•
• 数少ない一部の動画の
再生数が多い
• 赤線あたりの動画をコメ
ントから推定できる?
問題
• 0000-0006 の動画を再生数に応じて3つに分類
– 再生数が
• ラベル 0: 34544 より大きい (1736 動画)
• ラベル 1: 10760.0 以上 34544 以下 (2930 動画)
• ラベル 2: 10760.0 より少ない (5905 動画)
で分類
• 特徴量は各動画のコメント群より生成
– 前処理
• 繰り返しの正規化
“あああああ” → “ああ” ,
“パタパタパタパタ” → “パタ”
• Unicode 正規化 など
特徴量の生成
1. Word2vec の単語ベクトルを利用
– ニコニコ動画データセット 0000-0006 の全コメントをコーパスに作成
– 各動画について以下の式でコメント群ベクトルを作成
2. Bag-of-words + 正規化
3. Bag-of-words + lsi (次元削減)
4. K-means による次元削減
( Yanhong YUAN, Liming HE, Li PENG, Zhixing HUANG∗, 2014)
– Word2vec を利用したk-means (単語群抽出に有用)
– 距離関数はコサイン類似度
コメント群ベクトル
単語ベクトル
(正規化済み)
単語の重み
実験1: 全コメントを利用
• 各動画の全コメントを利用して分類(交差検定)
SVM(rbf) LinearSVM
• 動画毎にとって来るコメント数にばらつきあり
• 分類可能?
• 最初の数コメントで分類できる?
ラベル 適合率 再現率 F値
0 0.76 0.80 0.78
1 0.59 0.62 0.60
2 0.80 0.72 0.76
平均 0.72 0.71 0.71
訓練誤差 0.19
正解率 0.71
ラベル 適合率 再現率 F値
0 0.68 0.85 0.76
1 0.60 0.40 0.48
2 0.72 0.78 0.75
平均 0.67 0.68 0.66
訓練誤差 0.30
正解率 0.68
実験2: 使用するコメントの数を制限
• 最初の n コメントから特徴量生成(n = 10, 100, 500, 700, 1000)
• Bag-of-words による分類の結果 (()内はラベル 0 ), linearSVM
• 動画数はバランス後の動画数の総数
コメント数 適合率 再現率 F値 正解率 動画数
10 0.37(0.37
)
0.37(0.38
)
0.37(0.37
)
0.37 1736
100 0.42(0.45
)
0.42(0.46
)
0.42(0.45
)
0.42 1732
500 0.48(0.50
)
0.48(0.49
)
0.48(0.49
)
0.48 1674
700 0.51(0.52
)
0.51(0.49
)
0.51(0.50
)
0.51 957
1000 0.48(0.48
)
0.49(0.44
)
0.48(0.46
)
0.48 465
500コメントあれば分類できる気がする…
実験2: 使用するコメントの数を制限
• Word2vec (200次元)のベクトル利用時(linearSVM)
コメント数 重み 適合率 再現率 F値 正解率 動画数
10 0.37(0.37) 0.37(0.39) 0.37(0.38) 0.37 5208
tf-idf 0.37(0.35) 0.36(0.71) 0.32(0.47) 0.36
100 0.41(0.42) 0.41(0.49) 0.40(0.45) 0.41 5196
tf-idf 0.39(0.41) 0.39(0.48) 0.39(0.44) 0.39
500 0.49(0.50) 0.50(0.60) 0.49(0.54) 0.50 1674
tf-idf 0.46(0.47) 0.47(0.56) 0.46(0.51) 0.47
700 0.50(0.52) 0.52(0.62) 0.50(0.57) 0.50 957
tf-idf 0.48(0.50) 0.48(0.55) 0.48(0.52) 0.48
1000 0.51(0.54) 0.51(0.61) 0.51(0.57) 0.51 465
tf-idf 0.50(0.50) 0.51(0.54) 0.50(0.52) 0.51
500コメントあれば分類できそう
結果(最初の500コメント利用)
ラベル0: 1615動画, ラベル1: 1490動画, ラベル2: 558動画, ()内はラベル0
特徴量 分類器 適合率 再現率 F値 テスト誤差 正解率
word2vec (50) LinearSVM 0.50(0.50 ) 0.51(0.59) 0.50(0.54) 0.31 0.51
word2vec (200) LinearSVM 0.50(0.50) 0.51(0.59) 0.50(0.54) 0.31 0.50
Bow LinearSVM 0.53(0.53) 0.54(0.54) 0.53(0.53) 0.02 0.53
lsi LinearSVM 0.51(0.52) 0.51(0.52) 0.51(0.52) 0.24 0.51
K-means(500) LinearSVM 0.47(0.48 ) 0.48(0.47) 0.47(0.47) 0.43 0.46
K-means(1000) LinearSVM 0.48 (0.49) 0.49 (0.51) 0.48 (0.50) 0.29 0.49
Word2vec (50) SVM (rbf) 0.50 (0.51) 0.50 (0.59) 0.49 (0.55) 0.44 0.50
Word2vec (200) SVM (rbf) 0.54(0.55) 0.55 (0.60) 0.54 (0.57) 0.26 0.55
Bow SVM (rbf) 0.52(0.53) 0.53 (0.54) 0.53 (0.54) 0.0 0.53
lsi SVM (rbf) 0.54(0.53) 0.54(0.57) 0.54(0.55) 0.0 0.54
K-means (500) SVM (rbf) 0.51(0.51 ) 0.51(0.54 ) 0.51(0.53) 0.17 0.52
K-means (1000) SVM (rbf) 0.50(0.49 ) 0.50 (0.56) 0.50 (0.52) 0.00 0.50
単語抽出
LinearSVM を利用
• Bag of words, K-means, LSI
– 重みの大きい組成を抽出することで単語(群)を抽出
• Word2vec
– LinearSVM の 重みの大きい組成を抽出
– プラスの重みが大きい組成からは正の成分が大きい単
語を抽出
– マイナスの重みが大きい組成からは負の成分が大きい単
語を抽出
重要プラス単語抽出(主観で抜粋)
取れた単語が多すぎるので一部紹介
• Bag of words
– ゃったあ,吊,ダレ,即死,ゃああ
• Word2vec
– ぉおお,トラウマゲー,ハゲワロス,テラワロスー
• LSI
– "sdk”,
• K-means
– だっせ,きめ,すげ,泣け,らめぇ,ドゴォォ,びちゅうう,やせ,盛り
上がっ,多感,すき,大好き,カッコイイ,サティィ, ,お祈り,追悼
重要プラス単語抽出(感想)
• K-means
– ワード群に一貫性あり
– 感情の入るような単語が影響しやすい?
– 現状だとポジティブ単語とネガティブ単語が混在
– 分類の精度低い
• Bag of words, LSI, Word2vec
– 単語の一貫性が主観的にはわかりにくい
• 結論:
– 再生数にプラスの影響を及ぼす単語の傾向がよくわ
からない
– 感情極性のある単語?
結論・ 今後の課題
• 500コメント集まれば再生数の分類ができそう
(3分類で正解率 0.55)
• K-means とword2vec を用いた手法には分類
精度の面で改善が必要
– クラスタ数(K-means) を増やす
– 単語極性(Positive, Negative, Neutral)の考慮した
特徴量の作成
その他:コメント数の分類
• 各動画の最初の500コメントを利用してコメントの伸びを分類
ラベル0:コメント数5000~ (動画数 624)
ラベル1:コメント数1000~5000 (動画数 1720)
ラベル2:コメント数500~1000 (動画数 1319)
• 特徴量にはWord2vec のベクトルを利用
ラベル 適合率 再現率 F値
0 0.59 0.64 0.61
1 0.46 0.41 0.44
2 0.54 0.55 0.55
平均 0.53 0.53 0.53
訓練誤差 0.26
正解率 0.53
ラベル 適合率 再現率 F値
0 0.54 0.57 0.55
1 0.45 0.39 0.42
2 0.50 0.53 0.52
平均 0.50 0.50 0.50
訓練誤差 0.37
正解率 0.50
SVM(rbf) LinearSVM
ラベル0については
精度よく分類可能
今後の抱負
• もっと勉強して優秀になる!
なんて言われないように頑張ります!

Weitere ähnliche Inhalte

Ähnlich wie ニコニコ動画コメント解析@インターン

【楽天テックカンファ前夜祭2014】誰がテスト自動化をするべきか #rakutentech
【楽天テックカンファ前夜祭2014】誰がテスト自動化をするべきか  #rakutentech【楽天テックカンファ前夜祭2014】誰がテスト自動化をするべきか  #rakutentech
【楽天テックカンファ前夜祭2014】誰がテスト自動化をするべきか #rakutentechKotaro Ogino
 
Or seminar2011final
Or seminar2011finalOr seminar2011final
Or seminar2011finalMikio Kubo
 
コンジョイント分析の方法論的検討
コンジョイント分析の方法論的検討コンジョイント分析の方法論的検討
コンジョイント分析の方法論的検討Jaehyun Song
 
世界に目を向けよう - ASTER国際連携活動事例(JaSST'15 tokyo)
世界に目を向けよう - ASTER国際連携活動事例(JaSST'15 tokyo)世界に目を向けよう - ASTER国際連携活動事例(JaSST'15 tokyo)
世界に目を向けよう - ASTER国際連携活動事例(JaSST'15 tokyo)Keizo Tatsumi
 
CRF を使った Web 本文抽出
CRF を使った Web 本文抽出CRF を使った Web 本文抽出
CRF を使った Web 本文抽出Shuyo Nakatani
 
異業種でのテスト自動化の実際
異業種でのテスト自動化の実際異業種でのテスト自動化の実際
異業種でのテスト自動化の実際Satsuki Urayama
 
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOKKotaro Ogino
 
テストを分類してみよう!
テストを分類してみよう!テストを分類してみよう!
テストを分類してみよう!Kenji Okumura
 
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチMIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチHironobu Fujiyoshi
 
REBOKを社内展開する際の障壁
REBOKを社内展開する際の障壁REBOKを社内展開する際の障壁
REBOKを社内展開する際の障壁mkoszk
 
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないことNorishige Fukushima
 
TERAS Conference
TERAS ConferenceTERAS Conference
TERAS ConferenceKeiju Anada
 
mruby×ETロボコン = ?
mruby×ETロボコン = ?mruby×ETロボコン = ?
mruby×ETロボコン = ?ssuserc1bb39
 
Jubatusの特徴変換と線形分類器の仕組み
Jubatusの特徴変換と線形分類器の仕組みJubatusの特徴変換と線形分類器の仕組み
Jubatusの特徴変換と線形分類器の仕組みJubatusOfficial
 
アドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニングアドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニングYosuke Mizutani
 
スクラムプロジェクト準備(公開用) No.31
スクラムプロジェクト準備(公開用) No.31スクラムプロジェクト準備(公開用) No.31
スクラムプロジェクト準備(公開用) No.31Sukusuku Scrum
 
機械学習エンジニアリング・品質保証 (ESS2018招待講演 鷲崎弘宜)
機械学習エンジニアリング・品質保証 (ESS2018招待講演 鷲崎弘宜)機械学習エンジニアリング・品質保証 (ESS2018招待講演 鷲崎弘宜)
機械学習エンジニアリング・品質保証 (ESS2018招待講演 鷲崎弘宜)Hironori Washizaki
 
【チュートリアル】コンピュータビジョンによる動画認識
【チュートリアル】コンピュータビジョンによる動画認識【チュートリアル】コンピュータビジョンによる動画認識
【チュートリアル】コンピュータビジョンによる動画認識Hirokatsu Kataoka
 
エンタープライズシステムにおけるテスト ~STE研究交流会 参加者の視点から ~
エンタープライズシステムにおけるテスト ~STE研究交流会 参加者の視点から ~エンタープライズシステムにおけるテスト ~STE研究交流会 参加者の視点から ~
エンタープライズシステムにおけるテスト ~STE研究交流会 参加者の視点から ~Kazuhiro Suzuki
 

Ähnlich wie ニコニコ動画コメント解析@インターン (20)

【楽天テックカンファ前夜祭2014】誰がテスト自動化をするべきか #rakutentech
【楽天テックカンファ前夜祭2014】誰がテスト自動化をするべきか  #rakutentech【楽天テックカンファ前夜祭2014】誰がテスト自動化をするべきか  #rakutentech
【楽天テックカンファ前夜祭2014】誰がテスト自動化をするべきか #rakutentech
 
Or seminar2011final
Or seminar2011finalOr seminar2011final
Or seminar2011final
 
コンジョイント分析の方法論的検討
コンジョイント分析の方法論的検討コンジョイント分析の方法論的検討
コンジョイント分析の方法論的検討
 
世界に目を向けよう - ASTER国際連携活動事例(JaSST'15 tokyo)
世界に目を向けよう - ASTER国際連携活動事例(JaSST'15 tokyo)世界に目を向けよう - ASTER国際連携活動事例(JaSST'15 tokyo)
世界に目を向けよう - ASTER国際連携活動事例(JaSST'15 tokyo)
 
CRF を使った Web 本文抽出
CRF を使った Web 本文抽出CRF を使った Web 本文抽出
CRF を使った Web 本文抽出
 
異業種でのテスト自動化の実際
異業種でのテスト自動化の実際異業種でのテスト自動化の実際
異業種でのテスト自動化の実際
 
見積り入門
見積り入門見積り入門
見積り入門
 
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
【SQiP 2014】継続的システムテストについての理解を深めるための 開発とバグのメトリクスの分析 #SQiP #SQuBOK
 
テストを分類してみよう!
テストを分類してみよう!テストを分類してみよう!
テストを分類してみよう!
 
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチMIRU2013チュートリアル:SIFTとそれ以降のアプローチ
MIRU2013チュートリアル:SIFTとそれ以降のアプローチ
 
REBOKを社内展開する際の障壁
REBOKを社内展開する際の障壁REBOKを社内展開する際の障壁
REBOKを社内展開する際の障壁
 
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと画像処理ライブラリ OpenCV で 出来ること・出来ないこと
画像処理ライブラリ OpenCV で 出来ること・出来ないこと
 
TERAS Conference
TERAS ConferenceTERAS Conference
TERAS Conference
 
mruby×ETロボコン = ?
mruby×ETロボコン = ?mruby×ETロボコン = ?
mruby×ETロボコン = ?
 
Jubatusの特徴変換と線形分類器の仕組み
Jubatusの特徴変換と線形分類器の仕組みJubatusの特徴変換と線形分類器の仕組み
Jubatusの特徴変換と線形分類器の仕組み
 
アドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニングアドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニング
 
スクラムプロジェクト準備(公開用) No.31
スクラムプロジェクト準備(公開用) No.31スクラムプロジェクト準備(公開用) No.31
スクラムプロジェクト準備(公開用) No.31
 
機械学習エンジニアリング・品質保証 (ESS2018招待講演 鷲崎弘宜)
機械学習エンジニアリング・品質保証 (ESS2018招待講演 鷲崎弘宜)機械学習エンジニアリング・品質保証 (ESS2018招待講演 鷲崎弘宜)
機械学習エンジニアリング・品質保証 (ESS2018招待講演 鷲崎弘宜)
 
【チュートリアル】コンピュータビジョンによる動画認識
【チュートリアル】コンピュータビジョンによる動画認識【チュートリアル】コンピュータビジョンによる動画認識
【チュートリアル】コンピュータビジョンによる動画認識
 
エンタープライズシステムにおけるテスト ~STE研究交流会 参加者の視点から ~
エンタープライズシステムにおけるテスト ~STE研究交流会 参加者の視点から ~エンタープライズシステムにおけるテスト ~STE研究交流会 参加者の視点から ~
エンタープライズシステムにおけるテスト ~STE研究交流会 参加者の視点から ~
 

ニコニコ動画コメント解析@インターン

Hinweis der Redaktion

  1. dct.filter_extremes(no_below=3, no_above=0.6) により低頻度と高頻度の単語は除く
  2. ラベル0: 1615動画, ラベル1: 1490動画, ラベル2: 558動画
  3. ラベル0: 1615動画, ラベル1: 1490動画, ラベル2: 558動画