1、Tensorflow的简介

就是一个科学计算的库,用于数据流图(张量流,可以理解成一个N维得数组)。

Tensorflow支持CPU和GPU,内部实现了对于各种目标函数求导的方式。

2、Tensorflow的安装(python3.5以上)

# pip install tensorflow==1.4.0   安装cpu版本

# pip install tensorflow-gpu 安装gpu版本

# pip3.6 install tensorflow -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com  使用阿里云镜像安装

3、基本概念

图(graph):描述计算过程

张量(tensor):数据,每个tensor是一个类型化的多维数组

操作(op):一个op获得多个tensor,输入/输出

会话(session):图的op的操作执行,定义什么时候运行

变量(variable):过程被改变,用于维护状态

4、边

实线,表述数据依赖,从前到后,叫前向传播,x-->y,而残差从后向前流动一遍,就是反向传播

虚线,表示控制依赖,用于控制操作的运行。

5、数据属性

tf.float32/64      32/64位浮点型

tf.int64/32/16/8    有符号整型

tf.uint8   无符号整型

tf.string  字节数组

tf.bool  布尔型

tf.complex64  由32位浮点组成的复数

tf.qint8/32 用于量化操作的8/32位有符号整型

tf.qunit8  用于量化操作的8位无符号整型

6、节点,节点又称算子,它代表一个操作

数学运算:Add、Subtract、Multiply、Div、Exp、Log....

数组运算:Concat、Slice、Split、Constant、Rank、Shape....

矩阵运算:MatMul、Matrixlnverse....

有状态的操作:Variable、Assign....

神经网络构建:SoftMax、Sigmoid、ReLU...

检查点:Save、Restore....

队列和同步操作:Enqueue、Dequeue、MutexAcquire

控制张量流的操作:Merge、Switch、Enter、Leave....

7、程序结构

构建阶段和执行阶段

8、创建一个简单的图(全部是常量的)

# -- encoding:utf-8 --

import tensorflow as tf

# 定义常量矩阵a(dype类型为常量,shape可构建矩阵类型)a = tf.constant([[1,2],[3,4]],dtype=tf.int32)b = tf.constant([5,6,7,8],dtype=tf.int32,shape=[2,2])# 以a,b作为输入,进行矩阵的乘法操作matmulc = tf.matmul(a,b)g = tf.add(a,c)

#op之间如果没有依赖关系,会并行处理#调用session的run方法来执行矩阵

#log_device_placement是否打日志,默认不打日志#allow_soft_placement是否动态使用CPU和GPU,默认为Falsewith tf.Session(config=tf.ConfigProto(log_device_placement=True,allow_soft_placement=True)) as sess1:    result = sess1.run(g)    # 结果是多个值,返回一个列表    # result = sess.run(fetches=[c,g])    print('type:{},value:{}'.format(type(result), result))

9、创建一个有变量的图

# -- encoding:utf-8 --

import tensorflow as tf#定义一个变量w1w1 = tf.Variable(initial_value=3.0,dtype=tf.float32,name='w1')#定义一个常量a =tf.constant(value=2.0,dtype=tf.float32,name='w1')#定义一个变量w2w2 = tf.Variable(w1.initialized_value() * a,name='w2')

c = tf.add(w1,w2)#进行全局变量初始化init_op = tf.global_variables_initializer()

with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:    sess.run(init_op)    result = sess.run(c)    print("result:{}".format(result))

10、feed填充机制,在构建图使用placeholder类型的API临时替代任意操作的张量(占位符)

# -- encoding:utf-8 --import tensorflow as tf#构建一个矩阵的乘法,但是矩阵在运行的时候给定#dtype、shape、name
m1 = tf.placeholder(dtype=tf.float32,shape=[2,3],name='placeholder_m1')
m2 = tf.placeholder(dtype=tf.float32,shape=[3,2],name='placeholder_m2')
m3 = tf.matmul(m1,m2)init_op = tf.global_variables_initializer()with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:sess.run(init_op)result = sess.run(fetches=[m3],feed_dict={m1: [[1,2,3],[4,5,6]],m2: [[1,2],[3,4],[5,6]]})print('result:{}'.format(result))

11、变量进行更新操作,迭代操作

import tensorflow as tfa = tf.Variable(initial_value=0,dtype=tf.int32,name='v_x')
#变量a的更新
assign_op = tf.assign(ref = a,value = a+1)init_op = tf.global_variables_initializer()with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:sess.run(init_op)for i in range(5):r_x = sess.run(a)sess.run(assign_op)print(r_x)

转载于:https://www.cnblogs.com/allen-GC/p/10703693.html

一、TensorFlow的简介和安装和一些基本概念相关推荐

  1. DL框架之Tensorflow:深度学习框架Tensorflow的简介、安装、使用方法之详细攻略

    DL框架之Tensorflow:深度学习框架Tensorflow的简介.安装.使用方法之详细攻略 目录 Tensorflow的简介 1.描述 2.TensorFlow的六大特征 3.了解Tensorf ...

  2. TensorFlow:深度学习框架TensorFlow TensorFlow_GPU的简介、安装、测试之详细攻略

    TensorFlow:深度学习框架TensorFlow & TensorFlow_GPU的简介.安装.测试之详细攻略 目录 TensorFlow的简介 TensorFlow的安装 1.tens ...

  3. DL框架之TensorFlow:深度学习框架TensorFlow Core(低级别TensorFlow API)的简介、安装、使用方法之详细攻略

    DL框架之TensorFlow:TensorFlow Core(低级别TensorFlow API)的简介.安装.使用方法之详细DL框架之TensorFlow:深度学习框架TensorFlow Cor ...

  4. Ubuntu:Ubuntu下安装Anaconda和Tensorflow的简介、入门、安装流程之详细攻略

    Ubuntu:Ubuntu下安装Anaconda和Tensorflow的简介.入门.安装流程之详细攻略 目录 安装流程 1.安装nvidia显卡驱动 2.安装cuda8 3.安装Cudnn 4.Ana ...

  5. Py之imblearn:imblearn/imbalanced-learn库的简介、安装、使用方法之详细攻略

    Py之imblearn:imblearn/imbalanced-learn库的简介.安装.使用方法之详细攻略 目录 imblearn/imbalanced-learn库的简介 imblearn/imb ...

  6. Py之pixellib:pixellib库的简介、安装、经典案例之详细攻略

    Py之pixellib:pixellib库的简介.安装.经典案例之详细攻略 目录 pixellib库的简介 1.基础案例 pixellib库的安装 pixellib库的经典案例 1.使用pixelli ...

  7. Py之textgenrnn:textgenrnn库的简介、安装、使用方法详细攻略

    Py之textgenrnn:textgenrnn库的简介.安装.使用方法详细攻略 目录 textgenrnn库的简介 textgenrnn库的安装 textgenrnn库的使用方法 textgenrn ...

  8. Py之skflow:skflow的简介、安装、使用方法、代码实现之详细攻略

    Py之skflow:skflow的简介.安装.使用方法.代码实现之详细攻略 目录 skflow的简介 skflow的安装 skflow的使用方法 skflow的代码实现 skflow的简介 skflo ...

  9. TF之TF flags:TF flags(命令行解析)的简介、安装、使用方法之详细攻略

    TF之TF flags:TF flags(命令行解析)的简介.安装.使用方法之详细攻略 目录 TF flags的简介 TF flags的安装 TF flags的使用方法 TF flags的简介 1.f ...

最新文章

  1. Python中非常有用的三个数据科学库
  2. python paramiko远程执行命令打开窗口_使用Paramiko在远程机器上通过sshClient()执行本地python脚本...
  3. Gentoo rc-update service ‘net.eth0′ does not exist
  4. MFC中开发ocx控件,html容器收不到ocx的事件Event
  5. 一步一步写算法(之基数排序)
  6. 开菜鸟驿站需要什么条件?投入成本大概要多少?
  7. C#.NET DataGridView 让部分单元格变成只读的例子程序
  8. 陷阱:在 WebApp 中谨防 Singleton 错误
  9. 计算机视觉实战(三)阈值与平滑处理
  10. oracle讲师视频教程,赵强老师:Oracle数据库系列视频课程
  11. 模拟鼠标移动、点击,双击,键盘输入,鼠标滚轮滚动
  12. 基于自抗扰控制adrc的高速列车运行控制算法研究
  13. 马克思主义基本原理习题册
  14. 压缩ppt文件大小的方法
  15. 京东单号中转延误如何查询出的方法
  16. 雷军内部信:米家有品拆分 做独立电商
  17. Alexa 排名万能查询系统
  18. 固态变 SATAFIRM S11
  19. AI数字攻防看数字社会基建发展
  20. java 支付宝退款_java实现支付宝退款功能

热门文章

  1. 硬盘格式化了的数据找到办法
  2. 移动广告聚合平台KeyMob:整合多家移动广告平台
  3. Ceilometer - Install the API behind mod_wsgi
  4. 使用Xmanger登陆aix系统桌面时报桌面服务DT未启动问题
  5. struts2:表单标签
  6. 阿里投资,只为安全感
  7. can总线学习(二)
  8. 2008年信息安全服务市场发展报告
  9. QA:Visual C# 2008 compiler could not be created.
  10. C语言宏的高级应用-转