import numpy as np from keras.datasets import mnist from keras.models import Sequential from keras.layers import Conv2D,MaxPooling2D,Dropout,Flatten,Dense (X_train,y_train),(X_test,y_test) = mnist.load_data() #加载数据 X_train = X_train.reshape(X_train.shape[0],28,28,1).astype('float32') X_test = X_test.reshape(X_test.shape[0],28,28,1).astype('float32') X_train/= 255 #由于每个像素是介于0~255的 所以除以255 X_test/=255 def tran_y(y):#手动实现one-hot编码 y_ohe = np.zeros(10) y_ohe[y] = 1 return y_ohe y_train = np.array([ tran_y(y_train[tmp]) for tmp in range(len(y_train)) #实现对label的one-hot编码 ]) y_test = np.array([ tran_y(y_test[i]) for i in range(len(y_test)) ]) #开始搭建卷积神经网络 model = Sequential() #添加一层卷积层,构建64个filter model.add( Conv2D( filters=64, kernel_size=(3,3), strides=(1,1), padding = 'same', input_shape=(28,28
Keras实现手写数字识别
最新推荐文章于 2024-05-25 22:54:04 发布