17
Word2Vec+NEologd ててててててててててて 秋秋秋 IT 秋秋秋秋秋 秋秋秋

Word2Vec Neologdで作るアニメ人工知能

Embed Size (px)

Citation preview

Page 1: Word2Vec Neologdで作るアニメ人工知能

Word2Vec+NEologd て作るアニメ人工知能

秋葉原 IT 戦略研究所野田純一

Page 2: Word2Vec Neologdで作るアニメ人工知能

自己紹介所属GMO インターネット業務分野 ビッグデータ、機械学習アドテク

Page 3: Word2Vec Neologdで作るアニメ人工知能

秋葉原 IT 戦略研究所のご紹介形態アニメに関するデータ解析が主体の同人サークル 兼 IT コミュニティメンバー 現在17 名活動オープンソースカンファレンス出展、コミケ C89 出展、デブサミ等のイベントで発表合計10 回以上

Page 4: Word2Vec Neologdで作るアニメ人工知能

Twitter データ to Word2Vec

Page 5: Word2Vec Neologdで作るアニメ人工知能

Neologd + Mecab

Mecab( 日本語の形態素解析ライブラリの辞書最新の進出単語にも対応している。辞書の更新も簡単にコマンドラインて可能。

Page 6: Word2Vec Neologdで作るアニメ人工知能

普通の Mecabrequire 'mecab'c = MeCab::Tagger.newputs c.parse(ARGV[0])

ARGV[0] = 「ラブライブ!が面白い」

単語 分類ラブ 名詞ライブ 名詞! 記号が 助詞面白い 形容詞

Page 7: Word2Vec Neologdで作るアニメ人工知能

Mecab + Neologdrequire 'mecab'c = MeCab::Tagger.new("-d /usr/lib64/mecab/dic/mecab-ipadic-neologd")puts c.parse(ARGV[0])ARGV[0] = 「ラブライブ!が面白い」

単語 分類ラブライブ! 名詞が 助詞面白い 形容詞

Page 8: Word2Vec Neologdで作るアニメ人工知能

Word2VecGoogle が公開した単語をベクトル化するライブラリ次元数は 100 次元のベクトルなど多次元となる(指定が可能)

単語をベクトル化(数値化することて)近しい意味 ( ベクトル ) を持つ単語の出力単語どうしの演算も可能「 king – man + woman = queen 」

Page 9: Word2Vec Neologdで作るアニメ人工知能

  Word2Vec 具体例

scala> model.getVectors(" くまみこ ")Array[Float] = Array(0.16979307, -0.10737452, -0.13257232, 0.011306504, 0.09197321, 0.061397914, 0.16557626, 0.16695368, -0.0067021986, -0.11549623, -0.044930346, -0.05574477, -0.08686614, 0.20188709, 0.21887831, -0.033446174, 0.009392842, -0.1355873, -0.050784733, 0.19817464, -0.13974854, -0.025927199, -0.035145663, 0.24779177, 0.18303034, -0.024974244, 0.029113865,...

Page 10: Word2Vec Neologdで作るアニメ人工知能

Word2Vec 具体例

まず、データソースの文章 (wikipedia など ) を読み込み単語間の関係性を学習させる。日本語の文章てあれば形態素解析し文章から名詞を適切に区切る必要がある。

Page 11: Word2Vec Neologdで作るアニメ人工知能

Word2Vec モデル作成

val input = sc.textFile(”tweet.txt").map(line => line.split(" ").toSeq)val word2Vec = new Word2Vec()val model = word2Vec.fit(input)

kumamiko くまみこ toktomxくまみこ 2 話 シール たま の 散々 目 まち ユニクロ これ 今 ところ くまみこ 上位 位置 kumamikoRT yasumoto くまみこ 壱 話 ニコ生 アンケート 91 3 %くまみこ 2 話 くまみこ 2 話 道 https t co ON 6 DQzjbVc三者三葉 くまみこ kumamiko

tweet.txt(1 ツイートの名詞のみをスペース区切りて一行て記録)

Page 12: Word2Vec Neologdで作るアニメ人工知能

データソースによって結果は異なる

scala> model.getVectors(" くまみこ ")Array[Float] = Array(0.16979307, -0.10737452, -0.13257232, 0.011306504, 0.09197321, 0.061397914, 0.16557626, 0.16695368,

scala> model2.getVectors(" くまみこ ")Array[Float] = Array(-0.11222127, -0.07193229, 0.13180847, 0.11497118, 0.27366132, 0.19120672, -0.013025932, 0.24020618, 0.20792492, 0.24676985,

Page 13: Word2Vec Neologdで作るアニメ人工知能

findSynonyms て類似語検索

model.findSynonyms(“ はいふり” ,6)

類似語 コサイン類似度ガルパン 1.1138462038267736キズナ 1.08825059021038信者 1.0584954975231815設定 1.0413327339144411ギャグ 1.0201970862609504艦これ 1.0183542740117733

Page 14: Word2Vec Neologdで作るアニメ人工知能

findSynonyms て類似語検索類似語 コサイン類似度ガルパン 1.1138462038267736艦これ 1.0183542740117733

「はいふり」 「ガルパン」 「艦これ」

Page 15: Word2Vec Neologdで作るアニメ人工知能

findSynonyms て類似語検索

model.findSynonyms(“●REC”,9)類似語 コサイン類似度

w wwwwwww 1.9561811482625275みえ 1.9450049956949542じゃんけんぽん 1.93284191865789ゆいかおり 1.9242905546414364>< 1.915100378745769グーチョキパレード 1.8924352727790863w wwwwwwww 1.885761314710991いいんちょ 1.8788880238558838ポニテ 1.8673839284607967

Page 16: Word2Vec Neologdで作るアニメ人工知能

ED が録画したくなる内容らしいmodel.findSynonyms(“●REC”,9)類似語 コサイン類似度

グーチョキパレード 1.8924352727790863

Page 17: Word2Vec Neologdで作るアニメ人工知能

東海地方のサークルメンバー募集!

http://akibalab.info/