日向坂46が本当に「ハッピーオーラ」なのか感情分析してみた


おっひー！

最近、いい歳こいて<b>日向坂46</b>にハマっております。
日向坂46と言えば”<b>ハッピーオーラ</b>”をモットーに活動しているアイドルグループです。
本当にいい子たちばっかりで応援しがいのあるグループなんですよねぇ。。。


Pythonを学ぶ機会があって何かやってみたいなぁと思ったので、私が最近ハマっている日向坂の曲を分析してみようと思いました。

<h2>概要</h2>
言語AIを利用して、日向坂46の曲の歌詞がどんな感情構成なのか調べてみる。


<h2>開発環境</h2>
macOS Catalina
Python3.7.5
COTOHA API

<h2>COTOHA APIとは？</h2>
COTOHAとはNTTが開発した、<b>日本語ネイティブの言語AI</b>です。日本語ネイティブなので外国語の分析はできません。
今回利用する感情分析のほかにも、構文解析やユーザ属性などの分析にも使えるそうです。
気になる方はこちらの<a href ="https://api.ce-cotoha.com/contents/index.html">公式ページ</a>を参照してみてください。

COTOHA APIの感情分析は以下15つの感情にカテゴリ化されます。

```
喜ぶ,怒る,悲しい,不安,恥ずかしい,好ましい,嫌,興奮,安心,驚く,切ない,
願望,POSITIVE,NEGATIVE,POSITIVEかつNEGATIVE
```


そして、0-1の数値で出るセンチメントスコアは1に近づくほど正確という意味らしいです。今回は歌詞を調べるので、全体的に低いスコアをなっております。

<h2>さてやってみよう</h2>
早速やってみたいと思います！

<h3>1stシングル『キュン』</h3>
<b>予想：めちゃポジティブ</b>
<details><summary>実行結果</summary>
{
    "result": {
        "sentiment": "Positive",
        "score": 0.028264567193282873,
        "emotional_phrase": [
            {
                "form": "愛しい",
                "emotion": "P"
            },
            {
                "form": "かわいい",
                "emotion": "P"
            },
            {
                "form": "切ない",
                "emotion": "PN"
            },
            {
                "form": "きっと理解できない",
                "emotion": "N"
            },
            {
                "form": "なんて不思議だ",
                "emotion": "PN"
            },
            {
                "form": "真っ黒な",
                "emotion": "PN"
            },
            {
                "form": "萌えちゃって",
                "emotion": "PN"
            },
            {
                "form": "虜になった",
                "emotion": "P"
            },
            {
                "form": "さりげなく",
                "emotion": "PN"
            },
            {
                "form": "遠い",
                "emotion": "PN"
            },
            {
                "form": "見守っていよう",
                "emotion": "P"
            },
            {
                "form": "気づいていない",
                "emotion": "N"
            },
            {
                "form": "余計に",
                "emotion": "N"
            }
        ]
    },</details>

個人的見所はサビ部分の
>
キュンキュキュンしちゃった
キュンキュキュンしちゃった
I’m just falling love with you
キュキュンキュン愛しい
キュンキュキュン愛しい
You know I can’t stop loving you

をどうするかでしたが、キュンは流石に判断できなかったようですね。

<h3>2ndシングル『ドレミソラシド』</h3>
<b>予想：めちゃポジティブ</b>

<details><summary>実行結果</summary>
{
    "result": {
        "sentiment": "Positive",
        "score": 0.0008150380002646757,
        "emotional_phrase": [
            {
                "form": "きっと面白い",
                "emotion": "P"
            },
            {
                "form": "片想い",
                "emotion": "切ない"
            },
            {
                "form": "恋",
                "emotion": "好ましい,切ない"
            },
            {
                "form": "恋する",
                "emotion": "好ましい,切ない"
            },
            {
                "form": "好き",
                "emotion": "P"
            },
            {
                "form": "何だか切なくなる",
                "emotion": "PN"
            },
            {
                "form": "楽しもう",
                "emotion": "P"
            },
            {
                "form": "ドキドキし始めちゃうよ",
                "emotion": "P"
            },
            {
                "form": "ちょっと恥ずかしくなって",
                "emotion": "PN"
            },
            {
                "form": "微笑",
                "emotion": "安心"
            },
            {
                "form": "夢中になる",
                "emotion": "P"
            },
            {
                "form": "気づかなかった",
                "emotion": "N"
            },
            {
                "form": "刺さってた",
                "emotion": "P"
            },
            {
                "form": "油断してた",
                "emotion": "N"
            },
            {
                "form": "同じで",
                "emotion": "PN"
            },
            {
                "form": "ドラマティックな",
                "emotion": "P"
            },
            {
                "form": "いい",
                "emotion": "P"
            },
            {
                "form": "うわの空",
                "emotion": "PN"
            },
            {
                "form": "使い果たしそうだ",
                "emotion": "N"
            },
            {
                "form": "出せない",
                "emotion": "N"
            },
            {
                "form": "過ぎる",
                "emotion": "PN"
            },
            {
                "form": "ぎこちなく",
                "emotion": "N"
            },
            {
                "form": "ぶっきらぼうな",
                "emotion": "N"
            },
            {
                "form": "うまくいく",
                "emotion": "P"
            },
            {
                "form": "わからない",
                "emotion": "N"
            },
            {
                "form": "無意識さ",
                "emotion": "PN"
            },
            {
                "form": "いつも足りなかった",
                "emotion": "PN"
            }
        ]
    },</details>

　ドレミソラシドはセンチメンタルスコアはべらぼうに低いですね。笑




<h3>3rdシングル『こんなに好きになっちゃっていいの？』</h3>
<b>予想：ちょっとネガティブ</b>

<details><summary>実行結果</summary>
{
    "result": {
        "sentiment": "Negative",
        "score": 0.02551750742390602,
        "emotional_phrase": [
            {
                "form": "愛",
                "emotion": "好ましい,安心"
            },
            {
                "form": "愛しさ",
                "emotion": "P"
            },
            {
                "form": "傷つく",
                "emotion": "N"
            },
            {
                "form": "どうしたって嫌い",
                "emotion": "N"
            },
            {
                "form": "恋する",
                "emotion": "好ましい,切ない"
            },
            {
                "form": "怖くなるのよ",
                "emotion": "N"
            },
            {
                "form": "好きで",
                "emotion": "P"
            },
            {
                "form": "切ない",
                "emotion": "PN"
            },
            {
                "form": "涙",
                "emotion": "不安,喜ぶ,悲しい,切ない"
            },
            {
                "form": "はらはらと",
                "emotion": "PN"
            },
            {
                "form": "不安",
                "emotion": "N"
            },
            {
                "form": "わがままな",
                "emotion": "N"
            },
            {
                "form": "ふと気づくと",
                "emotion": "P"
            },
            {
                "form": "きりがない",
                "emotion": "N"
            },
            {
                "form": "止められて",
                "emotion": "PN"
            },
            {
                "form": "失おう",
                "emotion": "N"
            },
            {
                "form": "足りない",
                "emotion": "PN"
            },
            {
                "form": "意味ない",
                "emotion": "N"
            },
            {
                "form": "こんなに弱い",
                "emotion": "N"
            },
            {
                "form": "わからなくなる",
                "emotion": "N"
            },
            {
                "form": "不器用な",
                "emotion": "N"
            },
            {
                "form": "一途さ",
                "emotion": "PN"
            },
            {
                "form": "何も欲しくはない",
                "emotion": "N"
            },
            {
                "form": "いい",
                "emotion": "P"
            },
            {
                "form": "奇跡だとわかってる",
                "emotion": "P"
            }
        ]
    }</details>

予想通り、ちょっとネガティブでしたね。


<h3>4thシングル『ソンナコトナイヨ』</h3>
<b>予想：ちょっとポジティブ</b>

<details><summary>実行結果</summary>
{
    "result": {
        "sentiment": "Positive",
        "score": 0.012730055376781048,
        "emotional_phrase": [
            {
                "form": "イヤ",
                "emotion": "嫌"
            },
            {
                "form": "可愛いよ",
                "emotion": "P"
            },
            {
                "form": "がっかり",
                "emotion": "悲しい"
            },
            {
                "form": "嫌いじゃない",
                "emotion": "P"
            },
            {
                "form": "こんなに好きなんだ",
                "emotion": "P"
            },
            {
                "form": "チャーミングだろう",
                "emotion": "P"
            },
            {
                "form": "ときめいてしまうよ",
                "emotion": "P"
            },
            {
                "form": "ふい",
                "emotion": "N"
            },
            {
                "form": "拗ねた",
                "emotion": "N"
            },
            {
                "form": "どうして落ち込んでるのかな",
                "emotion": "N"
            },
            {
                "form": "ホント似合ってる",
                "emotion": "P"
            },
            {
                "form": "わかって",
                "emotion": "P"
            },
            {
                "form": "子供っぽいよね",
                "emotion": "N"
            },
            {
                "form": "眩",
                "emotion": "P"
            },
            {
                "form": "好きだと気づいた",
                "emotion": "P"
            },
            {
                "form": "キレイな",
                "emotion": "P"
            },
            {
                "form": "目が離せない",
                "emotion": "P"
            }
        ]
    }</details>

ごりごりポジティブソングでしたね。

<h3>カップリング曲</h3>
<h4>ネガティブソング</h4>

<details><summary>約束の卵</summary>
{
    "result": {
        "sentiment": "Negative",
        "score": 0.023315016692733136,
        "emotional_phrase": [
            {
                "form": "諦めろ",
                "emotion": "N"
            },
            {
                "form": "叶わない",
                "emotion": "悲しい"
            },
            {
                "form": "苦しくて",
                "emotion": "不安"
            },
            {
                "form": "辛い",
                "emotion": "嫌,悲しい"
            },
            {
                "form": "涙",
                "emotion": "不安,喜ぶ,悲しい,切ない"
            },
            {
                "form": "喜びたい",
                "emotion": "P"
            },
            {
                "form": "夢見る",
                "emotion": "P"
            },
            {
                "form": "一番辛いって何となくわかっている",
                "emotion": "P"
            },
            {
                "form": "見守ってくれるか",
                "emotion": "P"
            },
            {
                "form": "長い",
                "emotion": "PN"
            },
            {
                "form": "助けようとしなくていい",
                "emotion": "N"
            },
            {
                "form": "寄り添う",
                "emotion": "PN"
            },
            {
                "form": "小高い",
                "emotion": "PN"
            },
            {
                "form": "無理だ",
                "emotion": "N"
            },
            {
                "form": "捨てろ",
                "emotion": "N"
            },
            {
                "form": "意味ない",
                "emotion": "N"
            },
            {
                "form": "頑張れる",
                "emotion": "P"
            }
        ]
    }</details>

<details><summary>青春の馬</summary>
{
    "result": {
        "sentiment": "Negative",
        "score": 0.02394637246912981,
        "emotional_phrase": [
            {
                "form": "絶対諦めるな",
                "emotion": "N"
            },
            {
                "form": "思いも寄らない",
                "emotion": "驚く"
            },
            {
                "form": "叶わないか",
                "emotion": "悲しい"
            },
            {
                "form": "情熱",
                "emotion": "興奮"
            },
            {
                "form": "辛い",
                "emotion": "N"
            },
            {
                "form": "乱れた",
                "emotion": "N"
            },
            {
                "form": "無我夢中",
                "emotion": "好ましい"
            },
            {
                "form": "楽",
                "emotion": "喜ぶ"
            },
            {
                "form": "笑われて",
                "emotion": "PN"
            },
            {
                "form": "夢見てるか",
                "emotion": "P"
            },
            {
                "form": "いい",
                "emotion": "P"
            },
            {
                "form": "わからない",
                "emotion": "N"
            },
            {
                "form": "無謀と",
                "emotion": "N"
            },
            {
                "form": "駆け巡れ",
                "emotion": "P"
            },
            {
                "form": "何度も間違えて",
                "emotion": "N"
            },
            {
                "form": "疲れた",
                "emotion": "N"
            },
            {
                "form": "楽しちゃ意味ない",
                "emotion": "N"
            },
            {
                "form": "不器用な",
                "emotion": "N"
            },
            {
                "form": "がむしゃらに",
                "emotion": "PN"
            },
            {
                "form": "消えない",
                "emotion": "P"
            },
            {
                "form": "欲しかった",
                "emotion": "P"
            },
            {
                "form": "遠い",
                "emotion": "PN"
            },
            {
                "form": "こんなに広かった",
                "emotion": "PN"
            },
            {
                "form": "駆け抜けて行く",
                "emotion": "P"
            },
            {
                "form": "希望",
                "emotion": "P"
            }
        ]
    }
</details>
<details><summary>キツネ</summary>
{
    "result": {
        "sentiment": "Negative",
        "score": 0.012570939691592386,
        "emotional_phrase": [
            {
                "form": "愛",
                "emotion": "好ましい,安心"
            },
            {
                "form": "嫌",
                "emotion": "嫌"
            },
            {
                "form": "傷つかない",
                "emotion": "P"
            },
            {
                "form": "恋",
                "emotion": "好ましい,切ない"
            },
            {
                "form": "好きじゃない",
                "emotion": "N"
            },
            {
                "form": "後々辛い",
                "emotion": "N"
            },
            {
                "form": "他人事のように",
                "emotion": "N"
            },
            {
                "form": "純な",
                "emotion": "PN"
            },
            {
                "form": "簡単",
                "emotion": "PN"
            },
            {
                "form": "騙して",
                "emotion": "N"
            },
            {
                "form": "気づけばいい感じ",
                "emotion": "P"
            },
            {
                "form": "遠い",
                "emotion": "PN"
            },
            {
                "form": "気づかせないで",
                "emotion": "N"
            },
            {
                "form": "真実",
                "emotion": "PN"
            },
            {
                "form": "隠してある",
                "emotion": "N"
            },
            {
                "form": "わからない",
                "emotion": "N"
            }
        ]
    }
</details>

<h4>ポジティブソング</h4>

<details><summary>ハッピーオーラ</summary>
{
    "result": {
        "sentiment": "Positive",
        "score": 0.01907015064271493,
        "emotional_phrase": [
            {
                "form": "愛",
                "emotion": "安心,好ましい"
            },
            {
                "form": "恋",
                "emotion": "切ない,好ましい"
            },
            {
                "form": "しあわせ",
                "emotion": "P"
            },
            {
                "form": "好きな",
                "emotion": "P"
            },
            {
                "form": "絶望",
                "emotion": "悲しい"
            },
            {
                "form": "楽しいかい",
                "emotion": "P"
            },
            {
                "form": "大事な",
                "emotion": "P"
            },
            {
                "form": "大好きだよ",
                "emotion": "P"
            },
            {
                "form": "ハッピー",
                "emotion": "安心,喜ぶ"
            },
            {
                "form": "見上げて",
                "emotion": "好ましい"
            },
            {
                "form": "願う",
                "emotion": "P"
            },
            {
                "form": "愛があればいい",
                "emotion": "P"
            },
            {
                "form": "盛り上がれ",
                "emotion": "P"
            },
            {
                "form": "甘く香り",
                "emotion": "P"
            },
            {
                "form": "乗り越えて",
                "emotion": "P"
            },
            {
                "form": "わかる",
                "emotion": "P"
            },
            {
                "form": "希望",
                "emotion": "P"
            }
        ]
    }</details>

<details><summary>ときめき草</summary>
{
    "result": {
        "sentiment": "Positive",
        "score": 0.0011202599930816672,
        "emotional_phrase": [
            {
                "form": "ほのかな愛しさ",
                "emotion": "P"
            },
            {
                "form": "恋",
                "emotion": "好ましい,切ない"
            },
            {
                "form": "好き",
                "emotion": "P"
            },
            {
                "form": "ときめき草",
                "emotion": "P"
            },
            {
                "form": "ハッと",
                "emotion": "驚く"
            },
            {
                "form": "微笑む",
                "emotion": "P"
            },
            {
                "form": "揺れて",
                "emotion": "興奮"
            },
            {
                "form": "楽だった",
                "emotion": "P"
            },
            {
                "form": "無意識",
                "emotion": "PN"
            },
            {
                "form": "なぜかふい",
                "emotion": "N"
            },
            {
                "form": "気づいた",
                "emotion": "P"
            },
            {
                "form": "特別な",
                "emotion": "PN"
            },
            {
                "form": "どうだっていい",
                "emotion": "P"
            },
            {
                "form": "意味がある",
                "emotion": "P"
            },
            {
                "form": "わかって来た",
                "emotion": "P"
            },
            {
                "form": "古い",
                "emotion": "PN"
            },
            {
                "form": "誤解してた",
                "emotion": "N"
            },
            {
                "form": "見れない",
                "emotion": "N"
            },
            {
                "form": "そう早く",
                "emotion": "P"
            },
            {
                "form": "華やか",
                "emotion": "P"
            }
        ]
    }
</details>

<details><summary>Joyful Love</summary>
{
    "result": {
        "sentiment": "Positive",
        "score": 0.0001825228142851696,
        "emotional_phrase": [
            {
                "form": "愛",
                "emotion": "好ましい,安心"
            },
            {
                "form": "痛み",
                "emotion": "悲しい,不安"
            },
            {
                "form": "嫌",
                "emotion": "嫌"
            },
            {
                "form": "笑顔",
                "emotion": "安心"
            },
            {
                "form": "思いやり",
                "emotion": "安心,好ましい"
            },
            {
                "form": "悲しみ",
                "emotion": "悲しい"
            },
            {
                "form": "傷つく",
                "emotion": "N"
            },
            {
                "form": "恋",
                "emotion": "好ましい,切ない"
            },
            {
                "form": "しあわせな",
                "emotion": "P"
            },
            {
                "form": "邪魔",
                "emotion": "嫌"
            },
            {
                "form": "素晴らしい",
                "emotion": "P"
            },
            {
                "form": "また楽しくなる",
                "emotion": "P"
            },
            {
                "form": "辛い",
                "emotion": "N"
            },
            {
                "form": "涙",
                "emotion": "悲しい,切ない,喜ぶ,不安"
            },
            {
                "form": "微笑む",
                "emotion": "P"
            },
            {
                "form": "温かい",
                "emotion": "P"
            },
            {
                "form": "ふい",
                "emotion": "N"
            },
            {
                "form": "邪魔になる",
                "emotion": "N"
            },
            {
                "form": "わかってくれる",
                "emotion": "P"
            },
            {
                "form": "やさしさ",
                "emotion": "P"
            },
            {
                "form": "穏やか",
                "emotion": "P"
            },
            {
                "form": "ずっと難しく",
                "emotion": "N"
            },
            {
                "form": "気づいた",
                "emotion": "P"
            },
            {
                "form": "すぐ忘れた",
                "emotion": "PN"
            },
            {
                "form": "いいのか",
                "emotion": "P"
            },
            {
                "form": "温もり",
                "emotion": "P"
            },
            {
                "form": "強く",
                "emotion": "PN"
            },
            {
                "form": "誘われた",
                "emotion": "P"
            },
            {
                "form": "美しい",
                "emotion": "P"
            }
        ]
    }
</details>


<h2>まとめ</h2>
ほかにも色々な曲の歌詞を試してみましたが、ポジティブが多めでしたね。
曲の歌詞だけではなんとも言えませんが、歌詞からも滲み出る日向坂の<b>ハッピーオーラ感</b>、気になった方には是非聴いてみてほしいと思います。
あと日曜深夜1:05~『日向坂で会いましょう』もめちゃくちゃ面白いので是非見てみてください！

今後時間さえあれば乃木坂や欅坂もやってみて、比べてみたいと思います。