見出し画像

合成音声を作ってみよう!~その4~

どうも。にーちぇです。みなさまいかがお過ごしでしょうか?
最近めっきり寒くなってきましたね。
年末年始はあんなに暖かったのに、気温の変化エグすぎないですか!?

毎日暖房フル稼働して家計は火の車。懐は寒いし外気温も激寒。
布団だけがぬくぬくで、おかげで毎日遅刻寸前。同僚からは冷たい目で見られ……
とまぁ寒暖差ギャグはこれくらいにしておきます。

そしてついこの前、共通テストが行われたみたいですね。
…あぁ、自分たちの世代では センター試験 と呼んだ方がわかりやすいかもしれないですね。

ちなみに、共通テストの正式名称は 大学入学共通テスト
センター試験の正式名称は 大学入試センター試験

大学入"学" と 大学入"試" ってさぁ…。
そこを変えた理由は何なんだい???🤔🤔🤔

そしてセンター試験が共通テストに変わ………



………え?つまらないから早く本題へ入れ、って?
はい。



本題に入ります。

前回は、録音した音声データをAudacityで編集したところで終わったかと思います。
今回は、機械学習編!


…実はこの「合成音声を作ってみよう!」ですが、
今回が最終回になります。
最終回になってしまいました。

本当は全10パートくらいの超大作にするつもりだったんですけどね。
思いの外サクっと完成してしまいました。
MYCOEいいですよ。みなさんもやってみてはいかがでしょう?

さて、前置きが長くなってしまいました。
でも、前置きが長くなってのにも理由があるんです。勘のいい皆さんならこの一言で察したことでしょう。

実はこの機械学習編、やることがそんなにありません!!!

Google Colaboratory を用いるのですが、手順通りやっていけば問題ありません。
(~その1~準備編で用意した空き容量のあるアカウントはここで連携させます。)

ちなみに、前回の音声加工作業編で余計な無音部分も削りましたが、ここで削ってくれる行程もありました。自分は使いませんでしたが。

[音声の前処理] 項目


モデルの作成のための環境構築2では、ベースとなる声のタイプを選択します。
選択肢はmodel1~3の3つ。
model1は綺麗めの声、model2は落ち着いた声、model3は可愛い声になるみたい。
自分はmodel2にしたけど、他のmodelを選択したらどうなるのかはちょっと興味ありますね。

[モデルの作成のための環境構築2] 項目



そして始まるモデルの学習スタート…!

Google Colaboratory を用いて学習させます。
学習自体はクラウドサーバー上で行うのでこちらのPCのスペックに影響しないところが素晴らしい。

そして、クオリティを安定させるには50epoch以上の学習が必要みたいです。

……epochって何?

すみません、説明し忘れていました。epochは学習の単位だそうです。
Google Colaboratory で録音した音声データを全部ひととおり(自分の場合は652)学習しますよね。
これを、高校生が数学の青チャートを一冊勉強することとします。
epochはこれの単位です。
頑張っていい大学に受かりたい受験生が、青チャートを一周するだけで、満足するでしょうか?いや、満足しません。

…………あ、今のは勉強の話題になぞらえた反語ジョークです。
やかましいわ!

話を戻します。
当然、受験生は青チャートを何度も何度も周回します。
同じようにMYCOEも学習をします。
そしてその学習の結果が安定するのに必要な学習量が、50epoch以上というわけですね。

なんと、ここで共通テストの伏線を回収!

※ちなみに、MYCOEのコードでは最大100epochまでしか学習できないそうです。

なので、学習を開始させたら、ブラウザを閉じないてGoogle Colaboratoryくんが頑張って学習するのを見守ってあげましょう。

学習している様子


見守ってあげましょう、と書きましたが、実際は見守らなくて大丈夫です。PCを放置してゲームでもしていましょう。お風呂に入るのもいいですね。
たま~に、[I'm not a robot]というチェックボックスが出現するときがありますが、そのときはチェックしてあげましょう。

I'm not a robot


そしてこの学習ですが、一度では決して終わりません。
Google Colaboratory は連続して使える時間に制限があるからです。
(課金すると無限に連続して使えるみたい。お金って偉大だね。)

時間制限が来てRuntimeが切断されてしまったら、その日は諦めて翌日作業を再開してみてください。

制限時間が来たら、このメッセージが表示されます。


自分は大体1週間くらいかけて学習させましたね。最終進捗は56epoch。
暇を見つけてもっと学習させようとは思っています。



コードを進めていく過程でエラーが発生したんだけど!?

MYCOEの実行コードを下にスクロールしていくと、よくある質問みたいなのがあるのでそこを探してみてください。
なければ、諦めてください。


えぇ、、そんなぁ~~~~~


そういうときは、Runtimeを切断→再接続させてみたり、
Google Drive 生成されたデータやファイルを一度全部削除して、最初からやりなおすといいみたい。
一度学習に成功したら、その後エラーが発生することはないんじゃないかな。多分。聞いたことないし。



そして、遂に完成しました!!!!!

結果は、予想以上に自分の声でした!生成した音声を再生したときは思わず笑っちゃったよ。

最後になりますが、皆さんも是非やってみてください。
自分の声が合成音声になるのって、結構面白いですよ。

ちなみに配布はしませんが、機会があれば動画内で使っていこうと思います。

どんな動画か気になるって??👂
どんな音声に仕上がったか聞いてみたいって???👂

自分の動画投稿ページを載せておくので、是非フォローなどしてみてはいかがでしょうか。(ダイレクトマーケティング)


それでは!

この記事が気に入ったらサポートをしてみませんか?