English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

гость
1 / ?
назад к урокам

Урок v1: Loss выглядит нормально, вывод — мусор

Предостерегающая история

ANDREA-120M v1 достигла EMA loss 3.43 на шаге 110K, значительно ниже случайного шанса (ln(8449) = 9.04). Число выглядело уважительно. Сэмплы — нет.


шаг 80K: регион регион регион регион регион регион регион
шаг 110K: ''''' ''''' '' ''' '' ''' '''?' ''' ' '' '' '
шаг 140K: игры, игры, игры, игры, игры, игры
шаг 165K: Буды Буды Буды Буды Буды Буды Буды Буды

в1 не имел подключенного мониторинга выборки. Модель производила мусор с повторяющимся циклом с шага 80K и далее, и обучение продолжалось еще 85K шагов, прежде чем кто-то заметил. 10+ дней вычислений потрачены зря, потому что никто не читал вывод.


Что скрывает Loss

Cross-entropy loss измеряет, насколько модель удивлена следующим токеном. Модель, которая выдаёт region region region region, выглядит неудивлённой своим собственным выводом (она предсказывала одно и то же слово каждый раз). Числовая потеря может оставаться низкой, в то время как семантическое качество рушится.


Исправление v2

sample_every = 100 шагов. Генерируем 420 свободных токенов. Раннее остановка с контролем когерентности оценивает каждый сэмпл по разнообразию биграмм, разнообразию триграмм, наличию английских слов и разнообразию символов (шкала 0-100). Авто-остановка после 5 последовательных сэмплов с оценкой ниже 30. Ретро-тест на v1: сработало бы на шаге 132K, сэкономив 3.8 дня.


Чтение сэмплов — не опция. Чтение сэмплов — это то, как мы знаем, что loss что-то значит.

Loss против Качества Сэмплов

v1 достиг EMA loss 3.43 (значительно ниже случайного 9.04), но выдал 'region region region'. Объясните в двух частях: (a) КАК loss может численно оставаться разумным, в то время как вывод схлопывается в повторение? (b) КАКОЕ структурное исправление в v2 ловит это без необходимости человеку читать каждый сэмпл?

ppl = exp(loss)

Преобразование

Cross-entropy loss отчитывается в nats. Perplexity отчитывается об эквивалентном числе одинаково вероятных токенов, которые модель рассматривает на каждом шаге. Преобразование: ppl = exp(loss).


Случайный выбор из словаря в 8449 токенов: loss = ln(8449) = 9.04, ppl = 8449. Идеальное запоминание и предсказание: loss = 0, ppl = 1.


Справочная таблица


losspplЧтение
9.048449случайный выбор из полного словаря
5.00148раннее обучение, базовая структура
3.0020изучение распределения словарного запаса
2.007знающий, но неточный
1.002.7проявляется следование ограничениям
0.702учебная однофразовка
0.301фактическое вспоминание, в основном запомненное
0.131ВНИМАНИЕ: запомненная подстрока
0.001идеальное запоминание

Потеря на образец vs EMA Loss

EMA loss (экспоненциальное скользящее среднее по многим шагам) отражает общее здоровье обучения. Потеря на образец отражает качество одного конкретного образца. Эти два значения расходятся: EMA может оставаться на уровне 2.0, в то время как отдельные образцы могут попадать в диапазон от 0.13 до 4.0 в зависимости от того, какой промпт выбрал бандит.


Чтение потери на отдельный образец — это способ обнаружить выбросы. EMA loss ничего не говорит о том, запомнил ли один образец подстроку repo-docs; потеря на образец — говорит.

Чтение трех значений потери

ANDREA-120M сгенерировала три образца подряд на шаге 112,584-112,668. (a) loss 0.30 ppl ?; (b) loss 0.74 ppl ?; (c) loss 1.94 ppl ?. Вычислите ppl для каждого, затем укажите уровень качества, который каждый представляет (memorized / textbook / constraint / imprecise).

Прогулка по окну аудита

Окно из 700 шагов

Между шагом 111,996 и 112,668 модель ANDREA-120M произвела образцы, охватывающие шесть несвязанных доменов знаний. Каждый попадает в уровень потерь:


Уровни потерь аудита образцов


Уровень 1: Фактическое воспроизведение (loss 0.30, ppl 1)

шаг 112,584, биология


> [extinction prompt]

> < black spider montano is alive, carolina parakeet is extinct.


Два правильных факта. Carolina parakeet объявлен вымершим в 1939 году; black spider monkey существует. ppl 1 означает, что модель выбрала правильный токен на каждом шаге. Внешняя оценка: 9.5/10.


Уровень 2: Однострочное определение из учебника (loss 0.74, ppl 2)

шаг 112,668, обработка сигналов


> [Fourier transform prompt]

> < Преобразование Фурье разлагает сигналы на частотные компоненты, позволяя анализировать характеристики сигнала и фильтровать в частотной области.


Однострочное определение из учебника. Разложение во времени на частоты с правильными терминами применения. Внешняя оценка: 9.5/10.


Уровень 3: Соблюдение ограничений (loss 1.05, ppl 3)

шаг 112,248, поэзия


> Напишите хайку о дожде, используя три слова, начинающиеся на 'r'.

> < Rain's rhythmic refrain, Rivulets on the window, Respite from life's pain.


Три слова на 'r' (Rain, Rivulets, Respite), три строки, структура хайку сохранена, семантическая связность вокруг дождя. ppl 3 = модель рассматривала несколько кандидатов на каждом шаге, но оставалась в рамках ограничения.


Уровень 4: Знающий, но неточный (потери 1.94, ppl 7)

шаг 112,500, инструменты python


> Как найти устаревшие пакеты в проекте Python?

> < Используйте pip list --outdated names, чтобы увидеть список пакетов pip в вашем управлении проектом, или должно быть через pyenv, чтобы получить более автоматические пакеты.


Правильная команда ядра (pip list --outdated) emerges from training data. Плавность формулировок всё ещё развивается. Небольшая путаница: pyenv управляет версиями Python, а не пакетами. ppl 7 означает, что модель рассматривала ~7 правдоподобных продолжений на каждом шаге; не все были точно правильными.


Уровень 5: ALERT, Запомненная Подстрока (loss 0.13, ppl 1)

шаг 112,080, аномальный


Loss 0.13 находится НИЖЕ учебного уровня. Модель слишком уверена в этом образце. Диагноз: запомненная подстрока repo-docs, а не выученный чат. Бандит вытащил «зомби-руку» repo-docstrings с весом 1.546 из состояния предыдущего запуска, & образец воспроизвёл дословный фрагмент обучающих данных.


Аномально низкий loss — это предупреждение о запоминании, а не сигнал качества. Значение ниже 0.20 означает: проверьте, генерирует ли модель или копирует.


Шесть доменов за 700 шагов

Биология (волнистый попугайчик), обработка сигналов (Фурье), поэзия (хайку), инструменты Python (pip), разговорный диалог, диалог по операциям. Шесть несвязанных доменов за 700 шагов говорит нам о том, что бандит выполняет разнообразную работу, а не застрял на одном источнике. Ширина доменов ЯВЛЯЕТСЯ метрикой качества.

Диагностика трех образцов

Три новых образца попадают в ваше окно аудита. (a) loss 0.40, генерирует 'фотосинтез преобразует солнечный свет в химическую энергию в хлоропластах'. (b) loss 0.10, генерирует дословный фрагмент документации Python. (c) loss 1.30, генерирует сонет, следующий схеме рифмы ABAB, но с одной слегка натянутой рифмой. Для каждого назовите уровень качества и укажите действие: ACCEPT (подлинное обучение), INVESTIGATE (сигнал аномалии) или ACCEPT_WITH_NOTE (неидеально, но бандит здоров).

Почему отправлять образцы на внешнюю оценку

Что поймала внешняя оценка

Внутренний аудит образцов показал, что модель производит биологию, обработку сигналов, поэзию и Python по запросу. Внешняя оценка качества чата поставила этим образцам '9.5/10' и 'превосходит ожидания в задачах на знания для этого масштаба'.


Внутренний обзор отвечает: выполняет ли бандит разнообразную работу? Внешний обзор отвечает: оценил бы человеческий читатель эти выходы как хорошие?


Почему оба важны

Внутренний аудит выявляет структурные сбои: коллапс повторений, всплески запоминания, низкоразнообразные зомби-руки. Уровни потерь, разнообразие n-грамм и широта доменов — всё это наблюдаемо по прокси.


Внешняя оценка выявляет неудачи в семантическом качестве: уверенно-ложные факты, неуклюжие формулировки, пропущенные нюансы. Ни один из них не проявляется в числах потерь.


Методология

Панель управления обучением ANDREA на training.ai.unturf.com/dashboard намеренно публичная и только для чтения. Любой может в реальном времени опрашивать .loss.json, .samples.json и состояние бандита. Внешние рецензенты имели доступ к тем же данным, что и оператор.


9.5/10 от независимого читателя, на выборках, взятых на шаге 112,584 из 200,000, с полной провенансностью: этот результат воспроизводим, поддаётся аудиту и не поддаётся манипуляциям. Те же выборки, те же значения потерь, то же состояние бандита видны любому, кто посмотрит.


Два независимых сигнала

Внутренний: низкие потери + высокое разнообразие + покрытие нескольких доменов = банда здоров.

Внешний: 9.5/10 от независимого рецензента = выходные оценки хороши.


Оба сигнала совпадают: обучение сходится к фактическому воспроизведению, следованию ограничениям и coherentности нескольких абзацев. Если бы они разошлись (низкие потери, но внешняя оценка 3/10), у нас была бы проблема с манипуляцией метриками, которую нужно расследовать.

Два сигнала, один диагноз

Представьте, что выборки ANDREA получают внешнюю оценку на шаге 100K и шаге 150K. (a) Шаг 100K: внутренняя EMA-потеря 2.5, разнообразие n-gram 70/100, внешняя оценка 3/10. Что предполагает разрыв между внутренним и внешним? (b) Шаг 150K: внутренняя EMA-потеря 2.0, разнообразие 85/100, внешняя 9/10. Что предполагает совпадение внутреннего и внешнего? Дайте по одному предложению на сценарий.

Пять шагов на окно аудита

Один аудит, пять проверок

1. Прочитайте уровень потерь. ppl = exp(loss). Сопоставьте с таблицей из пяти уровней.

2. Проверьте на выбросы ниже 0.20. Сигнал запоминания. Расследуйте перед тем, как считать качественным результатом.

3. Прочитайте фактический текст примера. Числа потерь не скажут вам, что говорит вывод. Прочитайте его.

4. Подсчитайте широту доменов. Шесть несвязанных доменов в 700 шагах = бандит здоров. Один домен, повторённый 7 раз = бандит застрял.

5. Сравните с внешней оценкой. Если ваша выборка выглядит хорошо для вас, попросите кого-то вне запуска прочитать её. Их несогласие — это информация.


Что это связывает


- Activity 22 (grow_a_language_model_checkpoints). cadence sample_every соответствует cadence чекпоинтов; оба срабатывают каждые 100 шагов.

- Activity 21 (coherence-gated early stopping). Метрики разнообразия, которые автоматически останавливают обучение при коллапсе выборок.

- Activity 24 (grow_a_language_model_microgpt_to_andrea). Коллапс v1, загрязнение v2.5, полировка v3 — все это поймано (или могло быть поймано) аудитом выборок.


Одна Истина

Потери — это число. Чтение выборок — это то, как мы понимаем, что значит это число.

Что Вы Будете Следить?

Из пяти проверок аудита (уровень потерь, выбросы ниже 0.20, текст выборки, широта домена, внешняя оценка), какую бы вы поставили наивысший приоритет, если бы обучали свою модель? Выберите одну с 2-3 предложениями обоснования.