首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >xavier_initializer()是如何知道激活的?

xavier_initializer()是如何知道激活的?
EN

Stack Overflow用户
提问于 2016-09-09 16:00:01
回答 1查看 821关注 0票数 1

tf.contrib.layers.xavier_initializer()是如何知道激活函数的?

初始化的标准偏差取决于所使用的非线性.对吗?那么tf.contrib.layers.xavier_initializer()是如何知道发生了什么的呢?

以下列情况为例:

代码语言:javascript
运行
复制
W = tf.get_variable("W", shape=[784, 256],
           initializer=tf.contrib.layers.xavier_initializer())

这个W对X做了一些事情,然后结果被传递给一个tanh或relu,或者有你。现在,初始化器在W中,tensorflow是如何显示激活的?或者我必须介入,知道我将要使用的激活?

看看初始化器中的参数,我可以选择unifrom或正态分布。但这并不能解决问题,对吧?

EN

回答 1

Stack Overflow用户

发布于 2016-09-09 18:41:47

初始化的标准偏差取决于所使用的非线性.对吗?

不是的。Xavier初始化不需要知道任何关于网络使用的非线性的信息。

实际上,Xavier初始化只是权值的初始化,从均值=0和方差= 1/<number_of_inputs>的随机分布中选择值。

声明变量时,传递shape参数。形状参数的第一个维度是<number_of_inputs>

也许您正在寻找专门为ReLU e PReLU定义的He初始化,但是即使在这种情况下,变量初始化也不需要知道随后会出现什么非线性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39415539

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档