最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

一小時(shí)學(xué)會(huì)TensorFlow2之大幅提高模型準(zhǔn)確率

 更新時(shí)間:2021年09月08日 14:47:22   作者:我是小白呀  
這篇文章主要介紹了TensorFlow2之大幅提高模型準(zhǔn)確率,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

過擬合

當(dāng)訓(xùn)練集的的準(zhǔn)確率很高, 但是測(cè)試集的準(zhǔn)確率很差的時(shí)候就, 我們就遇到了過擬合 (Overfitting) 的問題. 如圖:

在這里插入圖片描述

過擬合產(chǎn)生的一大原因是因?yàn)槟P瓦^于復(fù)雜. 下面我們將通過講述 5 種不同的方法來解決過擬合的問題, 從而提高模型準(zhǔn)確度.

Regulation

Regulation 可以幫助我們通過約束要優(yōu)化的參數(shù)來防止過擬合.

在這里插入圖片描述

公式

未加入 regulation 的損失:

在這里插入圖片描述

加入 regulation 的損失:

在這里插入圖片描述

λ 和 lr (learning rate) 類似. 如果 λ 的值越大, regularion 的力度也就越強(qiáng), 權(quán)重的值也就越小.

例子

添加了 l2 regulation 的網(wǎng)絡(luò):

network = tf.keras.Sequential([
    tf.keras.layers.Dense(256, kernel_regularizer=tf.keras.regularizers.l2(0.001), activation=tf.nn.relu),
    tf.keras.layers.Dense(128, kernel_regularizer=tf.keras.regularizers.l2(0.001), activation=tf.nn.relu),
    tf.keras.layers.Dense(64, kernel_regularizer=tf.keras.regularizers.l2(0.001), activation=tf.nn.relu),
    tf.keras.layers.Dense(32, kernel_regularizer=tf.keras.regularizers.l2(0.001), activation=tf.nn.relu),
    tf.keras.layers.Dense(10)
])

動(dòng)量

動(dòng)量 (Momentum) 是指運(yùn)動(dòng)物體的租用效果. 在梯度下降的過程中, 通過在優(yōu)化器中加入動(dòng)量, 我們可以減少擺動(dòng)從而達(dá)到更優(yōu)的效果.

未添加動(dòng)量:

在這里插入圖片描述

添加動(dòng)量:

在這里插入圖片描述

公式

未加動(dòng)量的權(quán)重更新:

在這里插入圖片描述

  • w: 權(quán)重 (weight)
  • k: 迭代的次數(shù)
  • α: 學(xué)習(xí)率 (learning rate)
  • ∇f(): 微分

添加動(dòng)量的權(quán)重更新:

在這里插入圖片描述

  • β: 動(dòng)量權(quán)重
  • z: 歷史微分

例子

添加了動(dòng)量的優(yōu)化器:

optimizer = tf.keras.optimizers.SGD(learning_rate=0.02, momentum=0.9)
optimizer = tf.keras.optimizers.RMSprop(learning_rate=0.02, momentum=0.9)

注: Adam 優(yōu)化器默認(rèn)已經(jīng)添加動(dòng)量, 所以無需自行添加.

學(xué)習(xí)率遞減

簡(jiǎn)單的來說, 如果學(xué)習(xí)率越大, 我們訓(xùn)練的速度就越大, 但找到最優(yōu)解的概率也就越小. 反之, 學(xué)習(xí)率越小, 訓(xùn)練的速度就越慢, 但找到最優(yōu)解的概率就越大.

在這里插入圖片描述

過程

我們可以在訓(xùn)練初期把學(xué)習(xí)率調(diào)的稍大一些, 使得網(wǎng)絡(luò)迅速收斂. 在訓(xùn)練后期學(xué)習(xí)率小一些, 使得我們能得到更好的收斂以獲得最優(yōu)解. 如圖:

在這里插入圖片描述

例子

learning_rate = 0.2  # 學(xué)習(xí)率
optimizer = tf.keras.optimizers.SGD(learning_rate=learning_rate, momentum=0.9)  # 優(yōu)化器

# 迭代
for epoch in range(iteration_num):
    optimizer.learninig_rate = learning_rate * (100 - epoch) / 100  # 學(xué)習(xí)率遞減

Early Stopping

之前我們提到過, 當(dāng)訓(xùn)練集的準(zhǔn)確率仍在提升, 但是測(cè)試集的準(zhǔn)確率反而下降的時(shí)候, 我們就遇到了過擬合 (overfitting) 的問題.

Early Stopping 可以幫助我們?cè)跍y(cè)試集的準(zhǔn)確率下降的時(shí)候停止訓(xùn)練, 從而避免繼續(xù)訓(xùn)練導(dǎo)致的過擬合問題.

在這里插入圖片描述

Dropout

Learning less to learn better

Dropout 會(huì)在每個(gè)訓(xùn)練批次中忽略掉一部分的特征, 從而減少過擬合的現(xiàn)象.

在這里插入圖片描述

dropout, 通過強(qiáng)迫神經(jīng)元, 和隨機(jī)跳出來的其他神經(jīng)元共同工作, 達(dá)到好的效果. 消除減弱神經(jīng)元節(jié)點(diǎn)間的聯(lián)合適應(yīng)性, 增強(qiáng)了泛化能力.

例子:

network = tf.keras.Sequential([
    tf.keras.layers.Dense(256, activation=tf.nn.relu),
    tf.keras.layers.Dropout(0.5),  # 忽略一半
    tf.keras.layers.Dense(128, activation=tf.nn.relu),
    tf.keras.layers.Dropout(0.5),  # 忽略一半
    tf.keras.layers.Dense(64, activation=tf.nn.relu),
    tf.keras.layers.Dropout(0.5),  # 忽略一半
    tf.keras.layers.Dense(32, activation=tf.nn.relu),
    tf.keras.layers.Dense(10)
])

到此這篇關(guān)于一小時(shí)學(xué)會(huì)TensorFlow2之大幅提高模型準(zhǔn)確率的文章就介紹到這了,更多相關(guān)TensorFlow2模型準(zhǔn)確率內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 對(duì)python中不同模塊(函數(shù)、類、變量)的調(diào)用詳解

    對(duì)python中不同模塊(函數(shù)、類、變量)的調(diào)用詳解

    今天小編就為大家分享一篇對(duì)python中不同模塊(函數(shù)、類、變量)的調(diào)用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • 一文詳解Python定時(shí)任務(wù)觸發(fā)

    一文詳解Python定時(shí)任務(wù)觸發(fā)

    這篇文章主要為大家詳細(xì)介紹了Python定時(shí)任務(wù)觸發(fā)的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定的幫助,需要的可以參考一下
    2023-04-04
  • 跟老齊學(xué)Python之折騰一下目錄

    跟老齊學(xué)Python之折騰一下目錄

    本講只關(guān)注os.path,真所謂“弱水三千,只取一瓢”,為什么這么偏愛它呢?因?yàn)樗颓懊嬉呀?jīng)講過的文件操作進(jìn)行配合,就能夠隨心所欲操作各個(gè)地方的文件了
    2014-10-10
  • Python3訪問MySQL數(shù)據(jù)庫(kù)的實(shí)現(xiàn)步驟

    Python3訪問MySQL數(shù)據(jù)庫(kù)的實(shí)現(xiàn)步驟

    要實(shí)現(xiàn)一個(gè)簡(jiǎn)單的IM(即時(shí)通訊)系統(tǒng),支持用戶注冊(cè)、登錄和聊天記錄存儲(chǔ),你可以使用Python和mysql數(shù)據(jù)庫(kù),以下是一個(gè)基本的實(shí)現(xiàn)步驟,并通過代碼示例講解的非常詳細(xì),需要的朋友可以參考下
    2024-11-11
  • Python實(shí)現(xiàn)的插入排序,冒泡排序,快速排序,選擇排序算法示例

    Python實(shí)現(xiàn)的插入排序,冒泡排序,快速排序,選擇排序算法示例

    這篇文章主要介紹了Python實(shí)現(xiàn)的插入排序,冒泡排序,快速排序,選擇排序算法,結(jié)合實(shí)例形式總結(jié)分析了Python插入排序,冒泡排序,快速排序,選擇排序等算法的實(shí)現(xiàn)與使用技巧,需要的朋友可以參考下
    2019-05-05
  • Python結(jié)合Sprak實(shí)現(xiàn)計(jì)算曲線與X軸上方的面積

    Python結(jié)合Sprak實(shí)現(xiàn)計(jì)算曲線與X軸上方的面積

    這篇文章主要介紹了Python結(jié)合Sprak實(shí)現(xiàn)計(jì)算曲線與X軸上方的面積,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧
    2023-02-02
  • Python基于貪心算法解決背包問題示例

    Python基于貪心算法解決背包問題示例

    這篇文章主要介紹了Python基于貪心算法解決背包問題,簡(jiǎn)單描述了貪心算法的概念、原理并結(jié)合實(shí)例形式分析了Python使用貪心算法解決背包問題的具體操作技巧,需要的朋友可以參考下
    2017-11-11
  • python數(shù)據(jù)庫(kù)編程 Mysql實(shí)現(xiàn)通訊錄

    python數(shù)據(jù)庫(kù)編程 Mysql實(shí)現(xiàn)通訊錄

    這篇文章主要為大家詳細(xì)介紹了python數(shù)據(jù)庫(kù)編程,Mysql實(shí)現(xiàn)通訊錄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Pycharm關(guān)閉控制臺(tái)多余窗口的解決辦法

    Pycharm關(guān)閉控制臺(tái)多余窗口的解決辦法

    這篇文章主要介紹了Pycharm關(guān)閉控制臺(tái)多余窗口的解決辦法,文中通過圖文結(jié)合的方式講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-12-12
  • Python實(shí)現(xiàn)將目錄中TXT合并成一個(gè)大TXT文件的方法

    Python實(shí)現(xiàn)將目錄中TXT合并成一個(gè)大TXT文件的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)將目錄中TXT合并成一個(gè)大TXT文件的方法,涉及Python針對(duì)目錄下文本文件的遍歷、讀取及寫入等技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07

最新評(píng)論

讷河市| 图木舒克市| 博兴县| 精河县| 车致| 洛川县| 青海省| 土默特右旗| 仁布县| 陕西省| 紫金县| 司法| 中超| 彰化县| 吕梁市| 北辰区| 和平县| 汉川市| 镇宁| 巴林右旗| 乐山市| 北安市| 五家渠市| 于都县| 应城市| 黑龙江省| 凉城县| 大新县| 溆浦县| 忻城县| 三江| 眉山市| 湄潭县| 农安县| 威信县| 马关县| 普宁市| 时尚| 乐东| 福鼎市| 天全县|