AttributeError обнаружения объекта Tensorflow: у модуля tenensflow._api.v1.compat нет атрибута v2 - PullRequest
0 голосов
/ 05 февраля 2020

В настоящее время работает TF 1.13.2

Я пытаюсь обучить мою собственную модель обнаружения объектов. После попытки выполнить эту команду:

python model_main.py --logtostderr --model_dir=training/ --pipeline_config_path=traini
ng/faster_rcnn_inception_v2_pets.config

Я получаю эту ошибку:

Traceback (most recent call last):
  File "model_main.py", line 26, in <module>
    from object_detection import model_lib
  File "C:\Users\Admin\Anaconda3\envs\object_detection\lib\site-packages\object_detection-0.1-py3.6.egg\object_detection\model_lib.py", line 28, in <module>
    from object_detection import exporter as exporter_lib
  File "C:\Users\Admin\Anaconda3\envs\object_detection\lib\site-packages\object_detection-0.1-py3.6.egg\object_detection\exporter.py", line 24, in <module>
    from object_detection.builders import model_builder
  File "C:\Users\Admin\Anaconda3\envs\object_detection\lib\site-packages\object_detection-0.1-py3.6.egg\object_detection\builders\model_builder.py", line 47, in <module>
    from object_detection.models.ssd_mobilenet_edgetpu_feature_extractor import SSDMobileNetEdgeTPUFeatureExtractor
  File "C:\Users\Admin\Anaconda3\envs\object_detection\lib\site-packages\object_detection-0.1-py3.6.egg\object_detection\models\ssd_mobilenet_edgetpu_feature_extractor.py", line
 19, in <module>
    from object_detection.models import ssd_mobilenet_v3_feature_extractor
  File "C:\Users\Admin\Anaconda3\envs\object_detection\lib\site-packages\object_detection-0.1-py3.6.egg\object_detection\models\ssd_mobilenet_v3_feature_extractor.py", line 25,
in <module>
    from nets.mobilenet import mobilenet
  File "C:\Users\Admin\Desktop\ObjectDetection\models\research\object_detection\nets\mobilenet\mobilenet.py", line 399, in <module>
    def global_pool(input_tensor, pool_op=tf.compat.v2.nn.avg_pool2d):
AttributeError: module 'tensorflow._api.v1.compat' has no attribute 'v2'

Мне нужно остаться ниже TF 2.x, потому что 2.x еще не позволяет тренировать собственная модель (согласно учебнику Гилберта Таннера по обнаружению объектов). Я отскочил между версиями TF, и у меня были похожие ошибки в разных версиях, что у некоторых модулей нет атрибута 'v1'. В любом случае, я совсем не уверен, как это исправить.

Редактировать: Вот пакеты сайта для моей среды:

Package Version Latest Version
absl-py 0.9.0   0.8.1
astor   0.8.1   0.8.0
biwrap  0.1.6   
bleach  1.5.0   3.1.0
certifi 2019.11.28  2019.11.28
gast    0.3.3   0.3.2
grpcio  1.27.0  1.16.1
h5py    2.10.0  2.10.0
html5lib    1.000000    1.0.1
keras-applications  1.0.8   1.0.8
keras-preprocessing 1.1.0   1.1.0
markdown    3.1.1   3.1.1
mock    3.0.5   3.0.5
numpy   1.18.1  1.18.1
object-detection    0.100000    
pandas  1.0.0   1.0.0
pillow  7.0.0   7.0.0
pip 20.0.2  20.0.2
protobuf    3.11.3  3.11.2
pycocotools 2.000000    
python  3.6.10  3.8.1
python-dateutil 2.8.1   2.8.1
pytz    2019.300000 2019.300000
setuptools  39.1.0  45.1.0
six 1.14.0  1.14.0
sqlite  3.31.1  3.31.1
tensorboard 1.9.0   2.0.0
tensorflow  1.9.0   2.0.0
tensorflow-estimator    1.13.0  2.0.0
tensorflow-plot 0.3.0   
tensorflow-tensorboard  1.5.1   
termcolor   1.1.0   1.1.0
vc  14.100000   14.100000
vs2015_runtime  14.16.27012 14.16.27012
werkzeug    0.16.1  0.16.1
wheel   0.34.2  0.34.2
wincertstore    0.200000    0.200000

1 Ответ

1 голос
/ 19 февраля 2020

РЕДАКТИРОВАТЬ: из опыта вы используете модель, разработанную TF2, в приложении TF1.

Клонировали ли вы модели из Github? В репозитории используется новейшая версия TF

. Вы можете использовать модели, специально предназначенные для 1.13: https://github.com/tensorflow/models/archive/v1.13.0.zip

перезагрузить компьютер для очистки пути экспорта

cd models / models-1.13.0 / research /

protoc object_detection/protos/*.proto --python_out=.

export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim

cd ../../..

python3 github/TensorFlow-object-detection-tutorial-master/5_part\ step\ by\ step\ custom\ object\ detection/train.py --logtostderr
--train_dir=training/ --pipeline_config_path=dataset/data1/faster_rcnn_inception_v2_coco_tf13.config

Решена проблема РЕДАКТИРОВАТЬ: провел обучение TF по GCP и на Edge (jetson nano) тоже, не стесняйтесь, если вам нужна резервная копия moar.

source

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