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 应用.入坑一个多星期,通过学习官方文档以及手摸手的按 ...
随机推荐
- 解决git bash闪退问题 报openssl错误
问题描述:今天安装git之后发现Git Bash工具闪退. 于是试了各种办法之后,最后终于解决. 背景描述:git 下载地址:https://git-scm.com/download/win 下载成功 ...
- Dart简易教程 (1)---数据类型 运算符,类转换换
从下面开始学习DART编程 以下是一个简单的示例: main(){ var number = 42; print(number);}程序说明,dart是一个强大的脚本类语言,可以不预先定义变量类型 , ...
- python工作中总结
以下方法平时很少用,用其它解决方法,只是总结了一些其它同事的技巧 1 如何自动生成列表,加一个条件还能筛选 [x for x in range(10) if x>5 ] 来生一个字典试试 d ...
- Mac上Markdown的使用
Markdown是什么,且听我快快道来. 20年前,我第一次接触互联网,当时还是用 28.8k的猫拨号. 我从一本<电脑报>附赠的光盘里,找到了 台湾版的"烘培机"(烘 ...
- 358 day09字节流、字符流
day09[字节流.字符流] 主要内容 IO流 字节流 字符流 异常处理 Properties 教学目标 [ ] 能够说出IO流的分类和功能 [ ] 能够使用字节输出流写出数据到文件 [ ] 能够使用 ...
- PHP没有定时器?
确实,PHP没有类似于JS中的setInterval或者setTimeout这样的原生定时器相关的函数.但是我们可以通过其他方式来实现,比如使用declare. 先来看看是如何实现的,然后我们再好好学 ...
- [原创]OpenEuler20.03安装配置PostgreSQL13.4详细图文版
OpenEuler安装配置PostgreSQL 编写时间:2021年9月18日 作者:liupp 邮箱:liupp@88.com 序号 更新内容 更新日期 更新人 1 完成第一至三章内容编辑: 202 ...
- 2.docker安装及原理
一. docker的架构 1.1 docker的架构 先来看docker官网给出的docker架构图: 看官网,docker的架构描述: https://docs.docker.com/get-sta ...
- 后台开发 3个题目 array_chunk, 100块钱找零钱(动态规划 dynamic programming), 双向循环链表 llist 删除节点
1. array_chunk 实现 http://php.net/manual/en/function.array-chunk.php <?php function my_array_chunk ...
- django对layui中csrf_token处理方式及其它一些处理
第一:由于layui官方是没有csrf_token处理机制,所以,在使用layui中post请求,请不要按layui官方提供的两种方法进行设置 官方设置如下: table.render({ elem: ...