Как обучаются алгоритмы машинного обучения и в чем их основной трюк?
Что проверяют
Понимаете ли вы обучение как задачу оптимизации, а не как «модель находит закономерности». Интервьюер ждёт слов «функция потерь», «градиент», «обобщение» и того, что не все алгоритмы учатся градиентом. Следом почти всегда спрашивают про переобучение и как его заметить.
Как отвечать
Сформулируйте суть одной фразой: модель это параметризованная функция, обучение это подбор параметров, при которых средняя ошибка на обучающих примерах минимальна. Это называется минимизацией эмпирического риска.
Дальше разложите на части:
- функция потерь: MSE для регрессии, логистическая потеря (кросс-энтропия) для классификации. Она должна отражать задачу, а для градиентных методов ещё и быть дифференцируемой;
- оптимизация: у линейной регрессии есть решение в замкнутом виде, но на больших данных и в нейросетях параметры сдвигают против градиента мини-батчами (SGD, Adam). Градиент нейросети считает обратное распространение ошибки;
- другие способы: дерево решений строится жадно, перебором разбиений по критерию Джини или энтропии. Градиентный бустинг добавляет деревья, каждое из которых приближает антиградиент потерь по предсказаниям текущего ансамбля. kNN вообще не обучается, а хранит выборку.
Главный трюк в том, что минимизируем мы ошибку на известных данных, а нужна нам ошибка на новых. Мост между ними даёт предположение, что данные из одного распределения, плюс контроль: отложенная выборка или кросс-валидация, регуляризация (L1, L2, dropout, ограничение глубины деревьев), ранняя остановка. Хорошо упомянуть компромисс смещения и разброса: простая модель недообучается, сложная запоминает шум.
Где спотыкаются
Отвечают списком этапов проекта: сбор данных, предобработка, выбор модели. Это жизненный цикл, а спрашивали про механизм обучения.
Говорят, что все модели учатся градиентным спуском. Классические деревья и kNN так не работают, и интервьюер проверит это следующим вопросом.
Путают валидационную и тестовую выборки и подбирают гиперпараметры по тесту. Итоговая оценка выходит оптимистичной, потому что тест фактически участвовал в обучении.