Как стать автором
Поиск
Написать публикацию
Обновить
585.78
OTUS
Развиваем технологии, обучая их создателей

Меньше — лучше: как Polaris-4B обошёл Qwen3-32B

Время на прочтение8 мин
Количество просмотров5.1K

Привет, Хабр!

В июне 2025 года команда из Гонконгского университета выложила открытые модели Polaris-4B-Preview и Polaris-7B-Preview, обученные с нуля на reasoning-задачах с использованием Reinforcement Learning. Эти модели не просто догоняют топовые коммерческие аналоги вроде Claude-Opus и Grok-3-Beta — они их обгоняют. Причём на архитектуре всего в 4 миллиарда параметров.

Все это результат продуманного инженерного подхода. В этой статье коротко рассмотрим, как авторам Polaris удалось:

  • извлечь максимум из открытых данных,

  • обеспечить стабильное масштабирование reasoning-моделей,

  • обойти ограничения на длинные CoT без дообучения,

  • и при этом не развалить RL.

Анализ сложности данных: фундамент устойчивого обучения

Обучение языковых моделей с подкреплением (RLHF или GRPO) традиционно страдает от одной системной ошибки: отсутствие баланса между лёгкими и сложными задачами. Большинство датасетов либо чрезмерно тривиальны, либо не поддаются решению даже сильными моделями.

В Polaris подошли к этому вопросу с инженерной строгостью. Они построили оценку сложности каждого примера в выборке на основании автономного вывода.

def estimate_difficulty(model, prompt, n=8):
    outputs = [model.generate(prompt, temperature=0.6) for _ in range(n)]
    return sum(is_correct(output) for output in outputs) / n

Чем выше доля правильных решений, тем проще задача. Таким образом, можно вычислить точечную метрику сложности на каждый пример, не прибегая к ручной разметке.

Зеркальное J-распределение

Результаты анализа распределения сложности оказались крайне показательными.

Сравнение
Сравнение

Модель на 1.5B параметров чаще проваливает задачи — распределение сложности принимает форму, зеркально напоминающую букву J: большинство задач крайне сложные.

Модель на 7B параметров, напротив, решает подавляющее большинство задач без ошибок. Распределение превращается в обычное J-распределение: всё слишком просто.

Один и тот же датасет по-разному "читается" моделями разной мощности. Для одной он слишком трудный, для другой — банален.

Фильтрация: формирование эффективного обучающего корпуса

Авторы сформировали три подвыборки на основе DeepScaleR-40K.

Эффективность модели в трех нижеупомянутых условиях
Эффективность модели в трех нижеупомянутых условиях
  1. Полный набор: содержит 40 000 задач, с доминированием простых (8/8).

  2. Фильтрованный: убраны все задачи с 8/8 решений, остаётся 26 000 задач.

  3. Агрессивно отфильтрованный: остаются только те задачи, где менее половины решений успешны. 19 000 задач.

Тесты показали: слишком лёгкий или слишком сложный корпус одинаково бесполезен. Лучший результат даёт сбалансированная, отфильтрованная по сложности выборка.

Rollout-диверсификация и контроль температуры

Обучение с подкреплением предполагает сравнение хороших и плохих траекторий. Если модель генерирует однотипные ответы — никакого обучающего сигнала не возникает. Поэтому необходимо управлять разнообразием выборок, особенно в задачах reasoning, где одна и та же цель может быть достигнута разными логическими путями.

Метрики и управление diversity

Для оценки диверсификации использовалась метрика distinct-4 — доля уникальных 4-грамм по отношению к общему числу токенов.

Разнообразие развертывания с температурой выборки
Разнообразие развертывания с температурой выборки

Авторы протестировали зависимости между:

  • температурой генерации (temperature)

  • точностью (mean@32)

  • разнообразием (distinct-4)

Результаты показали, что низкая температура (t=0.6) дает стабильность, но подавляет разнообразие. Рост температуры до 1.4–1.5 даёт всплеск разнообразия, при этом точность не проседает критично. При t>1.55 начинается коллапс: модель генерирует шум.

Динамическая адаптация температуры

Интересный ход: Polaris не фиксирует temperature, а постепенно увеличивает её на каждой фазе обучения, адаптируясь к уменьшению энтропии модели (модель начинает генерировать одно и то же).

Стадия

Polaris-4B

Polaris-7B

1

1.4

0.7

2

1.45

1.0

3

1.5

1.1

Адаптивный механизм позволяет удерживать познавательный горизонт модели открытым, не давая ей застревать в уже найденных паттернах.

Масштабирование вывода: CoT без дообучения

Chain-of-Thought требует длинного вывода. Но обучать RL на последовательностях 32–52K токенов — дорого и неэффективно. Проблема в том, что даже если задан max_seq_len=52K, в реальности большинство батчей не доходит до этой длины (clip_ratio < 10%).

Решение Polaris — использовать инференсное масштабирование, сохранив тренировку на коротких примерах.

Yarn: позиционная экстраполяция RoPE

Для этого используется Yarn, схема масштабирования Rotary Position Embeddings:

"rope_scaling": {
  "attn_factor": 1.0,
  "factor": 1.5,
  "rope_type": "yarn"
}

Yarn позволяет на inference использовать длины, в полтора раза превышающие обучающие, без потери точности.

Результаты тестов на задачах AIME:

Длины >32K:

  • Без Yarn: точность падает до 26%

  • С Yarn: растёт до 50%+

Фактически, это позволяет применять "train-short, test-long" стратегию без переобучения.

Устойчивость RL: как Polaris справляется с нулевым градиентом

Обучение моделей рассуждения через Reinforcement Learning, особенно с маленьким размером rollout-батча (n=8), сталкивается с одной системной проблемой: разреженность наград. В задачах на математическое мышление, CoT, логический вывод — неудачи случаются часто. И бывает, что на один и тот же prompt модель 8 раз подряд выдаёт неверный ответ. Результат: batch без положительных примеров → нулевой градиент → потерянный шаг обучения.

В традиционном GRPO или PPO это приводит к стагнации: модель не получает сигнала, не знает, куда двигаться. А повторное прогоняние тех же промптов — дорого и неэффективно.

В Polaris были предложены два простых, но мощных способа преодоления этого "эффекта пустого батча".

Rollout Rescue Buffer: мягкое введение памяти в RL

Каждая задача в обучающем корпусе в Polaris имеет ассоциированный буфер успешного ответа. Это кэш, где сохраняется последний известный корректный вывод для данного prompt'а, полученный на любом этапе обучения.

Сценарий работы:

  1. Модель генерирует 8 rollout'ов для задачи X.

  2. Все они оказываются неуспешными (accuracy == 0/8).

  3. Если для задачи X в прошлом был успешный rollout — он берётся из буфера.

  4. Один из 8 текущих провальных rollout'ов заменяется этим буферным.

Замена делается не полностью — только один из 8 rollout'ов. Это не нарушает статистику RL, потому что reward всё равно применяется выборочно.

Результат: батч всегда содержит хотя бы один сигнал обучения, и модель получает ненулевой градиент, даже если "сегодня ей не идёт".

Intra-Batch Informative Substitution:

Второй механизм работает внутри текущего батча — без использования внешней памяти. Если часть задач оказалась "информативной" (т.е. среди 8 rollout'ов есть как минимум один успешный), а другая часть полностью провалена, Polaris делает следующее:

  1. Находит "информативные" примеры — задачи с mix из 0 и 1 reward.

  2. Эти примеры дублируются и подставляются на место "мертвых" задач (0/8).

  3. Таким образом, весь батч наполняется примерами, от которых можно получить полезный градиент.

Оба механизма — Rollout Rescue и Intra-Batch Substitution — решают проблему reward sparsity при небольших batch-size. Замены работают только в рамках already validated outputs, reward-функция остаётся бинарной, и никакой генерации "из будущего" не происходит.

Эффект в обучении:

  • Значительно меньше "мёртвых шагов"

  • Устойчивый рост reward на каждой итерации

  • Повышение sample efficiency RL

Отказ от KL и Entropy

Вместе с мерами по устойчивости, в Polaris отказались от двух популярных, но проблемных компонентов в RLHF:

Почему был убран KL

KL-дивергенция между текущей политикой и SFT-моделью используется во многих RLHF-реализациях (включая PPO) для стабилизации. Но в задачах reasoning это становится тормозом: модель ограничена рамками SFT-поведения и не может исследовать новые стратегии рассуждения.

В Polaris KL полностью убран, чтобы модель могла отклоняться от SFT и формировать новые логические цепочки — особенно если они нестандартные, но правильные.

Почему был убран Entropy loss

Идея поощрять энтропию в output'ах на практике оборачивается нестабильностью:

  • На поздних этапах RL энтропия может расти хаотично

  • Это ведёт к коллапсу: модель начинает выдавать случайные токены

В Polaris отказались от энтропийного поощрения, сосредоточившись на чистом outcome-based reward.

Вместо всего этого используется surrogate loss с upper clipping bound, аналогичный DAPO.

Результаты и сравнение

Чтобы оценить эффективность моделей Polaris, авторы провели серию тестов на популярных математических бенчмарках, включая AIME24, AIME25, Minerva Math, Olympiad Bench и AMC23. Все тесты проводились по строгим, воспроизводимым условиям: по 32 прогонки для каждой задачи (или 4/8 — где указано), с едиными sampling-параметрами.

Все модели запускались в следующих условиях, кроме Qwen3, где применялись более консервативные значения по умолчанию:

sampling_params = SamplingParams(
    temperature=1.4,
    top_p=1.0,
    top_k=20,
    max_tokens=90000  # ~90K токенов: для CoT максимальная длина критична
)

Polaris-4B не просто обгоняет другие модели «в среднем» — он делает это на высоких температурах и длинных ответах, где большинство baseline начинают деградировать.

Базовый тест включал задачи вроде:

Every morning Aya goes for a 9-kilometer-long walk...
Suppose Aya walks at s + 1/2 kilometers per hour.
Find the number of minutes the walk takes her, including t...

Такие задачи требуют цепочек логических рассуждений, рассуждения на уровне алгебры, дробей, времени, скорости — типичная задача CoT, где без грамотного вывода на десятки токенов ответ невозможен.

Результаты по всем бенчмаркам

Модель

AIME24 avg@32

AIME25 avg@32

Minerva avg@4

Olympiad avg@4

AMC23 avg@8

Deepseek-R1-Distill-Qwen-7B

55.0

39.7

36.7

56.8

81.9

AReal-boba-RL-7B

61.9

48.3

39.5

61.9

86.4

Skywork-OR1-7B-Math

69.8

52.3

40.8

63.2

85.3

POLARIS-7B-Preview

72.6

52.6

40.2

65.4

89.0

Deepseek-R1-Distill-Qwen-32B

72.6

54.9

42.1

59.4

84.3

Qwen3-32B

81.4

72.9

44.2

66.7

92.4

Qwen3-4B

73.8

65.6

43.6

62.2

87.2

POLARIS-4B-Preview

81.2

79.4

44.0

69.1

94.8

Polaris-4B обходит всех в своём классе

Модель с 4B параметрами показывает лучшую точность по всем задачам, включая:

  • AIME25: 79.4% (против 65.6% у Qwen3-4B)

  • Minerva Math: 44.0% (на уровне Qwen3-32B)

  • Olympiad Bench: 69.1% — абсолютный рекорд

  • AMC23: 94.8% — результат, ранее достижимый только у 32B моделей

Это выдающийся результат, особенно учитывая, что речь идёт о модели, которую можно развернуть на одном потребительском GPU (24–48 GB VRAM).

Polaris-4B почти догоняет Qwen3-32B, но весит в 8 раз меньше

При меньшем количестве параметров Polaris-4B даёт:

  • На AIME25 — более высокий результат, чем Qwen3-32B

  • На Minerva и Olympiad — почти идентичные цифры

Это показывает, что подход Polaris к выбору задач, управлению сложностью и длиной вывода даёт непараметрическое преимущество: модель использует свои возможности более эффективно.

Polaris-7B опережает всех конкурентов на 7B

Хотя разрыв между Polaris-7B и Qwen3-32B ожидаемо велик, в своей весовой категории модель обходит все аналоги, включая:

  • Deepseek-7B (на 13% ниже на AIME24)

  • Skywork и AReal-boba — тоже уступают по всем показателям

Длинный вывод — ключевой фактор

Если ограничить max_tokens стандартным 4096 или 8192, Polaris теряет большую часть своего преимущества. Именно за счёт генерации длинных, разветвлённых цепочек рассуждений (до 90K токенов) модель проявляет свою силу.

Отсюда практический вывод: если вы тестируете reasoning-модель, ограничивая длину вывода — вы не тестируете её вовсе.

Чему можно научиться у Polaris

  1. Сложность данных — не метрика, а инструмент. Сбалансированное распределение критично для эффективности RL.

  2. Sampling temperature — управляемая ось обучения, не просто фиксированная гиперпараметрическая настройка.

  3. Inference-time RoPE scaling даёт прирост без затрат на переобучение.

  4. Небольшие инженерные хаки (buffer, swap) радикально улучшают стабильность RL.

  5. Не все loss-функции полезны. Иногда лучше убрать регуляризаторы, чем на них полагаться.

Ссылки


Если вам интересны современные достижения в области искусственного интеллекта и нейросетей, приглашаем вас посетить два предстоящих открытых урока, которые помогут лучше понять, как работают передовые модели и их практическое применение.

Чтобы ознакомиться с полным списком курсов и выбрать подходящую программу по Data Science и машинному обучению, заходите в каталог. А чтобы не пропустить новые открытые уроки, следите за обновлениями в календаре открытых мероприятий.

Теги:
Хабы:
+8
Комментарии9

Публикации

Информация

Сайт
otus.ru
Дата регистрации
Дата основания
Численность
101–200 человек
Местоположение
Россия
Представитель
OTUS