初识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)的更多相关文章

  1. Tensorflow学习笔记2:About Session, Graph, Operation and Tensor

    简介 上一篇笔记:Tensorflow学习笔记1:Get Started 我们谈到Tensorflow是基于图(Graph)的计算系统.而图的节点则是由操作(Operation)来构成的,而图的各个节 ...

  2. 用tensorflow学习贝叶斯个性化排序(BPR)

    在贝叶斯个性化排序(BPR)算法小结中,我们对贝叶斯个性化排序(Bayesian Personalized Ranking, 以下简称BPR)的原理做了讨论,本文我们将从实践的角度来使用BPR做一个简 ...

  3. Tensorflow学习笔记2019.01.22

    tensorflow学习笔记2 edit by Strangewx 2019.01.04 4.1 机器学习基础 4.1.1 一般结构: 初始化模型参数:通常随机赋值,简单模型赋值0 训练数据:一般打乱 ...

  4. Tensorflow学习笔记2019.01.03

    tensorflow学习笔记: 3.2 Tensorflow中定义数据流图 张量知识矩阵的一个超集. 超集:如果一个集合S2中的每一个元素都在集合S1中,且集合S1中可能包含S2中没有的元素,则集合S ...

  5. TensorFlow学习笔记之--[compute_gradients和apply_gradients原理浅析]

    I optimizer.minimize(loss, var_list) 我们都知道,TensorFlow为我们提供了丰富的优化函数,例如GradientDescentOptimizer.这个方法会自 ...

  6. TensorFlow学习路径【转】

    作者:黄璞链接:https://www.zhihu.com/question/41667903/answer/109611087来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...

  7. TensorFlow学习线路

    如何高效的学习 TensorFlow 代码? 或者如何掌握TensorFlow,应用到任何领域? 作者:黄璞链接:https://www.zhihu.com/question/41667903/ans ...

  8. tensorflow学习资料

    tensorflow学习资料 http://www.soku.com/search_video/q_tensorflow?f=1&kb=04112020yv41000__&_rp=1a ...

  9. 深度学习-tensorflow学习笔记(1)-MNIST手写字体识别预备知识

    深度学习-tensorflow学习笔记(1)-MNIST手写字体识别预备知识 在tf第一个例子的时候需要很多预备知识. tf基本知识 香农熵 交叉熵代价函数cross-entropy 卷积神经网络 s ...

  10. 截图:【炼数成金】深度学习框架Tensorflow学习与应用

    创建图.启动图 Shift+Tab Tab 变量介绍: F etch Feed 简单的模型构造 :线性回归 MNIST数据集 Softmax函数 非线性回归神经网络   MINIST数据集分类器简单版 ...

随机推荐

  1. 实战交付一套dubbo微服务到k8s集群(2)之Jenkins部署

    Jenkins官网:https://www.jenkins.io/zh/ Jenkins 2.190.3 镜像地址:docker pull jenkins/jenkins:2.190.3 1.下载Je ...

  2. Kubernets二进制安装(8)之部署四层反向代理

    四层反向代理集群规划 主机名 角色 IP地址 mfyxw10.mfyxw.com 4层负载均衡(主) 192.168.80.10 mfyxw20.mfyxw.com 4层负载均衡(从) 192.168 ...

  3. MySQL数据库系列(四)- InnoDB下的共享表空间和独立表空间详解

    一.概念 共享表空间: Innodb的所有数据保存在一个单独的表空间里面,而这个表空间可以由很多个文件组成,一个表可以跨多个文件存在,所以其大小限制不再是文件大小的限制,而是其自身的限制.从Innod ...

  4. Leetcode(94)-二叉树的中序遍历

    给定一个二叉树,返回它的中序 遍历. 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,3,2] 思路:和上篇的前序遍历一样,同样有递归和非递归的做法 (1)递归 vecto ...

  5. spring-cloud-eureka-client-consumer

    服务注册中心eureka-server已经搭好,并且SPRING-CLOUD-NETFLIX-EUREKA-CLIENT-APPLICATION提供一个hello服务 编写一个eureka-clien ...

  6. Ubuntu 18.04 + pip3 install virtualenvwrapper 报错 ERROR: virtualenvwrapper could not find virtualenv in your path

    接上片... 问题 virtualenvwrapper装好后, 发现使用mkvirtualenv XX时, 又找不到virtualenv了... apt install python3-virtual ...

  7. JAMstack (JavaScript + APIs + Markup)

    JAMstack (JavaScript + APIs + Markup) The modern way to build Websites and Apps that delivers better ...

  8. how to stop MongoDB from the command line

    how to stop MongoDB from the command line stop mongod https://docs.mongodb.com/manual/tutorial/manag ...

  9. node.js & ORM & ODM

    node.js & ORM & ODM ODM & NoSQL Object Data Modeling 对象数据模型 Object Document Mapping 对象文档 ...

  10. node.js 如何处理一个很大的文件

    node.js 如何处理一个很大的文件 思路 arraybuffer 数据分段 时间分片 多线程 web workers sevice workers node.js 如何处理一个很大的文件 http ...