斯坦福tensorflow教程(一) tensorflow概述

简介: 斯坦福tensorflow教程(一) tensorflow概述

Tensorflow简介


TensorFlow™ 是一个使用数据流图进行数值计算的开放源代码软件库。图中的节点代表数学运算,而图中的边则代表在这些节点之间传递的多维数组(张量)。借助这种灵活的架构,您可以通过一个 API 将计算工作部署到桌面设备、服务器或移动设备中的一个或多个 CPU 或 GPU。TensorFlow 最初是由 Google Brain 团队(隶属于 Google 机器智能研究部门)中的研究人员和工程师开发的,旨在用于进行机器学习和深度神经网络研究。但该系统具有很好的通用性,还可以应用于众多其他领域。中文官网


为什么选择tensorflow


  • Python 接口
  • 便捷性/灵活性:可以将计算模型部署到一个或多个桌面、服务器、移动等多种设备(CPUs or GPUs);适用于多种系统 Raspberry Pi, Android, Windows, iOS, Linux到 server farms
  • 可视化:了解下TensorBoard
  • 可以保存/还原模型
  • 自动微分(Auto-differentiation autodiff )
  • 庞大社区,非常流行(>30万提交次数,>8.5万相关开源库)


80.png


  • 很多惊艳的基于tensorflow的项目


  1. WaveNet: A Generative Model for Raw Audio (DeepMind, 2016)
    81.png
  2. Dermatologist-level classification of skin cancer with deep neural networks (Esteva, Kuprel, et al.,
    Nature 2017)
    82.png
  3. Magenta (Google)

Use machine learning to create compelling art and music. Their projects are really fun! For example, please check out Draw Together with a Neural Network.


83.png


基于Tensorflow的框架


有很多基于Tensorflow构建的APIs,比如一些流行的有Keras,TFLearn和Sonnet.这些高级框架可以实现更快的实验步骤(仅需很少代码),同时这些框架也吸引了大量用户。然而Tensorflow主要的目的不是提供“开箱即用”的机器学习方法。而是,Tensorflow提供了一套强大的计算函数和类,允许用户从实验中定义自己的model。这个过程可能非常复杂,但是可以提供了更多可能性,你可以根据自己的想法,基于Tensorflow构建任何结构的模型


资源


  • The official documentations
  • TensorFlow official sample models
  • StackOverflow
    也有一些英文指导书:
  • Aurélien Géron’s Hands-On Machine Learning with Scikit-Learn and TensorFlow (O’Reilly, March 2017)
  • François Chollet’s Deep Learning with Python (Manning Publications, November 2017)
  • Nishant Shukla’s Machine Learning with TensorFlow (Manning Publications, January 2018)
  • Lieder et al.’s Learning TensorFlow A Guide to Building Deep Learning Systems (O’Reilly, August 2017)


Tensorflow基础


为了理解Tensorflow,我们首先要明确以下几点:

  • 使用图 (graph) 来表示计算任务.
  • 在被称之为 会话 (Session) 的上下文 (context) 中执行图.
  • 使用 tensor 表示数据.
  • 通过 变量 (Variable) 维护状态.


数据流图 Data Flow Graphs


Tensorflow将计算与执行分离开来:

阶段1:创建一张图,定义好图中的就算

阶段2:使用session(会话)去执行图中的计算



84.png


什么是tensor


tensor 看作是一个 n 维的数组或列表.


85.png


执行下面并不会输出8,而是输出tensor相关信息


86.png


需要创建一个session,然后在session计算图,取出a的值


87.png


为了取回操作的输出内容, 可以在使用 Session 对象的 run() 调用 执行图时, 传入一些 tensor, 这些 tensor 会帮助你取回结果. 在之前的例子里, 我们只取回了单个节点 state, 但是你也可以取回多个 tensor:


input1 = tf.constant(3.0)
input2 = tf.constant(2.0)
input3 = tf.constant(5.0)
intermed = tf.add(input2, input3)
mul = tf.mul(input1, intermed)
with tf.Session() as sess:
  result = sess.run([mul, intermed])
  print result
# 输出:
# [array([ 21.], dtype=float32), array([ 7.], dtype=float32)]


需要获取的多个 tensor 值,在 op 的一次运行中一起获得(而不是逐个去获取 tensor)。

更多关于Tensorflow的计算和操作参考官方文档


相关实践学习
基于阿里云DeepGPU实例,用AI画唯美国风少女
本实验基于阿里云DeepGPU实例,使用aiacctorch加速stable-diffusion-webui,用AI画唯美国风少女,可提升性能至高至原性能的2.6倍。
相关文章
|
4月前
|
机器学习/深度学习 PyTorch TensorFlow
【TensorFlow】深度学习框架概述&TensorFlow环境配置
【1月更文挑战第26天】【TensorFlow】深度学习框架概述&TensorFlow环境配置
|
7月前
|
机器学习/深度学习 PyTorch TensorFlow
深度学习框架教程:介绍一些流行的深度学习框架 (如TensorFlow、PyTorch等)
深度学习框架教程:介绍一些流行的深度学习框架 (如TensorFlow、PyTorch等)
70 0
|
9月前
|
XML TensorFlow API
TensorFlow Object Detection API 超详细教程和踩坑过程
TensorFlow Object Detection API 超详细教程和踩坑过程
131 1
|
机器学习/深度学习 Linux TensorFlow
基于TensorFlow训练的人脸识别神经网络 毕业设计完整教程
基于TensorFlow训练的人脸识别神经网络 毕业设计完整教程
197 0
|
机器学习/深度学习 PyTorch TensorFlow
史上最全深度学习环境配置教程---适用于各种深度学习框架---Pytorh TensorFlow Keras-等和各种python环境(三)
史上最全深度学习环境配置教程---适用于各种深度学习框架---Pytorh TensorFlow Keras-等和各种python环境(三)
史上最全深度学习环境配置教程---适用于各种深度学习框架---Pytorh TensorFlow Keras-等和各种python环境(三)
|
机器学习/深度学习 TensorFlow 算法框架/工具
史上最全深度学习环境配置教程---适用于各种深度学习框架---Pytorh TensorFlow Keras-等和各种python环境(二)
史上最全深度学习环境配置教程---适用于各种深度学习框架---Pytorh TensorFlow Keras-等和各种python环境(二)
史上最全深度学习环境配置教程---适用于各种深度学习框架---Pytorh TensorFlow Keras-等和各种python环境(二)
|
机器学习/深度学习 Web App开发 IDE
史上最全深度学习环境配置教程---适用于各种深度学习框架---Pytorh TensorFlow Keras-等和各种python环境(一)
史上最全深度学习环境配置教程---适用于各种深度学习框架---Pytorh TensorFlow Keras-等和各种python环境(一)
史上最全深度学习环境配置教程---适用于各种深度学习框架---Pytorh TensorFlow Keras-等和各种python环境(一)
|
机器学习/深度学习 人工智能 自然语言处理
人工智能实践Tensorflow笔记:人工智能概述-1
人工智能实践Tensorflow笔记:人工智能概述-1
人工智能实践Tensorflow笔记:人工智能概述-1
|
机器学习/深度学习 TensorFlow API
TensorFlow 2.0 概述
在本文中将介绍与我的毕设论文演示案例相关的TensorFlow的一些基础知识,包括张量、计算图、操作、数据类型和维度以及模型的保存,接着在第二部分,本文将介绍演示案例代码中用到的一些TensorFlow 2.0中的高阶API,代码中不会涉及像TensorFlow 1.x版本中的Session等一些较为复杂的东西,所有的代码都是基于高阶API中的tf.keras.models来构建的(具体模型构建使用Sequential按层顺序构建),可以大大的方便读者更好的理解代码。
TensorFlow 2.0 概述
|
机器学习/深度学习 人工智能 数据可视化
斯坦福tensorflow教程(八) 计算机视觉和卷积网络简介
斯坦福tensorflow教程(八) 计算机视觉和卷积网络简介
125 0
斯坦福tensorflow教程(八) 计算机视觉和卷积网络简介

热门文章

最新文章