Jump to content

XGBoost

(Перенаправлено с Xgboost )
XGBoost
Разработчик(и) Участники XGBoost
Первоначальный выпуск 27 марта 2014 г .; 10 лет назад ( 27.03.2014 )
Стабильная версия
2.0.3 [1]  Отредактируйте это в Викиданных / 19 декабря 2023 г .; 7 месяцев назад ( 19 декабря 2023 г. )
Репозиторий
Написано в С++
Операционная система Linux , macOS , Microsoft Windows
Тип Машинное обучение
Лицензия Лицензия Апач 2.0
Веб-сайт xgboost .есть

XGBoost [2] (eXtreme Gradient Boosting) — это с открытым исходным кодом программная библиотека , которая предоставляет структуру регуляризации повышения градиента для C++ , Java , Python , [3] Р , [4] Юля , [5] Перл , [6] и Скала . Работает в Linux , Microsoft Windows , [7] и macOS . [8] Судя по описанию проекта, он направлен на создание «Масштабируемой, портативной и распределенной библиотеки повышения градиента (GBM, GBRT, GBDT)». Он работает на одной машине, а также на платформах распределенной обработки Apache Hadoop , Apache Spark , Apache Flink и Dask . [9] [10]

XGBoost приобрел большую популярность и внимание в середине 2010-х годов как алгоритм, который выбирают многие команды-победители соревнований по машинному обучению. [11]

XGBoost изначально начинался как исследовательский проект Тяньци Чена. [12] в составе группы Distributed (Deep) Machine Learning Community (DMLC). Первоначально он начинался как терминальное приложение, которое можно было настроить с помощью файла конфигурации libsvm . Он стал широко известен в кругах участников соревнований по машинному обучению после того, как был использован в победившем решении задачи машинного обучения Хиггса . Вскоре после этого были созданы пакеты Python и R, и теперь у XGBoost есть реализации пакетов для Java, Scala , Julia, Perl и других языков. Это привлекло к библиотеке больше разработчиков и способствовало ее популярности среди сообщества Kaggle , где она использовалась для большого количества соревнований. [11]

Вскоре он был интегрирован с рядом других пакетов, что упростило его использование в соответствующих сообществах. Теперь он интегрирован с scikit-learn для пользователей Python и с пакетом Caret для R. пользователей Его также можно интегрировать в инфраструктуры потока данных, такие как Apache Spark , Apache Hadoop и Apache Flink , используя абстрактную среду Rabit. [13] и XGBoost4J. [14] XGBoost также доступен на OpenCL для FPGA . [15] Эффективная масштабируемая реализация XGBoost была опубликована Тяньци Ченом и Карлосом Гестрином. [16]

Хотя модель XGBoost часто обеспечивает более высокую точность, чем одно дерево решений, она жертвует внутренней интерпретируемостью деревьев решений. Например, проследить путь, по которому дерево решений принимает решение, тривиально и самоочевидно, но следовать путям сотен или тысяч деревьев гораздо сложнее.

Существенные особенности XGBoost, которые отличают его от других алгоритмов повышения градиента, включают: [17] [18] [16]

  • Умное наказание деревьев
  • Пропорциональное сокращение листовых узлов.
  • Повышение Ньютона
  • Дополнительный рандомизации параметр
  • Реализация в одиночных распределенных системах и внеядерных вычислениях.
  • Автоматический выбор функции [ нужна ссылка ]
  • Теоретически обоснованное взвешенное квантильное эскизирование для эффективных вычислений
  • Повышение параллельной древовидной структуры за счет разреженности
  • Эффективная кэшируемая блочная структура для обучения дерева решений.

Алгоритм

[ редактировать ]

XGBoost работает как Ньютон-Рафсон в функциональном пространстве, в отличие от повышения градиента второго порядка , которое работает как градиентный спуск в функциональном пространстве, в функции потерь используется аппроксимация Тейлора для связи с методом Ньютона-Рафсона.

Общий нерегуляризованный алгоритм XGBoost:

Входные данные: обучающий набор. , дифференцируемая функция потерь , много слабых учеников и скорость обучения .

Алгоритм:

  1. Инициализируйте модель постоянным значением:
  2. Для m = 1 до M :
    1. Вычислите «градиенты» и «гессианы»:
    2. Подберите базового учащегося (или слабого учащегося, например, дерева), используя обучающий набор. решив задачу оптимизации ниже:
    3. Обновите модель:
  3. Выход
  • Джона Чемберса Премия (2016) [19]
  • Физика высоких энергий соответствует награде за машинное обучение (HEP соответствует ML) (2016 г.) [20]

См. также

[ редактировать ]
  1. ^ «Выпуск 2.0.3» . 19 декабря 2023 г. Проверено 19 декабря 2023 г.
  2. ^ «Веб-страница проекта GitHub» . Гитхаб . Июнь 2022 г. Архивировано из оригинала 1 апреля 2021 г. Проверено 5 апреля 2016 г.
  3. ^ «Индекс пакета Python PYPI: xgboost» . Архивировано из оригинала 23 августа 2017 г. Проверено 1 августа 2016 г.
  4. ^ «Пакет CRAN xgboost» . Архивировано из оригинала 26 октября 2018 г. Проверено 1 августа 2016 г.
  5. ^ «Список пакетов Julia xgboost» . Архивировано из оригинала 18 августа 2016 г. Проверено 1 августа 2016 г.
  6. ^ «Модуль CPAN AI::XGBoost» . Архивировано из оригинала 28 марта 2020 г. Проверено 9 февраля 2020 г.
  7. ^ «Установка XGBoost для Anaconda в Windows» . ИБМ . Архивировано из оригинала 08.05.2018 . Проверено 1 августа 2016 г.
  8. ^ «Установка XGBoost на Mac OSX» . ИБМ . Архивировано из оригинала 08.05.2018 . Проверено 1 августа 2016 г.
  9. ^ «Домашняя страница Даска» . Архивировано из оригинала 14 сентября 2022 г. Проверено 15 июля 2021 г.
  10. ^ «Распределяемый XGBoost с Dask — документация xgboost 1.5.0-dev» . xgboost.readthedocs.io . Архивировано из оригинала 4 июня 2022 г. Проверено 15 июля 2021 г.
  11. ^ Перейти обратно: а б «XGBoost — выигрышные решения ML (неполный список)» . Гитхаб . Архивировано из оригинала 24 августа 2017 г. Проверено 1 августа 2016 г.
  12. ^ «История и уроки эволюции XGBoost» . Архивировано из оригинала 7 августа 2016 г. Проверено 1 августа 2016 г.
  13. ^ «Rabit — надежный интерфейс Allreduce и широковещательной передачи» . Гитхаб . Архивировано из оригинала 11 июня 2018 г. Проверено 1 августа 2016 г.
  14. ^ "XGBoost4J" . Архивировано из оригинала 08.05.2018 . Проверено 1 августа 2016 г.
  15. ^ «XGBoost на ПЛИС» . Гитхаб . Архивировано из оригинала 13 сентября 2020 г. Проверено 1 августа 2019 г.
  16. ^ Перейти обратно: а б Чен, Тяньци; Гестрин, Карлос (2016). «XGBoost: масштабируемая система повышения качества деревьев». В Кришнапураме — Баладжи; Шах, Мохак; Смола, Александр Дж.; Аггарвал, Чару К.; Шен, Доу; Растоги, Раджив (ред.). Материалы 22-й Международной конференции ACM SIGKDD по обнаружению знаний и интеллектуальному анализу данных, Сан-Франциско, Калифорния, США, 13–17 августа 2016 г. АКМ. стр. 785–794. arXiv : 1603.02754 . дои : 10.1145/2939672.2939785 . ISBN  9781450342322 . S2CID   4650265 .
  17. ^ Ганди, Рохит (24 мая 2019 г.). «Повышение градиента и XGBoost» . Середина . Архивировано из оригинала 28 марта 2020 г. Проверено 4 января 2020 г.
  18. ^ «Усовершенствование деревьев с помощью XGBoost – почему XGBoost выигрывает «все» соревнования по машинному обучению?» . Синхронизировано . 22 октября 2017 г. Архивировано из оригинала 28 марта 2020 г. Проверено 4 января 2020 г.
  19. ^ «Премия Джона Чемберса предыдущим победителям» . Архивировано из оригинала 31 июля 2017 г. Проверено 1 августа 2016 г.
  20. ^ «HEP соответствует награде ML» . Архивировано из оригинала 08.05.2018 . Проверено 1 августа 2016 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c0195685429af52f9c3465c6a75a8b55__1718063880
URL1:https://arc.ask3.ru/arc/aa/c0/55/c0195685429af52f9c3465c6a75a8b55.html
Заголовок, (Title) документа по адресу, URL1:
XGBoost - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)