Xiaoqiang Lin*, Zhaoxuan Wu*, Zhongxiang Dai, Wenyang Hu, Yao Shu, See-Kiong Ng, Patrick Jaillet, Bryan Kian Hsiang Low
Домашняя страница проекта | Arxiv | Бумага
Это код для статьи: используйте свой инстинкт: оптимизация инструкций с использованием нейронных бандитов в сочетании с трансформаторами. Мы предоставляем все коды для наших экспериментов, которые включают:
Наш код основан на коде от APE и Instructzero.
Большие языковые модели (LLMS) показали замечательные возможности, связанные с инструкциями и достигли впечатляющих результатов в различных приложениях. Однако выступления LLM в значительной степени зависят от указанных им инструкций, которые обычно вручную настроены с существенными человеческими усилиями. Недавняя работа использовала алгоритм байесовской оптимизации (BO), эффективно оптимизируемый байесовской оптимизацией для автоматической оптимизации инструкций, данных для LLM Black-Box. Тем не менее, BO обычно терпит неудачу при оптимизации очень сложных (например, высокоразмерных) объективных функций, таких как функции, отображающие инструкцию с производительностью LLM. В основном это связано с ограниченной выразительной силой модели гауссового процесса (GP), которая используется BO в качестве суррогата для моделирования целевой функции. Между тем, неоднократно показали, что нейронные сети (NNS), особенно предварительно обученные трансформаторы, обладают сильной выразительной силой и могут моделировать высоко сложные функции. Итак, мы принимаем алгоритм нейронного бандита, который заменяет врача общей практики в BO суррогатом NN, чтобы оптимизировать инструкции для LLM Black-Box. Что еще более важно, алгоритм нейронного бандита позволяет нам естественным образом соединить суррогат NN с скрытым представлением, изученным предварительно обученным трансформатором (то есть LLM с открытым исходным кодом), что значительно повышает его производительность. Они мотивируют нас предложить нашу оптимизацию инструкций с использованием нейронных бандитов в сочетании с алгоритмом трансформаторов (инстинкт). Мы выполняем оптимизацию инструкций для CHATGPT и используем обширные эксперименты, чтобы показать, что наш инстинкт последовательно превосходит существующие методы в различных задачах, например, в различных задачах индукции инструкций и задача по улучшению инструкции по цепочке с нулевым выстрелом.
Вы можете скачать данные для внутренней индукции из репозиции Github of Instructzero. Вы можете скачать набор данных Samsum с сайта HuggingFace. Вы можете скачать набор данных для GSM8K, Aquarat и SVAMP из репо для APE.
Мы размещаем ноутбук для препарата данных в COT/experiments/data/instruction_induction/pre_aqua.ipynb , COT/experiments/data/instruction_induction/pre_gsm8k.ipynb и Induction/experiments/data/nlptasks/pre_nlp_data.ipynb .
Чтобы запустить наш код, вам необходимо установить среду, используя Conda: conda env create -f environment.yml
Мы предоставляем сценарии Bash для проведения наших экспериментов для индукции обучения при Induction/experiments/run_neural_bandits.sh . Чтобы правильно его запустить, вам нужно запустить следующее в терминале:
cd Induction
bash experiments/run_neural_bandits.sh
Точно так же, чтобы запустить наш код для улучшения инструкции по цепочке мыслей, вам необходимо запустить сценарий COT/experiments/run_cot_bandits.sh как следующее:
cd COT
bash experiments/run_cot_bandits.sh
Обратите внимание, что перед запуском приведенного выше скрипта Bash вам необходимо указать ключ Openai для вызова API gpt-turbo-3.5-0301 . Для этого измените следующее в двух сценариях Bash:
export export OPENAI_API_KEY=YOUR_KEY
@inproceedings{lin2024use,
title={Use Your {INSTINCT}: INSTruction optimization for LLMs usIng Neural bandits Coupled with Transformers},
author={Xiaoqiang Lin and Zhaoxuan Wu and Zhongxiang Dai and Wenyang Hu and Yao Shu and See-Kiong Ng and Patrick Jaillet and Bryan Kian Hsiang Low},
year={2024},
booktitle={Proc. ICML}
}