自然言語処理、テキストマイニングに関するプログラムのライブラリが多く公開されてきて、PythonやRなどによるプログラミングのスキルさえ習得すれば、大量の文章から言葉と言葉の関係、文章と文章の関係などを誰でも容易く分析することができるようになっています。
データサイエンスは情報と情報を科学的(統計解析など)に比較する手法です。好きな、個性的なミュージシャンの曲を比較するのは面白くもあり、楽しいです。
歌詞の頻出ワードをwordcloud表示
今回は、私と同年代(やや年上ですが)の中島みゆき600曲と松任谷由実415曲の歌詞を、出現するワードの頻度でwordcloud表示してみました。出現頻度が高いほど大きく表示されています。
中島みゆきと松任谷由実の歌詞の頻出ワードで大きな違いは"人"です。
中島みゆきは"人"を歌っていらっしゃるようです。
頻出ワードランキング
頻出ワードランク5位までを記します。中島みゆきの"人"を除くと、両者ともに、"私"、"あなた"、"ゆく" が上位にランクインしていました。
中島みゆきでは
1. 人
2. 私
3. あなた
4. ゆく
5. 誰
松任谷由実では
1. あなた
2. 私
3. ゆく
4. 今
5. きみ
頻出ワード"人"、"あなた"とそれぞれ関係が強いワード
自然言語処理のライブラリword2vecを使って、頻出単語の関係ワードを分析することができます。二人の関係ワードの違いから、同じ言葉の意味合いの違いを読み取ることができます。
"人"の関係ワードを関係性の強い順に5つ記載しました。
中島みゆきは、関係するワードランクから "人”は変わる、見知った"人"、すれ違った"二人"、出会った"二人"などのフレーズが思い浮かびます。
1. 変わり
2. 見知る
3. すれ違う
4. 二
5. 出会う
松任谷由実では"人"は"二人"として多く使われています。 "二人"、若い"二人"、"二人"に教える、"二人"のメモリー、など、"二人"としてのフレーズが思い浮かびます。
1. 二
2. 若い
3. 教える
4. メモリー
5. 間にあう
"あなた"の関係ワード
中島みゆきの"あなた"と関係の強いワード
1. 切る
2. 写真
3. かくす
4. 間違える
5. イヤ
松任谷由実の"あなた"と関係の強いワード
1. 私
2. 陽気
3. 笑う
4. 話す
5. 顔
松任谷由実の"あなた"は陽気で親しい話し相手というイメージでわかりやすいですが、中島みゆきの"あなた"はなかなか複雑そうなイメージです。
各曲を歌詞の違いで2次元マップ表示
最後に、中島みゆき600曲と松任谷由実415曲を歌詞の違いで2次元マップ表示してみました。中島みゆきさんの曲の分布の広がりが大きくて、松任谷由実さんのワールド(クラスター)にも結構入り込んでいます。中島みゆきでは飛び地のような小さなクラスターもいくつか見られます。奔放な曲作りをされているようです。松任谷由美は自分のワールドをしっかり作っていますが、サブワールドが図の左上に見られます。このサブワールドの特徴を分析するのも面白そうです。
嵐と米津玄師との比較もしてみました。
参考: 解析のために作成したプログラムの開発環境
OS: Windows10
プログラム開発言語と使用した主なライブラリ
Python 3.7
歌詞のスクレイピング(Beautiful Soup)
自然言語解析(janome, Word2Vec, Doc2Vec, Wikipedia学習済みモデル)
R 4.0.2
頻出ワードのビジュアル化(wordcloud)
多次元データの次元圧縮マップ表示(UMAP)