½¨ÁËÒ»¸ö¾í»ýÉñ¾ÍøÂ磬ÊäÈëѵÁ·¼¯£¬Óжà¸öÑù±¾£¬¼ûѵÁ·¼¯£¬±¨´íÒÔ¼°´úÂ룬ΪʲôËû±¨´íµÄʱºò˵¾ÍÒ»¸öÑù±¾£¿ÎÊÌâÔÚÄÄ£¿
ValueError: Training data contains 1 samples, which is not sufficient to split it into a validation and training set as specified by `validation_split=0.2`. Either provide more data, or a different value for the `validation_split` argument.
import numpy as np
import pandas as pd
import tensorflow as tf
from tensorflow.keras import layers
#¶¨ÒåÄ£ÐÍ
def get_model():
#½¨Á¢Ò»¸öÐò¹áÄ£ÐÍ
model = tf.keras.Sequential()
#µÚÒ»¸ö¾í»ý¿é
model.add(layers.Conv2D(128, kernel_size=(3, 3), activation= 'relu', input_shape=(75, 75, 3)))
model.add(layers.MaxPooling2D(pool_size=(3, 3), strides=(2, 2)))
model.add(layers.Dropout(0.2))
#µÚ¶þ¸ö¾í»ý¿é
model.add(layers.Conv2D(128, kernel_size=(3, 3), activation= 'relu'))
model.add(layers.MaxPooling2D(pool_size=(2,2), strides=(2, 2)))
model.add(layers.Dropout(0.2))
#µÚÈý¸ö¾í»ý¿é
model.add(layers.Conv2D(64, kernel_size=(2, 2), activation='relu'))
model.add(layers.MaxPooling2D(pool_size=(3, 3), strides=(2, 2)))
model.add(layers.Dropout(0.2))
#µÚËĸö¾í»ý¿é
model.add(layers.Conv2D(64, kernel_size=(2, 2), activation= 'relu'))
model.add(layers.MaxPooling2D(pool_size=(2, 2), strides=(2, 2)))
model.add(layers.Dropout(0.2))
#½«ÉÏÒ»²ãµÄÊä³öÌØÕ÷Ó³Éäת»¯ÎªÒ»Î¬Êý¾Ý£¬ÒÔ±ã½øÐÐÈ«Á¬½Ó²Ù×÷
model.add(layers.Flatten())
#µÚÒ»¸öÈ«Á¬½Ó²ã
model.add(layers.Dense(256))
model.add(layers.Activation('relu'))
model.add(layers.Dropout(0.2))
#µÚ¶þ¸öÈ«Á¬½Ó²ã
model.add(layers.Dense(128))
model.add(layers.Activation('relu'))
model.add(layers.Dropout(0.2))
#µÚÈý¸öÈ«Á¬½Ó²ã
model.add(layers.Dense(1))
model.add(layers.Activation('sigmoid'))
#±àÒëÄ£ÐÍ
model.compile(loss= 'binary_crossentropy', optimizer=tf.keras.optimizers.Adam(0.0001), metrics=['accuracy'])
#´òÓ¡³öÄ£Ð͵ĸſöÐÅÏ¢
model.summary()
return model
cnn_model = get_model()
cnn_model. fit (train_x, train_y, batch_size=25, epochs=100, verbose=1, validation_split=0.2)
´úÂë
ѵÁ·¼¯ÏÔʾ
[array([[[110, 110, 110],
[110, 110, 110],
[109, 109, 109],
...,
[ 0, 0, 0],
[ 0, 0, 0],
[ 0, 0, 0]]]),
array([[[110, 110, 110],
[110, 110, 110],
[109, 109, 109],
...,
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]]]),
array([[[165, 165, 165],
[173, 173, 173],
[169, 169, 169],
...,
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]]]),
array([[[58, 58, 58],
[52, 52, 52],
[51, 51, 51],
...,
[47, 47, 47],
[55, 55, 55],
[49, 49, 49]]]),
array([[[ 74, 74, 74],
[ 76, 76, 76],
[ 71, 71, 71],
...,
[110, 110, 110],
[106, 106, 106],
[108, 108, 108]]]),
array([[[159, 159, 159],
[118, 118, 118],
[132, 132, 132],
...,
[ 93, 93, 93],
[ 95, 95, 95],
[ 91, 91, 91]]]),
array([[[165, 165, 165],
[173, 173, 173],
[169, 169, 169],
...,
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]]]),
array([[[110, 110, 110],
[110, 110, 110],
[109, 109, 109],
...,
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]]]),
array([[[165, 165, 165],
[173, 173, 173],
[169, 169, 169],
...,
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]]]),
array([[[58, 58, 58],
[52, 52, 52],
[51, 51, 51],
...,
[47, 47, 47],
[55, 55, 55],
[49, 49, 49]]]),
array([[[ 74, 74, 74],
[ 76, 76, 76],
[ 71, 71, 71],
...,
[110, 110, 110],
[106, 106, 106],
[108, 108, 108]]]),
array([[[159, 159, 159],
[118, 118, 118],
[132, 132, 132],
...,
[ 93, 93, 93],
[ 95, 95, 95],
[ 91, 91, 91]]]),
array([[[165, 165, 165],
[173, 173, 173],
[169, 169, 169],
...,
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]]]),
array([[[110, 110, 110],
[110, 110, 110],
[109, 109, 109],
...,
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]]]),
array([[[165, 165, 165],
[173, 173, 173],
[169, 169, 169],
...,
[255, 255, 255],
[255, 255, 255],
[255, 255, 255]]]),
array([[[58, 58, 58],
[52, 52, 52],
[51, 51, 51],
...,
[47, 47, 47],
[55, 55, 55],
[49, 49, 49]]]),
array([[[ 74, 74, 74],
[ 76, 76, 76],
[ 71, 71, 71],
...,
[110, 110, 110],
[106, 106, 106],
[108, 108, 108]]]),
array([[[159, 159, 159],
[118, 118, 118],
[132, 132, 132],
...,
[ 93, 93, 93],
[ 95, 95, 95],
[ 91, 91, 91]]]),
array([[[165, 165, 165],
[173, 173, 173],
[169, 169, 169],
...,
ÕâÊÇtrainx
[array(0),
array(0),
array(0),
array(0),
array(1),
array(1),
array(0),
array(0),
array(0),
array(0),
array(1),
array(1),
array(0),
array(0),
array(0),
array(0),
array(1),
array(1),
array(0)]
ÕâÊÇtrainy |