• A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

tidymodels: построение моделей машинного обучения в R

На очередном семинаре НУГ обсудили tidymodels - сборник пакетов машинного обучения в R, который заменяет привычный многим caret. О том, зачем это нужно, как работают пакеты, и чем он отличается от caret, рассказал участник научно-учебной группы - Александр Попов.

28 ноября семинар НУГа прошёл в уже привычном формате - через Zoom. Конечно, всем давно хочется снова сидеть вместе в аудитории, но и плюсы у онлайн-занятий тоже есть - поучаствовать в семинаре смогли и те участники НУГа, которые сейчас находятся не в Санкт-Петербурге. 

Так почему родилась идея обсудить tidymodels? Дело в том, что caret постепенно устаревает, и создатели больше не планируют обновлять библиотеку. Зато они сами и предоставляют альтернативу - tidymodels - мета-пакет, который соблюдает все заповеди tidy. На примере данных о пингвинах, мы увидели, что tidymodels - универсальная вещь. Мы знаем, что caret хорошо работает для построения предсказательных моделей, но при использовании более продвинутых методов приходится использовать другие библиотеки. В то время как tidymodels объединяет в себе 5 разных пакетов, которые позволяют разделять и сэмплировать данные, эффективно делать препроцессинг, строить сами модели, а также оценивать их качество разными способами.

В результате экспериментов мы узнали, что tidymodels ничуть не уступает своему предшественнику. Новая библиотека не только умеет всё, что может caret, но и предоставляет множество дополнительных функций и удобных шаблонов. И что особенно важно - делает результаты, полученные на разных этапах, совместимыми друг с другом. Одним из основных отличий является то, что параметры модели в tidymodels задаются заранее, как некие рецепты. И только потом, с уже готовым рецептом строится модель. Такой подход к ведению кода может быть особенно удобным для тех, кто приходит в R с Python - модели в sclearn строятся по похожему сценарию. Кроме того, для тех, кто привык работать с tidy, манера написания кода и работа с переменными в tidymodels будет более привычной.

Новость о семинаре подготовлена Ольгой Ярыгиной