При попытке использовать модель ConvNeXtTiny из Keras я получаю следующую ошибку: AttributeError: модуль keras.applications не имеет атрибута ConvNeXtTiny.
filename = "ConvNextTiny_firstpass_model"
# layer construction
base_model = applications.ConvNeXtTiny( #preproccing included
input_shape=(targetWidth, targetHeight, 3),
include_top=False,
)
base_model.trainable = False
flatten_layer = layers.Flatten()
fc_layer = layers.Dense(1024, activation='relu')
dropout_layer = layers.Dropout(0.3)
#layer connecting
x = flip_layer(input_layer)
x = base_model(x, training=False)
x = flatten_layer(x)
x = fc_layer(x)
x = dropout_layer(x)
predictions = output_layer(x)
model = keras.Model(input_layer, predictions)
Вот мой импорт:
import tensorflow as tf
import keras
from keras import layers
from keras import optimizers
from keras import applications
from keras import losses
from keras import callbacks
import pandas as pd
import numpy as np
from matplotlib import pyplot as plt
import cv2 as cv
import csv
from sklearn.utils import shuffle
Возможно релевантная версия:
ipython==8.5.0
tensorflow==2.10.0
keras==2.10.0
Keras-Preprocessing==1.1.2
pandas==1.4.4
numpy==1.23.3
matplotlib==3.6.0
opencv-python==4.6.0.66
sklearn==0.0
@AlexanderL.Hayes Я попытался заменить apps.ConvNeXtTiny на application.convnext.ConvNeXtTiny, как показано в документации, и получил аналогичную ошибку «AttributeError: модуль 'keras.applications' не имеет атрибута 'convnext'"
Я до сих пор не могу воспроизвести эту проблему. Может у вас старая версия TensorFlow/Keras? В tensorflow==2.10.0
оказывается возможным сделать: from tensorflow.keras.applications import convnext
или from keras.applications import convnext
.
@AlexanderL.Hayes Я использую тензорный поток версии 2.10.0. Я попытаюсь перезагрузить сеанс утром, но сейчас я получаю ту же ошибку при попытке импорта обоих упомянутых вами способов.
@AlexanderL.Hayes Я в полной растерянности. Я перезагрузил сеанс и даже удалил и переустановил тензорный поток с теми же результатами.
Это похоже на то, что он блуждает на территории «ошибки конфигурации среды». Можете ли вы отредактировать свой вопрос, включив в него версии ОС/Python/pip/package/установочные места? (python -c "import tensorflow as tf; print(tf.version.GIT_VERSION, tf.version.VERSION)"
). Если у вас есть sklearn
, вам пригодится эта утилита: python -c 'import sklearn; sklearn.show_versions()'
Предыдущий импорт, размещенный над импортом connext, вызывал проблемы.
Перемещение from tensorflow.keras.applications import convnext
в верхнюю часть всех импортов позволило правильно импортировать.
Это похоже на отсутствующую страницу в документации Keras. Остальные модели проходят
tf.keras.applications
, а есть tf.keras.applications.convnext