7 фреймворков автоматического машинного обучения |
||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2019-08-08 22:00 Чем интересны системы автоматического машинного обучения? Какие фреймворки годятся для AutoML? В чем пока есть ограничения? Отвечаем в статье. Пусть имеется набор данных, по которому мы хотим получить предсказательную модель. Традиционный подход машинного обучения требует выполнить такую последовательность действий:
Процесс может оказаться долгим, а значит, дорогим. Ведь для лучшего результата необходимо многократно проверить гипотезу, которая, к тому же, на каждом шаге может уточняться. Задача автоматического машинного обучения (AutoML) – автоматизировать все или хотя бы некоторые из перечисленных этапов без потери предсказательной точности. Идеальная стратегия AutoML предполагает, что любой пользователь может взять «?сырые» данные, построить на них модель, и получить предсказания с лучшей возможной (для имеющейся выборки) точностью. Но не значит ли это, что наступит день, когда отпадет необходимость в специалистах по анализу данных? Конечно, нет. Технологии AutoML направлены на избавление от рутинной последовательности операций и ручного перебора моделей. Чтобы специалисты могли больше времени уделять творческой стороне вопроса. Рассмотрим описанный выше «конвейер» машинного обучения. Каждый этап требует своего подхода. Например, для подготовки данных бывает необходимо автоматизировать:
Особое внимание уделяется процессу нахождения лучших гиперпараметров модели. Два наиболее распространенных метода их нахождения:
Очевидно, что популярность этих методов объясняется простотой реализации. Оба метода оправданы лишь для малого числа гиперпараметров. Для оптимизации параметров используются и другие алгоритмы: байесовской оптимизации, имитации отжига, эволюционные алгоритмы и др. Рассмотрим подробнее фреймворки, позволяющие найти подходящую модель и настроить ее параметры. 1. MLBox Фреймворк MLBox успел хорошо зарекомендовать себя на Kaggle. Так, на соревновании Two Sigma Connect: Rental Listing Inquiries применявшие MLBox участники смогли попасть в верхние 5% рейтинга. MLBox решает следующие задачи:
Из недостатков отметим, что на Linux систему установить гораздо проще, чем на Mac или Windows. 2. Auto Sklearn Как следует из названия, фреймворк Auto Sklearn построен на базе популярной библиотеки машинного обучения scikit-learn. Что умеет Auto Sklearn:
Auto Sklearn хорошо справляется с небольшими наборами данных, но не «переваривает» крупные датасеты. 3. TPOT TPOT позиционируется как фреймворк, в котором конвейер машинного обучения автоматизирован целиком. Для нахождения оптимальной модели используется генетический алгоритм. Строится множество различных моделей с выбором лучшей по предсказательной точности. Так же, как и Auto Sklearn, этот фреймворк представляет собой надстройку над scikit-learn. Зато у TPOT имеются собственные алгоритмы регрессии и классификации. К недостаткам относится неумение TPOT взаимодействовать с естественным языком и категориальными строками. 4. H2O H2O AutoML поддерживает работу как с традиционными моделями машинного обучения, так и с нейросетями. Особенно подойдет тем, кто ищет способ автоматизации глубокого обучения. 5. Auto Keras Auto Keras следует дизайну классического scikit-learn API, но использует мощный нейросетевой поиск параметров модели с помощью Keras. 6. Google Cloud AutoML Cloud AutoML использует нейросетевую архитектуру. У этого продукта Google простой пользовательский интерфейс для обучения и разворачивания моделей. Однако платформа платна, и в долговременной перспективе ее имеет смысл применять лишь в коммерческих проектах. С другой стороны, в течение года Cloud AutoML с ограничениями доступен бесплатно для исследовательских целей. 7. Uber Ludwig Цель проекта Uber Ludwig – автоматизировать процесс глубокого обучения с минимальным количеством кода. Этот фреймворк работает только с моделями глубокого обучения, игнорируя прочие модели ML. И, конечно, как это обычно бывает с Deep Learning, существенную роль играет количество данных. Итак, AutoML уже довольно хорошо справляется с обучением с учителем, то есть с качественно размеченными данными. Но пока не умеет решать задачи обучения без учителя или с подкреплением. Последнее вызывает сложности для воплощения таких сценариев, как искусственный интеллект робота, находящегося в настоящем мире или соперника в игре. Редким примером удачной реализации автоматического обучения с подкреплением является AlphaZero, разработанная компанией DeepMind. На ее примере была показана возможность улучшения качества игры в Го при тренировках, в которых искусственный интеллект соревновался с самим собой. Технологии AutoML также пока имеют трудности в обработке сложных сырых данных и оптимизации процесса конструирования новых признаков (feature engineering). По этой причине выбор значимых признаков остается одним из краеугольных камней процесса обучения модели. Однако во всех перечисленных областях наблюдается прогресс, который ускоряется с увеличением числа конкурсов по AutoML. Делитесь своим списком must-have фреймворков машинного обучения ? Источник: proglib.io Комментарии: |
|