keras.layers.core.dense(
units, #代表該層的輸出維度
activation=none, #啟用函式.但是預設 liner
use_bias=true, #是否使用b
kernel_initializer='glorot_uniform', #初始化w權重,keras/initializers.py
bias_initializer='zeros', #初始化b權重
kernel_regularizer=none, #施加在權重w上的正則項,keras/regularizer.py
bias_regularizer=none, #施加在偏置向量b上的正則項
activity_regularizer=none, #施加在輸出上的正則項
kernel_constraint=none, #施加在權重w上的約束項
bias_constraint=none #施加在偏置b上的約束項
)# 所實現的運算是output = activation(dot(input, kernel)+bias)
# model.add(dense(units=64, activation='relu', input_dim=784))
# keras初始化所有啟用函式,activation:
# keras\activations.py
# keras\backend\cntk_backend.py
# import cntk as c
# 1.softmax:
# 對輸入資料的最後一維進行softmax,一般用在輸出層;
# ndim == 2,k.softmax(x),其實呼叫的是cntk,是乙個模組;
# ndim >= 2,e = k.exp(x - k.max(x)),s = k.sum(e),return e / s
# 2.elu
# k.elu(x)
# 3.selu: 可伸縮的指數線性單元
# alpha = 1.6732632423543772848170429916717
# scale = 1.0507009873554804934193349852946
# return scale * k.elu(x, alpha)
# 4.softplus
# c.softplus(x)
# 5.softsign
# return x / (1 + c.abs(x))
# 6.relu
# def relu(x, alpha=0., max_value=none):
# if alpha != 0.:
# negative_part = c.relu(-x)
# x = c.relu(x)
# if max_value is not none:
# x = c.clip(x, 0.0, max_value)
# if alpha != 0.:
# x -= alpha * negative_part
# return x
# 7.tanh
# return c.tanh(x)
# 8.sigmoid
# return c.sigmoid(x)
# 9.hard_sigmoid
# x = (0.2 * x) + 0.5
# x = c.clip(x, 0.0, 1.0)
# return x
# 10.linear
# return x
# keras初始化所有方法,initializer:
# zeros
# ones
# constant(固定乙個值)
# randomnormal(正態分佈)
# randomuniform(均勻分布)
# truncatednormal(截尾高斯分布,神經網路權重和濾波器的推薦初始化方法)
# variancescaling(該初始化方法能夠自適應目標張量的shape)
# orthogonal(隨機正交矩陣初始化)
# identiy(單位矩陣初始化,僅適用於2d方陣)
# lecun_uniform(lecun均勻分布初始化)
# lecun_normal(lecun正態分佈初始化)
# glorot_normal(glorot正態分佈初始化)
# glorot_uniform(glorot均勻分布初始化)
# he_normal(he正態分佈初始化)
# he_uniform(he均勻分布初始化,keras中文文件寫錯了)
# keras正則化,regularizer:
# import backend as k
# l1: regularization += k.sum(self.l1 * k.abs(x))
# l2: regularization += k.sum(self.l2 * k.square(x))
原文:
keras中網路層的訓練
在定義好模型之後,需要進一步對神經網路進行訓練,此時就需要來對訓練方式進行定義,定義語句如下 定義訓練方式 model.compile loss categorical crossentropy,optimizer adam metrics accuracy 其中引數的設定具體如下 loss 損失函...
神經網路 keras中的層
core highway層 highway層建立全連線的highway網路,這是lstm在前饋神經網路中的推廣 convolution separableconvolution2d層 該層是對2d輸入的可分離卷積。可分離卷積首先按深度方向進行卷積 對每個輸入通道分別卷積 然後逐點進行卷積,將上一步的...
Keras學習筆記02 常用的網路層
在搭建神經網路結構時,我們要向網路中新增一些網路層,下面列舉出來常用的網路層及其相關用法。常用層對應於core模組,core內部定義了一系列常用的網路層,包括全連線 啟用層等。1.dense層 dense層 全連線層。keras.layers.core.dense output dim,init g...