{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.11.13","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"nvidiaTeslaT4","dataSources":[{"sourceId":3649,"databundleVersionId":46718,"sourceType":"competition"}],"dockerImageVersionId":31154,"isInternetEnabled":true,"language":"python","sourceType":"notebook","isGpuEnabled":true}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"import numpy as np\nimport pandas as pd\nimport torch\nimport torch.nn as nn\nimport torch.optim as optim\nfrom torch.utils.data import Dataset, DataLoader\nimport torchvision\nfrom torchvision import transforms\nfrom PIL import Image\nimport os\n\ndevice = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\nprint(\"Device being used:\", device)\n","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true,"execution":{"iopub.status.busy":"2025-10-06T18:31:50.701259Z","iopub.execute_input":"2025-10-06T18:31:50.701585Z","iopub.status.idle":"2025-10-06T18:31:57.047506Z","shell.execute_reply.started":"2025-10-06T18:31:50.701561Z","shell.execute_reply":"2025-10-06T18:31:57.046265Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"import numpy as np\nimport pandas as pd\nimport torch\nimport torch.nn as nn\nimport torch.optim as optim\nfrom torch.utils.data import Dataset, DataLoader\nimport torchvision\nfrom torchvision import transforms\nfrom PIL import Image\nimport os\n\ndevice = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\nprint(\"Device being used:\", device)\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-10-06T18:32:11.308716Z","iopub.execute_input":"2025-10-06T18:32:11.308983Z","iopub.status.idle":"2025-10-06T18:32:11.322328Z","shell.execute_reply.started":"2025-10-06T18:32:11.308962Z","shell.execute_reply":"2025-10-06T18:32:11.321357Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"\nimport numpy as np\nimport pandas as pd\nimport torch\nimport torch.nn as nn\nimport torch.optim as optim\nfrom torch.utils.data import Dataset, DataLoader\nimport torchvision\nfrom torchvision import transforms\nfrom PIL import Image\nimport os\n\ndevice = torch.device('cuda' if torch.cuda.is_available() else 'cpu')\nprint(\"Device being used:\", device)\n\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-10-06T18:33:38.947844Z","iopub.execute_input":"2025-10-06T18:33:38.948369Z","iopub.status.idle":"2025-10-06T18:33:45.068868Z","shell.execute_reply.started":"2025-10-06T18:33:38.948345Z","shell.execute_reply":"2025-10-06T18:33:45.068111Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"# Step 2: Data paths & labels\n\ntrain_dir = '/kaggle/input/cifar-10/train'\ntest_dir = '/kaggle/input/cifar-10/test'\n\n# Train labels load karo\nlabels_csv = pd.read_csv('/kaggle/input/cifar-10/trainLabels.csv')\n\n# Label mapping (text → int)\nlabel_names = sorted(labels_csv['label'].unique())\nlabel2idx = {name: i for i, name in enumerate(label_names)}\nidx2label = {i: name for name, i in label2idx.items()}\n\n# Train image filenames (sorted for correct label order)\ntrain_files = sorted([f for f in os.listdir(train_dir) if f.endswith('.png')])\ntest_files = sorted([f for f in os.listdir(test_dir) if f.endswith('.png')])\n\n# List of label indices (in correct image order)\ny_train = [label2idx[labels_csv.set_index('id').loc[int(f.replace('.png', ''))]['label']] for f in train_files]\n\n# Quick check\nprint('Classes:', label_names)\nprint('Label for first 5 train images:', [idx2label[y] for y in y_train[:5]])\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-10-06T18:35:08.46061Z","iopub.execute_input":"2025-10-06T18:35:08.46137Z","iopub.status.idle":"2025-10-06T18:35:08.560244Z","shell.execute_reply.started":"2025-10-06T18:35:08.461344Z","shell.execute_reply":"2025-10-06T18:35:08.559359Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"import os\nprint(os.listdir('/kaggle/input'))\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-10-06T18:38:35.654329Z","iopub.execute_input":"2025-10-06T18:38:35.654943Z","iopub.status.idle":"2025-10-06T18:38:35.659357Z","shell.execute_reply.started":"2025-10-06T18:38:35.654918Z","shell.execute_reply":"2025-10-06T18:38:35.658718Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"print(os.listdir('/kaggle/input/cifar10-object-recognition-in-images'))\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-10-06T18:39:09.147983Z","iopub.execute_input":"2025-10-06T18:39:09.148548Z","iopub.status.idle":"2025-10-06T18:39:09.16066Z","shell.execute_reply.started":"2025-10-06T18:39:09.148523Z","shell.execute_reply":"2025-10-06T18:39:09.159748Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"import os\nprint(os.listdir('/kaggle/input/cifar-10'))\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-10-06T18:40:34.484703Z","iopub.execute_input":"2025-10-06T18:40:34.485017Z","iopub.status.idle":"2025-10-06T18:40:34.491446Z","shell.execute_reply.started":"2025-10-06T18:40:34.484993Z","shell.execute_reply":"2025-10-06T18:40:34.490641Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"!apt-get install -y p7zip-full\n!7z x /kaggle/input/cifar-10/train.7z -o/kaggle/working/train/\n!7z x /kaggle/input/cifar-10/test.7z -o/kaggle/working/test/\n","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2025-10-06T18:43:37.663379Z","iopub.execute_input":"2025-10-06T18:43:37.663697Z"}},"outputs":[],"execution_count":null},{"cell_type":"code","source":"\n","metadata":{"trusted":true},"outputs":[],"execution_count":null}]}