我正在尝试在一个程序中按照 Krish naik Youtube 教程学习 CNN,但出现此错误:
RuntimeError: Model-building function did not return a valid Keras Model instance, found <keras.engine.sequential.Sequential object at 0x7fd882393b38>
我的代码如下
import keras.datasets
fashion=keras.datasets.fashion_mnist
(x_train,y_train),(x_test,y_test)=fashion.load_data()
x_train=x_train/255.00
x_test=x_test/255.00
x_train=x_train.reshape(x_train.shape[0],x_train.shape[1],x_train.shape[2],1)
x_test=x_test.reshape(x_test.shape[0],x_test.shape[1],x_test.shape[2],1)
from keras.models import Sequential
from keras.layers import Conv2D,Flatten,Dropout,Dense
from keras.optimizers import Adam
def build_knn(hp):
models=Sequential()
models.add(Conv2D(filters=hp.Int('conv2d_1',min_value=32,max_value=128,step=16),
kernel_size=hp.Choice('conv1_kernal',values=[3,5]),
activation='relu',
input_shape=(28,28,1)
))
models.add(Conv2D(filters=hp.Int('conv2d_1',min_value=32,max_value=128,step=16),
kernel_size=hp.Choice('conv1_kernal',values=[3,5]),
activation='relu'
))
models.add(Flatten())
models.add(Dense(hp.Int('neural1',min_value=32,max_value=128,step=16),activation='relu'))
models.add(Dense(10,activation='softmax'))
models.compile(optimizer=Adam(hp.Choice('learning_rate',values=[1e-2,1e-3])),
loss='sparse_categorical_crossentropy',
metrics=['accuracy']
)
return models
from kerastuner import RandomSearch
from kerastuner.engine.hyperparameters import HyperParameters
tuner_search=RandomSearch(build_knn,objective='val_accuracy',max_trials=5,directory='jupyterfiles',project_name='krish_naik_fashion_mnist')