【问题标题】:Model object has no attribute '_is_graph_network', when I try to save my model to tflite当我尝试将模型保存到 tflite 时,模型对象没有属性“_is_graph_network”
【发布时间】:2020-05-06 22:20:00
【问题描述】:

Tensorflow 版本 - 1.14.0 Python 版本 - 3.7.5

这是我创建的模型

from tensorflow import keras
import tensorflow.python.keras.backend as K
from tensorflow.python.keras import callbacks
from tensorflow.python.keras import Sequential
from tensorflow.python.keras.models import Model
from tensorflow.python.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense, Dropout, BatchNormalization, GlobalAveragePooling2D
from tensorflow.python.keras.preprocessing.image import ImageDataGenerator
from tensorflow.python.keras.callbacks import ModelCheckpoint, EarlyStopping


def create_model_v1():
     model = keras.Sequential()

     model.add(Conv2D(filters = 64, kernel_size = 3, padding='same', activation = 'relu', input_shape=(img_rows, img_cols, color_type)))
     model.add(MaxPooling2D(pool_size = 2))
     model.add(Conv2D(filters = 128, padding='same', kernel_size = 3, activation = 'relu'))
     model.add(MaxPooling2D(pool_size = 2))def create_model_v1():

model_v1 = create_model_v1()

history_v1 = model_v1.fit(x_train, y_train, 
      validation_data=(x_test, y_test),callbacks=callbacks,
      epochs=nb_epoch, batch_size=batch_size, verbose=1)

这是导出到 tflite 的代码:

keras_file = 'saved_models/history1.h5'
keras.models.save_model(history_v1, keras_file)

converter = tf.lite.TocoConverter.from_keras_model_file(keras_file)
tflite_model = converter.convert()
open('linear.tflite', 'wb').write(tflite_model)

这是错误:

“历史”对象没有属性“_is_graph_network”

【问题讨论】:

    标签: python tensorflow keras tf.keras tensorflow-lite


    【解决方案1】:

    您需要将model_v1 传递给转换器,而不是history_v1

    https://www.tensorflow.org/lite/convert/python_api#converting_a_keras_model_

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-03
      • 1970-01-01
      • 1970-01-01
      • 2018-01-27
      相关资源
      最近更新 更多