Приоритетная выборка больших языковых моделей для компиляторов
Priority Sampling of Large Language Models for Compilers
February 28, 2024
Авторы: Dejan Grubisic, Chris Cummins, Volker Seeker, Hugh Leather
cs.AI
Аннотация
Большие языковые модели показывают большой потенциал в генерации и оптимизации кода. Широко используемые методы выборки, такие как Сэмплирование Ядра, увеличивают разнообразие генерации, но часто приводят к повторяющимся образцам при низких температурах и несвязным образцам при высоких температурах. Более того, коэффициент температуры должен быть настроен для каждой задачи, что ограничивает его применимость. Мы представляем Приоритетное Сэмплирование, простой и детерминированный метод выборки, который производит уникальные образцы, упорядоченные по уверенности модели. Каждый новый образец расширяет неразвернутый токен с наивысшей вероятностью в дополненном дереве поиска. Кроме того, Приоритетное Сэмплирование поддерживает генерацию на основе регулярного выражения, что обеспечивает управляемый и структурированный процесс исследования. Приоритетное Сэмплирование превосходит Сэмплирование Ядра для любого количества образцов, увеличивая производительность исходной модели с 2,87% до 5% улучшения по сравнению с -Oz. Более того, оно превосходит автонастраиваемый инструмент, используемый для генерации меток для обучения исходной модели всего за 30 образцов.
English
Large language models show great potential in generating and optimizing code.
Widely used sampling methods such as Nucleus Sampling increase the diversity of
generation but often produce repeated samples for low temperatures and
incoherent samples for high temperatures. Furthermore, the temperature
coefficient has to be tuned for each task, limiting its usability. We present
Priority Sampling, a simple and deterministic sampling technique that produces
unique samples ordered by the model's confidence. Each new sample expands the
unexpanded token with the highest probability in the augmented search tree.
Additionally, Priority Sampling supports generation based on regular expression
that provides a controllable and structured exploration process. Priority
Sampling outperforms Nucleus Sampling for any number of samples, boosting the
performance of the original model from 2.87% to 5% improvement over -Oz.
Moreover, it outperforms the autotuner used for the generation of labels for
the training of the original model in just 30 samples.