• 2016年12月28日

紅白歌合戦の曲目の歌詞データから感情を分析、勝敗を予測してみる

ソケッツでは日々、人の『感性』や『感情』をあらゆる形で取り扱っています。

ソケッツの感性メタは、熟練スタッフが実際に商品を「見て」「聞いて」「読んで」約2,000項目に及ぶ感覚表現メタをチョイスした人力メタデータです。この感性メタは、機械には出来ない膨大な作業によって生まれた日本人の感性を反映した国内唯一のエンターテイメントメタ(ゲノム)データとして、その精度評価は非常に高いものとなります。長年蓄積してきた、この高品質の感性メタがあるからこそ、教師データとして、機械学習、deep learningによりメタ数/精度の大幅な向上を実現できました。

さて、そんな感性メタ付与以外にも、ソケッツでは感情分析の研究開発を積極的に行っています。ソケッツの感性・感情分析の一例として、今回はソケッツ感性メタを教師データとして、紅白歌合戦の歌詞データから感情を分析、さらにその結果から今年の勝敗を予測してみましたので、ご紹介します。

紅白歌合戦の歌詞データの感情をスコアリング

今回は、2部制がはじまった、第40回1989(平成元年)以降から、先日2016年12月19日に曲目が発表された本年度第67回2016(平成28年)の紅白歌合戦で、紅白それぞれに分かれて披露された楽曲を対象とすることにしました。

対象期間:第40回1989(平成元年)~第67回2016(平成28年)
※紅組・白組の垣根を越えて披露された楽曲は対象外とする
※『紅白エディション』はオリジナル楽曲の歌詞を解析対象とする
※メドレーは対象外とする
全28回、全対象楽曲1,358曲 うち紅組692曲、白組666曲
今回のメドレーなどの対象外含む全披露楽曲1,464 対象率93%

そして、今回の分析では、感情に関するキーワードを以下の10種類に絞りました。
10種の感情

まずは、各楽曲の歌詞データに現れるキーワードの中から、感情に関するフレーズを抽出し、上記10種ごとに分類します。この分類の際にソケッツの感性メタを教師データとして分類しています。

事例:第67回2016(平成28年)白組出場 RADWIMPS/前前前世
歌詞から感情に関するフレーズを抽出

感情ごとに分類したフレーズをスコア化します。
感情ごとに分類したフレーズをスコア化

全対象楽曲1,358曲のスコア化が完了したら、年代・紅白の組ごとに数値を集計、個々の感情スコア値ごとに正規化します。
ちなみに、その結果を、年ごとに最大値が2になるように平準化しグラフに出力したものがこちらです。

※下記は、本年度2016年分を含んだ直近3年間のグラフ
年代ごとの感情スコアグラフ

さらに、感情別に各年代・紅白別の推移をグラフで見てみましょう。

年代ごとの感情スコアグラフ
今年2016年の楽曲は、紅組は「哀しみ」のスコアが高く、白組は「不安・恐怖」のスコアが高いようです。
それぞれどの楽曲が影響しているのか見てみると、

紅白高スコアランキング
どうでしょうか。それぞれの歌詞が思い浮かぶ方は、なんとなく高スコアの要因がイメージできるのではないでしょうか。

ちなみに、感情に関わらず歌詞によく登場するフレーズは特に年ごとに特徴があるわけではなく、一般的にJ-POPでよくつかわれるフレーズでした。

紅白楽曲歌詞フレーズ上位

感情スコアを分析し、勝敗の予測モデルを作ってみる

さて、紅白の勝敗といえば、楽曲そのものでの勝負というわけではなく、対抗形式で歌や演奏を披露し、全体のショーを通して最後に勝敗を決める、というものであり、今回の歌詞の感情分析と勝敗の因果関係と結び付けるのは難しいものがあると思いますが、そこをあえて、今回は、この感情分析と過去の勝敗のみで他の相関・要素を入れずにシンプルに分析していくことにします。

上述の感情スコア値のグラフを見ても分かる通り、感情スコアと勝敗には、パッとみる限り、相関は特に見当たりませんが、まずは主成分分析などをはじめ「データをよく見る」ことからはじめていきます。

そして、今回は勝敗を予測するために、ロジスティック回帰分析で予測モデルを作ってみたいと思います。

ロジスティック回帰分析とは、ある現象の発生する確率を、その現象の起因を説明するために観測された変数群によって説明をするための分析手法です。今回の目的では、勝ち(1.0)か負け(0.0)かを、その現象の規制を説明するために観測された変数群として感情スコアを利用して予測するものです。

このとき 勝ち(1)/負け(0) という値で得られている変数は 1 もしくは 0 という 2値のいずれかで示され、この 1 もしくは 0 という値を、他の説明変数が決定付けている、もしくは影響を与えているとみなして分析を行ない、数式を構築します。

年別、紅白別の10種の感情スコアから分析した回帰係数は左記のようになりました。

この係数が大きいほど、勝敗への影響度が高いとみなされます。この推定されたモデル式を用いて、過去計27年間×紅白別の全54の予測値を算出し、年ごとに紅白で比較をして高い予測確率である方が「勝利する」という予測をしました。

勝敗の予測モデルの正解率と今年の勝敗予想

さて、できあがった予測モデルに当てはめた時の、勝敗実績の正解率はどのような感じでしょうか。

ソケッツ紅白勝敗予測モデルの正解率
今回対象とした過去27回のうち、予測モデルに当てはめたときに、
・紅が勝つ予測:9件
 ○紅が実際に優勝:8件 ×白が実際に優勝:1件 ⇒正解率89%
・白が勝つ予測:17件
 ○白が実際に優勝:17件 ×紅が実際に優勝:0件 ⇒正解率100%
全27回分トータルで、正解率96%という結果になりました。

実際のビッグデータ分析・予測においては、今回のロジスティック回帰分析にとどまらず、ニューラルネットワークでさらに精度を追求、また、主成分分析などを行ったりしますが、分かりづらくなるので、今回はここでとどめて、この予測モデルに当てはめて、今年2016年の紅白の勝敗を予測をすると…

ソケッツ紅白勝敗予測モデルの正解率予測モデルの理論値において、紅白で比較して高い値の方が「勝利する」ということは…ソケッツ感情分析からの今年2016年の紅白歌合戦は、ずばり紅組の優勝が予想されました。

さて、結果はいかに…?!

最後に

今回は紅白歌合戦の歌詞を感情分析して、さらに勝敗予想してみるというレポートでしたが、「感情分析エンジン」の技術開発では、様々な角度から研究を行っています。

様々なデバイスを利用しているユーザーの感情を読み取る場合、単純にユーザーアクションやコメント内容からのみの感情抽出だけでは人の複雑な感情を推測はできません。
感情状態の時系列分析をおこない、状態変化を推定するような処理が必要となります。

人間と同等の知能をもつ人工知能に、人の感情を理解できる『感性』をもたせられたら…
人の『感性』や『感情』を扱ってきたソケッツだから目指すべきこと、そして実現できること。
今後もソケッツの技術研究開発にご期待ください。

また次回ソケッツ感情分析エンジンについて、もう少し詳しくレポートをお届けしたいと思います。

Pagetop