簡體   English   中英

每個時期之后的Keras交叉驗證准確性穩定在(1 / output_classes)

[英]Keras cross-validation accuracy settling at (1/output_classes) after each epoch

我目前正在嘗試訓練具有大量說話者的DNN進行語音識別,每個說話者都有自己的標簽(output_classes =說話者總數)。 我的數據庫現在有300位演講者,Keras模型的摘要如下:

1240(輸入大小)-> 256隱藏-> 256隱藏-> 256隱藏(0.5下降)-> 256(0.5下降)-> Softmax(300)

我要分批提供數據(每個發言人數據=一批),並使用以下優化程序:

model.compile(
    loss='categorical_crossentropy',
    optimizer='Adam',
    metrics=['accuracy'])

fit_generator如下:

model.fit_generator(
    trainGen(i=0),
    steps_per_epoch=num_class,
    epochs=500,
    validation_data=(x_test, y_test))

這里的trainGen是我的生成器函數

訓練時,交叉驗證的准確性始終穩定在0.0033,即1/300。 在每個時期之后,訓練和交叉驗證損失都在下降。 有什么建議么?

因此,事實證明我的網絡過於龐大,因為我的數據庫太小了。 添加更多數據並進行正則化最終有助於獲得不錯的准確性。

暫無
暫無

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

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