手册:Keras中文文档
1.张量:一阶张量是向量,二阶张量是矩阵。
2.batch:
Batch gradient descent,遍历全部数据集算一次损失函数,然后算函数对各个参数的梯度,更新梯度。太慢。
stochastic gradient descent,每看一个数据就算一下损失函数,然后求梯度更新参数。收敛性能不太好。
mini-batch gradient decent,把数据分为若干个批,按批来更新参数。
3.Sequential模型:
需要指定第一层数据的shape:
model.add(Dense(output_dim,input_dim)) #全连接层
Keras中输入多为(nb_samples, input_dim)的形式:即(样本数量,输入维度)。
#使用list的形式加层
model=Sequential([
Dense(32,units=784),Activation('relu'),
Dense(10),Activation('softmax'),
或者
model.add(Dense(32, input_shape=(784,)))
model.add(Activation('relu'))
one_hot_labels = keras.utils.to_categorical(labels, num_classes=10)
训练之前需要compile,要指定optimizer,loss,metrics.
①可用的optimizer: SGD,RMSprop,Adagrad,Adadelta,Adam,Adamax,Nadam,TFOptimizer。
参考文档:
优化器optimizers
最优化方法
如何选取optimizer
②参考文档目标函数objectives
训练:以Numpy数组作为输入数据和标签的数据类型