从零开始的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 相关文章推荐
详解Django中的权限和组以及消息
Jul 23 Python
Python中偏函数用法示例
Jun 07 Python
python读取目录下最新的文件夹方法
Dec 24 Python
python 绘制拟合曲线并加指定点标识的实现
Jul 10 Python
Python解析命令行读取参数之argparse模块
Jul 26 Python
使用 python pyautogui实现鼠标键盘控制功能
Aug 04 Python
python Django里CSRF 对应策略详解
Aug 05 Python
Python hmac模块使用实例解析
Dec 24 Python
Python使用configparser库读取配置文件
Feb 22 Python
Django 拼接两个queryset 或是两个不可以相加的对象实例
Mar 28 Python
Python: glob匹配文件的操作
Dec 11 Python
python实现自动清理文件夹旧文件
May 10 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
SONY SRF-M100的电路分析
2021/03/02 无线电
中篇:安装及配置PHP
2006/12/13 PHP
php的POSIX 函数以及进程测试的深入分析
2013/06/03 PHP
php 发送带附件邮件示例
2014/01/23 PHP
php文件系统处理方法小结
2016/05/23 PHP
PHP Oauth授权和本地加密实现方法
2016/08/12 PHP
PHP类和对象相关系统函数与运算符小结
2016/09/28 PHP
thinkPHP自定义类实现方法详解
2016/11/30 PHP
Nigma vs AM BO3 第二场2.13
2021/03/10 DOTA
非常不错的一个javascript 类
2006/11/07 Javascript
Jquery ajaxsubmit上传图片实现代码
2010/11/04 Javascript
IE下window.onresize 多次调用与死循环bug处理方法介绍
2013/11/12 Javascript
javascript实现数据双向绑定的三种方式小结
2017/03/09 Javascript
原JS实现banner图的常用功能
2017/06/12 Javascript
Bootstrap Table 删除和批量删除
2017/09/22 Javascript
JavaScript中关于class的调用方法
2017/11/28 Javascript
js将键值对字符串转为json字符串的方法
2018/03/30 Javascript
Vue在页面右上角实现可悬浮/隐藏的系统菜单
2018/05/04 Javascript
Vue实现商品详情页的评价列表功能
2019/09/04 Javascript
react-native聊天室|RN版聊天App仿微信实例|RN仿微信界面
2019/11/12 Javascript
举例讲解Python中的身份运算符的使用方法
2015/10/13 Python
python开发之for循环操作实例详解
2015/11/12 Python
Python中 Lambda表达式全面解析
2016/11/28 Python
Python实现判断并移除列表指定位置元素的方法
2018/04/13 Python
python 协程中的迭代器,生成器原理及应用实例详解
2019/10/28 Python
Python3.7黑帽编程之病毒篇(基础篇)
2020/02/04 Python
Shopee印度尼西亚:东南亚与台湾市场最大电商平台
2018/06/17 全球购物
Lulu Guinness露露·吉尼斯官网:红唇包
2019/02/03 全球购物
初中校园广播稿
2014/02/02 职场文书
2014年底工作总结
2014/12/15 职场文书
2016年党员公开承诺书范文
2016/03/24 职场文书
智慧人生:永远不需要向任何人解释你自己
2019/08/20 职场文书
python第三方网页解析器 lxml 扩展库与 xpath 的使用方法
2021/04/06 Python
python字符串拼接.join()和拆分.split()详解
2021/11/23 Python
Pygame游戏开发之太空射击实战敌人精灵篇
2022/08/05 Python
解决ubuntu安装软件时,status-code=409报错的问题
2022/12/24 Servers