Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
机器未来
Paddle
提交
5219efb1
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看板
提交
5219efb1
编写于
10月 12, 2019
作者:
L
liym27
提交者:
Tao Luo
10月 12, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix reshape input(x) error check on float16. test=develop (#20529)
上级
23845893
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
20 addition
and
4 deletion
+20
-4
python/paddle/fluid/layers/nn.py
python/paddle/fluid/layers/nn.py
+8
-2
python/paddle/fluid/tests/unittests/test_reshape_op.py
python/paddle/fluid/tests/unittests/test_reshape_op.py
+12
-2
未找到文件。
python/paddle/fluid/layers/nn.py
浏览文件 @
5219efb1
...
@@ -8524,9 +8524,15 @@ def reshape(x, shape, actual_shape=None, act=None, inplace=False, name=None):
...
@@ -8524,9 +8524,15 @@ def reshape(x, shape, actual_shape=None, act=None, inplace=False, name=None):
"The type of 'x' in reshape must be Variable, but received %s." %
"The type of 'x' in reshape must be Variable, but received %s." %
(type(x)))
(type(x)))
if convert_dtype(x.dtype) not in ['float32', 'float64', 'int32', 'int64']:
if convert_dtype(x.dtype) in ['float16']:
warnings.warn(
"The data type of 'x' in reshape only support float16 in GPU now.")
if convert_dtype(x.dtype) not in [
'float16', 'float32', 'float64', 'int32', 'int64'
]:
raise TypeError(
raise TypeError(
"The data type of 'x' in reshape must be float32, float64, int32 or int64, "
"The data type of 'x' in reshape must be float
16, float
32, float64, int32 or int64, "
"but received %s." % (convert_dtype(x.dtype)))
"but received %s." % (convert_dtype(x.dtype)))
if not isinstance(shape, (list, tuple, Variable)):
if not isinstance(shape, (list, tuple, Variable)):
...
...
python/paddle/fluid/tests/unittests/test_reshape_op.py
浏览文件 @
5219efb1
...
@@ -238,17 +238,27 @@ class TestReshapeOpError(OpTest):
...
@@ -238,17 +238,27 @@ class TestReshapeOpError(OpTest):
self
.
assertRaises
(
TypeError
,
test_x_type
)
self
.
assertRaises
(
TypeError
,
test_x_type
)
# The x dtype of reshape_op must be float32, float64, int32 or int64.
# The x dtype of reshape_op must be float
16, float
32, float64, int32 or int64.
def
test_x_dtype
():
def
test_x_dtype
():
x2
=
fluid
.
layers
.
data
(
x2
=
fluid
.
layers
.
data
(
name
=
"x2"
,
name
=
"x2"
,
shape
=
[
2
,
25
],
shape
=
[
2
,
25
],
append_batch_size
=
False
,
append_batch_size
=
False
,
dtype
=
"
float16
"
)
dtype
=
"
bool
"
)
fluid
.
layers
.
reshape
(
x2
,
shape
=
[
2
,
5
,
5
])
fluid
.
layers
.
reshape
(
x2
,
shape
=
[
2
,
5
,
5
])
self
.
assertRaises
(
TypeError
,
test_x_dtype
)
self
.
assertRaises
(
TypeError
,
test_x_dtype
)
def
test_x_dtype_float16
():
x_float16
=
fluid
.
layers
.
data
(
name
=
"x_float16"
,
shape
=
[
2
,
25
],
append_batch_size
=
False
,
dtype
=
"float16"
)
fluid
.
layers
.
reshape
(
x_float16
,
shape
=
[
2
,
5
,
5
])
test_x_dtype_float16
()
x3
=
fluid
.
layers
.
data
(
x3
=
fluid
.
layers
.
data
(
name
=
"x3"
,
name
=
"x3"
,
shape
=
[
2
,
25
],
shape
=
[
2
,
25
],
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录