L2 Открытый урок · Новичок

L2.1. Как учатся машины: данные, модель, метрики

Типы машинного обучения, train, validation и test, переобучение и почему accuracy обманывает. Precision, recall и F1 на примере спам-фильтра.

Объём
4 урока · 8 часов
Компетенции
AI-FUND-04·A, MATH-02·F

Решения задач уровня, наборы данных для практикумов и эталон проекта PRJ-02 выдаются ученикам курса. На сайте открыты теория, практикумы и задания.

Данные → модель → предсказание

Машинное обучение — это способ получить программу не написанием правил, а подбором параметров по примерам. Спам-фильтр не содержит списка «плохих слов», составленного человеком: он видел миллионы писем с пометкой «спам / не спам» и подобрал внутренние числа так, чтобы ошибаться как можно реже.

Тип обучения Откуда «правильные ответы» Пример
С учителем (supervised) люди разметили примеры письмо → «спам»
Без учителя (unsupervised) ответов нет, модель ищет структуру группы похожих клиентов
Самоконтролируемое (self-supervised) ответ спрятан в самих данных закрыть слово в тексте и угадать его — так учатся LLM
С подкреплением (RL) награда за действия игра, где за победу +1

Почему LLM учатся «самоконтролируемо»: следующее слово в тексте — уже готовый правильный ответ. Не нужно размечать вручную, поэтому можно учиться на огромных объёмах текста.

Train, validation, test и переобучение

Данные делят на три части. На train модель учится. На validation выбирают настройки. На test — один раз, в конце — честно измеряют качество.

Переобучение — модель «зазубрила» обучающие примеры и плохо работает на новых. Признак: на train ошибок почти нет, на test — много. Аналогия: студент выучил ответы к билетам, а не предмет.

Метрики: почему accuracy обманывает

Спам-фильтр проверили на 1000 письмах, из них 100 — спам. Фильтр пометил как спам 90 писем, из которых 80 действительно спам.

На самом деле спам На самом деле не спам
Фильтр сказал «спам» 80 (верно найден — TP) 10 (ложная тревога — FP)
Фильтр сказал «не спам» 20 (пропущен — FN) 890 (верно пропущен — TN)
  • Accuracy (доля верных) = (80 + 890) / 1000 = 0,97.
  • Precision (из помеченных — сколько действительно спам) = 80 / 90 ≈ 0,889.
  • Recall (из всего спама — сколько найдено) = 80 / 100 = 0,80.
  • F1 (баланс precision и recall) = 2 · P · R / (P + R) ≈ 0,842.

А теперь «фильтр», который всё считает не спамом: accuracy = 900 / 1000 = 0,90, но recall = 0: он не нашёл ни одного спама. Высокая accuracy при дисбалансе классов ничего не значит. Выбирайте метрику под цену ошибки: пропустить мошенничество дороже ложной тревоги → важнее recall.

Практикум: метрики в таблице

В табличном редакторе (Excel, Google Таблицы, LibreOffice) — колонки «истина» и «предсказание» для 40 писем (набор выдаёт преподаватель). Посчитайте TP, FP, FN, TN формулами, затем accuracy, precision, recall, F1. Сравните с моделью «всё не спам». Ответьте письменно: какую метрику выбрать для фильтра банковского мошенничества и почему.

Диагностика уровня

С какого уровня начать?

Оставьте контакты — свяжемся, зададим несколько вопросов об опыте и целях и подскажем уровень входа: с нуля, с середины программы или через Fast Track для разработчиков.

Или напишите: hello@superint.ru