Яндекс меняет метод машинного обучения на CatBoost

Яндекс выпустил новый алгоритм машинного обучения CatBoost, работающий на основе градиентного бустинга. Компания выложила библиотеку CatBoost в открытый доступ в репозитории GitHub, она доступна на языках программирования Python и R. говорится в блоге компании.

CatBoost (categorical boosting) или бустинг с учетом категориальных признаков должен в скором времени заменить Матрикснет — метод машинного обучения, с помощью которого строится формула ранжирования на поиске Яндекса, а также осуществляется отбор объявлений в Рекламной сети. Кроме того, на технологии Матрикснет основана Крипта, задача которой — определять аудиторию и исследовать поведение в интернете ее типичных представителей.

Алгоритм устойчив к переобучению, учитывает множество факторов ранжирования и их комбинаций, а обучается при этом на относительно небольшом объеме данных. Большинство механизмов, работающих на градиальном бустинге, используют данные в числовом виде. По словам специалистов Яндекс, это приводит к потери части информации и снижает точность итогового решения. В отличие от них, CatBoost учитывает категориальные признаки — признаки, которые принимают одно из конечного количества значений. CatBoost воспринимает разнородные данные в их исходном виде —  перевод в числовую форму больше не требуется.