这段代码的两个密集是什么意思?
self.model.add(Flatten())
self.model.add(Dense(512))
self.model.add(Activation('relu'))
self.model.add(Dropout(0.5))
self.model.add(Dense(10))
self.model.add(Activation('softmax'))
self.model.summary()
答案 0 :(得分:2)
Dense
是该模型中唯一的实际网络层。
Dense
层将前一层的所有输出提供给其所有神经元,每个神经元将一个输出提供给下一层。
它是神经网络中最基本的层。
Dense(10)
有十个神经元。 Dense(512)
有512个神经元。
答案 1 :(得分:2)
此外,dense层应用A非线性变换:
f(W.X + b)
关于效果,在W和X是2D张量的情况下,WX + b是向量而f是像tanh那样的元素非线性,因此结果只是数字中的大小向量神经元
来自keras docs:
密集实现操作:output = activation(dot(input,kernel) + bias)其中激活是作为激活参数传递的元素激活函数,内核是创建的权重矩阵 通过该层,偏差是由该层创建的偏向量(仅 适用于use_bias为True的情况。)