# HRNet

**カテゴリ:** CNN · **コード:** [`timm/models/hrnet.py`](https://github.com/huggingface/pytorch-image-models/blob/main/timm/models/hrnet.py) · **アーキテクチャ:** 11 · **事前学習済み重み:** 14 (ImageNet-1kの結果付き14)

High-Resolution Networksは、ネットワーク全体にわたって高解像度ブランチを保持し、並列に低解像度ブランチを追加して、それらの間で繰り返し情報を交換します。

## 論文

* [視覚認識のための深層高解像度表現学習](https://arxiv.org/abs/1908.07919)
* [自己教師学習を超えて: バックボーンを改善するためのシンプルかつ効果的なネットワーク蒸留の代替手法](https://arxiv.org/abs/2103.05959)

## 使用方法

事前学習済み重みの読み込み、画像の前処理、ファインチューニングについては[クイックスタート](../quickstart)を、モデルをバックボーンとして使用する方法については[特徴抽出](../feature_extraction)を参照してください。

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

## モデルAPIのサポート

| 機能 | `HighResolutionNet` |
|---|---|
| [`features_only=True` 特徴マップ](../model_api#intermediate-features) | ✓ (strides 2, 4, 8, 16, 32) |
| [`forward_intermediates()`](../model_api#intermediate-features) | ✓ |
| [`prune_intermediate_layers()`](../model_api#intermediate-features) | ✓ |
| [入力サイズは任意で、変更は不要です](../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) | ✗ |
| [レイヤーごとのLR減衰（`group_matcher()`）](../model_api#training-hooks) | ✓ |
| [`reset_classifier()`](../model_api#classifier) | ✓ |

✓ 対応、✓ (square) 正方形サイズのみ動作、✗ 非対応、– 不要（モデルはすでに任意の入力サイズを受け入れる）。各機能をランダム初期化されたモデル（`HighResolutionNet`、`hrnet_w18_small`、224）で実行して確認しました。同じクラスの他のアーキテクチャも同様に動作すると考えられます。詳細は[Model API](../model_api)ページを参照してください。

## アーキテクチャ

| アーキテクチャ | パラメータ数 (M) | GMACs | 入力サイズ | 事前学習済み重み |
|---|---:|---:|---:|---:|
| `hrnet_w18` | 21.30 | 4.32 | 224 | 2 |
| `hrnet_w18_small` | 13.19 | 1.61 | 224 | 2 |
| `hrnet_w18_small_v2` | 15.60 | 2.62 | 224 | 2 |
| `hrnet_w18_ssld` | 21.30 | 4.32 | 224 | 1 |
| `hrnet_w30` | 37.71 | 8.15 | 224 | 1 |
| `hrnet_w32` | 41.23 | 8.97 | 224 | 1 |
| `hrnet_w40` | 57.56 | 12.75 | 224 | 1 |
| `hrnet_w44` | 67.06 | 14.94 | 224 | 1 |
| `hrnet_w48` | 77.47 | 17.34 | 224 | 1 |
| `hrnet_w48_ssld` | 77.47 | 17.34 | 224 | 1 |
| `hrnet_w64` | 128.06 | 28.97 | 224 | 1 |

GMACsとパラメータ数は、各アーキテクチャのデフォルトの入力サイズと分類器に基づいており、[ベンチマーク結果](https://github.com/huggingface/pytorch-image-models/tree/main/results)から得られたものです。

## 事前学習済み重み

Top-1 は、[`results-imagenet.csv`](https://github.com/huggingface/pytorch-image-models/blob/main/results/results-imagenet.csv) に記載された評価サイズでの ImageNet-1k 検証精度です。- は、ImageNet-1k の結果がない重み（例: プリトレーニング用または画像-テキスト用重み）を示します。Classes は事前学習済み分類器のサイズで、分類器を持たない重みには該当しません。

重みはソースごとにグループ化されます。ソースは、事前学習設定で指定されている論文または出典、それ以外の場合は`timm`以外の Hub 組織、さらにそれ以外の場合は事前学習タグの最初の部分（`architecture.tag`）です。重みが 1 つしかないソースは other にリストされます。

### `ms`タグ

| 重み | 入力サイズ | Top-1 (%) | 評価サイズ | クラス | ライセンス | Hub |
|---|---:|---:|---:|---:|---|---|
| `hrnet_w18.ms_aug_in1k` | 224 | 78.110 | 224 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w18.ms_aug_in1k) |
| `hrnet_w18.ms_in1k` | 224 | 76.770 | 224 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w18.ms_in1k) |
| `hrnet_w18_small.ms_in1k` | 224 | 72.340 | 224 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w18_small.ms_in1k) |
| `hrnet_w18_small_v2.ms_in1k` | 224 | 75.094 | 224 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w18_small_v2.ms_in1k) |
| `hrnet_w30.ms_in1k` | 224 | 78.202 | 224 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w30.ms_in1k) |
| `hrnet_w32.ms_in1k` | 224 | 78.452 | 224 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w32.ms_in1k) |
| `hrnet_w40.ms_in1k` | 224 | 78.928 | 224 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w40.ms_in1k) |
| `hrnet_w44.ms_in1k` | 224 | 78.890 | 224 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w44.ms_in1k) |
| `hrnet_w48.ms_in1k` | 224 | 79.328 | 224 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w48.ms_in1k) |
| `hrnet_w64.ms_in1k` | 224 | 79.458 | 224 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w64.ms_in1k) |

### `gluon`タグ

| 重み | 入力サイズ | Top-1 (%) | 評価サイズ | クラス | ライセンス | Hub |
|---|---:|---:|---:|---:|---|---|
| `hrnet_w18_small.gluon_in1k` | 224 | 73.934 | 224 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hrnet_w18_small.gluon_in1k) |
| `hrnet_w18_small_v2.gluon_in1k` | 224 | 78.202 | 224 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/hrnet_w18_small_v2.gluon_in1k) |

### `paddle` タグ

| 重み | 入力サイズ | Top-1 (%) | 評価サイズ | クラス | ライセンス | Hub |
|---|---:|---:|---:|---:|---|---|
| `hrnet_w18_ssld.paddle_in1k` | 224（テスト 288） | 82.052 | 288 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w18_ssld.paddle_in1k) |
| `hrnet_w48_ssld.paddle_in1k` | 224（テスト 288） | 84.484 | 288 | 1000 | mit | [timm](https://huggingface.co/timm/hrnet_w48_ssld.paddle_in1k) |

