莫煩Tensorflow 入門

2022-06-24 11:33:08 字數 2818 閱讀 3260

tensorflow 初步嘗試

#

#建立資料

#搭建模型

#計算誤差

#傳播誤差

#初始會話

#不斷訓練

import

tensorflow as tf

import

numpy as np

#建立資料

x_data = np.random.rand(100).astype(np.float32)

y_data = x_data * 0.1 + 0.3

#定義神經元可變引數

w = tf.variable(tf.random_uniform([1],-1.0,1.0))

b = tf.variable(tf.zeros([1]))

y = w * x_data +b

#計算誤差

loss = tf.reduce_mean(tf.square(y -y_data))

#採用梯度下降法反向傳播誤差

optimizer = tf.train.gradientdescentoptimizer(0.2)

train =optimizer.minimize(loss)

#初始化所有的神經元可變引數

init =tf.global_variables_initializer()

#建立會話

sess =tf.session()

#執行初始化步驟

sess.run(init)

#不斷的訓練資料,提公升網路效能

for i in range(1000):

sess.run(train)

if i % 100 ==0:

print

(i,sess.run(w),sess.run(b))

print("

loss:%.11f

" % sess.run(loss))

tensorflow 中的session

session是 tensorflow 為了控制、和輸出檔案的執行的語句.

執行session.run()可以獲得你要得知的運算結果, 或者是你所要運算的部分

import

tensorflow as tf

#建立兩個矩陣

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

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

p =tf.matmul(m1,m2)

#[12]]

#使用session 啟用p 得到計算結果

## 方法1 ##

sess =tf.session()

result =sess.run(p)

print

(result)

sess.close()

## 方法2 ##

with tf.session() as sess:

result2 =sess.run(p)

print(result2)

tensorflow 中使用variable

tensorflow 中,定義了某字串是變數,它才是變數

import

tensorflow as tf

state = tf.variable(0,name='

jike')

#定義常量

one = tf.constant(1)

#定義加法步驟【但沒有直接運算】

new =tf.add(state,one)

#將 state更新成 new

update =tf.assign(state,new)

#如果定義了variable,一定要 initialize

init =tf.global_variables_initializer()

#使用session

with tf.session() as sess:

sess.run(init) #啟用

for i in range(3):

sess.run(update)

print(sess.run(state)) #

將sess的指標指向 state

tensorflow 中的placeholder

placeholder是 tensorflow 中的佔位符,暫時儲存變數.

tensorflow 如果想要從外部傳入data, 那就需要用到tf.placeholder()

import

tensorflow as tf

#在 tensorflow 中需要定義 placeholder 的 type ,一般為 float32 形式

x =tf.placeholder(tf.float32)

y =tf.placeholder(tf.float32)

#mul = multiply 是將input1和input2 做乘法運算,並輸出為 output

z =tf.multiply(x,y)

#傳值的工作交給了 sess.run() , 需要傳入的值放在了feed_dict={}

with tf.session() as sess:

print(sess.run(z,feed_dict=))

莫煩 Tensorflow 變數

理解了tensorflow必須通過session去run才能輸出值,如果不通過session,那麼只能得到變數名字和型別,加深理解了tensorflow的機制。import tensorflow as tf state tf.variable 0,name counter print state 輸...

莫煩tensorflow系列教程學習

1.普通機器學習 函式係數 y 0.1x 0.3 coding gbk import tensorflow as tf import numpy as np 生成資料,y 0.1x 0.3 x data np.random rand 100 astype np.float32 y data x da...

莫煩Tensorflow 建造自己的NN

1 定義 add layer 定義乙個新增層的函式可以很容易的新增神經層 神經層裡常見的引數通常有weights biases和激勵函式 權重 偏置 啟用函式 import tensorflow as tf 輸入值 輸入的大小 輸出的大小和激勵函式,我們設定預設的激勵函式是none def add ...