TensorFlow基础操作指南

Tensorflow基本概念

  • 使用图(graphs)来表示计算任务
  • 在被称之为会话(Session)的上下文(context)中执行图
  • 使用tensor表示数据
  • 通过变量(Variable)维护状态
  • 使用feed和fetch可以为任意的操作赋值或者从其中获取数据

Tensorflow是一个编程系统,使用图(graphs)来表示计算任务,图(graphs)中的节点称之为op(operation),一个op获得0个或多个Tensor,执行计算,产生0个或多个Tensor。Tensor 看作是一个 n 维的数组或列表。图必须在会话(Session)里被启动。

Tensorflow结构

Tensorflow-基础使用_tensorflow

创建图,启动图

登录后复制

#2-1 创建图,启动图#创建一个常量opm1=tf.constant([[3,3]])#创建一个常量opm2=tf.constant([[2],[3]])
#创建一个矩阵乘法opproduct=tf.matmul(m1,m2)print(product)with tf.compat.v1.Session() as sess:    
# run(product)触发了图中的3个op    result = sess.run(product)    
print(result)1.2.3.4.5.6.7.8.9.10.11.12.13.14.

结果为:

Tensorflow-基础使用_tensorflow_02

变量

登录后复制

#2-2变量#创建一个变量初始化0state=tf.Variable(0,name='counter')#创建op,作用是使state加1new_value=tf.add(state,1)
#赋值opupdate=tf.compat.v1.assign(state,new_value)with tf.compat.v1.Session() as sess:    
#变量初始化    sess.run(tf.compat.v1.global_variables_initializer())    print(sess.run(state))    
for _ in range(5):        sess.run(update)        print(sess.run(state))1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.

输出为:

Tensorflow-基础使用_赋值_03

Fetch and Feed

登录后复制

#2-3Fetch and Feed#Fetchinput1=tf.constant(3.0)input2=tf.constant(2.0)input3=tf.constant(5.0)add=tf
.add(input2,input3)mul=tf.multiply(input1,add)with tf.compat.v1.Session() as sess:    result=sess
.run([mul,add])    print(result)#Feed#创建占位符input1=tf.compat.v1.placeholder(tf.float32)input2=tf
.compat.v1.placeholder(tf.float32)output=tf.multiply(input1,input2)with tf.compat.v1.Session() as sess:    
#feed的数据以字典传入    print(sess.run(output,feed_dict={input1:[7.],input2:[2.]}))1.2.3.4.5.6.7.8.9.10.11.12.
13.14.15.16.17.18.19.20.21.22.


输出为:

Tensorflow-基础使用_Tensorflow_04

线性模型

登录后复制

import numpy as np#使用np生成100个随机点x_data=np.random.rand(100)y_data=x_data*0.1+0.2
#构造一个线性模型b=tf.Variable(0.)k=tf.Variable(0.)y=k*x_data+b#二次代价函数loss=tf.reduce_mean(tf
.square(y_data-y))#定义一个梯度下降法来进行训练的优化器optimizer=tf.compat.v1.train.GradientDescentOptimizer(0.2)
#最小化代价函数train=optimizer.minimize(loss)
#对变量进行初始化init=tf.compat.v1.global_variables_initializer()with tf.compat.v1.Session() as sess:    sess
.run(init)    for step in range(201):        sess.run(train)        if step%20==0:            print(step,sess
.run([k,b]))1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.

输出为:

Tensorflow-基础使用_tensorflow_05

   

   



免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空