# PP-HGNet

**Thể loại:** CNN · **Code:** [`timm/models/hgnet.py`](https://github.com/huggingface/pytorch-image-models/blob/main/timm/models/hgnet.py) · **Kiến trúc:** 10 · **Trọng số tiền huấn luyện:** 19 (19 có kết quả ImageNet-1k)

PP-HGNet và PP-HGNetV2 (High Performance GPU Net) từ PaddleClas, được xây dựng từ các khối HG tổng hợp đầu ra của một chuỗi các phép tích chập. Trọng số `ssld` được huấn luyện bằng phương pháp chưng cất SSLD của PaddleClas.

## Bài báo

* [Vượt ra ngoài tự giám sát: Một phương án thay thế hiệu quả và đơn giản cho việc chưng cất mạng để cải thiện các bộ khung](https://arxiv.org/abs/2103.05959)

## Cách sử dụng

Xem [Quickstart](../quickstart) để tải trọng số được huấn luyện trước, tiền xử lý ảnh và tinh chỉnh, và [Feature Extraction](../feature_extraction) để sử dụng các mô hình làm bộ xương sống.

```py
>>> import timm
>>> model = timm.create_model('hgnet_small.paddle_in1k', pretrained=True)
>>> data_config = timm.data.resolve_model_data_config(model)
```

## Hỗ trợ API mô hình

| Tính năng | `HighPerfGpuNet` |
|---|---|
| [bản đồ đặc trưng `features_only=True`](../model_api#intermediate-features) | ✓ (các bước nhảy 4, 8, 16, 32) |
| [`forward_intermediates()`](../model_api#intermediate-features) | ✓ |
| [`prune_intermediate_layers()`](../model_api#intermediate-features) | ✓ |
| [Bất kỳ kích thước đầu vào nào, không cần thay đổi](../model_api#input-size) | ✓ |
| [`set_input_size()`](../model_api#input-size) | – |
| [`dynamic_img_size=True`](../model_api#input-size) | – |
| [`set_grad_checkpointing()`](../model_api#training-hooks) | ✓ |
| [Suy giảm LR theo lớp (`group_matcher()`)](../model_api#training-hooks) | ✓ |
| [`reset_classifier()`](../model_api#classifier) | ✓ |

✓ được hỗ trợ, ✓ (vuông) chỉ hoạt động với kích thước vuông, ✗ không được hỗ trợ, – không cần thiết (mô hình đã chấp nhận mọi kích thước đầu vào). Được kiểm tra bằng cách chạy từng tính năng trên một mô hình được khởi tạo ngẫu nhiên (`HighPerfGpuNet` với `hgnetv2_b0` ở 224), các kiến trúc khác cùng lớp được kỳ vọng sẽ hoạt động tương tự. Xem trang [Model API](../model_api) để biết chi tiết.

## Kiến trúc

| Kiến trúc | Số tham số (M) | GMACs | Kích thước đầu vào | Trọng số được huấn luyện trước |
|---|---:|---:|---:|---:|
| `hgnet_base` | 71.58 | 25.14 | 224 | 1 |
| `hgnet_small` | 24.36 | 8.53 | 224 | 2 |
| `hgnet_tiny` | 14.74 | 4.54 | 224 | 2 |
| `hgnetv2_b0` | 6.00 | 0.33 | 224 | 2 |
| `hgnetv2_b1` | 6.34 | 0.49 | 224 | 2 |
| `hgnetv2_b2` | 11.22 | 1.15 | 224 | 2 |
| `hgnetv2_b3` | 16.29 | 1.78 | 224 | 2 |
| `hgnetv2_b4` | 19.80 | 2.75 | 224 | 2 |
| `hgnetv2_b5` | 39.57 | 6.56 | 224 | 2 |
| `hgnetv2_b6` | 75.26 | 16.88 | 224 | 2 |

GMACs và số lượng tham số được tính cho kích thước đầu vào và bộ phân loại mặc định của mỗi kiến trúc, từ [kết quả benchmark](https://github.com/huggingface/pytorch-image-models/tree/main/results).

## Trọng số được huấn luyện trước

Top-1 là độ chính xác kiểm tra trên ImageNet-1k từ [`results-imagenet.csv`](https://github.com/huggingface/pytorch-image-models/blob/main/results/results-imagenet.csv) ở kích thước eval được liệt kê, - nếu trọng số không có kết quả ImageNet-1k (ví dụ: trọng số pretraining hoặc image-text). Classes là kích thước của bộ phân loại được huấn luyện trước, không có đối với các trọng số không có bộ phân loại.

Trọng số được nhóm theo nguồn: bài báo hoặc nguồn gốc được nêu trong cấu hình tiền huấn luyện, nếu không thì một tổ chức Hub khác với `timm`, nếu không thì phần đầu của thẻ tiền huấn luyện (`architecture.tag`). Các nguồn chỉ có một trọng số được liệt kê dưới mục khác.

### các thẻ `ssld`

| Trọng số | Kích thước đầu vào | Top-1 (%) | Kích thước đánh giá | Các lớp | Giấy phép | Hub |
|---|---:|---:|---:|---:|---|---|
| `hgnet_base.ssld_in1k` | 224 (test 288) | 85.488 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnet_base.ssld_in1k) |
| `hgnet_small.ssld_in1k` | 224 (test 288) | 84.368 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnet_small.ssld_in1k) |
| `hgnet_tiny.ssld_in1k` | 224 (test 288) | 82.528 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnet_tiny.ssld_in1k) |
| `hgnetv2_b0.ssld_stage1_in22k_in1k` | 224 (test 288) | 78.038 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b0.ssld_stage1_in22k_in1k) |
| `hgnetv2_b0.ssld_stage2_ft_in1k` | 224 (test 288) | 78.590 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b0.ssld_stage2_ft_in1k) |
| `hgnetv2_b1.ssld_stage1_in22k_in1k` | 224 (test 288) | 79.050 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b1.ssld_stage1_in22k_in1k) |
| `hgnetv2_b1.ssld_stage2_ft_in1k` | 224 (test 288) | 79.916 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b1.ssld_stage2_ft_in1k) |
| `hgnetv2_b2.ssld_stage1_in22k_in1k` | 224 (test 288) | 81.456 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b2.ssld_stage1_in22k_in1k) |
| `hgnetv2_b2.ssld_stage2_ft_in1k` | 224 (test 288) | 82.362 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b2.ssld_stage2_ft_in1k) |
| `hgnetv2_b3.ssld_stage1_in22k_in1k` | 224 (test 288) | 83.118 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b3.ssld_stage1_in22k_in1k) |
| `hgnetv2_b3.ssld_stage2_ft_in1k` | 224 (test 288) | 83.588 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b3.ssld_stage2_ft_in1k) |
| `hgnetv2_b4.ssld_stage1_in22k_in1k` | 224 (test 288) | 83.450 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b4.ssld_stage1_in22k_in1k) |
| `hgnetv2_b4.ssld_stage2_ft_in1k` | 224 (test 288) | 83.952 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b4.ssld_stage2_ft_in1k) |
| `hgnetv2_b5.ssld_stage1_in22k_in1k` | 224 (test 288) | 84.930 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b5.ssld_stage1_in22k_in1k) |
| `hgnetv2_b5.ssld_stage2_ft_in1k` | 224 (test 288) | 85.158 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b5.ssld_stage2_ft_in1k) |
| `hgnetv2_b6.ssld_stage1_in22k_in1k` | 224 (test 288) | 86.300 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b6.ssld_stage1_in22k_in1k) |
| `hgnetv2_b6.ssld_stage2_ft_in1k` | 224 (test 288) | 86.380 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnetv2_b6.ssld_stage2_ft_in1k) |

### các thẻ `paddle`

| Trọng số | Kích thước đầu vào | Top-1 (%) | Kích thước đánh giá | Các lớp | Giấy phép | Hub |
|---|---:|---:|---:|---:|---|---|
| `hgnet_small.paddle_in1k` | 224 (test 288) | 82.222 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnet_small.paddle_in1k) |
| `hgnet_tiny.paddle_in1k` | 224 (test 288) | 80.644 | 288 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hgnet_tiny.paddle_in1k) |

