2022/5/6,22:22。记录复现一篇论文过程中遇到的问题。
一
首先由anaconda创建虚拟环境,以便安装所需python环境。
conda create --name *** python=3.7
或者使用一下代码创建:
conda create -n *** python=3.7
其中***是给所创建虚拟环境的名字(下同),自己随便取。python=3.7是指定所创建虚拟环境的python版本,根据论文需要进行更改。如果不知道python版本,则默认安装anaconda的python版本。
查看所创建的环境:
conda info -e
或者
conda info -envs
带*号的是当前所在环境
二
激活环境,以安装论文所需要的python包。
activate ***
左下角又(base)变成(***),环境顺利激活。
然后可以用pip一个一个安装所需包,也可以使用requirements.txt一键安装,
使用requirements.txt文件安装时,需要切换到文件所在的文件夹下,使用命令
cd /d "requirements.txt所在的路径"
使用requirements.txt安装:
pip install -r requirements.txt
关于requirements.txt
使用论文源码中requirements.txt文件安装所需python包,避免一个一个安装和python版本不匹配的麻烦。
有些论文的源码中包含requirements.txt文件,我们就可以直接使用,有些源码中不含requirements.txt文件,为了解决这一安装源码所需包的版本问题,我们需要生产一个requirements.txt,以便建立正确的python环境。
由论文源码生成requirements.txt文件:
在pycharm源码项目下,在终端(本地)运行一下代码:
pip freeze > requirements.txt
便可生成源码所需环境的txt文件。(生成的文件在当前目录)
或是使用
pip install pipreqs
pipreqs . --encoding=utf8 --force
生成源码所需环境的txt文件。
到此,环境问题顺利解决完成。
但运行源码时,又出现了以下错误:
requests.exceptions.ConnectionError: HTTPConnectionPool(host='localhost', port=8097): Max retries exceeded with url: /env/main (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x000002D4C99010C8>: Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。'))
Without the incoming socket you cannot receive events from the server or register event handlers to your Visdom client.
查找了很多博客,最终发现这是一个可视化部分出现了问题。
解决办法:
首先安装可视化包
pip install visdom
进入可视化网页:
python -m visdom.server
将最后的http://localhost:8097在网页中打开,
检查是否有其他可视化程序在使用visdom,如果有则关闭。
经过以上步骤,将可视化网页一直打开状态,再重新运行论文源码,就不会出现以上的错误。
本文解决的主要问题是环境安装及可视化。