mirror of
https://github.com/w-okada/voice-changer.git
synced 2025-02-04 01:03:53 +03:00
299 lines
8.4 KiB
Plaintext
Executable File
299 lines
8.4 KiB
Plaintext
Executable File
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {
|
|
"id": "qjxnLNp4TAqD"
|
|
},
|
|
"source": [
|
|
"# MMVC Trainer\n",
|
|
"ver.2022/08/10"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {
|
|
"id": "N0DqCHlOTVEm"
|
|
},
|
|
"source": [
|
|
"## 1 概要\n",
|
|
"「Google Colaboratory」を利用してMMVCで利用するVITSの学習を行います。"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {
|
|
"id": "GE7TpicbUPdz"
|
|
},
|
|
"source": [
|
|
"## 2 Google Drive をマウント\n",
|
|
"**Google Drive にアップロードした MMVC_Trainer を参照できるように、設定します。**\n",
|
|
"\n",
|
|
"「このノートブックに Google ドライブのファイルへのアクセスを許可しますか?」 \n",
|
|
"といったポップアップが表示されるので、「Google ドライブに接続」を押下し、google アカウントを選択して、「許可」を選択してください。 \n",
|
|
"成功すれば、下記メッセージが出ます。 \n",
|
|
"```\n",
|
|
"Mounted at /content/drive/\n",
|
|
"```\n"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"id": "Dg93D-60nqYK"
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"from google.colab import drive\n",
|
|
"drive.mount('/content/drive')"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {
|
|
"id": "4G4TAHzvUZY6"
|
|
},
|
|
"source": [
|
|
"cdコマンドを実行して、マウントしたGoogle Drive のMMVC_Trainerディレクトリに移動します。 \n",
|
|
"%cd 「MMVC_Trainerをgoogle driveにパップロードしたパス」 \n",
|
|
"としてください。 \n",
|
|
"\n",
|
|
"正しいパスが指定されていれば\n",
|
|
"```\n",
|
|
"-rw------- 1 root root 11780 Mar 4 16:53 attentions.py\n",
|
|
"-rw------- 1 root root 4778 Mar 4 16:53 commons.py\n",
|
|
"drwx------ 2 root root 4096 Mar 5 15:20 configs\n",
|
|
"```\n",
|
|
"\n",
|
|
"...といった感じに表示されるはずです。"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"id": "kwRuNkLEn5QH"
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"%cd /content/drive/MyDrive/\n",
|
|
"!ls -la"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {
|
|
"id": "5FTEcWtXUdKH"
|
|
},
|
|
"source": [
|
|
"## 3 GPUの確認\n",
|
|
"GPUの確認を行います。 \n",
|
|
"割り当てられたGPUのメモリーを確認し、それに合わせてconfigファイルの\"batch_size\"を指定してください。 "
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"id": "uSMdNq2rn4_G"
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"!nvidia-smi "
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {
|
|
"id": "Cn0fxtiQUifh"
|
|
},
|
|
"source": [
|
|
"## 4 必要なライブラリのインストール\n",
|
|
"\n",
|
|
"何も考えず実行してください。\n",
|
|
"\n",
|
|
"結構時間かかります。"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"id": "LWceuYPPn7UN"
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"!apt-get install espeak\n",
|
|
"!pip install Cython==0.29.21\n",
|
|
"!pip install librosa==0.8.0\n",
|
|
"!pip install matplotlib==3.3.1\n",
|
|
"!pip install numpy\n",
|
|
"!pip install phonemizer==2.2.1\n",
|
|
"!pip install scipy==1.5.2\n",
|
|
"!pip install tensorboard==2.3.0\n",
|
|
"!pip install torch==1.10.0+cu113 torchvision==0.11.3+cu113 torchaudio===0.10.0 -f https://download.pytorch.org/whl/cu113/torch_stable.html\n",
|
|
"!pip install Unidecode==1.1.1\n",
|
|
"!pip install retry\n",
|
|
"!pip install tqdm\n",
|
|
"!pip install resampy==0.2.2"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {
|
|
"id": "uO1cMVm2UuaZ"
|
|
},
|
|
"source": [
|
|
"## 5 tensorboardの起動\n",
|
|
"とりあえず実行しておいてください。"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"id": "4k3EKZNPn82i"
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"# Load the TensorBoard notebook extension\n",
|
|
"%load_ext tensorboard"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"id": "0VAw8j3ln-iq"
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"%tensorboard --logdir logs --port 5000"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {
|
|
"id": "burdlftQVFOA"
|
|
},
|
|
"source": [
|
|
"## 6 学習を実行します\n",
|
|
"-c configファイルのパス \n",
|
|
"Create_Configfile.ipynb 等で作成したconfigファイル(json)を指定してください。 \n",
|
|
"`configs/****.json`\n",
|
|
"のような値になります。 \n",
|
|
"\n",
|
|
"-m modelの保存先ディレクトリ \n",
|
|
"**ディレクトリ名を直接指名してください。** \n",
|
|
"\n",
|
|
"-fg にFine tuningのベースとなるG_xxxx.pth のpathを指定してください。 \n",
|
|
"-fd にFine tuningのベースとなるD_xxxx.pth のpathを指定してください。 \n",
|
|
"**よくわからないよって人は** \n",
|
|
"-fg fine_model/G_180000.pth -fd fine_model/D_180000.pth \n",
|
|
"のままにしておいてください。\n",
|
|
"\n",
|
|
"2回目以降の実行の場合は自動的に-mで指定したディレクトリの最新のモデルから学習を再開します。 \n",
|
|
"**必ず学習を再開するときは-fgと-fdのオプションを削除してください**\n",
|
|
"\n",
|
|
"Ex)!python train_ms.py -c configs/jsontest.json -m 20220306_24000"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"id": "cf1XrJG2n_7N"
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"!python train_ms.py -c configs/train_config_zundamon.json -m 20220306_24000 -fg fine_model/G_180000.pth -fd fine_model/D_180000.pth"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {
|
|
"id": "oY0o1KKI0P5r"
|
|
},
|
|
"source": [
|
|
"学習を再開するときのコード例です。 "
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"id": "S3eHzCwI0NsB"
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"!python train_ms.py -c configs/train_config_zundamon.json -m 20220306_24000"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {
|
|
"id": "C3NsBidtNni1"
|
|
},
|
|
"source": [
|
|
"### ずんだもん以外の話者の学習を行う場合、下記セルを実行して、初回の学習を開始してください。"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"id": "G0UbcymeNni1"
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"!python train_ms.py -c configs/train_config.json -m 20220306_24000 -fg fine_model/G_180000.pth -fd fine_model/D_180000.pth"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "markdown",
|
|
"metadata": {
|
|
"id": "jZdypzvVNni2"
|
|
},
|
|
"source": [
|
|
"ずんだもん以外の話者の学習を再開するときのコード例です。"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"metadata": {
|
|
"id": "qoNP1eX1Nni2"
|
|
},
|
|
"outputs": [],
|
|
"source": [
|
|
"!python train_ms.py -c configs/train_config.json -m 20220306_24000"
|
|
]
|
|
}
|
|
],
|
|
"metadata": {
|
|
"accelerator": "GPU",
|
|
"colab": {
|
|
"collapsed_sections": [],
|
|
"name": "Train_MMVC.ipynb",
|
|
"provenance": []
|
|
},
|
|
"kernelspec": {
|
|
"display_name": "Python 3.9.6 64-bit",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"name": "python",
|
|
"version": "3.9.6"
|
|
},
|
|
"vscode": {
|
|
"interpreter": {
|
|
"hash": "d3394867249fd41ee68869925f4586b97ae8a94f3c93a4c25403e9e75f272611"
|
|
}
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 0
|
|
}
|