如何在将 keras 模型转换为 TensorflowJS 层模型时对其进行量化?
How can I quantize a keras model while converting it to a TensorflowJS Layers Model?
我创建了一个张量流模型,然后使用以下代码将其转换为 tensorflow.js 模型:
import tensorflowjs as tfjs
from tensorflow.keras.models import load_model
classifier = load_model("model")
tfjs.converters.save_keras_model(classifier, "js")
它工作正常,现在我想在将模型转换为 TensorflowJS 层模型时使用量化来减小模型的大小。
是的,您可能有四个量化选项:
- --quantization_bytes(已弃用)
- --quantize_float16
- --quantize_uint8
- --quantize_uint16
从 keras 格式到 tfjs_layers_model 的示例转换:
tensorflowjs_converter \
--input_format keras \
--output_format tfjs_layers_model \
--quantize_uint16 \
original_model/model.json
quantized_model/
或者,如果您在整个过程中需要更多帮助,只需在您的终端中输入以下内容
tensorflowjs_wizard
使用命令行工具,我可以将我的模型转换为量化的 tensorflow.js 模型。
我使用了以下命令:
~/.local/bin/tensorflowjs_converter model/ quantized_model/
--input_format tf_saved_model --output_format tfjs_graph_model --quantize_uint8
我以用户身份安装了 python 模型,因此命令行工具位于:~/.local/bin/
我创建了一个张量流模型,然后使用以下代码将其转换为 tensorflow.js 模型:
import tensorflowjs as tfjs
from tensorflow.keras.models import load_model
classifier = load_model("model")
tfjs.converters.save_keras_model(classifier, "js")
它工作正常,现在我想在将模型转换为 TensorflowJS 层模型时使用量化来减小模型的大小。
是的,您可能有四个量化选项:
- --quantization_bytes(已弃用)
- --quantize_float16
- --quantize_uint8
- --quantize_uint16
从 keras 格式到 tfjs_layers_model 的示例转换:
tensorflowjs_converter \
--input_format keras \
--output_format tfjs_layers_model \
--quantize_uint16 \
original_model/model.json
quantized_model/
或者,如果您在整个过程中需要更多帮助,只需在您的终端中输入以下内容
tensorflowjs_wizard
使用命令行工具,我可以将我的模型转换为量化的 tensorflow.js 模型。
我使用了以下命令:
~/.local/bin/tensorflowjs_converter model/ quantized_model/
--input_format tf_saved_model --output_format tfjs_graph_model --quantize_uint8
我以用户身份安装了 python 模型,因此命令行工具位于:~/.local/bin/