الوصف
PatchTST هو تطبيق رسمي لورقة البحث "A Time Series is Worth 64 Words: Long-term Forecasting with Transformers". تم تصميم نموذج الذكاء الاصطناعي هذا للتنبؤ بالسلاسل الزمنية طويلة الأجل، مستفيدًا من قوة بنى Transformer. يكمن الابتكار الأساسي في آلية "التقطيع" (patching) الخاصة به، والتي تقسم السلاسل الزمنية إلى رقع على مستوى السلاسل الفرعية والتي تُعامل بعد ذلك كرموز إدخال لـ Transformer.
قراءة المزيد
تشمل مبادئ التصميم الرئيسية الاستقلال عن القنوات (channel-independence)، حيث تمثل كل قناة سلسلة زمنية أحادية المتغير (univariate). تشترك هذه السلاسل في نفس أوزان التضمين (embedding) و Transformer عبر جميع المدخلات، مما يعزز التعلم الفعال. ينقسم المشروع إلى مجلدين رئيسيين: PatchTST_supervised و PatchTST_self_supervised، لتلبية نماذج التعلم المختلفة.
بالنسبة للتعلم المراقب، يمكن للمستخدمين تثبيت المتطلبات، وتنزيل مجموعات البيانات من مصادر مثل Autoformer، وبدء التدريب باستخدام البرامج النصية المقدمة. يمكن تعديل المعلمات الفائقة (hyperparameters) مثل طول الرقعة، ونوافذ التراجع (look-back windows)، وأطوال التنبؤ. يتضمن المستودع أيضًا أكوادًا لنماذج أساسية (baseline models) للتحليل المقارن.
في مجال التعلم ذاتي الإشراف، يوفر PatchTST إمكانيات التدريب المسبق (pre-training) والضبط الدقيق (fine-tuning). يقوم البرنامج النصي للتدريب المسبق، `patchtst_pretrain.py`، بتدريب النموذج باستخدام نسبة قناع (mask ratio) محددة. يتم حفظ النماذج المدربة مسبقًا للاستخدام في المهام اللاحقة. بعد ذلك، يسهل البرنامج النصي `patchtst_finetune.py` إما الاستكشاف الخطي (linear probing) أو الضبط الدقيق للشبكة بالكامل (full network fine-tuning) على هذه النماذج المدربة مسبقًا.
يعترف المشروع بالمساهمات القيمة من العديد من مستودعات GitHub، بما في ذلك LTSF-Linear، و Informer2020، و Autoformer، و FEDformer، و Pyraformer، و RevIN، و tsai، مما يسلط الضوء على تكامله ضمن مجتمع أبحاث السلاسل الزمنية الأوسع. هذا يجعل PatchTST أداة قوية للباحثين والممارسين الذين يركزون على التنبؤ الدقيق والقابل للتطوير للسلاسل الزمنية طويلة الأجل.
- الفئةنماذج الذكاء الاصطناعي ونماذج اللغة الكبيرة
- نموذج التسعيرمفتوح المصدر
- النشرسحابي, استضافة ذاتية
- المنصاتالويب
أبرز ملامح PatchTST
بنية قائمة على Transformer للتنبؤ بالسلاسل الزمنية
تقسيم السلاسل الزمنية إلى رقع على مستوى السلاسل الفرعية
الاستقلال عن القنوات لمشاركة الأوزان بكفاءة
تطبيق رسمي لورقة PatchTST البحثية
دعم التعلم المراقب
دعم التعلم ذاتي الإشراف (التدريب المسبق والضبط الدقيق)
معلمات فائقة قابلة للتعديل لطول الرقعة، ونوافذ التراجع، ونوافذ التنبؤ
تضمين نماذج أساسية للمقارنة
قاعدة كود متاحة على GitHub
أوزان النموذج محفوظة للمهام اللاحقة
خيارات الاستكشاف الخطي والضبط الدقيق للشبكة بالكامل
البدء مع PatchTST
التكامل: الوصول إلى مستودع GitHub لكود PatchTST.
إعداد البيئة: تثبيت حزم Python اللازمة باستخدام `pip install -r requirements.txt`.
تنزيل البيانات: الحصول على مجموعات بيانات السلاسل الزمنية ووضعها في مجلد `./dataset`.
التدريب المراقب: تشغيل البرامج النصية للتدريب من الدليل `./scripts/PatchTST`، على سبيل المثال، `sh ./scripts/PatchTST/weather.sh`.
التدريب المسبق ذاتي الإشراف: تنفيذ `python patchtst_pretrain.py` مع معلمات مجموعة البيانات ونسبة القناع.
الضبط الدقيق ذاتي الإشراف: استخدام `python patchtst_finetune.py` مع اسم النموذج المدرب مسبقًا ومجموعة البيانات.
حالات استخدام PatchTST
- التنبؤ طويل الأجل
- تحليل السلاسل الزمنية
- التنبؤ باستخدام Transformers
- التعلم ذاتي الإشراف
- التعلم المراقب
- التنبؤ متعدد المتغيرات













