2.tensorflow应用程序开发入门

自己开发了一个股票智能分析软件,功能很强大,需要的点击下面的链接获取:

https://www.cnblogs.com/bclshuai/p/11380657.html

1       tensorflow应用程序开发入门

1.1  tensorflow程序结构

TensorFlow是将计算图的定义和执行分开的设计结构,方便跨平台执行。计算图包含节点操作(operation)和边(操作间流动的数据,也叫做张量)组成。TensorFlow Python 库有一个默认图 (default graph), op 构造器可以为其增加节点

(1)   张量tensor:常量、变量和占位符。

(2)   操作operation:定义的运算操作,是计算图中的一个节点,可以理解为函数。有多个输入,只有一个输出。

(3)   会话session通过会话Session启动计算图,执行运算。

所以tensorflow程序开发流程是定义张量和操作op,op组成计算任务图,任务图在会话中执行返回结果。

 

1.2  helloworld程序

import tensorflow as tf

# 使用TensorFlow输出Hello

# 创建一个常量操作( Constant op )

# 这个 op 会被作为一个节点( node )添加到默认计算图上.

# 该构造函数返回的值就是常量节点(Constant op)的输出.

hello = tf.constant('Hello, world!')

# 启动TensorFlow会话

sess = tf.Session()

# 运行 hello 节点

print(sess.run(hello))

sess.close()

1.3  算术程序

1.3.1         常量运算

import tensorflow as tf

# 基本常量操作

# T构造函数返回的值就是常量节点(Constant op)的输出.

a = tf.constant(2)

b = tf.constant(3)

# 启动默认的计算图

with tf.Session() as sess:

    print("a=2, b=3")

    print("常量节点相加: %i" % sess.run(a + b))

    print("常量节点相乘: %i" % sess.run(a * b))

1.3.2         变量运算

(1)声明变量方法placeholder

tf.placeholder(dtype, shape=None, name=None)

placeholder,占位符,在tensorflow中类似于函数参数,运行时必须传入值。

dtype:数据类型。常用的是tf.float32,tf.float64等数值类型。

shape:数据形状。默认是None,就是一维值,也可以是多维,比如[2,3], [None, 3]表示列是3,行不定。

name:名称。

(2)变量使用实例

import tensorflow as tf

# 使用变量(variable)作为计算图的输入

# 构造函数返回的值代表了Variable op的输出 (session运行的时候,为session提供输入)

# tf Graph input

a = tf.placeholder(tf.int16)

b = tf.placeholder(tf.int16)

# 定义一些操作

add = tf.add(a, b)

mul = tf.multiply(a, b)

# 启动默认会话

with tf.Session() as sess:

    # 把运行每一个操作,把变量值输入进去

    print("变量相加: %i" % sess.run(add, feed_dict={a: 2, b: 3}))

    print("变量相乘: %i" % sess.run(mul, feed_dict={a: 2, b: 3}))

1.3.3         矩阵运算

import tensorflow as tf

# 矩阵相乘(Matrix Multiplication) 创建一个 Constant op ,产生 1行x2列 matrix该op会作为一个节点被加入到默认的计算图。

matrix1 = tf.constant([[3., 3.]])

# 创建另一个 Constant op 产生  2x1 矩阵.

matrix2 = tf.constant([[2.], [2.]])

# 创建一个 Matmul op操作, 以 'matrix1' 和 'matrix2' 作为输入.

product = tf.matmul(matrix1, matrix2)

#调用 session 的 'run()' 方法执行操作, 传入 'product'

# 调用 'run(product)' 就会引起计算图上三个节点的执行:2个 constants 和一个 matmul,返回到 'result':一个 numpy `ndarray` 对象.

with tf.Session() as sess:

    result = sess.run(product)

    print('矩阵相乘的结果:', result)

    # ==> [[ 12.]]orflow应用程序开发入门

原文地址:https://www.cnblogs.com/bclshuai/p/13769292.html