Как концепции программирования и нейроны взаимодействуют в языковых моделях для написания кода
How Programming Concepts and Neurons Are Shared in Code Language Models
June 1, 2025
Авторы: Amir Hossein Kargaran, Yihong Liu, François Yvon, Hinrich Schütze
cs.AI
Аннотация
Несколько исследований изучили механизмы работы больших языковых моделей (LLM) в задачах программирования, но большинство из них сосредоточились на языках программирования (ЯП) в монолингвальной среде. В данной работе мы исследуем взаимосвязь между несколькими ЯП и английским языком в концептуальном пространстве LLM. Мы выполняем задачу перевода с использованием нескольких примеров для 21 пары ЯП с использованием двух моделей на основе Llama. Декодируя эмбеддинги промежуточных слоев в ходе этой задачи, мы наблюдаем, что концептуальное пространство ближе к английскому языку (включая ключевые слова ЯП) и присваивает высокие вероятности токенам английского языка во второй половине промежуточных слоев. Мы анализируем активации нейронов для 11 ЯП и английского языка, обнаруживая, что, хотя языково-специфичные нейроны в основном сосредоточены в нижних слоях, те, которые уникальны для каждого ЯП, имеют тенденцию появляться в верхних слоях. Для ЯП, которые сильно выровнены с несколькими другими ЯП, идентификация языково-специфичных нейронов невозможна. Эти ЯП также склонны иметь больший набор ключевых слов по сравнению с другими ЯП и находятся ближе к концептуальному пространству модели независимо от входного/выходного ЯП в задаче перевода. Наши результаты дают представление о том, как LLM внутренне представляют ЯП, раскрывая структурные закономерности в концептуальном пространстве модели. Код доступен по адресу https://github.com/cisnlp/code-specific-neurons.
English
Several studies have explored the mechanisms of large language models (LLMs)
in coding tasks, but most have focused on programming languages (PLs) in a
monolingual setting. In this paper, we investigate the relationship between
multiple PLs and English in the concept space of LLMs. We perform a few-shot
translation task on 21 PL pairs using two Llama-based models. By decoding the
embeddings of intermediate layers during this task, we observe that the concept
space is closer to English (including PL keywords) and assigns high
probabilities to English tokens in the second half of the intermediate layers.
We analyze neuron activations for 11 PLs and English, finding that while
language-specific neurons are primarily concentrated in the bottom layers,
those exclusive to each PL tend to appear in the top layers. For PLs that are
highly aligned with multiple other PLs, identifying language-specific neurons
is not feasible. These PLs also tend to have a larger keyword set than other
PLs and are closer to the model's concept space regardless of the input/output
PL in the translation task. Our findings provide insights into how LLMs
internally represent PLs, revealing structural patterns in the model's concept
space. Code is available at https://github.com/cisnlp/code-specific-neurons.