ml5でお前の湯婆婆はホンモノ婆婆かニセモノ婆婆か判定してやろう

#いまからお前の名は千だ
最近Qiita界隈で湯婆婆が流行っているようですね。
これだけ流行ると、__「僕/私も湯婆婆になってみたい！！」__と憧れる人もいるのではないでしょうか。
__ないですか！そうですか！__

千と千尋で有名なセリフというと色々あると思いますが、やはり
__「いﾋまからお前の名は　ﾝ千だ」__
でしょう。「千だ」の前にちょっとしたタメがあるのがポイントです。

今回は、__自分の湯婆婆がホンモノ婆婆かニセモノ婆婆か判定するWebアプリ__を実装してみました。
[前回の焼き直し感](https://qiita.com/canonno/items/964b9ff613ced1b217c2)が否めませんがやってみたくなってしまったので許してください。
是非湯婆婆になり切ってトライしてくださいね。

Appは[こちらから](https://honmonobaaba-or-nisemonobaaba-dayone.ml/)

#完成デモ
##婆婆判定
「お前も元の世界には戻れないよ」をクリックすると湯婆婆のセリフが始まります。
緊迫したシーンですね。
湯婆婆の指から炎がﾎﾞｳｯとともった音が聞こえたら全力で「__いﾋまからお前の名は　ﾝ千だ__」と演じてみてください。
判定はこの部分のみで行い、その結果を画面に出す形になります。

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">湯婆婆が流行っているようなので、自分の湯婆婆がホンモノ婆婆なのかニセモノ婆婆なのかを判定するWebアプリ作りました。今からお前の名は千です。<a href="https://twitter.com/hashtag/protoout?src=hash&amp;ref_src=twsrc%5Etfw">#protoout</a> <a href="https://twitter.com/hashtag/%E6%B9%AF%E5%A9%86%E5%A9%86?src=hash&amp;ref_src=twsrc%5Etfw">#湯婆婆</a> <a href="https://t.co/6Y74sFBjMY">pic.twitter.com/6Y74sFBjMY</a></p>&mdash; canonno @12/7-12/21クラファンやります (@canonno_blog) <a href="https://twitter.com/canonno_blog/status/1330829317547335680?ref_src=twsrc%5Etfw">November 23, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

##ホンモノ婆婆だった場合
__ホンモノ婆婆だった場合は「湯婆婆」、ニセモノ婆婆だったときは、どう婆婆だったのかを知るために「低婆婆」「高婆婆」のどちらかを出力するようにしています。__
それぞれ湯婆婆より音程が低い場合は「低婆婆」、高い場合は「高婆婆」と出力されます。
基本的に湯婆婆の音程を基準に湯婆婆っぽさを実装している（つもりではある）ので、結果をみつつ湯婆婆を掴んでいただければと思います。

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">判定は湯婆婆のセリフの音程を基準にし（ようとし）ました。湯婆婆と同じぐらいのトーンでセリフが言えていれば湯婆婆です(？)。外部マイクが録音できてませんが、この動画を取るために全力で湯婆婆してます。<a href="https://twitter.com/hashtag/protoout?src=hash&amp;ref_src=twsrc%5Etfw">#protoout</a> <a href="https://twitter.com/hashtag/%E6%B9%AF%E5%A9%86%E5%A9%86?src=hash&amp;ref_src=twsrc%5Etfw">#湯婆婆</a> <a href="https://t.co/4SOovBbzVC">pic.twitter.com/4SOovBbzVC</a></p>&mdash; canonno @12/7-12/21クラファンやります (@canonno_blog) <a href="https://twitter.com/canonno_blog/status/1330829843248738307?ref_src=twsrc%5Etfw">November 23, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

##ニセモノ婆婆だった場合
先ほど示した通り、湯婆婆より音程が低い場合は「低婆婆」、高い場合は「高婆婆」と出力されます。
実装してから思いましたが、男性は湯婆婆より声が低いので「低婆婆」ばっかりでるかもしれません。
__そのあたりは頑婆婆してください。__

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">ニセモノ婆婆の時は、どうニセモノだったのかを知るために、音程が低い「低婆婆」か音程が高い「高婆婆」かを出力します。作ってから思ったんですが男性はどうやっても「低婆婆」ってでる危険性がある気がします。頑婆婆しましょう。 <a href="https://twitter.com/hashtag/protoout?src=hash&amp;ref_src=twsrc%5Etfw">#protoout</a> <a href="https://twitter.com/hashtag/%E6%B9%AF%E5%A9%86%E5%A9%86?src=hash&amp;ref_src=twsrc%5Etfw">#湯婆婆</a> <a href="https://t.co/5AZxLZP7Gc">pic.twitter.com/5AZxLZP7Gc</a></p>&mdash; canonno @12/7-12/21クラファンやります (@canonno_blog) <a href="https://twitter.com/canonno_blog/status/1330830353485885440?ref_src=twsrc%5Etfw">November 23, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

##お手本を聞く
湯婆婆がどんな婆婆だったか忘れてしまったときは「お手本を聞く」をクリックしてください。
湯婆婆さんのお手本を聞くことができるので、__しっかり湯婆婆を掴んでいきましょう__。

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">湯婆婆がどんな婆婆か分からないときは、お手本を聞いて自分の婆婆を湯婆婆にしましょう。ゲシュタルト崩壊してきました。 <a href="https://twitter.com/hashtag/protoout?src=hash&amp;ref_src=twsrc%5Etfw">#protoout</a> <a href="https://twitter.com/hashtag/%E6%B9%AF%E5%A9%86%E5%A9%86?src=hash&amp;ref_src=twsrc%5Etfw">#湯婆婆</a> <a href="https://t.co/3F4DIczFlx">pic.twitter.com/3F4DIczFlx</a></p>&mdash; canonno @12/7-12/21クラファンやります (@canonno_blog) <a href="https://twitter.com/canonno_blog/status/1330830673431523329?ref_src=twsrc%5Etfw">November 23, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

#実装こまごま
##学習データの用意
Youtubeにあった湯婆婆の音源をもとに学習することは決まっていたんですが、不正解データをどうするか悩みました。
前回同様、正解データを湯婆婆、不正解データを私の生声にすると、__男女で正解不正解が分かれてしまう可能性があるなぁと__。

なので今回は楽曲編集ソフトのGarage Bandを活用して、__もとの湯婆婆の声からキーを変えたものを作りました__。
イメージとしては、声の高い湯婆婆として「+3」「+2」「+1」だけキーを変えたもの、声の低い湯婆婆の音源として「-3」「-2」「-1」だけキーを変えたものを用意。
「Garage Bandでそんなことできるの！」という方は[こちらの記事](https://sleepfreaks-dtm.com/garageband/change-the-key/)をご覧ください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/666990/fc6c60aa-a103-2f3c-e2a4-4327c485d789.png)
△僕の湯婆婆フォルダ



##学習操作
今回も[前回の記事](https://qiita.com/canonno/items/964b9ff613ced1b217c2)同様、Teachable Machineで実装しています。
ホンモノorニセモノシリーズにはもってこいのツールですね。
是非是非一度はハンズオンしていただければ、と思います！

もうひたすら再生＆サンプリングしています。
例のごとく学習データが少ないので判定がｶﾞﾊﾞｶﾞﾊﾞだと思います。
でもそこを乗り越えてこそ、ホンモノの湯婆婆だと信じています（適当）

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">湯婆婆の学習操作<br>声を聞きすぎて夢に出てきそうです。<a href="https://twitter.com/hashtag/protoout?src=hash&amp;ref_src=twsrc%5Etfw">#protoout</a> <a href="https://twitter.com/hashtag/%E6%B9%AF%E5%A9%86%E5%A9%86?src=hash&amp;ref_src=twsrc%5Etfw">#湯婆婆</a> <a href="https://t.co/w7cRMNfRng">pic.twitter.com/w7cRMNfRng</a></p>&mdash; canonno @12/7-12/21クラファンやります (@canonno_blog) <a href="https://twitter.com/canonno_blog/status/1330834705919295488?ref_src=twsrc%5Etfw">November 23, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

##実装など
この辺りは[前回の記事](https://qiita.com/canonno/items/964b9ff613ced1b217c2)をご覧ください。
前回は二値分類でしたが今回は多値分類、というぐらいの違いなので基本的な構造は同じです。
余談ですが、変数の命名がyubaabacountとかcheckyubaabaとかtakabaabacountとかになるのなんか面白かったです。

#余談：湯婆婆でハモってみた
今回Garage Bandを使ってキーを変えていきました。
ちょっと魔が差して湯婆婆の声でハモるとかできるんじゃないか？と思い、怖い物見たさでやってみました。
夢に出てきそうな怖さです。

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">湯婆婆の声でハモったら夢に出てきそうなぐらい怖くなった<a href="https://twitter.com/hashtag/protoout?src=hash&amp;ref_src=twsrc%5Etfw">#protoout</a> <a href="https://twitter.com/hashtag/%E6%B9%AF%E5%A9%86%E5%A9%86?src=hash&amp;ref_src=twsrc%5Etfw">#湯婆婆</a> <a href="https://t.co/ixnGxcsnzb">pic.twitter.com/ixnGxcsnzb</a></p>&mdash; canonno @12/7-12/21クラファンやります (@canonno_blog) <a href="https://twitter.com/canonno_blog/status/1330836040114835456?ref_src=twsrc%5Etfw">November 23, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

#今後やりたいこと
ウルトラソウルとニセモノソウルのやつもバカアプリとして結構反響が良いので、このシリーズを続けてみようかなあと思い始めました。
その第二弾としての湯婆婆です。
また何かバカアプリ思いついたら作ってみようと思います。

最後まで読んでいただきありがとうございました！
是非是非LGTMしていただけると励みになります！
よろしくお願いいたします！！