timm documentation

سجل التغييرات

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

سجل التغييرات

3 نوفمبر 2026

  • reset_classifier() وإعادة بناء نقطة التفتيش: إصلاحات عبر ViT وEVA وBEiT وNaFlexViT وRepViT وiFormer الحفاظ على موضع التطبيع وإعدادات التقطير عند تصدير/إعادة تحميل النماذج بعد تغيير المصنّف أو التجميع. كما تم إصلاح تصدير PiT غير المجمّع وEfficientFormerV2 مع تعطيل التقطير.
  • NaFlex: إصلاح موضع تطبيع ViT / EVA أثناء التحويل، ودعم محاذاة SwiGLU لنقاط التفتيش الخاصة بـ DINOv3 / Lingbot، والحفاظ على قنوات الإدخال الرمادية / غير RGB في محمّلات البيانات.
  • إصلاح تجميع تدرّج معدل التعلم على مستوى الطبقات لـ RepViT و HGNet و MViTv2 و ViTs ذات التطبيع المسبق، وأحجام الميزات في InceptionNeXt مع output_stride=8/16.
  • الإصدار 1.0.31.

24 أكتوبر 2026

  • forward_intermediates() وprune_intermediate_layers() أصبحت مدعومة الآن من قِبل كل نموذج. أُضيفت حديثًا لـ CSPNet وNFNet وDLA وDenseNet (#2870، شكرًا ghaith-mq)، وCoaT وConViT وConvMixer وCrossViT وHRNet وInception-v3 وInception-ResNet-v2 وNASNet وPNASNet وSelecSLS وSENet وSequencer2d وVGG وVisformer وXception وAligned Xception، مع prune_intermediate_layers() لمُشفِّرات NaFlexViT وMobileNetV5. كما اكتسب CoaT وConViT وConvMixer وCrossViT وVisformer دعم features_only.
  • prune_intermediate_layers() إصلاحات
    • prune_head=True يزيل الرأس بالكامل (تطبيع الرأس، طبقات ما قبل logits، تجميع الانتباه) بحيث لا يترك النموذج المُقتطع أي معاملات غير مستخدمة (DDP بدون find_unused_parameters)، باستثناء CoaT وCrossViT وHRNet عندما يُؤخذ بعض مقاييسها/فروعها المتوازية فقط. مرّر prune_head=False للاحتفاظ به.
    • عند تقليم نموذج هرمي إلى مرحلة سابقة، يتم حذف المعيار النهائي والرأس المُعدّ للمرحلة الأخيرة، وينتهي forward_features() عند آخر ميزة محفوظة، ويتطابق num_features / head_hidden_size معها. أما التقليم إلى ميزة الجذع فيؤدي إلى حذف تجميع الجذع الذي يليها.
    • إصلاحات لـ grad checkpointing وstop_early وإزالة رمز الفئة / الشبكة اللاحقة، وتحويل TorchScript للنماذج المقصوصة / feature_cls='getter' عبر العديد من العائلات.
  • head_hidden_size هو العرض الفعلي قبل طبقة اللوجيت (المجمَّعة) في جميع النماذج، بما في ذلك تجميع concat (catavgmax) وبعد reset_classifier(). أنواع التجميع التي لا يمكن للنموذج تطبيقها حاليًا تثير خطأً عند الإنشاء أو إعادة الضبط بدلاً من تجاهلها بصمت أو فشلها في الأمامية.
  • إصلاحات أخرى: مخرجات VOLO عند num_classes=0 هي تضمين رمز الفئة (مطابقًا لـ forward_head(pre_logits=True))، وإزالة vit_pe_core reset_classifier() مع تجمع غير map تحذف تجمع الانتباه، وتصدير نوع التجمع عبر save_for_hf يقرأ التجميع الحالي للرأس، وإعادة تحميل نقاط التفتيش الخاصة بـ Swin وSwinV2 وDaViT وNextViT بدون رأس (num_classes=0) بشكل صحيح.

13 أكتوبر 2026

  • مسح المعلمات الفائضة عبر sweep.py الجديد: بحث شبكي / عشوائي على أي معامل في train.py، مع --config فعّال واحد لكل مهمة، ويُنفَّذ على مجموعة من وحدات معالجة الرسوميات المحلية ويمكن استئنافه. تُدرّب عمليات مسح WSD جذعًا مستقرًا واحدًا لكل تركيبة من المعلمات الفائضة، وتفرع تبريدات مستقلة من نقاط التفتيش الخاصة بمعالمه، مقارنةً بين التبريد عند ميزانيات متعددة بتكلفة أقل بكثير من التكاليف الكاملة للتشغيل. راجع وثائق التدريب.
  • train.py: يستأنف --resume auto التدريب من مكانه انطلاقًا من ملف last.pth.tar الخاص بالتجربة نفسها (تبقى سجلات نقاط الحفظ، وmodel_best، وsummary.csv متسقة)، ويوقف --stop-epoch N التدريب دون تغيير الجدول الزمني، ويحافظ --save-epochs N [N ...] على لقطات milestone-N.pth.tar، وتُتحقق قيم YAML في --config من صحة حِجج السكربت.
  • إلغاء استخدام PlateauLRScheduler (--sched plateau). جدولة timm هي دوال بلا حالة تعتمد على عدد الحقبات أو عدد التحديثات، ولم تتناسب جدولة plateau التي يقودها المقياس مع ذلك، كما أن حالتها لا تُحفظ في نقاط التفتيش، لذا لم تكن الاستعادة دقيقة أبدًا. استخدم cosine أو wsd.
  • التوثيق: صفحة واجهة برمجة التطبيقات للنماذج الجديدة، وصفحات عائلات النماذج المولّدة لكل وحدة نماذج لتحل محل صفحات النموذج الواحد القديمة، وصفحات مرجعية موسّعة للبيانات / الدوال الخاسرة / النماذج.
  • إصلاحات اتساق واجهة برمجة التطبيقات للنماذج: reset_classifier() يحافظ على التجميع الحالي في جميع النماذج، وتُثير معاملات المُنشئ غير المعروفة TypeError في كل مكان، dynamic_img_size لعائلة Swin، وتلاشي معدل التعلم على مستوى الطبقات في LeViT، وأسماء no_weight_decay التي لم تتطابق مع أي معاملات (NesT، SwinV2، XCiT، FocalNet)، وتسجيل حالة تغيير الحجم لجميع عائلات set_input_size.
  • إصلاحات: خلط صور GCViT الاستعلامات العالمية داخل دفعة، نقطة التدرّج للمراجعة (gradient checkpointing) لـ RDNet و MobileNetV5، حجم مدخلات الاختبار القديم في save_for_hf، تغيير حجم مستطيل في EfficientViT (MSRA)، أخطاء تحويل الصور في ImageDataset (#2846). تم نقل reparameterize_model إلى timm.models.

9 أكتوبر 2026

  • أضف CSPNeXt (هيكل RTMDet) cspnext_{tiny,s,m,l,x} مع أوزان تصنيف ImageNet-1k محوّلة من OpenMMLab. شكرًا Munehiro Kobayashi.
  • تحسينات المُحسِّن
    • تنفيذات ForEach (متعددة المتجهات) لخوارزميات RMSpropTF وLaProp وLAMB وLARS وAdaBelief. تُقسَّم خطوات ForEach حسب حجم ذاكرة L2 على الجهاز (يمكن تجاوز ذلك باستخدام TIMM_FOREACH_CHUNK_SIZE).
    • قصّ تحديث RMS (clipping_threshold) لـ AdamWLegacy / NAdamW، ومتغيرات NovoGrad الجديدة المنفصلة / المُصححة لتلاشي الوزن (novogradw، novogradc).
    • إصلاحات في الدقة عبر العديد من المُحسِّنات، بما في ذلك تصحيح اضمحلال الأوزان مع تحديث متجه معدل التعلم في الموقع، وتوقف تحديثات FP16 عند معدلات تعلم منخفضة، ومعالجة الحالة بدقة منخفضة (Kron، AdaBelief، NovoGrad)، وعدم تعديل p.grad في الموقع بعد الآن.
    • torch.compile / إصلاحات CUDA graph لـ Adopt وSGDW وAdafactorBV.
    • وثائق جديدة للمحسّن تغطي الاستخدام، ومعايير التسمية، والعائلات.
  • أضِف مُجدوِل معدل التعلّم WSD (الدفء-الثبات-التحلّل) (--sched wsd، --lr-decay-fn، --lr-stable-timescale).
  • إصلاحات نموذج EMA للنماذج من نوع bfloat16 / float16. تستخدم نماذج ModelEmaV3 من نوع bfloat16 التقريب العشوائي افتراضيًا، بينما تحتفظ نماذج float16 بـ EMA من نوع float32.
  • تغيير حجم النموذج عبر set_input_size()
    • دعم موسّع للنماذج النافذية (MaxViT، CoAtNet، BEiT، EfficientViT-MSRA، relpos ViT، عائلة Swin).
    • تحتفظ Swin / SwinV2 / SwinV2-CR بنسبة نافذة كل مرحلة إلى الشبكة عند تغيير الحجم، فأصبح الاستدعاء بالحجم الحالي لا يؤدي إلى أي إجراء. يتم دعم window_size / window_ratio لكل مرحلة. يُصلح هذا Swin S3 ونماذج SwinV2 window16 / window12 التي كانت تُغيّر المخرجات عند استدعاء بحجم متساوٍ.
    • إصلاح قيم NaN في SwinV2 عند استخدام حجم نافذة يساوي 1، وأحجام ميزات غير زوجية في المراحل، وإعادة تحجيم ViT الهجين على CUDA / الدقة المنخفضة.
  • إصلاح معالجة بقايا تراكم التدرّجات (#2821)، والعينة الموزّعة / المعزّز المتكرر على مجموعات البيانات الصغيرة، وتجاوزات المصدر المُسبق التدريب وإعداد معلّم التقطير، وtrain.py مع --sched none، والاستيفاء للمحاصيل المركزية للتقييم للمدخلات غير المربعة.
  • إصلاحات توافق تصدير ONNX عبر إصدارات PyTorch، وإصلاحات اتساق dropout، بالإضافة إلى إصلاحات أخرى لتهيئة meta-device.

25 سبتمبر 2026

  • دعم تصنيف التسميات المتعددة
    • أضف --task multilabel إلى train.py / validate.py، حيث يتم التدريب باستخدام BCE (MultiLabelClassificationTask). راجع وثائق التدريب للاطلاع على التفاصيل.
    • يمكن أن تكون الأهداف قوائم من فهارس الفئات، أو متجهات متعددة الحارة الكثيفة (--target-format multihot)، أو حقل ثنائي واحد لكل فئة (--target-key a,b,c)، مع مسارات / إلى الحقول المتداخلة. يدعمها قارئات hfds وhfids وtfds (مفاتيح متعددة الحقول) وwds.
    • تدعم محمّلات Mixup / CutMix وNaFlex أهدافًا متعددة التسميات. ينقل تنعيم التسميات كل هدف نحو 0.5، ويكون الافتراضي 0 في حالة التسميات المتعددة.
    • يقوم التحقق بتقرير mAP (المتري الافتراضي --eval-metric) بالإضافة إلى micro وmacro وsample F1، مع تحديد عتبة F1 بواسطة --multilabel-threshold.
    • تُحسب مقاييس على مستوى مجموعة البيانات الجديدة عبر كامل مجموعة التحقق على جميع الرتب الموزعة، مع استبعاد حشوة عينة التوزيع.
    • راجع مجموعة تجمعات بيانات الصور متعددة التسميات في timm على Hub للحصول على أمثلة أو مجموعات بيانات مرجعية تعمل مباشرة دون إعداد إضافي.
  • خيارات جديدة للدالة الخاسرة عبر --loss
    • خسائر Poly-1 وTwo-way وZLPR وDistribution-Balanced.
    • وزن التكرار حسب الفئة لـ BCE / ASL، محسوب من أعداد التسميات التي تجمعها class_weights.py.
    • أصبح ASL الآن آمنًا لـ fp16 ويعتمد افتراضيًا على اختزال batchmean
  • إعادة هيكلة RoPE تمديد زيادة إحداثيات RoPE المخصصة للتدريب فقط (الإزاحة، الاهتزاز، إعادة التحجيم) لتشمل التضمينات المحورية والمختلطة و MRoPE، مع مشاركة أدوات مساعدة مع DINOv3 مع الحفاظ على سلوك الزيادة الحالي فيه. إضافة خيارات grid_type و normalize_coords إلى منشئات فورييه/الدوارة (build_fourier_pos_embed، build_rotary_pos_embed) ووحدات RoPE المحورية، وأقسام MRoPE قابلة للتكوين في EVA. دعم rotate_half في RotaryEmbedding الذي يعيد tuples والمتغير الأساسي للمصنع. تصحيح تمرير تخطيط الدوران في EVA و NaFlexViT و MRoPE attention pooling. إبقاء مخازن ترددات وإحداثيات RoPE غير القابلة للتعلم بدقة float32 على الأقل في النماذج ذات الدقة النصفية/bfloat16، وحساب مراحل RoPE المختلطة بدقة float32 تحت autocast. قد تغيّر هذه التصحيحات الدقيقة مخرجات النماذج منخفضة الدقة. إصلاح تضمينات RoPE الدفعية لشبكات البكسل وإعادة تحجيم الشكل المرجعي. أصبح DINOv3 grid_indexing='xy' يبدّل قنوات الإحداثيات كما طُلب؛ تتغير المخرجات لهذه الإعدادات التي كانت غير صحيحة سابقًا. جعل apply_rot_embed و apply_rot_embed_cat و apply_rot_embed_list تعيد نوع البيانات (dtype) لكل مدخل، مع التحويل بعد الدوران دون خفض دقة sin/cos أولاً. توحيد وحدتي RoPE المحوريتين خلف قاعدة خاصة. تبقى الاستدعاءات الحالية متوافقة، لكن مخزن bands يُحتفظ به الآن في وضعي التخزين المؤقت الديناميكي (لم يعد rope.bands يساوي None في الوضع المخزّن مؤقتًا).
    • توسيع زيادة إحداثيات RoPE الخاصة بالتدريب فقط (الإزاحة، الاهتزاز، إعادة التحجيم) لتشمل التضمينات المحورية والمختلطة وتضمينات MRoPE، مع مشاركة أدوات مساعدة مع DINOv3 والحفاظ في الوقت نفسه على سلوك الزيادة الحالي فيه.
    • أضِف خيارات grid_type وnormalize_coords إلى منشئات فورييه / الدورانية (build_fourier_pos_embed، build_rotary_pos_embed) ووحدات RoPE المحورية، بالإضافة إلى أقسام MRoPE قابلة للتكوين في EVA.
    • دعم rotate_half في RotaryEmbedding ذي المخرجات على شكل tuple وفي النسخة base من المصنع.
    • إصلاح تمرير تخطيط الدوران بشكل صحيح في EVA وNaFlexViT وMRoPE في تجميع الانتباه.
    • حافظ على مخازن ترددات RoPE غير المتعلمة وإحداثياتها على الأقل بدقة float32 في النماذج ذات الدقة النصفية/bfloat16، واحسب مراحل RoPE المختلطة بدقة float32 تحت autocast. قد تُغيّر هذه الإصلاحات المتعلقة بالدقة مخرجات النماذج منخفضة الدقة.
    • إصلاح تضمينات RoPE المُجمَّعة لشبكات البكسل وإعادة تحجيم الشكل المرجعي. في DINOv3، يقوم grid_indexing='xy' الآن بتبديل قنوات الإحداثيات كما هو مطلوب؛ وتتغير المخرجات لهذه الإعدادات التي كانت غير صحيحة سابقًا.
    • اجعل apply_rot_embed وapply_rot_embed_cat وapply_rot_embed_list تُرجع نوع البيانات (dtype) الخاص بكل مدخل، مع إجراء التحويل (casting) بعد الدوران دون خفض نوع بيانات sin/cos أولاً.
    • دمج وحدتي RoPE المحوريتين خلف قاعدة خاصة. تبقى الاستدعاءات الحالية متوافقة، لكن مخزن bands يُحتفظ به الآن في وضعي التخزين المؤقت الديناميكي (rope.bands لم يعد None في وضع التخزين المؤقت).
  • إصلاحات تبديل وضع التدريب/التقييم وتغيير نوع البيانات (dtype) لنموذج LeViT والنماذج ذات الصلة (EfficentFormer*، EfficientViT-MSRA، TinyViT) مع تحيّزات الانتباه المخزنة مؤقتًا.

22 سبتمبر 2026

  • إضافة أوزان برج الرؤية لنموذج Qwen-Drive-1.0-4B.
  • إصلاح إعادة استخدام/مزامنة تدفّع محمّل الاستباق (prefetch loader) وAugMix للصور غير المربعة والصور أحادية النطاق.
  • إصلاح توسيع معدل التعلم في AdaMuon conv، وقصّ AdafactorBigVision، وسجلّ التدرّجات في MARS، وتحميل نقاط التفتيش في Kron.
  • إصلاح كاشات انحياز الانتباه القديمة في التقييم، وبيانات الوصف الخاصة بميزات النموذج المُقتطع، وتعبئة الحد الأقصى للجمع المُمدد، ووضع تدرج الخسارة غير المتماثل.
  • الإصدار 1.0.30

10-11 سبتمبر 2026

  • إضافة متغيرات مصنّف ومشفّر ViT لـ Qwen3-VL / Qwen3.5 / Qwen3.8، بما في ذلك المصنّفات مع دمج المكانية الأصلي وبدونه.
  • أضِف نماذج Sapiens2 ViTs مع دعم EVA وNaFlexViT. تتضمن إضافتا النموذج أوزان timm Hub الأصلية. شكرًا Yonghye Kwon.
  • أضِف iFormer مع أوزان timm Hub الأصلية. شكرًا Ryan Hou.
  • أضِف EfficientViM مع أوزان timm Hub الأصلية. شكرًا smellslikeml.
  • إضافة مصنّفات ومشفّرات ViT لنماذج DeepSeek-V4 / V4.1 مع أوزان Hub الأصلية من timm. شكرًا Yonghye Kwon.
  • تبديل التفسير الموضعي الافتراضي لـ NaFlex SigLIP، واختيار حجم الإدخال في inference.py، وتحسين تحليل --model-kwargs.
  • إصلاح بناء جهاز meta ودعم مصنع الجهاز/نوع البيانات لعدد قليل من النماذج؛ نقل اختبارات الإعداد إلى meta لتسريع CI، وتغطية سياق meta.

27 أغسطس 2026

  • إضافة نموذج LowFormer والأوزان
  • إصلاح أو دمج مجموعة من الأخطاء الحقيقية لكنها صغيرة أو غير شائعة الظهور والتي اكتشفها الوكلاء
  • الإصدار 1.0.29

11 أغسطس 2026

  • إضافة تعريفات النماذج والأوزان المُسبقة التدريب لـ
  • إضافة جدولة الصور وحجم الدفعة لكل دفعة لتدريب غير NaFlex، بما في ذلك جداول الدقة التدريجية من الصغيرة إلى الكبيرة.
  • حسّن NaFlexViT باستخدام أقنعة انتباه تعتمد على المفاتيح فقط، وعيّنة مواقع متوافقة مع التجميع وفعّالة من حيث الذاكرة، واستيفاء متغيّر الباتش المخزّن مؤقتًا.
  • تحسين مسار مصنع النموذج ومعالجة نقاط التفتيش؛ إصلاح إعادة أخذ عينات تضمين الموضعيات للرموز المتساوية.

10 يوليو 2026

  • تحسين دعم المُحسِّن torch.compile ومعدّل تعلّم المصفوفات.
  • توسيع تخطيط الباتش (patch-layout) في NaFlexViT (لـ NaFlex-CLAP)، ودعم forward_intermediates (إمداد قاموس NaFlex).
  • تقوية تحميل pickle وتحسين الاستدلال على التسميات المخصصة.
  • الإصدار 1.0.28

27 مايو 2026

  • أضِف تعريفات النماذج والأوزان المُسبقة التدريب لنماذج EUPE ViT (بنمط DINOv3) وConvNeXt. راجع ورقة Efficient Universal Perception Encoder.
  • أضِف تعريفات نماذج TIPSv2 والأوزان المُسبقة التدريب لنماذج ViT (على غرار DINOv2). راجع ورقة TIPSv2.

8 مايو 2026

  • الإصدار 1.0.27

23 أبريل 2026

  • إضافة مُشفّرات Gemma4 ViT مع دعم خط أنابيب NaFlex (نسبة أبعاد/حجم متغيّر لكل صورة). شكرًا Yonghye Kwon
  • دعم أوزان DINOv3 في NaFlexVit. شكرًا Yonghye Kwon
  • بعض التحسينات على سلوك معدل التعلم (lr) في آلية الاحتياط (fallback) الخاصة بـ Muon (AdamW/NadamW)

23 مارس 2026

  • تحسين أمان معالجة نقاط التفتيش الخاصة بـ pickle. تعيين جميع عمليات التحميل افتراضيًا إلى weights_only=True، وإضافة safe_global لـ ArgParse.
  • تحسين معالجة قناع الانتباه للنماذج الأساسية ViT/EVA والطبقات. حلّ أقنعة bool، وتحويل is_causal عبر مهام SSL.
  • إصلاح استخدامات فئة register مع ViT عند عدم تفعيل تضمين الموضع.
  • إضافة تحسين تمثيل الباتش (PRR) كخيار للتجميع في ViT. شكرًا لـ Sina (https://github.com/sinahmr).
  • تحسين اتساق أبعاد الإسقاط المخرجات / طبقات MLP لطبقات تجميع الانتباه.
  • تحسين F.SDPA في نموذج Hiera للسماح باستخدام نواة Flash Attention.
  • تمت إضافة تحذير إلى مُحسِّن SGDP.
  • الإصدار 1.0.26. أول إصدار صيانة منذ مغادرتي لشركة Hugging Face.

23 فبراير 2026

  • إضافة دعم تدريب تقطير الرموز إلى أغلفة مهام التقطير
  • إزالة بعض استخدامات torch.jit استعدادًا للإلغاء الرسمي
  • إضافة تحذير إلى مُحسِّن AdamP
  • استدعِ reset_parameters() حتى عند استخدام تهيئة جهاز meta، حتى يتم تهيئة المخازن باستخدام حيل مثل init_empty_weights
  • تعديل مُحسِّن Muon ليعمل مع DTensor/FSDP2 (استخدام بدلاً من clamp_min، وتبديل فرع NS لـ DTensor)
  • الإصدار 1.0.25

21 يناير 2026

  • Compat Break: إصلاح إغفال يتعلق بـ QKV مقابل MLP bias في ParallelScalingBlock (& DiffParallelScalingBlock)
    • لا يؤثر على أي من نماذج timm المدرَّبة، لكنه قد يؤثر على الاستخدام اللاحق.

5 و6 يناير 2026

  • الإصدار 1.0.24
  • إضافة ملفات csv جديدة لنتائج المعايير المرجعية لأزمنة الاستدلال على جميع النماذج باستخدام بطاقات RTX Pro 6000 و5090 و4090 مع PyTorch 2.9.1
  • إصلاح خطأ وحدة مُنقَلة في مسار الاستيراد المُتقادم timm.models.layers الذي يؤثر على الاستيرادات القديمة
  • الإصدار 1.0.23

30 ديسمبر 2025

12 ديسمبر 2025

  • إضافة نموذج CSATV2 (شكرًا لـ https://github.com/gusdlf93) — نموذج خفيف الوزن لكنه عالي الدقة مع جذر DCT واهتمام مكاني. https://huggingface.co/Hyunil/CSATv2
  • إضافة دعم لخوارزميتي AdaMuon وNAdaMuon إلى تطبيق timm الخاص بخوارزمية Muon الموجودة مسبقًا. يبدو أن الأداء أكثر تنافسية مقارنةً بـ AdamW عند استخدام معاملات مألوفة لمهام الصور.
  • تنظيف طلبات الدمج في نهاية العام، ودمج جوانب من عدة طلبات دمج مفتوحة منذ فترة طويلة
  • ترقية اختبارات الوحدات إلى PyTorch 2.9.1 وPython 3.13 في الحد الأعلى، مع خفض الحد الأدنى إلى PyTorch 1.13 وPython 3.10

1 ديسمبر 2025

  • أضِف تجريدًا خفيفًا للمهام، وأضِف دعمًا لتقطير القيم اللوجستية والميزات إلى سكربت التدريب عبر مهام جديدة.
  • إزالة دعم APEX AMP القديم

4 نوفمبر 2025

  • إصلاح خطأ في تهيئة LayerScale / LayerScale2d (تجاهل قيم التهيئة)، الذي أُدخل في الإصدار 1.0.21. شكرًا https://github.com/Ilya-Fradlin
  • الإصدار 1.0.22

31 أكتوبر 2025 🎃

  • تحديث ملفات csv لنتائج imagenet & OOD variant لتشمل بعض النماذج الجديدة والتحقق من صحتها عبر عدة إصدارات من torch & timm
  • تمت إضافة أوزان نماذج EfficientNet-X و EfficientNet-H B5 كجزء من بحث على المعلمات الفائقة لمقارنة AdamW مع Muon (لا يزال العمل جارياً على تشغيلات Muon)

16-20 أكتوبر 2025

  • إضافة تنفيذ لمُحسِّن Muon (مبني على https://github.com/KellerJordan/Muon) مع تخصيصات
    • مرونة إضافية ومعالجة محسّنة لأوزان الالتفاف، مع بدائل لأشكال الأوزان غير المناسبة للتعامد
    • تحسين طفيف لسرعة تكرارات NS عن طريق تقليل عمليات التخصيص واستخدام عمليات (b)add(b)mm المدمجة
    • تستخدم بشكل افتراضي تحديثات AdamW (أو NAdamW إذا كان nesterov=True) إذا لم يكن muon مناسبًا لشكل المعامل (أو تم استبعاده عبر علم مجموعة المعاملات)
    • مثل تطبيق torch، اختر من بين عدة دوال لضبط مقياس معدل التعلم عبر adjust_lr_fn
    • اختر من بين عدة إعدادات مسبقة لمعامل NS أو حدد إعداداتك الخاصة عبر ns_coefficients
  • دعم أول خطوتين من تهيئة نموذج جهاز 'meta'
    • إصلاح عدة عمليات كانت تُسبب فشل الإنشاء في سياق جهاز ‘meta’
    • Add device & dtype factory kwarg support to all models and modules (anything inherting from nn.Module) in timm
  • حقول الترخيص المضافة إلى ملفات الإعداد المسبق في الكود
  • الإصدار 1.0.21

21 سبتمبر 2025

  • إعادة تعيين وسم أوزان DINOv3 ViT من lvd_1689m -> lvd1689m ليتطابق (وكذلك sat_493m -> sat493m)
  • الإصدار 1.0.20

17 سبتمبر 2025

23 يوليو 2025

  • أضِف طريقة set_input_size() إلى نماذج EVA، وتُستخدم في OpenCLIP 3.0.0 للسماح بتغيير حجم نماذج المُشفِّرات المبنية على timm.
  • الإصدار 1.0.18، وهو مطلوب لنماذج PE-Core S & T في OpenCLIP 3.0.0
  • إصلاح مشكلة صغيرة في الكتابة (typing) كانت تُسبب كسر توافق Python 3.9. إصدار تصحيحي 1.0.19.

21 يوليو 2025

  • تمت إضافة دعم ROPE إلى NaFlexViT. يمكن الآن تحميل جميع النماذج المشمولة بـ EVA base (eva.py) بما في ذلك EVA وEVA02 وMeta PE ViT وtimm SBB ViT مع ROPE وNaver ROPE-ViT في NaFlexViT عند تمرير use_naflex=True عند إنشاء النموذج
  • تمت إضافة المزيد من مشفّرات Meta PE ViT، بما في ذلك النسخ الصغيرة/الضئيلة، والنسخ اللغوية مع التقطيع، بالإضافة إلى المزيد من النسخ المكانية.
  • تم إصلاح PatchDropout مع NaFlexViT وكذلك مع نماذج EVA (انحدار بعد إضافة Naver ROPE-ViT)
  • إصلاح ترتيب XY باستخدام grid_indexing='xy'، مما يؤثر على استخدام الصور غير المربعة في وضع 'xy' (تتأثر فقط ROPE-ViT وPE).

7 يوليو 2025

  • تعديلات على العمود الفقري MobileNet-v5 لتحسين سلوك Google Gemma 3n (للاستخدام مع الأوزان الرسمية المحدّثة)
    • إضافة انحياز جذر (يُصفَّر في الأوزان المحدّثة، مع كسر توافق مع الأوزان القديمة)
    • GELU -> GELU (تقريب tanh). تغيير طفيف ليكون أقرب إلى JAX
  • أضِف حَجَين إلى دعم تدرّج الطبقات، حدّ أدنى للتقييد المقياسي وعتبة مقياس «عدم التحسين»
  • إضافة متغيرات ‘Fp32’ من طبقات LayerNorm وRMSNorm وSimpleNorm يمكن تفعيلها لإجبار حساب المعيار في float32
  • بعض الكتابة وتنظيف الحجة لطبقات norm و norm+act تم إنجازه بالأسلوب أعلاه
  • دعم Naver ROPE-ViT (https://github.com/naver-ai/rope-vit) في eva.py، وإضافة وحدة RotaryEmbeddingMixed للوضع المختلط، والأوزان على HuggingFace Hub
نموذجimg_sizetop1top5param_count
vit_large_patch16_rope_mixed_ape_224.naver_in1k22484.8497.122304.4
vit_large_patch16_rope_mixed_224.naver_in1k22484.82897.116304.2
vit_large_patch16_rope_ape_224.naver_in1k22484.6597.154304.37
vit_large_patch16_rope_224.naver_in1k22484.64897.122304.17
vit_base_patch16_rope_mixed_ape_224.naver_in1k22483.89496.75486.59
vit_base_patch16_rope_mixed_224.naver_in1k22483.80496.71286.44
vit_base_patch16_rope_ape_224.naver_in1k22483.78296.6186.59
vit_base_patch16_rope_224.naver_in1k22483.71896.67286.43
vit_small_patch16_rope_224.naver_in1k22481.2395.02221.98
vit_small_patch16_rope_mixed_224.naver_in1k22481.21695.02221.99
vit_small_patch16_rope_ape_224.naver_in1k22481.00495.01622.06
vit_small_patch16_rope_mixed_ape_224.naver_in1k22480.98694.97622.06
  • بعض أعمال التنظيف الخاصة بوحدات ROPE والدوال المساعدة وتسجيل أوراق تتبع FX
  • التحضير لإصدار النسخة 1.0.17

26 يونيو 2025

  • هيكل MobileNetV5 (مع نسخة المشفّر فقط) لمشفّر الصور في Gemma 3n
  • تم إصدار الإصدار 1.0.16

23 يونيو 2025

  • إضافة إعادة تحجيم لتضمين الموضع ثنائي الأبعاد والمُحلَّل العاملات المعتمد على F.grid_sample إلى NaFlexViT. أسرع عند وجود العديد من الأحجام المختلفة (مستند إلى مثال من https://github.com/stas-sl).

  • تسريع إعادة أخذ عينات تضمين البقع بشكل أكبر عن طريق استبدال vmap بـ matmul (بناءً على مقتطف من https://github.com/stas-sl).

  • أضف 3 نقاط تحقق أصلية مبدئية لنموذج NaFlexViT تم إنشاؤها أثناء الاختبار، مع إعدادات ImageNet-1k و3 تكوينات مختلفة لتضمين المواقع (pos embed) باستخدام نفس المعلمات الفائقة (hparams).

    النموذجدقة أعلى 1دقة أعلى 5المعاملات (مليون)طول تسلسل التقييم
    naflexvit_base_patch16_par_gap.e300_s576_in1k83.6796.4586.63576
    naflexvit_base_patch16_parfac_gap.e300_s576_in1k83.6396.4186.46576
    naflexvit_base_patch16_gap.e300_s576_in1k83.5096.4686.63576
  • دعم فحص التدرّجات (gradient checkpointing) لـ forward_intermediates وإصلاح بعض أخطاء الفحص. شكرًا https://github.com/brianhou0208

  • إضافة «تخميد الوزن المُصحَّح» (https://arxiv.org/abs/2506.02285) كخيار في محسّنات AdamW (legacy)، وAdopt، وKron، وAdafactor (BV)، وLamb، وLaProp، وLion، وNadamW، وRmsPropTF، وSGDW

  • التبديل إلى استخدام أوزان timm الأصلية بدلاً من إعادة تعيينها على الفور في نماذج PE (مُشفِّر الإدراك) ViT

  • إصلاح خطأ تدفق cuda في محمّل الاستباق

5 يونيو 2025

  • كود نموذج NaFlexVit الأولي. NaFlexVit هو Vision Transformer يتضمن:
    1. تضمين التضمين وترميز المواقع في وحدة واحدة
    2. دعم تضمين الباتش (patch embedding) باستخدام nn.Linear على المدخلات المُسبقة التقطيع (dictionary)
    3. دعم NaFlex للأبعاد المتغيرة والدقة المتغيرة (SigLip-2: https://arxiv.org/abs/2502.14786)
    4. دعم حجم الباتش المتغير في FlexiViT (https://arxiv.org/abs/2212.08013)
    5. دعم تضمين المواقع الكسري/المُحلَّل في NaViT (https://arxiv.org/abs/2307.06304)
  • يمكن تحميل نماذج vit الموجودة في vision_transformer.py في نموذج NaFlexVit عن طريق إضافة use_naflex=True إلى create_model
    • بعض الأوزان الأصلية قادمة قريباً
  • يتوفر خط أنابيب بيانات NaFlex كامل يتيح التدريب / الضبط الدقيق / التقييم باستخدام صور بأبعاد / أحجام متغيرة
    • لتفعيل ذلك في train.py وvalidate.py، أضف الحجة --naflex-loader، ويجب استخدامه مع NaFlexVit
  • لتقييم نموذج ViT (كلاسيكي) موجود محمّل في نموذج NaFlexVit مع خط بيانات NaFlex:
    • python validate.py /imagenet --amp -j 8 --model vit_base_patch16_224 --model-kwargs use_naflex=True --naflex-loader --naflex-max-seq-len 256
  • يحتوي التدريب على بعض الميزات الإضافية المتعلقة بالحجج (args) تستحق الانتباه
    • يحدد الحجة --naflex-train-seq-lens' أطوال التسلسلات التي سيتم اختيارها عشوائياً من كل دفعة أثناء التدريب
    • تحدد حجة --naflex-max-seq-len طول التسلسل المستهدف للتحقق
    • إضافة --model-kwargs enable_patch_interpolator=True --naflex-patch-sizes 12 16 24 ستفعّل اختيار حجم الباتش (patch) بشكل عشوائي لكل دفعة (batch) مع الاستيفاء
    • يُغيّر الحجة --naflex-loss-scale وضع توسيع الخسارة لكل دفعة بالنسبة لحجم الدفعة، بينما يُغيّر تحميل NaFlex في timm حجم الدفعة لكل طول تسلسل

28 مايو 2025

21 فبراير 2025

  • تمت إضافة مشفّرات الصور SigLIP 2 ViT (https://huggingface.co/collections/timm/siglip-2-67b8e72ba08b09dd97aecaf9)
    • نسخ NaFlex ذات الدقة/النسبة المتغيرة قيد التطوير
  • إضافة أوزان ViT لنموذج ‘SO150M2’ تم تدريبها باستخدام وصفات SBB، نتائج رائعة، أفضل على ImageNet من المحاولة السابقة مع تدريب أقل.
    • vit_so150m2_patch16_reg1_gap_448.sbb_e200_in12k_ft_in1k - 88.1% أعلى دقة من الدرجة الأولى
    • vit_so150m2_patch16_reg1_gap_384.sbb_e200_in12k_ft_in1k - 87.9% أعلى دقة من الدرجة الأولى
    • vit_so150m2_patch16_reg1_gap_256.sbb_e200_in12k_ft_in1k - 87.3% أعلى دقة من الدرجة الأولى
    • vit_so150m2_patch16_reg4_gap_256.sbb_e200_in12k
  • تم تحديث أوزان InternViT-300M ‘2.5’
  • الإصدار 1.0.15

1 فبراير 2025

  • للمعلومية، تم اختبار PyTorch 2.6 وPython 3.13 وتعمل بشكل صحيح مع النسخة الرئيسية الحالية والنسخة المُصدَّرة من timm

27 يناير 2025

19 يناير 2025

  • إصلاح تحميل أوزان LeViT بصيغة safetensor، وإزالة كود التحويل الذي كان ينبغي تعطيله
  • إضافة أوزان ViT لنموذج ‘SO150M’ تم تدريبها باستخدام وصفات SBB، النتائج جيدة، لكن الشكل ليس الأمثل للتدريب المسبق على ImageNet-12k/1k أو الضبط الدقيق
    • vit_so150m_patch16_reg4_gap_256.sbb_e250_in12k_ft_in1k - 86.7% أعلى دقة من الدرجة الأولى
    • vit_so150m_patch16_reg4_gap_384.sbb_e250_in12k_ft_in1k - 87.4% أعلى دقة من الدرجة الأولى
    • vit_so150m_patch16_reg4_gap_256.sbb_e250_in12k
  • تنظيف عام للأخطاء الإملائية وأخطاء الكتابة
  • إصدار 1.0.14 لإخراج إصلاح LeViT

9 يناير 2025

  • إضافة دعم لتدريب والتحقق بشكل خالص باستخدام bfloat16 أو float16
  • أُضيفت حجة اسم مشروع wandb بواسطة https://github.com/caojiaolong، استخدم arg.experiment كاسم
  • إصلاح مشكلة قديمة تتعلق بعدم عمل حفظ نقاط التفتيش على أنظمة الملفات التي لا تدعم الروابط الصلبة (مثل تركيبات أنظمة الملفات FUSE)
  • إصدار 1.0.13

6 يناير 2025

  • أضف غلاف torch.utils.checkpoint.checkpoint() في timm.models يجعل القيمة الافتراضية لـ use_reentrant=False، ما لم يتم تعيين TIMM_REENTRANT_CKPT=1 في متغيرات البيئة.

31 ديسمبر 2024

  • convnext_nano 384x384 تدريب مسبق على ImageNet-12k وضبط دقيق. https://huggingface.co/models?search=convnext_nano%20r384
  • أضِف مُشفِّرات AIM-v2 من https://github.com/apple/ml-aim، راجعها على Hub: https://huggingface.co/models?search=timm%20aimv2
  • أضِف مُشفِّرات PaliGemma2 من https://github.com/google-research/big_vision إلى PaliGemma الموجودة مسبقاً، راجع على Hub: https://huggingface.co/models?search=timm%20pali2
  • إضافة نموذج CLIP ViT المفقود L/14 DFN2B 39B، vit_large_patch14_clip_224.dfn2b_s39b
  • إصلاح طبقة RmsNorm والدالة الحالية لتتوافق مع الصياغة القياسية، واستخدام تنفيذ PT 2.5 عند الإمكان. تم نقل التنفيذ القديم إلى طبقة SimpleNorm، وهي LN دون توسيط أو انحياز. كانت هناك نموذجان فقط من timm يستخدمانها، وقد تم تحديثهما.
  • السماح بتجاوز معامل cache_dir لإنشاء النموذج
  • مرّر trust_remote_code إلى غلاف مجموعات بيانات HF
  • نموذج inception_next_atto الذي أضافه المنشئ
  • تحذير حول مُحسِّن Adan، وخيارات تخفيف الوزن المنفصل في Lamb
  • بعض بيانات الوصف الخاصة بـ feature_info تم إصلاحها بواسطة https://github.com/brianhou0208
  • تم منح جميع أوزان نماذج OpenCLIP و JAX (CLIP، SigLIP، Pali، إلخ) التي استخدمت إعادة تعيين وقت التحميل (load time remapping) نسخًا خاصة بها على HF Hub بحيث تعمل مع التحميل المبني على hf-hub:، وبالتالي ستعمل مع TimmWrapperModel الجديد في Transformers

28 نوفمبر 2024

12 نوفمبر 2024

  • إعادة هيكلة مصنع المُحسِّنات
    • يعمل المصنع الجديد من خلال تسجيل المُحسِّنات باستخدام فئة البيانات OptimInfo التي تتضمن بعض الخصائص الرئيسية
    • أضف list_optimizers وget_optimizer_class وget_optimizer_info إلى دالة create_optimizer_v2 المُعاد تصميمها لاستكشاف المُحسِّنات والحصول على معلوماتها أو فئاتها
    • إلغاء استخدام optim.optim_factory، ونقل الدوال إلى optim/_optim_factory.py وoptim/_param_groups.py، والتشجيع على الاستيراد عبر timm.optim
  • أضف مُحسِّن Adopt (https://github.com/iShohei220/adopt)
  • إضافة متغيّر «Big Vision» من مُحسِّن Adafactor (https://github.com/google-research/big_vision/blob/main/big_vision/optax.py)
  • إصلاح Adafactor الأصلي لاختيار أبعاد تفكيك أفضل للتحويلات
  • ضبط مُحسِّن LAMB مع بعض التحسينات في وظيفة torch.where مقارنةً بالنسخة الأصلية، وإعادة هيكلة القصّ قليلاً
  • دعم أحجام الصور الديناميكية في vit وdeit وeva، مع تحسين لدعم تغيير الحجم من شبكات الباتش غير المربعة، شكرًا لـ https://github.com/wojtke

31 أكتوبر 2024

أضف مجموعة جديدة من أوزان ResNet & ResNet-V2 18/34 (كتلة أساسية) مدرّبة بشكل جيد جداً. راجع https://huggingface.co/blog/rwightman/resnet-trick-or-treat

19 أكتوبر 2024

  • تنظيف استخدام torch amp لتجنب استدعاءات cuda الخاصة، ودمج دعم أجهزة Ascend (NPU) من MengqingCao والذي يجب أن يعمل الآن في PyTorch 2.5 مع ميزة التحميل التلقائي الجديد لتوسعة الأجهزة. تم اختبار Intel Arc (XPU) في Pytorch 2.5 أيضاً وعمل (في الغالب).

16 أكتوبر 2024

  • إصلاح خطأ عند الاستيراد من المسار غير المدعوم timm.models.registry، وزيادة أولوية تحذيرات الإيقاف الحالية لتكون مرئية
  • أوزان نموذج InternViT-300M (https://huggingface.co/OpenGVLab/InternViT-300M-448px) إلى timm باسم vit_intern300m_patch14_448

14 أكتوبر 2024

  • تمت إضافة تعريفات نماذج ResNet 18/18d/34/34d بنسخة ما قبل التنشيط (ResNetV2) بناءً على طلب (الأوزان قيد الانتظار)
  • الإصدار 1.0.10

11 أكتوبر 2024

  • تمت إضافة نموذج https://github.com/yuweihao/MambaOut وأوزانه. نهج ساخر لنماذج الرؤية القائمة على أنظمة الحالة المتسلسلة (SSM) دون استخدام SSM (وهو في جوهره ConvNeXt مع البوابة). مزيج من الأوزان الأصلية بالإضافة إلى تباينات مخصصة وأوزانها.
نموذجimg_sizetop1top5param_count
mambaout_base_plus_rw.sw_e150_r384_in12k_ft_in1k38487.50698.428101.66
mambaout_base_plus_rw.sw_e150_in12k_ft_in1k28886.91298.236101.66
mambaout_base_plus_rw.sw_e150_in12k_ft_in1k22486.63298.156101.66
mambaout_base_tall_rw.sw_e500_in1k28884.97497.33286.48
mambaout_base_wide_rw.sw_e500_in1k28884.96297.20894.45
mambaout_base_short_rw.sw_e500_in1k28884.83297.2788.83
mambaout_base.in1k28884.7296.9384.81
mambaout_small_rw.sw_e450_in1k28884.59897.09848.5
mambaout_small.in1k28884.596.97448.49
mambaout_base_wide_rw.sw_e500_in1k22484.45496.86494.45
mambaout_base_tall_rw.sw_e500_in1k22484.43496.95886.48
mambaout_base_short_rw.sw_e500_in1k22484.36296.95288.83
mambaout_base.in1k22484.16896.6884.81
mambaout_small.in1k22484.08696.6348.49
mambaout_small_rw.sw_e450_in1k22484.02496.75248.5
mambaout_tiny.in1k28883.44896.53826.55
mambaout_tiny.in1k22482.73696.126.55
mambaout_kobe.in1k28881.05495.7189.14
mambaout_kobe.in1k22479.98694.9869.14
mambaout_femto.in1k28879.84895.147.3
mambaout_femto.in1k22478.8794.4087.3

سبتمبر 2024

21 أغسطس 2024

  • نماذج SBB ViT المحدّثة، التي تم تدريبها على ImageNet-12k وضبطها الدقيق على ImageNet-1k، تتحدى عددًا كبيرًا من النماذج الأكبر حجمًا والأبطأ بكثير
نموذجtop1top5param_countimg_size
vit_mediumd_patch16_reg4_gap_384.sbb2_e200_in12k_ft_in1k87.43898.25664.11384
vit_mediumd_patch16_reg4_gap_256.sbb2_e200_in12k_ft_in1k86.60897.93464.11256
vit_betwixt_patch16_reg4_gap_384.sbb2_e200_in12k_ft_in1k86.59498.0260.4384
vit_betwixt_patch16_reg4_gap_256.sbb2_e200_in12k_ft_in1k85.73497.6160.4256
  • أوزان MobileNet-V1 1.25 و EfficientNet-B1 و ResNet50-D مع وصفة تحدّي خط الأساس MNV4
نموذجtop1top5param_countimg_size
resnet50d.ra4_e3600_r224_in1k81.83895.92225.58288
efficientnet_b1.ra4_e3600_r240_in1k81.44095.7007.79288
resnet50d.ra4_e3600_r224_in1k80.95295.38425.58224
efficientnet_b1.ra4_e3600_r240_in1k80.40695.1527.79240
mobilenetv1_125.ra4_e3600_r224_in1k77.60093.8046.27256
mobilenetv1_125.ra4_e3600_r224_in1k76.92493.2346.27224
  • إضافة دعم لبنية العمود الفقري SAM2 (HieraDet) وتحميل الأوزان
  • إضافة أوزان Hiera Small التي تم تدريبها باستخدام تضمين موضع abswin على in12k وضبطها بدقة على 1k
نموذجtop1top5param_count
hiera_small_abswin_256.sbb2_e200_in12k_ft_in1k84.91297.26035.01
hiera_small_abswin_256.sbb2_pd_e200_in12k_ft_in1k84.56097.10635.01

8 أغسطس 2024

28 يوليو 2024

  • أضف أوزان mobilenet_edgetpu_v2_m مع وصفة مبنية على ra4 mnv4-small. دقة top-1 تبلغ 80.1% عند 224 و80.7% عند 256.
  • الإصدار 1.0.8

26 يوليو 2024

  • أوزان إضافية لنموذج MobileNet-v4، وتدريب مسبق على ImageNet-12k مع ضبط دقيق، ونماذج ConvLarge مع معالجة مضادة للتشويش
نموذجtop1top1_errtop5top5_errparam_countimg_size
mobilenetv4_conv_aa_large.e230_r448_in12k_ft_in1k84.9915.0197.2942.70632.59544
mobilenetv4_conv_aa_large.e230_r384_in12k_ft_in1k84.77215.22897.3442.65632.59480
mobilenetv4_conv_aa_large.e230_r448_in12k_ft_in1k84.6415.3697.1142.88632.59448
mobilenetv4_conv_aa_large.e230_r384_in12k_ft_in1k84.31415.68697.1022.89832.59384
mobilenetv4_conv_aa_large.e600_r384_in1k83.82416.17696.7343.26632.59480
mobilenetv4_conv_aa_large.e600_r384_in1k83.24416.75696.3923.60832.59384
mobilenetv4_hybrid_medium.e200_r256_in12k_ft_in1k82.9917.0196.673.3311.07320
mobilenetv4_hybrid_medium.e200_r256_in12k_ft_in1k82.36417.63696.2563.74411.07256
نموذجtop1top1_errtop5top5_errparam_countimg_size
efficientnet_b0.ra4_e3600_r224_in1k79.36420.63694.7545.2465.29256
efficientnet_b0.ra4_e3600_r224_in1k78.58421.41694.3385.6625.29224
mobilenetv1_100h.ra4_e3600_r224_in1k76.59623.40493.2726.7285.28256
mobilenetv1_100.ra4_e3600_r224_in1k76.09423.90693.0046.9964.23256
mobilenetv1_100h.ra4_e3600_r224_in1k75.66224.33892.5047.4965.28224
mobilenetv1_100.ra4_e3600_r224_in1k75.38224.61892.3127.6884.23224
  • أُضيف نموذج أولي لدالة set_input_size() إلى نماذج vit وswin v1/v2 للسماح بتغيير حجم الصورة وحجم الباتش وحجم النافذة بعد إنشاء النموذج.
  • تحسّن دعم معالجة أحجام مختلفة في swin، بالإضافة إلى set_input_size، فقد أُضيفت الحجج always_partition وstrict_img_size إلى __init__ للسماح بقيود أكثر مرونة على حجم الإدخال
  • إصلاح معلومات الفهارس غير المرتبة لغلّف الميزة الوسيط ‘Getter’، والتحقق من فهارس النطاق أو النطاقات نفسها.
  • أضِف عدة نماذج tiny < .5M بارامتر للاختبار، مُدرَّبة فعليًا على ImageNet-1k
نموذجtop1top1_errtop5top5_errparam_countimg_sizecrop_pct
test_efficientnet.r160_in1k47.15652.84471.72628.2740.361921.0
test_byobnet.r160_in1k46.69853.30271.67428.3260.461921.0
test_efficientnet.r160_in1k46.42653.57470.92829.0720.361600.875
test_byobnet.r160_in1k45.37854.62270.57229.4280.461600.875
test_vit.r160_in1k42.058.068.66431.3360.371921.0
test_vit.r160_in1k40.82259.17867.21232.7880.371600.875
  • إصلاح تهيئة رمز vit reg، شكرًا Promisery
  • إصلاحات أخرى متنوعة

24 يونيو 2024

  • 3 أوزان إضافية لنماذج MobileNetV4 الهجينة مع مخططات تهيئة مختلفة لأوزان MQA
نموذجtop1top1_errtop5top5_errparam_countimg_size
mobilenetv4_hybrid_large.ix_e600_r384_in1k84.35615.64496.8923.10837.76448
mobilenetv4_hybrid_large.ix_e600_r384_in1k83.99016.01096.7023.29837.76384
mobilenetv4_hybrid_medium.ix_e550_r384_in1k83.39416.60696.7603.24011.07448
mobilenetv4_hybrid_medium.ix_e550_r384_in1k82.96817.03296.4743.52611.07384
mobilenetv4_hybrid_medium.ix_e550_r256_in1k82.49217.50896.2783.72211.07320
mobilenetv4_hybrid_medium.ix_e550_r256_in1k81.44618.55495.7044.29611.07256
  • تحميل أوزان florence2 في نموذج DaViT

12 يونيو 2024

  • تمت إضافة نماذج MobileNetV4 والمجموعة الأولية من الأوزان المدرَّبة عبر timm:
نموذجtop1top1_errtop5top5_errparam_countimg_size
mobilenetv4_hybrid_large.e600_r384_in1k84.26615.73496.9363.06437.76448
mobilenetv4_hybrid_large.e600_r384_in1k83.80016.20096.7703.23037.76384
mobilenetv4_conv_large.e600_r384_in1k83.39216.60896.6223.37832.59448
mobilenetv4_conv_large.e600_r384_in1k82.95217.04896.2663.73432.59384
mobilenetv4_conv_large.e500_r256_in1k82.67417.32696.313.6932.59320
mobilenetv4_conv_large.e500_r256_in1k81.86218.13895.694.3132.59256
mobilenetv4_hybrid_medium.e500_r224_in1k81.27618.72495.7424.25811.07256
mobilenetv4_conv_medium.e500_r256_in1k80.85819.14295.7684.2329.72320
mobilenetv4_hybrid_medium.e500_r224_in1k80.44219.55895.384.6211.07224
mobilenetv4_conv_blur_medium.e500_r224_in1k80.14219.85895.2984.7029.72256
mobilenetv4_conv_medium.e500_r256_in1k79.92820.07295.1844.8169.72256
mobilenetv4_conv_medium.e500_r224_in1k79.80820.19295.1864.8149.72256
mobilenetv4_conv_blur_medium.e500_r224_in1k79.43820.56294.9325.0689.72224
mobilenetv4_conv_medium.e500_r224_in1k79.09420.90694.775.239.72224
mobilenetv4_conv_small.e2400_r224_in1k74.61625.38492.0727.9283.77256
mobilenetv4_conv_small.e1200_r224_in1k74.29225.70892.1167.8843.77256
mobilenetv4_conv_small.e2400_r224_in1k73.75626.24491.4228.5783.77224
mobilenetv4_conv_small.e1200_r224_in1k73.45426.54691.348.663.77224
  • دعم نموذج برج الصور Apple MobileCLIP (https://arxiv.org/pdf/2311.17049، FastViT و ViT-B) وإضافة أوزانه (جزء من دعم OpenCLIP).
  • تمت إضافة نموذج برج الصور CLIP وأوزان ViTamin (https://arxiv.org/abs/2404.02132) (جزء من دعم OpenCLIP).
  • نمذجة برج الصور ResNet المُعدَّل من OpenAI CLIP ودعم الأوزان (عبر ByobNet). إعادة هيكلة AttentionPool2d.

14 مايو 2024

  • دعم تحميل أوزان PaliGemma jax في نماذج SigLIP ViT باستخدام متوسط التجميع (average pooling).
  • أضِف نماذج Hiera من Meta (https://github.com/facebookresearch/hiera).
  • أضِف علم normalize= للتحويلات، وأعد كائن torch.Tensor غير مُعايَر بنوع البيانات الأصلي (لـ chug)
  • إصدار النسخة 1.0.3

11 مايو 2024

  • Searching for Better ViT Baselines (For the GPU Poor) الأوزان ومتغيرات vit التي تم إصدارها. استكشاف أشكال النماذج بين Tiny و Base.
نموذجtop1top5param_countimg_size
vit_mediumd_patch16_reg4_gap_256.sbb_in12k_ft_in1k86.20297.87464.11256
vit_betwixt_patch16_reg4_gap_256.sbb_in12k_ft_in1k85.41897.4860.4256
vit_mediumd_patch16_rope_reg1_gap_256.sbb_in1k84.32296.81263.95256
vit_betwixt_patch16_rope_reg4_gap_256.sbb_in1k83.90696.68460.23256
vit_base_patch16_rope_reg1_gap_256.sbb_in1k83.86696.6786.43256
vit_medium_patch16_rope_reg1_gap_256.sbb_in1k83.8196.82438.74256
vit_betwixt_patch16_reg4_gap_256.sbb_in1k83.70696.61660.4256
vit_betwixt_patch16_reg1_gap_256.sbb_in1k83.62896.54460.4256
vit_medium_patch16_reg4_gap_256.sbb_in1k83.4796.62238.88256
vit_medium_patch16_reg1_gap_256.sbb_in1k83.46296.54838.88256
vit_little_patch16_reg4_gap_256.sbb_in1k82.51496.26222.52256
vit_wee_patch16_reg1_gap_256.sbb_in1k80.25695.36013.42256
vit_pwee_patch16_reg1_gap_256.sbb_in1k80.07295.13615.25256
vit_mediumd_patch16_reg4_gap_256.sbb_in12kN/AN/A64.11256
vit_betwixt_patch16_reg4_gap_256.sbb_in12kN/AN/A60.4256
  • AttentionExtract helper added to extract attention maps from timm models. See example in https://github.com/huggingface/pytorch-image-models/discussions/1232#discussioncomment-9320949
  • تم تحسين واجهة forward_intermediates() وإضافتها إلى المزيد من النماذج، بما في ذلك بعض شبكات التلافيف (ConvNets) التي لديها طرق استخراج أخرى.
  • 1017 من 1047 معمارية نماذج تدعم استخراج الميزات عبر features_only=True. يمكن دعم المعماريات الـ 34 المتبقية، لكن بناءً على أولوية الطلبات.
  • إزالة الدوال المُعلَّمة بـ torch.jit.script بما في ذلك تنشيطات JIT القديمة. تعارض مع dynamo، كما أن dynamo يؤدي أداءً أفضل بكثير عند استخدامه.

11 أبريل 2024

  • مع الاستعداد لإصدار 1.0 الذي طال انتظاره، كانت الأمور مستقرة منذ فترة.
  • ميزة مهمة كانت مفقودة لفترة من الوقت، وهي دعم features_only=True لنماذج ViT التي تتميز بحالات مخفية مسطحة أو بتخطيطات وحدات غير قياسية (حتى الآن تغطي 'vit_*', 'twins_*', 'deit*', 'beit*', 'mvitv2*', 'eva*', 'samvit_*', 'flexivit*')
  • تم تحقيق دعم الميزة أعلاه من خلال واجهة برمجة تطبيقات جديدة forward_intermediates() يمكن استخدامها مع وحدة تغليف الميزة أو بشكل مباشر.
model = timm.create_model('vit_base_patch16_224')
final_feat, intermediates = model.forward_intermediates(input)
output = model.forward_head(final_feat)  # pooling + classifier head

print(final_feat.shape)
torch.Size([2, 197, 768])

for f in intermediates:
    print(f.shape)
torch.Size([2, 768, 14, 14])
torch.Size([2, 768, 14, 14])
torch.Size([2, 768, 14, 14])
torch.Size([2, 768, 14, 14])
torch.Size([2, 768, 14, 14])
torch.Size([2, 768, 14, 14])
torch.Size([2, 768, 14, 14])
torch.Size([2, 768, 14, 14])
torch.Size([2, 768, 14, 14])
torch.Size([2, 768, 14, 14])
torch.Size([2, 768, 14, 14])
torch.Size([2, 768, 14, 14])

print(output.shape)
torch.Size([2, 1000])
model = timm.create_model('eva02_base_patch16_clip_224', pretrained=True, img_size=512, features_only=True, out_indices=(-3, -2,))
output = model(torch.randn(2, 3, 512, 512))

for o in output:
    print(o.shape)
torch.Size([2, 768, 32, 32])
torch.Size([2, 768, 32, 32])
  • تمت إضافة أوزان برج الرؤية الخاص بـ TinyCLIP، شكرًا Thien Tran

19 فبراير 2024

  • تمت إضافة نماذج Next-ViT. مُعدّلة من https://github.com/bytedance/Next-ViT
  • تمت إضافة نماذج HGNet وPP-HGNetV2. مُعدّلة من https://github.com/PaddlePaddle/PaddleClas بواسطة SeeFun
  • تمت إزالة setup.py والانتقال إلى بناء يعتمد على pyproject.toml مدعوم بواسطة PDM
  • إضافة تنفيذ محدّث لنموذج EMA باستخدام _for_each لتقليل الحمل
  • دعم معاملات الأجهزة في سكربت التدريب للأجهزة غير GPU
  • إصلاحات أخرى متنوعة وإضافات صغيرة
  • تم رفع الحد الأدنى لإصدار Python المدعوم إلى 3.8
  • الإصدار 0.9.16

8 يناير 2024

إعادة هيكلة مجموعات البيانات والتحويلات

  • دعم مجموعات البيانات القابلة للتكرار (التدفق) في HuggingFace (--dataset hfids:org/dataset)
  • تعديلات على غلاف Webdataset لتحسين جلب معلومات التقسيمات، مع إمكانية الجلب التلقائي للتقسيمات من Webdataset المدعومة على HF hub
  • تم اختبار تدفّق datasets وغلّف webdataset من مستودع HF باستخدام أحدث عمليات رفع timm لـ ImageNet إلى https://huggingface.co/timm
  • اجعل مفاتيح أعمدة/حقول الإدخال والاستهداف متسقة عبر مجموعات البيانات وقدمها عبر args
  • دعم كامل للصور أحادية اللون عند استخدام --input-size 1 224 224 أو --in-chans 1، حيث يُضبط تحويل الصور في مجموعة البيانات بشكل مناسب
  • حسّن عدة تحويلات بديلة للمحاصيل وإعادة الحجم (ResizeKeepRatio، RandomCropOrPad، إلخ) للاستخدام في مشروع PixParse للذكاء الاصطناعي المستند إلى المستندات
  • أضِف خيار احتمال تذبذب الألوان بنمط SimCLR إلى جانب خيارات تحويل الصورة إلى رمادية وضبابية غاوسية في عمليات المعالجة والمتغيرات
  • السماح بالتدريب دون مجموعة تحقق (--val-split '') في سكربت التدريب
  • أضف --bce-sum (المجموع عبر بُعد الفئة) و--bce-pos-weight (وزن الإيجابي) كحجج للتدريب، فهي تعديلات شائعة على دالة فقد BCE كنت أكتبها يدويًا بشكل متكرر

23 نوفمبر 2023

  • تمت إضافة نماذج EfficientViT-Large، شكرًا SeeFun
  • إصلاح توافق Python 3.7، سيتم التوقف عن دعمه قريبًا
  • إصلاحات أخرى متنوعة
  • الإصدار 0.9.12

20 نوفمبر 2023

  • تمت إضافة مرونة كبيرة لنماذج timm المستندة إلى Hugging Face Hub عبر model_args إدخال الإعدادات. model_args سيتم تمريرها كـ kwargs إلى النماذج عند الإنشاء. راجع المثال في https://huggingface.co/gaunernst/vit_base_patch16_1024_128.audiomae_as2m_ft_as20k/blob/main/config.json الاستخدام: https://github.com/huggingface/pytorch-image-models/discussions/2035
  • تم تحديث ملفات csv الخاصة بمجموعة تقييم واختبار imagenet بأحدث النماذج
  • تنظيف الأنواع والتوثيق في vision_transformer.py بواسطة Laureηt
  • إصدار 0.9.11

3 نوفمبر 2023

20 أكتوبر 2023

  • SigLIP أوزان برج الصور المدعومة في vision_transformer.py.
    • إمكانية كبيرة للضبط الدقيق والاستخدام في الميزات اللاحقة.
  • دعم تجريبي لـ register في نماذج vit وفقاً لـ Vision Transformers Need Registers
  • تم تحديث RepViT مع إصدار أوزان جديد. شكرًا wangao
  • إضافة دعم لتغيير حجم الباتش (عند تحميل الأوزان المُسبقة التدريب) إلى نماذج Swin
  • إصدار 0.9.8 قيد الانتظار

1 سبتمبر 2023

  • تمت إضافة TinyViT بواسطة SeeFun
  • إصلاح EfficientViT (MIT) لاستخدام torch.autocast حتى يعمل حتى إصدار PT 1.10
  • إصدار 0.9.7

28 أغسطس 2023

  • إضافة دعم لحجم الصورة الديناميكي إلى النماذج في vision_transformer.py, vision_transformer_hybrid.py, deit.py, و eva.py دون كسر التوافق الرجعي. أضف dynamic_img_size=True إلى المعاملات عند إنشاء النموذج للسماح بتغيير حجم الشبكة (استيفاء تضمين الموضع المطلق و/أو ROPE في كل تمريرة أمامية). أضف dynamic_img_pad=True للسماح بأحجام صور غير قابلة للقسمة على حجم الباتش (تعبئة الزاوية السفلية اليمنى حتى حجم الباتش في كل تمريرة أمامية). تمكين أي من الوضعين الديناميكيين سيكسر تتبع FX ما لم يُضف وحدة PatchEmbed كعقدة ورقية. الطريقة الحالية لتغيير حجم تضمين الموضع عن طريق تمرير img_size مختلفة (استيفاء أوزان التضمين المُدرَّب مسبقًا مرة واحدة) عند الإنشاء لا تزال تعمل. الطريقة الحالية لتغيير patch_size (تغيير حجم أوزان patch_embed المُدرَّبة مسبقًا مرة واحدة) عند الإنشاء لا تزال تعمل. مثال على أمر التحقق python validate.py --data-dir /imagenet --model vit_base_patch16_224 --amp --amp-dtype bfloat16 --img-size 255 --crop-pct 1.0 --model-kwargs dynamic_img_size=True dyamic_img_pad=True
    • أضف dynamic_img_size=True إلى arguments عند إنشاء النموذج للسماح بتغيير حجم الشبكة (استيفاء abs و/أو ROPE pos embed في كل تمريرة أمامية).
    • أضف dynamic_img_pad=True للسماح بأحجام صور غير قابلة للقسمة على حجم الباتش (يتم ملء الزاوية السفلية اليمنى حتى حجم الباتش في كل تمريرة أمامية).
    • تفعيل أي من وضعي الديناميكية سيكسر تتبع FX ما لم يُضف وحدة PatchEmbed كعقدة نهائية.
    • لا يزال الأسلوب الحالي لتغيير حجم تضمين الموقع عبر تمرير قيم مختلفة لـimg_size (باستيفاء أوزان التضمين المُدرَّبة مسبقًا مرة واحدة) عند الإنشاء يعمل بشكل صحيح.
    • تعمل الطريقة القائمة لتغيير patch_size (إعادة تعيين أوزان patch_embed المُدرَّبة مسبقًا مرة واحدة) عند الإنشاء.
    • مثال لأمر التحقق python validate.py --data-dir /imagenet --model vit_base_patch16_224 --amp --amp-dtype bfloat16 --img-size 255 --crop-pct 1.0 --model-kwargs dynamic_img_size=True dyamic_img_pad=True

25 أغسطس 2023

11 أغسطس 2023

  • تدعم نماذج Swin وMaxViT وCoAtNet وBEiT تغيير حجم الصورة/النافذة عند الإنشاء مع تكيّف الأوزان المُسبقة التدريب
  • مثال على أمر التحقق لاختباره مع تغيير الحجم غير المربع python validate.py --data-dir /imagenet --model swin_base_patch4_window7_224.ms_in22k_ft_in1k --amp --amp-dtype bfloat16 --input-size 3 256 320 --model-kwargs window_size=8,10 img_size=256,320

3 أغسطس 2023

  • إضافة أوزان GluonCV لـ HRNet w18_small و w18_small_v2. تم التحويل بواسطة SeeFun
  • إصلاح تراجع تسمية نموذج selecsls*
  • يعمل تضمين الباتش والموضع لـ ViT/EVA مع أوزان bfloat16/float16 عند التحميل (أو التفعيلات عند تغيير الحجم الفوري)
  • التحضير لإصدار v0.9.5

27 يوليو 2023

  • تمت إضافة أوزان seresnextaa201d_32x8d.sw_in12k_ft_in1k_384 المدرّبة بواسطة timm (والتدريب المسبق .sw_in12k) بدقة top-1 تبلغ 87.3% على ImageNet-1k، وهو أفضل نموذج من عائلة ResNet على ImageNet على حد علمي.
  • نموذج RepViT وأوزانه (https://arxiv.org/abs/2307.09283) أُضيف بواسطة wangao
  • أوزان ميزات I-JEPA ViT (بدون مصنّف) أُضيفت بواسطة SeeFun
  • أوزان ميزة SAM-ViT (تجزئة أي شيء) (بدون مصنف) أُضيفت بواسطة SeeFun
  • إضافة دعم لطرق استخراج الميزات البديلة والفهارس السالبة إلى EfficientNet
  • إضافة مُحسِّن NAdamW
  • إصلاحات متنوعة

11 مايو 2023

  • timm الإصدار 0.9، الانتقال من إصدارات 0.8.xdev

10 مايو 2023

  • أصبح تنزيل Hugging Face Hub هو الافتراضي، 1132 نموذجًا على https://huggingface.co/timm، 1163 وزنًا في timm
  • تمت إضافة أوزان العمود الفقري للميزات vit الخاصة بـ DINOv2 بفضل Leng Yue
  • تمت إضافة أوزان العمود الفقري للميزات لـ FB MAE vit
  • تمت إضافة أوزان العمود الفقري OpenCLIP DataComp-XL L/14 feat
  • MetaFormer (poolformer-v2, caformer, convformer، poolformer المحدّث (v1)) مع أوزان أُضيفت بواسطة Fredo Guan
  • دالة تجريبية get_intermediate_layers على نماذج vit/deit لاستخراج الحالات المخفية (مستوحاة من تطبيق DINO). هذا العمل قيد التنفيذ وقد يتغير بشكل كبير… نرحب بالملاحظات.
  • تُطلق عملية إنشاء النموذج خطأً إذا كان pretrained=True ولم تكن هناك أوزان موجودة (بدلاً من المتابعة باستخدام التهيئة العشوائية)
  • إصلاح مشكلة تراجع الأداء في الأوزان المستمدة من TF لنماذج inception / nasnet التي تحتوي على 1001 فئة في المصنّفات الأصلية
  • تمت إضافة مُحسّنات bitsandbytes (https://github.com/TimDettmers/bitsandbytes) إلى المصنع، استخدم البادئة bnb، مثل bnbadam8bit
  • تنظيف وإصلاحات متنوعة
  • الاختبارات النهائية قبل الانتقال إلى الإصدار 0.9 وإخراج timm من حالة ما قبل الإصدار

27 أبريل 2023

  • 97% من نماذج timm المرفوعة إلى HF Hub، وكثير منها محدّث لدعم تكوينات ما قبل التدريب متعددة الأوزان
  • تنظيف وإعادة هيكلة بسيطة لدفعة أخرى من النماذج بعد إضافة الأوزان المتعددة. دعم إضافي لـ fused_attn (F.sdpa) و features_only، وإصلاحات لـ torchscript.

21 أبريل 2023

  • تمت إضافة دعم تراكم التدرجات إلى سكربت التدريب واختباره (--grad-accum-steps)، شكرًا Taeksang Kim
  • أوزان إضافية على HF Hub (cspnet, cait, volo, xcit, tresnet, hardcorenas, densenet, dpn, vovnet, xception_aligned)
  • تمت إضافة --head-init-scale و--head-init-bias إلى train.py لتغيير مقياس رأس التصنيف وتعيين انحياز ثابت للضبط الدقيق
  • إزالة جميع استخدامات inplace_abn، واستبدال الاستخدام في tresnet بـ BatchNorm القياسية (مع تعديل الأوزان وفقاً لذلك).

12 أبريل 2023

  • إضافة سكربت تصدير ONNX، وسكربت التحقق، ومساعدات كنت أحتفظ بها منذ فترة طويلة. ضبط تعبئة 'same' للحصول على تصدير أفضل مع ONNX وpytorch الحديثة.
  • إعادة هيكلة معاملات dropout لنماذج vit والنماذج المشابهة لها، وفصل drop_rate إلى drop_rate (dropout للمصنّف)، proj_drop_rate (تحويلات mlp / out في الكتلة)، pos_drop_rate (dropout لتضمين الموقع)، attn_drop_rate (dropout للانتباه). بالإضافة إلى ذلك، أضف patch dropout (FLIP) إلى نماذج vit وeva.
  • دعم F.scaled_dot_product_attention المدمج لعدد أكبر من نماذج vit، وإضافة متغير بيئة (TIMM_FUSED_ATTN) للتحكم، وواجهة إعدادات لتفعيل/تعطيل
  • أضف هياكل EVA-CLIP مع أوزان برج الصور، وصولاً إلى نموذج «الضخم» الذي يحتوي على 4 مليارات من المعاملات، بالإضافة إلى وضع OpenAI ViT بحجم 336x336 الذي كان مفقوداً.

5 أبريل 2023

  • جميع نماذج ResNet المُرسَلة إلى Hugging Face Hub مع دعم الأوزان المتعددة
    • جميع الأوزان المدربة سابقًا لـ timm أُضيفت مع وسوم مبنية على الوصفات للتمييز
    • جميع نماذج ResNet تردّ بالمثل A1/A2/A3 (البذرة 0) وأوزان مثال R50 B/C1/C2/D متاحة
    • إضافة أوزان وصفة torchvision v2 إلى الأصول الأصلية لـ torchvision
    • انظر إلى جدول المقارنة في https://huggingface.co/timm/seresnextaa101d_32x8d.sw_in12k_ft_in1k_288#model-comparison
  • تتوفر الآن عمليات ضبط دقيقة جديدة على ImageNet-12k + ImageNet-1k لعدد قليل من نماذج ResNet المضادة للتشويش
    • resnetaa50d.sw_in12k_ft_in1k - 81.7 @ 224, 82.6 @ 288
    • resnetaa101d.sw_in12k_ft_in1k - 83.5 @ 224, 84.1 @ 288
    • seresnextaa101d_32x8d.sw_in12k_ft_in1k - 86.0 @ 224, 86.5 @ 288
    • seresnextaa101d_32x8d.sw_in12k_ft_in1k_288 - 86.5 @ 288, 86.7 @ 320

31 مارس 2023

  • إضافة أول نموذج ConvNext-XXLarge CLIP مُعاد تدريبه على IN-1k، بالإضافة إلى إعادة التدريب الوسيطة على IN-12k لنماذج convnext-base/large CLIP.
نموذجtop1top5img_sizeparam_countgmacsmacts
convnext_xxlarge.clip_laion2b_soup_ft_in1k88.61298.704256846.47198.09124.45
convnext_large_mlp.clip_laion2b_soup_ft_in12k_in1k_38488.31298.578384200.13101.11126.74
convnext_large_mlp.clip_laion2b_soup_ft_in12k_in1k_32087.96898.47320200.1370.2188.02
convnext_base.clip_laion2b_augreg_ft_in12k_in1k_38487.13898.21238488.5945.2184.49
convnext_base.clip_laion2b_augreg_ft_in12k_in1k86.34497.9725688.5920.0937.55
  • إضافة أوزان EVA-02 MIM المُسبقة التدريب والمُحسّنة، ورفعها إلى HF hub وتحديث بطاقات النماذج لجميع نماذج EVA. أول نموذج يتجاوز 90% في top-1 (99% في top-5)! اطّلع على الكود والأوزان الأصلية في https://github.com/baaivision/EVA لمزيد من التفاصيل حول عملهم الذي يمزج بين MIM وCLIP مع العديد من التعديلات على النماذج، ومجموعات البيانات، وصفات التدريب.
نموذجtop1top5param_countimg_size
eva02_large_patch14_448.mim_m38m_ft_in22k_in1k90.05499.042305.08448
eva02_large_patch14_448.mim_in22k_ft_in22k_in1k89.94699.01305.08448
eva_giant_patch14_560.m30m_ft_in22k_in1k89.79298.9921014.45560
eva02_large_patch14_448.mim_in22k_ft_in1k89.62698.954305.08448
eva02_large_patch14_448.mim_m38m_ft_in1k89.5798.918305.08448
eva_giant_patch14_336.m30m_ft_in22k_in1k89.5698.9561013.01336
eva_giant_patch14_336.clip_ft_in1k89.46698.821013.01336
eva_large_patch14_336.in22k_ft_in22k_in1k89.21498.854304.53336
eva_giant_patch14_224.clip_ft_in1k88.88298.6781012.56224
eva02_base_patch14_448.mim_in22k_ft_in22k_in1k88.69298.72287.12448
eva_large_patch14_336.in22k_ft_in1k88.65298.722304.53336
eva_large_patch14_196.in22k_ft_in22k_in1k88.59298.656304.14196
eva02_base_patch14_448.mim_in22k_ft_in1k88.2398.56487.12448
eva_large_patch14_196.in22k_ft_in1k87.93498.504304.14196
eva02_small_patch14_336.mim_in22k_ft_in1k85.7497.61422.13336
eva02_tiny_patch14_336.mim_in22k_ft_in1k80.65895.5245.76336
  • أوزان متعددة ومركز HF للنماذج القائمة على DeiT وMLP-Mixer

22 مارس 2023

  • تم دفع المزيد من الأوزان إلى HF hub مع دعم الأوزان المتعددة، بما في ذلك: regnet.py، rexnet.py، byobnet.py، resnetv2.py، swin_transformer.py، swin_transformer_v2.py، swin_transformer_v2_cr.py
  • تدعم نماذج Swin Transformer استخراج الميزات (خرائط ميزات بصيغة NCHW لـ swinv2_cr_*، وبصيغة NHWC لجميع النماذج الأخرى) ومخرجات التضمين المكاني.
  • أُضيفت نماذج وأوزان FocalNet (من https://github.com/microsoft/FocalNet) مع إعادة هيكلة كبيرة، واستخراج الميزات، وعدم وجود قيود على الدقة أو الحجم الثابت
  • زادت أوزان RegNet مع أوزان HF hub push وSWAG وSEER وأوزان torchvision v2. يُعد SEER ضعيفًا نسبيًا من حيث الأداء مقارنةً بحجم النموذج، لكنه قد يكون مفيدًا.
  • نماذج ImageNet-12k مُسبقة التدريب و ImageNet-1k المُحسّنة timm أوزان:
    • rexnetr_200.sw_in12k_ft_in1k - 82.6 @ 224, 83.2 @ 288
    • rexnetr_300.sw_in12k_ft_in1k - 84.0 @ 224, 84.5 @ 288
    • regnety_120.sw_in12k_ft_in1k - 85.0 @ 224, 85.4 @ 288
    • regnety_160.lion_in12k_ft_in1k - 85.6 @ 224, 86.0 @ 288
    • regnety_160.sw_in12k_ft_in1k - 85.6 @ 224، 86.0 @ 288 (مقارنةً بـ SWAG PT + 1k FT، هذا هو نفسه لكن بدقة أقل بكثير، ويتفوق بشكل كبير على SEER FT)
  • تمت إضافة ميزة إيقاف استخدام أسماء النماذج وإعادة تعيينها (وهي خطوة محورية لإخراج الإصدار 0.8.x من مرحلة ما قبل الإطلاق). جارٍ إضافة خرائط التحويل…
  • إصلاحات وتحسينات طفيفة للأخطاء.

26 فبراير 2023

  • إضافة أوزان برج الصور المُسبقة التدريب لنموذج ConvNeXt-XXLarge CLIP من أجل الضبط الدقيق واستخراج الميزات (الضبط الدقيق قيد الإعداد) — راجع بطاقة النموذج
  • تحديث قيمة convnext_xxlarge الافتراضية لـ LayerNorm eps إلى 1e-5 (لأوزان CLIP، لتحسين الاستقرار)
  • 0.8.15dev0

20 فبراير 2023

  • أضف أوزان برج الصور convnext_large_mlp.clip_laion2b_ft_320 وconvnext_large_mlp.clip_laion2b_ft_soup_320 بحجم 320x320 لاستخراج الميزات وضبط الدقة
  • 0.8.13dev0 إصدار pypi لأحدث التغييرات مع الانتقال إلى منظمة huggingface

16 فبراير 2023

  • تمت إضافة دعم نقاط التفتيش safetensor
  • أضِف أفكارًا من «Scaling Vision Transformers to 22 B. Params» (https://arxiv.org/abs/2302.05442) — qk norm، RmsNorm، كتلة متوازية
  • إضافة دعم لـ F.scaleddot_product_attention (PyTorch 2.0 فقط) إلى `vit,vit_relpos,coatnet/maxxvit` (للبداية)
  • تمت إضافة مُحسِّن Lion (مع خيار متعدد المتجهات) (https://arxiv.org/abs/2302.06675)
  • يعمل التحقق من التدرجات مع features_only=True

7 فبراير 2023

  • تمت إضافة أرقام جديدة لمعايير الاستدلال في مجلد results.
  • إضافة أوزان تدريب convnext LAION CLIP والمجموعة الأولية من عمليات الضبط الدقيق على in1k
    • convnext_base.clip_laion2b_augreg_ft_in1k - 86.2% @ 256x256
    • convnext_base.clip_laiona_augreg_ft_in1k_384 - 86.5% @ 384x384
    • convnext_large_mlp.clip_laion2b_augreg_ft_in1k - 87.3% @ 256x256
    • convnext_large_mlp.clip_laion2b_augreg_ft_in1k_384 - 87.9% @ 384x384
  • إضافة نماذج DaViT. يدعم features_only=True. مُعدّلة من https://github.com/dingmyu/davit بواسطة Fredo.
  • استخدم NormMlpClassifierHead مشتركًا عبر MaxViT وConvNeXt وDaViT
  • إضافة نموذج EfficientFormer-V2، وتحديث EfficientFormer، وإعادة هيكلة LeViT (المعماريات ذات الصلة الوثيقة). الأوزان متاحة على HF hub.
    • بنية EfficientFormer-V2 الجديدة، إعادة هيكلة كبيرة من الأصل في (https://github.com/snap-research/EfficientFormer). تدعم features_only=True.
    • تحديثات طفيفة على EfficientFormer.
    • إعادة هيكلة نماذج LeViT إلى مراحل، وإضافة دعم features_only=True إلى متغيرات conv الجديدة، مع ضرورة إعادة تعيين الأوزان.
  • نقل بيانات ImageNet الوصفية (مجموعات الكلمات، الفهارس) من /results إلى timm/data/_info.
  • إضافة فئات ImageNetInfo / DatasetInfo لتوفير تسميات لتخطيطات مختلفة لتصنيفات ImageNet في timm
    • قم بتحديث inference.py لاستخدامه، جرّب: python inference.py --data-dir /folder/to/images --model convnext_small.in12k --label-type detail --topk 5
  • جاهز لإصدار 0.8.10 التجريبي على pypi (الاختبار النهائي).

20 يناير 2023

  • أضف تدريبين دقيقين لنموذجي convnext 12k -> 1k بدقة 384x384

    • convnext_tiny.in12k_ft_in1k_384 - 85.1 @ 384
    • convnext_small.in12k_ft_in1k_384 - 86.2 @ 384
  • دفع جميع أوزان MaxxViT إلى HF hub، وإضافة عمليات ضبط دقيقة جديدة من ImageNet-12k إلى 1k لنماذج rw الأساسية MaxViT وCoAtNet 1/2

نموذجtop1top5عينة / ثانيةالمعاملات (مليون)GMACAct (M)
maxvit_xlarge_tf_512.in21k_ft_in1k88.5398.6421.76475.77534.141413.22
maxvit_xlarge_tf_384.in21k_ft_in1k88.3298.5442.53475.32292.78668.76
maxvit_base_tf_512.in21k_ft_in1k88.2098.5350.87119.88138.02703.99
maxvit_large_tf_512.in21k_ft_in1k88.0498.4036.42212.33244.75942.15
maxvit_large_tf_384.in21k_ft_in1k87.9898.5671.75212.03132.55445.84
maxvit_base_tf_384.in21k_ft_in1k87.9298.54104.71119.6573.80332.90
maxvit_rmlp_base_rw_384.sw_in12k_ft_in1k87.8198.37106.55116.1470.97318.95
maxxvitv2_rmlp_base_rw_384.sw_in12k_ft_in1k87.4798.37149.49116.0972.98213.74
coatnet_rmlp_2_rw_384.sw_in12k_ft_in1k87.3998.31160.8073.8847.69209.43
maxvit_rmlp_base_rw_224.sw_in12k_ft_in1k86.8998.02375.86116.1423.1592.64
maxxvitv2_rmlp_base_rw_224.sw_in12k_ft_in1k86.6498.02501.03116.0924.2062.77
maxvit_base_tf_512.in1k86.6097.9250.75119.88138.02703.99
coatnet_2_rw_224.sw_in12k_ft_in1k86.5797.89631.8873.8715.0949.22
maxvit_large_tf_512.in1k86.5297.8836.04212.33244.75942.15
coatnet_rmlp_2_rw_224.sw_in12k_ft_in1k86.4997.90620.5873.8815.1854.78
maxvit_base_tf_384.in1k86.2997.80101.09119.6573.80332.90
maxvit_large_tf_384.in1k86.2397.6970.56212.03132.55445.84
maxvit_small_tf_512.in1k86.1097.7688.6369.1367.26383.77
maxvit_tiny_tf_512.in1k85.6797.58144.2531.0533.49257.59
maxvit_small_tf_384.in1k85.5497.46188.3569.0235.87183.65
maxvit_tiny_tf_384.in1k85.1197.38293.4630.9817.53123.42
maxvit_large_tf_224.in1k84.9396.97247.71211.7943.68127.35
coatnet_rmlp_1_rw2_224.sw_in12k_ft_in1k84.9096.961025.4541.728.1140.13
maxvit_base_tf_224.in1k84.8596.99358.25119.4724.0495.01
maxxvit_rmlp_small_rw_256.sw_in1k84.6397.06575.5366.0114.6758.38
coatnet_rmlp_2_rw_224.sw_in1k84.6196.74625.8173.8815.1854.78
maxvit_rmlp_small_rw_224.sw_in1k84.4996.76693.8264.9010.7549.30
maxvit_small_tf_224.in1k84.4396.83647.9668.9311.6653.17
maxvit_rmlp_tiny_rw_256.sw_in1k84.2396.78807.2129.156.7746.92
coatnet_1_rw_224.sw_in1k83.6296.38989.5941.728.0434.60
maxvit_tiny_rw_224.sw_in1k83.5096.501100.5329.065.1133.11
maxvit_tiny_tf_224.in1k83.4196.591004.9430.925.6035.78
coatnet_rmlp_1_rw_224.sw_in1k83.3696.451093.0341.697.8535.47
maxxvitv2_nano_rw_256.sw_in1k83.1196.331276.8823.706.2623.05
maxxvit_rmlp_nano_rw_256.sw_in1k83.0396.341341.2416.784.3726.05
maxvit_rmlp_nano_rw_256.sw_in1k82.9696.261283.2415.504.4731.92
maxvit_nano_rw_256.sw_in1k82.9396.231218.1715.454.4630.28
coatnet_bn_0_rw_224.sw_in1k82.3996.191600.1427.444.6722.04
coatnet_0_rw_224.sw_in1k82.3995.841831.2127.444.4318.73
coatnet_rmlp_nano_rw_224.sw_in1k82.0595.872109.0915.152.6220.34
coatnext_nano_rw_224.sw_in1k81.9595.922525.5214.702.4712.80
coatnet_nano_rw_224.sw_in1k81.7095.642344.5215.142.4115.41
maxvit_rmlp_pico_rw_256.sw_in1k80.5395.211594.717.521.8524.86

11 يناير 2023

  • تحديث سلسلة ConvNeXt ImageNet-12k pretrain بإضافة وزنَين مُعدَّين بدقة جديدَين (ووسوم pre FT .in12k )
    • convnext_nano.in12k_ft_in1k - 82.3 @ 224، 82.9 @ 288 (تم إصداره سابقًا)
    • convnext_tiny.in12k_ft_in1k - 84.2 @ 224, 84.5 @ 288
    • convnext_small.in12k_ft_in1k - 85.2 @ 224, 85.3 @ 288

6 يناير 2023

  • أخيرًا، تمكنت من إضافة --model-kwargs و --opt-kwargs إلى السكربتات لتمرير الحُجج النادرة مباشرةً إلى فئات النموذج من سطر الأوامر
    • train.py --data-dir /imagenet --model resnet50 --amp --model-kwargs output_stride=16 act_layer=silu
    • train.py --data-dir /imagenet --model vit_base_patch16_clip_224 --img-size 240 --amp --model-kwargs img_size=240 patch_size=12
  • تنظيف بعض النماذج الشائعة لدعم تمرير المعاملات بشكل أفضل / دمجها مع إعدادات النموذج، مع المزيد قادم.

5 يناير 2023

23 ديسمبر 2022 🎄☃

  • إضافة نماذج FlexiViT وأوزانها من https://github.com/google-research/big_vision (اطّلع على الورقة البحثية في https://arxiv.org/abs/2212.08013)
    • ملاحظة: حاليًا، تغيير الحجم ثابت عند إنشاء النموذج، بينما أخذ عينات ديناميكي لحظي لحجم الباتش أثناء التدريب قيد التطوير.
  • تم تحديث المزيد من النماذج إلى أوزان متعددة وأصبحت قابلة للتنزيل عبر HF hub الآن (convnext, efficientnet, mobilenet, vision_transformer*, beit)
  • أكثر من وسم نموذج مُسبق التدريب وتعديلات، تم تغيير بعض أسماء النماذج (نعمل على ترجمات الإلغاء، فكّر في فرع DEV الرئيسي الآن، استخدم 0.6.x للاستخدام المستقر)
  • نماذج تدريب مسبق إضافية من ImageNet-12k (مجموعة فرعية من 22k) تظهر:
    • efficientnet_b5.in12k_ft_in1k - 85.9 @ 448x448
    • vit_medium_patch16_gap_384.in12k_ft_in1k - 85.5 @ 384x384
    • vit_medium_patch16_gap_256.in12k_ft_in1k - 84.5 @ 256x256
    • convnext_nano.in12k_ft_in1k - 82.9 @ 288x288

8 ديسمبر 2022

  • أضِف ‘EVA l’ إلى vision_transformer.py, تدريب مسبق بأسلوب MAE لـ ViT-L/14 باستخدام أهداف EVA-CLIP، مع تدريب دقيق على ImageNet-1k (مع استخدام ImageNet-22k كمرحلة وسيطة لبعض النماذج)
نموذجtop1param_countgmacmactshub
eva_large_patch14_336.in22k_ft_in22k_in1k89.2304.5191.1270.2رابط
eva_large_patch14_336.in22k_ft_in1k88.7304.5191.1270.2رابط
eva_large_patch14_196.in22k_ft_in22k_in1k88.6304.161.663.5رابط
eva_large_patch14_196.in22k_ft_in1k87.9304.161.663.5رابط

6 ديسمبر 2022

نموذجtop1param_countgmacmactshub
eva_giant_patch14_560.m30m_ft_in22k_in1k89.81014.41906.82577.2رابط
eva_giant_patch14_336.m30m_ft_in22k_in1k89.61013620.6550.7رابط
eva_giant_patch14_336.clip_ft_in1k89.41013620.6550.7رابط
eva_giant_patch14_224.clip_ft_in1k89.11012.6267.2192.6رابط

5 ديسمبر 2022

  • إصدار ما قبل الإطلاق (0.8.0dev0) لدعم الأوزان المتعددة (model_arch.pretrained_tag). قم بالتثبيت باستخدام pip install --pre timm
    • vision_transformer وmaxvit وconvnext هي أول ثلاث نماذج تدعم
    • تتغير أسماء النماذج مع هذا (سيتم دمج الدالة السابقة _21k وما شابه)، ما زلنا نعمل على معالجة إجراءات الإيقاف
    • من المحتمل وجود أخطاء، لكنني بحاجة إلى ملاحظات، لذا يرجى تجربتها
    • إذا كان الاستقرار مطلوبًا، يُرجى استخدام إصدارات 0.6.x من pypi أو استنساخ الكود من فرع 0.6.x
  • تمت إضافة دعم لـ PyTorch 2.0 compile في train/validate/inference/benchmark، استخدم الحجة --torchcompile
  • يسمح سكربت الاستدلال بمزيد من التحكم في المخرجات، حيث يمكنك اختيار k لمؤشر الفئة الأعلى واحتمالها، مع إمكانية إخراج البيانات بصيغ json أو csv أو parquet
  • أضف مجموعة كاملة من أوزان برج الصور المُحسَّنة لنموذج CLIP من كلا نموذجي LAION-2B وOpenAI CLIP الأصلي
نموذجtop1param_countgmacmactshub
vit_huge_patch14_clip_336.laion2b_ft_in12k_in1k88.6632.5391407.5رابط
vit_large_patch14_clip_336.openai_ft_in12k_in1k88.3304.5191.1270.2رابط
vit_huge_patch14_clip_224.laion2b_ft_in12k_in1k88.2632167.4139.4رابط
vit_large_patch14_clip_336.laion2b_ft_in12k_in1k88.2304.5191.1270.2رابط
vit_large_patch14_clip_224.openai_ft_in12k_in1k88.2304.281.188.8رابط
vit_large_patch14_clip_224.laion2b_ft_in12k_in1k87.9304.281.188.8رابط
vit_large_patch14_clip_224.openai_ft_in1k87.9304.281.188.8رابط
vit_large_patch14_clip_336.laion2b_ft_in1k87.9304.5191.1270.2رابط
vit_huge_patch14_clip_224.laion2b_ft_in1k87.6632167.4139.4رابط
vit_large_patch14_clip_224.laion2b_ft_in1k87.3304.281.188.8رابط
vit_base_patch16_clip_384.laion2b_ft_in12k_in1k87.286.955.5101.6رابط
vit_base_patch16_clip_384.openai_ft_in12k_in1k8786.955.5101.6رابط
vit_base_patch16_clip_384.laion2b_ft_in1k86.686.955.5101.6رابط
vit_base_patch16_clip_384.openai_ft_in1k86.286.955.5101.6رابط
vit_base_patch16_clip_224.laion2b_ft_in12k_in1k86.286.617.623.9رابط
vit_base_patch16_clip_224.openai_ft_in12k_in1k85.986.617.623.9رابط
vit_base_patch32_clip_448.laion2b_ft_in12k_in1k85.888.317.923.9رابط
vit_base_patch16_clip_224.laion2b_ft_in1k85.586.617.623.9رابط
vit_base_patch32_clip_384.laion2b_ft_in12k_in1k85.488.313.116.5رابط
vit_base_patch16_clip_224.openai_ft_in1k85.386.617.623.9رابط
vit_base_patch32_clip_384.openai_ft_in12k_in1k85.288.313.116.5رابط
vit_base_patch32_clip_224.laion2b_ft_in12k_in1k83.388.24.45رابط
vit_base_patch32_clip_224.laion2b_ft_in1k82.688.24.45رابط
vit_base_patch32_clip_224.openai_ft_in1k81.988.24.45رابط
  • نقل أوزان MaxViT من TensorFlow من التنفيذ الرسمي في https://github.com/google-research/maxvit
    • شهدت أوزان الضبط الدقيق in21k المُحسّنة إلى 384/512 انخفاضات أكبر مما كان متوقعًا، مع احتمال فقدان بعض التفاصيل، لكن يبدو أن الضبط الدقيق 21k كان حساسًا للتعديلات الطفيفة في المعالجة المسبقة
نموذجtop1param_countgmacmactshub
maxvit_xlarge_tf_512.in21k_ft_in1k88.5475.8534.11413.2رابط
maxvit_xlarge_tf_384.in21k_ft_in1k88.3475.3292.8668.8رابط
maxvit_base_tf_512.in21k_ft_in1k88.2119.9138704رابط
maxvit_large_tf_512.in21k_ft_in1k88212.3244.8942.2رابط
maxvit_large_tf_384.in21k_ft_in1k88212132.6445.8رابط
maxvit_base_tf_384.in21k_ft_in1k87.9119.673.8332.9رابط
maxvit_base_tf_512.in1k86.6119.9138704رابط
maxvit_large_tf_512.in1k86.5212.3244.8942.2رابط
maxvit_base_tf_384.in1k86.3119.673.8332.9رابط
maxvit_large_tf_384.in1k86.2212132.6445.8رابط
maxvit_small_tf_512.in1k86.169.167.3383.8رابط
maxvit_tiny_tf_512.in1k85.73133.5257.6رابط
maxvit_small_tf_384.in1k85.56935.9183.6رابط
maxvit_tiny_tf_384.in1k85.13117.5123.4رابط
maxvit_large_tf_224.in1k84.9211.843.7127.4رابط
maxvit_base_tf_224.in1k84.9119.52495رابط
maxvit_small_tf_224.in1k84.468.911.753.2رابط
maxvit_tiny_tf_224.in1k83.430.95.635.8رابط

15 أكتوبر 2022

  • تحسينات على سكربت التدريب والتحقق
  • دعم الأجهزة غير GPU (أي CPU)
  • توافق SLURM مع سكربت التدريب
  • دعم مجموعات بيانات HF (عبر ReaderHfds)
  • تحسينات تحميل البيانات في TFDS/WDS (تم إصلاح ملء/تكرار العينة للاستخدام الموزّع فيما يتعلق بتقدير عدد العينات)
  • دعم in_chans !=3 في السكربتات / المُحمِّل
  • مُحسِّن Adan
  • يمكن تفعيل جدولة معدل التعلم لكل خطوة عبر args
  • تمت إعادة تسمية مجموعة بيانات ‘parsers’ إلى ‘readers’، وهي أكثر وصفًا لغرضها
  • تغيّرت حُجج AMP، وAPEX عبر --amp-impl apex، ودعم bfloat16 عبر --amp-dtype bfloat16
  • تم تحويل الفرع الرئيسي إلى الإصدار 0.7.x، وتم إنشاء فرع منفصل للإصدار 0.6x من أجل إصدار مستقر لإضافات الأوزان فقط
  • إعادة تسمية الفرع master إلى main

10 أكتوبر 2022

  • أوزان إضافية في maxxvit سلسلة، بما في ذلك أول كتلة ConvNeXt المستندة إلى coatnext و maxxvit تجارب:
    • coatnext_nano_rw_224 - 82.0 @ 224 (G) — (يستخدم كتلة التمرير ConvNeXt، بدون BatchNorm)
    • maxxvit_rmlp_nano_rw_256 - 83.0 @ 256، 83.7 @ 320 (G) (يستخدم كتلة التمرير ConvNeXt، بدون BN)
    • maxvit_rmlp_small_rw_224 - 84.5 @ 224, 85.1 @ 320 (G)
    • maxxvit_rmlp_small_rw_256 - 84.6 @ 256، 84.9 @ 288 (G) — يمكن تدريبه بشكل أفضل، حيث تحتاج المعلمات إلى ضبط (يستخدم كتلة ConvNeXt، بدون BN)
    • coatnet_rmlp_2_rw_224 - 84.6 @ 224, 85 @ 320 (T)
    • ملاحظة: تم إصدار أوزان MaxVit الرسمية (in1k) على https://github.com/google-research/maxvit — يتطلب الأمر بعض العمل الإضافي للنقل والتكييف، حيث إن تنفذي تم إنشاؤه بشكل مستقل عن تنفيذهما ويحتوي على بعض الاختلافات الصغيرة + كل ما يتعلق بمتعة الحشو المتماثل في TF.

23 سبتمبر 2022

  • أبراج الصور في LAION-2B CLIP مدعومة كعظلات مسبقة التدريب للضبط الدقيق أو استخراج الميزات (بدون مصنّف)
    • vit_base_patch32_224_clip_laion2b
    • vit_large_patch14_224_clip_laion2b
    • vit_huge_patch14_224_clip_laion2b
    • vit_giant_patch14_224_clip_laion2b

7 سبتمبر 2022

29 أغسطس 2022

  • بحيث يتناسب حجم نافذة MaxVit مع img_size افتراضيًا. أضف وزن RelPosMlp MaxViT جديدًا يستفيد من ذلك:
    • maxvit_rmlp_nano_rw_256 - 83.0 @ 256, 83.6 @ 320 (T)

26 أغسطس 2022

  • CoAtNet (https://arxiv.org/abs/2106.04803) و MaxVit (https://arxiv.org/abs/2204.01697) timm النماذج الأصلية لـ timm
    • كلاهما موجود في تعريف النموذج في maxxvit.py، ويحتوي على تجارب عديدة خارج نطاق الأوراق البحثية الأصلية
    • يمكن العثور على نسخة غير مكتملة من Tensorflow من مؤلفي MaxVit في https://github.com/google-research/maxvit
  • أوزان التمهيد الأولية لنموذجي CoAtNet وMaxVit من مكتبة timm (نعمل على إضافة المزيد):
    • coatnet_nano_rw_224 - 81.7 @ 224 (T)
    • coatnet_rmlp_nano_rw_224 - 82.0 @ 224, 82.8 @ 320 (T)
    • coatnet_0_rw_224 - 82.4 (T) — ملاحظة: نماذج coatnet التي تحمل الرقم «0» في مكتبة timm تحتوي على بلوكين إضافيين في المرحلة الثالثة
    • coatnet_bn_0_rw_224 - 82.4 (T)
    • maxvit_nano_rw_256 - 82.9 @ 256 (T)
    • coatnet_rmlp_1_rw_224 - 83.4 @ 224, 84 @ 320 (T)
    • coatnet_1_rw_224 - 83.6 @ 224 (G)
    • (T) = TPU تم تدريبه باستخدام كود التدريب في فرع bits_and_tpu، (G) = GPU تم تدريبه
  • GCVit (الأوزان مُعدَّلة من https://github.com/NVlabs/GCVit، والكود إعادة كتابة بنسبة 100% باستخدام timm لأغراض الترخيص)
  • MViT-V2 (شبكة تحويل متعددة المقاييس، مُعدّلة من https://github.com/facebookresearch/mvit)
  • إيفيشنت فورمر (مُعدَّل من https://github.com/snap-research/EfficientFormer)
  • PyramidVisionTransformer-V2 (مُعدَّل من https://github.com/whai362/PVT)
  • دعم ‘Fast Norm’ لـ LayerNorm و GroupNorm يتجنّب التحويل إلى float32 مع AMP (يستخدم APEX LN إذا كان متاحاً لتحقيق تحسين إضافي)

15 أغسطس 2022

  • تمت إضافة أوزان ConvNeXt atto
    • convnext_atto - 75.7 @ 224, 77.0 @ 288
    • convnext_atto_ols - 75.9 @ 224, 77.2 @ 288

5 أغسطس 2022

  • تعريفات إضافية لنماذج ConvNeXt أصغر مخصصة مع الأوزان
    • convnext_femto - 77.5 @ 224, 78.7 @ 288
    • convnext_femto_ols - 77.9 @ 224, 78.9 @ 288
    • convnext_pico - 79.5 @ 224, 80.4 @ 288
    • convnext_pico_ols - 79.5 @ 224, 80.5 @ 288
    • convnext_nano_ols - 80.9 @ 224, 81.6 @ 288
  • تم تحديث EdgeNeXt لتحسين تصدير ONNX، وإضافة متغير أساسي جديد وأوزان من الأصل (https://github.com/mmaaz60/EdgeNeXt)

28 يوليو 2022

  • إضافة أوزان نموذج DeiT-III Medium (width=512, depth=12, num_heads=8) الجديد. شكرًا Hugo Touvron!

27 يوليو 2022

  • جميع ملفات csv الخاصة بنتائج اختبارات الأداء والتحقق وقت التشغيل محدّثة الآن!
  • تمت إضافة بعض الأوزام وتعريفات النماذج الإضافية:
    • darknetaa53 - 79.8 @ 256, 80.5 @ 288
    • convnext_nano - 80.8 @ 224, 81.5 @ 288
    • cs3sedarknet_l - 81.2 @ 256, 81.8 @ 288
    • cs3darknet_x - 81.8 @ 256, 82.2 @ 288
    • cs3sedarknet_x - 82.2 @ 256, 82.7 @ 288
    • cs3edgenet_x - 82.2 @ 256, 82.7 @ 288
    • cs3se_edgenet_x - 82.8 @ 256, 83.5 @ 320
  • أوزان cs3* جميعها تم تدريبها على TPU باستخدام فرع bits_and_tpu. شكرًا لبرنامج TRC!
  • إضافة دعم لـ output_stride=8 و 16 إلى ConvNeXt (التوسيع)
  • تم إصلاح مشكلة عدم قدرة نماذج deit3 على تغيير حجم pos_emb
  • الإصدار 0.6.7 على PyPi (مع إصلاحات الأخطاء المذكورة أعلاه وأوزان جديدة منذ الإصدار 0.6.5)

8 يوليو 2022

نماذج أكثر، وإصلاحات أكثر

  • نماذج البحث الرسمية (مع الأوزان) المضافة:
  • نماذجي الخاصة:
    • تمت إضافة تعريفات ResNet صغيرة بناءً على طلب، مع تكرار كتلة واحدة لكل من البنية الأساسية والبنية الضاغطة (resnet10 وresnet14)
    • CspNet أُعيدت هندستها مع إعدادات dataclass، وخيار CrossStage3 (cs3) مبسّط. هذه التعريفات أقرب إلى تعريفات الهيكل الأساسي في YOLO-v5+.
    • مزيد من التعديلات على البنية ذاتية الانتباه (ViT) المتعلقة بالموضع النسبي. تم تدريب نموذجين من نوع srelpos (الموضع النسبي المشترك)، ونموذج متوسط الحجم مع رمز فئة (class token).
    • أضف وضعًا بديلًا للتخفيض في EdgeNeXt ودرّب نموذجًا small. أفضل من النموذج small الأصلي، لكنه ليس بالأوزان المدربة الجديدة الخاصة بهم USI.
  • نتائج أوزان نماذجي الخاصة (جميعها تدريب على ImageNet-1k)
    • resnet10t - 66.5 @ 176, 68.3 @ 224
    • resnet14t - 71.3 @ 176, 72.3 @ 224
    • resnetaa50 - 80.6 @ 224 , 81.6 @ 288
    • darknet53 - 80.0 @ 256, 80.5 @ 288
    • cs3darknet_m - 77.0 @ 256, 77.6 @ 288
    • cs3darknet_focus_m - 76.7 @ 256, 77.3 @ 288
    • cs3darknet_l - 80.4 @ 256, 80.9 @ 288
    • cs3darknet_focus_l - 80.3 @ 256, 80.9 @ 288
    • vit_srelpos_small_patch16_224 - 81.1 @ 224, 82.1 @ 320
    • vit_srelpos_medium_patch16_224 - 82.3 @ 224, 83.1 @ 320
    • vit_relpos_small_patch16_cls_224 - 82.6 @ 224, 83.6 @ 320
    • edgnext_small_rw - 79.6 @ 224, 80.4 @ 320
  • تم تدريب الأوزان أعلاه لـcs3 وdarknet وvit_*relpos على TPU بفضل برنامج TRC! أما الباقي فقد تم تدريبه على وحدات معالجة رسومية (GPU) كانت تزداد حرارتها بشكل مفرط.
  • تم التحقق من إصلاحات دعم Hugging Face Hub، ودليل الملاحظات التجريبي قيد الإعداد
  • يمكن تحميل الأوزان/التكوينات المُسبقة التدريب من مصادر خارجية (مثل القرص المحلي) مع دعم تكيّف الرأس.
  • إضافة دعم لتغيير امتدادات الصور التي يفحصها مجموعات/قارئات timm. راجع (https://github.com/rwightman/pytorch-image-models/pull/1274#issuecomment-1178303103)
  • تنفيذ LayerNorm الافتراضي لطبقة ConvNeXt المستخدم F.layer_norm(x.permute(0, 2, 3, 1), ...).permute(0, 3, 1, 2) عبر LayerNorm2d في جميع الحالات. أبطأ قليلاً من التنفيذ المخصص السابق على بعض الأجهزة (مثل Ampere مع CL)، لكن بشكل عام هناك عدد أقل من التراجعات عبر نطاقات أوسع من الأجهزة وإصدارات PyTorch. لا يزال التنفيذ السابق موجودًا باسم LayerNormExp2d في models/layers/norm.py
    • أبطأ قليلاً من التنفيذ المخصص السابق على بعض الأجهزة (مثل Ampere مع CL)، لكن بشكل عام، هناك عدد أقل من التراجعات عبر نطاقات أوسع من الأجهزة وإصدارات PyTorch.
    • توجد النسخة السابقة من التنفيذ باسم LayerNormExp2d في models/layers/norm.py
  • إصلاحات أخطاء متعددة
  • جارٍ الاختبار حاليًا للإصدار 0.6.x القادم على PyPi
  • لا يزال التدريب المسبق لنماذج LeViT الأكبر حجمًا قيد التطوير، إذ لا تتدرب بشكل جيد أو سهل دون التقطير. هل حان الوقت أخيرًا لإضافة دعم التقطير؟
  • تدريب الأوزان على ImageNet-22k وضبطها الدقيق جارٍ، والعمل على دعم الأوزان المتعددة (ببطء) يتقدم بشكل بطيء (هناك عدد كبير جداً من الأوزان، آه) …

13 مايو 2022

  • تمت إضافة نماذج Swin-V2 الرسمية وأوزانها من (https://github.com/microsoft/Swin-Transformer). تم تنظيفها لدعم torchscript.
  • بعض إعادة الهيكلة لتنفيذ timm الخاص بـ Swin-V2-CR، ومن المرجح أن أقوم بمزيد من التعديلات لجعل بعض الأجزاء أقرب إلى النسخة الرسمية، ثم أقرر ما إذا كان يجب دمج بعض الجوانب.
  • تجارب إضافية حول الموضع النسبي / التطبيع بعد الباقي في Vision Transformer (تم تدريبها جميعًا على TPU بفضل برنامج TRC)
    • vit_relpos_small_patch16_224 - 81.5 @ 224، 82.5 @ 320 — موضع نسبي، مقياس طبقة، بدون رمز فئة، متوسط تجميع
    • vit_relpos_medium_patch16_rpn_224 - 82.3 @ 224، 83.1 @ 320 — موضع نسبي + تطبيع بعد التبقية، بدون رمز فئة، متوسط مجمّع
    • vit_relpos_medium_patch16_224 - 82.5 @ 224، 83.3 @ 320 — موضع نسبي، مقياس طبقة، بدون رمز فئة، متوسط تجميع
    • vit_relpos_base_patch16_gapcls_224 - 82.8 @ 224، 83.9 @ 320 — موضع نسبي، مقياس طبقة، رمز فئة، متوسط تجميع (عن طريق الخطأ)
  • إحياء متغيّر نموذج ViT «المتوسط» ذي الأبعاد 512 ورؤوس 8 من جديد (بعد استخدامه في نموذج «صغير» ما قبل DeiT في أول تطبيق لـ ViT عام 2020)
  • إضافة دعم لموقع ViT النسبي للتبديل بين التنفيذ الحالي وبعض الإضافات في التنفيذ الرسمي لـ Swin-V2 لتجارب مستقبلية
  • تنفيذ Sequencer2D (https://arxiv.org/abs/2205.01972)، أُضيف عبر طلب دمج من المؤلف (https://github.com/okojoalg)

2 مايو 2022

  • تجارب Vision Transformer بإضافة Relative Position (Swin-V2 log-coord) (vision_transformer_relpos.py) و فروع Residual Post-Norm (من Swin-V2) (vision_transformer*.py)
    • vit_relpos_base_patch32_plus_rpn_256 - 79.5 @ 256، 80.6 @ 320 — موضع نسبي + عرض موسّع + تطبيع بعد التبقّي، بدون رمز فئة، متوسط مجمّع
    • vit_relpos_base_patch16_224 - 82.5 @ 224، 83.6 @ 320 — موضع نسبي، مقياس طبقة، بدون رمز فئة، متوسط تجميع
    • vit_base_patch16_rpn_224 - 82.3 @ 224 — موضع نسبي + تطبيع بعد التبقّي، بدون رمز فئة، متوسط تجميع
  • إعادة هيكلة Vision Transformer لإزالة طبقة التمثيل التي كانت تُستخدم فقط في vit الأولية ونادراً ما تُستخدم منذ ذلك الحين مع عمليات التدريب المسبق الأحدث (مثل How to Train Your ViT)
  • تدعم نماذج vit_* إزالة رمز الفئة، واستخدام متوسط التجميع العام، واستخدام fc_norm (على غرار beit وmae).

22 أبريل 2022

  • نماذج timm مدعومة رسميًا الآن في fast.ai! في الوقت المناسب تمامًا لدورة التعلم العملي العميق الجديدة. تم تحديث رابط توثيق timmdocs إلى timm.fast.ai.
  • تمت إضافة وزنين آخرين للنموذج في سلسلة التدريب على TPU . لا يزال بعض التدريب المسبق In22k قيد التنفيذ.
    • seresnext101d_32x8d - 83.69 @ 224, 84.35 @ 288
    • seresnextaa101d_32x8d (مضاد للتشويش باستخدام AvgPool2d) - 83.85 عند 224، 84.57 عند 288

23 مارس 2022

  • أضِف خيار ParallelBlock وLayerScale إلى نماذج vit الأساسية لدعم تكوينات النموذج في ثلاث أشياء يجب على الجميع معرفتها حول ViT
  • أوزان convnext_tiny_hnf (مع تطبيع الرأس أولاً) تم تدريبها باستخدام وصفة A2 (أو ما يقاربها)، محققة دقة 82.2% في التصنيف الأول (top-1)، ويمكن تحسين الأداء بزيادة عدد الفترات (epochs).

21 مارس 2022

  • دمج norm_norm_norm. مهم من المرجح أن يؤدي هذا التحديث الخاص بالإصدار 0.6.x القادم إلى زعزعة استقرار الفرع الرئيسي لفترة من الوقت. يمكن استخدام الفرع 0.5.x أو إصدار سابق من 0.5.x إذا كان الاستقرار مطلوبًا.
  • تحديث كبير للأوزان (تم تدريبها جميعًا على TPU) كما هو موضح في هذا الإصدار
    • regnety_040 - 82.3 @ 224, 82.96 @ 288
    • regnety_064 - 83.0 @ 224, 83.65 @ 288
    • regnety_080 - 83.17 @ 224, 83.86 @ 288
    • regnetv_040 - 82.44 @ 224، 83.18 @ 288 (timm pre-act)
    • regnetv_064 - 83.1 @ 224، 83.71 @ 288 (timm pre-act)
    • regnetz_040 - 83.67 @ 256, 84.25 @ 320
    • regnetz_040h - 83.77 @ 256، 84.5 @ 320 (مع طبقة fc إضافية في الرأس)
    • resnetv2_50d_gn - 80.8 @ 224، 81.96 @ 288 (pre-act GroupNorm)
    • resnetv2_50d_evos 80.77 @ 224، 82.04 @ 288 (pre-act EvoNormS)
    • regnetz_c16_evos - 81.9 @ 256، 82.64 @ 320 (EvoNormS)
    • regnetz_d8_evos - 83.42 @ 256، 84.04 @ 320 (EvoNormS)
    • xception41p - 82 @ 299 (timm pre-act)
    • xception65 - 83.17 @ 299
    • xception65p - 83.14 @ 299 (timm pre-act)
    • resnext101_64x4d - 82.46 @ 224, 83.16 @ 288
    • seresnext101_32x8d - 83.57 @ 224, 84.270 @ 288
    • resnetrs200 - 83.85 @ 256, 84.44 @ 320
  • تم إصلاح دعم HuggingFace hub مع وضع الأساس الأولي للسماح بمصادر بديلة لـ ‘config’ لتعريفات نماذج ما قبل التدريب وأوزانها (دعم الملفات المحلية العامة / عناوين URL البعيدة قريباً)
  • تمت إضافة تنفيذ SwinTransformer-V2. قدّمه Christoph Reich. تجارب التدريب والتغييرات على النموذج من قِبَلي ما زالت جارية، لذا توقعوا كسور في التوافق.
  • تمت إضافة نماذج / أوزان Swin-S3 (AutoFormerV2) من https://github.com/microsoft/Cream/tree/main/AutoFormerV2
  • نماذج MobileViT مع أوزان مُعدَّلة من https://github.com/apple/ml-cvnets
  • نماذج PoolFormer مع أوزان مُعدَّلة من https://github.com/sail-sg/poolformer
  • نماذج VOLO مع أوزان مُعدَّلة من https://github.com/sail-sg/volo
  • عمل كبير في تجريب طبقات تطبيع غير BatchNorm مثل EvoNorm وFilterResponseNorm وGroupNorm وغيرها
  • تحسين دعم طبقات المعايير والدوال التنشيطية البديلة (‘NormAct’) التي أُضيفت إلى عدد من النماذج، لا سيما EfficientNet/MobileNetV3 وRegNet وXception المتماثل
  • تمت إضافة دعم الالتفاف المجمّع إلى عائلة EfficientNet
  • إضافة واجهة برمجة تطبيقات ‘مطابقة المجموعات’ إلى جميع النماذج للسماح بتجميع معاملات النموذج لتطبيق اضمحلال معدل التعلم ‘على مستوى الطبقات’، مع إضافة مقياس معدل التعلم إلى مجدول معدل التعلم
  • تمت إضافة دعم نقطة التدرّج إلى العديد من النماذج
  • forward_head(x, pre_logits=False) دالة أُضيفت إلى جميع النماذج للسماح باستدعاء forward_features وforward_head بشكل منفصل
  • تحديث جميع نماذج vision transformer وvision MLP لتعيد ميزات غير مجمّعة / غير مختارة على مستوى الرموز من forward_features، من أجل التوافق مع نماذج CNN، حيث تُطبَّق الآن عملية اختيار الرموز أو التجميع في forward_head

2 فبراير 2022

  • نشر Chris Hughes أمس على مدونته شرحًا شاملًا لمكتبة timm. يستحق القراءة بلا شك. البدء مع نماذج الصور في PyTorch (timm): دليل للممارسين
  • أُعدّ حاليًا لدمج فرع norm_norm_norm إلى الفرع الرئيسي (الإصدار 0.6.x) خلال الأسبوع القادم تقريبًا. التغييرات أوسع من المعتاد وقد تُزعزع الاستقرار وتُسبب كسرًا في بعض استخدامات واجهة برمجة التطبيقات الخاصة بالنماذج (مع السعي لتحقيق توافق تام مع الإصدارات السابقة). لذا، احذر من الأمر pip install git+https://github.com/rwightman/pytorch-image-models installs! ستبقى إصدارات 0.5.x وفرع 0.5.x مستقرين مع اختيار بعض التعديلات (cherry pick) حتى تستقر الأمور. يُنصح بالالتزام بالتثبيت عبر pypi لفترة إذا كنت ترغب في الاستقرار.
    • التغييرات أوسع من المعتاد وقد تُسبب عدم استقرار أو كسر بعض استخدامات واجهات برمجة التطبيقات الخاصة بالنماذج (مع السعي لتحقيق توافق كامل مع الإصدارات السابقة). لذا، احذر من عمليات التثبيت عبر pip install git+https://github.com/rwightman/pytorch-image-models!
    • ستبقى إصدارات 0.5.x وفرع 0.5.x مستقرة مع اختيار بعض الإصلاحات (cherry pick) حتى تستقر الأمور. ننصح بالالتزام بتثبيت pypi لفترة إذا كنت ترغب في الاستقرار.

14 يناير 2022

  • الإصدار 0.5.4 مع الإصدار الذي سيتم رفعه إلى pypi. لقد مرّ وقت طويل منذ آخر تحديث على pypi، وسيتم دمج التغييرات الأكثر خطورة قريباً في الفرع الرئيسي main…
  • إضافة نماذج ConvNeXT مع الأوزان من التنفيذ الرسمي (https://github.com/facebookresearch/ConvNeXt)، مع بعض التعديلات لتحسين الأداء، ومتوافقة مع ميزات timm
  • جرّبت تدريب بعض النماذج الصغيرة (حوالي 1.8 إلى 3 ملايين معامل) / المُحسَّنة للهواتف المحمولة، بعضها جيد حتى الآن، والمزيد في الطريق…
    • mnasnet_small - 65.6 top-1
    • mobilenetv2_050 - 65.9
    • lcnet_100/075/050 - 72.1 / 68.8 / 63.1
    • semnasnet_075 - 73
    • fbnetv3_b/d/g - 79.1 / 79.7 / 82.0
  • نماذج TinyNet التي أضافها rsomani95
  • تمت إضافة LCNet عبر بنية MobileNetV3

5 يناير 2023

23 ديسمبر 2022 🎄☃

  • إضافة نماذج FlexiViT وأوزانها من https://github.com/google-research/big_vision (اطّلع على الورقة البحثية في https://arxiv.org/abs/2212.08013)
    • ملاحظة: حاليًا، تغيير الحجم ثابت عند إنشاء النموذج، بينما أخذ عينات ديناميكي لحظي لحجم الباتش أثناء التدريب قيد التطوير.
  • تم تحديث المزيد من النماذج إلى أوزان متعددة وأصبحت قابلة للتنزيل عبر HF hub الآن (convnext, efficientnet, mobilenet, vision_transformer*, beit)
  • أكثر من وسم نموذج مُسبق التدريب وتعديلات، تم تغيير بعض أسماء النماذج (نعمل على ترجمات الإلغاء، فكّر في فرع DEV الرئيسي الآن، استخدم 0.6.x للاستخدام المستقر)
  • نماذج تدريب مسبق إضافية من ImageNet-12k (مجموعة فرعية من 22k) تظهر:
    • efficientnet_b5.in12k_ft_in1k - 85.9 @ 448x448
    • vit_medium_patch16_gap_384.in12k_ft_in1k - 85.5 @ 384x384
    • vit_medium_patch16_gap_256.in12k_ft_in1k - 84.5 @ 256x256
    • convnext_nano.in12k_ft_in1k - 82.9 @ 288x288

8 ديسمبر 2022

  • أضِف ‘EVA l’ إلى vision_transformer.py, تدريب مسبق بأسلوب MAE لـ ViT-L/14 باستخدام أهداف EVA-CLIP، مع تدريب دقيق على ImageNet-1k (مع استخدام ImageNet-22k كمرحلة وسيطة لبعض النماذج)
نموذجtop1param_countgmacmactshub
eva_large_patch14_336.in22k_ft_in22k_in1k89.2304.5191.1270.2رابط
eva_large_patch14_336.in22k_ft_in1k88.7304.5191.1270.2رابط
eva_large_patch14_196.in22k_ft_in22k_in1k88.6304.161.663.5رابط
eva_large_patch14_196.in22k_ft_in1k87.9304.161.663.5رابط

6 ديسمبر 2022

نموذجtop1param_countgmacmactshub
eva_giant_patch14_560.m30m_ft_in22k_in1k89.81014.41906.82577.2رابط
eva_giant_patch14_336.m30m_ft_in22k_in1k89.61013620.6550.7رابط
eva_giant_patch14_336.clip_ft_in1k89.41013620.6550.7رابط
eva_giant_patch14_224.clip_ft_in1k89.11012.6267.2192.6رابط

5 ديسمبر 2022

  • إصدار ما قبل الإطلاق (0.8.0dev0) لدعم الأوزان المتعددة (model_arch.pretrained_tag). قم بالتثبيت باستخدام pip install --pre timm
    • vision_transformer وmaxvit وconvnext هي أول ثلاث نماذج تدعم
    • تتغير أسماء النماذج مع هذا (سيتم دمج الدالة السابقة _21k وما شابه)، ما زلنا نعمل على معالجة إجراءات الإيقاف
    • من المحتمل وجود أخطاء، لكنني بحاجة إلى ملاحظات، لذا يرجى تجربتها
    • إذا كان الاستقرار مطلوبًا، يُرجى استخدام إصدارات 0.6.x من pypi أو استنساخ الكود من فرع 0.6.x
  • تمت إضافة دعم لـ PyTorch 2.0 compile في train/validate/inference/benchmark، استخدم الحجة --torchcompile
  • يسمح سكربت الاستدلال بمزيد من التحكم في المخرجات، حيث يمكنك اختيار k لمؤشر الفئة الأعلى واحتمالها، مع إمكانية إخراج البيانات بصيغ json أو csv أو parquet
  • أضف مجموعة كاملة من أوزان برج الصور المُحسَّنة لنموذج CLIP من كلا نموذجي LAION-2B وOpenAI CLIP الأصلي
نموذجtop1param_countgmacmactshub
vit_huge_patch14_clip_336.laion2b_ft_in12k_in1k88.6632.5391407.5رابط
vit_large_patch14_clip_336.openai_ft_in12k_in1k88.3304.5191.1270.2رابط
vit_huge_patch14_clip_224.laion2b_ft_in12k_in1k88.2632167.4139.4رابط
vit_large_patch14_clip_336.laion2b_ft_in12k_in1k88.2304.5191.1270.2رابط
vit_large_patch14_clip_224.openai_ft_in12k_in1k88.2304.281.188.8رابط
vit_large_patch14_clip_224.laion2b_ft_in12k_in1k87.9304.281.188.8رابط
vit_large_patch14_clip_224.openai_ft_in1k87.9304.281.188.8رابط
vit_large_patch14_clip_336.laion2b_ft_in1k87.9304.5191.1270.2رابط
vit_huge_patch14_clip_224.laion2b_ft_in1k87.6632167.4139.4رابط
vit_large_patch14_clip_224.laion2b_ft_in1k87.3304.281.188.8رابط
vit_base_patch16_clip_384.laion2b_ft_in12k_in1k87.286.955.5101.6رابط
vit_base_patch16_clip_384.openai_ft_in12k_in1k8786.955.5101.6رابط
vit_base_patch16_clip_384.laion2b_ft_in1k86.686.955.5101.6رابط
vit_base_patch16_clip_384.openai_ft_in1k86.286.955.5101.6رابط
vit_base_patch16_clip_224.laion2b_ft_in12k_in1k86.286.617.623.9رابط
vit_base_patch16_clip_224.openai_ft_in12k_in1k85.986.617.623.9رابط
vit_base_patch32_clip_448.laion2b_ft_in12k_in1k85.888.317.923.9رابط
vit_base_patch16_clip_224.laion2b_ft_in1k85.586.617.623.9رابط
vit_base_patch32_clip_384.laion2b_ft_in12k_in1k85.488.313.116.5رابط
vit_base_patch16_clip_224.openai_ft_in1k85.386.617.623.9رابط
vit_base_patch32_clip_384.openai_ft_in12k_in1k85.288.313.116.5رابط
vit_base_patch32_clip_224.laion2b_ft_in12k_in1k83.388.24.45رابط
vit_base_patch32_clip_224.laion2b_ft_in1k82.688.24.45رابط
vit_base_patch32_clip_224.openai_ft_in1k81.988.24.45رابط
  • نقل أوزان MaxViT من TensorFlow من التنفيذ الرسمي في https://github.com/google-research/maxvit
    • شهدت أوزان الضبط الدقيق in21k المُحسّنة إلى 384/512 انخفاضات أكبر مما كان متوقعًا، مع احتمال فقدان بعض التفاصيل، لكن يبدو أن الضبط الدقيق 21k كان حساسًا للتعديلات الطفيفة في المعالجة المسبقة
نموذجtop1param_countgmacmactshub
maxvit_xlarge_tf_512.in21k_ft_in1k88.5475.8534.11413.2رابط
maxvit_xlarge_tf_384.in21k_ft_in1k88.3475.3292.8668.8رابط
maxvit_base_tf_512.in21k_ft_in1k88.2119.9138704رابط
maxvit_large_tf_512.in21k_ft_in1k88212.3244.8942.2رابط
maxvit_large_tf_384.in21k_ft_in1k88212132.6445.8رابط
maxvit_base_tf_384.in21k_ft_in1k87.9119.673.8332.9رابط
maxvit_base_tf_512.in1k86.6119.9138704رابط
maxvit_large_tf_512.in1k86.5212.3244.8942.2رابط
maxvit_base_tf_384.in1k86.3119.673.8332.9رابط
maxvit_large_tf_384.in1k86.2212132.6445.8رابط
maxvit_small_tf_512.in1k86.169.167.3383.8رابط
maxvit_tiny_tf_512.in1k85.73133.5257.6رابط
maxvit_small_tf_384.in1k85.56935.9183.6رابط
maxvit_tiny_tf_384.in1k85.13117.5123.4رابط
maxvit_large_tf_224.in1k84.9211.843.7127.4رابط
maxvit_base_tf_224.in1k84.9119.52495رابط
maxvit_small_tf_224.in1k84.468.911.753.2رابط
maxvit_tiny_tf_224.in1k83.430.95.635.8رابط

15 أكتوبر 2022

  • تحسينات على سكربت التدريب والتحقق
  • دعم الأجهزة غير GPU (أي CPU)
  • توافق SLURM مع سكربت التدريب
  • دعم مجموعات بيانات HF (عبر ReaderHfds)
  • تحسينات تحميل البيانات في TFDS/WDS (تم إصلاح ملء/تكرار العينة للاستخدام الموزّع فيما يتعلق بتقدير عدد العينات)
  • دعم in_chans !=3 في السكربتات / المُحمِّل
  • مُحسِّن Adan
  • يمكن تفعيل جدولة معدل التعلم لكل خطوة عبر args
  • تمت إعادة تسمية مجموعة بيانات ‘parsers’ إلى ‘readers’، وهي أكثر وصفًا لغرضها
  • تغيّرت حُجج AMP، وAPEX عبر --amp-impl apex، ودعم bfloat16 عبر --amp-dtype bfloat16
  • تم تحويل الفرع الرئيسي إلى الإصدار 0.7.x، وتم إنشاء فرع منفصل للإصدار 0.6x من أجل إصدار مستقر لإضافات الأوزان فقط
  • إعادة تسمية الفرع master إلى main

10 أكتوبر 2022

  • أوزان إضافية في maxxvit سلسلة، بما في ذلك أول كتلة ConvNeXt المستندة إلى coatnext و maxxvit تجارب:
    • coatnext_nano_rw_224 - 82.0 @ 224 (G) — (يستخدم كتلة التمرير ConvNeXt، بدون BatchNorm)
    • maxxvit_rmlp_nano_rw_256 - 83.0 @ 256، 83.7 @ 320 (G) (يستخدم كتلة التمرير ConvNeXt، بدون BN)
    • maxvit_rmlp_small_rw_224 - 84.5 @ 224, 85.1 @ 320 (G)
    • maxxvit_rmlp_small_rw_256 - 84.6 @ 256، 84.9 @ 288 (G) — يمكن تدريبه بشكل أفضل، حيث تحتاج المعلمات إلى ضبط (يستخدم كتلة ConvNeXt، بدون BN)
    • coatnet_rmlp_2_rw_224 - 84.6 @ 224, 85 @ 320 (T)
    • ملاحظة: تم إصدار أوزان MaxVit الرسمية (in1k) على https://github.com/google-research/maxvit — يتطلب الأمر بعض العمل الإضافي للنقل والتكييف، حيث إن تنفذي تم إنشاؤه بشكل مستقل عن تنفيذهما ويحتوي على بعض الاختلافات الصغيرة + كل ما يتعلق بمتعة الحشو المتماثل في TF.

23 سبتمبر 2022

  • أبراج الصور في LAION-2B CLIP مدعومة كعظلات مسبقة التدريب للضبط الدقيق أو استخراج الميزات (بدون مصنّف)
    • vit_base_patch32_224_clip_laion2b
    • vit_large_patch14_224_clip_laion2b
    • vit_huge_patch14_224_clip_laion2b
    • vit_giant_patch14_224_clip_laion2b

7 سبتمبر 2022

29 أغسطس 2022

  • بحيث يتناسب حجم نافذة MaxVit مع img_size افتراضيًا. أضف وزن RelPosMlp MaxViT جديدًا يستفيد من ذلك:
    • maxvit_rmlp_nano_rw_256 - 83.0 @ 256, 83.6 @ 320 (T)

26 أغسطس 2022

  • CoAtNet (https://arxiv.org/abs/2106.04803) و MaxVit (https://arxiv.org/abs/2204.01697) timm النماذج الأصلية لـ timm
    • كلاهما موجود في تعريف النموذج في maxxvit.py، ويحتوي على تجارب عديدة خارج نطاق الأوراق البحثية الأصلية
    • يمكن العثور على نسخة غير مكتملة من Tensorflow من مؤلفي MaxVit في https://github.com/google-research/maxvit
  • أوزان التمهيد الأولية لنموذجي CoAtNet وMaxVit من مكتبة timm (نعمل على إضافة المزيد):
    • coatnet_nano_rw_224 - 81.7 @ 224 (T)
    • coatnet_rmlp_nano_rw_224 - 82.0 @ 224, 82.8 @ 320 (T)
    • coatnet_0_rw_224 - 82.4 (T) — ملاحظة: نماذج coatnet التي تحمل الرقم «0» في مكتبة timm تحتوي على بلوكين إضافيين في المرحلة الثالثة
    • coatnet_bn_0_rw_224 - 82.4 (T)
    • maxvit_nano_rw_256 - 82.9 @ 256 (T)
    • coatnet_rmlp_1_rw_224 - 83.4 @ 224, 84 @ 320 (T)
    • coatnet_1_rw_224 - 83.6 @ 224 (G)
    • (T) = TPU تم تدريبه باستخدام كود التدريب في فرع bits_and_tpu، (G) = GPU تم تدريبه
  • GCVit (الأوزان مُعدَّلة من https://github.com/NVlabs/GCVit، والكود إعادة كتابة بنسبة 100% باستخدام timm لأغراض الترخيص)
  • MViT-V2 (شبكة تحويل متعددة المقاييس، مُعدّلة من https://github.com/facebookresearch/mvit)
  • إيفيشنت فورمر (مُعدَّل من https://github.com/snap-research/EfficientFormer)
  • PyramidVisionTransformer-V2 (مُعدَّل من https://github.com/whai362/PVT)
  • دعم ‘Fast Norm’ لـ LayerNorm و GroupNorm يتجنّب التحويل إلى float32 مع AMP (يستخدم APEX LN إذا كان متاحاً لتحقيق تحسين إضافي)

15 أغسطس 2022

  • تمت إضافة أوزان ConvNeXt atto
    • convnext_atto - 75.7 @ 224, 77.0 @ 288
    • convnext_atto_ols - 75.9 @ 224, 77.2 @ 288

5 أغسطس 2022

  • تعريفات إضافية لنماذج ConvNeXt أصغر مخصصة مع الأوزان
    • convnext_femto - 77.5 @ 224, 78.7 @ 288
    • convnext_femto_ols - 77.9 @ 224, 78.9 @ 288
    • convnext_pico - 79.5 @ 224, 80.4 @ 288
    • convnext_pico_ols - 79.5 @ 224, 80.5 @ 288
    • convnext_nano_ols - 80.9 @ 224, 81.6 @ 288
  • تم تحديث EdgeNeXt لتحسين تصدير ONNX، وإضافة متغير أساسي جديد وأوزان من الأصل (https://github.com/mmaaz60/EdgeNeXt)

28 يوليو 2022

  • إضافة أوزان نموذج DeiT-III Medium (width=512, depth=12, num_heads=8) الجديد. شكرًا Hugo Touvron!

27 يوليو 2022

  • جميع ملفات csv الخاصة بنتائج اختبارات الأداء والتحقق وقت التشغيل محدّثة!
  • تمت إضافة بعض الأوزام وتعريفات النماذج الإضافية:
    • darknetaa53 - 79.8 @ 256, 80.5 @ 288
    • convnext_nano - 80.8 @ 224, 81.5 @ 288
    • cs3sedarknet_l - 81.2 @ 256, 81.8 @ 288
    • cs3darknet_x - 81.8 @ 256, 82.2 @ 288
    • cs3sedarknet_x - 82.2 @ 256, 82.7 @ 288
    • cs3edgenet_x - 82.2 @ 256, 82.7 @ 288
    • cs3se_edgenet_x - 82.8 @ 256, 83.5 @ 320
  • أوزان cs3* جميعها تم تدريبها على TPU باستخدام فرع bits_and_tpu. شكرًا لبرنامج TRC!
  • إضافة دعم لـ output_stride=8 و 16 إلى ConvNeXt (التوسيع)
  • تم إصلاح مشكلة عدم قدرة نماذج deit3 على تغيير حجم pos_emb
  • الإصدار 0.6.7 على PyPi (مع إصلاحات الأخطاء المذكورة أعلاه وأوزان جديدة منذ الإصدار 0.6.5)

8 يوليو 2022

نماذج أكثر، وإصلاحات أكثر

  • نماذج البحث الرسمية (مع الأوزان) المضافة:
  • نماذجي الخاصة:
    • تمت إضافة تعريفات ResNet صغيرة بناءً على طلب، مع تكرار كتلة واحدة لكل من البنية الأساسية والبنية الضاغطة (resnet10 وresnet14)
    • CspNet أُعيدت هندستها مع إعدادات dataclass، وخيار CrossStage3 (cs3) مبسّط. هذه التعريفات أقرب إلى تعريفات الهيكل الأساسي في YOLO-v5+.
    • مزيد من التعديلات على البنية ذاتية الانتباه (ViT) المتعلقة بالموضع النسبي. تم تدريب نموذجين من نوع srelpos (الموضع النسبي المشترك)، ونموذج متوسط الحجم مع رمز فئة (class token).
    • أضف وضعًا بديلًا للتخفيض في EdgeNeXt ودرّب نموذجًا small. أفضل من النموذج small الأصلي، لكنه ليس بالأوزان المدربة الجديدة الخاصة بهم USI.
  • نتائج أوزان نماذجي الخاصة (جميعها تدريب على ImageNet-1k)
    • resnet10t - 66.5 @ 176, 68.3 @ 224
    • resnet14t - 71.3 @ 176, 72.3 @ 224
    • resnetaa50 - 80.6 @ 224 , 81.6 @ 288
    • darknet53 - 80.0 @ 256, 80.5 @ 288
    • cs3darknet_m - 77.0 @ 256, 77.6 @ 288
    • cs3darknet_focus_m - 76.7 @ 256, 77.3 @ 288
    • cs3darknet_l - 80.4 @ 256, 80.9 @ 288
    • cs3darknet_focus_l - 80.3 @ 256, 80.9 @ 288
    • vit_srelpos_small_patch16_224 - 81.1 @ 224, 82.1 @ 320
    • vit_srelpos_medium_patch16_224 - 82.3 @ 224, 83.1 @ 320
    • vit_relpos_small_patch16_cls_224 - 82.6 @ 224, 83.6 @ 320
    • edgnext_small_rw - 79.6 @ 224, 80.4 @ 320
  • تم تدريب الأوزان أعلاه لـcs3 وdarknet وvit_*relpos على TPU بفضل برنامج TRC! أما الباقي فقد تم تدريبه على وحدات معالجة رسومية (GPU) كانت تزداد حرارتها بشكل مفرط.
  • تم التحقق من إصلاحات دعم Hugging Face Hub، ودليل الملاحظات التجريبي قيد الإعداد
  • يمكن تحميل الأوزان/التكوينات المُسبقة التدريب من مصادر خارجية (مثل القرص المحلي) مع دعم تكيّف الرأس.
  • إضافة دعم لتغيير امتدادات الصور التي يفحصها مجموعات البيانات/المحللات في timm. راجع (https://github.com/rwightman/pytorch-image-models/pull/1274#issuecomment-1178303103)
  • تنفيذ LayerNorm الافتراضي لطبقة ConvNeXt المستخدم F.layer_norm(x.permute(0, 2, 3, 1), ...).permute(0, 3, 1, 2) عبر LayerNorm2d في جميع الحالات. أبطأ قليلاً من التنفيذ المخصص السابق على بعض الأجهزة (مثل Ampere مع CL)، لكن بشكل عام هناك عدد أقل من التراجعات عبر نطاقات أوسع من الأجهزة وإصدارات PyTorch. لا يزال التنفيذ السابق موجودًا باسم LayerNormExp2d في models/layers/norm.py
    • أبطأ قليلاً من التنفيذ المخصص السابق على بعض الأجهزة (مثل Ampere مع CL)، لكن بشكل عام، هناك عدد أقل من التراجعات عبر نطاقات أوسع من الأجهزة وإصدارات PyTorch.
    • توجد النسخة السابقة من التنفيذ باسم LayerNormExp2d في models/layers/norm.py
  • إصلاحات أخطاء متعددة
  • جارٍ الاختبار حاليًا للإصدار 0.6.x القادم على PyPi
  • لا يزال التدريب المسبق لنماذج LeViT الأكبر حجمًا قيد التطوير، إذ لا تتدرب بشكل جيد أو سهل دون التقطير. هل حان الوقت أخيرًا لإضافة دعم التقطير؟
  • تدريب الأوزان على ImageNet-22k وضبطها الدقيق جارٍ، والعمل على دعم الأوزان المتعددة (ببطء) يتقدم بشكل بطيء (هناك عدد كبير جداً من الأوزان، آه) …

13 مايو 2022

  • تمت إضافة نماذج Swin-V2 الرسمية وأوزانها من (https://github.com/microsoft/Swin-Transformer). تم تنظيفها لدعم torchscript.
  • بعض إعادة الهيكلة لتنفيذ timm الخاص بـ Swin-V2-CR، ومن المرجح أن أقوم بمزيد من التعديلات لجعل بعض الأجزاء أقرب إلى النسخة الرسمية، ثم أقرر ما إذا كان يجب دمج بعض الجوانب.
  • تجارب إضافية حول الموضع النسبي / التطبيع بعد الباقي في Vision Transformer (تم تدريبها جميعًا على TPU بفضل برنامج TRC)
    • vit_relpos_small_patch16_224 - 81.5 @ 224، 82.5 @ 320 — موضع نسبي، مقياس طبقة، بدون رمز فئة، متوسط تجميع
    • vit_relpos_medium_patch16_rpn_224 - 82.3 @ 224، 83.1 @ 320 — موضع نسبي + تطبيع بعد التبقية، بدون رمز فئة، متوسط مجمّع
    • vit_relpos_medium_patch16_224 - 82.5 @ 224، 83.3 @ 320 — موضع نسبي، مقياس طبقة، بدون رمز فئة، متوسط تجميع
    • vit_relpos_base_patch16_gapcls_224 - 82.8 @ 224، 83.9 @ 320 — موضع نسبي، مقياس طبقة، رمز فئة، متوسط تجميع (عن طريق الخطأ)
  • إحياء متغيّر نموذج ViT «المتوسط» ذي الأبعاد 512 ورؤوس 8 من جديد (بعد استخدامه في نموذج «صغير» ما قبل DeiT في أول تطبيق لـ ViT عام 2020)
  • إضافة دعم لموقع ViT النسبي للتبديل بين التنفيذ الحالي وبعض الإضافات في التنفيذ الرسمي لـ Swin-V2 لتجارب مستقبلية
  • تنفيذ Sequencer2D (https://arxiv.org/abs/2205.01972)، أُضيف عبر طلب دمج من المؤلف (https://github.com/okojoalg)

2 مايو 2022

  • تجارب Vision Transformer بإضافة Relative Position (Swin-V2 log-coord) (vision_transformer_relpos.py) و فروع Residual Post-Norm (من Swin-V2) (vision_transformer*.py)
    • vit_relpos_base_patch32_plus_rpn_256 - 79.5 @ 256، 80.6 @ 320 — موضع نسبي + عرض موسّع + تطبيع بعد التبقّي، بدون رمز فئة، متوسط مجمّع
    • vit_relpos_base_patch16_224 - 82.5 @ 224، 83.6 @ 320 — موضع نسبي، مقياس طبقة، بدون رمز فئة، متوسط تجميع
    • vit_base_patch16_rpn_224 - 82.3 @ 224 — موضع نسبي + تطبيع بعد التبقّي، بدون رمز فئة، متوسط تجميع
  • إعادة هيكلة Vision Transformer لإزالة طبقة التمثيل التي كانت تُستخدم فقط في vit الأولية ونادراً ما تُستخدم منذ ذلك الحين مع عمليات التدريب المسبق الأحدث (مثل How to Train Your ViT)
  • تدعم نماذج vit_* إزالة رمز الفئة، واستخدام متوسط التجميع العام، واستخدام fc_norm (على غرار beit وmae).

22 أبريل 2022

  • نماذج timm مدعومة رسميًا الآن في fast.ai! في الوقت المناسب تمامًا لدورة التعلم العملي العميق الجديدة. تم تحديث رابط توثيق timmdocs إلى timm.fast.ai.
  • تمت إضافة وزنين آخرين للنموذج في سلسلة التدريب على TPU . لا يزال بعض التدريب المسبق In22k قيد التنفيذ.
    • seresnext101d_32x8d - 83.69 @ 224, 84.35 @ 288
    • seresnextaa101d_32x8d (مضاد للتشويش باستخدام AvgPool2d) - 83.85 عند 224، 84.57 عند 288

23 مارس 2022

  • أضِف خيار ParallelBlock وLayerScale إلى نماذج vit الأساسية لدعم تكوينات النموذج في ثلاث أشياء يجب على الجميع معرفتها حول ViT
  • أوزان convnext_tiny_hnf (مع تطبيع الرأس أولاً) تم تدريبها باستخدام وصفة A2 (أو ما يقاربها)، محققة دقة 82.2% في التصنيف الأول (top-1)، ويمكن تحسين الأداء بزيادة عدد الفترات (epochs).

21 مارس 2022

  • دمج norm_norm_norm. مهم من المرجح أن يؤدي هذا التحديث الخاص بالإصدار 0.6.x القادم إلى زعزعة استقرار الفرع الرئيسي لفترة من الوقت. يمكن استخدام الفرع 0.5.x أو إصدار سابق من 0.5.x إذا كان الاستقرار مطلوبًا.
  • تحديث كبير للأوزان (تم تدريبها جميعًا على TPU) كما هو موضح في هذا الإصدار
    • regnety_040 - 82.3 @ 224, 82.96 @ 288
    • regnety_064 - 83.0 @ 224, 83.65 @ 288
    • regnety_080 - 83.17 @ 224, 83.86 @ 288
    • regnetv_040 - 82.44 @ 224، 83.18 @ 288 (timm pre-act)
    • regnetv_064 - 83.1 @ 224، 83.71 @ 288 (timm pre-act)
    • regnetz_040 - 83.67 @ 256, 84.25 @ 320
    • regnetz_040h - 83.77 @ 256، 84.5 @ 320 (مع طبقة fc إضافية في الرأس)
    • resnetv2_50d_gn - 80.8 @ 224، 81.96 @ 288 (pre-act GroupNorm)
    • resnetv2_50d_evos 80.77 @ 224، 82.04 @ 288 (pre-act EvoNormS)
    • regnetz_c16_evos - 81.9 @ 256، 82.64 @ 320 (EvoNormS)
    • regnetz_d8_evos - 83.42 @ 256، 84.04 @ 320 (EvoNormS)
    • xception41p - 82 @ 299 (timm pre-act)
    • xception65 - 83.17 @ 299
    • xception65p - 83.14 @ 299 (timm pre-act)
    • resnext101_64x4d - 82.46 @ 224, 83.16 @ 288
    • seresnext101_32x8d - 83.57 @ 224, 84.270 @ 288
    • resnetrs200 - 83.85 @ 256, 84.44 @ 320
  • تم إصلاح دعم HuggingFace hub مع وضع الأساس الأولي للسماح بمصادر بديلة لـ ‘config’ لتعريفات نماذج ما قبل التدريب وأوزانها (دعم الملفات المحلية العامة / عناوين URL البعيدة قريباً)
  • تمت إضافة تنفيذ SwinTransformer-V2. قدّمه Christoph Reich. تجارب التدريب والتغييرات على النموذج من قِبَلي ما زالت جارية، لذا توقعوا كسور في التوافق.
  • تمت إضافة نماذج / أوزان Swin-S3 (AutoFormerV2) من https://github.com/microsoft/Cream/tree/main/AutoFormerV2
  • نماذج MobileViT مع أوزان مُعدَّلة من https://github.com/apple/ml-cvnets
  • نماذج PoolFormer مع أوزان مُعدَّلة من https://github.com/sail-sg/poolformer
  • نماذج VOLO مع أوزان مُعدَّلة من https://github.com/sail-sg/volo
  • عمل كبير في تجريب طبقات تطبيع غير BatchNorm مثل EvoNorm وFilterResponseNorm وGroupNorm وغيرها
  • تحسين دعم طبقات المعايير والدوال التنشيطية البديلة (‘NormAct’) التي أُضيفت إلى عدد من النماذج، لا سيما EfficientNet/MobileNetV3 وRegNet وXception المتماثل
  • تمت إضافة دعم الالتفاف المجمّع إلى عائلة EfficientNet
  • إضافة واجهة برمجة تطبيقات ‘مطابقة المجموعات’ إلى جميع النماذج للسماح بتجميع معاملات النموذج لتطبيق اضمحلال معدل التعلم ‘على مستوى الطبقات’، مع إضافة مقياس معدل التعلم إلى مجدول معدل التعلم
  • تمت إضافة دعم نقطة التدرّج إلى العديد من النماذج
  • forward_head(x, pre_logits=False) دالة أُضيفت إلى جميع النماذج للسماح باستدعاء forward_features وforward_head بشكل منفصل
  • تحديث جميع نماذج vision transformer وvision MLP لتعيد ميزات غير مجمّعة / غير مختارة على مستوى الرموز من forward_features، من أجل التوافق مع نماذج CNN، حيث تُطبَّق الآن عملية اختيار الرموز أو التجميع في forward_head

2 فبراير 2022

  • نشر Chris Hughes أمس على مدونته شرحًا شاملًا لمكتبة timm. يستحق القراءة بلا شك. البدء مع نماذج الصور في PyTorch (timm): دليل للممارسين
  • أُعدّ حاليًا لدمج فرع norm_norm_norm إلى الفرع الرئيسي (الإصدار 0.6.x) خلال الأسبوع القادم تقريبًا. التغييرات أوسع من المعتاد وقد تُزعزع الاستقرار وتُسبب كسرًا في بعض استخدامات واجهة برمجة التطبيقات الخاصة بالنماذج (مع السعي لتحقيق توافق تام مع الإصدارات السابقة). لذا، احذر من الأمر pip install git+https://github.com/rwightman/pytorch-image-models installs! ستبقى إصدارات 0.5.x وفرع 0.5.x مستقرين مع اختيار بعض التعديلات (cherry pick) حتى تستقر الأمور. يُنصح بالالتزام بالتثبيت عبر pypi لفترة إذا كنت ترغب في الاستقرار.
    • التغييرات أوسع من المعتاد وقد تُسبب عدم استقرار أو كسر بعض استخدامات واجهات برمجة التطبيقات الخاصة بالنماذج (مع السعي لتحقيق توافق كامل مع الإصدارات السابقة). لذا، احذر من عمليات التثبيت عبر pip install git+https://github.com/rwightman/pytorch-image-models!
    • ستبقى إصدارات 0.5.x وفرع 0.5.x مستقرة مع اختيار بعض الإصلاحات (cherry pick) حتى تستقر الأمور. ننصح بالالتزام بتثبيت pypi لفترة إذا كنت ترغب في الاستقرار.

14 يناير 2022

  • الإصدار 0.5.4 مع الإصدار الذي سيتم رفعه إلى pypi. لقد مرّ وقت طويل منذ آخر تحديث على pypi، وسيتم دمج التغييرات الأكثر خطورة قريباً في الفرع الرئيسي main…
  • إضافة نماذج ConvNeXT مع الأوزان من التنفيذ الرسمي (https://github.com/facebookresearch/ConvNeXt)، مع بعض التعديلات لتحسين الأداء، ومتوافقة مع ميزات timm
  • جرّبت تدريب بعض النماذج الصغيرة (حوالي 1.8 إلى 3 ملايين معامل) / المُحسَّنة للهواتف المحمولة، بعضها جيد حتى الآن، والمزيد في الطريق…
    • mnasnet_small - 65.6 top-1
    • mobilenetv2_050 - 65.9
    • lcnet_100/075/050 - 72.1 / 68.8 / 63.1
    • semnasnet_075 - 73
    • fbnetv3_b/d/g - 79.1 / 79.7 / 82.0
  • نماذج TinyNet التي أضافها rsomani95
  • تمت إضافة LCNet عبر بنية MobileNetV3
Update on GitHub