CatBoost

CatBoost
Логотип программы CatBoost
Тип Библиотека для машинного обучения
Автор ООО «Яндекс»
Разработчик Яндекс
Написана на C++, Python, JavaScript
Первый выпуск 18 июля 2017
Аппаратные платформы Linux, macOS, Windows
Последняя версия 1.0.0 (1 октября 2021)
Состояние Активна
Лицензия Apache 2.0
Сайт catboost.ai

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

18 июля 2017 года компания Яндекс выложила библиотеку с алгоритмом CatBoost в открытый доступ с открытой лицензией Apache 2.0[1][2][3], которая является продолжением и развитием закрытого проекта Яндекса — Матрикснет.

Матрикснет

[править | править код]

Закрытая система машинного обучения Матрикснет разрабатывалась компанией Яндекс с 2009 года для использования градиентного бустинга во внутренних проектах компании — в первую очередь, для построения формулы ранжирования поисковой выдачи[4].

18 июля 2017 года CatBoost была открыта для свободного доступа на GitHub компанией Яндекс под свободной лицензией Apache 2.0. CatBoost является системой машинного обучения использующая одну из оригинальных схем градиентного бустинга. CatBoost доступна для 64-разрядных операционных систем Linux, macOS и Windows. В ОС macOS для ускорения работы используется оригинальный фреймворк Core ML[англ.] — созданный Apple для методов машинного обучения.

Сравнивая CatBoost с подобными системами машинного обучения компаний Google (TensorFlow) и Microsoft (LightGBM), руководитель разработки систем машинного обучения «Яндекса» Анна Вероника Дорогуш отметила, что Google TensorFlow решает другой класс задач, эффективно анализируя однородные данные — например изображения. А «CatBoost работает с данными разной природы и может быть использован в связке с TensorFlow и другими алгоритмами машинного обучения в зависимости от конкретных задач». У Microsoft LightGBM российская разработка выигрывает по качеству, что демонстрирует таблица тестов с общепринятыми в машинном обучении сравнениями, но пока проигрывает в скорости — что Яндекс обещает исправить[5].

Применение

[править | править код]

В первую очередь технология CatBoost используется для улучшения результатов поисковой системы Яндекс, ранжирования персональной ленты рекомендаций — например в Яндекс.Дзен, для расчёта прогноза погоды и в других интернет-сервисах компании «Яндекс», где он показал себя лучше предыдущей технологии — «Матрикснета». В своих решениях для промышленности команда Yandex Data Factory также использует эту технологию, в частности она используется для оптимизации расхода сырья и предсказания дефектов при производстве.[источник не указан 830 дней]

CatBoost был внедрён Европейским центром ядерных исследований (ЦЕРН) при исследованиях на Большом адронном коллайдере (БАК) для объединения информации с различных частей детектора LHCb в максимально точное, агрегированное знание о частице. Используя для комбинирования данных CatBoost, учёным удалось добиться улучшения качественных характеристик финального решения, где результаты CatBoost оказались лучше результатов, получаемых с использованием других методов[6][7].

Примечания

[править | править код]
  1. Яндекс выложил в открытый доступ новую библиотеку машинного обучения. Яндекс. (18 июля 2017). Дата обращения: 8 июня 2018. Архивировано 12 июня 2018 года.
  2. CatBoost — новый метод машинного обучения от Яндекса. Яндекс. (18 июля 2017). Дата обращения: 8 июня 2018. Архивировано 12 июня 2018 года.
  3. Яндекс открывает технологию машинного обучения CatBoost. Хабр. (18 июля 2017). Дата обращения: 8 июня 2018. Архивировано 12 июня 2018 года.
  4. Технологии: Матрикснет. Яндекс.. Дата обращения: 8 июня 2018. Архивировано 8 июня 2018 года.
  5. Зачем «Яндекс» открыл доступ к своей системе машинного обучения. Forbes. (19 июля 2017). Дата обращения: 8 июня 2018. Архивировано 7 июня 2018 года.
  6. «Яндекс» выложил в открытый доступ альтернативу нейросетям. CNews. (18 июля 2017). Дата обращения: 8 июня 2018. Архивировано 12 июня 2018 года.
  7. «Яндекс» представил новый метод машинного обучения CatBoost. 3DNews. (18 июля 2017). Дата обращения: 8 июня 2018. Архивировано 12 июня 2018 года.