将Convnet.js神经网络模型转换为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      }

这是我目前所做的。我不能确定它是否正确。

   #---构建模型-----    model = models.Sequential()    # 输入层     model.add(layers.Dense(4, activation = "relu", input_shape=(4,)))      # 隐藏层     model.add(layers.Dense(25, activation = "relu"))     model.add(layers.Dense(5, activation = "relu"))    # 输出层    model.add(layers.Dense(1, activation = "linear"))     model.summary()    # 编译模型    model.compile(loss= "mean_squared_error" , optimizer="adam", metrics=["mean_squared_error"])

回答:

根据Convnet.js文档:“你的最后一层必须是损失层(分类使用’softmax’或’svm’,回归使用’regression’)。”此外:“创建一个回归层,它接受一个目标列表(任意数字,不一定是softmax/svm中的单一离散类别标签)并反向传播L2损失。”

这不太清楚。我怀疑“regression”层只是另一个全连接(Dense)神经元层。’regression’这个词可能指的是线性激活。所以,这次不使用’relu’吗?

无论如何,它可能会看起来像这样(非顺序模式):

from keras.layers import Densefrom keras.models import Modelmy_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似乎是一个不错的项目。如果有了解神经网络的人加入,将会更好。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注