class3 tensorflow 反向傳播

2021-08-21 07:38:01 字數 2271 閱讀 6129

反向傳播--->訓練模型引數,在所有引數上用梯度下降,使nn模型再訓練資料上的損失函式最小。

損失函式(loss):**值(y)與已知答案(y_)的差距

均方誤差mse:

loss=tf.reduce_mean(tf.square(y,y_))
反向傳播訓練方法:以減小loss值為優化目標

train_step=tf.train.gradientdescentoptimizer(learning_rate).minimize(loss)  梯度下降

train_step=tf.train.momentumoptimizer(learning_rate,momentum).minimize(loss)momentum優化器

train_step=tf.train.adamoptimizer(learning_rate).minimize(loss)  adam優化

learining_rate 學習率:決定引數每次更新的幅度

#tf_3_3.py

#建立乙個兩層網路,輸入層2,中間層3,輸出層1

import tensorflow as tf

import numpy as np

batch_size=10

seed=23455

#虛擬樣本,基於seed生成隨機數

rng=np.random.randomstate(seed)

#隨機生成

x=rng.rand(80,2)

#生成標籤 0、1

y=[[int(x0+x1<1)] for (x0,x1) in x]

print("x:",x)

print("y:",y)

x=tf.placeholder(tf.float32)

y_=tf.placeholder(tf.float32)

w1=tf.variable(tf.random_normal([2,3],stddev=1,seed=1))

w2=tf.variable(tf.random_normal([3,3],stddev=1,seed=1))

w3=tf.variable(tf.random_normal([3,1],stddev=1,seed=1))

a=tf.matmul(x,w1)

b=tf.matmul(a,w2)

y=tf.matmul(b,w3)

#定義loss和反向傳播方法

learning_rate=0.001

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

train_step=tf.train.gradientdescentoptimizer(learning_rate).minimize(loss)

#train_step=tf.train.momentumoptimizer(learning_rate,momentum=0.1).minimize(loss)

#train_step=tf.train.adamoptimizer(learning_rate,beta1=0.9,beta2=0.999).minimize(loss)

with tf.session() as sess:

init_op=tf.global_variables_initializer()

sess.run(init_op)

steps=3000

for i in range(steps):

start=(i*batch_size)%80

end=start+batch_size

sess.run(train_step,feed_dict=)

if i%300 == 0:

total_loss=sess.run(loss,feed_dict=)

print("%d:loss:%g",i,total_loss)

總結:

搭建神經網路的八股:準備,前傳,反傳,迭代

1.準備:  import

常量定義

生成資料集

2.前傳:定義輸入、引數、和輸出

x=y_=

w1=w2=w3a

by3.反向傳播:定義損失函式、反向傳播方法

loss=

train_step=

4.生成會話、訓練steps輪

with tf.session() as sess:

3 高精度 密碼 普通 class

description 在浩浩茫茫的蒼穹深處,住著玉帝和他的神僕們,他們閒談著下界的凡人俗事,對人世間表現的聰明智慧型,大加讚賞。今天他們正在觀賞大地風光人情之際,忽然從遙遠的東海之濱傳來一陣歡笑聲,玉帝縱目望去,只見鎮海中學內聚集了全寧波的中小學精英學生,他們要幹什麼呢?原來他們都在做一種破譯密碼...

標準的AS3中的Class

含有多個類的類檔案toycar.as package sample.car 內,必須且只能定義乙個class,包外類 可定義多個 private function init void public function run void 以下carbody和cartire兩個類,是在package 外面...

AngularJS 3種方案處理class

from 在angular中為我們提供了3種方案處理class scope變數繫結,如上例。不推薦使用 字串陣列形式。物件key value處理。1.scope變數繫結,如下例。不推薦使用 function ctr scope 2.物件key value處理主要針對複雜的class混合,其形如 fu...