- PVSM.RU - https://www.pvsm.ru -

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

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

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

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

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

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

LaserTagger [2]

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

Reformer [4]

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

Wav2letter@anywhere

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

Polygames [7]

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

HiPlot

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

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

TensorFlow.js [10]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Автор: Максим Мул

Источник [25]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/python/346214

Ссылки в тексте:

[1] непустые репозитории: https://habr.com/en/post/480348/

[2] LaserTagger: https://ai.googleblog.com/2020/01/encode-tag-and-realize-controllable-and.html

[3] LaserTagger: https://github.com/google-research/lasertagger

[4] Reformer: https://ai.googleblog.com/2020/01/reformer-efficient-transformer.html

[5] Reformer: https://github.com/google/trax/tree/master/trax/models/reformer

[6] Wav2letter@anywhere: https://github.com/facebookresearch/wav2letter/wiki/Inference-Framework?fbclid=IwAR0JRmHkTTo3ceWjwjuAFyHXJ5ZawNAOKrm3m4orwl22QNBCzJsKVif9z7o

[7] Polygames: https://ai.facebook.com/blog/open-sourcing-polygames-a-new-framework-for-training-ai-bots-through-self-play/

[8] Фреймворк: https://github.com/facebookincubator/polygames

[9] Инструмент: https://github.com/facebookresearch/hiplot

[10] TensorFlow.js: https://blog.tensorflow.org/2020/01/run-tensorflow-savedmodel-in-nodejs-directly-without-conversion.html

[11] Опенсорсная библиотека: https://github.com/tensorflow/tfjs-examples/tree/master/firebase-object-detection-node

[12] Создание кастомного TFX-компонента : https://blog.tensorflow.org/2020/01/creating-custom-tfx-component.html

[13] TFX : https://tensorflow.org/tfx

[14] Ускорение работы NVIDIA Dali с помощью PyTorch : https://towardsdatascience.com/nvidia-dali-speeding-up-pytorch-876c80182440

[15] Управление версиями данных и моделей для быстрого экспериментирования в машинном обучении: https://medium.com/pytorch/how-to-iterate-faster-in-machine-learning-by-versioning-data-and-models-featuring-detectron2-4fd2f9338df5

[16] Активное трансферное обучение на PyTorch : https://medium.com/pytorch/active-transfer-learning-with-pytorch-71ed889f08c1

[17] Создание умной музыкальной библиотеки с помощью TensorFlow: https://blog.tensorflow.org/2020/01/building-ai-empowered-music-library-tensorflow.html

[18] Дрессировка собак с помощью машинного обучения: https://blog.tensorflow.org/2020/01/autonomous-dog-training-with-companion.html

[19] Обучение пылесоса : https://blog.tensorflow.org/2020/01/ecovacs-robotics-ai-robotic-vacuum.html

[20] Создание умной камеры с помощью TensorFlow Lite на Raspberry Pi : https://blog.tensorflow.org/2020/01/photobooth-lite-on-raspberry-pi-with-tensorflow-lite.html

[21] Нейронная сеть для решения математических уравнений: https://ai.facebook.com/blog/using-neural-networks-to-solve-advanced-mathematics-equations/

[22] AI Habitat: сверхточная навигация ИИ в пространстве : https://ai.facebook.com/blog/near-perfect-point-goal-navigation-from-25-billion-frames-of-experience/

[23] Можно ли доверять неопределенности вашей модели?: https://ai.googleblog.com/2020/01/can-you-trust-your-models-uncertainty.html

[24] код: https://github.com/google-research/google-research/tree/master/uq_benchmark_2019

[25] Источник: https://habr.com/ru/post/487702/?utm_source=habrahabr&utm_medium=rss&utm_campaign=487702