最近一段时间在搞对抗训练,作为是一个什么都不懂的小白,写一个博客记录一下过程,权当是倒垃圾。
一、首先是配环境吧:这真的是一个很崩溃的过程,我总是在这里失去耐心然后摆烂去打游戏,向学长问了一堆蠢问题(失去理智)。
1、首先我们从GitHub上clone或者下载v-cloak:
我的建议是直接download zip,因为git clone时我一直在出问题(疯狂飘红以至于我摆烂去打游戏)。
下载该包后,得到的资源是不完整的,此时还缺了很多训练集之类的东西。
这个readme很重要啊,里面记载了资源在哪下。
然后我们进入pycharm,我用的是conda创建虚拟环境。
2、进入v-cloak
注意这里有一个requirements.txt我们需要下载上面需要的东西。
那么:
又开始飘红,心态再次崩溃,摆烂去打游戏。
那么这是为什么呢。
反正我是用换源解决问题的,就是换成清华的源
pip install 要安装的包 -i https://pypi.tuna.tsinghua.edu.cn/simple
这样就行了
评价是先别急。
我们接下来还要解决一个问题。 那就是配环境。
---------------------------------------------------------------------------------------------------------------------------------
首先是cuda的配置。
我们先移步至大佬的csdn学习一波如何安装cuda。
Windows下安装及配置CUDA过程详解_NorthSmile的博客-CSDN博客_cuda windows
---------------------------------------------------------------------------------------------------------------------------------
安装完cuda之后,我们需要安装pytorch
https://download.pytorch.org/whl/cu113/torch_stable.html
那个网站虽然不好看,需要往下翻,不过东西还是很全的,大家找一找,这是我选的配置。
然后,大部分情况下下的很慢,这时我的建议是用迅雷,速度是质的飞跃。
然后在cmd里进入下载的路径,pip install xxxx.whl文件,把这三个torch安装。
这时大部分问题就解决了。
这里是其他会用到的可以直接pip install 的包。
---------------------------------------------------------------------------------------------------------------------------------
然后是一些不能直接pip install 的包。
强调一点,因为这里只是需要下列工具中的一种,所以只需要把那种拿出来放到v-cloak里面就行了
①art:adversarial-robustness-toolbox
经观察发现该art文件夹下有我们需要的estimators,defences,utils等模块,因此将该代码下载下来,将art文件夹copy到V-Cloak目录下。
②deepspeech_pytorch:
https://github.com/SeanNaren/deepspeech.pytorch/tree/master/deepspeech_pytorch
经观察,deepspeech_pytorch文件夹下有我们需要的模块,于是将该目录copy到V-Cloak下。
③Apex:
apex/apex at master · NVIDIA/apex · GitHub
也是将apex目录拷贝至V-Cloak。
④warpctc_pytorch
找不到需要的warpctc_pytorch
https://github.com/SeanNaren/warp-ctc/tree/pytorch_bindings/pytorch_binding
https://github.com/baidu-research/warp-ctc
warpctc_pytorch模块的问题:以上github搜到的warp-ctc都有一些问题
百度搜索教程;windows下安装warp-ctc,要cmake创建环境?
【暂时不影响跑train.py,留待解决】
由于后面要用到计算CTC损失,这里将SeanNaren的warpctc_pytorch目录拷贝至V-Cloak下面。链接为:
https://github.com/SeanNaren/warp-ctc/tree/pytorch_bindings/pytorch_binding
(但是里面的代码除了CTCLoss能用之外,其他都是有问题的。)
(不管。)
3,OSError: symbolic link privilege not held 出现该错误说明你应该用管理员身份打开命令终端
4,RuntimeError: Backend "soundfile" is not one of available backends: [].