我一夜之间训练了一个keras模型,准确度达到75%,我现在很高兴.它有60,000个样本,每个样本的序列长度为700,词汇量为30.每个epoch在我的gpu上大约需要10分钟.因此,这是60,000/600秒,大约每秒100个样本,并且必须包括反向传播.所以我保存了我的hdf5文件并再次加载.
<code>#Model:
model = Sequential()
model.add(LSTM(128, input_shape=(X.shape[1], X.shap[2]), return_sequences=True)) model.add(Dropout(0.25)) model.add(LSTM(64)) model.add(Dropout(0.25)) model.add(Dense(y.shape[1], activation='softmax'))
</code>
Run Code Online (Sandbox Code Playgroud)
然后当我做出我的预测时,每次预测花费的时间比1秒多,比训练慢100倍.预测很好,我看了小批量,我可以使用它们.问题是我需要10万多个.每次预测10ms秒可以工作,1秒不会.
谁能提出加速Keras预测的方法?
小智 2
我认为这是因为 Keras 的默认预测行为是批量大小为 32。因此,特别是如果您使用 GPU,小批量会破坏性能。如果您只是更改批量大小来预测(X_test,batch_size = 128),您将获得明显更快的性能。
| 归档时间: |
|
| 查看次数: |
1012 次 |
| 最近记录: |