Amostragem Prioritária de Modelos de Linguagem de Grande Escala para Compiladores
Priority Sampling of Large Language Models for Compilers
February 28, 2024
Autores: Dejan Grubisic, Chris Cummins, Volker Seeker, Hugh Leather
cs.AI
Resumo
Modelos de linguagem de grande escala demonstram grande potencial na geração e otimização de código. Métodos de amostragem amplamente utilizados, como o Nucleus Sampling, aumentam a diversidade da geração, mas frequentemente produzem amostras repetidas para temperaturas baixas e amostras incoerentes para temperaturas altas. Além disso, o coeficiente de temperatura precisa ser ajustado para cada tarefa, limitando sua usabilidade. Apresentamos o Priority Sampling, uma técnica de amostragem simples e determinística que produz amostras únicas ordenadas pela confiança do modelo. Cada nova amostra expande o token não expandido com a maior probabilidade na árvore de busca aumentada. Adicionalmente, o Priority Sampling suporta geração baseada em expressões regulares, proporcionando um processo de exploração controlado e estruturado. O Priority Sampling supera o Nucleus Sampling para qualquer número de amostras, aumentando o desempenho do modelo original de 2,87% para 5% de melhoria em relação ao -Oz. Além disso, ele supera o autotuner utilizado para a geração de rótulos no treinamento do modelo original em apenas 30 amostras.
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.