أهلا أعزائي أعضاء منتدى الهندسة العكسية
يسرني مشاركتكم هذه السلسلة المتواضعة ومادة خام للنقاش حول مساق ربما سيكون مستقبل الهندسة العكسية ألا وهو الهندسية العكسية للنماذج اللغوية الكبيرة.
مقدمة
مما لاشك فيه أن الذكاء الاصطناعي في نسخته الحديثة للتعلم العميق للنماذج اللغوية الكبيرة خطف أنظار العالم وصار و سيصير لبنة الإقتصاد للمجتمع الحديث.
1 - نبذة عن النماذج اللغوية الكبيرة.
بإختصار شديد, النماذج اللغوية الكبيرة هي دوال إحصائية تعطيك إحتمالية الكلمات أو جزء من الكلمات الممكنة لإكمال السياق المدخل لها.
مثلا لو أعطيتها “الفريق العربي للهندسة العكسية “ ربما ستعطيك “هو” أو “يعتبر” أو “تأسس”… إلخ, كل بنسبة تناسقه مع السياق. ثم تركب سياق جديد بالتتمة التي إخترت “الفريق العربي للهندسة العكسية هو “ ستعطيك “الفريق” أو “منتدى” … إلخ, إلى غاية إنهاء الفقرة أو الجملة أو التصادف مع كلمات معدة مسبقة في تدريبها تعني نهاية السياق,
ما جعل هذه النماذج اللغوية ناجحة هو مفهوم “الإنتباه” وهو سمة يتميز بها الإنسان لمعالجة البيانات بكشل ذكي “من نعمة الله”. بمعنى لو سألتك إختيار كلمة مناسبة من كل الكلمات التي تعرف لإكمال السياق : “الفريق العربي للهندسة العكسية هو “ فأنت تعير إهتمام كبير ربما لكلمة “العكسية” أكثر من باقي الكلمات لتعلم أننا نتكلم عن هذا المنتدى حيث أن باقي الكلمات ك “الفريق” ربما تعني فريق كرة قدم وكلمة “الهندسة” ربما تعني هندسة الوراثة إلخ…
فهذه الملكة “الإنتباه” هي ملكة نطورها مع العمر لنتعلم كيف نركز على المهم في سياق معين لإكماله.
دعنا نغوص قليلا ونفكك مفهوم كلمة أو إسم أو رزم … ماذا تعني كلمة أو جزء من كلمة أو رمز أو حتى معين ؟
العين حين ترى سياق معين فهي ترى بالأساس ضوء يسقط على القرنية ثم يتم تحويل الموجات الكهروضوئية لسيالة عصبية تمرع عبر عدة تحويلات حتى تعطي نشاط عصبي في المخ ليتم ترجمته بشكل “سحري وغير مفهوم بعد” لفكرة نستطيع من خلالها تذكر أو تعلم أو إسقاط معنى أو الإتفاق مع الأخرين عن إصطلاح أو إجماع عن تعريف.
اللغة تتشكل عن طريق روية الكثير من الأمثلة والتعلم والخطأ إما عن طريق التلقين أو التواصل أو المقاربة ببيانات في ذكرتنا أو تجاربنا… يبقى السؤال, كيف نخزن معاني الرموز في ذكرتنا لتسهل علينا معرفة تتمة أي سياق بشكل سليم؟
بما أن اللغة هي سمة من سمات الإنسان والإنسان يعتمد نظام الشبكات العصبية لتوليد اللغة, فسنحاول محاكاة الشبكة العصبية مع خاصية الإنتباه لنرى إن كان بإمكان الذكاء الإصطناعي محاكاة توليد اللغة ولما لا حتى تطوير مهارات منطقية وحل المشاكل عن طريق التحليل المنطقي المبني على اللغة؟
دعنا نعود أدراجنا… فلو أخذنا كلمة “أميرة” نستنتج أنها مركبة من الكثير من المتغيرات أو نسبة من متغيرات, مثلا : 90% “مرأة” + 5%“غنية” + 2%“قصر” + 5%“جميلة”.
لكن كيف يمكن معرفة المتغيرات الأساسية التي من خلالها الحصول على تركيب أي كلمة؟ وكيف يمكن تخزين هذه المتغيرات وإعادة تحويلها لرموز لغوية؟
هنا تأتي خدعة تقنية وهي الإفتراض أن كل رمز أو كلمة أو جزء من الكلمة هو تركيب لعدد معين من المتغيرات, مثلا 512 دون تحديد معنى أي متغير, لنكتشفهم جميعا بعد التدريب على الكثير من الأمثلة من النصوص المتوفرة. ثم نستغل مبدأ التعلم بإعارة الإنتباه.
كل شيئ بعد ذلك يتم تخزينه في ملف واحد أو مقسم يحتوي متغيرات رقمية ومرجع لمعادلات أو معمارية فقط… لا يتم تخزين أي نص. هي قاعدة بيانات مختلفة عن قواعد البيانات التي نعرف, هي قواعد بيانات إحصائية تعطيك فقط قيم إحتمالات وأنت المسؤول عن تحويل القيم لرمز لغوي.
بعد تدريب النماذج اللغوية الكبيرة بهذه الطريقة حصلة مفاجأة, مفادها القدرة على تذكر النصوص التي تعلمنها بل وأكثر من ذلك القدرة على إنتاج أمثلة لغوية تحاكي لغة الإنسان ولم نتعلمها قط في مرحلة التدريب؟
حتى هنا نحصل على نموذج لغوي قادر على إنتاج لغة صحيحة سليمة, لكن ليس بضروري أنها تقدم فكرة صحيحة أو قابلة للمحادثة… هنا بدأت مرحلة أخرى وهي التهيئة للمحادثة والإجابة عن الأسئلة, وهذه المرحلة تتم عن طريق تدريب النماذج اللغوية الكبيرة بنفس الطريقة ولكن هذه المرة عن طريق نصوص تحتوي على سؤال-جواب.
هل نجح الأمر؟ نعم نحج…
إذا يمكن الذهاب أبعد وتهيئة للإجابة عن الأسئلة ولكن بمنهجية تفكير ونقد؟
هل نجح الأمر؟ نعم نجح…
إذا هذه النمادج بعد تدريبها على النصوص اللغوية يمكن تهيئتها وتوجيهها عن طريق المزيد من التدريب والأمثلة؟ نعم.
وهكذا يمكن تهيئة نماذج لغوية كبيرة لمنعها من الإجابة عن أسئلة محرمة أخلاقيا أو قانونيا أو توجيهها لانتحال شخصيات معينة أو نشر أو منع أفكار معينة.
كما يمكن تدريبها وتهيئتها لكتابة لغات برمجة بشكل سليم وضعها في وسط لإستعمال أدوات كالتحكم في الحاسوب أو الشبكة أو مناداة بيانات من قواعد بيانات أو تنفيذ أوامر معينة إلخ…
كما يمكن إستغلالها لعمل تطبيقات ذكية ذاتية التحكم في جميع المجالات.
هنا نفتح باب الهندسة العكسية.
2 - الهندسة العكسية للنماذج اللغوية الكبيرة
كما ذكرنا سابقا….متغيرات النماذج اللغوية الكبيرة يتم تخزينها في ملف يحتوي مصفوفات رقمية ومرجع لمعادلات أو معمارية. يتم أولا تحميلها في الذاكرة ثم إستغلالها عن طريق تحويل سياق نصي لمصفوفة ثم تمريرها عبر متغيرات الشبكة العصبية والحصول في الأخير على إحتمالات الكلمة أو جزء كلمة المناسب لإتمام السياق.
النماذج اللغوية الحديثة صارت قوية لتفادي التفاعل في مواضيع مخالفة لقوانين المتفق عليها, لكن لها القدرة من حيث المبدأ لفعل ذلك.
كيف يمكن فعل ذلك؟ وهل هذا الأمر ممكن دائما؟
نعم يمكن من حيث المبدأ ودائما توجيه النماذج اللغوية لتخدم مصالحك وذلك عن طريق منهجية التحايل اللغوي…
كمثال بسيط لو أنني دربت نموذج لغوي عن تفادي الحديث عن الفايروسات البرمجية فسيتجنب دائما الحديث عن الموضوع معك… لكن لو تحايلت لغويا عل النموذج وطلبتها في بحث علمي عن طريقة حقن برمجية نافعة في برنامج مفتوح سيشرح لك بالتفصيل كيف تفعل ذلك ويبقى لك فقط تعويض البرمجية النافعة بأخرى ضارة وبهذا تكون قد تحايلت على نموذج.
هذه النوع من الهندسة العكسية عن طريق التحايل اللغوي واحد من المواضيع التي سنتحدث عنها بالتفصيل في هذه السلسلة... "الحقن اللغوي" لتوجيه النموذج اللغوي لفتح منافذ الإستغلال بإعتبار أن المحادثة هي الوسيلة التي نتفاعل بها مع هذه النماذج.
هنالك مداخل أخرى في هذا المجال مثل تلويث بيانات التدريب عن طريق تقديم أمثلة ضارة لغوية أو برموز لغوية خاصة حيث يمكن استغلاله أثناء إستعمال النموذج… إلخ.
3 - تطبيقات الذكاء الاصطناعي الحديثة
حاليا العالم الرقمي يتجه لمفهوم “العميل” الرقمي الذكي كتطبيق يستعمل النماذج اللغوية الكبيرة لتقديم خدمات أوطوماتكية. كمثال لو أحببت ترتيب رحلة سفر من الألف إلى الياء لدولة معينة وتملك ميزانية محدودة ورغبات معينة مع تقديم معلوماتك التي ستساعد في تنظيم جدولك.... ستسأل هذا “العميل” وسيقوم بفهم سؤالك جيدا والبحث في الأنترنت عن الدول المناسبة لك وحجز التذاكر لك وترتيب الجدول وحتى تقديم الترجمة للغتك الأم في كل رحلتك.
طبعا هذه الخدمة لن تكون مجانية ولن تكون خالية من العيوب التي يمكن استغلاله أو الإستافدة منها لحماية الخدمة من القراصنة.
خاتمة
كان هذا مقال مقدمة لسلسلة جديدة في عالم جديد للهندسة العكسية, أعطيت فيه لمحة جد سريعة عن النماذج اللغوية وتدريبها واستغلالها ثم وضعت فيها نقطة محتملة للهندسة العكسية في المستقبل القريب.
أتمنى أن يكون المقال واضح, وسنستمر في الرحلة للدخول في التفاصيل خطوة خطوة.
يسرني مشاركتكم هذه السلسلة المتواضعة ومادة خام للنقاش حول مساق ربما سيكون مستقبل الهندسة العكسية ألا وهو الهندسية العكسية للنماذج اللغوية الكبيرة.
مقدمة
مما لاشك فيه أن الذكاء الاصطناعي في نسخته الحديثة للتعلم العميق للنماذج اللغوية الكبيرة خطف أنظار العالم وصار و سيصير لبنة الإقتصاد للمجتمع الحديث.
1 - نبذة عن النماذج اللغوية الكبيرة.
بإختصار شديد, النماذج اللغوية الكبيرة هي دوال إحصائية تعطيك إحتمالية الكلمات أو جزء من الكلمات الممكنة لإكمال السياق المدخل لها.
مثلا لو أعطيتها “الفريق العربي للهندسة العكسية “ ربما ستعطيك “هو” أو “يعتبر” أو “تأسس”… إلخ, كل بنسبة تناسقه مع السياق. ثم تركب سياق جديد بالتتمة التي إخترت “الفريق العربي للهندسة العكسية هو “ ستعطيك “الفريق” أو “منتدى” … إلخ, إلى غاية إنهاء الفقرة أو الجملة أو التصادف مع كلمات معدة مسبقة في تدريبها تعني نهاية السياق,
ما جعل هذه النماذج اللغوية ناجحة هو مفهوم “الإنتباه” وهو سمة يتميز بها الإنسان لمعالجة البيانات بكشل ذكي “من نعمة الله”. بمعنى لو سألتك إختيار كلمة مناسبة من كل الكلمات التي تعرف لإكمال السياق : “الفريق العربي للهندسة العكسية هو “ فأنت تعير إهتمام كبير ربما لكلمة “العكسية” أكثر من باقي الكلمات لتعلم أننا نتكلم عن هذا المنتدى حيث أن باقي الكلمات ك “الفريق” ربما تعني فريق كرة قدم وكلمة “الهندسة” ربما تعني هندسة الوراثة إلخ…
فهذه الملكة “الإنتباه” هي ملكة نطورها مع العمر لنتعلم كيف نركز على المهم في سياق معين لإكماله.
دعنا نغوص قليلا ونفكك مفهوم كلمة أو إسم أو رزم … ماذا تعني كلمة أو جزء من كلمة أو رمز أو حتى معين ؟
العين حين ترى سياق معين فهي ترى بالأساس ضوء يسقط على القرنية ثم يتم تحويل الموجات الكهروضوئية لسيالة عصبية تمرع عبر عدة تحويلات حتى تعطي نشاط عصبي في المخ ليتم ترجمته بشكل “سحري وغير مفهوم بعد” لفكرة نستطيع من خلالها تذكر أو تعلم أو إسقاط معنى أو الإتفاق مع الأخرين عن إصطلاح أو إجماع عن تعريف.
اللغة تتشكل عن طريق روية الكثير من الأمثلة والتعلم والخطأ إما عن طريق التلقين أو التواصل أو المقاربة ببيانات في ذكرتنا أو تجاربنا… يبقى السؤال, كيف نخزن معاني الرموز في ذكرتنا لتسهل علينا معرفة تتمة أي سياق بشكل سليم؟
بما أن اللغة هي سمة من سمات الإنسان والإنسان يعتمد نظام الشبكات العصبية لتوليد اللغة, فسنحاول محاكاة الشبكة العصبية مع خاصية الإنتباه لنرى إن كان بإمكان الذكاء الإصطناعي محاكاة توليد اللغة ولما لا حتى تطوير مهارات منطقية وحل المشاكل عن طريق التحليل المنطقي المبني على اللغة؟
دعنا نعود أدراجنا… فلو أخذنا كلمة “أميرة” نستنتج أنها مركبة من الكثير من المتغيرات أو نسبة من متغيرات, مثلا : 90% “مرأة” + 5%“غنية” + 2%“قصر” + 5%“جميلة”.
لكن كيف يمكن معرفة المتغيرات الأساسية التي من خلالها الحصول على تركيب أي كلمة؟ وكيف يمكن تخزين هذه المتغيرات وإعادة تحويلها لرموز لغوية؟
هنا تأتي خدعة تقنية وهي الإفتراض أن كل رمز أو كلمة أو جزء من الكلمة هو تركيب لعدد معين من المتغيرات, مثلا 512 دون تحديد معنى أي متغير, لنكتشفهم جميعا بعد التدريب على الكثير من الأمثلة من النصوص المتوفرة. ثم نستغل مبدأ التعلم بإعارة الإنتباه.
كل شيئ بعد ذلك يتم تخزينه في ملف واحد أو مقسم يحتوي متغيرات رقمية ومرجع لمعادلات أو معمارية فقط… لا يتم تخزين أي نص. هي قاعدة بيانات مختلفة عن قواعد البيانات التي نعرف, هي قواعد بيانات إحصائية تعطيك فقط قيم إحتمالات وأنت المسؤول عن تحويل القيم لرمز لغوي.
بعد تدريب النماذج اللغوية الكبيرة بهذه الطريقة حصلة مفاجأة, مفادها القدرة على تذكر النصوص التي تعلمنها بل وأكثر من ذلك القدرة على إنتاج أمثلة لغوية تحاكي لغة الإنسان ولم نتعلمها قط في مرحلة التدريب؟
حتى هنا نحصل على نموذج لغوي قادر على إنتاج لغة صحيحة سليمة, لكن ليس بضروري أنها تقدم فكرة صحيحة أو قابلة للمحادثة… هنا بدأت مرحلة أخرى وهي التهيئة للمحادثة والإجابة عن الأسئلة, وهذه المرحلة تتم عن طريق تدريب النماذج اللغوية الكبيرة بنفس الطريقة ولكن هذه المرة عن طريق نصوص تحتوي على سؤال-جواب.
هل نجح الأمر؟ نعم نحج…
إذا يمكن الذهاب أبعد وتهيئة للإجابة عن الأسئلة ولكن بمنهجية تفكير ونقد؟
هل نجح الأمر؟ نعم نجح…
إذا هذه النمادج بعد تدريبها على النصوص اللغوية يمكن تهيئتها وتوجيهها عن طريق المزيد من التدريب والأمثلة؟ نعم.
وهكذا يمكن تهيئة نماذج لغوية كبيرة لمنعها من الإجابة عن أسئلة محرمة أخلاقيا أو قانونيا أو توجيهها لانتحال شخصيات معينة أو نشر أو منع أفكار معينة.
كما يمكن تدريبها وتهيئتها لكتابة لغات برمجة بشكل سليم وضعها في وسط لإستعمال أدوات كالتحكم في الحاسوب أو الشبكة أو مناداة بيانات من قواعد بيانات أو تنفيذ أوامر معينة إلخ…
كما يمكن إستغلالها لعمل تطبيقات ذكية ذاتية التحكم في جميع المجالات.
هنا نفتح باب الهندسة العكسية.
2 - الهندسة العكسية للنماذج اللغوية الكبيرة
كما ذكرنا سابقا….متغيرات النماذج اللغوية الكبيرة يتم تخزينها في ملف يحتوي مصفوفات رقمية ومرجع لمعادلات أو معمارية. يتم أولا تحميلها في الذاكرة ثم إستغلالها عن طريق تحويل سياق نصي لمصفوفة ثم تمريرها عبر متغيرات الشبكة العصبية والحصول في الأخير على إحتمالات الكلمة أو جزء كلمة المناسب لإتمام السياق.
النماذج اللغوية الحديثة صارت قوية لتفادي التفاعل في مواضيع مخالفة لقوانين المتفق عليها, لكن لها القدرة من حيث المبدأ لفعل ذلك.
كيف يمكن فعل ذلك؟ وهل هذا الأمر ممكن دائما؟
نعم يمكن من حيث المبدأ ودائما توجيه النماذج اللغوية لتخدم مصالحك وذلك عن طريق منهجية التحايل اللغوي…
كمثال بسيط لو أنني دربت نموذج لغوي عن تفادي الحديث عن الفايروسات البرمجية فسيتجنب دائما الحديث عن الموضوع معك… لكن لو تحايلت لغويا عل النموذج وطلبتها في بحث علمي عن طريقة حقن برمجية نافعة في برنامج مفتوح سيشرح لك بالتفصيل كيف تفعل ذلك ويبقى لك فقط تعويض البرمجية النافعة بأخرى ضارة وبهذا تكون قد تحايلت على نموذج.
هذه النوع من الهندسة العكسية عن طريق التحايل اللغوي واحد من المواضيع التي سنتحدث عنها بالتفصيل في هذه السلسلة... "الحقن اللغوي" لتوجيه النموذج اللغوي لفتح منافذ الإستغلال بإعتبار أن المحادثة هي الوسيلة التي نتفاعل بها مع هذه النماذج.
هنالك مداخل أخرى في هذا المجال مثل تلويث بيانات التدريب عن طريق تقديم أمثلة ضارة لغوية أو برموز لغوية خاصة حيث يمكن استغلاله أثناء إستعمال النموذج… إلخ.
3 - تطبيقات الذكاء الاصطناعي الحديثة
حاليا العالم الرقمي يتجه لمفهوم “العميل” الرقمي الذكي كتطبيق يستعمل النماذج اللغوية الكبيرة لتقديم خدمات أوطوماتكية. كمثال لو أحببت ترتيب رحلة سفر من الألف إلى الياء لدولة معينة وتملك ميزانية محدودة ورغبات معينة مع تقديم معلوماتك التي ستساعد في تنظيم جدولك.... ستسأل هذا “العميل” وسيقوم بفهم سؤالك جيدا والبحث في الأنترنت عن الدول المناسبة لك وحجز التذاكر لك وترتيب الجدول وحتى تقديم الترجمة للغتك الأم في كل رحلتك.
طبعا هذه الخدمة لن تكون مجانية ولن تكون خالية من العيوب التي يمكن استغلاله أو الإستافدة منها لحماية الخدمة من القراصنة.
خاتمة
كان هذا مقال مقدمة لسلسلة جديدة في عالم جديد للهندسة العكسية, أعطيت فيه لمحة جد سريعة عن النماذج اللغوية وتدريبها واستغلالها ثم وضعت فيها نقطة محتملة للهندسة العكسية في المستقبل القريب.
أتمنى أن يكون المقال واضح, وسنستمر في الرحلة للدخول في التفاصيل خطوة خطوة.