簡體   English   中英

將 Convnet.js 神經網絡模型轉換為 Keras Tensorflow

[英]Convert Convnet.js neural network model to Keras Tensorflow

我有一個在 convnet.js 中創建的神經網絡模型,我必須使用 Keras 定義它。 有誰知道我該怎么做?

neural = {
          net : new convnetjs.Net(),
          layer_defs : [
            {type:'input', out_sx:4, out_sy:4, out_depth:1},
            {type:'fc', num_neurons:25, activation:"regression"},
            {type:'regression', num_neurons:5}
          ],
          neuralDepth: 1
      }

這是我目前能做的。 我不能確定它是否正確。

   #---Build Model-----
    model = models.Sequential()
    # Input - Layer 
    model.add(layers.Dense(4, activation = "relu", input_shape=(4,)))  
    # Hidden - Layers 
    model.add(layers.Dense(25, activation = "relu")) 
    model.add(layers.Dense(5, activation = "relu"))
    # Output- Layer
    model.add(layers.Dense(1, activation = "linear")) 
    model.summary()
    # Compile Model
    model.compile(loss= "mean_squared_error" , optimizer="adam", metrics=["mean_squared_error"])

來自 Convnet.js 文檔:“你的最后一層必須是一個損失層('softmax' 或 'svm' 用於分類,或 'regression' 用於回歸)。” 另外:“創建一個回歸層,它采用目標列表(任意數字,不一定是 softmax/svm 中的單個離散類標簽)並反向傳播 L2 損失。”

不清楚。 我懷疑“回歸”層只是另一層密集(全連接)神經元。 “回歸”一詞可能指的是線性活動。 那么,這次沒有'relu'嗎?

無論如何,它可能看起來像(無順序模式):

from keras.layers import Dense
from keras.models import Model
my_input = Input(shape = (4, ))
x = Dense(25, activation='relu')(x)
x = Dense(4)(x)
my_model = Model(input=my_input, output=x, loss='mse', metrics='mse')
my_model.compile(optimizer=Adam(LEARNING_RATE), loss='binary_crossentropy', metrics=['mse'])

閱讀了一些文檔后,convnet.js 似乎是一個不錯的項目。 有神經網絡知識的人會更好。

暫無
暫無

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

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