我正在使用 keras 并嘗試在 64x64 圖像上訓練分類器。我正在嘗試優(yōu)化我的訓練管道并抓住瓶頸。為此,我正在嘗試創(chuàng)建更簡單的 Keras 模型,以便我知道整個過程(加載圖像、數(shù)據(jù)增強等)在 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 不允許這樣做。
2 回答

胡說叔叔
TA貢獻1804條經(jīng)驗 獲得超8個贊
我認為甚至沒有必要使用K.identity:
inp = Input((64, 64, 1))
out = Lambda(lambda x: x)(inp)
model = Model(inp, out)

阿晨1998
TA貢獻2037條經(jīng)驗 獲得超6個贊
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)
添加回答
舉報
0/150
提交
取消