Compare commits
3 Commits
6f854a9d62
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0c56b9285a | ||
|
|
f28aa1d53b | ||
|
|
66e153ff4a |
94
README.md
94
README.md
@@ -1,6 +1,92 @@
|
|||||||
# vehicle-classification
|
# Vehicle Classification — UTD Deep Learning Assessment
|
||||||
|
|
||||||
UTD Vehicle Classification Assessment Code
|
A Convolutional Neural Network (CNN) trained to classify 8 vehicle types:
|
||||||
|
**Bicycle, Bus, Car, Motorcycle, NonVehicles, Taxi, Truck, Van**
|
||||||
|
|
||||||
Download Zip and move to data/raw/
|
---
|
||||||
Extract zip into data/raw/vehicle_classification
|
|
||||||
|
## Requirements
|
||||||
|
- Python 3.11 (see `.python-version`)
|
||||||
|
- pip
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
### 1. Clone the repository
|
||||||
|
```bash
|
||||||
|
git clone https://git.keshavanand.net/KeshavAnandCode/vehicle-classification.git
|
||||||
|
cd utd-vehicle-classification
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Create and activate a virtual environment
|
||||||
|
```bash
|
||||||
|
python3.11 -m venv .venv
|
||||||
|
```
|
||||||
|
**Mac/Linux:**
|
||||||
|
```bash
|
||||||
|
source .venv/bin/activate
|
||||||
|
```
|
||||||
|
**Windows:**
|
||||||
|
```bash
|
||||||
|
.venv\Scripts\activate
|
||||||
|
```
|
||||||
|
|
||||||
|
### 3. Install dependencies
|
||||||
|
```bash
|
||||||
|
pip install -r requirements.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
### 4. Download the dataset
|
||||||
|
- Download `vehicle_classification.zip`
|
||||||
|
- Place and extract it so the structure looks exactly like this:
|
||||||
|
```
|
||||||
|
data/
|
||||||
|
└── raw/
|
||||||
|
└── vehicle_classification/
|
||||||
|
├── Bicycle/
|
||||||
|
├── Bus/
|
||||||
|
├── Car/
|
||||||
|
├── Motorcycle/
|
||||||
|
├── NonVehicles/
|
||||||
|
├── Taxi/
|
||||||
|
├── Truck/
|
||||||
|
└── Van/
|
||||||
|
```
|
||||||
|
|
||||||
|
### 5. Run the notebook
|
||||||
|
```bash
|
||||||
|
jupyter notebook notebooks/submission.ipynb
|
||||||
|
```
|
||||||
|
Once open: **Kernel → Restart & Run All**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Project Structure
|
||||||
|
```
|
||||||
|
utd-vehicle-classification/
|
||||||
|
├── notebooks/
|
||||||
|
│ ├── submission.ipynb ← main submission, run this
|
||||||
|
│ └── experiments/ ← exploratory notebooks (ignore)
|
||||||
|
├── data/
|
||||||
|
│ └── raw/
|
||||||
|
│ └── vehicle_classification/ ← dataset goes here
|
||||||
|
├── models/ ← saved model weights (auto-created on run)
|
||||||
|
├── results/ ← training curves (auto-created on run)
|
||||||
|
├── requirements.txt
|
||||||
|
└── README.md
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Expected Output
|
||||||
|
```
|
||||||
|
Final Train Accuracy : ~88%
|
||||||
|
Final Test Accuracy : ~82%
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
- Device is detected automatically — runs on NVIDIA GPU, Apple Silicon (MPS), or CPU with no code changes required
|
||||||
|
- `models/` and `results/` directories are created automatically when the notebook runs
|
||||||
File diff suppressed because one or more lines are too long
685
notebooks/Final-Submission.ipynb
Normal file
685
notebooks/Final-Submission.ipynb
Normal file
File diff suppressed because one or more lines are too long
@@ -42,7 +42,7 @@
|
|||||||
"source": [
|
"source": [
|
||||||
"import os\n",
|
"import os\n",
|
||||||
"\n",
|
"\n",
|
||||||
"data_dir = '../data/raw/vehicle_classification'\n",
|
"data_dir = '../../data/raw/vehicle_classification'\n",
|
||||||
"\n",
|
"\n",
|
||||||
"for class_name in os.listdir(data_dir):\n",
|
"for class_name in os.listdir(data_dir):\n",
|
||||||
" class_path = os.path.join(data_dir, class_name)\n",
|
" class_path = os.path.join(data_dir, class_name)\n",
|
||||||
@@ -378,16 +378,16 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Epoch 1: Loss=1.480, Accuracy=50.95%\n",
|
"Epoch 1: Loss=1.518, Accuracy=51.03%\n",
|
||||||
"Epoch 2: Loss=1.073, Accuracy=62.46%\n",
|
"Epoch 2: Loss=1.110, Accuracy=62.02%\n",
|
||||||
"Epoch 3: Loss=0.974, Accuracy=66.04%\n",
|
"Epoch 3: Loss=0.976, Accuracy=66.24%\n",
|
||||||
"Epoch 4: Loss=0.899, Accuracy=68.51%\n",
|
"Epoch 4: Loss=0.906, Accuracy=68.52%\n",
|
||||||
"Epoch 5: Loss=0.834, Accuracy=70.87%\n",
|
"Epoch 5: Loss=0.838, Accuracy=70.77%\n",
|
||||||
"Epoch 6: Loss=0.779, Accuracy=72.60%\n",
|
"Epoch 6: Loss=0.782, Accuracy=72.33%\n",
|
||||||
"Epoch 7: Loss=0.730, Accuracy=74.29%\n",
|
"Epoch 7: Loss=0.735, Accuracy=74.25%\n",
|
||||||
"Epoch 8: Loss=0.689, Accuracy=75.64%\n",
|
"Epoch 8: Loss=0.696, Accuracy=75.42%\n",
|
||||||
"Epoch 9: Loss=0.649, Accuracy=77.14%\n",
|
"Epoch 9: Loss=0.665, Accuracy=76.53%\n",
|
||||||
"Epoch 10: Loss=0.620, Accuracy=78.21%\n",
|
"Epoch 10: Loss=0.634, Accuracy=77.40%\n",
|
||||||
"Finished Training\n"
|
"Finished Training\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -430,7 +430,7 @@
|
|||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"PATH = '../models/tutorial-cnn.pth'\n",
|
"PATH = '../../models/tutorial-cnn.pth'\n",
|
||||||
"torch.save(model.state_dict(), PATH)"
|
"torch.save(model.state_dict(), PATH)"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -452,7 +452,7 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Test Accuracy: 76.35%\n"
|
"Test Accuracy: 75.66%\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -482,14 +482,14 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Accuracy for class: Bicycle is 45.2%\n",
|
"Accuracy for class: Bicycle is 73.6%\n",
|
||||||
"Accuracy for class: Bus is 71.3%\n",
|
"Accuracy for class: Bus is 65.1%\n",
|
||||||
"Accuracy for class: Car is 77.3%\n",
|
"Accuracy for class: Car is 86.2%\n",
|
||||||
"Accuracy for class: Motorcycle is 81.2%\n",
|
"Accuracy for class: Motorcycle is 55.7%\n",
|
||||||
"Accuracy for class: NonVehicles is 98.2%\n",
|
"Accuracy for class: NonVehicles is 99.3%\n",
|
||||||
"Accuracy for class: Taxi is 37.0%\n",
|
"Accuracy for class: Taxi is 32.9%\n",
|
||||||
"Accuracy for class: Truck is 35.6%\n",
|
"Accuracy for class: Truck is 24.8%\n",
|
||||||
"Accuracy for class: Van is 35.5%\n"
|
"Accuracy for class: Van is 22.9%\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
"source": [
|
"source": [
|
||||||
"import os\n",
|
"import os\n",
|
||||||
"\n",
|
"\n",
|
||||||
"data_dir = '../data/raw/vehicle_classification'\n",
|
"data_dir = '../../data/raw/vehicle_classification'\n",
|
||||||
"\n",
|
"\n",
|
||||||
"for class_name in os.listdir(data_dir):\n",
|
"for class_name in os.listdir(data_dir):\n",
|
||||||
" class_path = os.path.join(data_dir, class_name)\n",
|
" class_path = os.path.join(data_dir, class_name)\n",
|
||||||
@@ -378,36 +378,36 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Epoch 1: Loss=1.732, Accuracy=43.80%\n",
|
"Epoch 1: Loss=1.693, Accuracy=43.96%\n",
|
||||||
"Epoch 2: Loss=1.403, Accuracy=54.06%\n",
|
"Epoch 2: Loss=1.285, Accuracy=56.70%\n",
|
||||||
"Epoch 3: Loss=1.137, Accuracy=60.66%\n",
|
"Epoch 3: Loss=1.070, Accuracy=62.78%\n",
|
||||||
"Epoch 4: Loss=1.003, Accuracy=64.95%\n",
|
"Epoch 4: Loss=0.964, Accuracy=66.34%\n",
|
||||||
"Epoch 5: Loss=0.917, Accuracy=67.92%\n",
|
"Epoch 5: Loss=0.891, Accuracy=68.85%\n",
|
||||||
"Epoch 6: Loss=0.845, Accuracy=70.22%\n",
|
"Epoch 6: Loss=0.826, Accuracy=70.92%\n",
|
||||||
"Epoch 7: Loss=0.796, Accuracy=72.06%\n",
|
"Epoch 7: Loss=0.764, Accuracy=72.87%\n",
|
||||||
"Epoch 8: Loss=0.741, Accuracy=73.88%\n",
|
"Epoch 8: Loss=0.734, Accuracy=74.25%\n",
|
||||||
"Epoch 9: Loss=0.711, Accuracy=75.05%\n",
|
"Epoch 9: Loss=0.690, Accuracy=75.77%\n",
|
||||||
"Epoch 10: Loss=0.670, Accuracy=76.52%\n",
|
"Epoch 10: Loss=0.636, Accuracy=77.49%\n",
|
||||||
"Epoch 11: Loss=0.636, Accuracy=77.59%\n",
|
"Epoch 11: Loss=0.616, Accuracy=78.49%\n",
|
||||||
"Epoch 12: Loss=0.611, Accuracy=78.49%\n",
|
"Epoch 12: Loss=0.581, Accuracy=79.67%\n",
|
||||||
"Epoch 13: Loss=0.580, Accuracy=79.42%\n",
|
"Epoch 13: Loss=0.558, Accuracy=80.53%\n",
|
||||||
"Epoch 14: Loss=0.546, Accuracy=80.87%\n",
|
"Epoch 14: Loss=0.526, Accuracy=81.44%\n",
|
||||||
"Epoch 15: Loss=0.519, Accuracy=81.77%\n",
|
"Epoch 15: Loss=0.498, Accuracy=82.36%\n",
|
||||||
"Epoch 16: Loss=0.502, Accuracy=82.36%\n",
|
"Epoch 16: Loss=0.458, Accuracy=83.76%\n",
|
||||||
"Epoch 17: Loss=0.474, Accuracy=83.28%\n",
|
"Epoch 17: Loss=0.436, Accuracy=84.62%\n",
|
||||||
"Epoch 18: Loss=0.445, Accuracy=84.34%\n",
|
"Epoch 18: Loss=0.398, Accuracy=86.02%\n",
|
||||||
"Epoch 19: Loss=0.424, Accuracy=85.12%\n",
|
"Epoch 19: Loss=0.378, Accuracy=86.44%\n",
|
||||||
"Epoch 20: Loss=0.392, Accuracy=86.07%\n",
|
"Epoch 20: Loss=0.327, Accuracy=88.69%\n",
|
||||||
"Epoch 21: Loss=0.366, Accuracy=86.99%\n",
|
"Epoch 21: Loss=0.310, Accuracy=89.20%\n",
|
||||||
"Epoch 22: Loss=0.330, Accuracy=88.30%\n",
|
"Epoch 22: Loss=0.265, Accuracy=90.82%\n",
|
||||||
"Epoch 23: Loss=0.304, Accuracy=89.51%\n",
|
"Epoch 23: Loss=0.237, Accuracy=91.60%\n",
|
||||||
"Epoch 24: Loss=0.267, Accuracy=90.67%\n",
|
"Epoch 24: Loss=0.212, Accuracy=92.75%\n",
|
||||||
"Epoch 25: Loss=0.227, Accuracy=92.35%\n",
|
"Epoch 25: Loss=0.193, Accuracy=93.34%\n",
|
||||||
"Epoch 26: Loss=0.222, Accuracy=92.38%\n",
|
"Epoch 26: Loss=0.161, Accuracy=94.54%\n",
|
||||||
"Epoch 27: Loss=0.176, Accuracy=94.24%\n",
|
"Epoch 27: Loss=0.119, Accuracy=96.25%\n",
|
||||||
"Epoch 28: Loss=0.156, Accuracy=94.71%\n",
|
"Epoch 28: Loss=0.095, Accuracy=96.94%\n",
|
||||||
"Epoch 29: Loss=0.143, Accuracy=94.92%\n",
|
"Epoch 29: Loss=0.099, Accuracy=96.86%\n",
|
||||||
"Epoch 30: Loss=0.124, Accuracy=95.87%\n",
|
"Epoch 30: Loss=0.078, Accuracy=97.66%\n",
|
||||||
"Finished Training\n"
|
"Finished Training\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -450,7 +450,7 @@
|
|||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"PATH = '../models/tutorial-cnn-modified.pth'\n",
|
"PATH = '../../models/tutorial-cnn-modified.pth'\n",
|
||||||
"torch.save(model.state_dict(), PATH)"
|
"torch.save(model.state_dict(), PATH)"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -472,7 +472,7 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Test Accuracy: 78.54%\n"
|
"Test Accuracy: 76.90%\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -502,14 +502,14 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Accuracy for class: Bicycle is 52.4%\n",
|
"Accuracy for class: Bicycle is 61.4%\n",
|
||||||
"Accuracy for class: Bus is 79.0%\n",
|
"Accuracy for class: Bus is 75.6%\n",
|
||||||
"Accuracy for class: Car is 74.9%\n",
|
"Accuracy for class: Car is 76.0%\n",
|
||||||
"Accuracy for class: Motorcycle is 85.9%\n",
|
"Accuracy for class: Motorcycle is 76.0%\n",
|
||||||
"Accuracy for class: NonVehicles is 98.7%\n",
|
"Accuracy for class: NonVehicles is 98.5%\n",
|
||||||
"Accuracy for class: Taxi is 58.2%\n",
|
"Accuracy for class: Taxi is 45.6%\n",
|
||||||
"Accuracy for class: Truck is 44.9%\n",
|
"Accuracy for class: Truck is 38.0%\n",
|
||||||
"Accuracy for class: Van is 29.8%\n"
|
"Accuracy for class: Van is 31.6%\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
"source": [
|
"source": [
|
||||||
"import os\n",
|
"import os\n",
|
||||||
"\n",
|
"\n",
|
||||||
"data_dir = '../data/raw/vehicle_classification'\n",
|
"data_dir = '../../data/raw/vehicle_classification'\n",
|
||||||
"\n",
|
"\n",
|
||||||
"for class_name in os.listdir(data_dir):\n",
|
"for class_name in os.listdir(data_dir):\n",
|
||||||
" class_path = os.path.join(data_dir, class_name)\n",
|
" class_path = os.path.join(data_dir, class_name)\n",
|
||||||
@@ -378,36 +378,36 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Epoch 1: Loss=1.337, Accuracy=56.65%\n",
|
"Epoch 1: Loss=1.301, Accuracy=56.17%\n",
|
||||||
"Epoch 2: Loss=0.965, Accuracy=66.88%\n",
|
"Epoch 2: Loss=1.014, Accuracy=64.94%\n",
|
||||||
"Epoch 3: Loss=0.870, Accuracy=69.80%\n",
|
"Epoch 3: Loss=0.933, Accuracy=67.15%\n",
|
||||||
"Epoch 4: Loss=0.789, Accuracy=72.31%\n",
|
"Epoch 4: Loss=0.858, Accuracy=69.63%\n",
|
||||||
"Epoch 5: Loss=0.746, Accuracy=73.78%\n",
|
"Epoch 5: Loss=0.783, Accuracy=72.12%\n",
|
||||||
"Epoch 6: Loss=0.692, Accuracy=75.63%\n",
|
"Epoch 6: Loss=0.749, Accuracy=73.16%\n",
|
||||||
"Epoch 7: Loss=0.659, Accuracy=76.80%\n",
|
"Epoch 7: Loss=0.695, Accuracy=75.33%\n",
|
||||||
"Epoch 8: Loss=0.624, Accuracy=77.99%\n",
|
"Epoch 8: Loss=0.662, Accuracy=76.60%\n",
|
||||||
"Epoch 9: Loss=0.608, Accuracy=78.58%\n",
|
"Epoch 9: Loss=0.634, Accuracy=77.59%\n",
|
||||||
"Epoch 10: Loss=0.566, Accuracy=80.22%\n",
|
"Epoch 10: Loss=0.618, Accuracy=78.29%\n",
|
||||||
"Epoch 11: Loss=0.540, Accuracy=80.91%\n",
|
"Epoch 11: Loss=0.586, Accuracy=79.37%\n",
|
||||||
"Epoch 12: Loss=0.517, Accuracy=81.71%\n",
|
"Epoch 12: Loss=0.554, Accuracy=80.26%\n",
|
||||||
"Epoch 13: Loss=0.495, Accuracy=82.49%\n",
|
"Epoch 13: Loss=0.538, Accuracy=81.11%\n",
|
||||||
"Epoch 14: Loss=0.460, Accuracy=84.00%\n",
|
"Epoch 14: Loss=0.507, Accuracy=82.21%\n",
|
||||||
"Epoch 15: Loss=0.436, Accuracy=84.83%\n",
|
"Epoch 15: Loss=0.489, Accuracy=82.95%\n",
|
||||||
"Epoch 16: Loss=0.405, Accuracy=85.72%\n",
|
"Epoch 16: Loss=0.462, Accuracy=83.55%\n",
|
||||||
"Epoch 17: Loss=0.380, Accuracy=86.55%\n",
|
"Epoch 17: Loss=0.435, Accuracy=84.84%\n",
|
||||||
"Epoch 18: Loss=0.348, Accuracy=87.83%\n",
|
"Epoch 18: Loss=0.412, Accuracy=85.40%\n",
|
||||||
"Epoch 19: Loss=0.322, Accuracy=88.65%\n",
|
"Epoch 19: Loss=0.390, Accuracy=86.27%\n",
|
||||||
"Epoch 20: Loss=0.294, Accuracy=89.97%\n",
|
"Epoch 20: Loss=0.364, Accuracy=87.19%\n",
|
||||||
"Epoch 21: Loss=0.265, Accuracy=90.71%\n",
|
"Epoch 21: Loss=0.348, Accuracy=87.81%\n",
|
||||||
"Epoch 22: Loss=0.233, Accuracy=91.95%\n",
|
"Epoch 22: Loss=0.305, Accuracy=89.40%\n",
|
||||||
"Epoch 23: Loss=0.210, Accuracy=92.85%\n",
|
"Epoch 23: Loss=0.279, Accuracy=90.41%\n",
|
||||||
"Epoch 24: Loss=0.184, Accuracy=93.87%\n",
|
"Epoch 24: Loss=0.268, Accuracy=90.56%\n",
|
||||||
"Epoch 25: Loss=0.163, Accuracy=94.46%\n",
|
"Epoch 25: Loss=0.227, Accuracy=92.43%\n",
|
||||||
"Epoch 26: Loss=0.137, Accuracy=95.61%\n",
|
"Epoch 26: Loss=0.209, Accuracy=92.78%\n",
|
||||||
"Epoch 27: Loss=0.118, Accuracy=96.28%\n",
|
"Epoch 27: Loss=0.181, Accuracy=94.17%\n",
|
||||||
"Epoch 28: Loss=0.096, Accuracy=97.20%\n",
|
"Epoch 28: Loss=0.173, Accuracy=94.14%\n",
|
||||||
"Epoch 29: Loss=0.080, Accuracy=97.70%\n",
|
"Epoch 29: Loss=0.140, Accuracy=95.50%\n",
|
||||||
"Epoch 30: Loss=0.066, Accuracy=98.04%\n",
|
"Epoch 30: Loss=0.126, Accuracy=95.96%\n",
|
||||||
"Finished Training\n"
|
"Finished Training\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -450,7 +450,7 @@
|
|||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"PATH = '../models/adam-optimized.pth'\n",
|
"PATH = '../../models/adam-optimized.pth'\n",
|
||||||
"torch.save(model.state_dict(), PATH)"
|
"torch.save(model.state_dict(), PATH)"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -472,7 +472,7 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Test Accuracy: 75.68%\n"
|
"Test Accuracy: 76.50%\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -502,14 +502,14 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Accuracy for class: Bicycle is 68.8%\n",
|
"Accuracy for class: Bicycle is 66.5%\n",
|
||||||
"Accuracy for class: Bus is 76.1%\n",
|
"Accuracy for class: Bus is 68.0%\n",
|
||||||
"Accuracy for class: Car is 66.5%\n",
|
"Accuracy for class: Car is 73.8%\n",
|
||||||
"Accuracy for class: Motorcycle is 78.4%\n",
|
"Accuracy for class: Motorcycle is 77.1%\n",
|
||||||
"Accuracy for class: NonVehicles is 98.5%\n",
|
"Accuracy for class: NonVehicles is 99.0%\n",
|
||||||
"Accuracy for class: Taxi is 42.6%\n",
|
"Accuracy for class: Taxi is 41.3%\n",
|
||||||
"Accuracy for class: Truck is 41.2%\n",
|
"Accuracy for class: Truck is 43.8%\n",
|
||||||
"Accuracy for class: Van is 39.9%\n"
|
"Accuracy for class: Van is 23.6%\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
"source": [
|
"source": [
|
||||||
"import os\n",
|
"import os\n",
|
||||||
"\n",
|
"\n",
|
||||||
"data_dir = '../data/raw/vehicle_classification'\n",
|
"data_dir = '../../data/raw/vehicle_classification'\n",
|
||||||
"\n",
|
"\n",
|
||||||
"for class_name in os.listdir(data_dir):\n",
|
"for class_name in os.listdir(data_dir):\n",
|
||||||
" class_path = os.path.join(data_dir, class_name)\n",
|
" class_path = os.path.join(data_dir, class_name)\n",
|
||||||
@@ -418,36 +418,36 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Epoch 1: Loss=1.455, Accuracy=59.60%\n",
|
"Epoch 1: Loss=1.427, Accuracy=61.06%\n",
|
||||||
"Epoch 2: Loss=0.872, Accuracy=69.47%\n",
|
"Epoch 2: Loss=0.814, Accuracy=71.39%\n",
|
||||||
"Epoch 3: Loss=0.748, Accuracy=73.57%\n",
|
"Epoch 3: Loss=0.709, Accuracy=74.82%\n",
|
||||||
"Epoch 4: Loss=0.669, Accuracy=76.44%\n",
|
"Epoch 4: Loss=0.645, Accuracy=77.18%\n",
|
||||||
"Epoch 5: Loss=0.613, Accuracy=78.60%\n",
|
"Epoch 5: Loss=0.597, Accuracy=79.08%\n",
|
||||||
"Epoch 6: Loss=0.575, Accuracy=79.73%\n",
|
"Epoch 6: Loss=0.564, Accuracy=80.10%\n",
|
||||||
"Epoch 7: Loss=0.539, Accuracy=80.91%\n",
|
"Epoch 7: Loss=0.529, Accuracy=81.31%\n",
|
||||||
"Epoch 8: Loss=0.507, Accuracy=82.19%\n",
|
"Epoch 8: Loss=0.500, Accuracy=82.12%\n",
|
||||||
"Epoch 9: Loss=0.483, Accuracy=82.79%\n",
|
"Epoch 9: Loss=0.468, Accuracy=83.23%\n",
|
||||||
"Epoch 10: Loss=0.461, Accuracy=83.69%\n",
|
"Epoch 10: Loss=0.451, Accuracy=84.01%\n",
|
||||||
"Epoch 11: Loss=0.439, Accuracy=84.35%\n",
|
"Epoch 11: Loss=0.430, Accuracy=84.79%\n",
|
||||||
"Epoch 12: Loss=0.409, Accuracy=85.46%\n",
|
"Epoch 12: Loss=0.423, Accuracy=84.93%\n",
|
||||||
"Epoch 13: Loss=0.396, Accuracy=85.98%\n",
|
"Epoch 13: Loss=0.385, Accuracy=86.47%\n",
|
||||||
"Epoch 14: Loss=0.369, Accuracy=86.39%\n",
|
"Epoch 14: Loss=0.368, Accuracy=86.48%\n",
|
||||||
"Epoch 15: Loss=0.356, Accuracy=87.00%\n",
|
"Epoch 15: Loss=0.346, Accuracy=87.31%\n",
|
||||||
"Epoch 16: Loss=0.351, Accuracy=87.15%\n",
|
"Epoch 16: Loss=0.341, Accuracy=87.57%\n",
|
||||||
"Epoch 17: Loss=0.330, Accuracy=88.06%\n",
|
"Epoch 17: Loss=0.310, Accuracy=89.02%\n",
|
||||||
"Epoch 18: Loss=0.307, Accuracy=88.95%\n",
|
"Epoch 18: Loss=0.303, Accuracy=89.11%\n",
|
||||||
"Epoch 19: Loss=0.286, Accuracy=89.57%\n",
|
"Epoch 19: Loss=0.274, Accuracy=89.85%\n",
|
||||||
"Epoch 20: Loss=0.253, Accuracy=90.44%\n",
|
"Epoch 20: Loss=0.258, Accuracy=90.29%\n",
|
||||||
"Epoch 21: Loss=0.244, Accuracy=91.00%\n",
|
"Epoch 21: Loss=0.246, Accuracy=90.69%\n",
|
||||||
"Epoch 22: Loss=0.233, Accuracy=91.22%\n",
|
"Epoch 22: Loss=0.239, Accuracy=91.06%\n",
|
||||||
"Epoch 23: Loss=0.225, Accuracy=91.56%\n",
|
"Epoch 23: Loss=0.227, Accuracy=91.57%\n",
|
||||||
"Epoch 24: Loss=0.201, Accuracy=92.63%\n",
|
"Epoch 24: Loss=0.207, Accuracy=92.31%\n",
|
||||||
"Epoch 25: Loss=0.198, Accuracy=92.55%\n",
|
"Epoch 25: Loss=0.191, Accuracy=92.94%\n",
|
||||||
"Epoch 26: Loss=0.178, Accuracy=93.46%\n",
|
"Epoch 26: Loss=0.178, Accuracy=93.24%\n",
|
||||||
"Epoch 27: Loss=0.169, Accuracy=93.60%\n",
|
"Epoch 27: Loss=0.163, Accuracy=93.96%\n",
|
||||||
"Epoch 28: Loss=0.149, Accuracy=94.44%\n",
|
"Epoch 28: Loss=0.147, Accuracy=94.67%\n",
|
||||||
"Epoch 29: Loss=0.153, Accuracy=94.34%\n",
|
"Epoch 29: Loss=0.150, Accuracy=94.36%\n",
|
||||||
"Epoch 30: Loss=0.135, Accuracy=95.05%\n",
|
"Epoch 30: Loss=0.130, Accuracy=95.14%\n",
|
||||||
"Finished Training\n"
|
"Finished Training\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -490,7 +490,7 @@
|
|||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"PATH = '../models/batch-norm-dropout.pth'\n",
|
"PATH = '../../models/batch-norm-dropout.pth'\n",
|
||||||
"torch.save(model.state_dict(), PATH)"
|
"torch.save(model.state_dict(), PATH)"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -512,7 +512,7 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Test Accuracy: 83.30%\n"
|
"Test Accuracy: 82.26%\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -542,14 +542,14 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Accuracy for class: Bicycle is 72.2%\n",
|
"Accuracy for class: Bicycle is 72.7%\n",
|
||||||
"Accuracy for class: Bus is 83.6%\n",
|
"Accuracy for class: Bus is 81.5%\n",
|
||||||
"Accuracy for class: Car is 82.9%\n",
|
"Accuracy for class: Car is 78.2%\n",
|
||||||
"Accuracy for class: Motorcycle is 84.2%\n",
|
"Accuracy for class: Motorcycle is 82.6%\n",
|
||||||
"Accuracy for class: NonVehicles is 99.6%\n",
|
"Accuracy for class: NonVehicles is 100.0%\n",
|
||||||
"Accuracy for class: Taxi is 52.5%\n",
|
"Accuracy for class: Taxi is 53.2%\n",
|
||||||
"Accuracy for class: Truck is 48.5%\n",
|
"Accuracy for class: Truck is 52.9%\n",
|
||||||
"Accuracy for class: Van is 45.0%\n"
|
"Accuracy for class: Van is 41.8%\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
"cells": [
|
"cells": [
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 1,
|
"execution_count": 12,
|
||||||
"id": "7a37220a",
|
"id": "7a37220a",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -20,7 +20,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 2,
|
"execution_count": 13,
|
||||||
"id": "d318d1f0",
|
"id": "d318d1f0",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -42,7 +42,7 @@
|
|||||||
"source": [
|
"source": [
|
||||||
"import os\n",
|
"import os\n",
|
||||||
"\n",
|
"\n",
|
||||||
"data_dir = '../data/raw/vehicle_classification'\n",
|
"data_dir = '../../data/raw/vehicle_classification'\n",
|
||||||
"\n",
|
"\n",
|
||||||
"for class_name in os.listdir(data_dir):\n",
|
"for class_name in os.listdir(data_dir):\n",
|
||||||
" class_path = os.path.join(data_dir, class_name)\n",
|
" class_path = os.path.join(data_dir, class_name)\n",
|
||||||
@@ -61,7 +61,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 3,
|
"execution_count": 14,
|
||||||
"id": "5604ace3",
|
"id": "5604ace3",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -110,7 +110,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 4,
|
"execution_count": 15,
|
||||||
"id": "3cedd586",
|
"id": "3cedd586",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -150,7 +150,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 5,
|
"execution_count": 16,
|
||||||
"id": "8f556b22",
|
"id": "8f556b22",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -184,7 +184,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 6,
|
"execution_count": 17,
|
||||||
"id": "37793c77",
|
"id": "37793c77",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -222,7 +222,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 7,
|
"execution_count": 18,
|
||||||
"id": "f68c1a25",
|
"id": "f68c1a25",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -279,7 +279,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 8,
|
"execution_count": 19,
|
||||||
"id": "e1539eaa",
|
"id": "e1539eaa",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -311,7 +311,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 9,
|
"execution_count": 20,
|
||||||
"id": "d1b7d9ca",
|
"id": "d1b7d9ca",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -409,7 +409,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 10,
|
"execution_count": 21,
|
||||||
"id": "54d11a04",
|
"id": "54d11a04",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
@@ -432,7 +432,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 11,
|
"execution_count": 22,
|
||||||
"id": "374d0590",
|
"id": "374d0590",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -440,36 +440,36 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Epoch 1: Loss=1.405, Accuracy=59.91%\n",
|
"Epoch 1: Loss=1.515, Accuracy=58.09%\n",
|
||||||
"Epoch 2: Loss=0.880, Accuracy=69.16%\n",
|
"Epoch 2: Loss=0.901, Accuracy=68.38%\n",
|
||||||
"Epoch 3: Loss=0.770, Accuracy=72.99%\n",
|
"Epoch 3: Loss=0.786, Accuracy=72.40%\n",
|
||||||
"Epoch 4: Loss=0.714, Accuracy=75.05%\n",
|
"Epoch 4: Loss=0.723, Accuracy=74.59%\n",
|
||||||
"Epoch 5: Loss=0.660, Accuracy=76.92%\n",
|
"Epoch 5: Loss=0.665, Accuracy=76.57%\n",
|
||||||
"Epoch 6: Loss=0.629, Accuracy=78.41%\n",
|
"Epoch 6: Loss=0.634, Accuracy=77.73%\n",
|
||||||
"Epoch 7: Loss=0.596, Accuracy=79.03%\n",
|
"Epoch 7: Loss=0.602, Accuracy=78.87%\n",
|
||||||
"Epoch 8: Loss=0.588, Accuracy=79.40%\n",
|
"Epoch 8: Loss=0.593, Accuracy=79.30%\n",
|
||||||
"Epoch 9: Loss=0.556, Accuracy=80.52%\n",
|
"Epoch 9: Loss=0.580, Accuracy=79.91%\n",
|
||||||
"Epoch 10: Loss=0.543, Accuracy=81.06%\n",
|
"Epoch 10: Loss=0.548, Accuracy=80.70%\n",
|
||||||
"Epoch 11: Loss=0.520, Accuracy=81.85%\n",
|
"Epoch 11: Loss=0.535, Accuracy=80.95%\n",
|
||||||
"Epoch 12: Loss=0.513, Accuracy=81.94%\n",
|
"Epoch 12: Loss=0.517, Accuracy=81.76%\n",
|
||||||
"Epoch 13: Loss=0.501, Accuracy=82.56%\n",
|
"Epoch 13: Loss=0.521, Accuracy=81.70%\n",
|
||||||
"Epoch 14: Loss=0.485, Accuracy=82.90%\n",
|
"Epoch 14: Loss=0.499, Accuracy=82.46%\n",
|
||||||
"Epoch 15: Loss=0.481, Accuracy=82.92%\n",
|
"Epoch 15: Loss=0.488, Accuracy=82.87%\n",
|
||||||
"Epoch 16: Loss=0.469, Accuracy=83.50%\n",
|
"Epoch 16: Loss=0.483, Accuracy=83.06%\n",
|
||||||
"Epoch 17: Loss=0.459, Accuracy=84.02%\n",
|
"Epoch 17: Loss=0.480, Accuracy=82.94%\n",
|
||||||
"Epoch 18: Loss=0.453, Accuracy=83.94%\n",
|
"Epoch 18: Loss=0.465, Accuracy=83.34%\n",
|
||||||
"Epoch 19: Loss=0.445, Accuracy=84.24%\n",
|
"Epoch 19: Loss=0.464, Accuracy=83.39%\n",
|
||||||
"Epoch 20: Loss=0.434, Accuracy=84.77%\n",
|
"Epoch 20: Loss=0.443, Accuracy=84.22%\n",
|
||||||
"Epoch 21: Loss=0.427, Accuracy=84.97%\n",
|
"Epoch 21: Loss=0.445, Accuracy=84.40%\n",
|
||||||
"Epoch 22: Loss=0.412, Accuracy=85.20%\n",
|
"Epoch 22: Loss=0.436, Accuracy=84.60%\n",
|
||||||
"Epoch 23: Loss=0.411, Accuracy=85.15%\n",
|
"Epoch 23: Loss=0.417, Accuracy=85.12%\n",
|
||||||
"Epoch 24: Loss=0.402, Accuracy=85.52%\n",
|
"Epoch 24: Loss=0.412, Accuracy=85.36%\n",
|
||||||
"Epoch 25: Loss=0.403, Accuracy=85.32%\n",
|
"Epoch 25: Loss=0.410, Accuracy=85.11%\n",
|
||||||
"Epoch 26: Loss=0.393, Accuracy=85.93%\n",
|
"Epoch 26: Loss=0.405, Accuracy=85.42%\n",
|
||||||
"Epoch 27: Loss=0.386, Accuracy=86.07%\n",
|
"Epoch 27: Loss=0.402, Accuracy=85.44%\n",
|
||||||
"Epoch 28: Loss=0.380, Accuracy=86.28%\n",
|
"Epoch 28: Loss=0.388, Accuracy=85.96%\n",
|
||||||
"Epoch 29: Loss=0.372, Accuracy=86.65%\n",
|
"Epoch 29: Loss=0.383, Accuracy=86.22%\n",
|
||||||
"Epoch 30: Loss=0.362, Accuracy=87.02%\n",
|
"Epoch 30: Loss=0.377, Accuracy=86.23%\n",
|
||||||
"Finished Training\n"
|
"Finished Training\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
@@ -507,12 +507,12 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 12,
|
"execution_count": 23,
|
||||||
"id": "2bf2b9a2",
|
"id": "2bf2b9a2",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [],
|
"outputs": [],
|
||||||
"source": [
|
"source": [
|
||||||
"PATH = '../models/data-augmented.pth'\n",
|
"PATH = '../../models/data-augmented.pth'\n",
|
||||||
"torch.save(model.state_dict(), PATH)"
|
"torch.save(model.state_dict(), PATH)"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -526,7 +526,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 13,
|
"execution_count": 24,
|
||||||
"id": "bc158602",
|
"id": "bc158602",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -534,7 +534,7 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Test Accuracy: 82.71%\n"
|
"Test Accuracy: 84.17%\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -556,7 +556,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"cell_type": "code",
|
"cell_type": "code",
|
||||||
"execution_count": 14,
|
"execution_count": 25,
|
||||||
"id": "8cc7ed40",
|
"id": "8cc7ed40",
|
||||||
"metadata": {},
|
"metadata": {},
|
||||||
"outputs": [
|
"outputs": [
|
||||||
@@ -564,14 +564,14 @@
|
|||||||
"name": "stdout",
|
"name": "stdout",
|
||||||
"output_type": "stream",
|
"output_type": "stream",
|
||||||
"text": [
|
"text": [
|
||||||
"Accuracy for class: Bicycle is 68.8%\n",
|
"Accuracy for class: Bicycle is 77.4%\n",
|
||||||
"Accuracy for class: Bus is 83.2%\n",
|
"Accuracy for class: Bus is 85.3%\n",
|
||||||
"Accuracy for class: Car is 78.8%\n",
|
"Accuracy for class: Car is 86.3%\n",
|
||||||
"Accuracy for class: Motorcycle is 90.5%\n",
|
"Accuracy for class: Motorcycle is 81.8%\n",
|
||||||
"Accuracy for class: NonVehicles is 99.7%\n",
|
"Accuracy for class: NonVehicles is 99.8%\n",
|
||||||
"Accuracy for class: Taxi is 49.4%\n",
|
"Accuracy for class: Taxi is 60.8%\n",
|
||||||
"Accuracy for class: Truck is 59.2%\n",
|
"Accuracy for class: Truck is 52.8%\n",
|
||||||
"Accuracy for class: Van is 40.1%\n"
|
"Accuracy for class: Van is 41.3%\n"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
@@ -1,67 +1,8 @@
|
|||||||
asttokens==3.0.1
|
torch>=2.0.0
|
||||||
comm==0.2.3
|
torchvision>=0.15.0
|
||||||
contourpy==1.3.3
|
numpy>=1.24.0
|
||||||
cuda-bindings==12.9.4
|
matplotlib>=3.7.0
|
||||||
cuda-pathfinder==1.2.2
|
Pillow>=9.0.0
|
||||||
cuda-toolkit==12.8.1
|
scikit-learn>=1.0.0
|
||||||
cycler==0.12.1
|
jupyter>=1.0.0
|
||||||
debugpy==1.8.20
|
ipykernel>=6.0.0
|
||||||
decorator==5.2.1
|
|
||||||
executing==2.2.1
|
|
||||||
filelock==3.25.2
|
|
||||||
fonttools==4.62.1
|
|
||||||
fsspec==2026.2.0
|
|
||||||
ipykernel==7.2.0
|
|
||||||
ipython==9.10.0
|
|
||||||
ipython_pygments_lexers==1.1.1
|
|
||||||
jedi==0.19.2
|
|
||||||
Jinja2==3.1.6
|
|
||||||
jupyter_client==8.8.0
|
|
||||||
jupyter_core==5.9.1
|
|
||||||
kiwisolver==1.5.0
|
|
||||||
MarkupSafe==3.0.2
|
|
||||||
matplotlib==3.10.8
|
|
||||||
matplotlib-inline==0.2.1
|
|
||||||
mpmath==1.3.0
|
|
||||||
nest-asyncio==1.6.0
|
|
||||||
networkx==3.6.1
|
|
||||||
numpy==2.4.3
|
|
||||||
nvidia-cublas-cu12==12.8.4.1
|
|
||||||
nvidia-cuda-cupti-cu12==12.8.90
|
|
||||||
nvidia-cuda-nvrtc-cu12==12.8.93
|
|
||||||
nvidia-cuda-runtime-cu12==12.8.90
|
|
||||||
nvidia-cudnn-cu12==9.20.0.48
|
|
||||||
nvidia-cufft-cu12==11.3.3.83
|
|
||||||
nvidia-cufile-cu12==1.13.1.3
|
|
||||||
nvidia-curand-cu12==10.3.9.90
|
|
||||||
nvidia-cusolver-cu12==11.7.3.90
|
|
||||||
nvidia-cusparse-cu12==12.5.8.93
|
|
||||||
nvidia-cusparselt-cu12==0.7.1
|
|
||||||
nvidia-nccl-cu12==2.29.7
|
|
||||||
nvidia-nvjitlink-cu12==12.8.93
|
|
||||||
nvidia-nvshmem-cu12==3.4.5
|
|
||||||
nvidia-nvtx-cu12==12.8.90
|
|
||||||
packaging==26.0
|
|
||||||
parso==0.8.6
|
|
||||||
pexpect==4.9.0
|
|
||||||
pillow==12.1.1
|
|
||||||
platformdirs==4.9.4
|
|
||||||
prompt_toolkit==3.0.52
|
|
||||||
psutil==7.2.2
|
|
||||||
ptyprocess==0.7.0
|
|
||||||
pure_eval==0.2.3
|
|
||||||
Pygments==2.19.2
|
|
||||||
pyparsing==3.3.2
|
|
||||||
python-dateutil==2.9.0.post0
|
|
||||||
pyzmq==27.1.0
|
|
||||||
six==1.17.0
|
|
||||||
stack-data==0.6.3
|
|
||||||
sympy==1.14.0
|
|
||||||
torch==2.12.0.dev20260318+cu128
|
|
||||||
torchaudio==2.11.0.dev20260318+cu128
|
|
||||||
torchvision==0.26.0.dev20260318+cu128
|
|
||||||
tornado==6.5.5
|
|
||||||
traitlets==5.14.3
|
|
||||||
triton==3.6.0+git9844da95
|
|
||||||
typing_extensions==4.15.0
|
|
||||||
wcwidth==0.6.0
|
|
||||||
|
|||||||
BIN
results/training_curves.png
Normal file
BIN
results/training_curves.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 60 KiB |
Reference in New Issue
Block a user