簡體   English   中英

如何在 Keras 中創建虛擬模型?

[英]How can I create a dummy model in Keras?

我正在使用 keras 並嘗試在 64x64 圖像上訓練分類器。

我正在嘗試優化我的訓練管道並抓住瓶頸。

為此,我正在嘗試創建更簡單的 Keras 模型,以便我知道整個過程(加載圖像、數據增強等)在 GPU 上花費非常低的時間。

到目前為止,我設法寫了:

def create_network_dummy():
  INPUT_SHAPE = (64, 64, 1)
  inputs = Input(INPUT_SHAPE)
  out = MaxPooling2D(pool_size = (1,1), strides=(64,64), 1)(inputs)
  model = Model(inputs=[inputs], outputs=[out])
  return model

有沒有可能有一個更小的? 返回一個常量是行不通的,因為它破壞了圖形,而 keras 不允許這樣做。

import keras.backend as K
from keras.layers import Input, Lambda
from keras.models import Model

inp = Input((64,64,1))
out = Lambda(lambda x: K.identity(x))(inp)
model = Model(inp,out) #You could even try Model(inp,inp)

??

如果想法是擁有一個什么都不做的模型,這似乎是最好的。
你也可以返回一個常量,你真的不需要“訓練”來看看你提出了什么,你可以“預測”。

model.predict_generator(....)

另一個模型輸出 1 個類

inp = Input((64,64,1))
out = Lambda(lambda x: x[:,0,0])(inp)
model = Model(inp,out)

我認為甚至沒有必要使用K.identity

inp = Input((64, 64, 1))
out = Lambda(lambda x: x)(inp)
model = Model(inp, out)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM