很多深度学习项目中,经常会看见Anaconda的身影。大家不免会发出疑问:Anaconda好用在哪里?为什么使用Anaconda而不是virtualenv?Anaconda配套赠与了什么资源?下面一一解说。

目录

Anaconda好用在哪里?

为什么使用Anaconda而不是virtualenv?

Anaconda配套赠与了什么资源?

总结:


Anaconda好用在哪里?

        一方面,在深度学习项目中,经常会用到PyTorch、TensorFlow这些经典的深度学习库,而我们却不能保证它们的依赖库的版本不会跟其它库起冲突。所以,这时候我们就要用到虚拟环境(virtual environment)来进行开发。启动虚拟环境后,用虚拟环境中带的pip来安装库。安装时,库只会安装在这个虚拟环境的仓库中,而不是此电脑上的Python的第三方库仓库中,这样就确保了多个库的依赖包不会发生冲突,运行时不会报错。常见的创建虚拟环境的工具有:pipenv、virtualenv、conda等等,而其中的conda是最强大的虚拟环境创建工具,因为conda创建虚拟环境时,可以随意地指定python版本。而conda却又是配套在Anaconda中的工具。而另一方面呢,Anaconda它自带了150个数据科学处理的强大模块,而pip需要自己慢慢地安装。

        

为什么使用Anaconda而不是virtualenv?

        virtualenv虽然可以创建虚拟环境,可是比起conda,virtualenv有下面几个短板:

        一:virtualenv不能随意地指定虚拟环境的Python版本,很容易引起因为模块所需的版本与Python版本不同而引起问题。

        二:virtualenv创建虚拟环境时会在此文件夹产生仓库文件,还需要花时间写.gitignore,而Anaconda却不会产生仓库文件,可以放心地使用。

        三:conda除了可以创建虚拟环境,还可以安装除了第三方包以外的不基于Python的软件包,而virtualenv……

        四:每次virtualenv退出虚拟环境都要在终端执行

cd Scripts
deactivate.bat

        而conda只需要执行

conda deactivate

       conda会省下很多时间!

       总而言之,统而言之,conda比virtualenv方便而且好用很多倍。

Anaconda配套赠与了什么资源?

        Anaconda内置配套了很多资源,先从Python内部讲起,Anaconda配套了很多强大的数据科学处理模块,类如Pandas,NumPy,SkLearn等等,并且,Anaconda还自带了Anaconda Navigator管理器、Spyder IDE、Jupyter Notebook等等使用的工具。

总结:

        Anaconda其实是一个工具箱,里面包含了许许多多的Python的工具,非常实用。光使用Python就是拿着沙子想去造枪,加上第三方库就相当于是拿着各种零件去组装枪,而再加上Anaconda的协助,就相当于是可以用各种各样材质,各种各样型号的零件去组装多把枪,那不就无敌了吗?