Неизвестный слой: маскировка - PullRequest
0 голосов
/ 25 февраля 2020

Используя tenorsflow. js, пытаясь импортировать мою модель, которую я переместил в JSON из .h5.

Это ошибка, которую я получаю.

    Uncaught (in promise) Error: Unknown layer: Masking. This may be due to one of the following reasons:
1. The layer is defined in Python, in which case it needs to be ported to TensorFlow.js or your JavaScript code.
2. The custom layer is defined in JavaScript, but is not registered properly with tf.serialization.registerClass().
    at new e (errors.ts:48)
    at Rp (generic_utils.ts:242)
    at cd (serialization.ts:31)
    at e.fromConfig (models.ts:942)
    at Rp (generic_utils.ts:277)
    at cd (serialization.ts:31)
    at models.ts:300
    at common.ts:14
    at Object.next (common.ts:14)
    at a (common.ts:14)

Вот мой код:

<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@1.0.0/dist/tf.min.js">import * as tf from '@tensorflow/tfjs';</script>
<script type='text/javascript'>
    let data = {{ data| tojson | safe}};
    console.log(data);

    if (data.ops != []) {
        //docs say tf.loadLayersModel is an async function, console says it is not...
        //I believe the docs are written for Node.js, some pages specify a difference, others do not.
        const model = tf.loadLayersModel('{{url_for("static", filename = "js/model.json/model.json")}}');
        console.log(model);
    }
</script>

Это шаблон Jinja2, поэтому {{}} может показаться странным, в основном это бегущие маленькие биты кода python и возвращаемые значения для этого. {{url_for ()}} возвращает URL, где я хранил мой JSON, и выглядит нормально.

1 Ответ

0 голосов
/ 25 февраля 2020

Любой, у кого такая же проблема, проблема с тензорным потоком версии 1.0.0 js.

Изменение моего импорта для этого работало:

<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@latest"></script>
...