Майкрософт з відкритим кодом розповсюджує інструменти розподіленого машинного навчання, щоб зробити дослідження великих даних більш ефективними
2 хв. читати
Опубліковано
Прочитайте нашу сторінку розкриття інформації, щоб дізнатися, як ви можете допомогти MSPoweruser підтримувати редакційну команду Читати далі
Щоб уможливити навчання великих моделей, використовуючи лише невеликий кластер і ефективним чином, Microsoft нещодавно випустила Distributed Machine Learning Toolkit (DMTK), який містить як алгоритмічні, так і системні інновації. Це робить дослідження великих даних більш масштабованими, ефективними та гнучкими.
Набір інструментів, доступний зараз на GitHub, призначений для розподіленого машинного навчання — використання кількох комп’ютерів паралельно для вирішення складної проблеми. Він містить програмну базу параметрів на основі сервера, яка робить навчання за допомогою машини завдання з великими даними дуже масштабовані, ефективні та гнучкі. Він також містить два розподілених алгоритми машинного навчання, які можна використовувати для навчання найшвидшої та найбільшої моделі теми та найбільшої моделі вбудовування слів у світі.
Набір інструментів пропонує багаті та прості у використанні API, щоб зменшити бар’єр розподілене машинне навчання, тож дослідники та розробники можуть зосередитися на основних завданнях машинного навчання, як-от дані, моделі та навчання.
Поточна версія DMTK включає наступні компоненти (до наступних версій буде додано більше компонентів):
• DMTK Framework: гнучка структура, яка підтримує уніфікований інтерфейс для розпаралелювання даних, гібридну структуру даних для зберігання великих моделей, планування моделі для навчання великих моделей і автоматичну конвеєрію для високої ефективності навчання.
• LightLDA, надзвичайно швидкий і масштабований алгоритм тематичної моделі, із семплером O(1) Гіббса та ефективною розподіленою реалізацією.
• Distributed (multisense) Word Embedding, розподілена версія (багатосмислового) алгоритму вбудовування слів.
Дослідники та практики машинного навчання також можуть створювати власні розподілені алгоритми машинного навчання поверх нашої фреймворку з невеликими модифікаціями своїх існуючих одномашинних алгоритмів.