1. 程式人生 > >Python 02 TensorFlow入門02

Python 02 TensorFlow入門02

四則運算子

import tensorflow as tf
data1 = tf.constant(6)
data2 = tf.constant(2)
dataAdd = tf.add(data1,data2)
dataMul = tf.multiply(data1,data2)
dataSub = tf.subtract(data1,data2)
dataDiv = tf.divide(data1,data2)
with tf.Session() as sess:
    print(sess.run(dataAdd)) 
    print(sess.run(dataMul))
    print(sess.run(dataSub))
    print(sess.run(dataDiv))
print('end') 

add(A,B)進行A+B

multiply(A,B) 進行A*B

subtract(A,B)進行A-B

divide(A,B)進行A/B

執行結果:

 

import tensorflow as tf
data1 = tf.constant(6)
data2 = tf.Variable(2)
dataAdd = tf.add(data1,data2)
dataCopy = tf.assign(data2,dataAdd)#dataAdd->data2
dataMul = tf.multiply(data1,data2)
dataSub = tf.subtract(data1,data2)
dataDiv = tf.divide(data1,data2)
init = tf.global_variables_initializer()
with tf.Session() as sess:
    sess.run(init)
    print(sess.run(dataAdd)) 
    print(sess.run(dataMul))
    print(sess.run(dataSub))
    print(sess.run(dataDiv))
    print('sess.run(dataCopy)',sess.run(dataCopy))#8->data2
    print('dataCopy.eval()',dataCopy.eval())#8+6->data = 14
    print('tf.get_default_session()',tf.get_default_session().run(dataCopy))
print('end')    

assign(data2,dataAdd)#dataAdd->data2 ,data1+data2兩個數相加賦值給data2

sess.run(dataCopy)#8->data2 =  data1+data2兩個數相加賦值給data2

dataCopy.eval())#8+6->data = 14 

tf.get_default_session().run(dataCopy)

矩陣基礎

#placehold
import tensorflow as tf
data1 = tf.placeholder(tf.float32)
data2 = tf.placeholder(tf.float32)
dataAdd = tf.add(data1,data2)

with tf.Session() as sess:
    print(sess.run(dataAdd,feed_dict={data1:6,data2:2}))
    #1 dataAdd 2 data(feed_dict = {1: 2:})
print('end!')

#類比 陣列 N行N列 {} 內部{裡面 列資料} {} 中括號整體 行數
#{{6,6}}
import tensorflow as tf
data1 = tf.constant([[6,6]])
data2 = tf.constant([[2],
                     [2]])
data3 = tf.constant([[3,3]])
data4 = tf.constant([[1,2],
                    [3,4],
                    [5,6]])
print(data4.shape)#維度
with tf.Session() as sess:
    print(sess.run(data4))
    print(sess.run(data4[0]))#列印某一行
    print(sess.run(data4[:,0]))#列印列
    print(sess.run(data4[0,1]))

import tensorflow as tf
data1 = tf.constant([[6,6]])
data2 = tf.constant([[2],
                     [2]])
data3 = tf.constant([[3,3]])
data4 = tf.constant([[1,2],
                    [3,4],
                    [5,6]])
matMul = tf.matmul(data1,data2)
matMul2 = tf.multiply(data1,data2)
matAdd = tf.add(data1,data3)
with tf.Session() as sess:
    print(sess.run(matMul))# 1維
    print(sess.run(matAdd))#1行2列
    print(sess.run(matMul2))#1x2 2x1 = 2x2
    print(sess.run([matMul,matAdd]))

import tensorflow as tf
mat0 = tf.constant([[0,0,0],[0,0,0]])
mat1 = tf.zeros([2,3])
mat2 = tf.ones([3,2])
mat3 = tf.fill([2,3],15)
with tf.Session() as sess:
    print(sess.run(mat0))
    print(sess.run(mat1))
    print(sess.run(mat2))
    print(sess.run(mat3))

import tensorflow as tf
mat1 = tf.constant([[2],[3],[4]])
mae2 = tf.zeros_like(mat1)
mat3 = tf.linspace(0.0,2.0,11)
mat4 = tf.random_uniform([2,3],-1,2)
with tf.Session() as sess:
    print(sess.run(mat1))
    print(sess.run(mat2))
    print(sess.run(mat3))
    print(sess.run(mat4))