日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

北京大学Tensorflow2.0笔记

發布時間:2023/12/4 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 北京大学Tensorflow2.0笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

激活函數


目前很少用這個激活函數,因為在深度神經網絡中更新參數時需要從輸出層到輸入層逐層進行鏈式求導,而sigmoid函數倒數值為0-0.25之間,鏈式求導需要多層導數連續相乘,會出現多個0-0.25之間的連續相乘,結果趨于零,產生梯度消失,無法進行參數更新


使用中應避免負數特征進入RELU函數,否則會導致神經元死亡



過擬合的解決方法:L1正則化和L2正則化

用Tensorflow API :tf.keras搭建網絡八股
六步法:
1、import
import相關模塊,如:import tensorflow as tf
2、train,test
要指定訓練集的輸入特征x_train和訓練集的標簽y_train,還可以指定測試集的輸入特征x_test和測試集的標簽y_test
3、在Sequential()中搭建網絡結構:model = tf.keras.model.Sequential,逐層描述沒層網絡,相當于走了一遍前向傳播
4、model.compile(),在compile()中配置訓練方法,告知訓練時選擇哪種優化器,選擇哪種損失函數,選擇哪種評測指標
5、model.fit ()在fit中執行訓練過程,告知訓練集和測試集的輸入特征和標簽,告知每一個batch是多少,告知要迭代多少次數據集
6、model.summary(),用summary打印出網絡的結構和參數統計
注:以上六部為以后寫代碼的提綱,一定一定一定要記住,重要的事情說三遍

可以認為Sequential()是一個容器,封裝了一個神經網絡結構,在Senquential中要描述從輸入層到輸出層每一層的網絡結構,每一層的網絡結構可以是拉直層Flatten(),這一層不含計算,只是形狀轉換,把輸入特征拉直變成一維數組;


batch_size=每次喂入神經網絡的樣本數
epochs=迭代多少次數據集

注一

model.fit(x_train, y_train, batch_size=32, epochs=500, validation_split=0.2, validation_freq=20)
x_train——訓練集輸入特征
y_train——訓練集標簽
batch_size——訓練時一次喂入神經網絡多少組數據
epochs——數據集迭代循環多少次
validation_split=0.2——告知從訓練集中選擇20%的數據作為測試集
validation_freq=20——每迭代20次訓練集要在測試集中驗證一次準確率

注二

loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False),
由于神經網絡末端使用了Softmax函數,使得輸出是概率分布而不是原始輸出,所以from_logits是False

注三

metrics=[‘sparse_categorical_accuracy’])
由于鳶尾花數據集給的標簽是0,1,2是數值,神經網絡前向傳播的輸出是概率分布,所以選擇sparse_categorical_accuracy作為評測指標

注四

用summary打印出網絡結構和參數統計

用Sequential可以搭建出上層輸出就是下層輸入的順序網絡結構,無法寫出一些帶有跳連的非順序網絡結構,這個時候可以選擇用類class搭建神經網絡結構


可以認為__init__函數準備出搭建網絡所需的各種積木
call函數調用__init__中搭建好的積木,實現前向傳播

第五章

總結

以上是生活随笔為你收集整理的北京大学Tensorflow2.0笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。