距离写上一个博客已经过去很久了,注册的时候我还是个大三学生抱着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解决的问题:

  1. pip带来的不同python包之间的冲突,conda在安装的时候会检测已有包的版本与需要安装的版本是否匹配、以及相关包更新后的版本与现有的其他包是否会造成冲突,而pip不会。
  2. 使用Anaconda可以在一个系统上建立多个环境,而pip只能在原生系统上修改。如果我们两份代码一个要求pytorch=0.4.0,另一个要求pytorch=1.0.1,那么单纯使用pip只能选择删去现有的pytorch去安装另一个,或者重新开一个服务器。但使用Anaconda我全都要.jpg,使用source activate 【环境名】的命令即可在不同环境之间轻松切换。
  3. 根据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安装与用例)的更多相关文章

  1. Linux安装程序Anaconda分析

    1.概述     Anaconda是RedHat.CentOS.Fedora等Linux的安装管理程序.它能够提供文本.图形等安装管理方式,并支持Kickstart等脚本提供自己主动安装的功能.此外, ...

  2. linux安装anaconda过程

    今天在centos7下安装了Anaconda,将安装过程记录如下 下载安装Anaconda 下载地址:https://repo.continuum.io/archive/index.html 打开页面 ...

  3. 以安装PyTorch为例说明Anaconda在Windows/Linux上的使用

    在Windows10上配置完MXNet 1.3.0后,再配置PyTorch 1.0时,发现两者需要依赖的NumPy版本不一致,之前是通过pip安装NumPy,根据pip的版本不同,会安装不同版本的Nu ...

  4. Linux安装程序Anaconda分析(续)

    本来想写篇关于Anaconda的文章,但看到这里写的这么详细,转,原文在这里:Linux安装程序Anaconda分析(续) (1) disptach.py: 下面我们看一下Dispatcher类的主要 ...

  5. anaconda一站式环境的搭建(anaconda、tensorflow、opencv)

    搭建人工智能图像处理环境 Anaconda一站式开发环境搭建. 工欲善其事必先利其器,在我们学习之前,我们先要搭建一个属于我们自己的开发环境.我们开发的环境是有anaconda.testflow.op ...

  6. anaconda的报错:Anaconda:There is an instance of anaconda navigator already running error

    anaconda的报错:Anaconda:There is an instance of anaconda navigator already running error 出现这个问题的时候人蒙了,主 ...

  7. fedora21发布与新功能介绍(附fedora21安装教程与fedora21下载地址)

    fedora21发布与新功能介绍(附fedora21安装教程与fedora21下载地址) 最新的Fedora 21终于正式发布了,Fedora Server 是一款强大可定制化的操作系统,包括了最好最 ...

  8. 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 ...

  9. Linux 安装Anaconda 4.4.0

    安装步骤参考了官网的说明:https://docs.anaconda.com/anaconda/install/linux.html 具体步骤如下:  1.在官网下载地址 https://www.an ...

随机推荐

  1. 代码审计之seacms v6.45 前台Getshell 复现分析

    1.环境: php5.5.38+apache+seacms v6.45 seacms目录结构: │─admin //后台管理目录 │ │─coplugins //已停用目录 │ │─ebak //帝国 ...

  2. js 数组去重方法

    var arr = ['a',1,2,3,'a',4,2,3,1,4,2,8,10,null,'a']; // 方法一 var newArr = [...new Set(arr)]; console. ...

  3. 系统学习 Java IO (七)----字节数组流 ByteArrayInputStream/ByteArrayOutputStream

    目录:系统学习 Java IO---- 目录,概览 ByteArrayInputStream 如果数据存储在数组中,ByteArrayInputStream 可以很方便读取,它可以返回 InputSt ...

  4. php实现redis锁机制

    <?php class Redis_lock { public static function getRedis() { $redis = new redis(); $redis->con ...

  5. spark入门(二)RDD基础操作

    1 简述 spark中的RDD是一个分布式的元素集合. 在spark中,对数据的所有操作不外乎创建RDD,转化RDD以及调用RDD操作进行求值,而这些操作,spark会自动将RDD中的数据分发到集群上 ...

  6. HDU 5521:Meeting(最短路)

    http://acm.hdu.edu.cn/showproblem.php?pid=5521 Meeting Problem Description   Bessie and her friend E ...

  7. Python Day_3

    --人生苦短,我用Python 在我的第一天接触Python,我的小甲鱼老师给我带来的不是HelloWord,是一个小游戏,详情看Python Day_1 在我们这个游戏基础上,我在后面的课后练习,自 ...

  8. c++ 二分答案

    c++ 二分答案 问题 使得x^x达到或超过n位数字的最小正整数x是多少?n<=2000000000 分析 对与这种较难求解的问题,我们很难想出较好的解决策略.但是,我们至少知道答案一定在1与2 ...

  9. 洛谷p1216 IOI1994 Day1T1

    洛谷p1216 IOI1994 Day1T1 洛谷原题 题目描述 观察下面的数字金字塔. 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大.每一步可以走到左下方的点也可以到达右下 ...

  10. 什么是JDK什么是JRE?JDK和JRE的关系

    什么是JDK什么是JRE?JDK和JRE的关系 我们看看来自百度百科的解释: JDK是 Java 语言的软件开发工具包,主要用于移动设备.嵌入式设备上的java应用程序.JDK是整个java开发的核心 ...