{"cells":[{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"e3ab7e3c-cbf5-edfb-e65e-f25e207fe465"},"outputs":[],"source":"import numpy as np\nimport pandas as pd\nfrom numpy import genfromtxt\nfrom keras.models import Sequential\nfrom keras.layers import Dense, Dropout, Activation, Flatten\nfrom keras.layers import Convolution2D, MaxPooling2D\nfrom keras.utils import np_utils\n\n# Read in train/test sets\ntrain = pd.read_csv('../input/train.csv', header=0,sep=',')\ntest = pd.read_csv('../input/test.csv', header=0,sep=',')\n\n\n##### Fields to copy since we need them later but they must be dropped from train/test\n# Copy yTrain\nyTrain = train['label'].copy()\n#####\n\n# Drop the label column\ntrain.drop('label',axis=1,inplace=True)  \n\ntrain.info()\ntest.info()\n\t\nmodel = Sequential()\nmodel.add(Convolution2D(32, 3, 3, activation='relu', input_shape=(784)))\nmodel.add(Convolution2D(32, 3, 3, activation='relu'))\nmodel.add(MaxPooling2D(pool_size=(2,2)))\nmodel.add(Dropout(0.25))\nmodel.add(Flatten())\nmodel.add(Dense(128, activation='relu'))\nmodel.add(Dropout(0.5))\nmodel.add(Dense(10, activation='softmax'))\nmodel.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])\nx = model.fit(X_train, Y_train, batch_size=32, nb_epoch=10, verbose=1)\nprint(x)\n\nids = test.index + 1\n\ntest = pd.DataFrame( { 'ImageId': ids, 'Label': ypred } )\ntest.shape\ntest.head()\ntest.to_csv( 'digits_prediction.csv' , index = False )"}],"metadata":{"_change_revision":0,"_is_fork":false,"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"codemirror_mode":{"name":"ipython","version":3},"file_extension":".py","mimetype":"text/x-python","name":"python","nbconvert_exporter":"python","pygments_lexer":"ipython3","version":"3.6.0"}},"nbformat":4,"nbformat_minor":0}