{"id":31944232,"url":"https://github.com/apaxphoenix/classification","last_synced_at":"2026-04-21T03:31:29.973Z","repository":{"id":316669960,"uuid":"1064371552","full_name":"ApaxPhoenix/Classification","owner":"ApaxPhoenix","description":"A  PyTorch framework for image classification covering 11 CNN architectures (ResNet, EfficientNet, MobileNet, etc.). Handles the optimization setup and training specifics for each model.","archived":false,"fork":false,"pushed_at":"2025-10-12T01:53:46.000Z","size":103,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-14T10:23:00.028Z","etag":null,"topics":["cnn","computer-vision","deep-learning","image-classification","machine-learning","neural-networks","python","pytorch","training-framework"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ApaxPhoenix.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-26T00:05:36.000Z","updated_at":"2025-10-12T01:53:49.000Z","dependencies_parsed_at":"2025-10-14T10:22:35.447Z","dependency_job_id":"c56c3b21-c916-45e5-9388-2c7b2148d2a7","html_url":"https://github.com/ApaxPhoenix/Classification","commit_stats":null,"previous_names":["apaxphoenix/pytorch-classification","apaxphoenix/classification"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ApaxPhoenix/Classification","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ApaxPhoenix%2FClassification","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ApaxPhoenix%2FClassification/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ApaxPhoenix%2FClassification/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ApaxPhoenix%2FClassification/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ApaxPhoenix","download_url":"https://codeload.github.com/ApaxPhoenix/Classification/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ApaxPhoenix%2FClassification/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32075220,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-21T02:38:07.213Z","status":"ssl_error","status_checked_at":"2026-04-21T02:38:06.559Z","response_time":128,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cnn","computer-vision","deep-learning","image-classification","machine-learning","neural-networks","python","pytorch","training-framework"],"created_at":"2025-10-14T10:22:26.258Z","updated_at":"2026-04-21T03:31:29.968Z","avatar_url":"https://github.com/ApaxPhoenix.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Image Classification Training Framework\n\nA PyTorch framework for training image classification models. This repo gives you a single interface to work with eleven different classification architectures, handling the optimization and training specifics for each one.\n\n## Supported Models\n\n- **AlexNet** - The CNN that kicked off the deep learning era\n- **ResNet18/50** - Residual networks with skip connections\n- **VGG11/16** - Deep networks with small convolutional filters\n- **MobileNetV3 Large/Small** - Efficient architectures built for mobile\n- **EfficientNet B0/B3** - Compound scaled networks balancing depth, width, and resolution\n- **DenseNet121/169** - Dense connectivity for better feature reuse\n\n## What You Get\n\n- Single pipeline for all eleven architectures\n- Transfer learning with pre-trained ImageNet weights\n- Separate log files for each component (trust me, this helps)\n- Configure everything from the command line\n- Auto-saves checkpoints and runs validation\n- Handles any image size and custom datasets\n\n## Setup\n\nInstall the dependencies:\n\n```bash\npip install torch torchvision numpy\n```\n\n## How to Use\n\n### Quick Start\n\n```bash\npython main.py \\\n  --module resnet50 \\\n  --classes 10 \\\n  --training-path ./data/train \\\n  --validation-path ./data/val \\\n  --output ./models/model.pt\n```\n\n### Command Line Arguments\n\n#### Model Setup\n- `--module` - Which architecture to use (required)\n- `--classes` - Number of classes (required)\n- `--channels` - Input channels, typically 3 for RGB\n- `--weights` - Use pre-trained weights (enabled by default)\n\n#### Data Paths\n- `--training-path` - Where your training data lives (required)\n- `--validation-path` - Where your validation data lives (required)\n- `--testing-path` - Where your test data lives\n- `--weights-path` - Path to checkpoint if resuming training\n\n#### Training Parameters\n- `--epochs` - How long to train (default: 25)\n- `--batch-size` - Samples per batch (default: 64)\n- `--learning-rate` - Initial learning rate (default: 0.0001)\n- `--dimensions` - Image size as width height (default: 64 64)\n- `--workers` - Number of data loading threads (default: 4)\n- `--seed` - Random seed for reproducibility\n\n#### Advanced Options\n- `--weight-decay` - L2 regularization strength\n- `--gamma` - Learning rate decay factor\n- `--momentum` - Momentum for SGD\n\n## Logging\n\nLogs get written to four separate files:\n\n- `main.log` - High-level program flow\n- `loader.log` - Data loading operations\n- `modules.log` - Model-specific operations\n- `trainer.log` - Training progress and metrics\n\n## Structure\n\n```\n.\n├── main.py           # Entry point\n├── trainer.py        # Training logic\n├── modules.py        # All model implementations\n└── logs/            # Where logs end up\n```\n\n## Requirements\n\n- Python 3.7+\n- PyTorch 1.8+\n- torchvision\n- NumPy\n\n## Notes\n\nPre-trained weights load automatically when you have them. They're especially useful when you're working with smaller datasets.\n\nThe defaults work well enough to get started, but you'll want to tune them based on your specific dataset and hardware.\n\n## License\n\nThis project is licensed under the GNU General Public License v3.0. See the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapaxphoenix%2Fclassification","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapaxphoenix%2Fclassification","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapaxphoenix%2Fclassification/lists"}