Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
机器未来
Paddle
提交
abfd9fdd
P
Paddle
项目概览
机器未来
/
Paddle
与 Fork 源项目一致
Fork自
PaddlePaddle / Paddle
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
Paddle
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
abfd9fdd
编写于
9月 22, 2017
作者:
T
tensor-tang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add clip to avoid log zero and nan
上级
7483087c
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
2 addition
and
2 deletion
+2
-2
paddle/math/Matrix.cpp
paddle/math/Matrix.cpp
+2
-2
未找到文件。
paddle/math/Matrix.cpp
浏览文件 @
abfd9fdd
...
...
@@ -3637,7 +3637,7 @@ void CpuMatrix::oneHotCrossEntropy(Matrix& output, IVector& label) {
for
(
size_t
i
=
0
;
i
<
numSamples
;
++
i
,
out
+=
dim
)
{
CHECK_GE
(
lbl
[
i
],
0
);
CHECK_LT
((
size_t
)
lbl
[
i
],
dim
);
cost
[
i
]
=
-
std
::
log
(
out
[
lbl
[
i
]]
);
cost
[
i
]
=
-
std
::
log
(
std
::
max
(
out
[
lbl
[
i
]],
real
(
FLT_MIN
))
);
}
}
...
...
@@ -3652,7 +3652,7 @@ void CpuMatrix::oneHotCrossEntropyBp(Matrix& output, IVector& label) {
real
*
grad
=
getData
();
int
*
lbl
=
label
.
getData
();
for
(
size_t
i
=
0
;
i
<
numSamples
;
++
i
,
out
+=
dim
,
grad
+=
dim
)
{
grad
[
lbl
[
i
]]
-=
1
/
out
[
lbl
[
i
]]
;
grad
[
lbl
[
i
]]
-=
1
/
std
::
max
(
out
[
lbl
[
i
]],
real
(
FLT_MIN
))
;
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录