fakeappの使い方を調べていたら日本語の情報が少ないのでメモの意味も含めて気がついたことをまとめています。ディープラーニング凄い!と個人で楽しむ分には問題ないと思いますが、政治家、芸能人、アイドル、映画など全てにおいて作成した画像や動画をネット上にアップするのは絶対にやめましょう。
*DeepFaceLabはコチラ(更新作業中)
-
Contents
【DeepFaceLab】インストールと使い方2019
以前書いたFakeAppの記事が古くなりました。FakeAppの後、OpenFaceSwap、MyFakeApp、DeepFaceLabを軽く触りましたが、更新が続いているDeepFaceLabをまと ...
【fakeapp】必要な環境
ここでは現時点で最新版のfakeapp ver2.2を元に記載しています。ハードウェア構成に関しては海外の掲示板やyoutube解説動画などから情報を持ってきています。処理内容や設定によってはこの限りではありません。目安ぐらいの感覚です。
ハードウェア
- OS:windows7 or windows10
- CPU:なんでもOK
- MEM:8GB以上
- GPU:NVIDIA製品 CUDA対応品 MEM2GB以上
ソフトウェア
- fakeapp ver2.2
- CUDA9.0
- microsoft visual basic 2015+update
*記事投稿時より時間経過の為、修正・加筆作業中です<m(__)m>
GTX1080tiの設定 2018年4月11日追記
海外掲示板の書き込みからの情報です。
下記設定で1週間くらい学習させるとそれなりの動画が作成できます。学習用画像数は1万~1万1千くらい、LOSS値は0.09~0.013になった所でcreateする。
Batch size: 256
save period: 100
layers: 8
nodes: 1024
mem ratio: default
GPU growth: false
seamless: false
blur: 10
kernel: 8
GPUビデオカードはどれを買えばいい?2018年3月7日追記
少しずつ情報が出てきているので一部追記しました。
GeForce750ti 1GB クラスでも実行は可能ですがtrain作業に数日かかり、途中でエラー落ちしてしまう場合があります。海外掲示板等を見る限りではGeForce 1050 2GB以上は欲しいところです。
最低限
2019年10月追記
参考値
バッチサイズ:32~64
レイヤー:1~2
ノード:32~128
この設定でtrainが完了したとの書き込みもありました。ただしtrain完了まで数日かかる可能性あり。
中間性能
GeForce GTX1060 VRAM 6GB(3GBはNG)
train完了まで12時間~24時間くらい
参考値
バッチサイズ:32~128
レイヤー:1~2
ノード:32~128
推奨
GeForce GTX1080ti VRAM 8GB
GeForce GTX1080 VRAM 8GB
GeForce GTX1070ti VRAM 6GB
GeForce GTX1060 VRAM 6GB
参考値
バッチサイズ:64~128
レイヤー:1~2
ノード:64~128
FF15PC版でGPUが更に手に入らなくなる?
仮想通貨のマイニングブームの影響でビデオカード特需が発生し、品薄状態が続いています。手に入る内に買っといた方が無難です。不要になっても高く売れますしね。在庫があってオススメのビデオカードをいくつかご紹介します。
3月末~4月にnvidiaは新製品発表を控えていますが、GXT2080の噂はあるものの、ロードマップを見る限りゲーマー向けのGPUは来年2019年になりそうです。マイニング向けのGPUが公開され、それにより品薄のGTX1070~GTX1080の在庫が戻ってくるのではとの声もありますがまだまだ噂レベルなので情報を待ってる状態です。
2018年3月7日現在、GTX1050ti、GTX1060の在庫はちらほら見かけるようになりました。ただ昨年のマイニングブーム前の値段に比べればまだまだ高いです。5000円~1万円ほど。
少し脱線しますが、更に追い打ちをかけるようにファイナルファンタジー15(FF15)のPC版が発売されます。ベンチマークが公開されましたがGTX1070でも快適動作とはいかないようです。(今作は4K/8K対応の為)、(ゲームクライアントが100GB以上(^_^;)
FF15はPS4で中古なら1000円程度で購入可能です。しかしPC版ではMOD対応になった為、ユーザーが盛り上げることによってヒットすればGPU需要も更に高まり、ますます購入しにくくなるかもしれません。
NvidiaとAMDはビデオカード生産を絞っている訳ではないですが、AMDは増産したくてもメモリ不足で厳しいとも言っています。これはNvidiaも同じ状況でしょう。
仮想通貨マイニングとFF15ユーザーが狙うのはGeForce GTX1070以上になっていることから、Fakeappで遊ぶならGeForce GTX1060 VRAM 6GB がベストかもしれません。
GTX1070でfakeapp 2018年3月19日追記
GTX1070OC8GBが安く売っていたので買って試してみました。購入先はamazonBusinessです。法人アカウントが必要ですがご自身、又は知り合いに経営者(法人・個人事業主)が居るならお願いしてみるとお得に買えるかも。価格は通常のamazon同様 変動しますがいわゆるマイニング特需が発生する前の値段で購入できました。8万→5万など。
以下色々試している最中ですが安定した設定を載せておきます。
GPUスペック
メモリ環境
全体ではメモリ32GB、内約半分の16GBをramdiskに割り当てて作業しています。上のSSはfakeapp実行前です。短時間の動画でもキャプチャを3回は切り出すので作業領域は10GBは欲しいです。HDD・SSDだと何度も書き換えがあるので作業フォルダを置きたくないのと、単純にメモリ上で作業すれば動作が速いので。数十分の動画になったらその時考えます(汗
fakeapp設定 GTX1080OC8GB時
BatchSizeは小さい方が品質がいいとのことで16にしています。Nodesは2048に。
これで30秒くらいの動画を900フレームくらいに書き出してmodelをした場合、loss値0.02以下になるのが3時間程度。半日くらいで0.01を割り込むこともありました。(素材によって時間は大幅変動)
FakeAとFakeBの似ている部分が多い素材を揃えるのは必須、またLOSS値が0.02以下を目標なのは最低限のラインで、実際にオバケじゃなくなるのは0.01以下かなーというのが体感です。
この設定で1日放置してみましたが0.006~0.007を行ったり来たりで、それ以上は数値が減りませんでした。
エラーになった設定 GTX1070
メモ代わりに書いておきます。全て最初~途中でエラーになった設定です。BatchSize:Nodes:以外はデフォルト値です。
BatchSize:1024
Nodes:1024
BatchSize:2048
Nodes:2048
BatchSize:1024
Nodes:2048
BatchSize:512
Nodes:2048
BatchSize:2048
Nodes:1024
fakeappにマイニング(ビットコイン採掘)が入ってるって聞いたけどホント?
ホント・・・でした。過去形なのは2.2がアップされた際にマイニングが実行されていることがフォーラムで話題になりました。設定からOFFにもできるのですが、悪評が増えることを危惧したfakeapp作者は採掘なしverをアップしたよ。寄付宜しく!と公式フォーラムに書き込んでいます。
現在公式からダウンロードできるverにはマイニングは入っていません やったね!
【fakeapp】手順
公式解説動画があるのでそちらをどうぞ。
【fakeapp】動かない時のエラーや改善方法
基本的に難しい操作は必要なく、素材の画像や動画を用意して、フォルダを指定しクリックしていくだけなのですがエラーが多く実行できないケースがあります。外人が「このアプリはバグが多いぜ(笑)」って言ってましたがホントです。ver2.2では大分改善されましたが。
フォルダを選択しているのに選択していない?
ファイル場所を選択してディレクトリ位置が合っていてもエラーになることがあります。これはタブ切り替えや設定メニューを弄っているときに、画面上にはディレクトリが指定されているのに、ソフト上では空欄と認識していることがあるようです。設定等問題ないのにエラーが出続ける場合はtrainなどの実行前に再度フォルダ指定してから実行してみると上手くいくかもしれません。
CUDA9.0ではなくCUDA9.1がインストールされている
現在nvidiaの公式サイトでは最新版がCUDA9.1になっています。fakeappではCUDA9.0が必要です。CUDA9.0をインストールしてもエラーが出る場合はCUDA8.0やCUDA9.1がインストールされていないか確認してください。筆者はこれでエラーがでていました。マイニング用にCUDA8が入っていました汗
microsoft visual basic 2015以外がインストールされている
こちらもCUDA同様です。microsoft visual basic 2015 以外はアンインストールしてmicrosoft visual basic 2015 のみが入っている状態にすると確実です。
エラーログの場所が分からない
C:\Users\Users name\AppData\Local\FakeApp\app-2.2.0 内にあるはずです。検索かけるかファイル名順に並び替えればすぐ見つかると思います。インストール場所を変更した方も基本の階層は一緒です。
2回目以降動画作成に失敗する
動画を作成すると、動画を指定したディレクトリに「workdir」というフォルダが作成されます。これを消して再度実行したらcreate成功しました。
trainが設定最小値でも実行できない
Fake_AとFake_Bの素材(「extracted」フォルダ内)画像をファイルサイズ順に並び替えてみる。
設定はどのくらいが最適?(編集中)
こればかりはなんとも言えません。というのも素材とPC環境によって異なるのでこれが正解というのがありません。ですので最初は最低限の設定で動作確認した後、少しずつ設定を上げていきベストな設定を導き出す必要があります。筆者は最初は以下のような設定でやっています。
Processor:GPU
Batch Size:16 (数値増で処理速度が上昇しLOSS値も安定するがGPUメモリも必要、128なら6GBなど。)
Nodes:16 (品質に影響、数値増でGPUメモリ使用量も増加する)
Mem Growth:Off
Save Period:10
Layers:2
Mem Ratio:Auto
Blur Size:4
Kernel Size:2
LOSS値について
train実行中のLOSS値は公式で0.02以下が望ましいとされています。素材Aと素材Bに似ている点が多い素材を選ぶことがキモです。