В чем разница между предупреждением и ошибкой в ​​ноутбуке Jupyter? - PullRequest
0 голосов
/ 03 апреля 2020

Я новичок в тензорном потоке и программировании в целом. Я следую инструкции в github (https://github.com/experiencor/keras-yolo3), чтобы научиться обнаруживать объекты с помощью YOLO-3. после запуска кода ниже:

!python train.py -c config.json

Я получил несколько сообщений в выводе, и я пытаюсь понять, что означает каждое из них.

Одно из них, как показано ниже:

WARNING:tensorflow:From train.py:26: The name tf.keras.backend.set_session is deprecated. Please use tf.compat.v1.keras.backend.set_session instead.

Вопрос первый: нужно ли исправлять кодовую часть кода (tf.keras.backend.set_session), поскольку, как сказано здесь, он «устарел»?

Вопрос второй: как предупреждение вообще, а конкретно это предупреждение может повлиять на мою окончательную модель, если не будет исправлено?

1 Ответ

2 голосов
/ 03 апреля 2020

Ответ один: короче говоря, устаревшая функция - старая, замененная чем-то (будем надеяться) более качественной, и все еще для ретро-совместимости. Вы можете использовать его, но не получите самую последнюю разработку / поддержку, и в какой-то момент ваш код больше не будет работать (поскольку в будущем выпуск устаревшей функции исчезнет).

Ответ два:

Предупреждающие сообщения обычно выдаются в ситуациях, когда полезно предупредить пользователя о каком-либо условии в программе, когда это условие (обычно) не требует создания исключения и завершения программы. , Например, может возникнуть необходимость выдать предупреждение, если программа использует устаревший модуль.

https://docs.python.org/3/library/warnings.html

В общем, здесь интерпретатор просто согревает вас тем, что вы используете функцию, которую вы не сможете использовать в будущем.

...