Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MindSpore
docs
提交
1221768d
D
docs
项目概览
MindSpore
/
docs
通知
4
Star
2
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
1221768d
编写于
5月 28, 2020
作者:
B
buxue
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update parse grammar support tensor get item and set item by tensor index.
上级
8ff0fdbf
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
36 addition
and
6 deletion
+36
-6
docs/source_en/constraints_on_network_construction.md
docs/source_en/constraints_on_network_construction.md
+19
-3
docs/source_zh_cn/constraints_on_network_construction.md
docs/source_zh_cn/constraints_on_network_construction.md
+17
-3
未找到文件。
docs/source_en/constraints_on_network_construction.md
浏览文件 @
1221768d
...
...
@@ -103,12 +103,28 @@ The index operation includes `tuple` and` Tensor`. The following focuses on the
-
Boolean constant index: index is
`True`
, index is
`False`
is not supported temporarily.
-
Value:
`tensor_x[True]`
.
-
Assignment: Not supported yet.
-
Tensor index: index is
`Tensor`
-
Value: Not supported yet.
-
Assignment:
`tensor_x[index] = u`
,
`index`
only supports
`Tensor`
of type
` bool`
.
-
Value:
`tensor_x [index]`
,
`index`
must be
`Tensor`
of type
`int32`
, the element value range is
`[0, tensor_x.shape[0])`
.
-
Assignment:
`tensor_x [index] = U`
.
-
`tensor_x`
data type must be one of the following:
`float16`
,
`float32`
,
`int8`
,
`uint8`
.
-
`index`
must be
`Tensor`
of type
`int32`
, the element value range is
`[0, tensor_x.shape [0])`
.
-
`U`
can be
`Number`
,
`Tensor`
,
`Tuple`
only containing
`Number`
,
`Tuple`
only containing
`Tensor`
.
-
Single
`Number`
or every
`Number`
in
`Tuple`
must be the same type as
`tensor_x`
, ie
When the data type of
`tensor_x`
is
`uint8`
or
`int8`
, the
`Number`
type should be
`int`
;
When the data type of
`tensor_x`
is
`float16`
or
`float32`
, the
`Number`
type should be
`float`
.
-
Single
`Tensor`
or every
`Tensor in Tuple`
must be consistent with the data type of
`tensor_x`
,
when single
`Tensor`
, the
`shape`
should be equal to or broadcast as
`index.shape + tensor_x.shape [1:]`
.
-
`Tuple`
containing
`Number`
must meet requirement:
`len (Tuple) = (index.shape + tensor_x.shape [1:]) [-1]`
.
-
`Tuple`
containing
`Tensor`
must meet requirements:
the
`shape`
of each
`Tensor`
should be the same,
`(len (Tuple),) + Tensor.shape`
should be equal to or broadcast as
`index.shape + tensor_x.shape [1:]`
.
-
None constant index: index is
`None`
-
Value:
`tensor_x[None]`
, results are consistent with numpy.
-
Assignment: Not supported yet.
-
tuple index: index is
`tuple`
-
The tuple element is a slice:
-
Value: for example
`tensor_x[::,: 4, 3: 0: -1]`
.
...
...
@@ -126,7 +142,7 @@ In addition, tuple also supports slice value operation, `tuple_x [start: stop: s
### Unsupported Syntax
Currently, the following syntax is not supported in network constructors:
`
break`
,
`continue`
,
`pass`
,
`
raise`
,
`yield`
,
`async for`
,
`with`
,
`async with`
,
`assert`
,
`import`
, and
`await`
.
`raise`
,
`yield`
,
`async for`
,
`with`
,
`async with`
,
`assert`
,
`import`
, and
`await`
.
## Network Definition Constraints
...
...
docs/source_zh_cn/constraints_on_network_construction.md
浏览文件 @
1221768d
...
...
@@ -102,8 +102,22 @@
-
取值:
`tensor_x[True]`
。
-
赋值:暂不支持。
-
Tensor索引:index为
`Tensor`
-
取值:暂不支持。
-
赋值:
`tensor_x[index]=u`
,
`index`
仅支持
`bool`
类型的
`Tensor`
。
-
取值:
`tensor_x[index]`
,
`index`
必须是
`int32`
类型的
`Tensor`
,元素取值范围在
`[0, tensor_x.shape[0])`
。
-
赋值:
`tensor_x[index]=U`
。
-
`tensor_x`
的数据类型必须是下面一种:
`float16`
,
`float32`
,
`int8`
,
`uint8`
。
-
`index`
必须是
`int32`
类型的
`Tensor`
,元素取值范围在
`[0, tensor_x.shape[0])`
。
-
`U`
可以是
`Number`
,
`Tensor`
,只包含
`Number`
的
`Tuple`
,只包含
`Tensor`
的
`Tuple`
。
-
单个
`Number`
和
`Tuple`
里的每个
`Number`
必须与
`tensor_x`
的数据类型属于同一类,即
当
`tensor_x`
的数据类型是
`uint8`
或者
`int8`
时,
`Number`
类型应该是
`int`
;
当
`tensor_x`
的数据类型是
`float16`
或者
`float32`
时,
`Number`
类型应该是
`float`
。
-
单个
`Tensor`
和
`Tuple`
里的每个
`Tensor`
必须与
`tensor_x`
的数据类型一致,
单个
`Tensor`
时,其
`shape`
需等于或者可广播为
`index.shape + tensor_x.shape[1:]`
。
-
包含
`Number`
的
`Tuple`
需满足下面条件:
`len(Tuple) = (index.shape + tensor_x.shape[1:])[-1]`
。
-
包含
`Tensor`
的
`Tuple`
需满足下面条件:
每个
`Tensor`
的
`shape`
一样;
`(len(Tuple),) + Tensor.shape`
等于或者可广播为
`index.shape + tensor_x.shape[1:]`
。
-
None常量索引:index为
`None`
-
取值:
`tensor_x[None]`
,结果与numpy保持一致。
-
赋值:暂不支持。
...
...
@@ -124,7 +138,7 @@
### 不支持的语法
目前在网络构造函数里面暂不支持以下语法:
`
break`
、
`continue`
、
`pass`
、
`
raise`
、
`yield`
、
`async for`
、
`with`
、
`async with`
、
`assert`
、
`import`
、
`await`
。
`raise`
、
`yield`
、
`async for`
、
`with`
、
`async with`
、
`assert`
、
`import`
、
`await`
。
## 网络定义约束
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录