ツイッターを活用した自然言語処理(後編)〜自分と相性の良さそうな(きっと可愛い)アイドルを真面目に探してみる〜

自然言語処理

どうも。Makです。さて今日は前回の続きということで、いろいろやっていきたいと思います。

前の記事を見ていない方は是非、下の記事をご覧いただけますと話の流れがクリアになりますのでありがたいかなーと。

さて、もう一度やりたいことをおさらいしておきますと、

  • ゴール:「筆者と最も相性の良い芸能人(きっと可愛い!!)を見つける」
  • 用意したもの:有名人300人分の過去ツイート100件+筆者の過去ツイート100件

でした!

ところが、先日行いました分析で、これではデータがどう頑張っても足りないのでは疑惑が浮上しました(可愛い子を選り好みして選んでいるわけではありません!)。

ということで、以下の通り、データの増強を行っています。

  • 有名人の数を、300人→2000人弱へと増やした。
  • ジャンル数も、3→10へと増やした。
  • 有名人一人当たりの取得ツイート数を2倍に増やした。

これで、どのような結果が出るのか。行ってみましょう!

モデルの学習と可視化

前回まではトピックモデル(LDA)を用いる予定でしたが、あまりうまくいきそうな感触がなかったので、今回まずはDoc2Vecを採用してみることにしました。Doc2Vecは技術者の間では広く知られた技術で、Word2Vecで一躍有名になったMikolovらにより発明されました。Word2Vecのいわば拡張版で、単語ベクトルの学習時にその単語がどの文書と紐付いているのかも情報として与えて学習することで、単純に単語ベクトルを足し合わせるよりも筋の良い文章ベクトルを獲得しようぜ!というコンセプトになっています。

このDoc2Vecモデルは、学習データとして任意のテキストデータが利用できます。今回は有名人のツイートから、いわば「その人らしさ」を学習させるのが狙いです。

以下、学習させたモデルから「その人らしさ」を50次元程度のベクトル空間で表現したものを、t-SNE法という次元削減法によって50次元→2次元まで圧縮し、可視化したものです。一つのドットが一人の有名人を表していて、その有名人が属しているジャンルで色分けしています。

f:id:mtstorm2:20190227192041p:plain
“2000人弱の有名人のツイートをベクトル化し可視化したもの。
有名人の属するジャンルにある程度分離できていることがわかる

もちろん完璧には分類できていないものの、ある程度は正しくその人らしさを捉えられていそうだな、というのがわかります。例えば「アイドル」「アーティスト」「タレント」は近くに位置しているのが分かりますし、逆に「社長(ceo)」や「スポーツ選手(sports)」からは離れているのが分かります。人間の直感とも近い結果と言えそうです。

ちなみに、各ジャンルからTOP20の有名人の名前を図に埋め込んで、部分的に拡大するとこんな感じでした。まずはアイドル、タレントの辺りを拡大してみます。

f:id:mtstorm2:20190227193949p:plain

思ったよりもいい感じ。可愛い系のアイドル、綺麗系のモデル、そしてお笑い芸人のクラスタにある程度分かれてますね。

次にクリエイターが気になったので見てみます。

f:id:mtstorm2:20190227194554p:plain
クリエイターのクラスタはYoutuberだらけだった

クリエイターは蓋を開けてみると今をときめくYoutuberの巣窟でした(笑)

面白いのは、Youtuberとモデルが比較的近い位置にいるということですね。確かに媒体の違いはあれど、Youtuberも露出してなんぼの職業ですし、自然とツイートの内容もモデルと似通うものがあるのかもしれません。

最後に経営者&スポーツのあたりを見てみましょう。

f:id:mtstorm2:20190227195642p:plain
スポーツと経営者は近い関係にある?

これまた少し面白い結果です。一見関係なさそうなスポーツと経営者のクラスタが近いのは、どう解釈したらいいですかね?パッと思いつくのは、

  • 体育会系の経営者が多い
  • スポーツチームとスポンサーの関係など、経営とスポーツは案外密接につながっている

などでしょうか。楽天の三木谷氏と元楽天イーグルスのまーくんが近いところを見ると、おそらくは2番目の仮説が正しいように思われます。ただZOZOTOWNの前澤氏に至っては、もはやスポーツ選手?と見間違えるほどスポーツ選手クラスタに食い込んでますね(笑)

筆者ともっとも相性の良い芸能人は!?

さて、ようやくここに辿りつきました。
いよいよ、筆者ともっとも相性の良い芸能人を見つけるときがきました!!

筆者の過去のつぶやきから、筆者の「らしさ」についても学習済みのDoc2Vecモデルを用いて同様にベクトル化します。そのあとは、筆者と芸能人とのベクトル間のコサイン類似度を計算すれば、めでたく類似性の高い芸能人としてガッキーか深キョンが選ばれるはずです!(まだ言う)

ということで・・・

ターゲットをアイドルに絞った際の、結果発表はこちら!!

f:id:mtstorm2:20190227013514p:plain

おおお。巨乳揃い1位は雨宮留菜さんときましたか。

2位はモンスターハウスでおなじみ、りおんちゃんですね!!

3位以降は気持ちあれですね、あっち路線の女優さんが多数ランクインしているようなのは気のせいでしょうか。。うん、きっと気のせいだ・・・!

ちなみにアイドルの括りをなくした結果は以下の通り。

f:id:mtstorm2:20190228014612p:plain

なんと1番似ていると評価されたのは村上春樹さん。
1ファンとしてめちゃくちゃ光栄です!!
いやーこれは嬉しいと同時に、結果の信頼性がなくなってきましたね。笑

最後におまけで、筆者も含めて可視化すると↓のようになりました。

f:id:mtstorm2:20190228013805p:plain

クラスタとしては経営者やジャーナリストのクラスタに近いようです。
そして、案外ZOZOTOWNの前澤氏とも近いですね・・・!!
自分も早く大成してお年玉キャンペーンできるようになりたいものです。。

まとめ

  • ツイッターをDoc2Vecで文章ベクトルで表現し、t-SNEで可視化してみた
  • 学習データを2000人分くらい集めるとモデルの学習が十分に可能であることが確認できた
  • 筆者と近いアイドルを抽出できたが、セクシー女優が多数ランクインしてきたのは何故(!!)

コメント

  1. norihiko_matsumoto より:

    こんなに難しそうな分析をご自身でできるのがすごいと思います。羨ましいスキルです。

  2. mtstorm2 より:

    ノリックさん
    いつも見に来てくださり本当にありがとうございます!仕事の専門がたまたまそっちなだけなんですよー。ノリックさんの記事もいつも楽しみにしています!今後ともよろしくお願いしますー。

タイトルとURLをコピーしました