yolov8-prune-network-slimming
A network slimming-based pruning method for YOLOv8.
Science Score: 54.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
✓Academic publication links
Links to: arxiv.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (6.7%) to scientific vocabulary
Repository
A network slimming-based pruning method for YOLOv8.
Basic Info
- Host: GitHub
- Owner: ybai789
- License: agpl-3.0
- Language: Python
- Default Branch: main
- Size: 11 MB
Statistics
- Stars: 32
- Watchers: 1
- Forks: 2
- Open Issues: 6
- Releases: 0
Metadata Files
README.md
Introduction
This repository provides a pruning method for YOLOv8, leveraging the network slimming approach.
It adapts the codebase of YOLOv8 version 8.1.33 to implement this method.
For an in-depth understanding of the underlying principles, it's recommended to consult the research paper titled "Learning Efficient Convolutional Networks through Network Slimming," available at https://arxiv.org/abs/1708.06519.
This method aims at enhancing the efficiency and performance of YOLOv8 by slimming down the network, aligning with the strategies outlined in the cited paper.
Installation
Clone the repository and rename the yolov8-prune-network-slimming directory to ultralytics.
``` cd ultralytics
pip install -e . ```
Steps
Within the ultralytics directory, execute the scripts provided below.
The parameters within these Python scripts can be adjusted according to your requirements.
- Basic training
shell python train.py Sparse training
shell python train_sparsity.pyPruning
shell python prune.pyFine-tuning
shell python finetune.pyExperiments
Result of YOLOv8s pruning on PASCAL VOC Dataset
| Description | mAP50 | mAP50-95 | Params/FLOPs | | --------------------------- | ----- | -------- | ------------ | | Original | 0.864 | 0.674 | 11.1M/28.5G | | Sparse Training | 0.856 | 0.658 | 11.1M/28.5G | | 30% Pruning and Fine-tuning | 0.858 | 0.665 | 6.2M/20.4G |
Owner
- Login: ybai789
- Kind: user
- Repositories: 1
- Profile: https://github.com/ybai789
Citation (CITATION.cff)
# This CITATION.cff file was generated with https://bit.ly/cffinit
cff-version: 1.2.0
title: Ultralytics YOLO
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Glenn
family-names: Jocher
affiliation: Ultralytics
orcid: 'https://orcid.org/0000-0001-5950-6979'
- given-names: Ayush
family-names: Chaurasia
affiliation: Ultralytics
orcid: 'https://orcid.org/0000-0002-7603-6750'
- family-names: Qiu
given-names: Jing
affiliation: Ultralytics
orcid: 'https://orcid.org/0000-0003-3783-7069'
repository-code: 'https://github.com/ultralytics/ultralytics'
url: 'https://ultralytics.com'
license: AGPL-3.0
version: 8.0.0
date-released: '2023-01-10'
GitHub Events
Total
- Issues event: 2
- Watch event: 19
- Fork event: 2
Last Year
- Issues event: 2
- Watch event: 19
- Fork event: 2
Dependencies
- actions/checkout v4 composite
- actions/setup-python v5 composite
- codecov/codecov-action v4 composite
- conda-incubator/setup-miniconda v3 composite
- slackapi/slack-github-action v1.25.0 composite
- contributor-assistant/github-action v2.3.1 composite
- actions/checkout v4 composite
- github/codeql-action/analyze v3 composite
- github/codeql-action/init v3 composite
- actions/checkout v4 composite
- docker/login-action v3 composite
- docker/setup-buildx-action v3 composite
- docker/setup-qemu-action v3 composite
- nick-invision/retry v3 composite
- slackapi/slack-github-action v1.25.0 composite
- ultralytics/actions main composite
- actions/first-interaction v1 composite
- actions/checkout v4 composite
- nick-invision/retry v3 composite
- actions/checkout v4 composite
- actions/setup-python v5 composite
- slackapi/slack-github-action v1.25.0 composite
- actions/stale v9 composite
- pytorch/pytorch 2.2.0-cuda12.1-cudnn8-runtime build
- matplotlib >=3.3.0
- opencv-python >=4.6.0
- pandas >=1.1.4
- pillow >=7.1.2
- psutil *
- py-cpuinfo *
- pyyaml >=5.3.1
- requests >=2.23.0
- scipy >=1.4.1
- seaborn >=0.11.0
- thop >=0.1.1
- torch >=1.8.0
- torchvision >=0.9.0
- tqdm >=4.64.0