После ожидания большого набора инструментов с открытым исходным кодом приходят сразу два. Microsoft следует за Google, предлагая миру способ создания продвинутого распределенного ИИ.
Ранее в этом месяце Google открыла исходный код TensorFlow, инструмента, который он использует внутри компании для широкого спектра параллельных вычислений, включая реализацию нейронных сетей и других методов обучения ИИ.
Вскоре после этого исследователи из исследовательской лаборатории Microsoft Asia предоставили Microsoft Distributed Machine Learning Toolkit на GitHub по лицензии MIT.
Этот инструментарий включает три ключевых компонента:
• DMTK Framework: гибкая структура, поддерживающая унифицированный интерфейс для распараллеливания данных, гибридную структуру данных для хранения больших моделей, планирование моделей для обучения больших моделей и автоматическую конвейерную обработку для высокой эффективности обучения.
• LightLDA, чрезвычайно быстрый и масштабируемый алгоритм тематической модели с семплером Гиббса O (1) и эффективной распределенной реализацией.
• Распределенное (мультисмысловое) встраивание слов, распределенная версия (мультисмыслового) алгоритма встраивания слов.
DMTK, кажется, является ядром универсальной части инструментария — не все методы машинного обучения требуют сэмплера Гиббса или используют подход word2vec. DMTK — это клиент-серверная система, написанная на C ++. Это позволяет рассчитывать одну модель на нескольких серверах. Microsoft утверждает, что обрабатывает тематическую модель с одним миллионом тем и словарным запасом из 20 миллионов слов или моделью встраивания слов с 1000 измерениями и словарем из 20 миллионов слов в коллекции веб-документов с 200 миллиардами токенов с использованием кластера всего 24 машины. Для этой рабочей нагрузки раньше требовались тысячи машин.
По сравнению с подходом TensorFlow к ИИ, это не кажется универсальным. TensorFlow основан на подходе к вычислениям на основе потокового графа и, следовательно, может использоваться для реализации любой системы, которая может быть указана как потоковый граф. Платформа Microsoft ориентирована на тематические модели и встраивание слов. с:
«… потенциал для более быстрого решения других сложных задач, включая компьютерное зрение, распознавание речи и понимание текста».
Похоже, что Microsoft надеется, что другие исследователи будут использовать фреймворк как способ расширить свои собственные модели одной машины до распределенной вычислительной среды.
Исследователи и практики машинного обучения также могут создавать свои собственные распределенные алгоритмы машинного обучения на основе этой структуры с небольшими изменениями в существующих алгоритмах для одной машины.
«Мы считаем, что для того, чтобы расширить границы распределенного машинного обучения, нам необходимы коллективные усилия всего сообщества и органическое сочетание инноваций в области машинного обучения и системных инноваций. Это убеждение сильно мотивирует нас к открытию исходного кода проекта DMTK. . »
В целом качество документации и примеров не соответствует тому, что предоставил Google, но если вы являетесь экспертом, это может не иметь значения.
Любой успех DMTK будет зависеть от того, насколько он хорош в быстром вычислении больших моделей, и это то, что покажет только время. Кажется, что он может быть лучше, чем TensorFlow при использовании распределенных вычислений, особенно учитывая, что версия TensorFlow, которая работает с несколькими серверами, еще не выпущена.
TensorFlow, с другой стороны, достаточно универсален и достаточно прост в использовании, чтобы пробудить новую жизнь в экспериментах с ИИ.