Большие языковые модели (LLM – Large Language Models) – это модели машинного обучения, которые способны понимать и генерировать текст на естественном языке. Они работают за счет анализа огромных наборов языковых данных.
Что такое большая языковая модель?
Большая языковая модель (LLM) – это разновидность искусственного интеллекта (ИИ), который, помимо других задач, способен распознавать и генерировать текст. LLM обучаются на огромных наборах данных. Отсюда и название «БОЛЬШАЯ языковая модель». LLM построены на алгоритмах машинного обучения, в частности на архитектуре нейронных сетей под названием «трансформер».
Проще говоря, LLM – это компьютерная программа, которой было предоставлено достаточное количество примеров для того, чтобы она могла распознавать и интерпретировать естественный язык или какие-то другие типы сложных данных. Многие LLM обучаются на данных, которые были собраны из Интернета, то есть на тексте объемом в тысячи или миллионы гигабайт. Однако на то, насколько хорошо LLM изучают естественный язык, влияет качество этих данных. Именно поэтому программисты, работающие над LLM, могут использовать наборы специально подобранны данных.
Для того, чтобы понять, как символы, слова и предложения работают вместе, LLM использует вид машинного обучения под названием глубокое обучение. Оно включает в себя вероятностный анализ неструктурированных данных, который в конечном счете позволяет модели глубокого обучения распознавать различия между единицами текста без вмешательства человека.
Затем LLM проходят дополнительное обучение: они дообучаются, или производится настройка подсказок для конкретной задачи, которую программист хочет, чтобы они выполнили, например, интерпретация вопросов и генерация ответов или перевод текста с одного языка на другой.
Для чего нужны LLM?
LLM можно обучить выполнять различные задачи. Одно из наиболее популярных применений – применение в качестве генеративного ИИ, то есть при получении подсказки или вопроса они могут генерировать текст в ответ. Например, LLM ChatGPT, который находится в открытом доступе, может генерировать эссе, стихи и другие текстовые формы в ответ на данные, которые вводит пользователь.
Для обучения LLM можно использовать любые большие и сложные наборы данных, в том числе языки программирования. Некоторые LLM способны помогать программистам в написании кода. Они могут писать функции по запросу или закончить написание программы, имея в качестве отправной точки некоторый код. Кроме того, LLM можно использовать в:
- Анализе тональности текста
- Исследованиях ДНК
- Обслуживании клиентов
- Чат-ботах
- Онлайн-поиске
А вот несколько примеров из реальной жизни: ChatGPT (от OpenAI), Bard (Google), LIama (Meta) и Bing Chat (Microsoft). А вот Copilot от GitHub – это пример программы, способной писать программный код, а не текст на естественном языке.
Преимущества и недостатки LLM
Ключевой особенностью LLM является их способность отвечать на непредвиденные запросы. Стандартная компьютерная программа получает команды в допустимом для нее синтаксисе или из определённого набора входных данных от пользователя. Видеоигра имеет ограниченный набор кнопок, приложение имеет ограниченный набор элементов, на которые пользователь может нажимать или которые может вводить, а язык программирования состоит из определенных операторов if/then.
А вот LLM, напротив, может отвечать на естественный язык и использовать анализ данных для того, чтобы отвечать на неструктурированный вопрос или подсказку таким образом, чтобы это имело смысл. В то время как стандартная компьютерная программа не может распознать запрос типа «Какие четыре фанк-группы являются величайшими в мире?», LLM может ответить, предоставив список их четырех таких групп и достаточно убедительное объяснение, почему это так.
Однако, говоря об информации, которую они предоставляют, LLM будут надежны настолько, насколько надежны данные, которые они получают. Если им предоставляют ложную информацию, то и они в ответ на запросы пользователей будут предоставлять ложную информацию. Кроме того, LLM иногда могут «галлюцинировать», то есть создавать фейковую информацию, когда не могут дать точный ответ. Например, в 2022 году новостное издание Fast Company спросило ChatGPT о предыдущем отчетном квартальном периоде Tesla; и несмотря на то, что ChatGPT предоставил в ответ довольно связную информацию, большая ее часть была выдумана.
Если мы говорим о безопасности пользовательских приложений, основанных на LLM, то они точно также подвержены ошибкам, как и любые другие приложения. LLM также можно управлять с помощью вредоносного ввода с целью выдавать определенные ответы, в том числе опасные и неэтичные. И последнее, одна из проблем безопасности LLM заключается в том, что для того, чтобы повысить свою продуктивность, пользователи могут загружать в них защищенные конфиденциальные данные. Однако LLM используют эти данные для дальнейшего обучения своих моделей, и они ни в коем разе не предназначены для использования в качестве защищенных хранилищ; наоборот, они могут раскрывать конфиденциальные данные в ответ на запросы других пользователей.
Как работают LLM?
Машинное и глубокое обучение
В самом простом случае LLM строятся на алгоритмах машинного обучения. Машинное обучение – это разновидность ИИ, под которой понимается практика передачи в программу больших объемов данных с целью научить ее определять ключевые характеристики данных без вмешательства человека.
LLM используют разновидность машинного обучение под названием «глубокое обучение». В принципе модели глубокого обучения могут научиться распознавать отличительные признаки без вмешательства человека, правда, как правило, некоторое дообучение с помощью человека все же необходимо.
Для «обучения» модель глубокого обучения использует вероятность. Например, возьмем предложение «The quick brown fox jumped over the lazy dog». В нем буквы «e» и «o» встречаются чаще всего (по четыре раза). Исходя из этого, модель глубокого обучения может сделать вывод (вполне правильный), что эти символы чаще всего встречаются в англоязычных текстах.
На самом деле модель глубокого обучения не может сделать вывод, исходя из одного предложения. Но, проанализировав триллионы предложений, она могла бы узнать достаточно для того, чтобы логически закончить неполное предложение, или даже сгенерировать свои собственные предложения.
Нейронные сети
Для того, чтобы создать условия для такого типа глубокого обучения, LLM строятся на базе нейронных сетей. Так же, как человеческий мозг состоит из нейронов, которые взаимодействуют и отправляют друг другу сигналы, искусственная нейронная сеть (обычно сокращается до «нейронная сеть») состоит из узлов, которые взаимодействуют друг с другом. Они составляют несколько «слоев»: входной слой, выходной слой и один или несколько скрытых (вычислительных) слоев. В том случае, если выходные данные слоев достигают определенного насыщения, они начинают просто передавать информацию.
Модели «трансформер»
Тип нейронных сетей, который используется для LLM, называется модель трансформер. Такие модели способны изучать контекст, что крайне важно, если мы говорим о естественном языке, который довольно сильно зависит от него. Для обнаружения самых неуловимых взаимодействий элементов последовательности модели «трансформер» используют математический метод, который называется Self-Attention (механизм внимания). Этот метод помогает им лучше (в сравнении с другими видами машинного обучения) понимать контекст. Например, они, таким образом, могут понять, как конец предложения связан с началом и как предложения связаны друг с другом в абзаце.
Это позволяет LLM интерпретировать естественный язык, даже если текст размыт или плохо читается, или в нем присутствуют новые комбинации слов, или он как-то по-новому сопоставляется с контекстом. В каком-то смысле они «понимают» семантику текста, так как, видя определенные слова и словосочетания миллионы и миллиарды раз, они могут объединять эти слова и понятия по их значению.