机器学习速成课程笔记10:使用TF的基本步骤

2023-11-13

微笑快速翻阅,快速学习

TensorFlow 是一个用于人工智能的开源神器

TensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。它灵活的架构让你可以在多种平台上展开计算,例如台式计算机中的一个或多个CPU(或GPU),服务器,移动设备等等。TensorFlow 最初由Google大脑小组(隶属于Google机器智能研究机构)的研究员和工程师们开发出来,用于机器学习和深度神经网络方面的研究,但这个系统的通用性使其也可广泛用于其他计算领域。

什么是数据流图(Data Flow Graph)?

数据流图用“结点”(nodes)和“线”(edges)的有向图来描述数学计算。“节点” 一般用来表示施加的数学操作,但也可以表示数据输入(feed in)的起点/输出(push out)的终点,或者是读取/写入持久变量(persistent variable)的终点。“线”表示“节点”之间的输入/输出关系。这些数据“线”可以输运“size可动态调整”的多维数据数组,即“张量”(tensor)。张量从图中流过的直观图像是这个工具取名为“Tensorflow”的原因。一旦输入端的所有张量准备好,节点将被分配到各种计算设备完成异步并行地执行运算。

下图显示了 TensorFlow 工具包的当前层次结构:

                

                                                         图 1. TensorFlow 工具包层次结构。

下表总结了不同层的用途:

TensorFlow 由以下两个组件组成:

这两个组件类似于 Java 编译器和 JVM。正如 JVM 会实施在多个硬件平台(CPU 和 GPU)上一样,TensorFlow 也是如此。

您应该使用哪个 API?您应该使用能够解决问题的最高级抽象层。较高级别的抽象层更易于使用,但(设计方面)不够灵活。我们建议您先从最高级 API 入手,让所有组件正常运作起来。如果您希望在某些特殊建模方面能够更加灵活一些,则可以降低一个级别。请注意,每个级别都是使用低级 API 构建的,因此降低层次结构级别应该比较直观。

tf.estimator API

我们将使用 tf.estimator 来完成机器学习速成课程中的大部分练习。您在练习中所做的一切都可以在较低级别(原始)的 TensorFlow 中完成,但使用 tf.estimator 会大大减少代码行数。

tf.estimator 与 scikit-learn API 兼容。scikit-learn 是极其热门的 Python 开放源代码机器学习库,拥有超过 10 万名用户,其中包括许多 Google 员工。

import tensorflow as tf

# Set up a linear classifier.
classifier = tf.estimator.LinearClassifier()

# Train the model on some example data.
classifier.train(input_fn=train_input_fn, steps=2000)

# Use it to predict.
predictions = classifier.predict(input_fn=predict_input_fn)
------------------------------------------关键词分界线------------------------------

1.Estimator

tf.Estimator 类的一个实例,用于封装负责构建 TensorFlow 图并运行 TensorFlow 会话的逻辑。您可以创建自己的自定义 Estimator(如需相关介绍,请点击此处),也可以将其他人预创建的 Estimator 实例化。

预创建的 Estimator (pre-made Estimator)

其他人已建好的 Estimator。TensorFlow 提供了一些预创建的 Estimator,包括 DNNClassifierDNNRegressorLinearClassifier。您可以按照这些说明构建自己预创建的 Estimator。

自定义 Estimator (custom Estimator)

您按照这些说明(https://www.tensorflow.org/get_started/custom_estimators)自行编写的 Estimator

预创建的 Estimator 相对。

2.张量 (Tensor)

TensorFlow 程序中的主要数据结构。张量是 N 维(其中 N 可能非常大)数据结构,最常见的是标量、向量或矩阵。张量的元素可以包含整数值、浮点值或字符串值。

3.图 (graph)

TensorFlow 中的一种计算规范。图中的节点表示操作。边缘具有方向,表示将某项操作的结果(一个张量)作为一个操作数传递给另一项操作。可以使用 TensorBoard 直观呈现图。

TensorBoard

一个信息中心,用于显示在执行一个或多个 TensorFlow 程序期间保存的摘要信息。






本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

机器学习速成课程笔记10:使用TF的基本步骤 的相关文章

随机推荐

  • 【重制版】10分钟学会WINDOWS、MAC、LINUX如何安装GPT桌面版

    文章目录 1 前言 2 Windows版下载安装 2 1 安装包 2 2 winget下载 注意看 不是wget 3 Mac版下载安装 3 1 安装包 3 2 homebrew安装 4 Linux版下载安装 4 1 安装包 4 2 终端下载
  • 爬虫(1)

    使用urllib获取百度首页源码 import urllib request 1 定义一个url 就是你要访问的地址 url http www baidu com 2 模拟浏览器向服务器发送请求 response urllib reques
  • pip install opencv问题ImportError: OpenCV loader: missing configuration file: ['config-3.6.py', 'conf

    Traceback most recent call last File train py line 1 in
  • Java并发编程学习16-线程池的使用(上)

    线程池的使用 上 引言 1 任务和执行策略间的隐性耦合 1 1 线程饥饿死锁 1 2 运行时间较长的任务 2 设置线程池的大小 总结 引言 前面的章节介绍了任务执行框架及其实际应用的一些内容 本篇开始将分析在使用任务执行框架时需要注意的各种
  • Android Studio Debug:编码五分钟,调试俩小时

    前言 整理并积累Android开发过程中用到的一些调试技巧 通过技巧性的调试技能 辅助增强代码的健壮性 安全性 正确性 案例一 抛出明显异常 常见的 除数为0问题 class MainActivty AppCompatActivity ov
  • 第八次-字符串(一)

    字符串和多维数组 字符串 1 串的逻辑结构 串 零个或多个字符组成的有限序列 串长度 串中所包含的字符个数 空串 长度为0的串 记为 非空串通常记为 S s1 s2 sn 其中 S是串名 双引号是定界符 双引号引起来的部分是串值 si 1
  • vue数组的截取并放入一个新数组

    最近用到数组 捣鼓了好久 终于是自己想要的效果了 首先先循环遍历data中的数组 取到我要的时间年月 richengList id 0 name 你有一个会议 region 2019 12 11 id 1 name 你你有一个会议 regi
  • windows下vscode安装kubernetes环境并打开阿里云CSK

    1 通过Vscode的扩展找出kubernetes 然后点击install 2 安装完成后 会要自动提示你安装依赖项 如果不提示你可以点击下图的刷新按钮 3 windows系统好像都不能安装成功 4 所以我们需要去windows的windo
  • QT报错:multiple definition of 'qMain(int ,char**)'

    QT导入项目时 出现重定义错误 今天在导入人家完整的QT项目时 在导入之后 点击构建 出现很多重定义的问题 具体如下图所示 出现重定义错误 经过网上查找解决办法 得知是因为重复的导入项目 导致项目中项目文件重复引用了一些文件 如下图所示 解
  • Claude:Anthropic推出的新一代人工智能聊天机器人

    Claude是Anthropic研发的人工智能聊天机器人 它可以通过自然语言理解parsed理解你的消息并自动生成回复 Claude专注于人机对话 致力于提供最佳的体验与帮助 Claude具有以下主要功能 1 强大的自然语言理解能力 Cla
  • jsp页面中JSTL/EL标签引用java后台静态static字段的方法总结

    为什么使用该功能 项目中的每个页面都包含产品名称 Logo 版本等信息 我希望修改一处 其它所有的全部跟着变 有同学会说那就都引用一个页面 就Ok了 但是我希望这些信息都是可以通过后台代码修改的 修改后保存到数据库和一个静态类中 其实后台直
  • ArrayList源码解析(二)

    在末尾添加一个元素add E e public boolean add E e ensureCapacityInternal size 1 确保内部容量够用 必要的话进行扩容 否则elementData size 将会数组越界 elemen
  • 报名丨 “中国的城市化、数字技术和创新市场” ——清华大学-麻省理工学院联合训练营开始招募啦...

    世界各地的城市正竞相利用数字技术改造其城市系统 使之更有效率 更可持续 更有弹性和活力 数字技术带来了城市规划 发展 运行 治理等方面快速而深刻的变化 技术创新和城市化正在融合 以形成新的商业模式以及企业 以应对城市挑战 中国正进行着全球最
  • 力扣二叉树,根据leetcode的控制台输入快速在本地建树

    使用说明 目的 为了刷二叉树题目时根据leetcode的控制台输入快速在本地建树 例子 leetocde 控制台输入 3 9 20 null null 15 7 ide中java代码 将数值复制到数组中 并将null用 Integer MI
  • 微信小程序如何监听左上角的返回按钮

    在微信小程序中 如果页面出现多级跳转 就会出现一种恶心的bug 比如 从首页进入A页面 然后在A页面进行了点击一个新增或者编辑的B页面 操作完成之后 B级页面是会回调到A页面 然后继续在A页面进行跳转到B页面进行操作 这种循环多次之后 会发
  • SourceTree导入产品证书

    SourceTree导入产品证书 可以到我的资源中下载 SourceTree产品证书 解压后得到一个文件 sourcetree license 直接导入即可使用
  • Matlab知识点基础(一)

    最近感觉在这上面搜相应的知识点都好困难 所以自己写点总结 以免又忘了 1 循环的总结 1 1 编写MATLAB程序 计算1到100的和 for 循环 s 0 for i 1 1 100 这里分别是初始值 间隔 终止值 s s i end s
  • live555学习之二和客户端通信流程顶层

    1 创建了一个 RTSPClientConnection 类型的实例 session RTSPClientConnection 2 调用该类的处理函数 session gt incomingRequestHandler1 2 1 读取 so
  • python基础语法

    基础语法 持续学习更新中 1 变量类型 2 逻辑语句 3 类 Python内置类属性 4 错误和异常 1 变量类型 数字 字符串 字符串可以看做是字符的列表 不存在字符类型 包含一个字符的也称作字符串 创建字符串可以用单引号也可以用双引号
  • 机器学习速成课程笔记10:使用TF的基本步骤

    快速翻阅 快速学习 TensorFlow 是一个用于人工智能的开源神器 TensorFlow 是一个采用数据流图 data flow graphs 用于数值计算的开源软件库 节点 Nodes 在图中表示数学操作 图中的线 edges 则表示