首先,對於PYTHON的使用者,我建議使用ANACONDA進行環境設定與選用。
其次對於GITHUB的使用者,我比較喜歡利用GITHUB DESKTOP進行專案的克隆管理。
在安裝MOCKING BIRD前必須知道的幾件事:
1、套件安裝時會因使用者的硬體環境與套件版本而有所不同,可能需要多次嘗試,因此利用ANACONDA進行安裝測試,失敗時不論是想更換套件版本或刪除重新下載,都能減少不少時間與衝突時的擔憂。
2、大部分套件可以用CONDA安裝,但是在FFMPEG與集中安裝(requirement.txt)時,因CONDA無相關支援或部分套件不支援,所以最終還是使用PIP安裝。
3、目錄結構非常重要,如果僅只克隆後利用原作者提供訓練模型進行AI模仿,那麼安裝後在百度雲下載模型,修改編碼程序後就可以進行程序。如果要進行訓練,就必須先進行某些程序更換目錄及語音檔案目錄結構的修改。
4、所有目錄結構最好改用英文,中文的使用者名稱、目錄會造成ANACONDA異常,創建虛擬環境失敗。
套件安裝部分,在YOUTUBER零度空間中有相關視頻,大家可以進行參考,
基本安裝如下:
1、安裝Anaconda、創建python 3.7環境(我創建的是3.7.16)
2、克隆mockingbird專案
3、安裝pytorch 到網址 到Pytorch官網: pytorch.org/get-started/locally
指令:nvcc -V 可得知目前適用的CUDA版本
選擇和自己電腦相對應的版本安裝;
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
4、測試是否安裝成功,一樣在Anaconda Prompt輸入python,分別輸入下列程式碼(一行一行執行):
import torch
print(torch.cuda.is_available)
print(torch.cuda.device()) //This line prints the name of the default GPU device. 如果出現TypeError: __init__() missing 1
required positional argument: 'device'則改用下述
device = torch.cuda.device('cuda:0')
print(device)
5、安裝ffmpeg 網址 ffmpeg.org/download.html#get-packages
6、pip install -r requirements.txt 安裝相關軟體,不能使用 conda install --file requirements.txt,部分找不到套件
7、pip install webrtcvad-wheels(語音活動檢測庫,檢查有聲段與無聲段,是需要安裝)
附註:
A、如果需要訓練,則需要裝VC 2019(因我有VS2019故省略)
B、conda安装环境报错:Solving environment: failed with initial frozen solve.
conda -V 檢查你安裝的conda版本
conda update -n base conda 更新conda到最新版本
conda -V 再確認一次版本
conda update -n base conda 再更新conda到最新版本,有可能要更新2次,第2次會耗時比較久
conda -V 再確認一次版本
確定已是最新版本後執行 conda update --all
C、我之前安裝requirement.txt時遇到狀況不同,requirement.txt 我是如下修改(和零度不同)再以pip安裝:
umap-learn
visdom
librosa==0.8.1
matplotlib>=3.3.0
numpy==1.20.3
scipy>=1.0.0
tqdm
sounddevice
SoundFile
Unidecode
inflect
PyQt5
multiprocess
numba
webrtcvad
pypinyin
flask
flask_wtf
flask_cors==3.0.10
gevent==21.8.0
flask_restx
tensorboard==1.15
streamlit==1.8.0
PyYAML==5.4.1
torch_complex
espnet
PyWavelets
monotonic-align
transformers==4.26.0
fastapi
loguru
typer[all]
click==8.0.4
原作者編碼程序修改(模仿時僅出現雜音,進行編碼修改):
檔案位置克隆後mockingbird結構下 \MockingBird\models\synthesizer\utils\symbol.py
第11行 _characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890!\'(),-.:;? '
改為 _characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz12340!\'(),-.:;? '
原作者說明為"用於訓練模型。如果您要訓練舊的模型,可以使用這個舊的字元集。",因我沒有舊模型可用,因此我直接使用新編碼。
而原作者提及的模型,因我無法從百度雲下載,以前下載的百度網碟也早已刪除,因此是重新下載語音檔進行訓練,下一篇再陸續說明語音檔種類、下載位址、目錄修改、訓練操作。
附註:我是以ASUS W700-TC桌機,更換850W POWER,加裝 NVIDIA TESLA M40 24G進行學習,上述變動為依附於此進行的修改。
請先 登入 以發表留言。