搭建神經網路的四個步驟(背誦,可做模板)

2021-10-02 03:19:22 字數 1711 閱讀 1469

隨機產生32組生產出的零件的體積和重量,訓練3000輪,當體積和重量的和小於1時為合格。x0和x1對應體積和重量。

#匯入模組,生成資料集

import tensorflow as tf

import numpy as np

batch_size=

8seed=

23455

#基於seed產生隨機數

rng=np.random.randomstate(seed)

#隨機數返回32行2列的矩陣,表示32組體積和重量,作為輸入資料集

x=rng.rand(32,

2)#重點語句:從x中取出一行判斷如果和小於1給y賦值1,如果和不小於1給y賦值0

#作為輸入資料集的標籤(正確答案)y=[

[int

(x0+x1<1)

]for

(x0,x1)

in x]

#定義神經網路的輸入、引數和輸出,定義前向傳播的過程

x=tf.placeholder(tf.float32,shape=

(none,2

))y_=tf.placeholder(tf.float32,shape=

(none,1

))w1=tf.variable(tf.random_normal([2

,3],stddev=

1,seed=1)

)#a是隱藏層,有3個神經元

w2=tf.variable(tf.random_normal([3

,1],stddev=

1,seed=1)

)a=tf.matmul(x,w1)

y=tf.matmul(a,w2)

#定義損失函式,及反向傳播方法

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

)train_step=tf.train.gradientdescentoptimizer(

0.001

).minimize(loss)

#生成會話,訓練steps輪

with tf.session(

)as sess:

init_op=tf.global_variables_initializer(

) sess.run(init_op)

print

(sess.run(w1)

)print

(sess.run(w2)

)print

("\n"

)

steps=

3000

for i in

range

(steps)

: start=

(i*batch_size)%32

end=start+batch_size

sess.run(train_step,feed_dict=

)if i %

500==0:

total_loss=sess.run(loss,feed_dict=

)print

(total_loss)

print

("\n"

)print

(sess.run(w1)

)print

(sess.run(w2)

)

搭建乙個簡單的神經網路

def add layer 最基礎的四個引數 輸入值,輸入的大小,輸出的大小和激勵函式,激勵函式可以自己新增,也可以不使用激勵函式。def add layer inputs,in size,out size,activation function none 接下來我們定義weight和biases ...

搭建乙個簡單的神經網路

搭建乙個簡單二分類神經網路。乙個簡單的三層網路,包括輸入層,隱層,輸出層。反向傳播迭代更新。軟體 pycharm python version 3.7 import numpy as np class neuralnetwork def init self pass 實現sigmode函式,同時通過...

檢查網路是否暢通的四個步驟

首先使用 ping,ping 127.0.0.1檢查自己的回環位址是否正確 ping 閘道器 對方ip位址,檢查網路是否通暢。引數 t不間斷ping l自己定義資料報大小 n定義ping的次數 其次使用 nbtstat,這個命令可以得到遠端主機的netbios資訊,比如使用者名稱 所屬的工作組 網絡...