بقلم د. محمد عبد المجيد
ترجمة أ. إبراهيم السيد العيسوي
راجع الترجمة فنياً د. محمد عبد المجيد
[تنشر المقالة هنا بإذن الدكتور محمد عبد المجيد، المقالة الأصلية على هذا الرابط]
[الصور المرافقة للمقال من Midjourney تم توليدها خصيصاً للمقال.]
شهدت السنوات القليلة المنصرمة تطورا سريعا جدا في علم الذكاء الاصطناعي [Artificial intelligence]. وقد تحقق هذا التقدم، في المقام الأول، نتيجة للتطورات الضخمة التي حدثت في علم تعلم الآلة [Machine Learning] وهو فرع من فروع علم الذكاء الاصطناعي، ويوجه أخص علم التعلم العميق [Deep learning]. والتعلم العميق هو طريقة من طرق تعلم الآلة، يعالج المعلومات والبيانات بطريقة أشبه ما تكون بالطريقة التي يعالج بها المخ البشري المعلومات والبيانات التي تمر به.
ومخ الإنسان به شبكات عصبية [neural networks] يرتبط بعضها ببعض، وعلى غرار هذه الخلايا العصبية، استطاع العلماء أن يصمموا الشبكات العصبية الاصطناعية [artificial neural networks] يرتبط بعضها ببعض كذلك. وكل خلية عصبية في هذه الشبكة الاصطناعية تستطيع أن تستقبل المعلومات والبيانات، وتعالجها، ثم تنقلها إلى خلايا عصبية أخرى، بالطريقة نفسها، التي يعمل بها مخ الإنسان.
تستطيع هذه الشبكة أن تتعلم من البيانات [data]. وهذه البيانات قد تكون صورا، أو فيديوهات، أو نصوصا، أو أي صيغة أخرى، أو أي نوع آخر من أنواع الإشارات؛ [وما أكثرها!] ثم إن شبكة الخلايا العصبية الاصطناعية هذه تصطف فيها خلاياها العصبية، متراكبة في طبقات [layers]، بعضها فوق بعض، ولهذا يصف العلماء هذه الشبكة بأنها شبكة “عميقة” [deep]: وذلك لوجود عدد كبير جدا من الطبقات المتراكبة، طبقة فوق طبقة، فوق طبقة، (وقد يزيد عددها في بعض الأحيان عن 100 طبقة في الشبكة الواحدة).
هذه الشبكات العصبية العميقة، نستطيع أن نستفيد بها في عدد كبير جدا من التطبيقات التي يتزايد استعمالها بسرعة كبيرة، بدءا من تشخيص الأمراض، والكشف عن تعاطي المخدرات، إلى السيارات الذاتية القيادة، والزراعة الذكية. وفي فترة جائحة كورونا، ازداد اعتمادنا على تطبيقات الذكاء الاصطناعي والتعلم العميق، وصرنا نستعملهما أكثر من أي وقت مضى. وسبب ذلك هو أن الجائحة حين ضربت العالم كله، ازداد اعتمادنا على التكنولوجيا ازديادا كبيرا. وخذ متعلمي اللغات مثلا واضحاً، وانظر كيف بدأوا يستعملون تطبيقات تعلم اللغة، بدلا من ذهابهم لتعلم اللغة في داخل الصفوف الدراسية في المدارس والجامعات. أو انظر مثلا كيف بدأ طلبة الجامعات يعتمدون على خدمات مثل خدمات الكتابة التلقائية للكلام المنطوق [auto captioning]، وهم يشاهدون الفيديوهات التي سجلها لهم أساتذتهم ومدرسوهم، تسهيلا لتدوين الملاحظات من المحاضرات. أو خذ مثلا [ثالثاً]: استعمال الترجمة الآلية [machine translation] في التعلم عبر الإنترنت، وهي وسيلة يستعملها الملايين من الدراسين الذين يعلمون أنفسهم بأنفسهم، على موقع واحد مثل موقع يوتيوب.
هذا كله صار ممكنا ومتاحا بسبب توافر تطبيقات التعلم العميق، وتطبيقات معالجة اللغات الطبيعية. ومعالجة اللغات الطبيعية هو علم يعنى بتعليم الآلة كيف تفهم لغات البشر، وكيف تولدها وتحاكيها، وهذا أمر كان دخول التعلم العميق فيه ثورة تكنولوجية ومعرفية هائلة. فبرامج المحادثات التي تتحدث الآلة فيها مع الناس، مثل برنامج (سيري – Siri) الذي تنتجه شركة أبل، وبرنامج (إكو – Echo) الذي تنتجه شركة أمازون، وهي برامج تتلقى سؤالا، فتعطي له جوابا، هي كلها أمثلة على تطبيقات معالجة اللغات الطبيعية. وجميع التطبيقات التجارية التي تستعمل معالجة اللغات الطبيعية تعتمد الآن كلها على التعلم العميق. ولكن [لنا أن نسأل:] كيف تتعلم الحواسب اللغات الطبيعية؟
الحواسب وكيف تتعلم اللغات التي يتحدثها الناس
لكي نجيب على هذا السؤال، نضرب مثالا بترجمة الآلة. فقد جرت العادة على أن يعتمد العلماء والمترجمون على قوائم المفردات، وعلى المعجمات والقواميس التي جمع البشر مفرداتها ونسقوا مداخلها، ليتسنى لهم الترجمة من لغة إلى لغة أخرى.
نحن هنا نتحدث عن اللغة المترجم منها (ولتكن الإنجليزية مثل)، واللغة المترجم إليها، (ولتكن العربية مثلا). ثم ننظر إلى النص الذي نترجمه من لغة إلى لغة أخرى، نجد هذا ال ينقسم إلى جمل مفردة كل جملة فيه قائمة بنفسها.
وهنا نستعمل معجمات اللغة وقواميسها كي نترجم كل كلمة من اللغة المترجم منها إلى كلمة تساويها في اللغة المترجم إليها. غير أن معاجمنا وقواميسنا قد يشوبها تقص، وقد لا نجد فيما بين أيدينا من معجمات وقواميس، بعض المفردات التي تصادفنا في جملة من تلك الجمل، التي نشتغل بترجمتها.
فحينئذ قد نلجأ في حل تلك المشكلة العارضة إلى أن نضيف إلى المعجمات تلك المفردات الجديدة الطارئة، ونضيف معها ترجماتها، على الدوام. غير أن هذه الطريقة سرعان ما تنجم عنها مشكلة، بل مشكلات أخرى، فقد نجد مفردة واحدة، في اللغة المترجم منها، تترجم بعبارة كاملة في اللغة المترجم إليها.
ومن ذلك مثلا: الكلمة الإنجليزية (please) إذ تترجم إلى اللغة [العربية] بعبارة كاملة تقول: “لو سمحت” والحل البسيط لتلك المشكلة هو أن نضيف تلك الإضافة الجديدة إلى معاجمنا لكي نترجم هذه الكلمة المفردة [من اللغة الإنجليزية]، إلى عبارة كاملة [في اللغة العربية]، أو العكس بالعكس.
غير أننا قد تصادفنا مشكلة أخرى: وهي أن تلك الكلمة المفردة بعينها قد يكون لها معان مختلفة متنوعة بتنوع السياقات التي ترد فيها. ومن ذلك مثلا كلمة (bank)، باللغة الإنجليزية، إذ قد تعني في سياق من السياقات (مصرفاً، أي: بيتا من بيوت المال)، وقد تعني (ضفة) من ضفاف نهر من الأنهار.
ولكي نحل تلك المشكلة الجديدة الطارئة، ننظر في السياق الذي وردت فيه تلك الكلمة، فقد نجد فيه هاديا ودليلا. فمن ذلك أن يرد في السياق مفردات مثل كلمة (cash)، بمعنى (النقد)، وكلمة (clerk)» بمعنى (الكاتب)، تتوارد في النص، قريبة من كلمة (bank) فحينئذ ينصرف الذهن إلى أن كلمة (bank)، في هذا السياق، تعني (المصرف)، أو تعني (بيتا من بيوت المال).
غير أن هذا الحل لا يزال يشوبه بعض النقص، وبعض القصور؛ إذ إن السياق نفسه قد يكون غير مكتمل، أو غير واضح. وهنا يجب أن ننظر في حل جديد آخر. وهكذا دواليك، إلى ما لا نهاية. إذن، وبإيجاز، حل مشكلات ترجمة الآلة قد يتطلب عددا كبيرا جدا من القواعد.
وأنت حين تنظر إلى نص مترجم، تستطيع أن تدرك، بلا تردد، أن هذا نص مترجم من لغة أخرى. وهذا، إن حدث، يكون علامة على أن هذه الترجمة معيبة مشوية، لأن الترجمة التي ينتجها مترجم كفء لا بد أن تكون طبيعية [أي: سلسة مستساغة].
وقياسا على هذا، نريد من الحواسب أن تنتج لنا ترجمات تكون سلسة وطبيعية. ونحن، حين نسعى لتحسين ترجمة الآلة باستخلاص قواعد لغوية عديدة كثيرة، ثم تطبيق تلك القواعد، في ترجمة الآلة، نجد أن هذا الحل لا يصلح ولا يمكن للبشر أن يعكفوا على استخلاص القواعد وإدراجها، لأن هذا يعني أننا سنظل نركض وراء استخلاص تلك القواعد المتجددة دائما وأبداً.
ثم إننا، حتى وإن استطعنا أن نستنبط كل القواعد التي تنتظم بها لغتان من اللغات التي نتحدثها، فسنبقى دوما في حاجة لأن نأتي بمجموعة جديدة كاملة من القواعد متى أردنا أن نترجم بين هاتين اللغتين الجديدتين، ولنقل مثلا بين اللغة الإنجليزية واللغة الإسبانية. وحين نعلم أن لغات العالم اليوم تزيد على 7000 لغة؛ يصبح من الواضح الجلي أن عملا كهذا سيكون عملا شاق مرهقا.
هذا، وقد بذل العلماء قصارى جهدهم [لتقديم حلول لتلك المشكلة]، إذ وضعت شركة آي بي إم الأمريكية عددا كبيرا من القواعد، وصاغت عددا كبيرا من الطرق والمناهج في التسعينيات من القرن العشرين لحل تلك المشكلة، إلا أن مشكلة الترجمة الآلية بقيت عويصة مستعصية، [في ذلك الحين].
وبما أن الناس مبدعون بطبيعتهم في استعمال اللغة، فلن يكون كافيا أن تلقن الآلة القواعد التي تسير عليها هذه اللغة أو تلك، وقد تظل الترجمة التي تنتجها الآلة غير سلسة وغير مستساغة.
ملء الأوعية
وحين تواجهنا تلك المشكلة العويصة، فقد يكون حلا لها أن تستنبط قواعد الترجمة الآلية استنباطا آليا تلقائيا. واختصارا لما أجراه العلماء من بحوث على مدى سنوات وسنوات، نجد أن هؤلاء العلماء بدأوا ينظرون إلى مفردات اللغة وكلماتها، لا على أنها كلمات منعزلة متناثرة، بل على أنها أوعية للمعاني المعبرة عنها، مرتبطة، في دلالاتها ومعانيها، بكلمات ومفردات أخرى. ونحن، حين ننظر إلى تلك الكلمات على أنها أوعية للمعاني، نستطيع أن نعطي للحواسب دفقة كبيرة من المعلومات عن كل مفردة من تلك المفردات.
والعلماء يستخدمون، للدلالة على هذا ‘الوعاء”، مصطلحا من مصطلحات علم الرياضيات، وهو مصطلح “المتجه” [vector]: ولكن يظل الأمر كما كان. فبدلا من أن نقول للكمبيوتر أن هذه الجملة فيها كلمة “queen” و أن ترجمتها هي كلمة ‘ملكة” في [اللغة العربية]، نعطي الحاسوب دفقة كبيرة من المعلومات عن تلك الكلمة. فمثلا، نقول إن كلمة ‘ملكة” ترتبط دلاليا مع كلمات أخرى مثل كلمة ‘ملك”؛ وكلمة ‘ملكي”؛ وكلمة “أنثى”.
ونحن، إذا كان لدينا نص كبير ضخم، مثل موسوعة ويكيبيديا، نستطيع أن نأمر الحاسب أن ينظر في جميع المرات التي وردت فيها كلمة ‘ملكة”؛ وأن ينظر في جميع سياقات، و [عدد مرات] ورودها كذلك. والحاسب، وهو ينفذ ذلك الأمر، نستطيع أن نعطيه وعاءً فارغا (أو متجها عشوائيا) ليملأه بمعلومات يستخلصها عن تلك الكلمة.
والحاسب ينفذ ذلك الأمر، حين ينفذه، فيستعمل شبكة اصطناعية من الخلايا العصبية المرتبط بعضها ببعض. ونحن، حين نصف هذا العمل، نقول إن الحاسب يملأ تلك الأوعية؛ (بمعنى أن الحاسب يتعلم الآن الأوزان الصحيحة الحقيقية لكل بعد من أبعاد ذلك المتجه).
ولو ننظر إلى الأمر بشيء من المرونة والسعة، فسنجد أن العبارات ما هي إلا كلما مفردة نظمت جوار بعضها بعضا، ونستطيع أن نتعلم معاني تلك المفردات، بهذه الطريقة نفسها.
وليست الجمل، في حقيقتها، إلا كلمات اجتمعت بعضها إلى بعض، ومن ثم نستطيع أن نعرف معنى جملة من الجمل عبر مجموعة من الأوعية [التي وردت فيها تلك الجمل]، (واصطلاحا تسمى هذه المجموعة من الأوعية ‘مصفوفة’). ونحن بعدما نكون قد أنجزنا هذا العمل، نكون قد أرسينا أساسا قويا نبني عليه برنامج الترجمة الذي سنترجم به آليا.
وتعلم اللغة، [بهذه الطريقة] يصير عملا أشبه ما يكون بملء الأوعية الفارغة. بل هو ملء تلك الأوعية الفارغة بالعلم الصحيح والمعرفة الدقيقة. وهذا أمر ينبني على كثير من معادلات علم الرياضيات مثل حساب المجموع المرجح [weighted summation]؛ ومثل ضرب المصفوفات [matrix multiplication]، غير أن هذه عمليات رياضية قد لا نحتاج لأن نشغل بالنا بتفاصيلها، إذ إن الحواسب تستطيع أن تجريها بمهارة وإتقان.
ها نحن الآن وقد علمنا تلك الحواسب كيف تفهم الجملة، [في بنيتها وفي تركيبها، في معناها وفي مبناها)، ونريد الآن أن نرسم مخططا يربط وعاء من أوعية اللغة المترجم منها، بوعاء، أو أكثر، من أوعية اللغة المترجم إليها. وبما أن تلك الأوعية غنية بتفاصيلها المتوافرة عن مفرداتها وعباراتها، إذن سيكون سهلا علينا أن ننشئ مخططات العلاقات الرابطة بين تلك اللغات.
والترجمة قد تكون صعبة شاقة، غير أننا الآن قد قرأنا موسوعة ويكيبيديا كاملة، في نسختها الإنجليزية. وصار لنا علم ومعرفة بجميع المفردات وجميع العبارات التي وردت في كل جملة من جمل هذا الموقع الضخم الهائل. وبدلا من العودة لاستعمال المعجمات والقواميس، نطلب من المترجمين أن يترجموا مقادير هائلة من النصوص (يصل تعدادها إلى الآلاف، بل الملايين من الجمل)، ثم نستخدم تلك النصوص ليتعلم منها الحاسب كيف يترجم.
وفي كل مرة ترى الآلة فيها جملة مكتوبة باللغة الإنجليزية، وترى معها ترجمتها باللغة العربية، تتعلم الآلة أن بين تلك الجملتين علاقات جامعة تجمع بين مفردات تلك اللغتين وعباراتهما، وذلك دون حاجة الآلة إلى أن تعلمها نحن القواعد الجامعة لتلك العلاقات التي تنشأ بين تلك المفردات وتلك العبارات.
فكيف للآلة أن تتعلم هذا العلم؟
الجواب على هذا السؤال يلخص كلما نحتاج معرفته عن التعلم العميق. فالتعلم العميق قادر على أن يستخلص تلك القواعد، ويعلمها لنفسه بنفسه؛ وما يحتاج منا، نحن البشر، سوى أن نمده بنصوص ترجمها المترجمون,[تكون هي قاعدة بيانات تستخلص منها الآلة تلك القواعد، وتتعلمها منها]. والآلة تتعلم ذلك العلم عبر شبكة ضخمة هائلة من الخلايا العصبية الاصطناعية؛ (وتسمى اصطلاحا: الأبنية [العصبية الاصطناعية])؛ فتعمل تلك المجموعات الضخمة من الخلايا العصبية الاصطناعية على استنباط تلك القواعد من الأنساق اللغوية المتكررة في تلك النصوص المترجمة [بشقيها: من اللغة المترجم منها، ومن اللغة المترجم إليها].
وفي كل مرة تخطئ فيها تلك الشبكة، تكتشف خطئها بنفسها، لأننا، نحن البشر، نكون قد أمددنا الآلة بالترجمة الصائبة الصحيحة التي ترجمها البشر، لتتعلم منها تلك الآلة. ومن ثم، حين تخطئ تلك الآلة في ترجمة نص ما ترجمة صحيحة مرة فقد تسعى تلك الآلة نفسها لتحسين ترجمتها في المرة التالية وذلك بتقليل نسبة الخطأ الذي تقع فيه.
وتلك الآلة، حتى وإن كانت تقلل من أخطائها في كل مرة، بوتيرة بطيئة قليلة ضئيلة، إلا أنها تتحسن دوماً، في أدائها، لأنها قد صار لديها مخزون ضخم من آلاف، بل من ملايين الأنساق اللغوية المتكررة التي تعمل عليها، وتتعلم منها. والأمر بإيجاز واختصار كما يلي: تلك الآلة حين نوفر لها قدرا كبيرا من النصوص المترجمة ترجمة بشرية، تستطيع الشبكات العصبية الاصطناعية أن تتعلم من تلك الترجمات الصحيحة الرائعة، وأن تنتج بدورها ترجمات صحيحة رائعة كذلك.
وتلك الآلة حين تترجم كلمة ما، أو حين تترجم عبارة ما، فإنها تَعْلم، وتتعلَّم، ما هي تلك الكلمات، وما هي تلك العبارات التي يجب أن توليها اهتماما وعناية [attention] في الترجمة. ثم إن تلك الآلة تظل تفكر [وتتدبر] فيما ترجمته من نصوص حتى ذلك الحين. ومن ثم، تستطيع تلك الشبكة العصبية الاصطناعية أن تنتج ترجمة سلسة مستساغة [fluent].
ولكي نرى مثالا على ذلك من ترجمة الآلة باستخدام الشبكة العصبية الاصطناعية؛ وكيف تكون جودتها، نقرأ الآن قصة (البطتين والسلحفاة)، وهي القصة الواردة أدناه. وهي قصة ترجمناها من اللغة العربية إلى اللغة الإنجليزية بخدمة الترجمة العامة التي يوفرها موقع جوجل ترانزليت:
There were two ducks and a turtle living with them in a spring of water، and when the spring of water dried up، the two ducks decided to leave to look for another place where there was water، and they informed the turtle of their departure. The turtle said: “And I cannot live without water، please take me with you.” Then the two ducks said: “But we fly while you crawl، so how will you come with us?”; The two ducks had an idea and said، “We will take you with us، but on the condition that you do not talk to anyone، and do not open your mouth during your journey with us.” The turtle was amazed at first، then she agreed، and told them: “How am I going to go with you?”; One of the ducks brought a wooden stick، and she said to the turtle: “Bite on the middle of it، and we will carry it from both ends with the beak، and so you will come with us.” (Google Translate، February 10، 2021. Arabic source is in the end of this piece.)
ستلاحظ أن القصة أسلوبها سلس يسير. وحيث إن هذا النص قد صيغ ليقرأه الصبية الناشئة، فلنا إذن أن تحسن الترجمة، ونجعلها أكثر يسرا، وأكثر سلاسة، باستعمال مفردات أبسط وعبارات أسهل، في بعض المواضع من هذا النص، فلنا مثلا أن نستعمل كلمة (told)، بدلا من كلمة (informed). ولكن هذه الترجمة، تبقى جيدة، ولا بأس بها، في هذه الحال. ولنا أن نذهب أبعد من ذلك، فعلم الحاسب كيف يصوغ مثل تلك النصوص صياغة سهلة سلسة بسيطة، دون أن نتدخل نحن، لنبسط هذا النص بأنفسنا.
ما أهمية هذا الأمر؟
الترجمة الآلية التي تستعمل التعلم العميق، هي ترجمة اصطلح على تسميتها بمصطلح (الترجمة الآلية العصبية). والتكنولوجيا المستعملة حاليا في الترجمة الآلية العصبية هي تكنولوجيا مناسبة لتلك اللغات التي تتوافر بها نصوص جمة كثيرة ترجمها مترجمون، فصارت تلك النصوص وكأنها قواعد بيانات» تتعلم منها الحواسب كيف تترجم. فالتكنولوجيا، إذن، في مثل هذه الحالات، تستخدم لسد الثغرات، عند الافتقار لبعض الموارد البشرية، أو لبعض المقررات الدراسية.
مثلاً، هذه النصوص المترجمة قد تستعمل لتنجز ترجمة سريعة لنصوص وفقرات، في كتب ومقررات دراسية، من لغة إلى لغة أخرى، أو لتضع تلقائيا تدريبات على الدروس المقرر على الطلبة دراستها، أو لتتيح خدمات يصعب على المعلمين الحصول عليها، ما لم تتوافر لهم تلك التكنولوجيا، أو تلك المواد الدراسية المقررة.
وهذا الأمر قد يساعد في أن يكون لدينا مقررات دراسية متنوعة؛ ويثري فينا معاني التقدير والإعجاب بفئات شتى، من أبناء المجتمعات التي نعيش فيها، حين نتعرف إليهم؛ ونتعلم عن عاداتهم وتاريخهم» ونحن نقرأ لغاتهم، أو نترجم عنها. واكتساب هذا العلم وتلك المعرفة له آثاره المحمودة المشهودة في المجتمع؛ وفي الاقتصاد. وهذا أنسب شيء تعلمه لأبنائنا، صغارا وكبارا.
النص الإنجليزي لقصة “البطتان والسلحفاة” وهي القصة الواردة باللغة العربية في متن المقالة:
كان هناك بطتان وسلحفاة تعيش معهما في عين ماء، وعندما جفت عين الماء، قررت البطتان الرحيل للبحث عن مكان آخر يوجد به ماء فأخبرتا السلحفاة برحيلهما؛ فقالت السلحفاة: ”وأنا لا أستطيع العيش دون الماء، أرجوكم خذوني معكما“، فقالت البطتان: ”ولكننا نطير وأنت تزحفين فكيف ستأتي معنا؟“؛ ففكرت البطتان في فكرة وقالتا: ” سنأخذك معنا ولكن بشرط ألا تتحدثي مع أحد، ولا تفتحي فمكي خلال رحلتك معنا“. استغربت السلحفاة في بادئ الأمر ومن ثم وافقت، وقالت لهما: “كيف سأذهب معكما؟“؛ فأحضرت إحدى البطتين عودا من الخشب، وقالت للسلحفاة: “قومي بالعض على منتصفه، ونحن سوف نقوم بحمله من طرفيه بالمنقار، وهكذا” سوف تأتي معنا .