{"cells":[{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","collapsed":true},"outputs":[],"source":["import keras"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"79c7e3d0-c299-4dcb-8224-4455121ee9b0","_uuid":"d629ff2d2480ee46fbb7e2d37f6b5fab8052498a","collapsed":true},"outputs":[],"source":["from keras.models import Sequential"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"6b7efe03-d252-499b-af96-92ba37b1113d","_uuid":"4f9eaaf206dacfb9de0d9b2063bf443bf8bc3c61","collapsed":true},"outputs":[],"source":["from keras.layers import Convolution2D\n","from keras.layers import MaxPooling2D\n","from keras.layers import Flatten\n","from keras.layers import Dense"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"8f503662-bacd-4246-8202-77b89ef57e31","_uuid":"2b80dcb58b09a61cfba9358d86e2d131e30feb6f","collapsed":true},"outputs":[],"source":["classifier = Sequential()"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"d18fe969-2eb3-433a-8523-70c16c2f9617","_uuid":"7a6f076df4099c653aeca390dfad7ca2132badc2","collapsed":true},"outputs":[],"source":["classifier.add(Convolution2D(32,3,3, input_shape = (64,64,3),activation = ('relu')))"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"b96e1ec9-5913-4a4d-9e37-907fa3562f68","_uuid":"5f7daf476dd078fdca92af65089350a151a6d027","collapsed":true},"outputs":[],"source":["classifier.add(MaxPooling2D(2,2))"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"a1cc7b9e-abb9-4541-b3a6-3ca6885b8bcd","_uuid":"fad941b075b0195de3c3798c83d5242490b8a604","collapsed":true},"outputs":[],"source":["classifier.add(Flatten())"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"ed921c9b-a760-4283-9d09-d3cd788047f8","_uuid":"35fb52b7c71d5842652d7cb5bc1cfa1e8ef52ef7","collapsed":true},"outputs":[],"source":["classifier.add(Dense(output_dim = 128,activation='relu'))"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"d2a5bce3-e524-4dc5-9ecd-52f10e51553c","_uuid":"6c9c481224d97e2753031b3af7e3cf0c5ddf33de","collapsed":true},"outputs":[],"source":["classifier.add(Dense(output_dim = 1,activation = 'sigmoid'))"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"17ce8f7e-f0d0-4127-b053-379209a7b383","_uuid":"2c7c5695ed055251fced47b2a8e384de6c4d7d1e","collapsed":true},"outputs":[],"source":["classifier.compile(optimizer = 'adam', loss = 'binary_crossentropy', metrics = ['accuracy'])"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"97356d22-6479-4233-9202-9bbf3fbecd3a","_uuid":"48aa06583452a3c173026487a210a753ce25ab16","collapsed":true},"outputs":[],"source":["from keras.preprocessing.image import ImageDataGenerator"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"9aaeebca-1872-4e66-a5b9-d756d385992e","_uuid":"660a05b1b7e6b6c4964f22535f560a5296cc7817","collapsed":true},"outputs":[],"source":["train_datagen=ImageDataGenerator(rescale=1./255,shear_range=0.2,zoom_range=0.2,horizontal_flip=True)"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"d3ce2c08-e04a-48c5-8482-85645f1f12f2","_uuid":"3866019e424737b6d45dadb127319ad681b96c76","collapsed":true},"outputs":[],"source":["test_datagen=ImageDataGenerator(rescale=1./255)"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"9d4976cd-89ec-4566-a383-154c8fc36db7","_uuid":"af47edd8664ed26246ec49ed11d7a00ebfd10e0f","collapsed":true},"outputs":[],"source":["train=train_datagen.flow_from_directory('Users\\sathish gade\\Desktop\\data\\cats and dogs\\train',target_size=(64,64),batch_size=32,class_mode='binary')"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"650bdf0b-44a6-4bc0-84b6-15ae5500ef76","_uuid":"ee45856029878fb5157212540f9b61e82ef227b8","collapsed":true},"outputs":[],"source":["os.path.abspath(\"\\Users\\sathish gade\\Desktop\\data\\catsanddogs\\train\")"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"57a4fa96-13e9-475e-8ef3-10976de2a030","_uuid":"442f71383b34463bf8edd074d481a33802baaf0a","collapsed":true},"outputs":[],"source":["train=train_datagen.flow_from_directory(\"../input/dogs-vs-cats-redux-kernels-edition/train.zip\")"]},{"cell_type":"code","execution_count":null,"metadata":{"_cell_guid":"4902a000-d45e-4dd0-a1cc-2e5a106e9160","_uuid":"c8609998dcc87b01e2228e11a5c0cbacded7dde2","collapsed":true},"outputs":[],"source":["train_datagen = ImageDataGenerator(\n","                                       rescale=1./255,\n","                shear_range=0.2,\n","        zoom_range=0.2,\n","        horizontal_flip=True)\n","\n","test_datagen = ImageDataGenerator(rescale=1./255)\n","\n","train_generator = train_datagen.flow_from_directory(\n","        'data/train',\n","        target_size=(150, 150),\n","        batch_size=32,\n","        class_mode='binary')\n","\n","validation_generator = test_datagen.flow_from_directory(\n","        'data/validation',\n","        target_size=(150, 150),\n","        batch_size=32,\n","        class_mode='binary')\n","\n","model.fit_generator(\n","        train_generator,\n","        steps_per_epoch=2000,\n","        epochs=50,\n","        validation_data=validation_generator,\n","        validation_steps=800)"]}],"metadata":{"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.4"}},"nbformat":4,"nbformat_minor":1}