Azure ML - обучаем модель по сегментам набора данных
Я мог бы действительно использовать некоторую помощь!
Компания, в которой я работаю, состоит из 52 очень разных предприятий, поэтому я не могу прогнозировать на уровне компании, но вместо этого нужно прогнозировать бизнес по бизнесу, а затем свернуть результат, чтобы дать прогноз компании в целом.
Я написал модель ML в studio.azureml.net. Она прекрасно работает с коэффициентом определения 0,947, но это для одного из предприятий. Теперь мне нужно обучить модель для других 51.
Есть ли способ сделать это в одной модели ML, вместо того, чтобы создавать 52 очень похожих модели?
Любая помощь приветствуется!!!
С наилучшими пожеланиями, Мартин
0 ответов
Вы можете использовать ансамбли, комбинируя несколько моделей для улучшения прогнозов. Самым прямым является суммирование, когда выходные данные всех моделей обучаются на всем наборе данных. Метод, который, как мне кажется, лучше всего соответствует вашей проблеме, - это упаковка (агрегация начальной загрузки). Вам необходимо разделить обучающий набор на разные подмножества (каждый соответствует определенному бизнесу), затем обучить другую модель на каждом подмножестве и объединить результаты каждого классификатора. Другой способ - повышение, но его сложно реализовать в Azure ML. Вы можете увидеть пример в галерее машинного обучения Azure.
Цитата из книги:
Стекирование и упаковку можно легко реализовать в Машинном обучении Azure, но другие методы ансамбля сложнее. Кроме того, оказывается очень утомительным реализовать в Машинном обучении Azure совокупность, скажем, более пяти моделей. Эксперимент наполнен модулями и его довольно сложно поддерживать. Иногда стоит использовать любой метод ансамбля, доступный в R или Python. Добавление большего количества моделей в ансамбль, написанный в сценарии, может быть столь же тривиальным, как изменение числа в коде вместо копирования и вставки модулей в эксперимент.
Вы также можете ознакомиться с документацией по sklearn (Python) и caret (R) для получения дополнительных сведений.