纪元时间太长,

问题描述 投票:0回答:1

我有一台内存很好的电脑(英特尔酷睿 i7-11 代和 16gb 内存) 我的每个纪元仍然需要大约 1.5 小时,花这么长时间是否正常?

from keras.models import Sequential
from keras.layers import Dense
from keras.layers import LSTM

# define model
model = Sequential()
model.add(LSTM(100, activation='relu', input_shape=(n_input, n_features)))
model.add(Dense(1))
model.compile(optimizer='adam', loss='mse')
 

model.summary()

# fit model
model.fit(generator,epochs=10)

python keras lstm epoch
1个回答
0
投票

从您的输出来看,您似乎采用了非常小的 batch_size,因此迭代次数很多。考虑到您的 16GB RAM,您应该能够根据数据的丰富程度对更大的批次进行训练。

您可以在 model.fit 中将批量大小设置为:

model.fit(generator, epochs=10, batch_size=16)

这里的 batch_size 为 16 是任意的,您可以根据系统的容量选择更少或更多的批次。

或者您也可以在生成器的声明中设置它,例如:

datagen = ImageDataGenerator(rescale=1./255)

image_generator = datagen.flow_from_directory(
    images,
    target_size=input_size,
    batch_size=batch_size,
    class_mode=None)
© www.soinside.com 2019 - 2024. All rights reserved.