win ollvm环境_入门AI第一步,从安装环境Ubuntu+Anaconda开始教!_weixin_39966053的博客-程序员宅基地

技术标签: 为什么 anaconda prompt没有base  win ollvm环境  安装tensorflow pycharm  

57c69288e3d076cb5ebb687c0a3e0972.png

作者 | Che_Hongshu

来源 | AI蜗牛车(id:Che_Hongshu)

前提情况

准备用 Anconda 弄个独立隔离的 tf-gpu 环境,当然如果没可以 caffe 环境也可以按照找个教程来装 tf-gpu,如果是 windows 的话在末尾也有对应的 win 下的教程。如果不想用python2.7,想用python3.6也有相关说明。

os:ubuntu16.04

DL框架:caffe-GPUCUDA:10.0CUDNN:7.4python:2.7

安装Anconda

我选择的是python2.7版本 https://www.anaconda.com/download/#linux
9477be702e7c1ca1a588ffac53d784b0.png

傻瓜式安装不赘述

e34c2f1a8e11f4b424cedde51190bc30.png

直接启动终端即可,安装好看看是否安装成功

conda --version
5de2f85d4375c6c4f9c70e23034b2061.png

成功当然这里可能出现 不识别conda的error。conda不是内部或外部命令,这是因为没有添加环境变量,无法找到命令。

添加环境变量即可,我常用的方式就是.bashrc文件

59568f8fdc14f892d4650a5200f7ed79.png

vim用法不赘述了,就是按i为input,按esc为命令模式输入:wq保存退出。.bashrc为用户环境文件

c0f14cc584310621ff9643f476addab4.png

添加

export PATH=/home/c/anaconda2/bin:$PATH       ##/home/c/anaconda2为Anaconda的安装路径

之后输入

7793fd5a3fca23d96c038b3699461b46.png

使更改的环境变量生效,此时linux可以识别conda命令了。

创建 python 2.7的tensorflow环境:

01c62dd218000d8100fba6ec78f21c92.png

之后进入 环境中

2cde2460e7b41ffe5f9116c20b21a0cf.png

在环境中直接安装tenorflow-gpu环境

 conda install tensorflow-gpu

需要一段时间,仔细观察里面已经有了很多科学库numpy pandas,以及CUDN和cudnn(但是有一个问题就是,tf的版本对应相应版本的cuda和cudnn的版本,都是一一对应的)

下完之后,输入python之后import tensorflow之后看是否成功,如果成功则结束


如果不成功报错如下提示则按下面几步进行。

ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory

毋庸置疑就是tf和下载安装的cuda的版本不匹配,解决办法:

conda install cudatoolkit==9.0
34aa42baa3406f2154a34268cc2a0fe8.png

这回python,import一下上舒服了就

11a38a4994de268821669c04e5f23b05.png

不得不说Anconda真的好用,我当时用caffe-gpu的时候都是自己安装的cuda和cudnn,不只是麻烦,最难受的是如果你不知道版本有对应关系可能你需要不断的安装卸载,当然用运气好的话一次成功也可能,但是也麻烦,Anconda只需要几句命令解决一切问题,厉害。

安装pycharm

下载pycharm

http://www.jetbrains.com/pycharm/download/#section=linux

cbe366279c3f25a9b9ce3a46f0040c47.png

下载Community版本,这样可以避免找能用的钥匙等一切破解的问题,自己用community够用了已经。

cea42ce17ce214ad3ce8390a6b0bc452.png

直接在所在目录打开terminal运行解压

tar -xvzf pycharm-community-2018.3.tar.gz ##文件按照自己的版本改

解压完成。

习惯性把这些文件放在linux下的home里,进行一波剪切:

a0a5d1f7d37bf19f9d87f1994721397c.png

运行bin中的.sh脚本文件启动,接下来就和win下使用是一个样子了,不多赘述,就是选确认和同意就好了。

创建python工程

cd4b77fcf819e38eca855d2bb330796a.png

选择咱们已经在Anconda中创建好的interpreter,这个python中已经配置好tf环境。接下来新建一个python文件

40743c06d354de4eaf6aca04150600e5.png

来个简单的程序跑一下看看,两个常量相加

import tensorflow as tfint1 = tf.constant(3)int2 = tf.constant(6)product = tf.add(int1, int2)with tf.Session() as sess:    result2 = sess.run(product)    print(result2)
a5ced7112b41c9cc06a6fb59e0f3efba.png

忽略红字,因为那是因为tf运行GPU 的正确打开方式。最后不想pycharm每次打开都那么麻烦,那就 打击图标,右键,选择锁定到启动器,over。

0a79117235a79239175eac3efaea556b.png

补充部分:

(1)依然采用Anaconda来安装,首先安装Anaconda的windows的64bit版本。(2)如果采用windows下安装tensorflow-gpu,经过本人的尝试和实践,最好采用安装tensorflow-gpu==1.12.0(当然python为2.7和3.6都可以)(3)如果选择python版本为3.6,创建环境命令如下:

conda create -n tf36 python=3.6

(4)在环境中安装tf1.12.0

conda install tensorflow-gpu==1.12.0

当然安装的过程有点崎岖,自己估计都没想到,主要是出现两个问题

Process finished with exit code -1073741819 (0xC0000005)ImportError: DLL load failed: 找不到指定的程序

解决方案居然是自己忽略一个问题,我也尝试去重新装protobuf等等,但自己遇到的不是这个问题。

我个人之前装的时候用的是pycharm下的Terminal

674e3a934c47ce4d9908d7aa817f2477.png

这回我成功安装的时候选择不用这个,就纯粹用Anaconda自带的Prompt命令行输入,输入为一样的语句

e92360e63b9a4ba7af03dd79ec2dae80.png

最后采用从创建新的环境以及安装各种库以及安装tensorflow-gpu全都用Anaconda自带的Prompt来进行安装,速度更快,一次成功。

(5)结论:估计用pycharm的terminal去模拟prompt来安装tensorflow-gpu有一些bug,但具体情况不知。

(本文为Python大本营转载文章,转载请联系作者)

长三角开发者联盟

代码就是力量,长三角的开发者联合起来!

加入「长三角开发者联盟」将获得以下权益

长三角地区明星企业内推岗位CSDN独家技术与行业报告CSDN线下活动优先参与权CSDN线上分享活动优先参与权我们希望你是:位于长三角地区(上海、江苏、浙江等)优秀开发者。扫码添加联盟小助手,回复关键词“长三角4”,加入「长三角开发者联盟」。

f8168db60c6ed8d13d4ba2f811e1d82b.png

多活动信息。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39966053/article/details/110090327

智能推荐

意外的收获:printf的打印顺序!!!_struct { int a; int *b;} s[4], *p;int i, n = 1; fo_timebomb的博客-程序员宅基地

关于这个指针问题: #include struct ks { int a; int *b; } s[4], *p; main() { int n = 1,j ; printf("/n"); for (j = 0; j a=1 p++; //p->a=3 printf("%d,%d/n", (++p)->a, (p++)->a); } 由于printf的运行顺序是从右向左运行,先执行(p++)->a,而且右++是在取值后_struct { int a; int *b;} s[4], *p;int i, n = 1; for(i = 0; i < 4; i++){ s[i]

Golang/Gin-WebSocket实现实时消息推送_golang gin websocket_qq_42887507的博客-程序员宅基地

Golang/Gin-WebSocket实现实时消息推送前言gorilla/websocket基础用法实现实时消息推送代码api补充说明前言WebSocket在 HTML5 游戏和网页消息推送都使用比较多。WebSocket 是 HTML5 的重要特性,它实现了基于浏览器的远程socket,它使浏览器和服务器可以进行全双工通信。目前Go中用的比较多的WebSocket包是gorilla/websocket,本文将介绍如何使用gorilla/websocket,在Gin框架下编写WebSocket实时_golang gin websocket

如何在Windows7的虚拟机中添加一块虚拟网卡_weixin_34342207的博客-程序员宅基地

这是我首次在优酷上发布的视频,地址为:http://v.youku.com/v_show/id_XMTYwNDUxNDM2.html,主题为:如何在Windows7的虚拟机中添加一块虚拟网卡,请大家查看并给予指点,谢谢。...

strerror()的用法理解_dahaibeibe的博客-程序员宅基地

/* strerror example : error list */#include #include #include int main (){ FILE * pFile; pFile = fopen ("unexist.ent","r"); if (pFile == NULL) printf ("Error opening file unexist.ent:_strerror

维数灾难与Lasso回归_维度<样本量_tomwang0322的博客-程序员宅基地

岭回归和lasso回归是为了解决过拟合问题,具体的它是为了解决特征数多,且特征之间相关的问题参考链接:https://blog.csdn.net/Joker_sir5/article/details/82756089..._维度

【91期】面试官:Spring 用了哪些设计模式?说三种即可_程序员的成长之路的博客-程序员宅基地

程序员的成长之路互联网/程序员/技术/资料共享关注阅读本文大概需要 7 分钟。来自:网络关于设计模式,如果使用得当,将会使我们的代码更加简洁,并且更具扩展性。本文主要讲解Spring中...

随便推点

Drupal核心路径泄露漏洞_drupal“keys”路径泄露_Yatere的博客-程序员宅基地

版本:Drupal Drupal 7.xhttp://localhost/?q[]=x-------------------------------------Hotfix:Search for:$path = trim($path, '/');And add the following line above:if(is__drupal“keys”路径泄露

CSS中的块级元素、行内元素和行内块级元素-程序员宅基地

由于不同的元素显示的方式是不同的,有的是一个元素占据一行的,有的是多个元素占据一行的。故CSS中将元素分为块级元素、行内元素和行内块级元素三个大类。1. 块级元素(inline)块级元素一般可以作为其他容器使用,可容纳块级元素和行内元素,其特点如下:块级元素可以设置宽(width)和高(height); 独占一行(float浮动除外); 元素的宽度如果不设置的话,默认为父元素的宽度...

时间戳转化成年月日时分秒格式的几种方法_时间戳转年月日时分秒_未曾遇你的博客-程序员宅基地

几种时间戳转换年月日格式的代码1. 时分秒格式:timefrom(时间戳, 是否中文)显示: 11小时14分钟04秒 11:14:04function timefrom(value, ind) { let result = parseInt(value) let h = Math.floor(result / 3600) < 10 ? '0' + Math.floor(result / 3600) : Math.floor(result / 3600)_时间戳转年月日时分秒

两个日期之间的时间差计算DateDiff_imhpw的博客-程序员宅基地

年份 yyyy 季度 q 月份 m 每年的某一日 y 日期 d 星期 ww 小时 h

python能做什么程序-学完python可以做什么?_编程大乐趣的博客-程序员宅基地

Python是一种面向对象、解释性的高级程序语言,它已经被应用在众多领域,包括web开发、操作系统管理、服务器运维的自动化脚本、科学计算、桌面软件、服务器软件(网络软件)、游戏等方面。未来它将被大规模应用在人工智能方面。下面我们具体介绍python语言的具体应用场景。(1) Web应用开发Python经常被用于Web开发。例如,通过mod_wsgi模块,Apache可以运行用Python编写的We..._用python可以写什么程序

推荐文章

热门文章

相关标签