تخيّل مترجمًا يجلس في قاعة اجتماعات ويترجم كل كلمة. لكنه يلاحظ أنه يمكنه تحسين ترجمته إذا تعلّم من أخطائه. يبدأ بتسجيل العبارات التي سبّبت سوء الفهم، ويصححها. وبعد ساعة، تصبح ترجمته أدق، ويمر الاجتماع بسرعة أكبر. وهكذا هنا: مُفسِّر لغة Scheme، بمجرد تجميعه، يمكنه تنفيذ أي برنامج يُمرَّر إليه كبيانات، وفي الوقت نفسه حساب التدرجات لتحسين تلك البرامج.
في السابق، كان لا بد من إعادة كتابة كل نموذج علمي يدويًا بصيغة قابلة للتفاضل لتطبيق التحسين التدرجي. الأمر أشبه بضرورة توظيف مترجم جديد لكل نص. أما الآن، فأصبح المترجم نفسه قابلاً للتعلم: فهو لا يترجم فحسب، بل يفهم أيضًا كيف يعدّل النص ليصبح أفضل. ابتكر مؤلفو الدراسة مُجمِّعًا يترجم الكود المصدري بلغة Scheme إلى تمثيل وسيط اسمه ComputeGraph، ثم إلى وحدات PyTorch أو JAX. السمة الأساسية هي أن المُفسِّر نفسه يصبح قابلاً للتفاضل، وليس البرامج الفردية.
داخل المُفسِّر، تُمثَّل جميع القيم بمتجهات ذات 14 بُعدًا: متجه one-hot بعشرة أبعاد لوسم النوع، وحمولة مفيدة بأربعة أبعاد. الكومة (heap) مُنفَّذة كقاموس ذي كتابة لمرة واحدة، مما يحافظ على صحة التدرجات. أما الاستدعاءات الذيلية فتُعالَج باستخدام ما يُعرف بالترامبولين (trampoline)، أي حلقة تحل محل العودية العميقة وتمنع نمو المكدس. وبفضل هذا، فإن التدرجات المحسوبة عبر المُفسِّر المُجمَّع تطابق تلك الناتجة عن التجميع المباشر بدقة تصل إلى 7×10⁻⁷ في دالة الخسارة عبر 171 زوجًا (برنامج، قيمة ابتدائية).
في بيانات حقيقية لتدهور البطاريات، استعاد البحث المشترك عن البنية والمعاملات البنيةَ الرُكبية للتدهور من تقريب ابتدائي أملس، وحسّن الاستقراء على البيانات المحجوزة. وفي مسألة النمذجة العكسية لظاهرة النينيو، أتاح المُفسِّر القابل للتفاضل تحسين دالة الإمكان (likelihood) لِمرشِّح كالمان بمعاملات يبلغ عددها 611، حيث فشل البحث غير التدرجي. وقد حققت المعالجة بالدفعات تسريعًا يصل إلى 875 ضعفًا في الإنتاجية.
المترجم الآن لا يترجم فحسب، بل يتعلم من كل كلمة. يمكنه معايرة معاملات النماذج التي تولّدها النماذج اللغوية تلقائيًا في المسائل العلمية والهندسية. الأمر كما لو أن مترجمًا، بعد أن تسلّم مسودة من كاتب، يصقلها بنفسه حتى تبلغ الكمال، دون أن يطلب إعادة كتابتها من الصفر. وبالعودة إلى البداية: مترجم يتعلم من كل كلمة يحوّل ساعة الاجتماع إلى دقائق، ويجعل العلم أسرع وأدق.
مُفسِّر Scheme المكتوب بلغة Scheme نفسها لا يتجاوز 288 سطرًا من الكود. ومع ذلك، فهو يدعم الإغلاقات، والاستدعاء الذاتي، والقوائم، والاستدعاءات الذيلية، بما يكفي ليكون قابلاً للتطبيق على نفسه.
فكرة برنامج يمكنه تعديل وتحسين نفسه عبر التدرجات تتردد مع مفهوم آلات غودل (Gödel machines) ليورغن شميدهوبر، كما وصفها في أعماله حول التحسين الذاتي الشامل.