Проверки и улучшения производительности обучения
Состояние на 9 сентября 2026 года. Ограниченный поиск и инструменты измерения реализованы; оставшаяся работа сосредоточена на достоверности прогноза, устойчивости политики и независимой приёмке.
Руководство описывает API, сводка результатов — измерения и версии evidence, общий план — цели и зависимости. Просмотренные notebook holdout и post_search_dev не являются независимой итоговой оценкой.
Статус пяти этапов
| Этап | Реализовано и проверено | Что остаётся |
|---|---|---|
| 1. Измерения | Аудит потоков, fit/rows/trees, стадий, source/config и попыток; парные DEV-пробы | Контролируемые повторы wall time и покрытие ресурсными наблюдениями |
| 2. Выбор модели | Initial/confirmation, достаточность ES/классов, парное сравнение, условный прогноз CV/refit/FS/HPO | Срез 2.3 частичный: точность, охват и полный wall time |
| 3. FS и HPO | Ограниченный FS, точный OOF-кеш, wide-контроль, внутренний HPO ES, перенос итераций | Редкие классы и качество всей адаптивной процедуры |
| 4. Статистика | Scorer/cache-пути и ансамбль с сохранением критериев и проверками эквивалентности | Эквивалентность при расширении поддерживаемых случаев |
| 5. Приёмка | Контрольный корпус, финальные Otto/Home, фиксированное семейство/FS, внешняя NI API | Независимые метки, согласованные пороги, production-сравнение |
1. Сопоставимость измерений
Основной baseline/fast-корпус: 15/16 режимов, 36/38 fit, 17 пар. В обоих режимах native/BLAS4, seed42, HPO до пяти trials на семейство, отключённый прикладной кеш и записанный порядок исполнения. HPO-off остаётся выключенным. Основной результат берётся только из полностью завершённой и прошедшей проверки попытки режима.
Замороженный Home fast содержит два завершённых fit, но исключён из основного корпуса из-за ошибки отчётной ячейки. Исправленный финальный Home и финальный Otto с confirmation_rows=65536 — отдельное evidence; они не дополняют старую сводку до 19 однородных пар.
Backend-время не прибавляется к exclusive stages. Системные RAM/CPU-наблюдения имеют пропуски и не доказывают причину изменения длительности. Разные метрики и single/ensemble-сценарии не объединяются в среднее качество.
Оставшаяся проверка: выбрать ограниченный набор репрезентативных сценариев для последовательных повторов с одинаковыми границами подготовки, кеша и fit/refit. Сохранять фактическую работу и покрытие интервалов ресурсными наблюдениями. Полная серия ноутбуков не нужна после каждой доработки.
2. Выбор семейства и стоимость завершения
2.1. Достаточность начального ресурса
Пробы сохраняют исходные границы train/ES/test, пропорции классов при ограничении строк и представительные folds. Не-ES модели и ES-модели получают одинаковую fit-часть. Используются доступные исходные признаки; max_features ограничивает FS, производные target encoding исключены из модельных проб.
Достаточность оценивается по эффективным строкам, классам, ES и итерациям. Временной n_es=1 означает одну строку согласно splitter-контракту; его нельзя считать периодом без изменения постановки.
Оставшаяся проверка: измерить поведение при редких классах и малом временном ES на DEV, сохраняя paired OOF, class counts и итерации. Недостаточность должна оставаться видимой в отчёте, включая исчерпание бюджета.
2.2. Подтверждение выбора
Initial и confirmation имеют отдельные ограничения. Подтверждение сравнивает не более двух семейств на большем ресурсе; default confirmation_rows=65536, confirmation_iterations=256, confirmation_folds=2. Выбор учитывает парную неопределённость и заданный допуск. Единственное явно указанное семейство не запускает такой поиск.
Финальный Otto выбрал LightGBM в обоих fit: log loss 0.4763246603 равен baseline fit01, но выше baseline fit02 на 0.0015379052. Финальный Home сохранил CatBoost: ROC-AUC 0.7752502351 равен baseline fit01, но ниже baseline fit02 с применённым ансамблем на 0.0039915775. Это диагностика на просмотренном holdout.
Оставшаяся проверка: подтвердить устойчивость на согласованных DEV-сценариях без настройки по итоговому holdout. Рост confirmation-ресурса не гарантирует правильный ранг на всех задачах.
2.3. Условный прогноз FS/HPO/CV/refit — частично завершён
До окончательного выбора семейства реализован прогноз оставшегося обучения. Фиксированный поддерживаемый FS-рецепт профилируется на двух ограниченных train-выборках исходного DEV-fold с сохранением seed. HPO профилируется на двух ресурсах с центральными параметрами пространства поиска. Эти компоненты дополняют прогноз CV/refit.
Несколько FS-альтернатив, неподдерживаемый или незавершённый профиль дают unknown. При неизвестной компоненте стоимость не служит основанием заменить лидера по качеству. Уже выполненные пробы, статистика, ансамбль, I/O и явно перечисленная подготовка исключены; это не прогноз полного wall time.
Синтетическая проверка: 1600 строк, 12 признаков, 23 завершённых fit без ошибок, профилирование FS/HPO около 0.0473 с. Перенос между ресурсами дал ошибки −60.35% для FS и −67.29% для HPO. Прогноз HPO при центральных параметрах и время адаптивного HPO с подготовкой имеют разные границы; их отношение не является корректной оценкой ошибки.
Оставшаяся работа:
- Согласовать прогнозируемую величину, допустимую ошибку и бюджет профилирования.
- На одинаковых параметрах, folds и траектории сравнить прогноз с фактом; отдельно исследовать фиксированные расходы, прогрев, ES и ширину после FS.
- Проверить перенос на несколько размеров и семейств; сохранять неизвестные компоненты и неопределённость.
- Для полного wall time отдельно измерить подготовку, статистику, ансамбль и I/O.
- Проверить влияние прогноза на выбор семейства и бюджет с сохранением критерия качества.
Код и synthetic-проверка подтверждают исполнение контракта, а не точность на реальной задаче.
3. Отбор признаков и HPO
3.1. Устойчивость ограниченного FS
Исполнение рецепта ограничивает строки, повторения и fit. Одинаковые subset/OOF-оценки переиспользуются в совпадающем контексте. Полная процедура сравнивает subset с готовым широким контролем; остановка бюджета не принимает непроверенный subset. Глобальный выбор на DEV маркируется post_search_dev.
Шесть пар Adult/Credit дали 246 завершённых backend fit без ошибок: 222 FS и 24 оценочных. Прямой диагностический runner выполнял FS и DEV-оценку без полного AutoML wide-контроля. Adult сохранил одинаковые шесть признаков и score на всех seeds; FS fit уменьшились с 62 до восьми, отношение медиан FS-времени — 14.20.
На Credit число FS fit осталось равным двум, уменьшились строки и деревья; отношение медиан времени — 1.44. При трёх положительных примерах в каждой ES/test-части seed43 потерял V7 и average precision снизилась на 0.316976; seed44 потерял V9 и выросла на 0.066379. Изменились фактические ES-итерации оценочных моделей. Причинный вклад отдельных изменений не установлен.
Оставшаяся проверка: оценить достаточность положительного класса, стабильность признаков и полный wide/subset-путь. Сохранить парные OOF и score по folds; отделить влияние строк, деревьев и повторов. Выигрыш Adult не доказывает эквивалентность ограниченного FS на редких классах.
3.2. HPO и продолжение
В поддерживаемых сценариях ES выделяется внутри inner-train, inner-test оценивает trial. HPO выполняется для выбранного семейства; завершённые trials и подготовка переиспользуются при совпадении контекста. Итерации переносятся в refit, неуспешные trials не создают фиктивный настроенный результат.
Проверка стоимости HPO входит в 2.3. Независимая оценка качества относится ко всей адаптивной процедуре, включая FS, ES, tuning и wide/subset-выбор.
4. Статистика и ансамбль
Оптимизированы встроенные аддитивные и поддерживаемые ранговые scorer/cache-пути, а также вычисления ансамбля. Условия применения проверяются; неподдерживаемые пользовательские и граничные случаи сохраняют общий путь. Критерии, bootstrap-ресурс и правила принятия ансамбля сохраняются.
При расширении проверяются веса, ties, вырожденные классы, clipping, RNG, распределения статистики и пограничные решения. Замеры выполняются на фиксированных предсказаниях без обучения. Эквивалентность статистики не доказывает качество изменённой поисковой политики.
5. Независимая оценка и production
Фиксированный Adult family/FS-сценарий завершён за 503.46 с обучения: 42 fit, ноль backend-ошибок, без HPO и модельных проб. CatBoost и null_importance используют параметры семейства по умолчанию; широкий контроль сохранил ROC-AUC 0.9224611672. Это проверка пользовательского пути, не production-сравнение и не воспроизведение HPO-параметров.
QualityContract/PredictionBatch фиксируют метрику, классы, абсолютный допуск, bootstrap, SHA моделей и предсказаний, порядок row IDs, веса и блоки до меток. Оценка принимает NPZ меток, связанный с заранее заданным SHA хранителя. Неизвестная training/tuning-история остаётся неизвестной; fingerprints не доказывают происхождение данных или отсутствие прежнего просмотра. В этой API pr_auc означает average precision.
Оставшиеся условия приёмки:
- Согласовать сценарий, метрику, допуск, период, зависимые блоки и численные цели времени.
- Получить внешний набор и полные inventories строк обучения, FS, ES, tuning и калибровки обеих моделей; проверить независимость и происхождение артефактов.
- Зафиксировать predictions/receipt до меток; выполнить парную NI. Статистический вердикт и внешний review независимости публиковать раздельно.
- Для подтверждённого ручного churn-референса TUNE=False получить отсутствующие данные и измерить сопоставимый фиксированный рецепт. Раздельно учитывать FS, fit/refit, cold/warm, сохранение и inference.
- Принять либо отклонить конкретный сценарий по заранее согласованным условиям.
Независимые внешние метки пока не оценены. План частично завершён: механизм прогноза и процедура оценки доступны, точность стоимости, качество и production-результат требуют перечисленных проверок.