Ваупал Ваббит - Википедия - Vowpal Wabbit
Скриншот Ваупал Ваббит | |
Разработчики) | Yahoo! Исследование & потом Microsoft Research |
---|---|
Стабильный выпуск | 8.9.0 / 12 ноября 2020 г. |
Репозиторий | github |
Написано в | C ++ |
Операционная система | Linux, macOS, Майкрософт Виндоус |
Платформа | Кроссплатформенность |
Тип | Машинное обучение |
Лицензия | Лицензия BSD |
Интернет сайт | обет |
Ваупал Ваббит (также известный как "VW") является Открытый исходный код быстрый онлайн интерактивный машинное обучение системная библиотека и программа, изначально разработанные в Yahoo! Исследование, и в настоящее время на Microsoft Research. Он был запущен и возглавляется Джон Лэнгфорд. Особенно примечательна интерактивная обучающая поддержка Vowpal Wabbit, в том числе Контекстные бандиты, Активное изучение, и формы управляемых Обучение с подкреплением. Vowpal Wabbit обеспечивает эффективную масштабируемую вне ядра реализация с поддержкой ряда машинного обучения сокращение, взвешивание важности и выбор различных функции потерь и алгоритмы оптимизации.
Примечательные особенности
Программа VW поддерживает:
- Несколько контролируемых (и частично контролируемых) задач обучения:
- Классификация (как бинарная, так и мультиклассовая)
- Регресс
- Активное изучение (частично помеченные данные) как для регрессии, так и для классификации
- Множественные алгоритмы обучения (типы моделей / представления)
- OLS регресс
- Факторизация матрицы (разреженная матрица СВД)
- Одиночный слой нейронная сеть (с указанным пользователем количеством узлов скрытого слоя)
- Searn (поиск и обучение)
- Скрытое размещение Дирихле (LDA)
- Поэтапное полиномиальное приближение
- Рекомендую топ-K из N
- Одно против всех (OAA) и экономичное сокращение OAA для мультиклассов
- Взвешиваем все пары
- Контекстный бандит (с несколькими стратегиями разведки / эксплуатации)
- Несколько функции потерь:
- квадратичная ошибка
- квантиль
- петля
- логистика
- Пуассон
- Несколько алгоритмов оптимизации
- Регуляризация (L1 норма, L2 норма, & эластичная чистая регуляризация )
- Гибкий ввод - функции ввода могут быть:
- Двоичный
- Числовой
- Категориальный (с помощью гибкого именования функций и хеш-трюк )
- Может работать с отсутствующими значениями / разреженными функциями
- Другие свойства
- Генерация на лету взаимодействий функций (квадратичных и кубических)
- Генерация на лету N-граммы с дополнительными пропусками (полезно для наборов данных слов / языков)
- Автоматическая задержка набора тестов и раннее завершение за несколько проходов
- самонастройка
- Настраиваемый пользователем онлайн-отчет о ходе обучения + аудит модели
- Оптимизация гиперпараметров
Масштабируемость
Vowpal wabbit был использован для изучения тера-функции (1012) набор данных на 1000 узлов за один час.[1] Его масштабируемости способствует несколько факторов:
- Внешнее онлайн-обучение: не нужно загружать все данные в память
- В трюк с хешированием: идентификаторы функций преобразуются в весовой индекс через хеш (используется 32-битный MurmurHash 3)
- Использование многоядерных процессоров: анализ ввода и обучение выполняются в отдельных потоках.
- Скомпилированный код C ++
Рекомендации
внешняя ссылка
- Официальный веб-сайт
- Репозиторий github Vowpal Wabbit
- Документация и примеры (github wiki)
- Учебное пособие по Vowpal Wabbit на NIPS 2011
- Вопросы (и ответы) с пометкой vowpalwabbit на StackOverflow
Этот бесплатное программное обеспечение с открытым исходным кодом статья - это заглушка. Вы можете помочь Википедии расширяя это. |