Anaconda大法好,为什么要用Anaconda(附linux安装与用例)
距离写上一个博客已经过去很久了,注册的时候我还是个大三学生抱着windows系统的visual studio在OPENCV等等复杂组件下面瑟瑟发抖,一不小心就担心hpp找不到了,依赖库没了,或者安装了一个新的东西然后把整个系统玩崩了。(相信这是大多数用自己电脑windows开发者的心声吧)
研究生之后开始接触神经网络,自己的电脑肯定是不能用了实验室提供了服务器,在linux上面做开发,从一开始只会pip install tensorflow、到处找依赖包,到后面终于学会conda create走了很多弯路,走到现在也算是给自己一个记录吧,还有向看到博客的人传教一下Anaconda大法好.jpg
Anaconda到底是什么?
这个问题其实很多博客都已经说了,我自己也是拿出来用没有很认真的对他去做定义,对我来说就是一个python环境管理软件,他封装了建立python下各种各样的依赖包,当用户需要使用的时候就从anaconda的库中调取出来安装在指定的anaconda环境中,推荐配合清华的镜像源(https://mirror.tuna.tsinghua.edu.cn/help/anaconda/)一起使用。
Anaconda解决的问题:
- pip带来的不同python包之间的冲突,conda在安装的时候会检测已有包的版本与需要安装的版本是否匹配、以及相关包更新后的版本与现有的其他包是否会造成冲突,而pip不会。
- 使用Anaconda可以在一个系统上建立多个环境,而pip只能在原生系统上修改。如果我们两份代码一个要求pytorch=0.4.0,另一个要求pytorch=1.0.1,那么单纯使用pip只能选择删去现有的pytorch去安装另一个,或者重新开一个服务器。但使用Anaconda我全都要.jpg,使用source activate 【环境名】的命令即可在不同环境之间轻松切换。
- 根据python版本的不同,pip的更新可能会引入问题,而conda命令比pip更加稳定(这也是我喜欢conda的主要原因之一。在python2.7下使用pip,我不仅一次遇见过提示我更新pip,更新了之后因为更新导致pip文件中__main__等参数需要更新而不能正常使用的问题,这时候需要回退pip版本或者修改pip对应python文件中的参数。当一个系统中python2.7和python3.6一起使用的时候那个感觉真是更加酸爽= =
总的来说,一个好的网络或者是项目开发需要有稳定可管理的环境支持,而Anaconda正是提供了这样一个功能。
而且安装还很方便!那为什么不用天下无敌的Anaconda呢!
Anaconda的安装(linux)
Anaconda在linux下面的安装非常简单,基本上下载下来sh一下改改边境变量ok fine弄好了,这里只总结关键步骤。
1.下载Anaconda_xxxxxx.sh,我使用的是Anaconda3。可以直接从清华镜像下载,不过版本更新比起官网可能稍有延迟。下载链接:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

搜索最新日期的下载即可。
2.使用命令安装Anaconda,反正yes下去就对了,在过程中他会问你Anaconda home安装在哪里,一般默认是在/home/comptername/Anaconda3,如果需要自己更改的话记住更改后的路径。
sh Anaconda3-2019.07-Linux-x86_64.sh
3.然后Anaconda已经安装好了,但是使用conda命令的时候会告诉你找不到命令,这是因为还没有写入到环境变量中。
更改/etc/profile文件(使用vi vim gedit还是 subl自己高兴),在里面加入:
#Anaconda
export PATH=$PATH:/home/computername/anaconda3/bin
4.Anaconda可以正式使用了,如果还存在问题看看是不是步骤3路径没写对。
使用Anaconda配置Pytorch_yolo3环境
代码github:https://github.com/azikk/PyTorch-YOLOv3
1.生成新的环境,取名叫做yolo3,使用python 3.6版本,并进入
conda create -n yolo3 python=3.6
source activate yolo3
2.安装pytorch,这里要求pytorch版本是1.0以上,我的电脑cuda版本是9.0。使用1.0.1是因为清华源中没找到更高版本的,如果制定更高版本就会去官方源下载了,太麻烦,就直接使用1.0.1
conda install pytorch=1.0. torchvision cudatoolkit=9.0
3.安装requirement.txt中写出的其他依赖,其中tqdm的包在官方源和清华源中都没有,要使用-c conda-forge从该仓库中下载。
conda install -c conda-forge tqdm
4.安装所有依赖后,就可以使用代码了。
Anaconda大法好,为什么要用Anaconda(附linux安装与用例)的更多相关文章
- Linux安装程序Anaconda分析
1.概述 Anaconda是RedHat.CentOS.Fedora等Linux的安装管理程序.它能够提供文本.图形等安装管理方式,并支持Kickstart等脚本提供自己主动安装的功能.此外, ...
- linux安装anaconda过程
今天在centos7下安装了Anaconda,将安装过程记录如下 下载安装Anaconda 下载地址:https://repo.continuum.io/archive/index.html 打开页面 ...
- 以安装PyTorch为例说明Anaconda在Windows/Linux上的使用
在Windows10上配置完MXNet 1.3.0后,再配置PyTorch 1.0时,发现两者需要依赖的NumPy版本不一致,之前是通过pip安装NumPy,根据pip的版本不同,会安装不同版本的Nu ...
- Linux安装程序Anaconda分析(续)
本来想写篇关于Anaconda的文章,但看到这里写的这么详细,转,原文在这里:Linux安装程序Anaconda分析(续) (1) disptach.py: 下面我们看一下Dispatcher类的主要 ...
- anaconda一站式环境的搭建(anaconda、tensorflow、opencv)
搭建人工智能图像处理环境 Anaconda一站式开发环境搭建. 工欲善其事必先利其器,在我们学习之前,我们先要搭建一个属于我们自己的开发环境.我们开发的环境是有anaconda.testflow.op ...
- anaconda的报错:Anaconda:There is an instance of anaconda navigator already running error
anaconda的报错:Anaconda:There is an instance of anaconda navigator already running error 出现这个问题的时候人蒙了,主 ...
- fedora21发布与新功能介绍(附fedora21安装教程与fedora21下载地址)
fedora21发布与新功能介绍(附fedora21安装教程与fedora21下载地址) 最新的Fedora 21终于正式发布了,Fedora Server 是一款强大可定制化的操作系统,包括了最好最 ...
- Red Gate系列之五 .NET Reflector 7.6.1.824 Edition .NET程序反编译神器(附插件安装教程2012-10-13更新) 完全破解+使用教程
原文:Red Gate系列之五 .NET Reflector 7.6.1.824 Edition .NET程序反编译神器(附插件安装教程2012-10-13更新) 完全破解+使用教程 Red Gate ...
- Linux 安装Anaconda 4.4.0
安装步骤参考了官网的说明:https://docs.anaconda.com/anaconda/install/linux.html 具体步骤如下: 1.在官网下载地址 https://www.an ...
随机推荐
- 代码审计之seacms v6.45 前台Getshell 复现分析
1.环境: php5.5.38+apache+seacms v6.45 seacms目录结构: │─admin //后台管理目录 │ │─coplugins //已停用目录 │ │─ebak //帝国 ...
- js 数组去重方法
var arr = ['a',1,2,3,'a',4,2,3,1,4,2,8,10,null,'a']; // 方法一 var newArr = [...new Set(arr)]; console. ...
- 系统学习 Java IO (七)----字节数组流 ByteArrayInputStream/ByteArrayOutputStream
目录:系统学习 Java IO---- 目录,概览 ByteArrayInputStream 如果数据存储在数组中,ByteArrayInputStream 可以很方便读取,它可以返回 InputSt ...
- php实现redis锁机制
<?php class Redis_lock { public static function getRedis() { $redis = new redis(); $redis->con ...
- spark入门(二)RDD基础操作
1 简述 spark中的RDD是一个分布式的元素集合. 在spark中,对数据的所有操作不外乎创建RDD,转化RDD以及调用RDD操作进行求值,而这些操作,spark会自动将RDD中的数据分发到集群上 ...
- HDU 5521:Meeting(最短路)
http://acm.hdu.edu.cn/showproblem.php?pid=5521 Meeting Problem Description Bessie and her friend E ...
- Python Day_3
--人生苦短,我用Python 在我的第一天接触Python,我的小甲鱼老师给我带来的不是HelloWord,是一个小游戏,详情看Python Day_1 在我们这个游戏基础上,我在后面的课后练习,自 ...
- c++ 二分答案
c++ 二分答案 问题 使得x^x达到或超过n位数字的最小正整数x是多少?n<=2000000000 分析 对与这种较难求解的问题,我们很难想出较好的解决策略.但是,我们至少知道答案一定在1与2 ...
- 洛谷p1216 IOI1994 Day1T1
洛谷p1216 IOI1994 Day1T1 洛谷原题 题目描述 观察下面的数字金字塔. 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大.每一步可以走到左下方的点也可以到达右下 ...
- 什么是JDK什么是JRE?JDK和JRE的关系
什么是JDK什么是JRE?JDK和JRE的关系 我们看看来自百度百科的解释: JDK是 Java 语言的软件开发工具包,主要用于移动设备.嵌入式设备上的java应用程序.JDK是整个java开发的核心 ...