我正在尝试使用tensorflow TOCO和tf_convert
工具将基于tensorflow(LSTM)的模型转换为tensorflow lite,但是转换后的tensorflow lite模型约为245MB,而原始的tensorflow移动版约为1MB。
下面是我使用的命令
bazel run --config=opt //tensorflow/contrib/lite/toco:toco -- \
--input_file= <inputfile> \
--output_file= <outputfile> \
--input_format=TENSORFLOW_GRAPHDEF \
--output_format=TFLITE \
--input_shape=1,1\
--input_array=input\
--output_array=output\
--inference_type=QUANTIZED_UINT8 \
--inference_type=FLOAT \
--input_data_type=FLOAT \
--allow_custom_ops
我尝试过使用--allow_custom_ops
,并且无论是否使用TOCO工具中的自定义操作,转换后的模型的大小都是相同的。
2018-08-27 18:09:18.538279:我 tensorflow / contrib / lite / toco / graph_transformations / graph_transformations.cc:39] 删除未使用的操作之前:4210个运算符,6021个数组(0个已量化) 2018-08-27 18:09:19.255416:我 tensorflow / contrib / lite / toco / graph_transformations / graph_transformations.cc:39] 在进行一般图形转换之前:4210个运算符,6021个数组(0 量化)2018-08-27 18:09:20.504422:I tensorflow / contrib / lite / toco / graph_transformations / graph_transformations.cc:39] 通用图形转换通过1后:3604运算符6008 数组(0量化)2018-08-27 18:09:21.335526:I tensorflow / contrib / lite / toco / graph_transformations / graph_transformations.cc:39] 在去量化图形转换之前:3604运算符,6008 数组(0量化)2018-08-27 18:09:21.897161:I tensorflow / contrib / lite / toco / allocate_transient_arrays.cc:329]总计 临时数组分配的大小:15616字节,理论上最佳 值:15616字节。
是否有计划在不久的将来支持LSTM相关操作的张量流?