Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
机器未来
Paddle
提交
fbdd4f8c
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看板
未验证
提交
fbdd4f8c
编写于
9月 03, 2018
作者:
T
tangwei12
提交者:
GitHub
9月 03, 2018
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #13101 from zenghsh3/develop
Fix bug of sampling_id op
上级
9bd933d3
d0c01d31
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
14 addition
and
4 deletion
+14
-4
paddle/fluid/operators/sampling_id_op.h
paddle/fluid/operators/sampling_id_op.h
+2
-2
python/paddle/fluid/tests/unittests/test_sampling_id_op.py
python/paddle/fluid/tests/unittests/test_sampling_id_op.py
+12
-2
未找到文件。
paddle/fluid/operators/sampling_id_op.h
浏览文件 @
fbdd4f8c
...
@@ -53,7 +53,7 @@ class SamplingIdKernel : public framework::OpKernel<T> {
...
@@ -53,7 +53,7 @@ class SamplingIdKernel : public framework::OpKernel<T> {
static_cast
<
T
>
(
context
.
Attr
<
float
>
(
"min"
)),
static_cast
<
T
>
(
context
.
Attr
<
float
>
(
"min"
)),
static_cast
<
T
>
(
context
.
Attr
<
float
>
(
"max"
)));
static_cast
<
T
>
(
context
.
Attr
<
float
>
(
"max"
)));
std
::
vector
<
T
>
ids
(
batch_size
);
std
::
vector
<
int64_t
>
ids
(
batch_size
);
for
(
int
i
=
0
;
i
<
batch_size
;
++
i
)
{
for
(
int
i
=
0
;
i
<
batch_size
;
++
i
)
{
T
r
=
dist
(
engine
);
T
r
=
dist
(
engine
);
int
idx
=
width
-
1
;
int
idx
=
width
-
1
;
...
@@ -63,7 +63,7 @@ class SamplingIdKernel : public framework::OpKernel<T> {
...
@@ -63,7 +63,7 @@ class SamplingIdKernel : public framework::OpKernel<T> {
break
;
break
;
}
}
}
}
ids
[
i
]
=
in
s_vector
[
idx
]
;
ids
[
i
]
=
in
t64_t
(
idx
)
;
}
}
std
::
vector
<
int64_t
>
out_dim
;
std
::
vector
<
int64_t
>
out_dim
;
...
...
python/paddle/fluid/tests/unittests/test_sampling_id_op.py
浏览文件 @
fbdd4f8c
...
@@ -25,9 +25,9 @@ class TestSamplingIdOp(OpTest):
...
@@ -25,9 +25,9 @@ class TestSamplingIdOp(OpTest):
self
.
op_type
=
"sampling_id"
self
.
op_type
=
"sampling_id"
self
.
use_mkldnn
=
False
self
.
use_mkldnn
=
False
self
.
init_kernel_type
()
self
.
init_kernel_type
()
self
.
X
=
np
.
random
.
random
((
8
,
4
)).
astype
(
'float32'
)
self
.
X
=
np
.
random
.
random
((
100
,
10
)).
astype
(
'float32'
)
self
.
inputs
=
{
"X"
:
self
.
X
}
self
.
inputs
=
{
"X"
:
self
.
X
}
self
.
Y
=
np
.
random
.
random
(
8
).
astype
(
'float32
'
)
self
.
Y
=
np
.
random
.
random
(
100
).
astype
(
'int64
'
)
self
.
outputs
=
{
'Out'
:
self
.
Y
}
self
.
outputs
=
{
'Out'
:
self
.
Y
}
self
.
attrs
=
{
'max'
:
1.0
,
'min'
:
0.0
,
'seed'
:
1
}
self
.
attrs
=
{
'max'
:
1.0
,
'min'
:
0.0
,
'seed'
:
1
}
...
@@ -36,6 +36,16 @@ class TestSamplingIdOp(OpTest):
...
@@ -36,6 +36,16 @@ class TestSamplingIdOp(OpTest):
y1
=
self
.
out
y1
=
self
.
out
self
.
check_output_customized
(
self
.
verify_output
)
self
.
check_output_customized
(
self
.
verify_output
)
y2
=
self
.
out
y2
=
self
.
out
# check dtype
assert
y1
.
dtype
==
np
.
int64
assert
y2
.
dtype
==
np
.
int64
# check output is index ids of inputs
inputs_ids
=
np
.
arange
(
self
.
X
.
shape
[
1
])
assert
np
.
isin
(
y1
,
inputs_ids
).
all
()
assert
np
.
isin
(
y2
,
inputs_ids
).
all
()
self
.
assertTrue
(
np
.
array_equal
(
y1
,
y2
))
self
.
assertTrue
(
np
.
array_equal
(
y1
,
y2
))
self
.
assertEqual
(
len
(
y1
),
len
(
self
.
Y
))
self
.
assertEqual
(
len
(
y1
),
len
(
self
.
Y
))
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录