Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Language Modeling

Языковое моделирование присваивает вероятности последовательностям слов или токенов, обычно предсказывая каждый следующий токен. Рассматриваются n-граммы, нейронные модели и оценка качества.

Языковое моделирование — это задача присвоения вероятности последовательности слов или токенов. Согласно правилу цепочки для вероятностей, P(w1, w2, ..., wn) = P(w1) x P(w2 | w1) x ... x P(wn | w1, ..., wn-1). Поэтому модель, предсказывающая каждый следующий токен на основе предыдущих, задаёт вероятность любого текста, а выборка из этих предсказаний позволяет генерировать новый текст. Целевая функция предсказания следующего токена используется при обучении всех моделей GPT и большинства больших языковых моделей (LLMs). За десятилетия до появления LLM небольшие языковые модели ранжировали варианты ответов в системах распознавания речи и машинного перевода; они до сих пор предлагают следующее слово на клавиатурах телефонов.

Как языковая модель генерирует текст#

Обученная модель читает запрос, оценивает каждый токен в своём словаре и преобразует оценки в вероятности следующих токенов с помощью софтмакса. Затем правило декодирования выбирает токен, модель добавляет его к тексту, и цикл повторяется, пока не будет выдан конечный токен или не достигнуто ограничение длины. Так работает генерация текста:

Выборка с температурой или выборка из ядра позволяет обменять часть вероятности на разнообразие. Поскольку каждый токен зависит от уже написанных токенов, ответ поступает по одному токену за раз. Интерфейс Ultralytics для LLM передаёт stream=True поставщику модели, поэтому конвейер YOLO26, в котором модель описывает обнаруженную сцену, может выводить каждое приращение текста по мере его поступления.

От n-грамм к нейросетевым моделям#

В статье по теории информации 1948 года Клод Шеннон построил приближённые модели английских слов и букв на основе статистики n-грамм. Модель n-грамм оценивает P(next word | previous n-1 words), подсчитывая частоту последовательностей слов в корпусе. На эти модели полагались системы распознавания речи IBM в 1970-х и 1980-х годах. Идею можно изложить в нескольких строках Python на примере биграммной модели, где n = 2:

from collections import Counter

sentences = ["the cat sat on the mat .", "the dog sat on the rug .", "the cat saw the dog ."]
corpus = " ".join(sentences).split()

# Count word pairs to estimate P(next word | previous word)
pairs = Counter(zip(corpus, corpus[1:]))
firsts = Counter(corpus[:-1])

# The model's next-word distribution after "the"
print({nxt: round(n / firsts["the"], 2) for (prev, nxt), n in pairs.items() if prev == "the"})

# Chain rule: a sentence's probability is the product of its next-word probabilities
sentence = ["the", "dog", "sat", "on", "the", "mat"]
p = 1.0
for prev, nxt in zip(sentence, sentence[1:]):
    p *= pairs[(prev, nxt)] / firsts[prev]
print(f"P(dog sat on the mat | the) = {p:.4f}")

После слова "the" модель предсказывает "cat" и "dog" с вероятностью 0,33 для каждого, а "mat" и "rug" — с вероятностью 0,17 для каждого. Вероятность последовательности "dog sat on the mat" после слова "the" равна 0,0278, хотя этой последовательности нет в корпусе: в нём есть все составляющие её пары слов. Для любой пары, отсутствующей в корпусе, вероятность равна нулю, поэтому в практических моделях n-грамм нужны методы сглаживания, например Кнесера — Нея. Кроме того, такие модели не могут учитывать контекст дальше n-1 слов.

В нейросетевой вероятностной языковой модели 2003 года Ёшуа Бенжио и его коллеги заменили подсчёты на обучаемые эмбеддинги и нейросеть, благодаря чему похожие слова могли использовать общую статистическую информацию. Рекуррентные нейросети (RNNs) и LSTMs расширили доступный контекст, а трансформер, использующий самовнимание по всему контекстному окну, стал стандартной архитектурой после 2017 года. В 2020 году GPT-3 показала, что языковая модель со 175 миллиардами параметров может осваивать новые задачи на примерах из запроса.

Каузальное и маскированное языковое моделирование#

Каузальное, или авторегрессионное, языковое моделирование предсказывает каждый токен по токенам слева и лежит в основе генеративных моделей. При маскированном языковом моделировании часть токенов скрывают, а затем предсказывают по контексту с обеих сторон. BERT обучается таким образом на 15% входных токенов. Контекст с обеих сторон помогает модели решать задачи понимания, например классификацию и распознавание именованных сущностей, но не позволяет ей писать текст слева направо. Диффузионные языковые модели развивают идею маскирования и создают генератор, который заполняет множество позиций параллельно за несколько шагов.

Обучение и оценка#

Обучение представляет собой самообучение: исходный текст служит собственными метками модели, а модель минимизирует функцию потерь на основе кросс-энтропии между предсказанным распределением и каждым фактическим следующим токеном. Экспонента среднего значения функции потерь — это перплексия, стандартная внутренняя метрика. Законы масштабирования описывают, как функция потерь снижается с ростом моделей, объёма данных и вычислительных ресурсов. Предварительно обученная базовая модель лишь продолжает текст, а настройка по инструкциям и обучение с подкреплением на основе отзывов людей (RLHF) превращают её в ассистента, выполняющего запросы.

  • Языковая модель и LLM: Языковая модель — любая модель, обученная решать эту задачу, от таблицы биграмм до трансформера. LLM — языковая модель с миллиардами параметров, обученная на триллионах токенов.
  • Обработка естественного языка (NLP): Вся область вычислительной обработки человеческого языка, одной из задач которой является языковое моделирование.
  • Визуальное авторегрессионное моделирование (VAR): Применяет к изображениям тот же принцип предсказания следующего элемента, генерируя карты токенов от низкого к высокому разрешению вместо слов.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

Превращай снимки с дронов и аэрофотоснимки в полезные данные в реальном времени для сельского хозяйства, аквакультуры, охраны природы и геопространственного анализа с Ultralytics YOLO.
Подробнее
Компьютерное зрение в аэрокосмической отрасли

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

Создавай решения для здравоохранения с моделями Ultralytics YOLO. Визуальный AI в здравоохранении ускоряет медицинскую визуализацию, улучшает диагностику и мониторинг пациентов.
Подробнее
Компьютерное зрение в производстве

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

Применяй компьютерное зрение в автомобильной отрасли с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ повышает безопасность дорожного движения, улучшает помощь водителю и автоматизацию автомобилей, делая дороги умнее.
Подробнее
Компьютерное зрение в сельском хозяйстве

Компьютерное зрение в сельском хозяйстве

Внедряй ИИ для компьютерного зрения в умное сельское хозяйство с моделями Ultralytics YOLO. Используй их для мониторинга посевов, отслеживания скота и точного земледелия, чтобы повысить урожайность и эффективность.
Подробнее

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения