機械学習でダメ絶対音感を再現する ~機械でウマ娘声優予想はできるのか~
こんにちは、tube_worm です。
さて、唐突ですがぼくは声優の相坂優歌さんを応援しています。この相坂優歌さんが参加しているプロジェクトにウマ娘というものがあります。簡単に言うと競走馬の擬人化です。詳細は公式サイトを見てください(自分も詳細はよくわからない)。
このウマ娘なのですが、すでに18キャラクターが公開されており、それぞれのソロ曲やユニット曲なども発売されています。これはブログの本筋とは関係ないのですが、相坂優歌さん演じるナリタブライアンのソロ曲「シャドーロールの誓い」がクッソエモいのでオタクは聴け。これはマスト*1。
さて、本筋に戻りますと、この18キャラ以外に追加で41キャラクターが、元ネタとなった競走馬(すなわちキャラクターの名前)のヒント・サンプルボイスともに公開されています。正解発表は7/1のイベントで行われるということです。今日ですね。はい、ぎりぎりです。
ここでオタクのみなさんは思いつくのではないでしょうか?
「サンプルボイス公開されてるなら CV 当てられるんじゃね?」
そう、ダメ絶対音感というやつです。
しかしここでぼくはこう考えてしまいました。
「普通にオタクがサンプルボイス聞いて CV 予想するだけじゃただのオタクだよな~」残念なくらい逆張りです。というかオタクじゃないので全然 CV 予想つきません。耳が腐っている。いや25番が藤田茜さんとかはさすがにわかるけど*2。→外してたので耳を削ぎ落しました。
というわけで今回の趣旨です。
「機械学習を用いて、未知のキャラクターボイスから声優の判別ができる判別機『声豚くん』は作製できるのか?」
流れ
結果
声豚くんはダメダメでした。
流れの一つ目、既知のキャラ判別がまずボロボロだったので追加キャラの予想は諦めました。……結果としてはうまく判別できなかったのですが、「はい、うまくいきませんでした、おわり」では身も蓋もないのでまあ今回とりあえずできたこと、結果と改善点なんかを適当に述べていきたいかと思います。
なにはともあれ結果です。
縦軸にキャラクター名、横軸に声優名をとって、それぞれのキャラクターがどれくらいの確率でどの声優に判定されたかをプロットしています。本来のCVが正確に予測できていれば左上から右下にかけて対角線上に濃いプロットとなるはずですが……う~~ん、微妙。
教師データ
特徴量など詳細は以降の記事に任せますが、まずは学習用の教師データが必要です。教師データとはすなわち声豚くんに対して「この声は声優の~~の声だよ」と教えてあげるものです。声豚くんはこの教師データを元にして未知の声を分類していきます。声豚くんを一人前の声優オタクに仕上げましょう。
今回は教師データとして、声優事務所のサンプルボイスを使いました。前田玲奈さんはサンプルボイスがなかったので、前田玲奈さん演じるグラスワンダーは使用しませんでした。