从零开始的TensorFlow+VScode开发环境搭建的步骤(图文)


Posted in Python onAugust 31, 2020

VScode不愧是用户数量上升最快的编辑器,界面华丽(当然,需要配合各种主题插件),十分容易上手且功能强大。之前用它写C++体验十分nice,现在需要学习tensorflow,而工欲善其事必先利其器,搭建一个舒服的开发环境是非常重要的第一步。

目标:在linux下从无到有,安装anaconde3, tensorflow, 配置vs code,直到可以运行一个tensorflow版hello world(实为mnist手写数据分类)。尽管有其他的安装tensorflow的方式,但使用anaconda安装最方便,而且在conda虚拟环境中安装不怕搞砸重来,反正是虚拟环境嘛。

安装Anaconda3

下载Anaconda

对国内用户来说,最快最方便的方式就是到清华镜像站上下载anaconda的安装包:

https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

安装Anaconda

打开终端,cd到下载目录。下载得到的文件具有.sh后缀,显然是一个shell脚本,于是用bash命令执行它:

bash Anaconda3-5.3.1-Linux-x86_64.sh

以下除非特殊说明,命令均为在bash下执行。

注意这里的文件名可能与你下载的文件名字不同,务必换成自己下载的文件名。

安装过程中会有一些需要确认的问题,一路yes即可。

配置环境变量

安装程序会提示你将Anaconda加入$PATH,如果你没有加入,或忘记了自己是否选择了YES,那么需要配置环境变量。

用任意的编辑器打开.bashrc文件(需要sudo 权限才能编辑),在文件末尾添加一行

export PATH="/home/lanhsi/anaconda3/bin:$PATH"
#注意,lanhsi是我的用户名,如果你也将Anaconda安装在默认位置,那么将lanhsi替换成你自己的用户名即可,否则需要将地址整个替换为anaconda的安装位置。

退出编辑器,执行

source ~/.bashrc

这条命令将重新载入你的bash配置,以使环境变量修改生效。

检验安装是否成功:

conda -V

如果像下图一样打印出conda版本号,说明安装成功。

从零开始的TensorFlow+VScode开发环境搭建的步骤(图文)

安装VS CODE

实际上安装Anaconda时,安装程序会声称anaconda与微软具有合作关系,然后询问你是否要安装VS CODE,如果你在这一步没有选择安装VS CODE,那么就需要自行安装了。

由于linux各发行版的安装方式都不同,因此这里不详细描述安装过程了。对于我使用的ubuntu19.10来说,从vs code官网下载.deb 包,然后终端运行

dpkg -i 包名.deb

即可

安装TENSORFLOW

首先,创建一个叫做tf的虚拟环境

conda create -n tf

然后,我们需要进入这个刚创建的tf环境中去安装tensorflow

source activate tf
#注:如要退出这个环境,只需要执行source deactivate tf

进入虚拟环境后,提示符会变化,显示你正处在的虚拟环境名字

从零开始的TensorFlow+VScode开发环境搭建的步骤(图文)

让conda去安装tensorflow,以及tensorflow依赖的一大堆其他软件

conda install tensorflow

过程比较漫长,可以先喝杯咖啡休息一下。

安装成功后,进入tf虚拟环境,进入python命令行,尝试导入tensorflow:

import tensorflow as tf

没有报错,那么说明tensorflow安装好了。

配置VSCODE

距离万事大吉只差一步了,只要在VS CODE中添加CONDA的环境,就能在VS CODE中方便的使用tensorflow了。

假定我们已经安装好了官方Python插件。打开VS CODE,点击文件->首选项,点击左侧列表中python旁边的小齿轮,选择配置扩展信息

从零开始的TensorFlow+VScode开发环境搭建的步骤(图文)

找到右边的配置选项autoComplete:extraPath,选择在settings.json中编辑

从零开始的TensorFlow+VScode开发环境搭建的步骤(图文)

图中选中的三行是我们需要添加的信息。这几行中,第一行自定义了一个Python解释器,将其设置为anaconda带的python解释器;后面几行配置了Python自动补全的路径,相当于是include了这些目录中的文件,这样VS CODE就可以读取到tensorflow,方便自动补全。同样,记得将路径中的lanhsi换成你的用户名。

不要忘了在配置完成后,更换Python解释器为图中下拉清单的最后一个也就是在settings.json中设置的那个,相当于将运行环境更换为我们刚添加的conda虚拟环境。

从零开始的TensorFlow+VScode开发环境搭建的步骤(图文)

创建一个py文件,内容为

import tensorflow as tf
mnist = tf.keras.datasets.mnist

(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
model = tf.keras.models.Sequential([
  tf.keras.layers.Flatten(input_shape=(28, 28)),
  tf.keras.layers.Dense(128, activation='relu'),
  tf.keras.layers.Dropout(0.2),
  tf.keras.layers.Dense(10, activation='softmax')
])


model.compile(optimizer='adam',
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])
model.fit(x_train, y_train, epochs=5)


model.evaluate(x_test,  y_test, verbose=2)

最后一步,在VSCODE的集成终端中运行这个文件。

如果配置成功,新建终端时,可以看到自动启动了conda 且进入了tf虚拟环境:

从零开始的TensorFlow+VScode开发环境搭建的步骤(图文)

code runner插件更是可以一步直接运行文件,非常方便。

到此VS CODE下的TENSORFLOW环境就搭好了。万事开头难,而一个好的开头又是成功的一半,环境搭好后我们的项目就等于已经开发了一半了(笑)

到此这篇关于从零开始的TensorFlow+VScode开发环境搭建的步骤(图文)的文章就介绍到这了,更多相关TensorFlow VScode 环境搭建内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现将pvr格式转换成pvr.ccz的方法
Apr 28 Python
Python用模块pytz来转换时区
Aug 19 Python
Python2.7.10以上pip更新及其他包的安装教程
Jun 12 Python
详解Python中的type和object
Aug 15 Python
Flask框架web开发之零基础入门
Dec 10 Python
python3.x实现base64加密和解密
Mar 28 Python
Python函数装饰器原理与用法详解
Aug 16 Python
python中hasattr()、getattr()、setattr()函数的使用
Aug 16 Python
Django1.11配合uni-app发起微信支付的实现
Oct 12 Python
pytorch的batch normalize使用详解
Jan 15 Python
Python中关于logging模块的学习笔记
Jun 03 Python
matplotlib图例legend语法及设置的方法
Jul 28 Python
python自动提取文本中的时间(包含中文日期)
Aug 31 #Python
Python Selenium自动化获取页面信息的方法
Aug 31 #Python
python+requests接口自动化框架的实现
Aug 31 #Python
python如何导出微信公众号文章方法详解
Aug 31 #Python
Python生成并下载文件后端代码实例
Aug 31 #Python
python exit出错原因整理
Aug 31 #Python
Python如何将模块打包并发布
Aug 30 #Python
You might like
PHP实现采集程序原理和简单示例代码
2007/03/18 PHP
php使用正则表达式提取字符串中尖括号、小括号、中括号、大括号中的字符串
2020/04/05 PHP
php结合md5的加密解密算法实例
2016/09/30 PHP
php通过会话控制实现身份验证实例
2016/10/18 PHP
TP5框架页面跳转样式操作示例
2020/04/05 PHP
Javascript SHA-1:Secure Hash Algorithm
2006/12/20 Javascript
js实现简单模态窗口,背景灰显
2008/11/14 Javascript
锋利的jQuery 要点归纳(一) jQuery选择器
2010/03/21 Javascript
javascript转换字符串为dom对象(字符串动态创建dom)
2010/05/10 Javascript
Javascript中获取出错代码所在文件及行数的代码
2010/09/23 Javascript
js动态控制table的tr、td增加及删除的具体实现
2014/04/30 Javascript
js中直接声明一个对象的方法
2014/08/10 Javascript
浅谈jQuery事件绑定原理
2015/01/02 Javascript
JavaScript判断IE版本型号
2015/07/27 Javascript
关于事件mouseover ,mouseout ,mouseenter,mouseleave的区别
2015/10/12 Javascript
JavaScript中将数组进行合并的基本方法讲解
2016/03/07 Javascript
JavaScript 消息框效果【实现代码】
2016/04/27 Javascript
深入浅析JavaScript中with语句的理解
2016/05/12 Javascript
JavaScript实现页面跳转的方式汇总
2016/05/16 Javascript
Javascript将JSON日期格式化
2016/08/23 Javascript
BootStrap入门教程(三)之响应式原理
2016/09/19 Javascript
获取当前月(季度/年)的最后一天(set相关操作及应用)
2016/12/27 Javascript
bootstrapValidator bootstrap-select验证不可用的解决办法
2017/01/11 Javascript
Bootstrap页面标题Page Header的实现方法
2017/03/22 Javascript
网页爬虫之cookie自动获取及过期自动更新的实现方法
2018/03/06 Javascript
Vue中使用方法、计算属性或观察者的方法实例详解
2018/10/31 Javascript
解决父组件将子组件作为弹窗调用只执行一次created的问题
2020/07/24 Javascript
[02:15]2014DOTA2国际邀请赛 专访LGD.lin小兔子是大腿
2014/07/14 DOTA
Django返回json数据用法示例
2016/09/18 Python
美国最古老的精致书写工具制造商:A.T. Cross(高仕)
2018/01/30 全球购物
世界上最大的高分辨率在线图片库:Alamy
2018/07/07 全球购物
企业财务经理岗位职责
2015/04/08 职场文书
小组口号霸气押韵
2015/12/24 职场文书
导游词之宁夏贺兰山岩画
2019/11/08 职场文书
用javascript制作qq注册动态页面
2021/04/14 Javascript
Python入门学习之类的相关知识总结
2021/05/25 Python