من فضلك تسجيل الدخول أو تسجيل لتفعل ذلك.

في خطوة مثيرة للاهتمام، قام فريق من الباحثين بتجربة فريدة تمثلت في ترجمة منطق اتخاذ القرار الخاص بأداة بناء المشاريع المشابهة لـ Maven إلى مصفوفة وزن ثابتة ضمن شبكة عصبية. الهدف لم يكن إنشاء نموذج يتوقع ما يفعله Maven عادةً، بل إنشاء شبكة عصبية تنفذ المنطق نفسه بدقة متناهية، بحيث تكون الإجابة صحيحة تمامًا أو ترفض الإجابة.

أظهرت التجربة نجاحًا باهرًا في بناء مكتبة Java حقيقية هي ZXing 3.5.3، وهي مكتبة متخصصة في رموز الباركود. كانت الملفات الناتجة (JARs) مطابقة تمامًا، بايتًا بايتًا، لتلك التي ينتجها Apache Maven، وتم اجتياز جميع الاختبارات البالغ عددها 549 اختبارًا.

كيف يعمل «Maven» العصبي؟

يعتمد هذا النهج على مفهوم «Handwired»، حيث يمكن كتابة برنامج ثم ضبط أوزان الشبكة العصبية بحيث تصبح الشبكة هي البرنامج نفسه. قام الباحثون بكتابة مُتحكم بناء متوافق مع Maven في مجموعة فرعية مقيدة من لغة Python، ثم تم تحويله إلى جدول أوزان يتكون من 26,626 صفًا (في نسخته المحسّنة).

تتم العملية في حلقة متكررة: في كل خطوة، تبحث الشبكة في صف واحد من جدولها عبر عمليتين ضرب مصفوفي، وتجري العمليات الحسابية المشفرة في هذا الصف على ملف سجل صغير، ثم تكتب النتيجة مرة أخرى إلى الذاكرة. لا تستطيع الشبكة فتح الملفات أو تشغيل «javac» مباشرة؛ بدلاً من ذلك، تكتب طلبًا في خانة ثابتة في ذاكرتها، ويقوم «جسر» رفيع بنقل الطلب وتلقي الإجابة الخام، دون اتخاذ أي قرارات.

على الرغم من دقتها، إلا أن أداة البناء العصبية هذه كانت أبطأ في كل السيناريوهات التي تم قياسها. كانت سرعة تنفيذ منطق المُتحكم أبطأ بحوالي 1.49 مرة من نفس المنطق المكتوب بلغة Python مباشرة. ويعود السبب في ذلك إلى أن الشبكة تقضي دورة كاملة من العمليات الحسابية للمصفوفات على كل تعليمة صغيرة. حتى تشغيل الشبكة على وحدة معالجة الرسوميات (GPU) جعل الأمور أسوأ، لأن البرنامج الذي ينفذ تعليمة تلو الأخرى لا يمنح وحدة المعالجة الرسومية شيئًا لتنفذه بالتوازي.

ما أهمية هذه التجربة للمطورين؟

برأينا، تكمن القيمة الحقيقية لهذه التجربة ليس في السرعة، بل في إمكانية فهم وتفسير عمل الشبكات العصبية. فكل وزن في هذه الشبكة له معنى معروف، وهو أمر نادر جدًا في نماذج الذكاء الاصطناعي المُدربة. يتيح هذا للمطورين والباحثين استخدامها «كمفتاح إجابة» للتحقق من عمل أدوات تفسير الشبكات العصبية، ومعرفة ما تفعله أجزاء معينة من الشبكة، مثل جزء «do_surefire» الذي يدير الاختبارات.

كما يمكن لهذا النهج أن يفتح الباب أمام دمج الأجزاء الدقيقة التي تعمل بمنطق محدد داخل نماذج الذكاء الاصطناعي الأكبر التي تعتمد على التخمين. فبدلاً من نموذج يختار إصدار المكتبة الصحيح بنسبة 99% فقط، يمكن تضمين روتين فرعي دقيق يضمن صحة القرار بنسبة 100%. علاوة على ذلك، فإن هذه البنية توفر منطق قرار يمكن «ترميزه» (hashed)، مما يعني إمكانية التحقق من سياسة البناء، وتوقيعها، وإظهار أن بناءً معينًا جاء منها، مما يعزز الثقة في عملية البناء.

في الختام، بينما لا توفر هذه التقنية أداة بناء أسرع، إلا أنها تقدم مفهومًا جديدًا لأداة بناء يمكن اعتبارها «موترًا» (tensor) قابلاً للتفسير والتحقق، مما يفتح آفاقًا جديدة في تطوير أدوات برمجية أكثر شفافية وموثوقية.

المصدر: blog.jetbrains.com

Anthropic تخصص جزءاً من أسهمها لدعم أبحاث الذكاء الاصطناعي
الذكاء المحيط: واجهة المطورين القادمة وتكامل Copilot

Reactions

0
0
0
0
0
0
بالفعل كان رد فعل لهذا المنصب.

ردود الفعل