Как я могу "увидеть" модель / сеть при загрузке модели из tfhub?

Я новичок в этой теме, так что простите меня за незнание. Есть очень хорошая модель под названиемinception resnet v2который в основном работает так, входом является изображение и выводит список прогнозов с их позициями и ограниченными прямоугольниками. Я считаю это очень полезным, и я подумал об использовании уже отработанной модели, чтобы распознавать вещи, которые она сейчас не может (например, носит ли человек маску или нет). Да, я хотел добавить в модель новый класс распознавания.

import tensorflow as tf
import tensorflow_hub as hub
mod = hub.load("https://tfhub.dev/google/faster_rcnn/openimages_v4/inception_resnet_v2/1")

мод - это объект типа tensorflow.python.training.tracking.tracking.AutoTrackable, прочитав документацию (которая была доступна только в исходном коде, было немного трудно понять без контекста), и я попытался проверить некоторые из ее свойств, чтобы увидеть, смогу ли я понять это сам.

И я этого не сделал. Как я могу увидеть сеть, слои, веса? подходящие методы, это все абстрагировано? Могу ли я преобразовать его в керас? Я хочу поэкспериментировать с ним, посмотреть, смогу ли я его изменить, и посмотреть, смогу ли я экспортировать модель в другое представление, например pytorch.

Я хотел сделать это, потому что подумал, что лучше изменить уже работающую модель, чем создавать ее с нуля. Еще потому, что я сам не умею тренировать модели.

2 ответа

Я тоже столкнулся с этой проблемой. Tensorflow ступица гид говорит:

Эта ошибка часто возникает при загрузке моделей в формате TF1 Hub с помощью API hub.load () в TF2. Добавление правильной подписи должно решить эту проблему.

mod = hub.load(handle).signatures['default']

В качестве примера вы можете увидеть этот блокнот.

Вы можете направить загруженный актив модели, чтобы увидеть, что на нем определено

      m = hub.load(handle)
dir(model)

Как упоминалось в другом ответе, вы также можете посмотреть подписи с помощью print(m.signatures)

Модели концентраторов являются активами SavedModel и не имеют метода keras .fit. Если вы хотите обучить модель с нуля, вам нужно обратиться к исходному коду.

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

Другие вопросы по тегам