musyoku
musyoku
you should change network architecture and hyperparameter(dropout, learning rate, optimizer, number of hidden layers, hidden layer dimention, etc)
my implementation does not support variational dropout. I don't know if variational dropout will help.
こんにちは。 私はwavenetの開発者ではなく、実際に運用したこともないのであまり断言はできませんが、私の回答は以下のとおりです。 >wavenetとは複数の音声を学習させることによって任意の音声を生成することが出来る技術なのでしょうか? wavenetは基本的に、入力された音声信号列(生の波形データ)から、次の信号を予測するモデルです。 予測した信号を入力信号列に追加し、これを新たな入力としてまた次の信号を予測する、といった操作を繰り返すことで音声を生成します。 論文ではtext to speechへの応用も書かれており、入力音声と入力テキストから次の信号を予測するモデルが提案されています。 このモデルではテキストデータとその読み上げ音声を学習データに用いることで任意の音声の生成が可能です。 ただし、任意の音声を生成するためには大規模な訓練データセットが必要です。 >生成される音声は学習させる音声データに依存するのでしょうか? たとえばピアノ曲で学習したwavenetに人間の音声を生成させることは不可能です。 女性の音声データで学習すると、生成される音声は全て女性の声になります。 用意した音声データセットが小さいと似たような音声しか生成されないと思います。 複数人の音声で学習する場合は、話者ごとに条件付けして学習することで、生成される音声の話者をコントロールすることは可能です。 >最後になんですが、生成した音声でテキストを読ませることは可能なのでしょうか? テキストを入力して読み上げ音声を生成するということでしょうか? 可能ですが、どの程度の訓練データ数が必要なのかが私にもよく分かりません。 DeepMindのサイトで実際の生成例を聞くことができますが、数十時間程度の量の読み上げ音声データセットで学習しているようです。 日本語音声を生成したい場合は、充分な量の日本語音声と日本語の書き起こしデータが必要になります。 また話者を統一したデータでないと、綺麗な音声を生成できません。 声優統計コーパス( http://voice-statistics.github.io/ )などがありますが、これではデータが少なすぎると思います。 #### 技術的な部分について 余談ですが、wavenetは学習・生成ともに計算負荷が高く、リアルタイムな生成は不可能です。 学習についても、個人レベルの計算機環境では月単位の時間がかかると思います。
私の実装では音声のランダムな生成は可能ですが、入力文字列の読み上げ音声の生成(text to speech)はできないため、生成される音声をコントロールすることはできません。 というのも、wavenetの論文には実装に必要な情報がほとんど書かれておらず、他の方の実装を見ても単純な生成のみ実装されていて、text to speechの部分が未実装のものが多いです。 私自身も実装しようと思っていましたが、どのようにすれば良いのか全く分からず断念しました。
Hi. I made all graphs with Adobe Illustrator. And training data is music audio of 12 seconds from YouTube. (downsampled to 8000Hz). https://www.youtube.com/watch?v=5OGAarORarc The WaveNet is quite expensive to train...
おそらくChainerのバージョン1にusing_configがないことが原因だと思います。 Chainerのバージョンを2にするか、`with chainer.using_config("train", True):`の行を削除すると動くと思います。
1. `train.py`は入力された音声信号列から次の時刻の信号を予測できるように学習するものです。 2. 学習が不十分な可能性があります。経験上lossがかなり小さく(0.001以下)ならないとうまく生成できませんでした。また用意した音声に無音部分があると、無音から無音を予測するモデルになってしまい、音声生成がうまくいかないケースがありました。できるだけ学習用の音声から無音部分を取り除く必要があります。他の方のTensorFlow実装などをみると、学習に用いた音声の冒頭部分をヒントとして与えて、その先を生成させる手法を用いているものがありましたが、おそらく無音から出発するとうまく生成できない場合があったのではないかと思います。私の実装では無音に相当する信号からスタートしてその先を生成していくものなので、学習に失敗していると無音状態から抜け出せず何も生成されない現象が起きます。 また生成される音声は学習に用いた音声によります。私の場合はファミマの入店音を使っただけで、別の音声を用意して学習させればその音声を生成できるようになります。 ファミマの入店音程度のごく短い音声の場合でも、GTX1080で数十分学習させないと生成できませんでした。 3. `_tests_`はデバッグ用に作ったものなので学習には使いません。
there are probably empty lines in your text file
Fixed, thank you.
I tried `make install` on my current MacBook (Mojave) ``` brew upgrade python3 brew upgrade boost-python3 ``` ``` $ python3 --version Python 3.8.5 ``` I edited makefile as follows ```...