AIで「ゆっくりダビデ先生」を作る【RVC v2】

# はじめに
みなさんこんにちは！
ドワンゴのNekoNekkoと申します。
普段は [N予備校](https://www.nnn.ed.nico/) で収録・編集・配信などを行っています。

今回の記事ではN予備校プログラミング講師 折原ダビデ竜先生ご協力のもと、AIを使ったボイスチェンジャー 
**「ゆっくりダビデ先生」** を作成してみます。

╭━━━━━━━━━━━━━╮
　ゆっくりしていってね！！！
╰━━━━━━ｖ━━━━━━╯
<img width="250px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3635359/96c53f3f-1faf-fbeb-e23c-4e1c67846be1.png">

# AIボイスチェンジャーって何？
AIボイスチェンジャーを知らない方のために簡単に説明すると、
<font color="red">**特定のキャラの声になれる技術**</font>です。

ドワンゴでは [SeirenVoice](https://seiren-voice.dmv.nico/) という製品にもなっております。

AIボイスチェンジャーには多くの種類がありますが、今回はRVC v2にダビデ先生の声を学習してもらい、どのくらいの精度が出るのか確認してみます。

※使い方については詳しく解説しませんのでご了承ください。


# ダビデ先生の声を収集
まずは学習元となるダビデ先生の声を収集していきます。
今回はダビデさんが30分間喋っている音声を用意しました。

<img width="300px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3635359/23d7beeb-abdf-d78f-5feb-02e8cbc5a240.png">


学習用に用意した音声ではないため、そのままでは学習に適しません。
音声編集ソフトを使用し、簡単に整音していきましょう。
(無料で使える [Audacity](https://forest.watch.impress.co.jp/library/software/audacity/) が便利です)

整音のポイントは以下の通りです。
+ 環境音やリップノイズを減らす
+ 無音になっている箇所はカットする
+ ファイルが複数の場合はサンプリングレートを統一する

整音が終わりましたら10秒ほどの短い音声ファイルに分割して準備完了です。

<img width="300px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3635359/6258f44f-f315-a70c-e8ec-ea117096ba8f.png">

今回は100ファイル程に分割しました。


# ダビデ先生の声を学習
音声ファイルが用意出来たのでRVCを使用して学習していきましょう。
学習にはRTXシリーズなど比較的新しいGPUが必要ですが、お持ちでない方は無料でも使えるGoogle Colabでの学習も可能です。
> [引用](https://research.google.com/colaboratory/faq.html?hl=ja#:~:text=Colaboratory%EF%BC%88%E7%95%A5%E7%A7%B0%3A%20Colab%EF%BC%89%E3%81%AF,%E3%81%AB%E7%89%B9%E3%81%AB%E9%81%A9%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82)
Colaboratory（略称: Colab）は、Google Research が提供するサービスです。 Colab では、誰でもブラウザ上で Python を記述、実行できるため、機械学習、データ分析、教育に特に適しています。

AIに学習させる上で大事なのが「一つの訓練データの学習回数を表す」 **エポック数** です。

<img width="300px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3635359/d62f5a7c-c272-b38f-9e20-29b4130967b8.png">

勉強に例えると
 **「同じ参考書の問題を何回覚えてから試験に臨みますか？」** というイメージです。
回数が少なければ当然試験で良い点数は取れません。
しかし同じ問題を多く覚えたところで、全く違う問題が出題されたら間違える可能性が出てきますよね？

<img width="300px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3635359/bb8c30c6-b273-fb7c-4db1-13f8d33b0050.png">

よく言われる <font color="red">過学習</font> がこれにあたります。

今回はダビデ先生の音声を 50回 覚えてもらう様に設定しました。

# テキスト合成を試してみる
学習出来たファイルを試してみましょう。
RVCには元々モデル推論という音声ファイルを変換する機能は行えるのですが、

＿人人人人人人人人人人人人人人人人人人人＿
＞　ゆっくりと言えばテキスト読み上げ！　＜
￣Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^^Y^￣

そこで今回は [RVC Text-to-Speech WebUI](https://github.com/litagin02/rvc-tts-webui) を利用してみます。
これはGPUがなくても使える様です。
(CPUのみで動かしたことがないため、使えなかったらごめんなさい)

<img width="500px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3635359/76f70919-6c48-2623-dba3-1ec90a00ca9c.png">

実際に読み上げた音声がこちらです。
<iframe width="560" height="315" src="https://www.youtube.com/embed/jXKZwSgNdmQ?si=MEPPY9DaahrILJXN" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

# まとめ
いかがだったでしょうか。

今回紹介したRVCはAI界隈では決して新しい技術ではありません。
この様にAIを利用した技術は認知度の高いChatGPT以外にも日々進歩しています。

最近ではAIを利用したコンテンツの問題も多く出ていることから、これまで以上に情報リテラシーを持つことが大事になっていきます。

今回紹介したRVCでも<font color="red">**許可なく他人の声を学習させることは行わない様にしましょう。**</font>

また、こういった最新技術を試すには **Python** や **GitHub** の知識も最低限は必要です。

[N予備校のプログラミング入門コース](https://www.nnn.ed.nico/pages/programming/) では授業やテキスト教材を通じてこれらの知識を学ぶことが出来ますので、これからもご活用いただけると嬉しく思います！

# おまけ
今回作成した「ゆっくりダビデ先生」の学習データを
[プログラミング入門コースのSlack](https://progedu.slack.com/archives/C028B1JL7FW/p1702349693907519) にて配布いたします。
ご興味のある方は使ってみて下さい。

╭━━━━━━━━━━━━━╮
　ルールを守って楽しく使おう
╰━━━━━━ｖ━━━━━━╯
<img width="250px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3635359/96c53f3f-1faf-fbeb-e23c-4e1c67846be1.png">