TALQuモデル生成手順が来たので、敢えて生声でやってみる その2

ご要望が割と多かったので、学習手順についても書いてみる。
と言っても、動画で触れられていたことの焼き増しというか引用になりそう。一応自分なりにまとめてみる。

1.準備した学習用データを自分のGoogleDriveにアップする

当たり前の話なんだけど、Googleのアカウントがないとなんともならない。
ついでに、GoogleDriveの空き容量はそれなりに必要で、生成した学習データは学習200回ごとに300MBオーバーのファイルが一つずつ増えていくことになる。容量を他で圧迫している人は注意。
10GBもいらないとは思うけど、それなりに必要かと思われる。

学習用wavデータ自体はビットレートが変更されているモノラルということもあり、そんなに大きくない。
マイドライブ/colab/tacotron2/dataset
の形になるようにフォルダを作り、datasetのなかに学習用wavファイルをいれる。GoogleDrive上で作るのが面倒な人は、自分のデスクトップとかで同じものを作ってそのままフォルダごとアップロードしてしまうのが楽ちんだ。

2.配布されているノートブックを開く

おいおい、そんなところで区切るなよ流石にわかるわ、と言われるかもしれないが、これができないとノートブック内の詳しい仕様すら読むことができないので一応解説しておく。
普通にリンクを踏むと「プレビューできません」と抜かしおる。
画面上部にある「アプリで開く」から「その他アプリを接続」があるのでそれをクリック。
いかにもStoreな画面が出るので、「Apps内を検索」に「colaboratory」と入力、黄色い∞マークが出てきたらそれをクリックし、接続。
接続完了すると、先ほどプレビューできなかったノートをcolaboratoryで開くという選択肢が増える。開いてみるとびっくり、配信してたやつと同じ画面。イェーイ。

3.ノートブックにあるスクリプトを上から順にこなしていく

いや、本当に順番に押すだけなのだが、これを読む人は右も左も分からないものとして念のため解説しておく。
ちなみに「うちのパソコン、クソザコなんだけど学習できるの?」という問いに対しては大丈夫と答えておく。実際ブラウザ上で動いているように見えるが、その実Googleのプログラミングとかする人用に貸し出されるつよつよ環境で実行したものをそこに表示しているものだと思うといい。で、その強い環境にマイドライブを外付けして、そこに学習したデータを入れてお持ち帰りする格好になる。
要は君のPCはどっかのパソコンがめっちゃ頑張ってるのを眺めるだけのパワーがあればいいわけだ。高みの見物。

「学習の実行」タブの中にあるのが本命。上から順に、まずは自分のGoogleDriveを接続する。スクリプトの実行は、マウスをかざすとそれとなく▶️ボタンが出るのでそれをクリックする。
URLが表示されるので、それをクリックし、接続のためのコードを入手する。コピーしたコードを入力欄に入れると認証する。

接続完了したら、借り物つよつよPCにtactoron2をインストールする。
借り物にインストールというのはびっくりするかもしれないが、返すときにデータは消去されるから気にせずにぶち込みます。

コードの実行が完了すると、画面下に何分かかったかが表示されます。時間が止まって完了したのを確認して、次のスクリプトを実行していきます。
途中エラーっぽい文字が出るかもしれませんが、動くので気のせいです。ヨシ。

最後、学習実行を押した段階でエラーが出た場合は、前回の記事で準備したデータファイルに不備があるか、保存場所を間違えているとかそんなことがあります。ちなみにファイル抜けしていると多分動いてくれない雰囲気です。

4.学習したそのあと

学習が開始されたら、容量の続く限り永遠と学習が実行されるので、程よいところで止めましょう。checkpointが6000を超えてきたら一回止めていいと思います。データセットがそんなに多くないので、学習のやりすぎになります。

出来上がったものは、マイドライブ/colab/tacotron2/outdir に格納される。
これ自体がTALQuモデルそのものである。早速使ってみよう。
TALQu本体は予め自分のPCにインストールしておくことを推奨する。

学習の良し悪しなどは人によって違うだろうが、とりあえずcheckpoint5000くらいのファイルをDLしてみよう。拡張子がついていないので、「.pt」をファイル末尾につけておく。
TALQu/Models のフォルダの中に新しくフォルダを作り、その中にcheckpoint5000.ptとHaruqaモデルの中にあるConfig.csvをコピーして入れておく。フォルダ名がソフト中に表示される音源名になる。
csvの構造は単純なので、メモ帳でも編集できる。読み込むモデル本体の名前をcheckpoint5000.ptに変更しておく。
これでTALQuで鳴らせる準備は整った。

5.実際にテストする

お待ちかねのテストタイム。音源をとって出音を確認する瞬間というのはいつになってもワクワクドキドキというやつでございます。

調子に乗って長文を打ち込むと、めちゃくちゃ時間がかかりますのでご注意を。ここで頑張るのはGoogleのつよつよPCではなく貴方のおうちのPCです。

きちんと喋りましたか? 日本語ではない日本語みたいな謎の音声が出てしまった方はどこかでwavのラベルがずれています。悲しいですがファイルのラベリングからやり直しです。
シャベッタアアアアという方は、他のcheckpointと聴き比べしながら、一番声質とアクセントのバランスが取れたものを選びましょう。

6/6追記

留意点

学習に使用する「FlatBaseModel」について
先ほどポチポチするだけと言っておいてなんですが、学習させる際にその基礎となるモデルがあります。学習で使用する際に「FlatBaseModelを利用して作成された旨を表示する義務」があります。
作成したモデルを配布する場合は、利用規約に必ず組み込みましょう。
以下規約文引用。

FlatBaseModel利用規約
学習のベースモデルとして使用することを前提としています
そのほかの使用はNGです
このモデルを使用して作成されたモデルには、このモデルを使用した旨を表示する義務があります
表示例:このモデルはFlatBaseModel ( https://github.com/Haruqa/tacotron2/releases ) をベースとして作成されました
このモデルを使用して作成されたモデルをさらにベースとする場合も、同様に表記する義務があります
表示例:このモデルのベースにはFlatBaseModel ( https://github.com/Haruqa/tacotron2/releases ) を含みます
このモデルを使用して作成されたモデルから出力した音声に、上記表示義務は継承されません

いかがだったでしょうか。
あまり他人が解説し切ったものを揚げ足とるように解説するのは好きではないのですが、誰かの一助になれば幸いです。

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