From 1b8f20b7d7b0a07a4acc83f9cc43ed06ee46ac19 Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Thu, 22 Aug 2024 23:20:47 +0300 Subject: [PATCH 01/13] Add docs/source/ar/glossary.md to Add_docs_source_ar_glossary.md --- docs/source/ar/glossary.md | 452 +++++++++++++++++++++++++++++++++++++ 1 file changed, 452 insertions(+) create mode 100644 docs/source/ar/glossary.md diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md new file mode 100644 index 000000000000..2533e31d0ef8 --- /dev/null +++ b/docs/source/ar/glossary.md @@ -0,0 +1,452 @@ +# مسرد المصطلحات + +يحدد هذا المسرد مصطلحات التعلم الآلي العامة و 🤗 Transformers لمساعدتك على فهم الوثائق بشكل أفضل. + +## A + +### قناع الانتباه + +قناع الانتباه هو حجة اختيارية تستخدم عند تجميع التسلسلات معًا. + + + +يشير هذا الحجة إلى النموذج إلى الرموز المميزة التي يجب الانتباه إليها، والتي لا ينبغي ذلك. + +على سبيل المثال، ضع في اعتبارك هاتين التسلسلتين: + +```python +>>> from transformers import BertTokenizer + +>>> tokenizer = BertTokenizer.from_pretrained("google-bert/bert-base-cased") + +>>> sequence_a = "This is a short sequence." +>>> sequence_b = "This is a rather long sequence. It is at least longer than sequence A." + +>>> encoded_sequence_a = tokenizer(sequence_a)["input_ids"] +>>> encoded_sequence_b = tokenizer(sequence_b)["input_ids"] +``` + +لدى الإصدارات المشفرة أطوال مختلفة: + +```python +>>> len(encoded_sequence_a), len(encoded_sequence_b) +(8, 19) +``` + +لذلك، لا يمكننا وضعها معًا في نفس المصفوفة كما هي. يجب إضافة حشو إلى التسلسل الأول حتى يصل إلى طول التسلسل الثاني، أو يجب تقليص الثاني إلى طول الأول. + +في الحالة الأولى، يتم تمديد قائمة المعرفات بواسطة مؤشرات الحشو. يمكننا تمرير قائمة إلى المحلل اللغوي وطلب منه إضافة الحشو بهذه الطريقة: + +```python +>>> padded_sequences = tokenizer([sequence_a, sequence_b], padding=True) +``` + +يمكننا أن نرى أنه تمت إضافة 0s على يمين الجملة الأولى لجعلها بنفس طول الجملة الثانية: + +```python +>>> padded_sequences["input_ids"] +[[101, 1188, 1110, 170, 1603, 4954, 119, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [101, 1188, 1110, 170, 1897, 1263, 4954, 119, 1135, 1110, 1120, 1655, 2039, 1190, 1103, 4954, 138, 119, 102]] +``` + +يمكن بعد ذلك تحويل هذا إلى مصفوفة في PyTorch أو TensorFlow. قناع الانتباه هو مصفوفة ثنائية تشير إلى +موضع مؤشرات الحشو بحيث لا ينتبه إليها النموذج. بالنسبة إلى [`BertTokenizer`]`1` يشير إلى +قيمة يجب الانتباه إليها، في حين يشير `0` إلى قيمة مبطنة. يوجد قناع الانتباه هذا في القاموس الذي يعيده المحلل اللغوي تحت المفتاح "attention_mask": + +```python +>>> padded_sequences["attention_mask"] +[[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]] +``` + +### نماذج الترميز التلقائي + +راجع [نماذج الترميز](#encoder-models) و [نمذجة اللغة المقنعة](#masked-language-modeling-mlm) + +### نماذج التنبؤية الذاتية + +راجع [نمذجة اللغة السببية](#causal-language-modeling) و [نماذج فك التشفير](#decoder-models) + +## B + +### العمود الفقري + +العمود الفقري هو الشبكة (الترميزات والطبقات) التي تخرج الحالات المخفية الخام أو الميزات. عادة ما يكون متصلاً بـ [رأس](#head) الذي يقبل الميزات كمدخلات له لإجراء تنبؤ. على سبيل المثال، [`ViTModel`] هو عمود فقري بدون رأس محدد أعلاه. يمكن أيضًا لنماذج أخرى استخدام [`VitModel`] كعمود فقري مثل [DPT](model_doc/dpt). + +## C + +### نمذجة اللغة السببية + +مهمة ما قبل التدريب حيث يقرأ النموذج النصوص بالترتيب ويتعين عليه التنبؤ بالكلمة التالية. يتم ذلك عادةً عن طريق +قراءة الجملة بأكملها ولكن باستخدام قناع داخل النموذج لإخفاء الرموز المميزة المستقبلية في خطوة زمنية معينة. + +### قناة + +تتكون الصور الملونة من بعض تركيبة من القيم في ثلاث قنوات: الأحمر والأخضر والأزرق (RGB) ولديها صور تدرج الرمادي قناة واحدة فقط. في 🤗 Transformers، يمكن أن تكون القناة البعد الأول أو الأخير لصورة المصفوفة: [`n_channels`، `height`، `width`] أو [`height`، `width`، `n_channels`]. + +### التصنيف الزمني للاتصال (CTC) + +خوارزمية تسمح للنموذج بالتعلم دون معرفة كيفية محاذاة الإدخال والإخراج بالضبط؛ يحسب CTC توزيع جميع المخرجات المحتملة لإدخال معين ويختار الإخراج الأكثر احتمالًا منه. يتم استخدام CTC بشكل شائع في مهام التعرف على الكلام لأن الكلام لا يتم محاذاته دائمًا بشكل نظيف مع النص المكتوب لأسباب مختلفة مثل معدلات الكلام المختلفة للمتكلم. + +### التحويل + +نوع من الطبقات في شبكة عصبية حيث يتم ضرب المصفوفة المدخلة عنصرًا عنصريًا بمصفوفة أصغر (النواة أو المرشح) ويتم جمع القيم في مصفوفة جديدة. يُعرف هذا باسم عملية التحويل التي يتم تكرارها عبر مصفوفة الإدخال بأكملها. يتم تطبيق كل عملية على قطاع مختلف من مصفوفة الإدخال. تُستخدم الشبكات العصبية التلافيفية (CNNs) بشكل شائع في رؤية الكمبيوتر. + +## D + +### DataParallel (DP) + +تقنية توازي لتدريب على وحدات معالجة الرسومات (GPU) متعددة حيث يتم تكرار الإعداد نفسه عدة مرات، مع تلقي كل مثيل +شريحة بيانات مختلفة. يتم تنفيذ المعالجة بالتوازي ويتم مزامنة جميع الإعدادات في نهاية كل خطوة تدريب. + +تعرف على المزيد حول كيفية عمل DataParallel [هنا](perf_train_gpu_many#dataparallel-vs-distributeddataparallel). + +### معرفات إدخال فك التشفير + +هذا الإدخال خاص بنماذج الترميز وفك التشفير، ويحتوي على معرفات الإدخال التي سيتم تغذيتها إلى فك التشفير. +يجب استخدام هذه المدخلات لمهام التسلسل إلى التسلسل، مثل الترجمة أو الملخص، وعادة ما يتم بناؤها بطريقة محددة لكل نموذج. + +تقوم معظم نماذج الترميز وفك التشفير (BART، T5) بإنشاء معرفات `decoder_input_ids` الخاصة بها من `labels`. في مثل هذه النماذج، +يعد تمرير `labels` هو الطريقة المفضلة للتعامل مع التدريب. + +يرجى التحقق من وثائق كل نموذج لمعرفة كيفية تعاملها مع معرفات الإدخال هذه للتدريب على التسلسل إلى التسلسل. + +### نماذج فك التشفير + +يُشار إليها أيضًا باسم نماذج التنبؤية الذاتية، وتنطوي نماذج فك التشفير على مهمة ما قبل التدريب (تسمى نمذجة اللغة السببية) حيث يقرأ النموذج النصوص بالترتيب ويتعين عليه التنبؤ بالكلمة التالية. يتم ذلك عادةً عن طريق +قراءة الجملة بأكملها مع قناع لإخفاء الرموز المميزة المستقبلية في خطوة زمنية معينة. + + + +## E + +### نماذج الترميز + +تُعرف أيضًا باسم نماذج الترميز التلقائي، وتأخذ نماذج الترميز إدخالًا (مثل النص أو الصور) وتحويلها إلى تمثيل رقمي مكثف يُطلق عليه الترميز. غالبًا ما يتم تدريب نماذج الترميز مسبقًا باستخدام تقنيات مثل [نمذجة اللغة المقنعة](#masked-language-modeling-mlm)، والتي تقوم بإخفاء أجزاء من تسلسل الإدخال وإجبار النموذج على إنشاء تمثيلات أكثر دلالة. + + + +## F + +### استخراج الميزات + +عملية اختيار وتحويل البيانات الأولية إلى مجموعة من الميزات التي تكون أكثر إعلامًا وفائدة لخوارزميات التعلم الآلي. بعض الأمثلة على استخراج الميزات تشمل تحويل النص الأولي إلى ترميزات الكلمات واستخراج ميزات مهمة مثل الحواف أو الأشكال من بيانات الصور/الفيديو. + +### التغذية الأمامية للتشويك + +في كل كتلة اهتمام بقايا في المحولات، تلي طبقة الاهتمام الذاتي عادة طبقتان من التغذية الأمامية. +حجم تضمين الطبقة الأمامية الوسيطة أكبر عادة من حجم المخفي للنموذج (على سبيل المثال، لـ +`google-bert/bert-base-uncased`). +بالنسبة لإدخال بحجم `[batch_size، sequence_length]`، يمكن أن تمثل الذاكرة المطلوبة لتخزين التضمينات الأمامية الوسيطة `[batch_size، sequence_length، config.intermediate_size]` جزءًا كبيرًا من استخدام الذاكرة. لاحظ مؤلفو [Reformer: The Efficient Transformer](https://arxiv.org/abs/2001.04451) أنه نظرًا لأن الحساب مستقل عن بعد `sequence_length`، فإنه من المكافئ رياضيًا حساب تضمينات الإخراج الأمامية `[batch_size، config.hidden_size]_0، ...، [batch_size، config_size]_n` +فردياً والتوصيل بها لاحقًا إلى `[batch_size، sequence_length، config.hidden_size]` مع `n = sequence_length`، والذي يتداول زيادة وقت الحساب مقابل تقليل استخدام الذاكرة، ولكنه ينتج عنه نتيجة رياضية +**مكافئ**. + +بالنسبة للنماذج التي تستخدم الدالة [`apply_chunking_to_forward`]`، يحدد `chunk_size` عدد التضمينات +يتم حساب الإخراج بالتوازي وبالتالي يحدد المقايضة بين التعقيد الذاكري والزمني. إذا +تم تعيين `chunk_size` إلى 0، فلن يتم إجراء أي تشويك للإرسال الأمامي. + +### النماذج الدقيقة + +التنضيد الدقيق هو شكل من أشكال التعلم التحويلي الذي يتضمن أخذ نموذج مدرب مسبقًا، وتجميد أوزانه، واستبدال طبقة الإخراج برأس نموذج تمت إضافته حديثًا. يتم تدريب رأس النموذج على مجموعة البيانات المستهدفة. + +راجع البرنامج التعليمي [Fine-tune a pretrained model](https://huggingface.co/docs/transformers/training) لمزيد من التفاصيل، وتعرف على كيفية ضبط النماذج باستخدام 🤗 Transformers. + +## H + +### الرأس + +يشير رأس النموذج إلى الطبقة الأخيرة من الشبكة العصبية التي تقبل الحالات المخفية الخام وتسقطها إلى بعد مختلف. هناك رأس نموذج مختلف لكل مهمة. على سبيل المثال: + + * [`GPT2ForSequenceClassification`] هو رأس تصنيف تسلسل - طبقة خطية - أعلى نموذج [`GPT2Model`] الأساسي. + * [`ViTForImageClassification`] هو رأس تصنيف صورة - طبقة خطية أعلى حالة مخفية نهائية للرمز `CLS` - أعلى نموذج [`ViTModel`] الأساسي. + * [`Wav2Vec2ForCTC`] هو رأس نمذجة اللغة مع [CTC](#connectionist-temporal-classification-ctc) أعلى نموذج [`Wav2Vec2Model`] الأساسي. + +## I + +### رقعة الصورة + +تقسم نماذج المحول القائم على الرؤية الصورة إلى رقع أصغر يتم تضمينها خطيًا، ثم يتم تمريرها كتسلسل إلى النموذج. يمكنك العثور على `patch_size` - أو الدقة - للنموذج في تكوينه. + +### الاستنتاج + +الاستنتاج هو عملية تقييم نموذج على بيانات جديدة بعد اكتمال التدريب. راجع البرنامج التعليمي [Pipeline for inference](https://huggingface.co/docs/transformers/pipeline_tutorial) لمعرفة كيفية إجراء الاستدلال باستخدام 🤗 Transformers. + +### معرفات الإدخال + +معرفات الإدخال هي غالبًا المعلمات المطلوبة الوحيدة التي يجب تمريرها إلى النموذج كإدخال. إنها مؤشرات الرموز المميزة، +تمثيلات رقمية للرموز التي تبني التسلسلات التي سيتم استخدامها كإدخال بواسطة النموذج. + + + +يعمل كل محلل لغوي بشكل مختلف ولكن الآلية الأساسية تبقى كما هي. إليك مثال باستخدام محلل BERT اللغوي، والذي يعد محلل لغوي [WordPiece](https://arxiv.org/pdf/1609.08144.pdf): + +```python +>>> from transformers import BertTokenizer + +>>> tokenizer = BertTokenizer.from_pretrained("google-bert/bert-base-cased") + +>>> sequence = "A Titan RTX has 24GB of VRAM" +``` + +يتولى المحلل اللغوي مهمة تقسيم التسلسل إلى رموز مميزة متوفرة في قاموس المحلل اللغوي. + +```python +>>> tokenized_sequence = tokenizer.tokenize(sequence) +``` + +الرموز المميزة هي إما كلمات أو كلمات فرعية. هنا على سبيل المثال، لم يكن "VRAM" في قاموس النموذج، لذلك تم تقسيمه +في "V"، "RA" و "M". للإشارة إلى أن هذه الرموز المميزة ليست كلمات منفصلة ولكنها أجزاء من نفس الكلمة، يتم إضافة بادئة مزدوجة الهاش +يتم إضافة "RA" و "M": + +```python +>>> print(tokenized_sequence) +['A', 'Titan', 'R', '##T', '##X', 'has', '24', '##GB', 'of', 'V', '##RA', '##M'] +``` +```python +>>> print(tokenized_sequence) +['A'، 'Titan'، 'R'، '##T'، '##X'، 'has'، '24'، '##GB'، 'of'، 'V'، '##RA'، '##M'] +``` + +يمكن بعد ذلك تحويل هذه الرموز المميزة إلى معرفات يمكن للنموذج فهمها. يمكن القيام بذلك عن طريق إرسال الجملة مباشرة إلى المحلل اللغوي، والذي يستفيد من تنفيذ Rust لـ [🤗 Tokenizers](https://github.com/huggingface/tokenizers) لأداء الذروة. + +```python +>>> inputs = tokenizer(sequence) +``` + +يعيد المحلل اللغوي قاموسًا بجميع الحجج اللازمة لعمل نموذجه المقابل بشكل صحيح. +توجد مؤشرات الرموز المميزة تحت مفتاح `input_ids`: + +```python +>>> encoded_sequence = inputs["input_ids"] +>>> print(encoded_sequence) +[101، 138، 18696، 155، 1942، 3190، 1144، 1572، 13745، 1104، 159، 9664، 2107، 102] +``` + +لاحظ أن المحلل اللغوي يضيف تلقائيًا "رموزًا خاصة" (إذا كان النموذج المرتبط يعتمد عليها) وهي معرفات خاصة +يستخدمها النموذج في بعض الأحيان. + +إذا قمنا بفك تشفير التسلسل السابق، + +```python +>>> decoded_sequence = tokenizer.decode(encoded_sequence) +``` + +سنرى + +```python +>>> print(decoded_sequence) +[CLS] A Titan RTX has 24GB of VRAM [SEP] +``` + +لأن هذه هي الطريقة التي يتوقع بها نموذج [`BertModel`] إدخالاته. + +## L + +### العلامات + +العلامات هي حجة اختيارية يمكن تمريرها حتى يتمكن النموذج من حساب الخسارة بنفسه. هذه العلامات +يجب أن يكون التوقع المتوقع للنموذج: سيستخدم الخسارة القياسية لحساب الخسارة بين تنبؤاته والقيمة المتوقعة (العلامة). + +تختلف هذه العلامات وفقًا لرأس النموذج، على سبيل المثال: + +- بالنسبة لنماذج تصنيف التسلسل، ([`BertForSequenceClassification`])، يتوقع +لم يتم ترجمة النص البرمجي والروابط التشعبية وفقًا لطلبك: + +--- + +قد تختلف تسميات كل نموذج، لذا تأكد دائمًا من مراجعة وثائق كل نموذج للحصول على معلومات حول التسميات الخاصة به. + + + +لا تقبل النماذج الأساسية ([`BertModel`]) التسميات، لأنها نماذج المحول الأساسية، والتي تقوم ببساطة بإخراج الميزات. + +### نماذج اللغة الكبيرة (LLM) + +مصطلح عام يشير إلى نماذج اللغة المحولة (GPT-3 و BLOOM و OPT) التي تم تدريبها على كمية كبيرة من البيانات. تميل هذه النماذج أيضًا إلى وجود عدد كبير من المعلمات القابلة للتعلم (على سبيل المثال، 175 مليار لمعلمة GPT-3). + +## M + +### نمذجة اللغة المقنعة (MLM) + +مهمة تدريب مسبق يرى فيها النموذج إصدارًا مشوهًا من النصوص، ويتم ذلك عادةً عن طريق قناع بعض الرموز بشكل عشوائي، ويجب عليه التنبؤ بالنص الأصلي. + +### متعدد الوسائط + +مهمة تجمع بين النصوص مع نوع آخر من الإدخالات (على سبيل المثال، الصور). + +## N + +### إنشاء اللغة الطبيعية (NLG) + +جميع المهام المتعلقة بتوليد النص (على سبيل المثال، [اكتب باستخدام المحولات](https://transformer.huggingface.co/)، والترجمة). + +### معالجة اللغة الطبيعية (NLP) + +طريقة عامة للقول "التعامل مع النصوص". + +### فهم اللغة الطبيعية (NLU) + +جميع المهام المتعلقة بفهم ما هو موجود في نص (على سبيل المثال تصنيف النص بأكمله، أو الكلمات الفردية). + +## P + +### خط الأنابيب + +خط أنابيب في 🤗 المحولات هو تجريد يشير إلى سلسلة من الخطوات التي يتم تنفيذها بترتيب محدد لمعالجة البيانات وتحويلها وإرجاع تنبؤ من نموذج. قد تكون بعض المراحل الموجودة في خط الأنابيب هي معالجة البيانات واستخراج الميزات والتوحيد. + +للحصول على مزيد من التفاصيل، راجع [خطوط الأنابيب للاستدلال](https://huggingface.co/docs/transformers/pipeline_tutorial). + +### PipelineParallel (PP) + +تقنية توازي يتم فيها تقسيم النموذج رأسياً (على مستوى الطبقة) عبر وحدات معالجة الرسومات (GPU) متعددة، بحيث توجد طبقة واحدة أو عدة طبقات من النموذج على وحدة معالجة الرسومات (GPU) واحدة فقط. تقوم كل وحدة معالجة رسومات (GPU) بمعالجة مراحل مختلفة من خط الأنابيب بالتوازي والعمل على جزء صغير من الدفعة. تعرف على المزيد حول كيفية عمل PipelineParallel [هنا](perf_train_gpu_many#from-naive-model-parallelism-to-pipeline-parallelism). + +### قيم البكسل + +مصفوفة من التمثيلات الرقمية لصورة يتم تمريرها إلى نموذج. تأخذ قيم البكسل شكل [`batch_size`، `num_channels`، `height`، `width`]، ويتم إنشاؤها من معالج الصور. + +### تجميع + +عملية تقلل مصفوفة إلى مصفوفة أصغر، إما عن طريق أخذ الحد الأقصى أو المتوسط للأبعاد المجمعة. طبقات التجميع شائعة بين الطبقات التلافيفية لتصغير تمثيل الميزة. + +### معرفات الموضع + +على عكس شبكات RNN التي تحتوي على موضع كل رمز مضمن فيها، لا تدرك المحولات موضع كل رمز. لذلك، تستخدم معرفات الموضع (`position_ids`) من قبل النموذج لتحديد موضع كل رمز في قائمة الرموز. + +إنها معلمة اختيارية. إذا لم يتم تمرير أي `position_ids` إلى النموذج، يتم إنشاء المعرفات تلقائيًا كترميزات موضعية مطلقة. + +يتم اختيار الترميزات الموضعية المطلقة في النطاق `[0، config.max_position_embeddings - 1]`. تستخدم بعض النماذج أنواعًا أخرى من الترميزات الموضعية، مثل الترميزات الموضعية الجيبية أو الترميزات الموضعية النسبية. + +### ما قبل المعالجة + +مهمة إعداد البيانات الخام بتنسيق يمكن أن تستهلكه نماذج التعلم الآلي بسهولة. على سبيل المثال، عادةً ما تتم معالجة النص مسبقًا عن طريق التمييز. للحصول على فكرة أفضل عن كيفية ظهور المعالجة المسبقة لأنواع الإدخال الأخرى، راجع البرنامج التعليمي [Preprocess](https://huggingface.co/docs/transformers/preprocessing). + +### النموذج المسبق التدريب + +نموذج تم تدريبه مسبقًا على بعض البيانات (على سبيل المثال، كل Wikipedia). تنطوي طرق التدريب المسبق على هدف ذاتي الإشراف، والذي يمكن أن يكون قراءة النص ومحاولة التنبؤ بالكلمة التالية (راجع [نمذجة اللغة السببية](#causal-language-modeling)) أو قناع بعض الكلمات ومحاولة التنبؤ بها (راجع [نمذجة اللغة المقنعة](#masked-language- عرض MLM)). + +لدى نماذج الكلام والرؤية أهدافها التدريبية المسبقة الخاصة. على سبيل المثال، Wav2Vec2 هو نموذج كلام تم تدريبه مسبقًا على مهمة تباينية تتطلب من النموذج تحديد تمثيل الكلام "الحقيقي" من مجموعة من تمثيلات الكلام "الخاطئة". من ناحية أخرى، BEiT هو نموذج رؤية تم تدريبه مسبقًا على مهمة نمذجة صورة مقنعة تقوم بقناع بعض رقع الصورة وتتطلب من النموذج التنبؤ بالرقع المقنعة (مشابهة لهدف نمذجة اللغة المقيدة). + +## R + +### شبكة عصبية متكررة (RNN) + +نوع من النماذج التي تستخدم حلقة عبر طبقة لمعالجة النصوص. + +### تعلم التمثيل + +مجال فرعي للتعلم الآلي يركز على تعلم التمثيلات ذات معنى للبيانات الخام. بعض أمثلة تقنيات تعلم التمثيل تشمل تضمين الكلمات، والتشفير التلقائي، والشبكات التنافسية التوليدية (GANs). + +## S + +### معدل العينات + +قياس، بالهرتز، لعدد العينات (إشارة الصوت) المأخوذة في الثانية. ينتج معدل العينات عن تمييز إشارة مستمرة مثل الكلام. + +### الاهتمام الذاتي + +يكتشف كل عنصر من عناصر الإدخال العناصر الأخرى لإدخالها التي يجب الانتباه إليها. + +### التعلم الذاتي الخاضع للإشراف + +فئة من تقنيات التعلم الآلي التي يقوم فيها النموذج بإنشاء هدفه التعليمي الخاص من البيانات غير الموسومة. يختلف عن [التعلم غير الخاضع للإشراف](#unsupervised-learning) و [التعلم الخاضع للإشراف](#supervised-learning) في أن عملية التعلم خاضعة للإشراف، ولكن ليس صراحة من المستخدم. + +مثال واحد على التعلم الذاتي الخاضع للإشراف هو [نمذجة اللغة المقيدة](#masked-language- عرض MLM)، حيث يتم تمرير جمل للنموذج مع إزالة نسبة من رموزه ويتعلم التنبؤ بالرموز المفقودة. + +### التعلم شبه الخاضع للإشراف + +فئة واسعة من تقنيات تدريب التعلم الآلي التي تستفيد من كمية صغيرة من البيانات الموسومة مع كمية أكبر من البيانات غير الموسومة لتحسين دقة النموذج، على عكس [التعلم الخاضع للإشراف](#supervised-learning) و [التعلم غير الخاضع للإشراف](#unsupervised- -التعلم). + +مثال على نهج التعلم شبه الخاضع للإشراف هو "التدريب الذاتي"، حيث يتم تدريب نموذج على بيانات موسومة، ثم يستخدم لتقديم تنبؤات حول البيانات غير الموسومة. يتم إضافة الجزء من البيانات غير الموسومة التي يتنبأ بها النموذج بأكبر قدر من الثقة إلى مجموعة البيانات الموسومة ويتم استخدامها لإعادة تدريب النموذج. + +### تسلسل إلى تسلسل (seq2seq) + +نماذج تولد تسلسلًا جديدًا من إدخال، مثل نماذج الترجمة، أو نماذج الملخص (مثل [Bart](model_doc/bart) أو [T5](model_doc/t5)). + +### Sharded DDP + +اسم آخر لمفهوم [Zero Redundancy Optimizer](#zero-redundancy-optimizer-zero) الأساسي كما هو مستخدم من قبل العديد من التطبيقات الأخرى لـ Zero. + +### خطوة + +في [التلف](#convolution) أو [التجميع](#pooling)، تشير الخطوة إلى المسافة التي يتم بها تحريك النواة عبر مصفوفة. تعني الخطوة 1 أن النواة تتحرك بكسل واحد في كل مرة، وتعني الخطوة 2 أن النواة تتحرك بمقدار بكسلين في كل مرة. + +### التعلم الخاضع للإشراف + +شكل من أشكال تدريب النماذج التي تستخدم البيانات الموسومة مباشرة لتصحيح أداء النموذج وتوجيهه. يتم تغذية البيانات في النموذج الذي يتم تدريبه، ويتم مقارنة تنبؤاته بالتسميات المعروفة. يقوم النموذج بتحديث أوزانه بناءً على مدى عدم صحة تنبؤاته، وتتكرر العملية لتحسين أداء النموذج. + +## T + +### توازي Tensor (TP) + +تقنية توازي لتدريب وحدات معالجة الرسومات (GPU) متعددة يتم فيها تقسيم المصفوفة إلى عدة أجزاء، لذا بدلاً من وجود المصفوفة بأكملها على وحدة معالجة الرسومات (GPU) واحدة، توجد كل شظية من المصفوفة على وحدة معالجة الرسومات (GPU) المخصصة لها. تتم معالجة الشظايا بشكل منفصل وبالتوازي على وحدات معالجة الرسومات (GPU) المختلفة ويتم مزامنة النتائج في نهاية خطوة المعالجة. هذا ما يُطلق عليه أحيانًا التوازي الأفقي، حيث يحدث الانقسام على المستوى الأفقي. + +تعرف على المزيد حول توازي Tensor [هنا](perf_train_gpu_many#tensor-parallelism). + +### رمز + +جزء من جملة، عادة ما يكون كلمة، ولكن يمكن أن يكون أيضًا كلمة فرعية (غالبًا ما يتم تقسيم الكلمات غير الشائعة إلى كلمات فرعية) أو رمز ترقيم. + +### معرفات نوع الرمز + +الغرض من بعض النماذج هو إجراء التصنيف على أزواج من الجمل أو الإجابة على الأسئلة. + + + +يتطلب ذلك تسلسلين مختلفين يتم دمجهما في إدخال "input_ids" واحد، والذي يتم عادةً باستخدام رموز خاصة، مثل رموز التصنيف (`[CLS]`) والفاصل (`[SEP]`). على سبيل المثال، يقوم نموذج BERT ببناء إدخال تسلسلين على النحو التالي: + +```python +>>> # [CLS] SEQUENCE_A [SEP] SEQUENCE_B [SEP] +``` + +يمكننا استخدام برنامجنا للتمييز لإنشاء مثل هذه الجملة تلقائيًا عن طريق تمرير التسلسلين إلى `tokenizer` كحجتين (وليس قائمة، كما كان من قبل) مثل هذا: + +```python +>>> from transformers import BertTokenizer + +>>> tokenizer = BertTokenizer.from_pretrained("google-bert/bert-base-cased") +>>> sequence_a = "HuggingFace is based in NYC" +>>> sequence_b = "Where is HuggingFace based?" + +>>> encoded_dict = tokenizer(sequence_a، sequence_b) +>>> decoded = tokenizer.decode(encoded_dict["input_ids"]) +``` + +والذي سيعيد: + +```python +>>> print(decoded) +[CLS] HuggingFace is based in NYC [SEP] Where is HuggingFace based؟ [SEP] +``` + +هذا يكفي لبعض النماذج لفهم أين ينتهي تسلسل واحد وأين يبدأ الآخر. ومع ذلك، تستخدم نماذج أخرى، مثل BERT، أيضًا معرفات نوع الرمز (يُطلق عليها أيضًا معرفات الجزء). يتم تمثيلها كماسك ثنائي لتحديد نوعي التسلسل في النموذج. + +يعيد برنامج الترميز هذا القناع كإدخال "token_type_ids": + +```python +>>> encoded_dict["token_type_ids"] +[0، 0، 0، 0، 0، 0، 0، 0، 0، 0، 1، 1، 1، 1، 1، 1، 1، 1، 1] +``` + +يتم تمثيل التسلسل الأول، "السياق" المستخدم للسؤال، بجميع رموزه بواسطة `0`، في حين يتم تمثيل التسلسل الثاني، المقابل إلى "السؤال"، بجميع رموزه بواسطة `1`. + +تستخدم بعض النماذج، مثل [`XLNetModel`] رمزًا إضافيًا يمثله `2`. + +### التعلم بالنقل + +تقنية تنطوي على أخذ نموذج تم تدريبه مسبقًا وتكييفه مع مجموعة بيانات خاصة بمهمتك. بدلاً من تدريب نموذج من الصفر، يمكنك الاستفادة من المعرفة المكتسبة من نموذج موجود كنقطة بداية. يسرع هذا عملية التعلم ويقلل من كمية بيانات التدريب المطلوبة. + +### المحول + +هندسة نموذج التعلم العميق القائمة على الاهتمام الذاتي. + +## U + +### التعلم غير الخاضع للإشراف + +شكل من أشكال تدريب النماذج حيث لا يتم وضع علامات على البيانات المقدمة إلى النموذج. تستفيد تقنيات التعلم غير الخاضعة للإشراف من المعلومات الإحصائية لتوزيع البيانات للعثور على الأنماط المفيدة للمهمة المعنية. + +## Z + +### محسن Zero Redundancy (ZeRO) + +تقنية توازي تقوم بتشظية المصفوفات بطريقة مشابهة لـ [TensorParallel](#tensor-parallelism-tp)، باستثناء إعادة بناء المصفوفة بالكامل في الوقت المناسب لحساب التقدير أو الحساب الخلفي، وبالتالي لا يلزم تعديل النموذج. تدعم هذه الطريقة أيضًا تقنيات الإخلاء المختلفة للتعويض عن ذاكرة GPU المحدودة. + +تعرف على المزيد حول Zero [هنا](perf_train_gpu_many#zero-data-parallelism). \ No newline at end of file From 89fde7361b6e533cf5b086d3765b01402cb8db46 Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Wed, 28 Aug 2024 23:00:06 +0300 Subject: [PATCH 02/13] Update glossary.md --- docs/source/ar/glossary.md | 82 +++++++++++++++++++------------------- 1 file changed, 40 insertions(+), 42 deletions(-) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index 2533e31d0ef8..a070b9493fa2 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -1,18 +1,18 @@ -# مسرد المصطلحات +# قاموس المصطلحات يحدد هذا المسرد مصطلحات التعلم الآلي العامة و 🤗 Transformers لمساعدتك على فهم الوثائق بشكل أفضل. ## A -### قناع الانتباه +### قناع الانتباه (Attention Mask) -قناع الانتباه هو حجة اختيارية تستخدم عند تجميع التسلسلات معًا. +قناع الانتباه هو مُدخل اختياري يستخدم عند تجميع التسلسلات معًا -يشير هذا الحجة إلى النموذج إلى الرموز المميزة التي يجب الانتباه إليها، والتي لا ينبغي ذلك. +يشير هذا المُدخل إلى النموذج أى الرموز المميزة (tokens) التي يجب الانتباه إليها، وأيها لا ينبغي ذلك. -على سبيل المثال، ضع في اعتبارك هاتين التسلسلتين: +على سبيل المثال، تأمّل هذين التسلسُلين : ```python >>> from transformers import BertTokenizer @@ -41,7 +41,7 @@ >>> padded_sequences = tokenizer([sequence_a, sequence_b], padding=True) ``` -يمكننا أن نرى أنه تمت إضافة 0s على يمين الجملة الأولى لجعلها بنفس طول الجملة الثانية: +يمكننا أن نرى أنه تمت إضافة اصفار على يمين الجملة الأولى لجعلها بنفس طول الجملة الثانية: ```python >>> padded_sequences["input_ids"] @@ -49,9 +49,8 @@ ``` يمكن بعد ذلك تحويل هذا إلى مصفوفة في PyTorch أو TensorFlow. قناع الانتباه هو مصفوفة ثنائية تشير إلى -موضع مؤشرات الحشو بحيث لا ينتبه إليها النموذج. بالنسبة إلى [`BertTokenizer`]`1` يشير إلى -قيمة يجب الانتباه إليها، في حين يشير `0` إلى قيمة مبطنة. يوجد قناع الانتباه هذا في القاموس الذي يعيده المحلل اللغوي تحت المفتاح "attention_mask": - +موضع المؤشرات المحشوه بحيث لا ينتبه إليها النموذج. بالنسبة إلى [`BertTokenizer`]`1` يشير إلى +قيمة يجب الانتباه إليها، في حين يشير `0` إلى قيمة مبطنة. يُمكن إيجاد قناع الانتباه في القاموس الذي يُعيده مُجزِّئ النصوص (tokenizer) تحت المفتاح "attention_mask". ```python >>> padded_sequences["attention_mask"] [[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]] @@ -61,7 +60,7 @@ راجع [نماذج الترميز](#encoder-models) و [نمذجة اللغة المقنعة](#masked-language-modeling-mlm) -### نماذج التنبؤية الذاتية +### النماذج ذاتية الانحدار (Autoregressive Models) راجع [نمذجة اللغة السببية](#causal-language-modeling) و [نماذج فك التشفير](#decoder-models) @@ -69,40 +68,40 @@ ### العمود الفقري -العمود الفقري هو الشبكة (الترميزات والطبقات) التي تخرج الحالات المخفية الخام أو الميزات. عادة ما يكون متصلاً بـ [رأس](#head) الذي يقبل الميزات كمدخلات له لإجراء تنبؤ. على سبيل المثال، [`ViTModel`] هو عمود فقري بدون رأس محدد أعلاه. يمكن أيضًا لنماذج أخرى استخدام [`VitModel`] كعمود فقري مثل [DPT](model_doc/dpt). +يُمثل العمود الفقري الشبكة العصبونية (الترميزات والطبقات) المسؤولة عن إخراج الحالات الخفية أو المُميزات الأولية. عادة ما يكون متصلاً بـ [رأس](#head) يستقبل المُميزات كمدخلات لإجراء تنبؤ. على سبيل المثال، يُعد النموذج [`ViTModel`] عمودًا فقريًا دون رأس مُحدد مُرفق به. يمكن أيضًا استخدام `ViTModel` كعمود فقري في نماذج أخرى, مثل [DPT](model_doc/dpt). ## C -### نمذجة اللغة السببية +### نمذجة اللغة السببية (أو التنبؤية) causal language modeling + +مهمة ما قبل التدريب يقوم فيها النموذج بقراءة النصوص بالترتيب ويتنبأ بالكلمة التالية. يتم ذلك عادةً من خلال قراءة الجملة كاملةً، ولكن مع استخدام قناع داخل النموذج لإخفاء الرموز المميزة اللاحقة في خطوة زمنية معينة. + -مهمة ما قبل التدريب حيث يقرأ النموذج النصوص بالترتيب ويتعين عليه التنبؤ بالكلمة التالية. يتم ذلك عادةً عن طريق -قراءة الجملة بأكملها ولكن باستخدام قناع داخل النموذج لإخفاء الرموز المميزة المستقبلية في خطوة زمنية معينة. ### قناة -تتكون الصور الملونة من بعض تركيبة من القيم في ثلاث قنوات: الأحمر والأخضر والأزرق (RGB) ولديها صور تدرج الرمادي قناة واحدة فقط. في 🤗 Transformers، يمكن أن تكون القناة البعد الأول أو الأخير لصورة المصفوفة: [`n_channels`، `height`، `width`] أو [`height`، `width`، `n_channels`]. +تتكون الصور الملونة من مزيج من القيم في ثلاث قنوات لونية: الأحمر والأخضر والأزرق (RGB) بينما تحتوي صور ذات التدرج رمادي على قناة واحدة فقط. في مكتبة 🤗 Transformers، يمكن أن تكون القناة اللونية البُعد الأول أو الأخير في مُصفوفة الصورة: [`n_channels`، `height`، `width`] أو [`height`، `width`، `n_channels`]. -### التصنيف الزمني للاتصال (CTC) +### التصنيف الزمني التوصيلي (CTC) -خوارزمية تسمح للنموذج بالتعلم دون معرفة كيفية محاذاة الإدخال والإخراج بالضبط؛ يحسب CTC توزيع جميع المخرجات المحتملة لإدخال معين ويختار الإخراج الأكثر احتمالًا منه. يتم استخدام CTC بشكل شائع في مهام التعرف على الكلام لأن الكلام لا يتم محاذاته دائمًا بشكل نظيف مع النص المكتوب لأسباب مختلفة مثل معدلات الكلام المختلفة للمتكلم. +خوارزمية تسمح للنموذج بالتعلم دون معرفة كيفية محاذاة المدخلات مع المخرجات بدقة؛ يحسب CTC توزيع جميع المخرجات المحتملة لمدخلات مُحددة ويختار المخرج الأكثر احتمالًا. تُستخدم CTC بشكل شائع في مهام التعرف على الكلام نظرًا لأن الكلام المنطوق لا يتوافق دائمًا بشكل مُباشر مع النص المكتوب، لأسباب مختلفة مثل معدلات الكلام المختلفة للمتكلم. -### التحويل +### الالتفاف (Convolution) -نوع من الطبقات في شبكة عصبية حيث يتم ضرب المصفوفة المدخلة عنصرًا عنصريًا بمصفوفة أصغر (النواة أو المرشح) ويتم جمع القيم في مصفوفة جديدة. يُعرف هذا باسم عملية التحويل التي يتم تكرارها عبر مصفوفة الإدخال بأكملها. يتم تطبيق كل عملية على قطاع مختلف من مصفوفة الإدخال. تُستخدم الشبكات العصبية التلافيفية (CNNs) بشكل شائع في رؤية الكمبيوتر. +نوع من الطبقات في شبكة عصبية، حيث تُضرب مصفوفة الإدخال عُنصرًا بُعنصر بمصفوفة أصغر تُسمى (النواة أو المرشح) ويتم جمع القيم في مصفوفة جديدة. يُعرف هذا باسم عملية الالتفاف التي يتم تكرارها عبر مصفوفة الإدخال بأكملها. تُطبق كل عملية التفاف على جزء مُختلف من مصفوفة الإدخال. تُستخدم الشبكات العصبية الالتفافية (CNNs) بشكل شائع في رؤية الحاسوب. ## D -### DataParallel (DP) +### التوازي على مستوى البيانات (DataParallel - DP) -تقنية توازي لتدريب على وحدات معالجة الرسومات (GPU) متعددة حيث يتم تكرار الإعداد نفسه عدة مرات، مع تلقي كل مثيل -شريحة بيانات مختلفة. يتم تنفيذ المعالجة بالتوازي ويتم مزامنة جميع الإعدادات في نهاية كل خطوة تدريب. +هي تقنية تُستخدم لتدريب النماذج على عدة وحدات معالجة رسومات (GPUs)، حيث يتم نسخ نفس إعداد التدريب عدة مرات، بحيث تتلقى كل نسخة شريحة مختلفة من البيانات يتم تنفيذ المعالجة بالتوازي ويتم مزامنة جميع الإعدادات في نهاية كل خطوة تدريب. تعرف على المزيد حول كيفية عمل DataParallel [هنا](perf_train_gpu_many#dataparallel-vs-distributeddataparallel). -### معرفات إدخال فك التشفير +### معرفات مدخلات وحدة فك التشفير -هذا الإدخال خاص بنماذج الترميز وفك التشفير، ويحتوي على معرفات الإدخال التي سيتم تغذيتها إلى فك التشفير. -يجب استخدام هذه المدخلات لمهام التسلسل إلى التسلسل، مثل الترجمة أو الملخص، وعادة ما يتم بناؤها بطريقة محددة لكل نموذج. +هذا المدخل خاص بنماذج الترميز وفك التشفير، ويحتوي على معرفات الإدخال التي سيتم تغذيتها إلى وحدة فك التشفير. +يجب استخدام هذه المدخلات لمهام التسلسل إلى التسلسل، مثل الترجمة أو التلخيص، وعادة ما يتم بناؤها بطريقة محددة لكل نموذج. تقوم معظم نماذج الترميز وفك التشفير (BART، T5) بإنشاء معرفات `decoder_input_ids` الخاصة بها من `labels`. في مثل هذه النماذج، يعد تمرير `labels` هو الطريقة المفضلة للتعامل مع التدريب. @@ -115,45 +114,44 @@ قراءة الجملة بأكملها مع قناع لإخفاء الرموز المميزة المستقبلية في خطوة زمنية معينة. +### التعلم العميق (DL) +خوارزميات التعلم الآلي التي تستخدم الشبكات العصبية متعددة الطبقات. ## E ### نماذج الترميز -تُعرف أيضًا باسم نماذج الترميز التلقائي، وتأخذ نماذج الترميز إدخالًا (مثل النص أو الصور) وتحويلها إلى تمثيل رقمي مكثف يُطلق عليه الترميز. غالبًا ما يتم تدريب نماذج الترميز مسبقًا باستخدام تقنيات مثل [نمذجة اللغة المقنعة](#masked-language-modeling-mlm)، والتي تقوم بإخفاء أجزاء من تسلسل الإدخال وإجبار النموذج على إنشاء تمثيلات أكثر دلالة. +تُعرف أيضًا باسم نماذج الترميز التلقائي، وتأخذ نماذج الترميز إدخالًا (مثل النص أو الصور) وتحويلها إلى تمثيل رقمي مكثف يُطلق عليه الترميز. غالبًا ما يتم تدريب نماذج الترميز مسبقًا باستخدام تقنيات مثل [نمذجة اللغة المقنعة](#masked-language-modeling-mlm)، والتي تقوم بإخفاء أجزاء من تسلسل الإدخال وإجبار النموذج على إنشاء تمثيلات أكثر دلالة (فائدة ووضوحاً). ## F - ### استخراج الميزات -عملية اختيار وتحويل البيانات الأولية إلى مجموعة من الميزات التي تكون أكثر إعلامًا وفائدة لخوارزميات التعلم الآلي. بعض الأمثلة على استخراج الميزات تشمل تحويل النص الأولي إلى ترميزات الكلمات واستخراج ميزات مهمة مثل الحواف أو الأشكال من بيانات الصور/الفيديو. +عملية اختيار وتحويل البيانات الأولية إلى مجموعة من الميزات الأكثر إفادة وفائدة لخوارزميات التعلم الآلي. بعض الأمثلة على استخراج الميزات تشمل تحويل النص الأولي/الخام إلى ترميزات الكلمات واستخراج ميزات مهمة مثل الحواف أو الأشكال من بيانات الصور/الفيديو. -### التغذية الأمامية للتشويك +### تجزئة التغذية الأمامية (feed forward chunking) -في كل كتلة اهتمام بقايا في المحولات، تلي طبقة الاهتمام الذاتي عادة طبقتان من التغذية الأمامية. +في كل وحدة الانتباه الباقية في المحولات، تلي طبقة الاهتمام الانتباه عادة طبقتان للتغذية الأمامية. حجم تضمين الطبقة الأمامية الوسيطة أكبر عادة من حجم المخفي للنموذج (على سبيل المثال، لـ `google-bert/bert-base-uncased`). -بالنسبة لإدخال بحجم `[batch_size، sequence_length]`، يمكن أن تمثل الذاكرة المطلوبة لتخزين التضمينات الأمامية الوسيطة `[batch_size، sequence_length، config.intermediate_size]` جزءًا كبيرًا من استخدام الذاكرة. لاحظ مؤلفو [Reformer: The Efficient Transformer](https://arxiv.org/abs/2001.04451) أنه نظرًا لأن الحساب مستقل عن بعد `sequence_length`، فإنه من المكافئ رياضيًا حساب تضمينات الإخراج الأمامية `[batch_size، config.hidden_size]_0، ...، [batch_size، config_size]_n` -فردياً والتوصيل بها لاحقًا إلى `[batch_size، sequence_length، config.hidden_size]` مع `n = sequence_length`، والذي يتداول زيادة وقت الحساب مقابل تقليل استخدام الذاكرة، ولكنه ينتج عنه نتيجة رياضية -**مكافئ**. +بالنسبة لإدخال بحجم `[batch_size, sequence_length]`، يمكن أن تمثل الذاكرة المطلوبة لتخزين التضمينات الأمامية الوسيطة `[batch_size، sequence_length, config.intermediate_size]` جزءًا كبيرًا من استخدام الذاكرة. لاحظ مؤلفو (https://arxiv.org/abs/2001.04451)[Reformer: The Efficient Transformer] أنه نظرًا لأن الحساب مستقل عن بعد `sequence_length`، فإنه من المكافئ رياضيًا حساب تضمينات الإخراج الأمامية `[batch_size، config.hidden_size]_0, ..., [batch_size، `config_size]_n +فردياً والتوصيل بها لاحقًا إلى `[batch_size, sequence_length, config.hidden_size]` مع `n = sequence_length`، والذي يتداول زيادة وقت الحساب مقابل تقليل استخدام الذاكرة، ولكنه ينتج عنه نتيجة مكافئة رياضيا. + +بالنسبة للنماذج التي تستخدم الدالة `[apply_chunking_to_forward]`، يحدد `chunk_size` عدد التضمينات يتم حساب الإخراج بالتوازي وبالتالي يحدد المقايضة بين حجم الذاكرة والتعقيد الوقت. إذا تم تعيين `chunk_size` إلى `0`، فلن يتم إجراء تجزئة التغذية الأمامية. -بالنسبة للنماذج التي تستخدم الدالة [`apply_chunking_to_forward`]`، يحدد `chunk_size` عدد التضمينات -يتم حساب الإخراج بالتوازي وبالتالي يحدد المقايضة بين التعقيد الذاكري والزمني. إذا -تم تعيين `chunk_size` إلى 0، فلن يتم إجراء أي تشويك للإرسال الأمامي. -### النماذج الدقيقة +### النماذج المضبوطة (finetuned models) -التنضيد الدقيق هو شكل من أشكال التعلم التحويلي الذي يتضمن أخذ نموذج مدرب مسبقًا، وتجميد أوزانه، واستبدال طبقة الإخراج برأس نموذج تمت إضافته حديثًا. يتم تدريب رأس النموذج على مجموعة البيانات المستهدفة. +الضبط الدقيق هو شكل من أشكال نقل التعلم، يتضمن أخذ نموذج مُدرّب مسبقًا، وتجميد أوزانه، واستبدال طبقة الإخراج برأس نموذج مُضاف حديثًا. يتم تدريب رأس النموذج على مجموعة البيانات المستهدفة. راجع البرنامج التعليمي [Fine-tune a pretrained model](https://huggingface.co/docs/transformers/training) لمزيد من التفاصيل، وتعرف على كيفية ضبط النماذج باستخدام 🤗 Transformers. ## H -### الرأس +### رأس النموذج (head) -يشير رأس النموذج إلى الطبقة الأخيرة من الشبكة العصبية التي تقبل الحالات المخفية الخام وتسقطها إلى بعد مختلف. هناك رأس نموذج مختلف لكل مهمة. على سبيل المثال: +يشير رأس النموذج إلى الطبقة الأخيرة من الشبكة العصبية التي تقبل الحالات المخفية الخام/الأولية وتُسقطها على بُعد مختلف. يوجد رأس نموذج مختلف لكل مهمة. * [`GPT2ForSequenceClassification`] هو رأس تصنيف تسلسل - طبقة خطية - أعلى نموذج [`GPT2Model`] الأساسي. * [`ViTForImageClassification`] هو رأس تصنيف صورة - طبقة خطية أعلى حالة مخفية نهائية للرمز `CLS` - أعلى نموذج [`ViTModel`] الأساسي. @@ -161,7 +159,7 @@ ## I -### رقعة الصورة +### دفعة الصورة تقسم نماذج المحول القائم على الرؤية الصورة إلى رقع أصغر يتم تضمينها خطيًا، ثم يتم تمريرها كتسلسل إلى النموذج. يمكنك العثور على `patch_size` - أو الدقة - للنموذج في تكوينه. @@ -449,4 +447,4 @@ تقنية توازي تقوم بتشظية المصفوفات بطريقة مشابهة لـ [TensorParallel](#tensor-parallelism-tp)، باستثناء إعادة بناء المصفوفة بالكامل في الوقت المناسب لحساب التقدير أو الحساب الخلفي، وبالتالي لا يلزم تعديل النموذج. تدعم هذه الطريقة أيضًا تقنيات الإخلاء المختلفة للتعويض عن ذاكرة GPU المحدودة. -تعرف على المزيد حول Zero [هنا](perf_train_gpu_many#zero-data-parallelism). \ No newline at end of file +تعرف على المزيد حول Zero [هنا](perf_train_gpu_many#zero-data-parallelism). From 31cfd4032a7ff01d3aaafcb364fe347ef425c638 Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Wed, 28 Aug 2024 23:23:20 +0300 Subject: [PATCH 03/13] Update glossary.md --- docs/source/ar/glossary.md | 48 +++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index a070b9493fa2..d30818cc9518 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -56,7 +56,7 @@ [[1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]] ``` -### نماذج الترميز التلقائي +### نماذج الترميز التلقائي (autoencoding models) راجع [نماذج الترميز](#encoder-models) و [نمذجة اللغة المقنعة](#masked-language-modeling-mlm) @@ -66,7 +66,7 @@ ## B -### العمود الفقري +### العمود الفقري (backbone) يُمثل العمود الفقري الشبكة العصبونية (الترميزات والطبقات) المسؤولة عن إخراج الحالات الخفية أو المُميزات الأولية. عادة ما يكون متصلاً بـ [رأس](#head) يستقبل المُميزات كمدخلات لإجراء تنبؤ. على سبيل المثال، يُعد النموذج [`ViTModel`] عمودًا فقريًا دون رأس مُحدد مُرفق به. يمكن أيضًا استخدام `ViTModel` كعمود فقري في نماذج أخرى, مثل [DPT](model_doc/dpt). @@ -78,11 +78,11 @@ -### قناة +### قناة(channel) تتكون الصور الملونة من مزيج من القيم في ثلاث قنوات لونية: الأحمر والأخضر والأزرق (RGB) بينما تحتوي صور ذات التدرج رمادي على قناة واحدة فقط. في مكتبة 🤗 Transformers، يمكن أن تكون القناة اللونية البُعد الأول أو الأخير في مُصفوفة الصورة: [`n_channels`، `height`، `width`] أو [`height`، `width`، `n_channels`]. -### التصنيف الزمني التوصيلي (CTC) +### التصنيف الزمني التوصيلي connectionist temporal classification (CTC) خوارزمية تسمح للنموذج بالتعلم دون معرفة كيفية محاذاة المدخلات مع المخرجات بدقة؛ يحسب CTC توزيع جميع المخرجات المحتملة لمدخلات مُحددة ويختار المخرج الأكثر احتمالًا. تُستخدم CTC بشكل شائع في مهام التعرف على الكلام نظرًا لأن الكلام المنطوق لا يتوافق دائمًا بشكل مُباشر مع النص المكتوب، لأسباب مختلفة مثل معدلات الكلام المختلفة للمتكلم. @@ -98,7 +98,7 @@ تعرف على المزيد حول كيفية عمل DataParallel [هنا](perf_train_gpu_many#dataparallel-vs-distributeddataparallel). -### معرفات مدخلات وحدة فك التشفير +### معرفات مدخلات وحدة فك التشفير (decoder input IDs) هذا المدخل خاص بنماذج الترميز وفك التشفير، ويحتوي على معرفات الإدخال التي سيتم تغذيتها إلى وحدة فك التشفير. يجب استخدام هذه المدخلات لمهام التسلسل إلى التسلسل، مثل الترجمة أو التلخيص، وعادة ما يتم بناؤها بطريقة محددة لكل نموذج. @@ -108,25 +108,25 @@ يرجى التحقق من وثائق كل نموذج لمعرفة كيفية تعاملها مع معرفات الإدخال هذه للتدريب على التسلسل إلى التسلسل. -### نماذج فك التشفير +### نماذج فك التشفير (decoder models) يُشار إليها أيضًا باسم نماذج التنبؤية الذاتية، وتنطوي نماذج فك التشفير على مهمة ما قبل التدريب (تسمى نمذجة اللغة السببية) حيث يقرأ النموذج النصوص بالترتيب ويتعين عليه التنبؤ بالكلمة التالية. يتم ذلك عادةً عن طريق قراءة الجملة بأكملها مع قناع لإخفاء الرموز المميزة المستقبلية في خطوة زمنية معينة. -### التعلم العميق (DL) +### التعلم العميق deep learning (DL) خوارزميات التعلم الآلي التي تستخدم الشبكات العصبية متعددة الطبقات. ## E -### نماذج الترميز +### نماذج الترميز (encoder models) تُعرف أيضًا باسم نماذج الترميز التلقائي، وتأخذ نماذج الترميز إدخالًا (مثل النص أو الصور) وتحويلها إلى تمثيل رقمي مكثف يُطلق عليه الترميز. غالبًا ما يتم تدريب نماذج الترميز مسبقًا باستخدام تقنيات مثل [نمذجة اللغة المقنعة](#masked-language-modeling-mlm)، والتي تقوم بإخفاء أجزاء من تسلسل الإدخال وإجبار النموذج على إنشاء تمثيلات أكثر دلالة (فائدة ووضوحاً). ## F -### استخراج الميزات +### استخراج الميزات (feature extraction) عملية اختيار وتحويل البيانات الأولية إلى مجموعة من الميزات الأكثر إفادة وفائدة لخوارزميات التعلم الآلي. بعض الأمثلة على استخراج الميزات تشمل تحويل النص الأولي/الخام إلى ترميزات الكلمات واستخراج ميزات مهمة مثل الحواف أو الأشكال من بيانات الصور/الفيديو. @@ -159,15 +159,15 @@ ## I -### دفعة الصورة +### ترميم الصور )image patch) تقسم نماذج المحول القائم على الرؤية الصورة إلى رقع أصغر يتم تضمينها خطيًا، ثم يتم تمريرها كتسلسل إلى النموذج. يمكنك العثور على `patch_size` - أو الدقة - للنموذج في تكوينه. -### الاستنتاج +### الاستدلال (Inference) -الاستنتاج هو عملية تقييم نموذج على بيانات جديدة بعد اكتمال التدريب. راجع البرنامج التعليمي [Pipeline for inference](https://huggingface.co/docs/transformers/pipeline_tutorial) لمعرفة كيفية إجراء الاستدلال باستخدام 🤗 Transformers. +الاستدلال هو عملية تقييم نموذج على بيانات جديدة بعد اكتمال التدريب. راجع البرنامج التعليمي [Pipeline for inference](https://huggingface.co/docs/transformers/pipeline_tutorial) لمعرفة كيفية إجراء الاستدلال باستخدام 🤗 Transformers. -### معرفات الإدخال +### معرفات الإدخال (input IDs) معرفات الإدخال هي غالبًا المعلمات المطلوبة الوحيدة التي يجب تمريرها إلى النموذج كإدخال. إنها مؤشرات الرموز المميزة، تمثيلات رقمية للرموز التي تبني التسلسلات التي سيتم استخدامها كإدخال بواسطة النموذج. @@ -238,12 +238,12 @@ ## L -### العلامات +### التسميات (labels) -العلامات هي حجة اختيارية يمكن تمريرها حتى يتمكن النموذج من حساب الخسارة بنفسه. هذه العلامات -يجب أن يكون التوقع المتوقع للنموذج: سيستخدم الخسارة القياسية لحساب الخسارة بين تنبؤاته والقيمة المتوقعة (العلامة). +التسميات هي حجة اختيارية يمكن تمريرها حتى يتمكن النموذج من حساب الخسارة بنفسه. هذه التسميات +يجب أن يكون التوقع المتوقع للنموذج: سيستخدم الخسارة القياسية لحساب الخسارة بين تنبؤاته والقيمة المتوقعة (التسمية). -تختلف هذه العلامات وفقًا لرأس النموذج، على سبيل المثال: +تختلف هذه التسميات وفقًا لرأس النموذج، على سبيل المثال: - بالنسبة لنماذج تصنيف التسلسل، ([`BertForSequenceClassification`])، يتوقع لم يتم ترجمة النص البرمجي والروابط التشعبية وفقًا لطلبك: @@ -256,37 +256,37 @@ لا تقبل النماذج الأساسية ([`BertModel`]) التسميات، لأنها نماذج المحول الأساسية، والتي تقوم ببساطة بإخراج الميزات. -### نماذج اللغة الكبيرة (LLM) +### نماذج اللغة الكبيرة large language models (LLM) مصطلح عام يشير إلى نماذج اللغة المحولة (GPT-3 و BLOOM و OPT) التي تم تدريبها على كمية كبيرة من البيانات. تميل هذه النماذج أيضًا إلى وجود عدد كبير من المعلمات القابلة للتعلم (على سبيل المثال، 175 مليار لمعلمة GPT-3). ## M -### نمذجة اللغة المقنعة (MLM) +### نمذجة اللغة المقنعة masked language modeling (MLM) مهمة تدريب مسبق يرى فيها النموذج إصدارًا مشوهًا من النصوص، ويتم ذلك عادةً عن طريق قناع بعض الرموز بشكل عشوائي، ويجب عليه التنبؤ بالنص الأصلي. -### متعدد الوسائط +### متعدد الوسائط (multimodal) مهمة تجمع بين النصوص مع نوع آخر من الإدخالات (على سبيل المثال، الصور). ## N -### إنشاء اللغة الطبيعية (NLG) +### توليد اللغة الطبيعية Natural language generation (NLG) جميع المهام المتعلقة بتوليد النص (على سبيل المثال، [اكتب باستخدام المحولات](https://transformer.huggingface.co/)، والترجمة). -### معالجة اللغة الطبيعية (NLP) +### معالجة اللغة الطبيعية Natural language processing (NLP) طريقة عامة للقول "التعامل مع النصوص". -### فهم اللغة الطبيعية (NLU) +### فهم اللغة الطبيعية Natural language understanding (NLU) جميع المهام المتعلقة بفهم ما هو موجود في نص (على سبيل المثال تصنيف النص بأكمله، أو الكلمات الفردية). ## P -### خط الأنابيب +### خط الأنابيب (pipeline) خط أنابيب في 🤗 المحولات هو تجريد يشير إلى سلسلة من الخطوات التي يتم تنفيذها بترتيب محدد لمعالجة البيانات وتحويلها وإرجاع تنبؤ من نموذج. قد تكون بعض المراحل الموجودة في خط الأنابيب هي معالجة البيانات واستخراج الميزات والتوحيد. From 8401e71f637e267fe2a7e9ca84fa41120e7fa92f Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Thu, 29 Aug 2024 20:55:36 +0300 Subject: [PATCH 04/13] Update glossary.md --- docs/source/ar/glossary.md | 96 ++++++++++++++++++-------------------- 1 file changed, 45 insertions(+), 51 deletions(-) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index d30818cc9518..2bcbe5d6b7ef 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -159,9 +159,9 @@ ## I -### ترميم الصور )image patch) +### رقعة الصور (image patch) -تقسم نماذج المحول القائم على الرؤية الصورة إلى رقع أصغر يتم تضمينها خطيًا، ثم يتم تمريرها كتسلسل إلى النموذج. يمكنك العثور على `patch_size` - أو الدقة - للنموذج في تكوينه. +"رقعة الصورة" في نماذج المحولات البصرية، تُقسم الصورة إلى أجزاء أصغر تسمى "رقعات". يتم تمثيل كل رقعة بشكل رقمي (تحويلها إلى مجموعة من الأرقام) ثم تُعالج كسلسلة من البيانات. يمكنك العثور على حجم الرُقعة patch_size - أو دقتها - في إعدادات النموذج. ### الاستدلال (Inference) @@ -169,8 +169,7 @@ ### معرفات الإدخال (input IDs) -معرفات الإدخال هي غالبًا المعلمات المطلوبة الوحيدة التي يجب تمريرها إلى النموذج كإدخال. إنها مؤشرات الرموز المميزة، -تمثيلات رقمية للرموز التي تبني التسلسلات التي سيتم استخدامها كإدخال بواسطة النموذج. +معرفات الإدخال هي غالبًا المعلمات المطلوبة الوحيدة التي يجب تمريرها إلى النموذج كإدخال. هذه المعرفات عبارة عن أرقام تمثل كل كلمة أو رمز في الجملة التي نريد أن يفهمها النموذج. بمعنى آخر، هي طريقة لترجمة الكلمات إلى أرقام يتم استخدامها كإدخال بواسطة النموذج. @@ -190,10 +189,7 @@ >>> tokenized_sequence = tokenizer.tokenize(sequence) ``` -الرموز المميزة هي إما كلمات أو كلمات فرعية. هنا على سبيل المثال، لم يكن "VRAM" في قاموس النموذج، لذلك تم تقسيمه -في "V"، "RA" و "M". للإشارة إلى أن هذه الرموز المميزة ليست كلمات منفصلة ولكنها أجزاء من نفس الكلمة، يتم إضافة بادئة مزدوجة الهاش -يتم إضافة "RA" و "M": - +االرموز إما كلمات أو أجزاء كلمات. هنا على سبيل المثال، لم تكن كلمة "VRAM" موجودة في مفردات النموذج، لذلك تم تقسيمها إلى "V" و "RA" و "M". للإشارة إلى أن هذه الرموز ليست كلمات منفصلة ولكنها أجزاء من نفس الكلمة، تمت إضافة بادئة مزدوجة (#) إلى "RA" و "M": ```python >>> print(tokenized_sequence) ['A', 'Titan', 'R', '##T', '##X', 'has', '24', '##GB', 'of', 'V', '##RA', '##M'] @@ -203,14 +199,13 @@ ['A'، 'Titan'، 'R'، '##T'، '##X'، 'has'، '24'، '##GB'، 'of'، 'V'، '##RA'، '##M'] ``` -يمكن بعد ذلك تحويل هذه الرموز المميزة إلى معرفات يمكن للنموذج فهمها. يمكن القيام بذلك عن طريق إرسال الجملة مباشرة إلى المحلل اللغوي، والذي يستفيد من تنفيذ Rust لـ [🤗 Tokenizers](https://github.com/huggingface/tokenizers) لأداء الذروة. +يمكن بعد ذلك تحويل هذه الرموز إلى مُعرفات يفهمها النموذج. يمكن القيام بذلك عن طريق تغذية الجملة مباشرةً إلى مُجزّئ الرموز، والذي يستفيد من تنفيذ 🤗 Tokenizers بلغة Rust للحصول على أعلى أداء. ```python >>> inputs = tokenizer(sequence) ``` -يعيد المحلل اللغوي قاموسًا بجميع الحجج اللازمة لعمل نموذجه المقابل بشكل صحيح. -توجد مؤشرات الرموز المميزة تحت مفتاح `input_ids`: +يقوم المحلل اللغوي بإرجاع قاموس يحتوي على جميع المعلومات التي يحتاجها النموذج للعمل بشكل صحيح. وتوجد مؤشرات الرموز المميزة تحت مفتاح `input_ids`: ```python >>> encoded_sequence = inputs["input_ids"] @@ -238,23 +233,22 @@ ## L -### التسميات (labels) - -التسميات هي حجة اختيارية يمكن تمريرها حتى يتمكن النموذج من حساب الخسارة بنفسه. هذه التسميات -يجب أن يكون التوقع المتوقع للنموذج: سيستخدم الخسارة القياسية لحساب الخسارة بين تنبؤاته والقيمة المتوقعة (التسمية). - -تختلف هذه التسميات وفقًا لرأس النموذج، على سبيل المثال: +### االملصقات (Labels) -- بالنسبة لنماذج تصنيف التسلسل، ([`BertForSequenceClassification`])، يتوقع -لم يتم ترجمة النص البرمجي والروابط التشعبية وفقًا لطلبك: - ---- +هي معامل اختياري يمكن إدخاله في النموذج لحساب الخسارة بنفسه. +نماذج تصنيف التسلسل: ([BertForSequenceClassification]) يتوقع النموذج مصفوفة ذات بعد (batch_size) حيث تتوافق كل قيمة من المجموعة مع الملصق المتوقع للتسلسل بأكمله. +نماذج تصنيف الرمز: ([BertForTokenClassification]) يتوقع النموذج مصفوفة ذات بعد (batch_size, seq_length) حيث تتوافق كل قيمة مع الملصق المتوقع لكل رمز فردي. +نماذج النمذجة اللغوية المقنعة:([BertForMaskedLM]) يتوقع النموذج مصفوفة ذات بعد (batch_size, seq_length) حيث تتوافق كل قيمة مع الملصق المتوقع لكل رمز فردي: تكون الملصقات هي معرف رمز الكلمة المقنعة، والقيم الأخرى يتم تجاهلها (عادةً -100). +مهام التسلسل إلى التسلسل: ([BartForConditionalGeneration], [MBartForConditionalGeneration]) يتوقع النموذج مصفوفة ذات بعد (batch_size, tgt_seq_length) حيث تتوافق كل قيمة مع التسلسل الهدف المرتبط بكل تسلسل مدخل. أثناء التدريب، سيقوم كل من BART و T5 بإنشاء decoder_input_ids و decoder attention masks داخليًا. عادةً لا يلزم توفيرها. هذا لا ينطبق على النماذج التي تستخدم إطار العمل Encoder-Decoder. +نماذج تصنيف الصور: ([ViTForImageClassification]) يتوقع النموذج مصفوفة ذات بعد (batch_size) حيث تتوافق كل قيمة من المجموعة مع الملصق المتوقع لكل صورة فردية. +نماذج التقسيم الدلالي: ([SegformerForSemanticSegmentation]) يتوقع النموذج مصفوفة ذات بعد (batch_size, height, width) حيث تتوافق كل قيمة من المجموعة مع الملصق المتوقع لكل بكسل فردي. +نماذج اكتشاف الأجسام: ([DetrForObjectDetection]) يتوقع النموذج قائمة من القواميس تحتوي على مفتاح class_labels و boxes حيث تتوافق كل قيمة من المجموعة مع الملصق المتوقع وعدد المربعات المحيطة بكل صورة فردية. +نماذج التعرف التلقائي على الكلام: ([Wav2Vec2ForCTC]) يتوقع النموذج مصفوفة ذات بعد (batch_size, target_length) حيث تتوافق كل قيمة مع الملصق المتوقع لكل رمز فردي. قد تختلف تسميات كل نموذج، لذا تأكد دائمًا من مراجعة وثائق كل نموذج للحصول على معلومات حول التسميات الخاصة به. - -لا تقبل النماذج الأساسية ([`BertModel`]) التسميات، لأنها نماذج المحول الأساسية، والتي تقوم ببساطة بإخراج الميزات. +لا تقبل النماذج الأساسية ([`BertModel`]) الملصقات ، لأنها نماذج المحول الأساسية، والتي تقوم ببساطة بإخراج الميزات. ### نماذج اللغة الكبيرة large language models (LLM) @@ -264,11 +258,11 @@ ### نمذجة اللغة المقنعة masked language modeling (MLM) -مهمة تدريب مسبق يرى فيها النموذج إصدارًا مشوهًا من النصوص، ويتم ذلك عادةً عن طريق قناع بعض الرموز بشكل عشوائي، ويجب عليه التنبؤ بالنص الأصلي. +مهمة تدريب مسبق حيث يرى النموذج نسخة تالفة من النصوص، وعادة ما يتم ذلك عن طريق حجب بعض الرموز بشكل عشوائي، ويتعين على النموذج التنبؤ بالنص الأصلي. ### متعدد الوسائط (multimodal) -مهمة تجمع بين النصوص مع نوع آخر من الإدخالات (على سبيل المثال، الصور). +مهمة تجمع بين النصوص مع نوع آخر من المدخلات (على سبيل المثال، الصور). ## N @@ -288,11 +282,11 @@ ### خط الأنابيب (pipeline) -خط أنابيب في 🤗 المحولات هو تجريد يشير إلى سلسلة من الخطوات التي يتم تنفيذها بترتيب محدد لمعالجة البيانات وتحويلها وإرجاع تنبؤ من نموذج. قد تكون بعض المراحل الموجودة في خط الأنابيب هي معالجة البيانات واستخراج الميزات والتوحيد. +في مكتبة Transformers، يُشير مصطلح "خط الأنابيب" إلى سلسلة من الخطوات التي يتم تنفيذها بترتيب محدد لمعالجة البيانات وتحويلها وإرجاع تنبؤ من نموذج. بعض المراحل الشائعة في خط الأنابيب قد تشمل معالجة البيانات الأولية، واستخراج الميزات، والتوحيد. للحصول على مزيد من التفاصيل، راجع [خطوط الأنابيب للاستدلال](https://huggingface.co/docs/transformers/pipeline_tutorial). -### PipelineParallel (PP) +### التوازي على مستوى خط الأنابيب (PipelineParallel) تقنية توازي يتم فيها تقسيم النموذج رأسياً (على مستوى الطبقة) عبر وحدات معالجة الرسومات (GPU) متعددة، بحيث توجد طبقة واحدة أو عدة طبقات من النموذج على وحدة معالجة الرسومات (GPU) واحدة فقط. تقوم كل وحدة معالجة رسومات (GPU) بمعالجة مراحل مختلفة من خط الأنابيب بالتوازي والعمل على جزء صغير من الدفعة. تعرف على المزيد حول كيفية عمل PipelineParallel [هنا](perf_train_gpu_many#from-naive-model-parallelism-to-pipeline-parallelism). @@ -300,13 +294,13 @@ مصفوفة من التمثيلات الرقمية لصورة يتم تمريرها إلى نموذج. تأخذ قيم البكسل شكل [`batch_size`، `num_channels`، `height`، `width`]، ويتم إنشاؤها من معالج الصور. -### تجميع +### التجميع (Pooling) -عملية تقلل مصفوفة إلى مصفوفة أصغر، إما عن طريق أخذ الحد الأقصى أو المتوسط للأبعاد المجمعة. طبقات التجميع شائعة بين الطبقات التلافيفية لتصغير تمثيل الميزة. +هي عملية تقوم بتقليص مصفوفة إلى مصفوفة أصغر، إما عن طريق أخذ القيمة القصوى أو المتوسط الحسابي للأبعاد التي يتم تجميعها. توجد طبقات التجميع بشكل شائع بين الطبقات التلافيفية convolutional layers لتقليل حجم تمثيل الميزات. -### معرفات الموضع +### معرفات الموضع (position IDs) -على عكس شبكات RNN التي تحتوي على موضع كل رمز مضمن فيها، لا تدرك المحولات موضع كل رمز. لذلك، تستخدم معرفات الموضع (`position_ids`) من قبل النموذج لتحديد موضع كل رمز في قائمة الرموز. +على عكس الشبكات العصبية المتكررة (RNNs) التي تتضمن موضع كل رمز (token) ضمن بنيتها، لا تدرك المحولات موضع كل رمز. لذلك، تستخدم معرفات الموضع (`position_ids`) من قبل النموذج لتحديد موضع كل رمز في قائمة الرموز. إنها معلمة اختيارية. إذا لم يتم تمرير أي `position_ids` إلى النموذج، يتم إنشاء المعرفات تلقائيًا كترميزات موضعية مطلقة. @@ -318,7 +312,7 @@ ### النموذج المسبق التدريب -نموذج تم تدريبه مسبقًا على بعض البيانات (على سبيل المثال، كل Wikipedia). تنطوي طرق التدريب المسبق على هدف ذاتي الإشراف، والذي يمكن أن يكون قراءة النص ومحاولة التنبؤ بالكلمة التالية (راجع [نمذجة اللغة السببية](#causal-language-modeling)) أو قناع بعض الكلمات ومحاولة التنبؤ بها (راجع [نمذجة اللغة المقنعة](#masked-language- عرض MLM)). +نموذج تم تدريبه مسبقًا على بعض البيانات (على سبيل المثال، كل Wikipedia). تنطوي طرق التدريب المسبق على هدف ذاتي الإشراف، والذي يمكن أن يكون قراءة النص ومحاولة التنبؤ بالكلمة التالية ( راجع (causal-language-modeling#)[نمذجة اللغة السببية] ) أو قناع بعض الكلمات ومحاولة التنبؤ بها ( راجع (masked-language#)[نمذجة اللغة المقنعة]- عرض MLM). لدى نماذج الكلام والرؤية أهدافها التدريبية المسبقة الخاصة. على سبيل المثال، Wav2Vec2 هو نموذج كلام تم تدريبه مسبقًا على مهمة تباينية تتطلب من النموذج تحديد تمثيل الكلام "الحقيقي" من مجموعة من تمثيلات الكلام "الخاطئة". من ناحية أخرى، BEiT هو نموذج رؤية تم تدريبه مسبقًا على مهمة نمذجة صورة مقنعة تقوم بقناع بعض رقع الصورة وتتطلب من النموذج التنبؤ بالرقع المقنعة (مشابهة لهدف نمذجة اللغة المقيدة). @@ -326,11 +320,11 @@ ### شبكة عصبية متكررة (RNN) -نوع من النماذج التي تستخدم حلقة عبر طبقة لمعالجة النصوص. +هي نوع من النماذج التي تستخدم حلقة متكررة فوق طبقة معينة لمعالجة النصوص. -### تعلم التمثيل +### التعلم التمثيلي (representation learning) -مجال فرعي للتعلم الآلي يركز على تعلم التمثيلات ذات معنى للبيانات الخام. بعض أمثلة تقنيات تعلم التمثيل تشمل تضمين الكلمات، والتشفير التلقائي، والشبكات التنافسية التوليدية (GANs). +هو فرع من فروع تعلم الآلة يركز على تعلم تمثيلات ذات معنى للبيانات الخام. بعض الأمثلة على تقنيات التعلم التمثيلي تشمل تضمين الكلمات، والمشفرات ذاتية، وشبكات التنافس التوليدية(GANs). ## S @@ -338,37 +332,37 @@ قياس، بالهرتز، لعدد العينات (إشارة الصوت) المأخوذة في الثانية. ينتج معدل العينات عن تمييز إشارة مستمرة مثل الكلام. -### الاهتمام الذاتي +### الانتباه الذاتي (Self-Attention) -يكتشف كل عنصر من عناصر الإدخال العناصر الأخرى لإدخالها التي يجب الانتباه إليها. +هو آلية تتيح لكل عنصر في المدخل أن يحدد أي العناصر الأخرى في نفس المدخل يجب أن ينتبه إليها. -### التعلم الذاتي الخاضع للإشراف +### التعلم الذاتي الخاضع للإشراف (supervised learning) فئة من تقنيات التعلم الآلي التي يقوم فيها النموذج بإنشاء هدفه التعليمي الخاص من البيانات غير الموسومة. يختلف عن [التعلم غير الخاضع للإشراف](#unsupervised-learning) و [التعلم الخاضع للإشراف](#supervised-learning) في أن عملية التعلم خاضعة للإشراف، ولكن ليس صراحة من المستخدم. مثال واحد على التعلم الذاتي الخاضع للإشراف هو [نمذجة اللغة المقيدة](#masked-language- عرض MLM)، حيث يتم تمرير جمل للنموذج مع إزالة نسبة من رموزه ويتعلم التنبؤ بالرموز المفقودة. -### التعلم شبه الخاضع للإشراف +### التعلم شبه الخاضع للإشراف (unsupervised learning) -فئة واسعة من تقنيات تدريب التعلم الآلي التي تستفيد من كمية صغيرة من البيانات الموسومة مع كمية أكبر من البيانات غير الموسومة لتحسين دقة النموذج، على عكس [التعلم الخاضع للإشراف](#supervised-learning) و [التعلم غير الخاضع للإشراف](#unsupervised- -التعلم). +فئة واسعة من تقنيات تدريب التعلم الآلي التي تستفيد من كمية صغيرة من البيانات الموسومة مع كمية أكبر من البيانات غير الموسومة لتحسين دقة النموذج، على عكس [التعلم الخاضع للإشراف](#supervised-learning) و [التعلم غير الخاضع للإشراف](#unsupervised-learning). مثال على نهج التعلم شبه الخاضع للإشراف هو "التدريب الذاتي"، حيث يتم تدريب نموذج على بيانات موسومة، ثم يستخدم لتقديم تنبؤات حول البيانات غير الموسومة. يتم إضافة الجزء من البيانات غير الموسومة التي يتنبأ بها النموذج بأكبر قدر من الثقة إلى مجموعة البيانات الموسومة ويتم استخدامها لإعادة تدريب النموذج. ### تسلسل إلى تسلسل (seq2seq) -نماذج تولد تسلسلًا جديدًا من إدخال، مثل نماذج الترجمة، أو نماذج الملخص (مثل [Bart](model_doc/bart) أو [T5](model_doc/t5)). +نماذج تولد تسلسلًا جديدًا من إدخال، مثل نماذج الترجمة، أو نماذج التلخيص (مثل [Bart](model_doc/bart) أو [T5](model_doc/t5)). ### Sharded DDP اسم آخر لمفهوم [Zero Redundancy Optimizer](#zero-redundancy-optimizer-zero) الأساسي كما هو مستخدم من قبل العديد من التطبيقات الأخرى لـ Zero. -### خطوة +### الخطوة (Stride) -في [التلف](#convolution) أو [التجميع](#pooling)، تشير الخطوة إلى المسافة التي يتم بها تحريك النواة عبر مصفوفة. تعني الخطوة 1 أن النواة تتحرك بكسل واحد في كل مرة، وتعني الخطوة 2 أن النواة تتحرك بمقدار بكسلين في كل مرة. +في العمليات التلافيفية أو التجميعية، تشير الخطوة إلى المسافة التي يتحرك بها النواة (kernel) فوق المصفوفة. خطوة تساوي 1 تعني أن النواة تتحرك بكسل واحد في كل مرة. ### التعلم الخاضع للإشراف -شكل من أشكال تدريب النماذج التي تستخدم البيانات الموسومة مباشرة لتصحيح أداء النموذج وتوجيهه. يتم تغذية البيانات في النموذج الذي يتم تدريبه، ويتم مقارنة تنبؤاته بالتسميات المعروفة. يقوم النموذج بتحديث أوزانه بناءً على مدى عدم صحة تنبؤاته، وتتكرر العملية لتحسين أداء النموذج. +هو نوع من تدريب النماذج التي تستخدم بيانات مُعلَّمة بشكل مباشر لتصحيح أداء النموذج وتوجيهه. يتم تغذية البيانات إلى النموذج قيد التدريب، ويتم مقارنة تنبؤاته بالنتائج الصحيحة المعروفة. يقوم النموذج بتعديل أوزانه بناءً على مدى خطأ تنبؤاته، وتتكرر هذه العملية لتحسين أداء النموذج. ## T @@ -378,9 +372,9 @@ تعرف على المزيد حول توازي Tensor [هنا](perf_train_gpu_many#tensor-parallelism). -### رمز +### الرمز اللغوي (Token) -جزء من جملة، عادة ما يكون كلمة، ولكن يمكن أن يكون أيضًا كلمة فرعية (غالبًا ما يتم تقسيم الكلمات غير الشائعة إلى كلمات فرعية) أو رمز ترقيم. +جزء من جملة، عادة ما يكون كلمة، ولكن يمكن أن يكون أيضًا كلمة فرعية (غالبًا ما يتم تقسيم الكلمات غير الشائعة إلى كلمات فرعية) أو علامة ترقيم. ### معرفات نوع الرمز @@ -394,7 +388,7 @@ >>> # [CLS] SEQUENCE_A [SEP] SEQUENCE_B [SEP] ``` -يمكننا استخدام برنامجنا للتمييز لإنشاء مثل هذه الجملة تلقائيًا عن طريق تمرير التسلسلين إلى `tokenizer` كحجتين (وليس قائمة، كما كان من قبل) مثل هذا: +يمكننا استخدام برنامجنا للتمييز لإنشاء مثل هذه الجملة تلقائيًا عن طريق تمرير التسلسلين إلى `tokenizer` كمعامليين (وليس قائمة، كما كان من قبل) مثل هذا: ```python >>> from transformers import BertTokenizer @@ -427,13 +421,13 @@ تستخدم بعض النماذج، مثل [`XLNetModel`] رمزًا إضافيًا يمثله `2`. -### التعلم بالنقل +### التعلم الانتقالي (Transfer Learning) تقنية تنطوي على أخذ نموذج تم تدريبه مسبقًا وتكييفه مع مجموعة بيانات خاصة بمهمتك. بدلاً من تدريب نموذج من الصفر، يمكنك الاستفادة من المعرفة المكتسبة من نموذج موجود كنقطة بداية. يسرع هذا عملية التعلم ويقلل من كمية بيانات التدريب المطلوبة. -### المحول +### المحول (Transformer) -هندسة نموذج التعلم العميق القائمة على الاهتمام الذاتي. +هو بنية لنموذج تعلم عميق يعتمد على الانتباه الذاتي. ## U @@ -443,7 +437,7 @@ ## Z -### محسن Zero Redundancy (ZeRO) +### محسن التكرار الصفري (ZeRO) تقنية توازي تقوم بتشظية المصفوفات بطريقة مشابهة لـ [TensorParallel](#tensor-parallelism-tp)، باستثناء إعادة بناء المصفوفة بالكامل في الوقت المناسب لحساب التقدير أو الحساب الخلفي، وبالتالي لا يلزم تعديل النموذج. تدعم هذه الطريقة أيضًا تقنيات الإخلاء المختلفة للتعويض عن ذاكرة GPU المحدودة. From 942431629b916d6d880a659b4e4ebc701324c985 Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Fri, 30 Aug 2024 20:02:42 +0300 Subject: [PATCH 05/13] Update docs/source/ar/glossary.md Co-authored-by: Steven Liu <59462357+stevhliu@users.noreply.github.com> --- docs/source/ar/glossary.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index 2bcbe5d6b7ef..fae84db2e9a6 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -290,7 +290,7 @@ تقنية توازي يتم فيها تقسيم النموذج رأسياً (على مستوى الطبقة) عبر وحدات معالجة الرسومات (GPU) متعددة، بحيث توجد طبقة واحدة أو عدة طبقات من النموذج على وحدة معالجة الرسومات (GPU) واحدة فقط. تقوم كل وحدة معالجة رسومات (GPU) بمعالجة مراحل مختلفة من خط الأنابيب بالتوازي والعمل على جزء صغير من الدفعة. تعرف على المزيد حول كيفية عمل PipelineParallel [هنا](perf_train_gpu_many#from-naive-model-parallelism-to-pipeline-parallelism). -### قيم البكسل +### قيم البكسل (pixel values) مصفوفة من التمثيلات الرقمية لصورة يتم تمريرها إلى نموذج. تأخذ قيم البكسل شكل [`batch_size`، `num_channels`، `height`، `width`]، ويتم إنشاؤها من معالج الصور. From 1ff5a42f895a97c839fec4e6c3d606fb1b8b1a8b Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Fri, 30 Aug 2024 20:02:59 +0300 Subject: [PATCH 06/13] Update docs/source/ar/glossary.md Co-authored-by: Steven Liu <59462357+stevhliu@users.noreply.github.com> --- docs/source/ar/glossary.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index fae84db2e9a6..6b5e377b581e 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -310,7 +310,7 @@ مهمة إعداد البيانات الخام بتنسيق يمكن أن تستهلكه نماذج التعلم الآلي بسهولة. على سبيل المثال، عادةً ما تتم معالجة النص مسبقًا عن طريق التمييز. للحصول على فكرة أفضل عن كيفية ظهور المعالجة المسبقة لأنواع الإدخال الأخرى، راجع البرنامج التعليمي [Preprocess](https://huggingface.co/docs/transformers/preprocessing). -### النموذج المسبق التدريب +### النموذج المسبق التدريب (pretrained model) نموذج تم تدريبه مسبقًا على بعض البيانات (على سبيل المثال، كل Wikipedia). تنطوي طرق التدريب المسبق على هدف ذاتي الإشراف، والذي يمكن أن يكون قراءة النص ومحاولة التنبؤ بالكلمة التالية ( راجع (causal-language-modeling#)[نمذجة اللغة السببية] ) أو قناع بعض الكلمات ومحاولة التنبؤ بها ( راجع (masked-language#)[نمذجة اللغة المقنعة]- عرض MLM). From 27a8b7585c3709a309106dd25a1d268dd4aa8fcf Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Fri, 30 Aug 2024 20:03:08 +0300 Subject: [PATCH 07/13] Update docs/source/ar/glossary.md Co-authored-by: Steven Liu <59462357+stevhliu@users.noreply.github.com> --- docs/source/ar/glossary.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index 6b5e377b581e..cb6fb251d007 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -328,7 +328,7 @@ ## S -### معدل العينات +### معدل العينات (sampling rate) قياس، بالهرتز، لعدد العينات (إشارة الصوت) المأخوذة في الثانية. ينتج معدل العينات عن تمييز إشارة مستمرة مثل الكلام. From 03f9871fc3cedb0d07bab6bcff8897d676c76a39 Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Fri, 30 Aug 2024 20:03:16 +0300 Subject: [PATCH 08/13] Update docs/source/ar/glossary.md Co-authored-by: Steven Liu <59462357+stevhliu@users.noreply.github.com> --- docs/source/ar/glossary.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index cb6fb251d007..2862e7ffd297 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -342,7 +342,7 @@ مثال واحد على التعلم الذاتي الخاضع للإشراف هو [نمذجة اللغة المقيدة](#masked-language- عرض MLM)، حيث يتم تمرير جمل للنموذج مع إزالة نسبة من رموزه ويتعلم التنبؤ بالرموز المفقودة. -### التعلم شبه الخاضع للإشراف (unsupervised learning) +### التعلم شبه الخاضع للإشراف (semi-supervised learning) فئة واسعة من تقنيات تدريب التعلم الآلي التي تستفيد من كمية صغيرة من البيانات الموسومة مع كمية أكبر من البيانات غير الموسومة لتحسين دقة النموذج، على عكس [التعلم الخاضع للإشراف](#supervised-learning) و [التعلم غير الخاضع للإشراف](#unsupervised-learning). From 3c25cf0c5d6d7743cb88715a6bee6fcbf4f473ad Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Fri, 30 Aug 2024 20:03:24 +0300 Subject: [PATCH 09/13] Update docs/source/ar/glossary.md Co-authored-by: Steven Liu <59462357+stevhliu@users.noreply.github.com> --- docs/source/ar/glossary.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index 2862e7ffd297..54fa205d609f 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -360,7 +360,7 @@ في العمليات التلافيفية أو التجميعية، تشير الخطوة إلى المسافة التي يتحرك بها النواة (kernel) فوق المصفوفة. خطوة تساوي 1 تعني أن النواة تتحرك بكسل واحد في كل مرة. -### التعلم الخاضع للإشراف +### التعلم الخاضع للإشراف (supervised learning) هو نوع من تدريب النماذج التي تستخدم بيانات مُعلَّمة بشكل مباشر لتصحيح أداء النموذج وتوجيهه. يتم تغذية البيانات إلى النموذج قيد التدريب، ويتم مقارنة تنبؤاته بالنتائج الصحيحة المعروفة. يقوم النموذج بتعديل أوزانه بناءً على مدى خطأ تنبؤاته، وتتكرر هذه العملية لتحسين أداء النموذج. From b212ecc3311200c8a497237363a18ccd0ee30cd8 Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Fri, 30 Aug 2024 20:03:34 +0300 Subject: [PATCH 10/13] Update docs/source/ar/glossary.md Co-authored-by: Steven Liu <59462357+stevhliu@users.noreply.github.com> --- docs/source/ar/glossary.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index 54fa205d609f..30f573d709fa 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -376,7 +376,7 @@ جزء من جملة، عادة ما يكون كلمة، ولكن يمكن أن يكون أيضًا كلمة فرعية (غالبًا ما يتم تقسيم الكلمات غير الشائعة إلى كلمات فرعية) أو علامة ترقيم. -### معرفات نوع الرمز +### معرفات نوع الرمز (token type ids) الغرض من بعض النماذج هو إجراء التصنيف على أزواج من الجمل أو الإجابة على الأسئلة. From da2221a54ea3e4188cd8b60163d9876376600b42 Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Fri, 30 Aug 2024 20:03:43 +0300 Subject: [PATCH 11/13] Update docs/source/ar/glossary.md Co-authored-by: Steven Liu <59462357+stevhliu@users.noreply.github.com> --- docs/source/ar/glossary.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index 30f573d709fa..5191faab9ff7 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -431,7 +431,7 @@ ## U -### التعلم غير الخاضع للإشراف +### التعلم غير الخاضع للإشراف (unsupervised learning) شكل من أشكال تدريب النماذج حيث لا يتم وضع علامات على البيانات المقدمة إلى النموذج. تستفيد تقنيات التعلم غير الخاضعة للإشراف من المعلومات الإحصائية لتوزيع البيانات للعثور على الأنماط المفيدة للمهمة المعنية. From 045d05213865cb47642121ac3d0de357cfd9677c Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Fri, 30 Aug 2024 20:03:54 +0300 Subject: [PATCH 12/13] Update docs/source/ar/glossary.md Co-authored-by: Steven Liu <59462357+stevhliu@users.noreply.github.com> --- docs/source/ar/glossary.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index 5191faab9ff7..f6b3819f1646 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -306,7 +306,7 @@ يتم اختيار الترميزات الموضعية المطلقة في النطاق `[0، config.max_position_embeddings - 1]`. تستخدم بعض النماذج أنواعًا أخرى من الترميزات الموضعية، مثل الترميزات الموضعية الجيبية أو الترميزات الموضعية النسبية. -### ما قبل المعالجة +### ما قبل المعالجة (preprocessing) مهمة إعداد البيانات الخام بتنسيق يمكن أن تستهلكه نماذج التعلم الآلي بسهولة. على سبيل المثال، عادةً ما تتم معالجة النص مسبقًا عن طريق التمييز. للحصول على فكرة أفضل عن كيفية ظهور المعالجة المسبقة لأنواع الإدخال الأخرى، راجع البرنامج التعليمي [Preprocess](https://huggingface.co/docs/transformers/preprocessing). From 7ec2bd2262b0a4808904a62e5e0dfcc11e1be149 Mon Sep 17 00:00:00 2001 From: Ahmed Almaghz <53489256+AhmedAlmaghz@users.noreply.github.com> Date: Mon, 9 Sep 2024 20:43:32 +0300 Subject: [PATCH 13/13] Update glossary.md --- docs/source/ar/glossary.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/source/ar/glossary.md b/docs/source/ar/glossary.md index f6b3819f1646..81753bad281b 100644 --- a/docs/source/ar/glossary.md +++ b/docs/source/ar/glossary.md @@ -245,6 +245,8 @@ نماذج اكتشاف الأجسام: ([DetrForObjectDetection]) يتوقع النموذج قائمة من القواميس تحتوي على مفتاح class_labels و boxes حيث تتوافق كل قيمة من المجموعة مع الملصق المتوقع وعدد المربعات المحيطة بكل صورة فردية. نماذج التعرف التلقائي على الكلام: ([Wav2Vec2ForCTC]) يتوقع النموذج مصفوفة ذات بعد (batch_size, target_length) حيث تتوافق كل قيمة مع الملصق المتوقع لكل رمز فردي. + + قد تختلف تسميات كل نموذج، لذا تأكد دائمًا من مراجعة وثائق كل نموذج للحصول على معلومات حول التسميات الخاصة به.