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

Keras: model實(shí)現(xiàn)固定部分layer,訓(xùn)練部分layer操作

 更新時間:2020年06月28日 14:31:05   作者:誰會治腳氣請聯(lián)系我  
這篇文章主要介紹了Keras: model實(shí)現(xiàn)固定部分layer,訓(xùn)練部分layer操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

需求:Resnet50做調(diào)優(yōu)訓(xùn)練,將最后分類數(shù)目由1000改為500。

問題:網(wǎng)上下載了resnet50_weights_tf_dim_ordering_tf_kernels_notop.h5,更改了Resnet50后,由于所有層均參加訓(xùn)練,導(dǎo)致訓(xùn)練速度慢。實(shí)際上只需要訓(xùn)練最后3層,前面的層都不需要訓(xùn)練。

解決辦法:

①將模型拆分為兩個模型,一個為前面的notop部分,一個為最后三層,然后利用model的trainable屬性設(shè)置只有后一個model訓(xùn)練,最后將兩個模型合并起來。

②不用拆分,遍歷模型的所有層,將前面層的trainable設(shè)置為False即可。代碼如下:

for layer in model.layers[:-3]:
 print(layer.trainable)
 layer.trainable = False

注意事項(xiàng):

①盡量不要這樣:

layers.Conv2D(filters1, (1, 1), trainable=False)(input_tensor)

因?yàn)槿菀壮鲥e。。。

②加載notop參數(shù)時注意by_name=True.

補(bǔ)充知識:Keras關(guān)于訓(xùn)練凍結(jié)部分層

設(shè)置凍結(jié)層有兩種方式。

(不推薦)是在搭建網(wǎng)絡(luò)時,直接將某層的trainable設(shè)置為false,例如:

layers.Conv2D(filters1, (1, 1), trainable=False)(input_tensor)

在網(wǎng)絡(luò)搭建完成時,遍歷model.layer,然后將layer.trainable設(shè)置為False:

# 凍結(jié)網(wǎng)絡(luò)倒數(shù)的3層
for layer in model.layers[:-3]:
 print(layer.trainable)
 layer.trainable = False

也可以根據(jù)layer.name來確定哪些層需要凍結(jié),例如凍結(jié)最后一層和RNN層:

for layer in model.layers:
 layerName=str(layer.name)
 if layerName.startswith("RNN_") or layerName.startswith("Final_"):
 layer.trainable=False

可以在實(shí)例化之后將網(wǎng)絡(luò)層的 trainable 屬性設(shè)置為 True 或 False。為了使之生效,在修改 trainable 屬性之后,需要在模型上調(diào)用 compile()。

這是一個例子

x = Input(shape=(32,))
layer = Dense(32)
layer.trainable = False
y = layer(x)
 
frozen_model = Model(x, y)
# 在下面的模型中,訓(xùn)練期間不會更新層的權(quán)重
frozen_model.compile(optimizer='rmsprop', loss='mse')
 
layer.trainable = True
trainable_model = Model(x, y)
# 使用這個模型,訓(xùn)練期間 `layer` 的權(quán)重將被更新
# (這也會影響上面的模型,因?yàn)樗褂昧送粋€網(wǎng)絡(luò)層實(shí)例)
trainable_model.compile(optimizer='rmsprop', loss='mse')
 
frozen_model.fit(data, labels) # 這不會更新 `layer` 的權(quán)重
trainable_model.fit(data, labels) # 這會更新 `layer` 的權(quán)重

在網(wǎng)絡(luò)搭建時,可以考慮最后一個分類層命名和分類數(shù)量關(guān)聯(lián),這樣當(dāng)費(fèi)雷數(shù)量方式變化時,model.load_weight(“weight.h5”,by_name=True)不會加載最后一層

以上這篇Keras: model實(shí)現(xiàn)固定部分layer,訓(xùn)練部分layer操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • pytorch中.numpy()、.item()、.cpu()、.detach()以及.data的使用方法

    pytorch中.numpy()、.item()、.cpu()、.detach()以及.data的使用方法

    這篇文章主要給大家介紹了關(guān)于pytorch中.numpy()、.item()、.cpu()、.detach()以及.data的使用方法,文中通過實(shí)例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2022-08-08
  • 基于Python實(shí)現(xiàn)自制拼圖小游戲

    基于Python實(shí)現(xiàn)自制拼圖小游戲

    這篇文章主要為大家詳細(xì)介紹得了如何利用Python中pygame的這個非標(biāo)準(zhǔn)庫來做個小游戲-拼圖,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以嘗試一下
    2022-11-11
  • PyQt5+requests實(shí)現(xiàn)車票查詢工具

    PyQt5+requests實(shí)現(xiàn)車票查詢工具

    這篇文章主要為大家詳細(xì)介紹了PyQt5+requests實(shí)現(xiàn)車票查詢工具,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • windows下python虛擬環(huán)境virtualenv安裝和使用詳解

    windows下python虛擬環(huán)境virtualenv安裝和使用詳解

    這篇文章主要介紹了windows下python虛擬環(huán)境virtualenv安裝和使用詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-07-07
  • Python?pandas修剪函數(shù)clip使用實(shí)例探究

    Python?pandas修剪函數(shù)clip使用實(shí)例探究

    在數(shù)據(jù)處理和分析中,經(jīng)常面臨著需要限制數(shù)據(jù)范圍的情況,而pandas庫提供的clip函數(shù)就是一個強(qiáng)大的工具,可以方便地對數(shù)據(jù)進(jìn)行修剪,本文將深入介紹clip函數(shù)的基本用法、常見參數(shù)以及實(shí)際場景中的應(yīng)用,以幫助大家充分理解并靈活運(yùn)用這一功能
    2024-01-01
  • Python面向?qū)ο笾鄳B(tài)原理與用法案例分析

    Python面向?qū)ο笾鄳B(tài)原理與用法案例分析

    這篇文章主要介紹了Python面向?qū)ο笾鄳B(tài)原理與用法,結(jié)合具體案例形式分析了Python多態(tài)的具體功能、原理、使用方法與操作注意事項(xiàng),需要的朋友可以參考下
    2019-12-12
  • Python?安裝教程以及快速入門

    Python?安裝教程以及快速入門

    Python是一種簡單易學(xué)的編程語言,適合初學(xué)者入門。本文將介紹Python的安裝教程以及快速入門,幫助讀者快速上手Python編程。
    2023-09-09
  • Python定時發(fā)送天氣預(yù)報郵件代碼實(shí)例

    Python定時發(fā)送天氣預(yù)報郵件代碼實(shí)例

    這篇文章主要介紹了Python定時發(fā)送天氣預(yù)報郵件代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • python 如何執(zhí)行控制臺命令與操作剪切板

    python 如何執(zhí)行控制臺命令與操作剪切板

    這篇文章主要介紹了python 如何執(zhí)行控制臺命令與操作剪切板,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • python中的空值判斷和空字符串判斷方式

    python中的空值判斷和空字符串判斷方式

    這篇文章主要介紹了python中的空值判斷和空字符串判斷方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11

最新評論

安国市| 高台县| 漳平市| 祁门县| 富顺县| 皋兰县| 忻州市| 濮阳市| 海丰县| 维西| 扶余县| 荣昌县| 什邡市| 喀喇沁旗| 陕西省| 都江堰市| 仁布县| 芜湖市| 泗水县| 晴隆县| 保靖县| 离岛区| 天全县| 木里| 镇宁| 文山县| 嘉义县| 平原县| 宁城县| 滕州市| 哈尔滨市| 贞丰县| 昭平县| 宝丰县| 辉县市| 新巴尔虎右旗| 开化县| 玛曲县| 凤阳县| 兰州市| 大余县|