身近な日常をやんわりデータサイエンスしてみよう

身近な情報や現象からデータを取り出して解析してみます。

カイトが舞うのは嵐の真っただ中?、それとも米津玄師ワールドとの際か? テキストマイニングでビジュアル化

  2014年に公開されたdoc2vecや、最近では2018年に公開されたBERTなどの自然言語解析のプログラムライブラリの登場で、大量の文章や歌詞の解析が誰でもできるようになりました。

以前、嵐の歌詞と米津さんの歌詞の違いを各単語の出現頻度によるビジュアル化をワードクラウドというプログラムを用いて解析しました。

www.yanwari-data.com

 

 今回は、米津玄師ワールドと嵐ワールドは分かれているのか、分かれていた場合に、米津さんが2020年に嵐に提供した"カイト"はどこのポジションにあるのか、興味があったので、解析してみました。

昨年2020年の8月に収集した嵐347曲、米津玄師89曲の歌詞を単語に分けて、各曲の歌詞の300次元での座標(ベクトル)を計算します。そして、それらを2次元のマップに縮約してビジュアル化することで、各曲のポジションを見ることができます。

 

グラフ1で嵐の曲と米津玄師の曲の色を分けて表示しています。嵐は横に幅広く分布しており、嵐の分布の右側に米津さんの曲がクラスター(米津ワールド)を形成していました。嵐の曲はさらにいくつかのクラスターに分けることができるかもしれません。後日解析してみます。

 

       グラフ1.  嵐347曲と米津玄師89曲の歌詞によるポジション

f:id:yamtakumol:20210103200349p:plain

 

 それでは、"カイト"の色を変えてポジションを確認しました。

"カイト"は嵐ワールドと米津玄師ワールドの境に位置していました。嵐感と米津感が両立している歌詞ということができそうです。

        グラフ2.  グラフ1に"カイト"の色を変えて表示

f:id:yamtakumol:20210103200453p:plain

 

参考: 作成したプログラムの開発環境

OS: Windows10

プログラム開発言語と使用した主なライブラリ:

      Python 3.7

                歌詞スクレイピング(Beautiful Soup)

                自然言語解析(janome, Doc2Vec, Wikipedia学習済みモデル)

      R 4.0.2

                多次元データの次元圧縮マップ化(UMAP)