我一直在努力實現的Python生成到使用Keras.js圖書館網站基本Keras模型。現在,我的模型中訓練,並出口到model.json
,model_weights.buf
和model_metadata.json
文件。現在,我基本上從github頁面複製並粘貼測試代碼,以查看模型是否會在瀏覽器中加載,但不幸的是我收到錯誤。這是測試代碼。 (編輯:我修正了一些錯誤,請參閱下面其餘的)實施Keras型號爲網站與Keras.js
var model = new KerasJS.Model({
filepaths: {
model: 'dist/model.json',
weights: 'dist/model_weights.buf',
metadata: 'dist/model_metadata.json'
},
gpu: true
});
model.ready()
.then(function() {
console.log("1");
// input data object keyed by names of the input layers
// or `input` for Sequential models
// values are the flattened Float32Array data
// (input tensor shapes are specified in the model config)
var inputData = {
'input_1': new Float32Array(data)
};
console.log("2 " + inputData);
// make predictions
return model.predict(inputData);
})
.then(function(outputData) {
// outputData is an object keyed by names of the output layers
// or `output` for Sequential models
// e.g.,
// outputData['fc1000']
console.log("3 " + outputData);
})
.catch(function(err) {
console.log(err);
// handle error
});
編輯:所以我改變了我的計劃圍繞一點與JS 5對應的(這是我的一個愚蠢的錯誤),並現在我遇到了一個不同的錯誤。該錯誤被捕獲並記錄。我得到的錯誤是:Error: predict() must take an object where the keys are the named inputs of the model: input.
我相信這個問題是因爲我data
變量是不正確的格式。我想,如果我的模型參加了號的28x28陣列,然後data
也應該是一個28x28陣列,以便能夠正確地「預測」正確的輸出。但是,我相信我錯過了一些東西,這就是錯誤被拋出的原因。 This問題與我的非常相似,但是它在python中而不是JS。再次,任何幫助將不勝感激。