{"cells":[{"metadata":{"trusted":true,"_uuid":"012c3fb4d78d2c3fa54ef6da8dbbfd479f3ee633"},"cell_type":"code","source":"import numpy as np\nimport cv2\nimport tensorflow as tf\nimport keras\nimport torch\nimport matplotlib","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"36f1b57934823bed3f693955c9e59fa1c05207f6"},"cell_type":"code","source":"!nvcc --version","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"d7b1e183c309c5565b0e93e4eb25572ddc53a7b6"},"cell_type":"code","source":"!cat /usr/include/x86_64-linux-gnu/cudnn_v*.h | grep CUDNN_MAJOR -A 2","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"fb1b4cc1c33dd9a57792c998a0271cf4a1469616"},"cell_type":"code","source":"print('LIBRARY VERSIONS')\nprint('numpy', np.__version__)\nprint('cv2', cv2.__version__)\nprint('matplotlib', matplotlib.__version__)\nprint('tensorflow', tf.__version__)\nprint('keras', keras.__version__)\nprint('torch', torch.__version__)","execution_count":null,"outputs":[]},{"metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true,"collapsed":true},"cell_type":"code","source":"%matplotlib inline\nimport warnings\nwarnings.filterwarnings('ignore')\nimport os\nimport gc\nimport time\nimport pickle\nimport feather\nimport numpy as np\nimport pandas as pd\nimport seaborn as sns\nimport matplotlib.pyplot as plt\nfrom tqdm._tqdm_notebook import tqdm_notebook as tqdm\ntqdm.pandas()\n# from tqdm import tqdm\n\n# pd.options.display.max_rows = 999\n# pd.options.display.max_columns = 999\nimport glob\ndef get_path(str, first=True, parent_dir='../input/**/'):\n    res_li = glob.glob(parent_dir+str)\n    return res_li[0] if first else res_li","execution_count":null,"outputs":[]},{"metadata":{"_cell_guid":"79c7e3d0-c299-4dcb-8224-4455121ee9b0","_uuid":"d629ff2d2480ee46fbb7e2d37f6b5fab8052498a","trusted":true},"cell_type":"code","source":"print(os.listdir('../input/train/')[:5])\nprint(os.listdir('../input/test/')[:5])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"6e5496a963801bc0d32c976e9a1aff2f3e24d5cb"},"cell_type":"code","source":"train_ids = get_path('*.jpg', False, '../input/train/')\nprint(len(train_ids))\nprint(train_ids[:5])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"6e4cf2a6a7a5f5e9a2c1a7077ae45534b99db520"},"cell_type":"code","source":"test_ids = get_path('*.jpg', False, '../input/test/')\nprint(len(test_ids))\nprint(test_ids[:5])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"84b537ab7e79e86c233ae52f3310b2c9ea7134af","collapsed":true},"cell_type":"code","source":"def get_id(path):\n    return path.split('/')[-1].split('.jpg')[0]\n    \ndef get_target(x):\n    if 'cat' in x:\n        return 1\n    elif 'dog' in x:\n        return 0\n    else:\n        return -1\n\nevals = {\n    'path': train_ids+test_ids,\n    'is_test': [0]*len(train_ids)+[1]*len(test_ids),\n}\nevals = pd.DataFrame(evals)\nevals['img_id'] = evals['path'].apply(get_id)\nevals['target'] = evals['img_id'].apply(get_target)\nevals['eval_set'] = -1\ncols = ['img_id', 'target', 'path', 'is_test', 'eval_set']\nevals = evals[cols]","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"collapsed":true,"_uuid":"9fa3ea543b60e6f150b2bac1b6ac32a416818f6c"},"cell_type":"code","source":"from sklearn.model_selection import KFold\ntrain_num = len(train_ids)\nn_splits = 5\nrandom_state = 42\nkf = KFold(n_splits=n_splits, shuffle=True, random_state=random_state)\nfor fold_i, (_,val_idx) in enumerate(kf.split(np.arange(train_num))):\n    evals.loc[val_idx, 'eval_set'] = fold_i","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"72d6f5a588d6166f602f457392b0dc4355e476cf"},"cell_type":"code","source":"evals['eval_set'][:train_num].hist(bins=9)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"_uuid":"72ab7c609d1e81755f46d43a49510687381564f8"},"cell_type":"code","source":"pd.concat([evals.head(), evals.tail()])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"collapsed":true,"_uuid":"8ff7b92b62e4cd1dbe726b1a701ecb33861ad5a9"},"cell_type":"code","source":"evals.to_csv('evals.csv', index=False)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"collapsed":true,"_uuid":"1a2d8d36e5662a7ea083badeeead41d69409604e"},"cell_type":"code","source":"","execution_count":null,"outputs":[]},{"metadata":{"trusted":true,"collapsed":true,"_uuid":"ceb0c3829cf1e5b713328b8cea2410f6cbc59f91"},"cell_type":"code","source":"","execution_count":null,"outputs":[]}],"metadata":{"kernelspec":{"display_name":"Python 3","language":"python","name":"python3"},"language_info":{"name":"python","version":"3.6.4","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"}},"nbformat":4,"nbformat_minor":1}