我就废话不多说了,大家还是直接看代码吧!
''' Created on 2018-4-4 ''' 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.layers.Dense()方法及其参数
一、Dense层
keras.layers.Dense(units, activation=None, use_bias=True, kernel_initializer='glorot_uniform', bias_initializer='zeros', kernel_regularizer=None, bias_regularizer=None, activity_regularizer=None, kernel_constraint=None, bias_constraint=None)
二、参数
units: 神经元节点数数,鸡输出空间维度。
activation: 激活函数,若不指定,则不使用激活函数 (即线性激活: a(x) = x)。
use_bias: 布尔值,该层是否使用偏置向量。
kernel_initializer: kernel 权值矩阵的初始化器
bias_initializer: 偏置向量的初始化器
kernel_regularizer: 运用到 kernel 权值矩阵的正则化函数
bias_regularizer: 运用到偏置向的的正则化函数
activity_regularizer: 运用到层的输出的正则化函数 (它的 “activation”)。
kernel_constraint: 运用到 kernel 权值矩阵的约束函数
bias_constraint: 运用到偏置向量的约束函数
三、示例
例1:
from keras.layers import Dense # 作为 Sequential 模型的第一层 model = Sequential() model.add(Dense(32, input_shape=(16,))) # 现在模型就会以尺寸为 (*, 16) 的数组作为输入, # 其输出数组的尺寸为 (*, 32) # 在第一层之后,你就不再需要指定输入的尺寸了: model.add(Dense(32))
注意在Sequential模型的第一层要定义Dense层的形状,此处定义为input_shape=(16,)
例2:
from keras.layers import Dense model = Sequential() model.add(Dense(512, activation= 'sigmoid', input_dim= 2, use_bias= True))
这里定义了一个有512个神经元节点,使用sigmoid激活函数的神经层,此时输入形状参数为input_dim,注意它与input_shape参数的区别。
input_shape:即张量的形状,从前往后对应由外向内的维度
例
[[1],[2],[3]] 这个张量的shape为(3,1)
[[[1,2],[3,4]],[[5,6],[7,8]],[[9,10],[11,12]]]这个张量的shape为(3,2,2),
[1,2,3,4]这个张量的shape为(4,)
input_dim:代表张量的维度,之前3个例子的input_dim分别为2,3,1。
常见的一种用法:只提供了input_dim=32,说明输入是一个32维的向量,相当于一个一阶、拥有32个元素的张量,它的shape就是(32,)。因此,input_shape=(32, )
四、总结
本文对Dense()方法及其参数做了详细的介绍,并对其用法进行了大概的讲解,有什么问题可以评论区留言或者联系我,我会及时解答。希望能给大家一个参考,也希望大家多多支持。
Keras,Dense层
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
- 【雨果唱片】中国管弦乐《鹿回头》WAV
- APM亚流新世代《一起冒险》[FLAC/分轨][106.77MB]
- 崔健《飞狗》律冻文化[WAV+CUE][1.1G]
- 罗志祥《舞状元 (Explicit)》[320K/MP3][66.77MB]
- 尤雅.1997-幽雅精粹2CD【南方】【WAV+CUE】
- 张惠妹.2007-STAR(引进版)【EMI百代】【WAV+CUE】
- 群星.2008-LOVE情歌集VOL.8【正东】【WAV+CUE】
- 罗志祥《舞状元 (Explicit)》[FLAC/分轨][360.76MB]
- Tank《我不伟大,至少我能改变我。》[320K/MP3][160.41MB]
- Tank《我不伟大,至少我能改变我。》[FLAC/分轨][236.89MB]
- CD圣经推荐-夏韶声《谙2》SACD-ISO
- 钟镇涛-《百分百钟镇涛》首批限量版SACD-ISO
- 群星《继续微笑致敬许冠杰》[低速原抓WAV+CUE]
- 潘秀琼.2003-国语难忘金曲珍藏集【皇星全音】【WAV+CUE】
- 林东松.1997-2039玫瑰事件【宝丽金】【WAV+CUE】