Интеграция 1С с Microsoft Azure для машинного обучения.

Обмен - Обмен с другими системами

Модуль интеграции позволяет легко использовать сервисы машинного обучения Microsoft Azure в любой конфигурации 1С.

Что это вообще такое?

Модуль интеграции позволяет использовать машинное обучение в 1С. Построение модели и непосредственно ее обучение происходит в Azure. Модуль 1С предназначен, во-первых, для удобной передачи данных в облако и, во-вторых, для использования обученной модели анализа данных через web-сервисы.

Модуль поможет тем, кто хочет быстро попробовать методы машинного обучения для своей базы на платформе 1С. А попробовать можно прогнозирование продаж, классификацию клиентов, рекомендации товаров и еще много всего из богатого списка доступных на текущее время методов.

Как это работает?

Схема работы
Модуль интеграции – это одна обработка. С ее помощью данные из локальной базы 1С передаются в базу данных SQL в облаке. Переданные данные напрямую используются для обучения модели анализа данных. С обученной моделью модуль интеграции взаимодействует через web-сервисы.

Чуть-чуть подробнее?

Чтобы указанная выше схема заработал нужно сделать несколько шагов:

1. Зарегистрироваться в Azure.

2. Создать базу SQL в Azure. Назовем ее Demo.

3. В студии машинного обучения создать модель. Например, такую:

Модель

При этом Import Data выбирает данные следующим запросом: SELECT * FROM [dbo].[Demo]

В параметрах других блоков должны использоваться поля, существующие в базе Demo. В частности, в параметрах Train Model прогнозируемое поле назовем Labels.

4. Опубликовать web-сервисы обученной модели. При публикации получим пути подключения и apiKey.

5. В приложенной к публикации обработке заполнить данные для подключения.

СтрокаСоединенияSQL = "DRIVER={ODBC Driver 13 for SQL Server};Server=tcp:<ИмяСервера>.database.windows.net,1433;Database=<ИмяБазы>;Uid=<Логин>;Pwd=<Пароль>;Encrypt=yes;TrustServerCertificate=no;"; 

Параметры подключения к web-сервисам опубликованной модели анализа данных
host = "europewest.services.azureml.net"; (europewest - выбранный вами регион для разворачивания базы SQL)
port = 443;
basePath = "/workspaces/<id_workspaces>/services/<id_services>/execute?api-version=2.0&details=true";
apiKey = "Bearer "+"<apiKey>";

Ссылки.

Более подробная инструкция по каждому связанному с сервисами Azure пункту есть на портале.

Microsoft Azure https://azure.microsoft.com
База данных SQL https://azure.microsoft.com/ru-ru/services/sql-database/
Машинное обучение https://azure.microsoft.com/ru-ru/services/machine-learning/

Скачать файлы

Наименование Файл Версия Размер
Интеграция 1С с Microsoft Azure для машинного обучения
.epf 13,02Kb
03.09.17
1
.epf 20170903 13,02Kb 1 Скачать

См. также

Комментарии
1. Руслан Миллер (rusmil) 84 04.09.17 06:27 Сейчас в теме
Интересно как Вы это применили у себя на рабочей базе 1С у клиента и что из этого вышло?
3. Сергей Неверов (nesergey) 32 04.09.17 09:48 Сейчас в теме
(1) Удалось построить модель прогнозирования продаж. Исходные данные продажи за 2 года, товаров сотни тысяч и клиентов сотни тысяч. Результаты не однозначные, но в целом модель тренд предсказывает, как и систематические колебания. Например, кухонные плиты покупают чаше к выходным, а график колебания для каждого вида товаров свой. Не скажу, что полученные результаты можно прямо сейчас использовать на практике, но и получены они по части доступной информации в базе (15-20%). Так что работа еще в процессе.
2. борян петров (TODD22) 16 04.09.17 06:37 Сейчас в теме
Расскажите для чего удалось применить и главное какие результаты были получены?
Встречал использование ML для 1С. Но что то внятно никто объяснить не смог что с помощью него делают в 1С(прогнозируют оплаты, выручку итд) и самое главное с какой результативностью? На сколько прогноз сопоставим с реально полученными данными.
4. Сергей Неверов (nesergey) 32 04.09.17 09:57 Сейчас в теме
(2) Опубликованный модуль больше для ознакомления с технологиями, чем готовый инструмент для практической работы. Как еще один пример, у нас есть модель, которая в 75% случаях предсказывает купит ли клиент что-нибудь в ближайший месяц. Да результат не очень, но не все данные о поведении клиента используются, когда их будет в 5 раз больше как мы планируем, наверняка прогноз станет лучше и его можно будет применить на практике.
5. Дмитрий Воронцов (informa1555) 528 04.09.17 12:44 Сейчас в теме
Ставлю плюс, но Вам сейчас тут быстро объяснят что в 1С это не нужно, а нужно только печатные формы клепать)) Вот аналогичное https://infostart.ru/public/649065/ Кстати по теме вопрос - в Азур нельзя забрать обученные веса на клиент как в ТензорФлоу? Нужно обязательно в облако обращаться? И еще - это какой то бесплатный тарифный план? Он при каких то условиях становится платным?
6. Сергей Неверов (nesergey) 32 04.09.17 13:14 Сейчас в теме
(5) Спасибо за плюс) Всегда найдутся те, кому нужно. Таких будет вряд ли много, потому что для для использования нужны "большие данные".
Аналогичная обработка не совсем аналогичная, там автор предлагает свою реализацию алгоритмов. Я же предлагаю использовать уже существующие наработки больших компаний. Они реализуют алгоритмы явно лучше. Azur только потому, что мы уже используем для аналитики Power BI, данные для которого хранятся в том же облаке. А так могло быть и решение от Google.
При регистрации дают $200 на счет, которые нужно использовать в течение месяца. Потом можно подписаться на минимальный тариф, там что-то около $15/мес., мы используем более дорогой, поэтому точно не знаю. Если это много для компании, тогда им точно эти технологии не нужны.
Про перенос весов не знаю. Но точно, если модель будет рабочей и полезной, ее всегда можно перенести на локальный сервер, способов много.
7. Сергей Неверов (nesergey) 32 04.09.17 13:20 Сейчас в теме
(5) Автор это вы) Хорошая статья для ознакомления с технологией.
Оставьте свое сообщение