Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
magicwindyyd
mindspore
提交
d1b452cf
M
mindspore
项目概览
magicwindyyd
/
mindspore
与 Fork 源项目一致
Fork自
MindSpore / mindspore
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
mindspore
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
d1b452cf
编写于
4月 18, 2020
作者:
M
mindspore-ci-bot
提交者:
Gitee
4月 18, 2020
浏览文件
操作
浏览文件
下载
差异文件
!384 [MD] remove validation parameter in write_raw_data
Merge pull request !384 from liyong126/mindrecord_validation
上级
aa543052
149901ce
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
6 addition
and
49 deletion
+6
-49
mindspore/mindrecord/filewriter.py
mindspore/mindrecord/filewriter.py
+6
-49
未找到文件。
mindspore/mindrecord/filewriter.py
浏览文件 @
d1b452cf
...
...
@@ -26,8 +26,7 @@ from .shardheader import ShardHeader
from
.shardindexgenerator
import
ShardIndexGenerator
from
.shardutils
import
MIN_SHARD_COUNT
,
MAX_SHARD_COUNT
,
VALID_ATTRIBUTES
,
VALID_ARRAY_ATTRIBUTES
,
\
check_filename
,
VALUE_TYPE_MAP
from
.common.exceptions
import
ParamValueError
,
ParamTypeError
,
MRMInvalidSchemaError
,
MRMDefineIndexError
,
\
MRMValidateDataError
from
.common.exceptions
import
ParamValueError
,
ParamTypeError
,
MRMInvalidSchemaError
,
MRMDefineIndexError
__all__
=
[
'FileWriter'
]
...
...
@@ -201,52 +200,13 @@ class FileWriter:
raw_data
.
pop
(
i
)
logger
.
warning
(
v
)
def
_verify_based_on_blob_fields
(
self
,
raw_data
):
def
write_raw_data
(
self
,
raw_data
):
"""
Verify data according to blob fields which is sub set of schema's fields.
Raise exception if validation failed.
1) allowed data type contains: "int32", "int64", "float32", "float64", "string", "bytes".
Args:
raw_data (list[dict]): List of raw data.
Raises:
MRMValidateDataError: If data does not match blob fields.
"""
schema_content
=
self
.
_header
.
schema
for
field
in
schema_content
:
for
i
,
v
in
enumerate
(
raw_data
):
if
field
not
in
v
:
raise
MRMValidateDataError
(
"for schema, {} th data is wrong: "
\
"there is not '{}' object in the raw data."
.
format
(
i
,
field
))
if
field
in
self
.
_header
.
blob_fields
:
field_type
=
type
(
v
[
field
]).
__name__
if
field_type
not
in
VALUE_TYPE_MAP
:
raise
MRMValidateDataError
(
"for schema, {} th data is wrong: "
\
"data type for '{}' is not matched."
.
format
(
i
,
field
))
if
schema_content
[
field
][
"type"
]
not
in
VALUE_TYPE_MAP
[
field_type
]:
raise
MRMValidateDataError
(
"for schema, {} th data is wrong: "
\
"data type for '{}' is not matched."
.
format
(
i
,
field
))
if
field_type
==
'ndarray'
:
if
'shape'
not
in
schema_content
[
field
]:
raise
MRMValidateDataError
(
"for schema, {} th data is wrong: "
\
"data type for '{}' is not matched."
.
format
(
i
,
field
))
try
:
# tuple or list
np
.
reshape
(
v
[
field
],
schema_content
[
field
][
'shape'
])
except
ValueError
:
raise
MRMValidateDataError
(
"for schema, {} th data is wrong: "
\
"data type for '{}' is not matched."
.
format
(
i
,
field
))
def
write_raw_data
(
self
,
raw_data
,
validate
=
True
):
"""
Write raw data and generate sequential pair of MindRecord File.
Write raw data and generate sequential pair of MindRecord File and
\
validate data based on predefined schema by default.
Args:
raw_data (list[dict]): List of raw data.
validate (bool, optional): Validate data according schema if it equals to True,
or validate data according to blob fields (default=True).
Raises:
ParamTypeError: If index field is invalid.
...
...
@@ -264,11 +224,8 @@ class FileWriter:
for
each_raw
in
raw_data
:
if
not
isinstance
(
each_raw
,
dict
):
raise
ParamTypeError
(
'raw_data item'
,
'dict'
)
if
validate
is
True
:
self
.
_verify_based_on_schema
(
raw_data
)
elif
validate
is
False
:
self
.
_verify_based_on_blob_fields
(
raw_data
)
return
self
.
_writer
.
write_raw_data
(
raw_data
,
validate
)
self
.
_verify_based_on_schema
(
raw_data
)
return
self
.
_writer
.
write_raw_data
(
raw_data
,
True
)
def
set_header_size
(
self
,
header_size
):
"""
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录