Pull to refresh

Подборка статей о машинном обучении: кейсы, гайды и исследования за январь 2020

Reading time5 min
Views9.4K
Исследовательская работа в области машинного обучения постепенно покидает пределы университетских лабораторий и из научной дисциплины становится прикладной. Тем не менее, все еще сложно находить актуальные статьи, которые написаны на понятном языке и без миллиарда сносок.

Этот пост содержит список англоязычных материалов за январь, которые написаны без лишнего академизма. В них вы найдете примеры кода и ссылки на непустые репозитории. Упомянутые технологии лежат в открытом доступе и не требуют сверхмощного железа для тестирования.

Статьи поделены на четыре типа: анонсы опенсорсных инструментов, кейсы применения машинного обучения в коммерческой разработке, исследования в области ML и практические руководства по использованию PyTorch и TensorFlow.



Анонсы опенсорсных технологий для машинного обучения


LaserTagger

В статье кратко рассматриваются функционал и архитектура LaserTagger; инструмента, позволяющего генерировать текст различными способами — объединять и дробить предложения, а также пересказывать их другими словами. В отличие от seq2seq-моделей, он переиспользует слова, что обеспечивает высокую скорость генерации текста.

Reformer

Для обработки последовательных данных — текста, музыки или видео — требуется большой ресурс памяти, так как эти данные зависят от окружающего контекста. В отличие от Transformer, популярной архитектурной модели для нейронных сетей, Reformer расходует намного меньше памяти для удержания контекста — всего 16GB. Этого достаточно для работы с большими текстовыми дата-сетами — Reformer, к примеру, смог обработать текст “Преступления и наказания”. Также Инструмент можно использовать для “дорисовки” недостающих фрагментов изображений.

Wav2letter@anywhere

Большинство фреймворков для распознавания речи в реальном времени используют рекуррентные нейронные сети, тогда как Wav2letter@anywhere использует сверточную акустическую модель. Фреймворк написан на C++, и легко встраивается в другие языки программирования. Создателям удалось увеличить пропускную способность в три раза и обеспечить вычислительную эффективность на не очень мощных процессорах. В статье приводятся бенчмарки и ссылки на модели, которые помогут повторить результаты обучения.

Polygames

Фреймворк, который обучает искусственный интеллект играть в стратегические игры, даже абсолютно незнакомые. В отличии от других похожих технологий, эта модель не учится на многочисленных примерах успешного ведения игры, следовательно, не требует дата-сетов.

HiPlot

Инструмент для визуализации данных исследований. Позволяет оценивать эффективность гиперпараметров, вроде скорости обучения, регуляризаций и архитектуры. В статье приводятся сниппеты python-кода и примеры их визуализаций. HiPlot поддерживается Jupiter Notebook.

Руководства по работе с машинным обучением



TensorFlow.js

Опенсорсная библиотека позволяет запускать модели машинного обучения, не покидая JS-экосистему. Работает во всех актуальных браузерах, серверная сторона на Node.js, а мобильные платформы на React Native.

Создание кастомного TFX-компонента

Любой желающий может использовать платформу TFX для создания готовых к использованию пайплайнов машинного обучения. Платформа предлагает массу стандартных компонентов, но бывают случаи, когда они не подходят. В этой статье рассказывается о том, как создать полностью кастомный пайплайн для работы с TensorFlow.

Ускорение работы NVIDIA Dali с помощью PyTorch

Материал рассматривает некоторые способы более оптимизированного использования DALI и создания процесса, который задействует только CPU (без GPU) и ускоряет процесс машинного обучения на PyTorch в 4 раза.

Управление версиями данных и моделей для быстрого экспериментирования в машинном обучении

Статья рассказывает, как создавать и использовать версионированные наборы данных для воспроизводимого процесса машинного обучения. В качестве примера с помощью Git, Docker и Quilt создается глубокая нейронная сеть для распознавания объектов с помощью Detectron2, системы на базе PyTorch применяющей алгоритмы для распознавания объектов.

Активное трансферное обучение на PyTorch

Трансферное обучение — это процесс, когда модель машинного обучения, созданная для одной конкретной задачи, адаптируется к выполнению другой задачи. Обычно для этого достаточно заново обучить последние несколько слоев в существующей модели. Преимущество в том, что для этого требуется минимальное маркирование данных со стороны человека. В данной статье предлагается руководство по применению трансферного обучения к активному обучению, которое направлено на выявление образцов данных, нуждающихся в том, чтобы их маркировали люди.

Кейсы из коммерческой разработки


Создание умной музыкальной библиотеки с помощью TensorFlow

Разработчики лидирующей в Китае музыкальной стриминговой платформы делятся опытом использования фреймворка. Подробно рассказывают, какие инструменты использовались, как тренировали модель, чтобы определять жанр и стиль музыки для последующих рекомендаций. Отделять голос от музыки, чтобы, например, выводить слова песни с помощью распознавания текста. Так как часть контента на платформе записана пользователями без специального звукозаписывающего оборудования, авторы научились устранять помехи и фоновый шум.

Дрессировка собак с помощью машинного обучения

Послушные собаки, которые знают команды, с большей вероятностью находят себе новых хозяев и покидают приют. Однако не во всех приютах есть возможность дрессировать собак. Задача проекта обучить машину понимать, выполнила ли собака команду “Сесть”, лает собака или скулит и пр.

Обучение пылесоса

Китайский производитель умных пылесосов обучил устройства распознавать разбросанные по полу носки и провода. Кейс рассказывает о трудностях создания уникального дата-сета из фотографий и применения различных алгоритмов машинного обучения.

Создание умной камеры с помощью TensorFlow Lite на Raspberry Pi

Камера умеет определять улыбку на лице человека и автоматически делать снимок. Ей можно управлять голосовыми командами. Для разработки выбрали Raspberry Pi 3B+, с гигабайтом оперативной памяти и 32-битной операционной системой. TensorFlow Light хорошо зарекомендовал себя как фреймворк для мобильных и IoT устройств. В статье демонстрируется алгоритмы работы системы распознавания улыбок и голосовых команд.

Исследования


Нейронная сеть для решения математических уравнений

Facebook разработал первую нейронную сеть, которая использует символьное логическое обоснование для решений интегральных и дифференциальных уравнений первого и второго рода. Раньше считалось, что машинное обучение для такой задачи не подходит, так как в математике требуется абсолютная точность, а не приблизительная. Авторы исследования использовали нейронный машинный перевод. Уравнения воспринимались машинной как текстовые предложения, а решения как их перевод. Для это потребовалось составить синтаксис и подготовить набор обучающих данных из более чем 100 миллионов парных уравнений и их решений. Таким образом, исследование показывает, что нейронные сети могут применяться не только для того, чтобы различать паттерны.

AI Habitat: сверхточная навигация ИИ в пространстве

Facebook разработал широкомасштабный DD-PPO-алгоритм обучения с подкреплением, который эффективно справляется с навигацией в пространстве жилых и офисных помещений, используя данные RGB-D камеры, GPS и компаса. Роботы, обученные с помощью DD-PPO, с 99.9% точностью достигают своей цели. В статье содержатся впечатляющие видеоролики.

Можно ли доверять неопределенности вашей модели?

Опубликован код и результаты исследования, которое сосредоточено на проблеме ковариантного сдвига, когда данные для обучения модели не совпадают с тестовой выборкой. Авторы провели обширный сравнительный анализ самых передовых моделей, предоставив им датасеты из текста, картинок, онлайн-рекламы и геномики. Целью было определить точность популярных методов. В бенчмарках самым надежным себя показал метод ensemble.

Спасибо за внимание!

Перед вами был пробный выпуск, любые рекомендации приветствуются.
Tags:
Hubs:
+13
Comments3

Articles

Change theme settings