Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
FluidDoc
提交
a332dc10
F
FluidDoc
项目概览
PaddlePaddle
/
FluidDoc
通知
5
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
23
列表
看板
标记
里程碑
合并请求
111
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
FluidDoc
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
23
Issue
23
列表
看板
标记
里程碑
合并请求
111
合并请求
111
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
a332dc10
编写于
11月 26, 2018
作者:
W
wanghaoshuang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fix format
上级
04d398b1
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
38 addition
and
8 deletion
+38
-8
doc/fluid/api/api_guides/index.rst
doc/fluid/api/api_guides/index.rst
+1
-2
doc/fluid/api/api_guides/low_level/parameter.rst
doc/fluid/api/api_guides/low_level/parameter.rst
+37
-6
未找到文件。
doc/fluid/api/api_guides/index.rst
100644 → 100755
浏览文件 @
a332dc10
...
...
@@ -12,5 +12,4 @@ API使用指南
low_level/metrics.rst
low_level/model_save_reader.rst
low_level/inference.rst
low_level/parameter.rst
doc/fluid/api/api_guides/low_level/parameter.rst
100644 → 100755
浏览文件 @
a332dc10
...
...
@@ -4,7 +4,7 @@
Parameter
#########
我将模型中的weight和bias统称为parameter, 在fluid中对应class fluid.Parameter. fluid.Parameter继承自fluid.Variable, 是一种可持久化的variable. 模型的训练就是不断学习更新parameters的过程。Parameter相关的属性可以通过 :ref:`api_fluid_param_attr` 来配置,可配置内容有:
我将模型中的weight和bias统称为parameter, 在fluid中对应class fluid.Parameter. fluid.Parameter继承自fluid.Variable, 是一种可持久化的variable. 模型的训练就是不断学习更新parameters的过程。Parameter相关的属性可以通过 :ref:`api_fluid_param_attr
_ParamAttr
` 来配置,可配置内容有:
- 初始化方式
- 正则化
...
...
@@ -28,44 +28,65 @@ fluid通过设置 :code:`ParamAttr` 的 :code:`initializer` 属性为单个param
1. BilinearInitializer
-----------------------
线性初始化方法。用该方法初始化的反卷积操作可当做线性插值操作使用。
可用别名:Bilinear
API请参考::ref:`api_fluid_initializer_BilinearInitializer`
2. ConstantInitializer
----------------------
常数初始化方式,将parameter初始化为指定的数值。
可用别名:Constant
API请参考::ref:`api_fluid_initializer_ConstantInitializer`
3. MSRAInitializer
------------------
该初始化方法参考论文: https://arxiv.org/abs/1502.01852
可用别名:MSRA
API请参考::ref:`api_fluid_initializer_MSRAInitializer`
4. NormalInitializer
---------------------
随机高斯分布初始化方法。
可用别名:Normal
API请参考::ref:`api_fluid_initializer_NormalInitializer`
5. TruncatedNormalInitializer
-----------------------------
随机截断高斯分布初始化方法。
可用别名:TruncatedNormal
API请参考::ref:`api_fluid_initializer_TruncatedNormalInitializer`
6. UniformInitializer
--------------------
随机均匀分布初始化方式。
可用别名:Uniform
API请参考::ref:`api_fluid_initializer_UniformInitializer`
7. XavierInitializer
--------------------
该初始化方式参考论文: http://proceedings.mlr.press/v9/glorot10a/glorot10a.pdf
可用别名:Xavier
API请参考::ref:`api_fluid_initializer_XavierInitializer`
正则化方式
...
...
@@ -81,8 +102,8 @@ fluid通过设置 :code:`ParamAttr` 的 :code:`regularizer` 属性为单个param
以下为fluid支持的正则化方式:
- :ref:`L1DecayRegularizer` (别名:L1Decay)
- :ref:`L2DecayRegularizer` (别名:L2Decay)
- :ref:`
api_fluid_regularizer_
L1DecayRegularizer` (别名:L1Decay)
- :ref:`
api_fluid_regularizer_
L2DecayRegularizer` (别名:L2Decay)
Clipping
==========
...
...
@@ -100,23 +121,31 @@ fluid通过设置 :code:`ParamAttr` 的 :code:`gradient_clip` 属性为单个par
1. ErrorClipByValue
-------------------
用来将一个tensor的值clipping到指定范围。
API请参考::ref:`api_fluid_clip_ErrorClipByValue`
2. GradientClipByGlobalNorm
---------------------------
用来将多个Tensor的global-norm限制在 :code:`clip_norm` 以内。
API请参考::ref:`api_fluid_clip_GradientClipByGlobalNorm`
3. GradientClipByNorm
---------------------
将Tensor的l2-norm限制在 :code:`max_norm` 以内。如果Tensor的l2-norm超过了 :code:`max_norm` ,会将计算出一个:code:`scale` ,该Tensor的所有值乘上计算出来的:code:`scale`.
API请参考::ref:`api_fluid_clip_GradientClipByNorm`
将Tensor的l2-norm限制在 :code:`max_norm` 以内。如果Tensor的l2-norm超过了 :code:`max_norm` ,
会将计算出一个 :code:`scale` ,该Tensor的所有值乘上计算出来的 :code:`scale` .
API请参考::ref:`api_fluid_clip_GradientClipByNorm`
4. GradientClipByValue
----------------------
将parameter对应的gradient的值限制在[min, max]范围内。
API请参考::ref:`api_fluid_clip_GradientClipByValue`
模型平均
...
...
@@ -132,5 +161,7 @@ fluid通过 :code:`ParamAttr` 的 :code:`do_model_average` 属性设置单个par
y_predict = fluid.layers.fc(input=x, size=10, param_attr=param_attrs)
在miniBatch训练过程中,每个batch过后,都会更新一次parameters, paddle model average做的就是平均最近k次更新产生的parameters.
平均后的parameters只是被用来进行测试和预测,其并不参与实际的训练过程。
具体API请参考::code:`paddle_fluid_optimizer_ModelAverage`
具体API请参考::ref:`api_fluid_optimizer_ModelAverage`
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录