تطبيق محول بسيط من الصفر في Pytorch. انظر http://peterbloem.nl/blog/transformers للحصول على تفسير في العمق.
تم تصميم النماذج التي تم تنفيذها هنا لإظهار بساطة نماذج المحولات والاعتداء الذاتي. على هذا النحو ، لن يتوسعوا بقدر المحولات الأكبر. لذلك ستحتاج إلى عدد من الحيل التي تعقد الكود (انظر منشور المدونة للحصول على التفاصيل).
تتكون جميع النماذج في المستودع من مجموعة واحدة من كتل المحولات (أي ، لا توجد هياكل تشفير/فك ترميز). اتضح أن هذا التكوين البسيط غالبًا ما يعمل بشكل أفضل.
أولاً ، قم بتنزيل أو استنساخ المستودع. ثم ، في الدليل الذي يحتوي على setup.py ، قم بتشغيل
pip install -e .
يضمن التبديل -e أنه عند تحرير الكود ، يتم تغيير المعبأة المثبتة أيضًا. هذا يعني أنه يمكنك ، على سبيل المثال ، إضافة عبارات طباعة إلى الكود لمعرفة كيفية عملها.
ثم ، من نفس الدليل ، قم بتشغيل:
python experiments/classify.py
سيؤدي ذلك إلى تشغيل تجربة تصنيف بسيطة على مجموعة بيانات IMDB.
يتم تمرير فرطاميرات كسيطات سطر الأوامر. يجب أن تعمل الافتراضات بشكل جيد. يتم تنزيل بيانات التصنيف تلقائيًا ، ويتم تضمين بيانات ويكيبيديا في المستودع.
Python 3.6+ مطلوب. يجب أن يقوم الأمر PIP أعلاه بتثبيت جميع الحزم المطلوبة. قد تحتاج أيضًا pip install future اعتمادًا على إصدار Python الدقيق.
يصف environment.yml الملف. IML بيئة كوندا كاملة مع جميع التبعيات. بعد استنساخ المشروع أو تنزيله ، يمكنك إنشاء البيئة على النحو التالي:
conda env create -f environment.yml --name former
conda activate former