TypeError: load () принимает 1 позиционный аргумент, но 2 были заданы. Ошибка конвертора tenorflowjs - PullRequest
0 голосов
/ 28 апреля 2019

Я получаю следующую ошибку при попытке преобразовать модель с сохраненным питоном тензорного потока

tensorflowjs_converter --input_format=tf_saved_model --output_format=tfjs_graph_model ./saved_1 ./exported_model

Traceback (последний вызов был последним):

File "/ Users / a / workspace/ pen3 / myenv / bin / tenorflowjs_converter ", строка 10, в sys.exit (main ())

Файл" /Users/a/workspace/pen3/myenv/lib/python3.5/site-packages/tensorflowjs/converters/converter.py ", строка 358, в основном strip_debug_ops = FLAGS.strip_debug_ops)

Файл" /Users/a/workspace/pen3//myenv/lib/python3.5/site-packages/tensorflowjs/converters/tf_saved_model_conversion_v2.py ", строка 268, в модели convert_tf_saved_model = load (сохраненный_model_dir, save_model_tags)

TypeError: load () принимает 1 позиционный аргумент, но 2 получили

* 1013содержимое каталога сохраненных_1
  • сохраненных_моделей.pb
  • переменных
    • variables.data-00000-of-00001
    • variables.index

TensorFlow.js версия: 1.13.1

тензор потокаверсия конвертера: 1.0.1

виртуальная среда с версией Python: 3.5.5

код в python для сохранения данных модели.простая линейная регрессия в тензорном потоке

import tensorflow as tf
import numpy as np 
import os
import shutil
from sklearn.datasets import fetch_california_housing
from sklearn.preprocessing import StandardScaler

n_epochs = 11
learning_rate = 0.01

saved_models = 'saved_models'
if os.path.exists(saved_models):
    shutil.rmtree(saved_models)

os.makedirs(saved_models)



housing = fetch_california_housing()
(m,n) = housing.data.shape
scaler = StandardScaler()

scaled_housing_data = scaler.fit_transform(housing.data)
scaled_housing_data_plus_bias = np.c_[np.ones((m, 1)), scaled_housing_data]

X = tf.constant( scaled_housing_data_plus_bias, dtype=tf.float32 , name='X')
Y = tf.constant( housing.target.reshape(-1, 1) , dtype=tf.float32, name='Y')
theta = tf.Variable(tf.random_uniform( [n+1, 1] , -1.0, 1.0))

y_pred = tf.matmul( X, theta, name='predictions')
error = y_pred - Y
mse = tf.reduce_mean(tf.square(error), name="mse")
gradients = 2/m * tf.matmul(tf.transpose(X), error)
training_op = tf.assign(theta, theta - learning_rate * gradients)

init = tf.global_variables_initializer()

with tf.Session() as sess:
    sess.run(init)

    for epoch in range(n_epochs):
        if epoch % 5 == 0:
            print("Epoch", epoch, "MSE =", mse.eval())
            tf.saved_model.simple_save(sess, saved_models + '/model_' + str(epoch) , inputs={'myInput' :X },  outputs={'myOutput' : y_pred })
        sess.run(training_op)


    best_theta = theta.eval()

print(best_theta)
...