Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
项目经理老王
Mace
提交
97e2d5d4
Mace
项目概览
项目经理老王
/
Mace
与 Fork 源项目一致
Fork自
Xiaomi / Mace
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Mace
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
97e2d5d4
编写于
12月 29, 2018
作者:
李
李滨
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'gpu_buffer' into 'master'
Don't quantize non_zero for dsp See merge request !933
上级
02c1048e
0c993bad
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
12 addition
and
4 deletion
+12
-4
mace/python/tools/converter_tool/hexagon_converter.py
mace/python/tools/converter_tool/hexagon_converter.py
+1
-1
mace/python/tools/converter_tool/transformer.py
mace/python/tools/converter_tool/transformer.py
+8
-1
mace/python/tools/quantization/quantize_util.py
mace/python/tools/quantization/quantize_util.py
+3
-2
未找到文件。
mace/python/tools/converter_tool/hexagon_converter.py
浏览文件 @
97e2d5d4
...
...
@@ -116,7 +116,7 @@ class HexagonConverter(base_converter.ConverterInterface):
for
op
in
self
.
_model
.
op
:
if
not
self
.
_hexagon_ops
.
has_op
(
op
.
type
):
raise
Exception
(
'Unsupported op: '
,
op
)
print
(
'Op:
'
,
op
.
name
,
op
.
type
)
print
(
'Op:
%s (%s)'
%
(
op
.
name
,
op
.
type
)
)
for
i
in
range
(
len
(
op
.
input
)):
if
':'
not
in
op
.
input
[
i
]:
node_name
=
op
.
input
[
i
]
...
...
mace/python/tools/converter_tool/transformer.py
浏览文件 @
97e2d5d4
...
...
@@ -1482,7 +1482,9 @@ class Transformer(base_converter.ConverterInterface):
mace_check
(
False
,
"wrong device."
)
tensor
.
data_type
=
mace_pb2
.
DT_INT32
else
:
quantized_tensor
=
quantize_util
.
quantize
(
tensor
.
float_data
)
non_zero
=
self
.
_option
.
device
==
DeviceType
.
CPU
.
value
quantized_tensor
=
quantize_util
.
quantize
(
tensor
.
float_data
,
non_zero
)
tensor
.
data_type
=
mace_pb2
.
DT_UINT8
del
tensor
.
float_data
[:]
...
...
@@ -1718,6 +1720,11 @@ class Transformer(base_converter.ConverterInterface):
and
op
.
type
!=
MaceOp
.
Dequantize
.
name
):
# noqa
mace_check
(
len
(
op
.
output
)
==
len
(
op
.
quantize_info
),
"missing quantize info: %s"
%
op
)
for
i
in
six
.
moves
.
range
(
len
(
op
.
quantize_info
)):
print
(
"Op output %s range: [%f, %f]"
%
(
op
.
output
[
i
],
op
.
quantize_info
[
i
].
minval
,
op
.
quantize_info
[
i
].
maxval
))
def
add_opencl_informations
(
self
):
print
(
"Add OpenCL informations"
)
...
...
mace/python/tools/quantization/quantize_util.py
浏览文件 @
97e2d5d4
...
...
@@ -108,11 +108,12 @@ def quantize_with_scale_and_zero(data, scale, zero):
return
quantized_data
def
quantize
(
data
):
def
quantize
(
data
,
non_zero
):
np_data
=
np
.
array
(
data
).
astype
(
float
)
in_min
=
np_data
.
min
()
in_max
=
np_data
.
max
()
scale
,
zero
,
out_min
,
out_max
=
adjust_range
(
in_min
,
in_max
,
non_zero
=
True
)
scale
,
zero
,
out_min
,
out_max
=
adjust_range
(
in_min
,
in_max
,
non_zero
=
non_zero
)
output
=
np
.
clip
((
np
.
round
(
zero
+
data
/
scale
).
astype
(
int
)),
0
,
255
)
quantized_data
=
QuantizedData
()
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录