# tanluren/yolov3-channel-and-layer-pruning

yolov3 yolov4 channel and layer pruning, Knowledge Distillation 层剪枝，通道剪枝，知识蒸馏

Repository: https://github.com/tanluren/yolov3-channel-and-layer-pruning
Canonical: https://ross.abutalabs.com/products/yolov3-channel-and-layer-pruning
Language: Python
License: Apache-2.0
License Family: permissive
Last push: 2020-09-03T07:10:53+00:00

## Health v2 (maintenance only)
Score: 32/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 2487, "days_push": 2190, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1515, forks 441 (observed 2026-08-28T04:04:56.432115+00:00)

## What it is
A Python toolkit built on ultralytics/yolov3 that implements channel pruning, layer pruning, and knowledge distillation for YOLOv3/v4 (including SPP and tiny variants) object detection models. It uses BN-layer gamma coefficients for network slimming to compress model depth and width, improving inference speed on custom datasets.

## Use cases
- compress a yolov3 model for faster inference on edge devices
- prune channels from a trained yolov4 detector
- apply knowledge distillation to recover accuracy after pruning
- run sparse training to shrink BN gamma coefficients before pruning
- search for a smaller yolov3-tiny model for a custom dataset
- speed up object detection for drone imagery like visdrone

## When to choose
- you need to shrink YOLOv3/v4 detection models for deployment on resource-constrained hardware
- you want pruning plus distillation in one workflow based on darknet-style YOLO configs
- you want to compress a custom-dataset detector while keeping reasonable mAP

## When to avoid
- you use newer architectures like YOLOv5/v8 or transformer detectors
- you need actively maintained tooling - the project has not seen releases since 2020
- you want one-click compression without tuning sparse training hyperparameters

## Facets
- artifact type: library
- maturity: maintenance
- function: machine-learning, deep-learning, llm-training
- domain: computer-vision, deep-learning, machine-learning
- platform: python
- tags: yolov3, yolov4, model-compression, channel-pruning, layer-pruning, knowledge-distillation, object-detection, network-slimming, sparse-training, linux, gpu

## Member repositories
- tanluren/yolov3-channel-and-layer-pruning (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:56.432115+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:32:10.791209+00:00, confidence not recorded.
  - readme: https://github.com/tanluren/yolov3-channel-and-layer-pruning (fetched 2026-08-28T04:04:56.432115+00:00, sha cce132c1a353)
- Data as of 2026-08-30T08:39:29.467469+00:00.
