200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 利用python卷积神经网络手写数字识别_Keras深度学习:卷积神经网络手写数字识别...

利用python卷积神经网络手写数字识别_Keras深度学习:卷积神经网络手写数字识别...

时间:2024-05-08 22:39:52

相关推荐

利用python卷积神经网络手写数字识别_Keras深度学习:卷积神经网络手写数字识别...

引言:最近在闭关学习中,由于多久没有写博客了,今天给大家带来学习的一些内容,还在学习神经网络的同学,跑一跑下面的代码,给你一些自信吧!Nice 奥里给!

正文:首先该impor的库就不多说了,不会的就pip install something that you got it

读者也可以在下方代码片里面直接下载:

mnist.load_data(data)=mnist.load_data()

# Practice mnist

from keras.datasets import mnist

import numpy as np

from keras.models import Sequential

from keras.layers import Dense

from keras.layers import Dropout

from keras.layers import Flatten

from keras.layers.convolutional import MaxPooling2D

from keras.layers.convolutional import Conv2D

from keras.utils import np_utils

from keras import backend

backend.set_image_data_format('channels_first')

data ='E:\\KerasRain\\resoucre\\mnist.npz'

#set random seed

seed=7

np.random.seed(seed)

# import MNIST dataset from Keras

(X_train,y_train),(X_validation,y_validation)=mnist.load_data(data)

X_train=X_train.reshape(X_train.shape[0],1,28,28).astype('float32')

X_validation=X_validation.reshape(X_validation.shape[0],1,28,28).astype('float32')

#Normalized to 0-1

X_train=X_train/255

X_validation=X_validation/255

#make one-hot code

y_train=np_utils.to_categorical(y_train)

y_validation=np_utils.to_categorical(y_validation)

#creat model

def create_model():

# initialize model

model=Sequential()

# define input layer (1x28x28)

# define Convolutional layer 32 maps, 5x5

model.add(Conv2D(32,(5,5),input_shape=(1,28,28),activation='relu'))

# define Pooling layer (2x2)

model.add(MaxPooling2D(pool_size=(2,2)))

# define Dropout layer 20%

model.add(Dropout(0.2))

# define Flattem layer

model.add(Flatten())

# define Fully connected layer 128

model.add(Dense(units=128,activation='relu'))

# define output layer 10

model.add(Dense(units=10,activation='softmax'))

# compile model

pile(loss='categorical_crossentropy',optimizer='adam',metrics=['accuracy'])

return model

model=create_model()

model.fit(X_train,y_train,epochs=10,batch_size=200,verbose=1)

score=model.evaluate(X_validation,y_validation,verbose=0)

print('accuracy: %.2f%%'%(score[1]*100))

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。