如何创建可轻松转换为 TensorFlow Lite 的模型?
How to create a model easily convertible to TensorFlow Lite?
如何创建可转换为 TensorFlow Lite (tflite) 并可在 Android 应用程序中使用的 TensorFlow 模型?
按照 Google 机器学习速成课程中的示例,我创建了一个分类器并训练了一个模型。我已将模型导出为 已保存模型 。我想将模型转换为 .tflite 文件并将其用于 推断 Android.
很快(实际上是后来)我了解到我的模型使用 unsupported operation - ParseExampleV2.
这是我用来训练模型的分类器:
classifier = tf.estimator.DNNClassifier(
feature_columns=[tf.feature_column.numeric_column('pixels', shape=WIDTH * HEIGHT)],
n_classes=NUMBER_OF_CLASSES,
hidden_units=[40, 40],
optimizer=my_optimizer,
config=tf.estimator.RunConfig(keep_checkpoint_max=1),
model_dir=MODEL_DIR)
有没有一种方法可以训练不使用此 tf.ParseExampleV2
运算符的模型?
使用Keras Sequential API instead of Estimator API.
如果您的模型更复杂,请尝试 Keras functional API。
Estimator 是高级 API,它增加了模型的复杂性。
这是一个顺序模型:
model = tf.keras.Sequential()
model.add(tf.keras.layers.Dense(1024, input_dim=WIDTH*HEIGHT, activation='relu'))
model.add(tf.keras.layers.Dense(1024, activation='relu'))
model.add(tf.keras.layers.Dense(1, activation='sigmoid'))
optimizer = tf.keras.optimizers.Adam(learning_rate=rate)
model.compile(optimizer=optimizer, loss='binary_crossentropy', metrics=['accuracy'])
及其架构。与问题中的比较:
有关如何将模型转换为 tflite 的完整示例,请参阅我的 classifying slashed-zeros and eights 项目。
如何创建可转换为 TensorFlow Lite (tflite) 并可在 Android 应用程序中使用的 TensorFlow 模型?
按照 Google 机器学习速成课程中的示例,我创建了一个分类器并训练了一个模型。我已将模型导出为 已保存模型 。我想将模型转换为 .tflite 文件并将其用于 推断 Android.
很快(实际上是后来)我了解到我的模型使用 unsupported operation - ParseExampleV2.
这是我用来训练模型的分类器:
classifier = tf.estimator.DNNClassifier(
feature_columns=[tf.feature_column.numeric_column('pixels', shape=WIDTH * HEIGHT)],
n_classes=NUMBER_OF_CLASSES,
hidden_units=[40, 40],
optimizer=my_optimizer,
config=tf.estimator.RunConfig(keep_checkpoint_max=1),
model_dir=MODEL_DIR)
有没有一种方法可以训练不使用此 tf.ParseExampleV2
运算符的模型?
使用Keras Sequential API instead of Estimator API.
如果您的模型更复杂,请尝试 Keras functional API。
Estimator 是高级 API,它增加了模型的复杂性。
这是一个顺序模型:
model = tf.keras.Sequential()
model.add(tf.keras.layers.Dense(1024, input_dim=WIDTH*HEIGHT, activation='relu'))
model.add(tf.keras.layers.Dense(1024, activation='relu'))
model.add(tf.keras.layers.Dense(1, activation='sigmoid'))
optimizer = tf.keras.optimizers.Adam(learning_rate=rate)
model.compile(optimizer=optimizer, loss='binary_crossentropy', metrics=['accuracy'])
及其架构。与问题中的比较:
有关如何将模型转换为 tflite 的完整示例,请参阅我的 classifying slashed-zeros and eights 项目。