# BYOANet (BoTNet، HaloNet، LambdaNet)

**الفئة:** هجينة · **الكود:** [`timm/models/byoanet.py`](https://github.com/huggingface/pytorch-image-models/blob/main/timm/models/byoanet.py) · **الهندسات:** 15 · **الأوزان المُسبقة التدريب:** 13 (13 منها بنتائج على ImageNet-1k)

الشبكات المبنية باستخدام نظام إعدادات الكتل/المراحل `ByobNet` التي تضع طبقات الانتباه الذاتي (أو ما يشابهها) في مراحل بأسلوب ResNet: محولات عنق الزجاجة (BoTNet) وشبكات HaloNets وشبكات Lambda ResNets. يحدد سطر توثيق الوحدة هذه التعريفات بأنها تجريبية.

## الأوراق البحثية

* [تحويلات عنق الزجاجة للتعرف البصري](https://arxiv.org/abs/2101.11605)
* [شبكات لامدا: نمذجة التفاعلات طويلة المدى دون الانتباه](https://arxiv.org/abs/2102.08602)
* [توسيع الانتباه الذاتي المحلي لعظام بصرية فعالة من حيث المعلمات](https://arxiv.org/abs/2103.12731)

## الاستخدام

راجع [البدء السريع](../quickstart) لتحميل الأوزان المُسبقة التدريب ومعالجة الصور مسبقًا وضبط الدقة، وراجع [استخراج الميزات](../feature_extraction) لاستخدام النماذج كعمود فقري.

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

## دعم واجهة برمجة التطبيقات للنماذج

| ميزة | `ByobNet` |
|---|---|
| خرائط الميزات [`features_only=True`](../model_api#intermediate-features) | ✓ (خطوات 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) | ✓ |
| [تلاشي معدل التعلم على مستوى الطبقات (`group_matcher()`)](../model_api#training-hooks) | ✓ |
| [`reset_classifier()`](../model_api#classifier) | ✓ |

✓ مدعوم، ✓ (مربع) يعمل مع الأحجام المربعة فقط، ✗ غير مدعوم، – غير مطلوب (يقبل النموذج بالفعل أي حجم إدخال). تم التحقق من ذلك بتشغيل كل ميزة على نموذج مُهيأ عشوائياً (`ByobNet` مع `halonet_h1` عند 256)، ومن المتوقع أن تتصرف البنى المعمارية الأخرى من نفس الفئة بنفس الطريقة. راجع صفحة [واجهة برمجة النموذج](../model_api) للتفاصيل.

## البنى

| البنية | المعاملات (مليون) | GMACs | حجم الإدخال | الأوزان المُسبقة التدريب |
|---|---:|---:|---:|---:|
| `botnet26t_256` | 12.49 | 3.32 | 256 | 1 |
| `botnet50ts_256` | 22.74 | 5.54 | 256 | 0 |
| `eca_botnext26ts_256` | 10.59 | 2.46 | 256 | 1 |
| `eca_halonext26ts` | 10.76 | 2.44 | 256 | 1 |
| `halo2botnet50ts_256` | 22.64 | 5.02 | 256 | 1 |
| `halonet26t` | 12.48 | 3.19 | 256 | 1 |
| `halonet50ts` | 22.73 | 5.30 | 256 | 1 |
| `halonet_h1` | 8.10 | 3.00 | 256 | 0 |
| `haloregnetz_b` | 11.68 | 1.97 | 224 | 1 |
| `lambda_resnet26rpt_256` | 10.99 | 3.16 | 256 | 1 |
| `lambda_resnet26t` | 10.96 | 3.02 | 256 | 1 |
| `lambda_resnet50ts` | 21.54 | 5.07 | 256 | 1 |
| `lamhalobotnet50ts_256` | 22.57 | 5.02 | 256 | 1 |
| `sebotnet33ts_256` | 13.70 | 3.89 | 256 | 1 |
| `sehalonet33ts` | 13.69 | 3.55 | 256 | 1 |

تُقدَّم قيم GMACs وعدد المعاملات لحجم المدخلات الافتراضي والتصنيف الخاص بكل معمارية، وذلك استنادًا إلى [نتائج الاختبارات المرجعية](https://github.com/huggingface/pytorch-image-models/tree/main/results).

## الأوزان المُسبقة التدريب

Top-1 هو دقة التحقق على ImageNet-1k من [`results-imagenet.csv`](https://github.com/huggingface/pytorch-image-models/blob/main/results/results-imagenet.csv) عند حجم التقييم المذكور، - إذا لم يكن للوزن نتيجة على ImageNet-1k (مثل أوزان ما قبل التدريب أو أوزان الصورة-النص). Classes هو حجم المصنِّف المُدرَّب مسبقًا، ولا يوجد شيء للأوزان التي لا تحتوي على مصنِّف.

تُجمَّع الأوزان حسب المصدر: الورقة البحثية أو الأصل المذكور في الإعداد المسبق، وإلا منظمة على Hub غير `timm`، وإلا الجزء الأول من وسم التدريب المسبق (`architecture.tag`). تُدرج المصادر التي تحتوي على وزن واحد تحت فئة أخرى.

### وسوم `a1h`

| الوزن | حجم الإدخال | أعلى 1 (%) | حجم التقييم | فئات | رخصة | المركز |
|---|---:|---:|---:|---:|---|---|
| `halo2botnet50ts_256.a1h_in1k` | 256 | 82.084 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/halo2botnet50ts_256.a1h_in1k) |
| `halonet26t.a1h_in1k` | 256 | 79.134 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/halonet26t.a1h_in1k) |
| `halonet50ts.a1h_in1k` | 256 | 81.640 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/halonet50ts.a1h_in1k) |
| `lambda_resnet50ts.a1h_in1k` | 256 | 81.184 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/lambda_resnet50ts.a1h_in1k) |
| `lamhalobotnet50ts_256.a1h_in1k` | 256 | 81.552 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/lamhalobotnet50ts_256.a1h_in1k) |
| `sebotnet33ts_256.a1h_in1k` | 256 | 81.156 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/sebotnet33ts_256.a1h_in1k) |

### وسوم `c1`

| الوزن | حجم الإدخال | أعلى 1 (%) | حجم التقييم | فئات | رخصة | المركز |
|---|---:|---:|---:|---:|---|---|
| `botnet26t_256.c1_in1k` | 256 | 79.256 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/botnet26t_256.c1_in1k) |
| `eca_botnext26ts_256.c1_in1k` | 256 | 79.262 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/eca_botnext26ts_256.c1_in1k) |
| `eca_halonext26ts.c1_in1k` | 256 | 79.518 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/eca_halonext26ts.c1_in1k) |
| `lambda_resnet26rpt_256.c1_in1k` | 256 | 78.960 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/lambda_resnet26rpt_256.c1_in1k) |
| `lambda_resnet26t.c1_in1k` | 256 | 79.126 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/lambda_resnet26t.c1_in1k) |

### أخرى

| الوزن | حجم الإدخال | أعلى 1 (%) | حجم التقييم | فئات | رخصة | المركز |
|---|---:|---:|---:|---:|---|---|
| `haloregnetz_b.ra3_in1k` | 224 | 81.058 | 224 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/haloregnetz_b.ra3_in1k) |
| `sehalonet33ts.ra2_in1k` | 256 | 80.976 | 256 | 1000 | apache-2.0 | [timm](https://huggingface.co/timm/sehalonet33ts.ra2_in1k) |

