Uncaught (в обещании) Ошибка: при условии, что данные веса не имеют целевой переменной: block1_conv1_2 / kernel - PullRequest
2 голосов
/ 22 марта 2019

Я новичок в машинном обучении и следил за этим блогом о том, как написать модель с помощью mobilenet.

Мне удалось преобразовать модель файла .h5 и попытаться реализовать еев моем веб-приложении.

К сожалению, когда я пытаюсь загрузить модель JSON, я получаю эту ошибку:

Uncaught (в обещании) Ошибка: при условии, что данные веса не имеют целевой переменной:block1_conv1_2 / kernel.

Снимок экрана ошибки в браузере

Я преобразовал модель .h5 в командной строке следующим образом:

tenorflowjs_converter --input_format keras model.h5 ConvertedModel /

Код для загрузки модели в браузере, за которым я следовал blog

let model;
async function loadModel(name) {
  $(".progress-bar").show(); 
  model = undefined;
  model = await tf.loadModel(`ConvertedModel/model.json`);
    $(".progress-bar").hide();
}

Чтобы увидеть код модели, перейдите по ссылке в блог .Но ниже скриншот того, как модель компилируется. Компиляция модели

Зависимости:

  • Tensorflow 1.13.1
  • Python 3.6.0
  • tennorflowjs 1.0.1

Буду признателен за любую помощь, чтобы исправить это.Большое вам спасибо.

1 Ответ

0 голосов
/ 22 марта 2019

Кажется, вы столкнулись с этой ошибкой , когда к некоторым вашим весам добавлен дополнительный суффикс.

Вы можете обойти эту проблему, вручную удалив эти дополнительные суффиксы из вашего model.json:

block1_conv1_2/kernel 

должно быть вместо:

block1_conv1/kernel

Исправлена ​​ошибка «Ошибка в клипе» исправлена ​​, поэтому я не очень уверен, почему вы ее получили, но еще раз вы можете обойти эту проблему, отредактировав файл model.json вручную. и изменяя каждый экземпляр:

{"type":"ndarray", "value":6}

до

6
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...