Machine learning Keras model.fit()-使用哪种训练算法?

Machine learning Keras model.fit()-使用哪种训练算法?,machine-learning,deep-learning,keras,theano,Machine Learning,Deep Learning,Keras,Theano,我在Theano上使用Keras来创建一个MLP,我训练并使用它来预测时间序列。独立于网络的结构和深度,我无法确定(Keras文档、StackOverflow、搜索网络…)Keras的model.fit()函数使用的是哪种训练算法(反向传播…) 在Theano(以前没有使用Keras)中,我可以定义自己调整参数的方式 self.train\u step=theano.function(输入=[u\u in,t\u in,lrate],输出=[cost,y], 在“未使用的”输入上class='w



我在Theano上使用Keras来创建一个MLP,我训练并使用它来预测时间序列。独立于网络的结构和深度,我无法确定(Keras文档、StackOverflow、搜索网络…)Keras的
model.fit()函数使用的是哪种训练算法(反向传播…)
在Theano(以前没有使用Keras)中,我可以定义自己调整参数的方式

self.train\u step=theano.function(输入=[u\u in,t\u in,lrate],输出=[cost,y],
在“未使用的”输入上class='warn',
updates=[(p,p-lrate*g)用于zip中的p,g(self.parameters,self.gradients)],
允许\u输入\u向下广播=真)

找不到任何信息会让人担心我遗漏了一些重要信息,这可能是一个完全愚蠢的问题。

有人能帮我吗?事先非常感谢。

请看以下示例:

model.fit不使用算法来预测结果,而是使用您描述的模型。然后在model.compile中指定优化算法

e、 g


您可以在此处找到有关可用优化程序的更多信息:

这取决于优化程序。也许看一看?您提供的无更新规则应等同于SGD(动量=0,nesterov=False)
。在keras中,训练算法和损失函数在“model.compile”方法中进行了调整。谢谢大家。关于这个话题,我发现了一篇文章,可以推荐:
...
model = Sequential()
model.add(Conv2D(32, kernel_size=(3, 3),
                 activation='relu',
                 input_shape=input_shape))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(num_classes, activation='softmax'))

model.compile(loss=keras.losses.categorical_crossentropy,
              optimizer=keras.optimizers.Adadelta(),
              metrics=['accuracy'])

model.fit(x_train, y_train,
          batch_size=batch_size,
          epochs=epochs,
          verbose=1,
          validation_data=(x_test, y_test))
score = model.evaluate(x_test, y_test, verbose=0)
...
model.compile(loss=keras.losses.categorical_crossentropy,
          optimizer=**keras.optimizers.Adadelta()**,
          metrics=['accuracy'])