我一直在用CNTK迭代地訓練一些模型,在每次迭代後用新的集合替換數據,然後運行另一輪訓練。 .DNN文件可以在CNTK本身(運行訓練命令)中正確加載,並且可以使用Microsoft.Research.CNTK.CpuEval-mkl nuget軟件包使用來自C#的CPU評估。加載CNTK中的有效模型的未處理異常
模型的評估現在花費足夠長的時間,我決定切換到C#的GPU庫,CNTK.GPU。然而,當我試圖在我的代碼中加載模型時,我得到以下例外:
Prediction output operand's shape [7 x 1] is incompatible with label operand's shap [7] for the CrossEntropyWithSoftmax operation
at CNTK.Function.LoadModel(String modelFile)
任何想法如何讓模型加載?如果我必須更改CNTK文件來更新拓撲結構,我可以這樣做,但我不想拋棄我用當前模型所取得的進展。
編輯:這是我用來構建網絡的CNTK文件的一部分。我基本上拿了一些示例代碼,並將其改爲適合我需要的。
SimpleNetworkBuilder = {
layerSizes=84:5000*5:7
trainingCriterion="CrossEntropyWithSoftmax"
evalCriterion="ErrorPrediction"
layerTypes="RectifiedLinear"
initValueScale=1.0
uniformInit=true
needPrior=true
addDropoutNodes=true
}
感謝您報告問題。我們正在研究它。 –
如果有幫助,我添加了用於創建網絡的代碼。 –