Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 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 Conv2D
- from keras.layers.convolutional import MaxPooling2D
- from keras import backend as K
- from keras.utils import np_utils
- from sklearn.model_selection import train_test_split
- import numpy as np
- import pandas as pd
- seed = 785
- np.random.seed(seed)
- dataset = np.loadtxt('../input/A_Z Handwritten Data/A_Z Handwritten Data.csv', delimiter=',')
- print(dataset.shape) # (372451, 785)
- X = dataset[:,1:785]
- Y = dataset[:,0]
- (X_train, X_test, Y_train, Y_test) = train_test_split(X, Y, test_size=0.33, random_state=seed)
- X_train = X_train / 255
- X_test = X_test / 255
- X_train.reshape([-1, X_train.shape[0], X_train.shape[1], 1])
- X_test.reshape([-1, X_test.shape[0], X_test.shape[1], 1])
- Y_train = np_utils.to_categorical(Y_train)
- Y_test = np_utils.to_categorical(Y_test)
- print(Y_test.shape) # (122909, 26)
- num_classes = Y_test.shape[1] # 26
- model = Sequential()
- model.add(Conv2D(32, (5, 5), input_shape=(28, 28, 1), activation='relu', data_format="channels_last"))
- model.add(MaxPooling2D(pool_size=(2, 2)))
- model.add(Dropout(0.2))
- model.add(Flatten())
- model.add(Dense(128, activation='relu'))
- model.add(Dense(num_classes, activation='softmax'))
- model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
- print("DONE")
- model.fit(X_train, Y_train, validation_data=(X_test, Y_test), epochs=10, batch_size=256, verbose=2) # WHERE I GET THE ERROR
- # Final evaluation of the model
- scores = model.evaluate(X_test,Y_test, verbose=0)
- print("CNN Error: %.2f%%" % (100-scores[1]*100))
- model.save('weights.model')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement