모델 적합 / TypeError : 'NoneType'개체를 호출 할 수 없습니다.

탐몰

ResNet50을 사용하여 분류 작업에 대한 전이 학습을 수행하려고합니다. 제 분류기를 맨 위에 올려 놓았습니다. 예측할 클래스가 28 개 있습니다 model.fit().

데이터 생성기를 사용하여 모델에

this is my model:
train_datagen = ImageDataGenerator(
rescale=1./255,

)
test_datagen = ImageDataGenerator(rescale=1./255)

train_dir = "/content/arabic/training"
train_generator = train_datagen.flow_from_directory(
train_dir,
color_mode = "rgb",
target_size=(32, 32),
batch_size=20,
class_mode='categorical')

validation_dir="/content/arabic/validation"
validation_generator = test_datagen.flow_from_directory(
validation_dir,
target_size=(32, 32),
batch_size=20,
class_mode='categorical')


base_model = keras.applications.ResNet50(
    weights='imagenet',  # Load weights pre-trained on ImageNet.
    input_shape=(32, 32, 3),
    include_top=False)  # Do not include the ImageNet classifier at the top.

def modelFunctionTransfer(l2 = 0.001, lr=0.001, drop = 0.2, modelName = None):
  model = models.Sequential()
  if(modelName != None):
    model.add(modelName)

  model.add(layers.Flatten())
  model.add(layers.Dense(512, kernel_regularizer=regularizers.l2(l2), activation='relu'))
  model.add(layers.Dense(28, activation='softmax'))
  opt = keras.optimizers.Adam(learning_rate=lr)
  model.compile(loss="categorical_crossentropy",
  optimizer=opt,
  metrics=['acc'])
  return model

model = modelFunctionTransfer(l2 = 0.001, lr = 0.001, drop = 0.5, modelName=base_model)
model.summary()

Model: "sequential_1"
_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
resnet50 (Functional)        (None, 1, 1, 2048)        23587712  
_________________________________________________________________
flatten_1 (Flatten)          (None, 2048)              0         
_________________________________________________________________
dense_2 (Dense)              (None, 512)               1049088   
_________________________________________________________________
dense_3 (Dense)              (None, 28)                14364     
=================================================================
Total params: 24,651,164
Trainable params: 1,063,452
Non-trainable params: 23,587,712

그리고 여기에 오류가 발생합니다.

history = model.fit(train_generator,
                    steps_per_epoch = 672,
                    epochs = 30,
                    validation_data = validation_generator,
                    validation_steps = 30,
                    )

참고로 내가 받고있는 전체 오류 메시지는 다음과 같습니다.

Epoch 1/30
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-46-1dfe32a08202> in <module>()
     10 history = model.fit(train_generator,
     11                     steps_per_epoch = 100,
---> 12                     epochs = 30,
     13 
     14                     )

2 frames
/usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/training.py in fit(self, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, validation_batch_size, validation_freq, max_queue_size, workers, use_multiprocessing)
   1098                 _r=1):
   1099               callbacks.on_train_batch_begin(step)
-> 1100               tmp_logs = self.train_function(iterator)
   1101               if data_handler.should_sync:
   1102                 context.async_wait()

/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/def_function.py in __call__(self, *args, **kwds)
    826     tracing_count = self.experimental_get_tracing_count()
    827     with trace.Trace(self._name) as tm:
--> 828       result = self._call(*args, **kwds)
    829       compiler = "xla" if self._experimental_compile else "nonXla"
    830       new_tracing_count = self.experimental_get_tracing_count()

/usr/local/lib/python3.6/dist-packages/tensorflow/python/eager/def_function.py in _call(self, *args, **kwds)
    853       # In this case we have created variables on the first call, so we run the
    854       # defunned version which is guaranteed to never create variables.
--> 855       return self._stateless_fn(*args, **kwds)  # pylint: disable=not-callable
    856     elif self._stateful_fn is not None:
    857       # Release the lock early so that multiple threads can perform the call

TypeError: 'NoneType' object is not callable
제리 P

사소한 변경으로 코드를 복사했습니다. 데이터 세트가 없어서 2 개의 클래스 만있는 데이터 세트를 사용했습니다. 내가 사용한 코드는 다음과 같으며 오류없이 실행되었습니다.

train_datagen = ImageDataGenerator(
rescale=1./255,

)
test_datagen = ImageDataGenerator(rescale=1./255)

train_dir = r'c:\temp\people\train'
train_generator = train_datagen.flow_from_directory(
train_dir,
color_mode = "rgb",
target_size=(32, 32),
batch_size=20,
class_mode='categorical')

validation_dir=r'c:\temp\people\test'
validation_generator = test_datagen.flow_from_directory(
validation_dir,
target_size=(32, 32),
batch_size=20,
class_mode='categorical')


base_model = keras.applications.ResNet50(
    weights='imagenet',  # Load weights pre-trained on ImageNet.
    input_shape=(32, 32, 3),
    include_top=False)  # Do not include the ImageNet classifier at the top.

def modelFunctionTransfer(l2 = 0.001, lr=0.001, drop = 0.2, modelName = None):
  model = Sequential()
  if(modelName != None):
    model.add(modelName)

  model.add(tf.keras.layers.Flatten())
  model.add(tf.keras.layers.Dense(512, kernel_regularizer=regularizers.l2(l2), 
                               activation='relu'))
  model.add(tf.keras.layers.Dense(2, activation='softmax'))
  opt = keras.optimizers.Adam(learning_rate=.001)
  model.compile(loss="categorical_crossentropy",
  optimizer=opt,
  metrics=['acc'])
  return model

model = modelFunctionTransfer(l2 = 0.001, lr = 0.001, drop = 0.5, modelName=base_model)
model.summary()
history = model.fit(train_generator, epochs = 30, validation_data = validation_generator)

model.fit에서는 일반적으로 steps_per_epoch 및 validation_steps를 생략하고 model.fit이 내부적으로 이러한 값을 계산하도록합니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

TypeError : 'NoneType'개체는 CircleCI를 호출 할 수 없습니다.

분류에서Dev

TypeError : 스크래핑 할 때 'NoneType'개체를 호출 할 수 없습니다.

분류에서Dev

TypeError : 'NoneType'개체는 restframework를 사용하여 호출 할 수 없습니다.

분류에서Dev

Python 클래스 : TypeError : 'NoneType'개체를 호출 할 수 없습니다.

분류에서Dev

Python / Pygame : TypeError : '모듈'개체를 호출 할 수 없습니다.

분류에서Dev

Python TypeError : '모듈'개체를 호출 할 수 없습니다.

분류에서Dev

TypeError '모듈'개체를 호출 할 수 없습니다.

분류에서Dev

TypeError : 'NoneType'개체는 호출 할 수없는 Tensorflow입니다.

분류에서Dev

TypeError : 'NoneType'개체는 호출 할 수없는 Tensorflow입니다.

분류에서Dev

Keras model.fit ()에서 TypeError : 'NoneType'객체를 호출 할 수 없습니다.

분류에서Dev

reverse () : 'NoneType'개체를 호출 할 수 없습니다.

분류에서Dev

django 1.8 오류 : 'NoneType'개체를 호출 할 수 없습니다.

분류에서Dev

Django 1.10 오류, 'NoneType'개체를 호출 할 수 없습니다.

분류에서Dev

BeautifulSoup 'NoneType'개체를 호출 할 수 없습니다.

분류에서Dev

Python 모듈 문제 : TypeError : '모듈'개체를 호출 할 수 없습니다.

분류에서Dev

'모듈'개체의 TypeError는 호출 할 수 없습니다.

분류에서Dev

문자열 / 텍스트 작업, TypeError : 'NoneType'개체를 호출 할 수 없습니다.

분류에서Dev

BeautifulSoup을 사용한 웹 사이트 스크랩 : TypeError : 'NoneType'개체를 호출 할 수 없습니다.

분류에서Dev

Python timeit-TypeError : '모듈'개체를 호출 할 수 없습니다.

분류에서Dev

Pytorch 1.7.0 | DataLoader 오류-TypeError : '모듈'개체를 호출 할 수 없습니다.

분류에서Dev

/ api / register / '모듈'개체의 TypeError를 호출 할 수 없습니다.

분류에서Dev

EasyGUI 및 SimpleCV- TypeError : '모듈'개체를 호출 할 수 없습니다.

분류에서Dev

TypeError : 데코레이터 함수에 인수를 전달할 때 'NoneType'객체를 호출 할 수 없습니다.

분류에서Dev

TypeError : nonetype을 확인할 때 'NoneType'개체를 구독 할 수 없습니다.

분류에서Dev

모델 오류, TypeError : on_delete를 호출 할 수 있어야합니다

분류에서Dev

TypeError : '_IncompatibleKeys'개체를 호출 할 수 없습니다.

분류에서Dev

TypeError : 'CurrencyConverter'개체를 호출 할 수 없습니다.

분류에서Dev

firebase = firebase (config) TypeError : 'module'개체를 호출 할 수 없습니다.

분류에서Dev

TypeError : '목록'개체를 호출 할 수 없습니다-assertWarns ()

Related 관련 기사

  1. 1

    TypeError : 'NoneType'개체는 CircleCI를 호출 할 수 없습니다.

  2. 2

    TypeError : 스크래핑 할 때 'NoneType'개체를 호출 할 수 없습니다.

  3. 3

    TypeError : 'NoneType'개체는 restframework를 사용하여 호출 할 수 없습니다.

  4. 4

    Python 클래스 : TypeError : 'NoneType'개체를 호출 할 수 없습니다.

  5. 5

    Python / Pygame : TypeError : '모듈'개체를 호출 할 수 없습니다.

  6. 6

    Python TypeError : '모듈'개체를 호출 할 수 없습니다.

  7. 7

    TypeError '모듈'개체를 호출 할 수 없습니다.

  8. 8

    TypeError : 'NoneType'개체는 호출 할 수없는 Tensorflow입니다.

  9. 9

    TypeError : 'NoneType'개체는 호출 할 수없는 Tensorflow입니다.

  10. 10

    Keras model.fit ()에서 TypeError : 'NoneType'객체를 호출 할 수 없습니다.

  11. 11

    reverse () : 'NoneType'개체를 호출 할 수 없습니다.

  12. 12

    django 1.8 오류 : 'NoneType'개체를 호출 할 수 없습니다.

  13. 13

    Django 1.10 오류, 'NoneType'개체를 호출 할 수 없습니다.

  14. 14

    BeautifulSoup 'NoneType'개체를 호출 할 수 없습니다.

  15. 15

    Python 모듈 문제 : TypeError : '모듈'개체를 호출 할 수 없습니다.

  16. 16

    '모듈'개체의 TypeError는 호출 할 수 없습니다.

  17. 17

    문자열 / 텍스트 작업, TypeError : 'NoneType'개체를 호출 할 수 없습니다.

  18. 18

    BeautifulSoup을 사용한 웹 사이트 스크랩 : TypeError : 'NoneType'개체를 호출 할 수 없습니다.

  19. 19

    Python timeit-TypeError : '모듈'개체를 호출 할 수 없습니다.

  20. 20

    Pytorch 1.7.0 | DataLoader 오류-TypeError : '모듈'개체를 호출 할 수 없습니다.

  21. 21

    / api / register / '모듈'개체의 TypeError를 호출 할 수 없습니다.

  22. 22

    EasyGUI 및 SimpleCV- TypeError : '모듈'개체를 호출 할 수 없습니다.

  23. 23

    TypeError : 데코레이터 함수에 인수를 전달할 때 'NoneType'객체를 호출 할 수 없습니다.

  24. 24

    TypeError : nonetype을 확인할 때 'NoneType'개체를 구독 할 수 없습니다.

  25. 25

    모델 오류, TypeError : on_delete를 호출 할 수 있어야합니다

  26. 26

    TypeError : '_IncompatibleKeys'개체를 호출 할 수 없습니다.

  27. 27

    TypeError : 'CurrencyConverter'개체를 호출 할 수 없습니다.

  28. 28

    firebase = firebase (config) TypeError : 'module'개체를 호출 할 수 없습니다.

  29. 29

    TypeError : '목록'개체를 호출 할 수 없습니다-assertWarns ()

뜨겁다태그

보관