gpt4 book ai didi

python - Keras 创建三个类而不是两个

转载 作者:太空宇宙 更新时间:2023-11-04 02:16:10 24 4
gpt4 key购买 nike

我正在尝试训练一个模型来识别包含火的图像与包含森林的图像。我正在使用 Linode 在远程服务器上训练模型。我正在使用 Python 2.7 和 Ubuntu 16.04.5。

当我在本地或 Jupyter notebooks 中运行以下代码时,它将创建 2 个类,但是当我想在服务器上运行它时,它会创建 3 个类。

对模型进行分类的代码:

def onehot(x): return np.array(OneHotEncoder().fit_transform(x.reshape(-1,1)).todense())


model = keras.applications.InceptionV3(weights='imagenet', include_top=False)


batch_size=16

train_datagen = ImageDataGenerator(
rescale=1./255,
shear_range=0.2,
zoom_range=0.2,
horizontal_flip=True)


train_generator = train_datagen.flow_from_directory(
'datareal/train', # this is the target directory
batch_size=batch_size,
target_size=(224, 224),
class_mode='binary')

test_datagen = ImageDataGenerator(rescale=1./255)

validation_generator = test_datagen.flow_from_directory(
'datareal/valid',
batch_size=batch_size,
target_size=(224, 224),
class_mode='binary')


x = model.output
x = GlobalAveragePooling2D()(x)
# let's add a fully-connected layer
x = Dense(1024, activation='relu')(x)
# and a logistic layer -- let's say we have 2 classes
predictions = Dense(2, activation='softmax')(x)
newmodel = Model(inputs=model.input, outputs=predictions)

newmodel.compile(optimizer='rmsprop', loss='binary_crossentropy', metrics=['acc'])

输出:

Found 173 images belonging to 3 classes.
Found 40 images belonging to 3 classes.

包含所有图像的目录结构如下:

datareal
valid
forest
fire
train
forest
fire

如何让模型只标记 2 个类而不是 3 个?

最佳答案

我想通了。问题是我的训练和验证文件夹中仍然有一些隐藏文件夹。

关于python - Keras 创建三个类而不是两个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52609798/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com