{"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.5.2"},"kaggle":{"accelerator":"none","dataSources":[{"sourceId":3004,"databundleVersionId":861823,"sourceType":"competition"}],"isInternetEnabled":false,"language":"python","sourceType":"notebook","isGpuEnabled":false}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"My first attempt on ","metadata":{"_cell_guid":"4909b176-d72b-10a1-58d7-dc2c4bdda8cd"}},{"cell_type":"code","source":"# This Python 3 environment comes with many helpful analytics libraries installed\n# It is defined by the kaggle/python docker image: https://github.com/kaggle/docker-python\n# For example, here's several helpful packages to load in \n\nimport numpy as np # linear algebra\nimport pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\n\n# Input data files are available in the \"../input/\" directory.\n# For example, running this (by clicking run or pressing Shift+Enter) will list the files in the input directory\n\nfrom subprocess import check_output\nprint(check_output([\"ls\", \"../input\"]).decode(\"utf8\"))\n\n# Any results you write to the current directory are saved as output.","metadata":{"_cell_guid":"bb04dc4a-df7a-5d8c-3f3b-1eb41843fcdc"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"import pandas as pd\nfrom keras.models import Sequential\nfrom keras.layers import Dense\nimport numpy as np\nimport keras.utils.np_utils as kutils\n\n# fix random seed for reproducibility\nseed = 7\nnp.random.seed(seed)","metadata":{"_cell_guid":"5b827067-4613-ec79-0fe8-c5231bebda70"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# The competition datafiles are in the directory ../input\n# Read competition data files:\ntrain = pd.read_csv(\"../input/train.csv\").values\ntest  = pd.read_csv(\"../input/test.csv\").values\n\n# Write to the log:\nprint (\"Training set has {0[0]} rows and {0[1]} columns\".format(train.shape))\nprint (\"Test set has {0[0]} rows and {0[1]} columns\".format(test.shape))\n# Any files you write to the current directory get shown as outputs","metadata":{"_cell_guid":"7ee8289f-c358-ec51-f74b-bac5849c7fd6"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"trainY = train[:,0]\ntrainX = train[:,1:]\ntrainY = kutils.to_categorical(trainY)","metadata":{"_cell_guid":"96797ddf-5b06-3605-54a8-7ff75b7b86aa"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# create model\nmodel = Sequential()\nmodel.add(Dense(20, input_dim=784, init='uniform', activation='relu'))\nmodel.add(Dense(20, init='uniform', activation='relu'))\nmodel.add(Dense(20, init='uniform', activation='relu'))\nmodel.add(Dense(10, init='uniform', activation='sigmoid'))\n\n# Compile model\nmodel.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])","metadata":{"_cell_guid":"c7633f59-3e15-ff3e-5815-ee945341e6e4"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# Fit the model\nmodel.fit(trainX, trainY, nb_epoch=1, batch_size=10)","metadata":{"_cell_guid":"e4f26e44-5efa-ec72-c02b-0c421a77e16b"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"# evaluate the model\nscores = model.evaluate(trainX, trainY)\nprint \nprint (\"%s: %.2f%%\" % (model.metrics_names[1], scores[1]*100))","metadata":{"_cell_guid":"3e978fc0-afbb-73bd-d4f8-3e2d0890a392"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"Ytest = model.predict(test)\nYY = np.zeros(Ytest.shape[0])\nprint (Ytest)\n\nfor k in range(Ytest.shape[0]):\n    YY[k] = np.argmax(Ytest[k])\nnp.savetxt('mnist-vggnet.csv', np.c_[range(1,len(YY)+1),YY], delimiter=',', header = 'ImageId,Label', comments = '', fmt='%d')","metadata":{"_cell_guid":"614a467f-e703-94bf-4a90-61fe885ccabc"},"execution_count":null,"outputs":[]}]}