我的二进制分类模型的准确性似乎停滞了:我哪里出错了?

时间:2019-10-15 10:13:06

标签: python machine-learning keras

我已经尝试使用医学图片制成的数据集(准确地说是LIDC数据集)来训练针对二进制分类问题的模型,根据我的理解,这也不应该与“狗对猫”分类问题相距太远。 (区分良性和恶性结节)

问题是,准确性似乎从一开始就一直停留在65%左右,并且似乎根本没有变化。难道我做错了什么 ?我朋友提供的示例很容易达到80%以上,并且精度在一个世纪又一个世纪都在提高,但不是我的:/

我正在训练已经提取的补丁,它们的大小均相同,分为两类。

我正在为此模型使用经过微调的VGG16模型(我用新的FC层替换了FC层,冻结了上一层并尝试了训练)

我尝试更改为binary_crossentropy,应用to_categorical,将最后一层从1更改为2。在他看来,我对解决我的问题的参数正确组合感到困惑。抱歉,如果我听起来像个绝对的初学者...

我尝试跳过代码中信息较少的部分,希望其可读性

script: 
  - pip install something
  - another-command
  - yet-another-command
  - docker push "image-name"

1 个答案:

答案 0 :(得分:1)

由于具有单个单位的输出层和二进制交叉熵损失,因此应在最后一层使用sigmoid激活;更改为:

model.add(Dense(1, activation='sigmoid'))

最好还是让Adam保留默认学习率,至少对于初学者而言,即:

optimizer=keras.optimizers.Adam()

在您的model.compile中。