я строю CNN и для использования нормализации данных во время предварительной обработки я использую featurewise_center = True и featurewise_center_std = True я ожидал, что будет иметь нулевое среднее значение и стандартное отклонение 1, но я получаю это :
где на каждом отпечатке указано среднее значение и стандартный
мой код:
train_path='C:/Users/Panagiotis Gkanos/Desktop/dataset/40X/train'
train_batches=ImageDataGenerator().flow_from_directory(train_path,
target_size=[400,400],
classes=['malignant','benign'],
class_mode='categorical',batch_size=1276,shuffle=False,seed=7)
X,Y=next(train_batches)
width, height, channels = X.shape[1], X.shape[2], 3
X = X.reshape((X.shape[0], width, height, channels))
print(X.mean(), X.std())
datagen=ImageDataGenerator(featurewise_center=True,featurewise_std_normalization=True)
datagen.fit(X)
print((datagen.mean, datagen.std))
train_iterator = datagen.flow_from_directory(train_path,
target_size=[400,400],
classes=['malignant','benign'],
class_mode='categorical',batch_size=1276,seed=7,shuffle=False)
Xt,Yt=next(train_iterator)
print(Xt.shape, Xt.mean(), Xt.std())