TensorFlow从入门到入坑(1)
初识TensorFlow
一、术语潜知
深度学习:深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习(将原始数据转换成为能够被机器学习来有效开发的一种形式)的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。
神经网络:(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。
实例:要对其进行预测的事物。例如,实例可以是一个网页,您希望将其分类为“与猫相关”或“与猫无关”。
标签:预测任务的答案,它可以是由机器学习系统生成的答案,也可以是训练数据中提供的正确答案。例如,某个网页的标签可能是“与猫相关”。
特征:预测任务中使用的实例的属性。例如,某个网页可能具有“包含字词‘猫’”这一特征。
特征列:一组相关特征,例如用户可能居住的所有国家/地区的集合。样本的特征列中可能包含一个或多个特征。“特征列”是 Google 专用的术语。特征列在 Yahoo/Microsoft 使用的 VW 系统中称为“命名空间”,也称为场。
样本:一个实例(及其特征)和一个标签。
模型:预测任务的统计表示法。您使用样本训练模型,然后使用模型进行预测。
指标:一个数值。也许(但不一定)可以直接得到优化。
目标:算法尝试优化的一种指标。
管道:机器学习算法的基础架构。管道包括从前端收集数据、将数据放入训练数据文件、训练一个或多个模型以及将模型运用到生产环境。
点击率:点击广告中的链接的网页访问者所占的百分比。
二、为什么我推荐TensorFlow深度学习框架
在如此多的深度神经网络框架,诸如TensorFlow、Keras、PyTorch、Caffe、Deeplearning4j中为什么我喜欢TensorFlow呢,因为它完全开源,并且有强大的社区支持,且它支持多种语言来创建深度学习模型,比如Python和R,并且有详细的文档。
1.突出的TensorFlow组件
- Tensorboard: 帮助使用数据流图进行有效的数据可视化
- TensorFlow:用于快速部署新算法/试验
2.TensorFlow可以做些什么
- 基于文本的应用:语言检测、文本摘要
- 图像识别:图像字幕、人脸识别、目标检测
- 声音识别
- 时间序列分析
- 视频分析
3.TensorFlow的主要技术特性
| 特性 | 描述 |
|---|---|
| 编程模型 | Dataflow-like model(数据流模型) |
| 语言 | 支持Python、C++、Go、Rust、Haskell、Java、JavaScript、Julia、R |
| 部署 | Code once,run everywhere(一次编写,各处运行) |
| 计算资源 | CPU、GPU、TPU |
| 实现方式 | Local Implementation(单击实现),Distributed Implementation(分布式实现) |
| 平台支持 | 谷歌云平台,Hadoop分布式文件系统 |
| 数学表达 | Math Graph Expression(数学计算图表达),Auto Differentiation(自动微分) |
| 优化 | 共同子图消除、异步核优化、通信优化、模型并行、数据并行、流水线 |
4.安装TensorFlow(win10)
1.首先需要将pip更新到最新版本
pip install --upgrade pip
2.安装TensorFlow
pip install tensorflow
3.验证安装效果
python -c "import tensorflow as tf;print(tf.reduce_sum(tf.random.normal([1000, 1000])))"
如若显示一内容,则表示安装成功:

为了确保安装成功,再来进一步在python交互环境中验证一下,依次输入以下内容:
>>> import tensorflow as tf
>>> tf.compat.v1.disable_eager_execution() #保证sess.run()能够正常运行,因为TensorFlow2.0版本无法兼容TensorFlow1.0版本
>>> hello = tf.constant('Hello,Tensorflow')
>>> sess= tf.compat.v1.Session()#版本2.0的函数
>>> print(sess.run(hello))
如果最后出现以下内容,则说明成功:

需要注意的是如果在刚输入第一句import tensorflow as tf时就产生错误,提示无法找到对应的模块,那就需要回退TensorFlow版本,此时先卸载已有的TensorFlow:
pip uninstall tensorflow
再继续输入以下命令:
python -m pip install tensorflow==2.0.0 -ihttp://pypi.douban.com/simple --trusted-host pypi.douban.com
此时成功解决错误
TensorFlow从入门到入坑(1)的更多相关文章
- TensorFlow从入门到入坑(2)
TensorFlow学习(2) 一.jupyter notebook的安装和使用 1. 什么是jupyter notebook jupyter notebook(http://jupyter.org/ ...
- VirtualBox 虚拟机 从入门到入坑
...
- webpack入坑之旅(三)webpack.config入门
这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...
- webpack入坑之旅(二)loader入门
这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack 在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...
- webpack入坑之旅(六)配合vue-router实现SPA
这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...
- webpack入坑之旅(五)加载vue单文件组件
这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...
- webpack入坑之旅(四)扬帆起航
这是一系列文章,此系列所有的练习都存在了我的github仓库中vue-webpack,在本人有了新的理解与认识之后,会对文章有不定时的更正与更新.下面是目前完成的列表: webpack入坑之旅(一)不 ...
- webpack入坑之旅(一)不是开始的开始
最近学习框架,选择了vue,然后接触到了vue中的单文件组件,官方推荐使用 Webpack + vue-loader构建这些单文件 Vue 组件,于是就开始了webpack的入坑之旅.因为原来没有用过 ...
- Angular 从入坑到挖坑 - Angular 使用入门
一.Overview angular 入坑记录的笔记第一篇,完成开发环境的搭建,以及如何通过 angular cli 来创建第一个 angular 应用.入坑一个多星期,通过学习官方文档以及手摸手的按 ...
随机推荐
- 1.docker概述及其历史
一. 为什么会出现docker? 不用说, 肯定是时代进步的产物. 那么, 他为什么能火? 一定是解决了痛点问题. docker也不是一下子就火起来了, 他的火也是有一个过程的, 我们先来看看为什么会 ...
- 在windows中给git修改默认的编辑器为sublime
首先,需要配置sublime的为环境变量,这是为了让git能通过命令调用sublime.也可以写一个.bat脚本.然后,让git调用bat脚本也可以 配置环境变量path到subl.exe的目录 脚本 ...
- 5.21学习总结——android开发实现用户头像的上传
最近在做个人头像的上传,具体是能调用摄像头和从相册进行选择.本篇文章参考的我的同学的博客,大家有兴趣可以去原作者那里去看看: Hi(.・∀・)ノ (cnblogs.com) 1.使用glide进行图片 ...
- switchery插件:多个按钮,用jquery进行切换
单个按钮可以参照这个链接https://blog.csdn.net/u012233776/article/details/53305846 多个按钮时, html中其中想操作这个按钮开启与关闭 < ...
- DEDE整合套件实现本地多个网站随意切换的开发环境
一.修改WEB全局配置: 在Listen 80 后面添加自己的端口号. 例如,2020是我的端口 Listen 2020 二.修改WEB站点配置: a---在NameVirtualHost *:80后 ...
- cgroup之cpu关键参数
cpu.cfs_period_us specifies a period of time in microseconds (µs, represented here as "us" ...
- [转载]PHP命名规则
PHP命名规则 引用地址:http://www.cnblogs.com/pengxl/p/3571157.html 就一般约定而言,类.函数和变量的名字应该是能够让代码阅读者能够容易地知道这些代码的作 ...
- 定要过python二级 选择第3套
1 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. . 13. 14. 15. 16. 17. (1)说明了一个问题 所谓的方向是从左到右还是从右到左 是看的是步长 步长的 ...
- 华为云计算IE面试笔记-eBackup有哪几种备份组网方式,各备份组网方式主要的应用场景及备份流程?
应用场景: LAN-Base一般用于备份数据量小,且对备份窗口没有特殊要求的场景,此类场景下备份服务器和备份代理一般是虚拟机部署. LAN-Free一般用于备份数据量较大,且对备份窗口要求比较严格的场 ...
- P4091-[HEOI2016/TJOI2016]求和【斯特林数,NTT】
正题 题目链接:https://www.luogu.com.cn/problem/P4091 题目大意 给出\(n\),求 \[\sum_{i=0}^n\sum_{j=0}^i\begin{Bmatr ...