准确性和损失不会改善CNN模型 [英] Accuracy and loss do not improve CNN model

查看:56
本文介绍了准确性和损失不会改善CNN模型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在研究糖尿病性视网膜病变,这是我的第一个机器学习深度学习项目.我正在使用此数据集: https://www.kaggle.com/sovitrath/diabetic-retinopathy-2015-data-colored-resized .

I am working on diabetic retinopathy , it's my first project machine learning deep learning . I am using this dataset: https://www.kaggle.com/sovitrath/diabetic-retinopathy-2015-data-colored-resized.

首先,我想将DR分为2类:YES_DR,NO_DR为了平衡数据,我增加了2类.NO_DR从25k到50kYES_DR的所有等级从9k到50k.

To start i want to classify the DR to 2 classes : YES_DR , NO_DR to balance data i augmented the 2 classes. NO_DR from 25k to 50k all lvl of YES_DR from 9k to 50k.

我尝试使用较小的cnn架构和较大的cnn架构,其结果始终相同,但准确性不变图情节:

I tried to use small cnn-architecture and large one its always the same results the accuracy-val_acc and loss-val_loss fun not changing graph plot :

结果:

WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.
WARNING:tensorflow:`period` argument is deprecated. Please use `save_freq` to specify the frequency in number of batches seen.
Epoch 1/100
/usr/local/lib/python3.7/dist-packages/tensorflow/python/keras/engine/training.py:1844: UserWarning: `Model.fit_generator` is deprecated and will be removed in a future version. Please use `Model.fit`, which supports generators.
  warnings.warn('`Model.fit_generator` is deprecated and '
100/100 [==============================] - 37s 368ms/step - loss: 2.0042 - precision: 0.4906 - auc: 0.4806 - accuracy: 0.4947 - false_negatives: 1742.0000 - false_positives: 1514.0000 - true_negatives: 1686.0000 - true_positives: 1458.0000 - val_loss: 0.6931 - val_precision: 0.5069 - val_auc: 0.5000 - val_accuracy: 0.5069 - val_false_negatives: 1578.0000 - val_false_positives: 1578.0000 - val_true_negatives: 1622.0000 - val_true_positives: 1622.0000

Epoch 00001: val_accuracy improved from -inf to 0.50687, saving model to mymodel.h5
Epoch 2/100
100/100 [==============================] - 34s 343ms/step - loss: 0.6923 - precision: 0.5256 - auc: 0.5279 - accuracy: 0.5256 - false_negatives: 1518.0000 - false_positives: 1518.0000 - true_negatives: 1682.0000 - true_positives: 1682.0000 - val_loss: 0.6928 - val_precision: 0.5150 - val_auc: 0.5150 - val_accuracy: 0.5150 - val_false_negatives: 1552.0000 - val_false_positives: 1552.0000 - val_true_negatives: 1648.0000 - val_true_positives: 1648.0000

Epoch 00002: val_accuracy improved from 0.50687 to 0.51500, saving model to mymodel.h5
Epoch 3/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6926 - precision: 0.5213 - auc: 0.5151 - accuracy: 0.5213 - false_negatives: 1532.0000 - false_positives: 1532.0000 - true_negatives: 1668.0000 - true_positives: 1668.0000 - val_loss: 0.6934 - val_precision: 0.5125 - val_auc: 0.5125 - val_accuracy: 0.5125 - val_false_negatives: 1560.0000 - val_false_positives: 1560.0000 - val_true_negatives: 1640.0000 - val_true_positives: 1640.0000

Epoch 00003: val_accuracy did not improve from 0.51500
Epoch 4/100
100/100 [==============================] - 34s 338ms/step - loss: 0.6934 - precision: 0.5131 - auc: 0.5077 - accuracy: 0.5131 - false_negatives: 1558.0000 - false_positives: 1558.0000 - true_negatives: 1642.0000 - true_positives: 1642.0000 - val_loss: 0.6919 - val_precision: 0.5284 - val_auc: 0.5411 - val_accuracy: 0.5284 - val_false_negatives: 1509.0000 - val_false_positives: 1509.0000 - val_true_negatives: 1691.0000 - val_true_positives: 1691.0000

Epoch 00004: val_accuracy improved from 0.51500 to 0.52844, saving model to mymodel.h5
Epoch 5/100
100/100 [==============================] - 34s 342ms/step - loss: 0.6932 - precision: 0.5105 - auc: 0.4990 - accuracy: 0.5109 - false_negatives: 1553.0000 - false_positives: 1579.0000 - true_negatives: 1621.0000 - true_positives: 1647.0000 - val_loss: 0.6929 - val_precision: 0.5113 - val_auc: 0.5113 - val_accuracy: 0.5113 - val_false_negatives: 1564.0000 - val_false_positives: 1564.0000 - val_true_negatives: 1636.0000 - val_true_positives: 1636.0000

Epoch 00005: val_accuracy did not improve from 0.52844
Epoch 6/100
100/100 [==============================] - 35s 351ms/step - loss: 0.6927 - precision: 0.5169 - auc: 0.5115 - accuracy: 0.5169 - false_negatives: 1546.0000 - false_positives: 1546.0000 - true_negatives: 1654.0000 - true_positives: 1654.0000 - val_loss: 0.6921 - val_precision: 0.5256 - val_auc: 0.5256 - val_accuracy: 0.5256 - val_false_negatives: 1518.0000 - val_false_positives: 1518.0000 - val_true_negatives: 1682.0000 - val_true_positives: 1682.0000

Epoch 00006: val_accuracy did not improve from 0.52844
Epoch 7/100
100/100 [==============================] - 34s 343ms/step - loss: 0.6927 - precision: 0.5203 - auc: 0.5140 - accuracy: 0.5203 - false_negatives: 1535.0000 - false_positives: 1535.0000 - true_negatives: 1665.0000 - true_positives: 1665.0000 - val_loss: 0.6929 - val_precision: 0.5131 - val_auc: 0.5131 - val_accuracy: 0.5131 - val_false_negatives: 1558.0000 - val_false_positives: 1558.0000 - val_true_negatives: 1642.0000 - val_true_positives: 1642.0000

Epoch 00007: val_accuracy did not improve from 0.52844
Epoch 8/100
100/100 [==============================] - 34s 338ms/step - loss: 0.6932 - precision: 0.5116 - auc: 0.5083 - accuracy: 0.5116 - false_negatives: 1563.0000 - false_positives: 1563.0000 - true_negatives: 1637.0000 - true_positives: 1637.0000 - val_loss: 0.6926 - val_precision: 0.5169 - val_auc: 0.5169 - val_accuracy: 0.5169 - val_false_negatives: 1546.0000 - val_false_positives: 1546.0000 - val_true_negatives: 1654.0000 - val_true_positives: 1654.0000

Epoch 00008: val_accuracy did not improve from 0.52844
Epoch 9/100
100/100 [==============================] - 34s 338ms/step - loss: 0.6925 - precision: 0.5197 - auc: 0.5165 - accuracy: 0.5197 - false_negatives: 1537.0000 - false_positives: 1537.0000 - true_negatives: 1663.0000 - true_positives: 1663.0000 - val_loss: 0.6924 - val_precision: 0.5200 - val_auc: 0.5200 - val_accuracy: 0.5200 - val_false_negatives: 1536.0000 - val_false_positives: 1536.0000 - val_true_negatives: 1664.0000 - val_true_positives: 1664.0000

Epoch 00009: val_accuracy did not improve from 0.52844
Epoch 10/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6921 - precision: 0.5242 - auc: 0.5159 - accuracy: 0.5238 - false_negatives: 1521.0000 - false_positives: 1524.0000 - true_negatives: 1676.0000 - true_positives: 1679.0000 - val_loss: 0.6916 - val_precision: 0.5275 - val_auc: 0.5370 - val_accuracy: 0.5275 - val_false_negatives: 1512.0000 - val_false_positives: 1512.0000 - val_true_negatives: 1688.0000 - val_true_positives: 1688.0000

Epoch 00010: val_accuracy did not improve from 0.52844
Epoch 11/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6931 - precision: 0.5102 - auc: 0.5135 - accuracy: 0.5097 - false_negatives: 1555.0000 - false_positives: 1579.0000 - true_negatives: 1621.0000 - true_positives: 1645.0000 - val_loss: 0.6933 - val_precision: 0.5116 - val_auc: 0.5116 - val_accuracy: 0.5116 - val_false_negatives: 1563.0000 - val_false_positives: 1563.0000 - val_true_negatives: 1637.0000 - val_true_positives: 1637.0000

Epoch 00011: val_accuracy did not improve from 0.52844
Epoch 12/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6928 - precision: 0.5166 - auc: 0.5175 - accuracy: 0.5166 - false_negatives: 1547.0000 - false_positives: 1547.0000 - true_negatives: 1653.0000 - true_positives: 1653.0000 - val_loss: 0.6919 - val_precision: 0.5275 - val_auc: 0.5275 - val_accuracy: 0.5275 - val_false_negatives: 1512.0000 - val_false_positives: 1512.0000 - val_true_negatives: 1688.0000 - val_true_positives: 1688.0000

Epoch 00012: val_accuracy did not improve from 0.52844
Epoch 13/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6925 - precision: 0.5203 - auc: 0.5132 - accuracy: 0.5203 - false_negatives: 1535.0000 - false_positives: 1535.0000 - true_negatives: 1665.0000 - true_positives: 1665.0000 - val_loss: 0.6927 - val_precision: 0.5153 - val_auc: 0.5153 - val_accuracy: 0.5153 - val_false_negatives: 1551.0000 - val_false_positives: 1551.0000 - val_true_negatives: 1649.0000 - val_true_positives: 1649.0000

Epoch 00013: val_accuracy did not improve from 0.52844
Epoch 14/100
100/100 [==============================] - 33s 334ms/step - loss: 0.6923 - precision: 0.5216 - auc: 0.5163 - accuracy: 0.5216 - false_negatives: 1531.0000 - false_positives: 1531.0000 - true_negatives: 1669.0000 - true_positives: 1669.0000 - val_loss: 0.6916 - val_precision: 0.5291 - val_auc: 0.5291 - val_accuracy: 0.5291 - val_false_negatives: 1507.0000 - val_false_positives: 1507.0000 - val_true_negatives: 1693.0000 - val_true_positives: 1693.0000

Epoch 00014: val_accuracy improved from 0.52844 to 0.52906, saving model to mymodel.h5
Epoch 15/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6923 - precision: 0.5222 - auc: 0.5186 - accuracy: 0.5222 - false_negatives: 1529.0000 - false_positives: 1529.0000 - true_negatives: 1671.0000 - true_positives: 1671.0000 - val_loss: 0.6918 - val_precision: 0.5256 - val_auc: 0.5256 - val_accuracy: 0.5256 - val_false_negatives: 1518.0000 - val_false_positives: 1518.0000 - val_true_negatives: 1682.0000 - val_true_positives: 1682.0000

Epoch 00015: val_accuracy did not improve from 0.52906
Epoch 16/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6926 - precision: 0.5175 - auc: 0.5173 - accuracy: 0.5175 - false_negatives: 1544.0000 - false_positives: 1544.0000 - true_negatives: 1656.0000 - true_positives: 1656.0000 - val_loss: 0.6917 - val_precision: 0.5263 - val_auc: 0.5271 - val_accuracy: 0.5263 - val_false_negatives: 1516.0000 - val_false_positives: 1516.0000 - val_true_negatives: 1684.0000 - val_true_positives: 1684.0000

Epoch 00016: val_accuracy did not improve from 0.52906
Epoch 17/100
100/100 [==============================] - 33s 335ms/step - loss: 0.6931 - precision: 0.5085 - auc: 0.5089 - accuracy: 0.5081 - false_negatives: 1562.0000 - false_positives: 1583.0000 - true_negatives: 1617.0000 - true_positives: 1638.0000 - val_loss: 0.6920 - val_precision: 0.5334 - val_auc: 0.5339 - val_accuracy: 0.5334 - val_false_negatives: 1493.0000 - val_false_positives: 1493.0000 - val_true_negatives: 1707.0000 - val_true_positives: 1707.0000

Epoch 00017: val_accuracy improved from 0.52906 to 0.53344, saving model to mymodel.h5
Epoch 18/100
100/100 [==============================] - 34s 336ms/step - loss: 0.6934 - precision: 0.5087 - auc: 0.5065 - accuracy: 0.5094 - false_negatives: 1569.0000 - false_positives: 1575.0000 - true_negatives: 1625.0000 - true_positives: 1631.0000 - val_loss: 0.6930 - val_precision: 0.5119 - val_auc: 0.5119 - val_accuracy: 0.5119 - val_false_negatives: 1562.0000 - val_false_positives: 1562.0000 - val_true_negatives: 1638.0000 - val_true_positives: 1638.0000

Epoch 00018: val_accuracy did not improve from 0.53344
Epoch 19/100
100/100 [==============================] - 33s 334ms/step - loss: 0.6929 - precision: 0.5156 - auc: 0.5094 - accuracy: 0.5156 - false_negatives: 1550.0000 - false_positives: 1550.0000 - true_negatives: 1650.0000 - true_positives: 1650.0000 - val_loss: 0.6921 - val_precision: 0.5250 - val_auc: 0.5250 - val_accuracy: 0.5250 - val_false_negatives: 1520.0000 - val_false_positives: 1520.0000 - val_true_negatives: 1680.0000 - val_true_positives: 1680.0000

Epoch 00019: val_accuracy did not improve from 0.53344
Epoch 20/100
100/100 [==============================] - 33s 333ms/step - loss: 0.6930 - precision: 0.5106 - auc: 0.5088 - accuracy: 0.5106 - false_negatives: 1566.0000 - false_positives: 1566.0000 - true_negatives: 1634.0000 - true_positives: 1634.0000 - val_loss: 0.6928 - val_precision: 0.5147 - val_auc: 0.5147 - val_accuracy: 0.5147 - val_false_negatives: 1553.0000 - val_false_positives: 1553.0000 - val_true_negatives: 1647.0000 - val_true_positives: 1647.0000

Epoch 00020: val_accuracy did not improve from 0.53344
Epoch 21/100
100/100 [==============================] - 33s 333ms/step - loss: 0.6907 - precision: 0.5450 - auc: 0.5407 - accuracy: 0.5450 - false_negatives: 1456.0000 - false_positives: 1456.0000 - true_negatives: 1744.0000 - true_positives: 1744.0000 - val_loss: 0.6941 - val_precision: 0.5100 - val_auc: 0.5100 - val_accuracy: 0.5100 - val_false_negatives: 1568.0000 - val_false_positives: 1568.0000 - val_true_negatives: 1632.0000 - val_true_positives: 1632.0000

Epoch 00021: val_accuracy did not improve from 0.53344
Epoch 22/100
100/100 [==============================] - 33s 334ms/step - loss: 0.6931 - precision: 0.5141 - auc: 0.5134 - accuracy: 0.5141 - false_negatives: 1555.0000 - false_positives: 1555.0000 - true_negatives: 1645.0000 - true_positives: 1645.0000 - val_loss: 0.6923 - val_precision: 0.5203 - val_auc: 0.5201 - val_accuracy: 0.5203 - val_false_negatives: 1535.0000 - val_false_positives: 1535.0000 - val_true_negatives: 1665.0000 - val_true_positives: 1665.0000

Epoch 00022: val_accuracy did not improve from 0.53344
Epoch 23/100
100/100 [==============================] - 34s 336ms/step - loss: 0.6927 - precision: 0.5178 - auc: 0.5068 - accuracy: 0.5178 - false_negatives: 1543.0000 - false_positives: 1543.0000 - true_negatives: 1657.0000 - true_positives: 1657.0000 - val_loss: 0.6923 - val_precision: 0.5203 - val_auc: 0.5203 - val_accuracy: 0.5203 - val_false_negatives: 1535.0000 - val_false_positives: 1535.0000 - val_true_negatives: 1665.0000 - val_true_positives: 1665.0000

Epoch 00023: val_accuracy did not improve from 0.53344
Epoch 24/100
100/100 [==============================] - 34s 335ms/step - loss: 0.6930 - precision: 0.5073 - auc: 0.5086 - accuracy: 0.5069 - false_negatives: 1575.0000 - false_positives: 1578.0000 - true_negatives: 1622.0000 - true_positives: 1625.0000 - val_loss: 0.6926 - val_precision: 0.5164 - val_auc: 0.5271 - val_accuracy: 0.5153 - val_false_negatives: 1536.0000 - val_false_positives: 1558.0000 - val_true_negatives: 1642.0000 - val_true_positives: 1664.0000

Epoch 00024: val_accuracy did not improve from 0.53344
Epoch 25/100
100/100 [==============================] - 35s 351ms/step - loss: 0.6931 - precision: 0.5093 - auc: 0.5081 - accuracy: 0.5094 - false_negatives: 1560.0000 - false_positives: 1563.0000 - true_negatives: 1619.0000 - true_positives: 1622.0000 - val_loss: 0.6930 - val_precision: 0.5056 - val_auc: 0.5108 - val_accuracy: 0.5056 - val_false_negatives: 1582.0000 - val_false_positives: 1582.0000 - val_true_negatives: 1618.0000 - val_true_positives: 1618.0000

Epoch 00025: val_accuracy did not improve from 0.53344

......

 Epoch 80/100
    100/100 [==============================] - 34s 337ms/step - loss: 0.6927 - precision: 0.5163 - auc: 0.5134 - accuracy: 0.5163 - false_negatives: 1548.0000 - false_positives: 1548.0000 - true_negatives: 1652.0000 - true_positives: 1652.0000 - val_loss: 0.6918 - val_precision: 0.5284 - val_auc: 0.5284 - val_accuracy: 0.5284 - val_false_negatives: 1509.0000 - val_false_positives: 1509.0000 - val_true_negatives: 1691.0000 - val_true_positives: 1691.0000

Epoch 00080: val_accuracy did not improve from 0.54094
Epoch 81/100
100/100 [==============================] - 34s 335ms/step - loss: 0.6930 - precision: 0.5119 - auc: 0.5081 - accuracy: 0.5119 - false_negatives: 1562.0000 - false_positives: 1562.0000 - true_negatives: 1638.0000 - true_positives: 1638.0000 - val_loss: 0.6906 - val_precision: 0.5475 - val_auc: 0.5475 - val_accuracy: 0.5475 - val_false_negatives: 1448.0000 - val_false_positives: 1448.0000 - val_true_negatives: 1752.0000 - val_true_positives: 1752.0000

Epoch 00081: val_accuracy improved from 0.54094 to 0.54750, saving model to mymodel.h5
Epoch 82/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6918 - precision: 0.5281 - auc: 0.5276 - accuracy: 0.5281 - false_negatives: 1510.0000 - false_positives: 1510.0000 - true_negatives: 1690.0000 - true_positives: 1690.0000 - val_loss: 0.6928 - val_precision: 0.5144 - val_auc: 0.5144 - val_accuracy: 0.5144 - val_false_negatives: 1554.0000 - val_false_positives: 1554.0000 - val_true_negatives: 1646.0000 - val_true_positives: 1646.0000

Epoch 00082: val_accuracy did not improve from 0.54750
Epoch 83/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6927 - precision: 0.5163 - auc: 0.5163 - accuracy: 0.5163 - false_negatives: 1548.0000 - false_positives: 1548.0000 - true_negatives: 1652.0000 - true_positives: 1652.0000 - val_loss: 0.6926 - val_precision: 0.5169 - val_auc: 0.5169 - val_accuracy: 0.5169 - val_false_negatives: 1546.0000 - val_false_positives: 1546.0000 - val_true_negatives: 1654.0000 - val_true_positives: 1654.0000

Epoch 00083: val_accuracy did not improve from 0.54750
Epoch 84/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6921 - precision: 0.5238 - auc: 0.5238 - accuracy: 0.5238 - false_negatives: 1524.0000 - false_positives: 1524.0000 - true_negatives: 1676.0000 - true_positives: 1676.0000 - val_loss: 0.6938 - val_precision: 0.5009 - val_auc: 0.5009 - val_accuracy: 0.5009 - val_false_negatives: 1597.0000 - val_false_positives: 1597.0000 - val_true_negatives: 1603.0000 - val_true_positives: 1603.0000

Epoch 00084: val_accuracy did not improve from 0.54750
Epoch 85/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6923 - precision: 0.5203 - auc: 0.5203 - accuracy: 0.5203 - false_negatives: 1535.0000 - false_positives: 1535.0000 - true_negatives: 1665.0000 - true_positives: 1665.0000 - val_loss: 0.6935 - val_precision: 0.5056 - val_auc: 0.5056 - val_accuracy: 0.5056 - val_false_negatives: 1582.0000 - val_false_positives: 1582.0000 - val_true_negatives: 1618.0000 - val_true_positives: 1618.0000

Epoch 00085: val_accuracy did not improve from 0.54750
Epoch 86/100
100/100 [==============================] - 34s 336ms/step - loss: 0.6923 - precision: 0.5203 - auc: 0.5203 - accuracy: 0.5203 - false_negatives: 1535.0000 - false_positives: 1535.0000 - true_negatives: 1665.0000 - true_positives: 1665.0000 - val_loss: 0.6922 - val_precision: 0.5219 - val_auc: 0.5219 - val_accuracy: 0.5219 - val_false_negatives: 1530.0000 - val_false_positives: 1530.0000 - val_true_negatives: 1670.0000 - val_true_positives: 1670.0000

Epoch 00086: val_accuracy did not improve from 0.54750
Epoch 87/100
100/100 [==============================] - 34s 336ms/step - loss: 0.6916 - precision: 0.5306 - auc: 0.5192 - accuracy: 0.5306 - false_negatives: 1502.0000 - false_positives: 1502.0000 - true_negatives: 1698.0000 - true_positives: 1698.0000 - val_loss: 0.6906 - val_precision: 0.5394 - val_auc: 0.5394 - val_accuracy: 0.5394 - val_false_negatives: 1474.0000 - val_false_positives: 1474.0000 - val_true_negatives: 1726.0000 - val_true_positives: 1726.0000

Epoch 00087: val_accuracy did not improve from 0.54750
Epoch 88/100
100/100 [==============================] - 34s 336ms/step - loss: 0.6940 - precision: 0.4988 - auc: 0.4975 - accuracy: 0.4988 - false_negatives: 1604.0000 - false_positives: 1604.0000 - true_negatives: 1596.0000 - true_positives: 1596.0000 - val_loss: 0.6938 - val_precision: 0.4991 - val_auc: 0.4991 - val_accuracy: 0.4991 - val_false_negatives: 1603.0000 - val_false_positives: 1603.0000 - val_true_negatives: 1597.0000 - val_true_positives: 1597.0000

Epoch 00088: val_accuracy did not improve from 0.54750
Epoch 89/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6916 - precision: 0.5319 - auc: 0.5257 - accuracy: 0.5319 - false_negatives: 1498.0000 - false_positives: 1498.0000 - true_negatives: 1702.0000 - true_positives: 1702.0000 - val_loss: 0.6928 - val_precision: 0.5147 - val_auc: 0.5147 - val_accuracy: 0.5147 - val_false_negatives: 1553.0000 - val_false_positives: 1553.0000 - val_true_negatives: 1647.0000 - val_true_positives: 1647.0000

Epoch 00089: val_accuracy did not improve from 0.54750
Epoch 90/100
100/100 [==============================] - 34s 338ms/step - loss: 0.6926 - precision: 0.5175 - auc: 0.5175 - accuracy: 0.5175 - false_negatives: 1544.0000 - false_positives: 1544.0000 - true_negatives: 1656.0000 - true_positives: 1656.0000 - val_loss: 0.6931 - val_precision: 0.5100 - val_auc: 0.5100 - val_accuracy: 0.5100 - val_false_negatives: 1568.0000 - val_false_positives: 1568.0000 - val_true_negatives: 1632.0000 - val_true_positives: 1632.0000

Epoch 00090: val_accuracy did not improve from 0.54750
Epoch 91/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6907 - precision: 0.5397 - auc: 0.5373 - accuracy: 0.5397 - false_negatives: 1473.0000 - false_positives: 1473.0000 - true_negatives: 1727.0000 - true_positives: 1727.0000 - val_loss: 0.6934 - val_precision: 0.5100 - val_auc: 0.5100 - val_accuracy: 0.5100 - val_false_negatives: 1568.0000 - val_false_positives: 1568.0000 - val_true_negatives: 1632.0000 - val_true_positives: 1632.0000

Epoch 00091: val_accuracy did not improve from 0.54750
Epoch 92/100
100/100 [==============================] - 34s 336ms/step - loss: 0.6929 - precision: 0.5147 - auc: 0.5147 - accuracy: 0.5147 - false_negatives: 1553.0000 - false_positives: 1553.0000 - true_negatives: 1647.0000 - true_positives: 1647.0000 - val_loss: 0.6943 - val_precision: 0.4988 - val_auc: 0.4987 - val_accuracy: 0.4988 - val_false_negatives: 1604.0000 - val_false_positives: 1604.0000 - val_true_negatives: 1596.0000 - val_true_positives: 1596.0000

Epoch 00092: val_accuracy did not improve from 0.54750
Epoch 93/100
100/100 [==============================] - 34s 335ms/step - loss: 0.6921 - precision: 0.5229 - auc: 0.5191 - accuracy: 0.5229 - false_negatives: 1518.0000 - false_positives: 1518.0000 - true_negatives: 1664.0000 - true_positives: 1664.0000 - val_loss: 0.6924 - val_precision: 0.5200 - val_auc: 0.5200 - val_accuracy: 0.5200 - val_false_negatives: 1536.0000 - val_false_positives: 1536.0000 - val_true_negatives: 1664.0000 - val_true_positives: 1664.0000

Epoch 00093: val_accuracy did not improve from 0.54750
Epoch 94/100
100/100 [==============================] - 34s 338ms/step - loss: 0.6946 - precision: 0.4871 - auc: 0.4849 - accuracy: 0.4856 - false_negatives: 1610.0000 - false_positives: 1674.0000 - true_negatives: 1526.0000 - true_positives: 1590.0000 - val_loss: 0.6916 - val_precision: 0.5441 - val_auc: 0.5441 - val_accuracy: 0.5441 - val_false_negatives: 1459.0000 - val_false_positives: 1459.0000 - val_true_negatives: 1741.0000 - val_true_positives: 1741.0000

Epoch 00094: val_accuracy did not improve from 0.54750
Epoch 95/100
100/100 [==============================] - 34s 336ms/step - loss: 0.6914 - precision: 0.5328 - auc: 0.5401 - accuracy: 0.5328 - false_negatives: 1495.0000 - false_positives: 1495.0000 - true_negatives: 1705.0000 - true_positives: 1705.0000 - val_loss: 0.6925 - val_precision: 0.5219 - val_auc: 0.5219 - val_accuracy: 0.5219 - val_false_negatives: 1530.0000 - val_false_positives: 1530.0000 - val_true_negatives: 1670.0000 - val_true_positives: 1670.0000

Epoch 00095: val_accuracy did not improve from 0.54750
Epoch 96/100
100/100 [==============================] - 34s 341ms/step - loss: 0.6940 - precision: 0.5028 - auc: 0.5009 - accuracy: 0.5028 - false_negatives: 1591.0000 - false_positives: 1591.0000 - true_negatives: 1609.0000 - true_positives: 1609.0000 - val_loss: 0.6927 - val_precision: 0.5197 - val_auc: 0.5197 - val_accuracy: 0.5197 - val_false_negatives: 1537.0000 - val_false_positives: 1537.0000 - val_true_negatives: 1663.0000 - val_true_positives: 1663.0000

Epoch 00096: val_accuracy did not improve from 0.54750
Epoch 97/100
100/100 [==============================] - 34s 337ms/step - loss: 0.6929 - precision: 0.5060 - auc: 0.5129 - accuracy: 0.5059 - false_negatives: 1597.0000 - false_positives: 1565.0000 - true_negatives: 1635.0000 - true_positives: 1603.0000 - val_loss: 0.6922 - val_precision: 0.5222 - val_auc: 0.5222 - val_accuracy: 0.5222 - val_false_negatives: 1529.0000 - val_false_positives: 1529.0000 - val_true_negatives: 1671.0000 - val_true_positives: 1671.0000

Epoch 00097: val_accuracy did not improve from 0.54750
Epoch 98/100
100/100 [==============================] - 34s 336ms/step - loss: 0.6927 - precision: 0.5184 - auc: 0.5114 - accuracy: 0.5184 - false_negatives: 1541.0000 - false_positives: 1541.0000 - true_negatives: 1659.0000 - true_positives: 1659.0000 - val_loss: 0.6920 - val_precision: 0.5241 - val_auc: 0.5241 - val_accuracy: 0.5241 - val_false_negatives: 1523.0000 - val_false_positives: 1523.0000 - val_true_negatives: 1677.0000 - val_true_positives: 1677.0000

Epoch 00098: val_accuracy did not improve from 0.54750
Epoch 99/100
100/100 [==============================] - 33s 335ms/step - loss: 0.6923 - precision: 0.5222 - auc: 0.5166 - accuracy: 0.5222 - false_negatives: 1529.0000 - false_positives: 1529.0000 - true_negatives: 1671.0000 - true_positives: 1671.0000 - val_loss: 0.6933 - val_precision: 0.5088 - val_auc: 0.5087 - val_accuracy: 0.5088 - val_false_negatives: 1572.0000 - val_false_positives: 1572.0000 - val_true_negatives: 1628.0000 - val_true_positives: 1628.0000

Epoch 00099: val_accuracy did not improve from 0.54750
Epoch 100/100
100/100 [==============================] - 34s 336ms/step - loss: 0.6928 - precision: 0.5166 - auc: 0.5120 - accuracy: 0.5166 - false_negatives: 1547.0000 - false_positives: 1547.0000 - true_negatives: 1653.0000 - true_positives: 1653.0000 - val_loss: 0.6923 - val_precision: 0.5213 - val_auc: 0.5213 - val_accuracy: 0.5213 - val_false_negatives: 1532.0000 - val_false_positives: 1532.0000 - val_true_negatives: 1668.0000 - val_true_positives: 1668.0000

Epoch 00100: val_accuracy did not improve from 0.54750


代码:


code :

trdata = ImageDataGenerator()
traindata = trdata.flow_from_directory(directory="/content/out/train",target_size=(224,224))
tsdata = ImageDataGenerator()
testdata = tsdata.flow_from_directory(directory="/content/out/val", target_size=(224,224))


model = Sequential()
model.add(Conv2D(input_shape=(224,224,3),filters=32,kernel_size=(3,3),padding="same", activation="relu"))
model.add(Conv2D(filters=32, kernel_size=(3,3), padding="same", activation="relu"))
model.add(Conv2D(filters=32, kernel_size=(3,3), padding="same", activation="relu"))
model.add(MaxPool2D(pool_size=(2,2),strides=(2,2)))
model.add(Dropout(0.25))
model.add(Conv2D(filters=64, kernel_size=(3,3), padding="same", activation="relu"))
model.add(Conv2D(filters=64, kernel_size=(3,3), padding="same", activation="relu"))
model.add(MaxPool2D(pool_size=(2,2),strides=(2,2)))
model.add(Dropout(0.25))
model.add(Conv2D(filters=64, kernel_size=(3,3), padding="same", activation="relu"))
model.add(Conv2D(filters=64, kernel_size=(3,3), padding="same", activation="relu"))
model.add(MaxPool2D(pool_size=(2,2),strides=(2,2)))
model.add(Dropout(0.25))
model.add(Conv2D(filters=128, kernel_size=(3,3), padding="same", activation="relu"))
model.add(Conv2D(filters=128, kernel_size=(3,3), padding="same", activation="relu"))
model.add(MaxPool2D(pool_size=(2,2),strides=(2,2)))
model.add(Dropout(0.25))


model.add(Flatten())
model.add(Dense(units=1024,activation="relu"))
model.add(Dense(units=2048,activation="relu"))
model.add(Dense(units=4096,activation="relu"))
model.add(Dense(units=2, activation="sigmoid"))

//对于上一次激活,我尝试了relu及其相同

来自keras.optimizers的

// for the last activation i tried relu and its the same

from keras.optimizers import Adam
from keras.optimizers import SGD
opt = Adam(lr=1e-3)
#opt = SGD(lr=0.01)
model.compile(optimizer=opt, loss=keras.losses.binary_crossentropy, metrics=['Precision','AUC',
'accuracy','FalseNegatives','FalsePositives','TrueNegatives','TruePositives'])


来自keras.callbacks的


from keras.callbacks import ModelCheckpoint, EarlyStopping
checkpoint = ModelCheckpoint("mymodel.h5", monitor='val_accuracy', verbose=1, save_best_only=True, save_weights_only=False, mode='auto', period=1)
early = EarlyStopping(monitor='accuracy', min_delta=0, patience=100, verbose=1, mode='auto')
hist = model.fit_generator(steps_per_epoch=100,generator=traindata, validation_data= testdata, validation_steps=100,epochs=100,shuffle= True,callbacks=[checkpoint,early])

推荐答案

在最后一层中使用2个输出神经元.在这种情况下以及您遇到的问题,您需要将激活功能更改为 softmax ,而不是像以前那样将 relu 更改为

You use 2 output neurons in the last layer. In that situation and for your problem, you need to change the activation function to softmax, not relu like you did.

更改为:

model.add(Dense(units=2, activation="softmax"))

在这种情况下,您还需要将损失函数更改为 categorical_crossentropy :

You also need to change the loss function in this case to categorical_crossentropy:

loss=keras.losses.categorical_crossentropy

这篇关于准确性和损失不会改善CNN模型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆