Настроить рекомендательное прогнозирование

Продукты
Все продукты

В Creatio вы можете настраивать и обучать рекомендательные модели прогнозирования, чтобы создавать подборки записей из объектов системы и предлагать их клиентам или партнерам. Например, вы можете рекомендовать продукты клиентам, основываясь на том, какие товары приобретают заказчики, максимально похожие на них. Рекомендация продуктов клиентам с использованием данной модели прогнозирования доступна в системе по умолчанию для линейки Sales. В данной статье мы рассмотрим пример настройки аналогичной модели пользовательскими средствами.

Такой метод обучения рекомендательных моделей прогнозирования называется коллаборативной фильтрацией (collaborative filtering). В модели коллаборативной фильтрации для создания рекомендаций используются как известные предпочтения субъекта рекомендаций (например, потенциального клиента), так и данные о предпочтениях других субъектов, по определенным критериям похожих на целевого.

В Creatio для прогнозирования предпочтений применяется алгоритм, основанный на объектах системы (item-based). Система обобщает и ранжирует данные о взаимодействии с объектами рекомендаций, формируя таким образом списки рекомендаций.

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

Формирование рекомендаций осуществляется в несколько этапов:

  1. Настройка и обучение рекомендательной модели прогнозирования.

  2. Настройка и запуск бизнес-процесса с элементом Прогнозирование данных.

    Важно. Для использования функциональности предиктивного анализа данных в Creatio on-site необходимо выполнить предварительную настройку. Подробнее: Сервис машинного обучения.

1. Добавить новую модель 

Пример. Необходимо рекомендовать контакту в заказе продукты, которые он приобретет с наибольшей вероятностью.
Для этого настроим и обучим рекомендательную модель прогнозирования.

Чтобы создать рекомендательную модель прогнозирования:

  1. В рабочем месте Студия откройте раздел Модели машинного обучения.
  2. Нажмите кнопку Добавить модель —> Рекомендации.
  3. Заполните мини-карточку создания модели (Рис. 1):
    1. Название — введите название модели, по которому ее можно будет найти в реестре раздела Модели машинного обучения и при настройке бизнес-процесса с элементом Прогнозирование данных.
    2. Тип — тип модели машинного обучения. В данном примере — “Рекомендации”. Поле заполняется автоматически при выборе типа модели на предыдущем шаге.
    3. Взаимосвязь субъекта с объектом рекомендаций — выберите связующий объект. Например, взаимосвязь клиента с продуктом в нашем примере описывает объект “Продукт в заказе”. После выбора объекта добавляются другие поля для заполнения.
      Рис. 1 — Мини-карточка создания рекомендательной модели прогнозирования
      chapter_predicting_recommend_model_minicard.png
    4. Кому рекомендовать (Субъект) — укажите субъект рекомендаций, то есть, для кого будут созданы рекомендации. В нашем примере продукты будут рекомендованы указанному в заказе контакту, поэтому в данном поле необходимо указать связанный объект Заказ.Контакт. Нажмите + и выберите связанный объект Контакт (Рис. 2):
      Рис. 2 — Выбор колонки субъекта рекомендаций
      chapter_predicting_recommend_model_minicard_choosing_to_whom.png
    5. Что рекомендовать (Предмет) — укажите объект рекомендаций. В данном примере — колонка Продукт объекта “Продукт в заказе” (Рис. 3):

      Рис. 3 — Выбор колонки объекта рекомендаций
      chapter_predicting_recommend_model_minicard_choosing_what.png
    6. По какой колонке считать — укажите числовую колонку объекта, указанного в поле Взаимосвязь субъекта с предметом рекомендаций. По этой колонке будет выполняться расчет “силы” взаимосвязи между субъектом и предметом рекомендаций. Например, количество продуктов, заказанных определенным контактом, определяет “силу” зависимости между соответствующим контактом и различными продуктами. Если вы выберете колонку Количество, то чем больше определенных продуктов приобрел контакт, тем “сильнее” его взаимосвязь с объектом рекомендаций, и тем больший вес данная взаимосвязь будет иметь при формировании рекомендаций.

      Поле не является обязательным для заполнения. Если вы не заполните поле, то взаимодействие между субъектом и предметом будет оцениваться бинарно: “0” — взаимосвязи нет; “1” — есть взаимосвязь.

  4. Сохраните мини-карточку и перейдите к настройке параметров рекомендательной модели прогнозирования по кнопке Далее.

2. Настроить параметры модели 

После заполнения обязательных полей укажите параметры модели:

  1. Какие записи должны попасть в обучающую выборку? — настройте фильтр, на основании которого система будет отбирать записи для обучения моделей. В нашем примере необходимо сузить выборку, чтобы отслеживались взаимосвязи только с продуктами в завершенных заказах. Для этого установите следующий фильтр по связанному объекту: “Заказ.Состояние = Завершен” .

    Вы можете не указывать условия фильтрации. В этом случае для обучения будут использоваться все записи.

    На заметку. Вы можете сохранить и обучить модель уже на этом этапе по кнопке Обучить модель. В этом случае результаты обучения можно будет увидеть в поле Ожидаемая точность. Чтобы сохранить результаты прогнозирования, заполните деталь Настройка сохранения результатов прогноза.

  2. Настройка автоматического обучения модели — перетяните ползунок вправо, чтобы задать параметры автоматического переобучения модели на основании обновленных исторических данных.

    1. В поле Переобучать через, дней укажите длительность перерыва между обучениями модели. По истечении указанного количества дней модель будет отправлена на переобучение с использованием исторических данных, которые соответствуют настроенным фильтрам. Первое обучение модели проводится по нажатию кнопки Обучить модель. Если вы не хотите переобучать модель, то оставьте поле незаполненным или введите “0”.

    2. В поле Нижний порог допустимого качества укажите наименьшее допустимое значение точности прогноза. При первом обучении модели это значение определит точность прогноза, по достижении которой экземпляры модели могут применяться для работы в системе. Экземпляры, не достигшие нижнего порога допустимого качества, системой не используются. Рекомендуется указывать нижний порог допустимого качества более 0,5. Точность прогноза варьируется от 0,00 до 1,00, где 1,00 — это максимально точный прогноз, а 0,00 — наименее точный. Точность прогноза рассчитывается как отношение количества правильно спрогнозированных значений к общему количеству исторических данных, на которых проводилось обучение. Подробно о механизме расчета точности прогнозов читайте в документации Google.

  3. Настройка сохранения результатов прогноза — укажите, где в системе будет сохраняться результат прогноза. Вы можете сохранить прогноз в любом объекте системы, содержащем обязательные поля Кому рекомендовать (Субъект), Что рекомендовать (Предмет) (тип “Справочник”) и Вероятность (тип “Дробное число”). Например, вы можете добавить деталь Рекомендации продуктов на страницу контакта. Подробнее: Создать новую деталь.

    Если вы выберете данную деталь в качестве объекта прогнозирования, то названия колонок подходящего типа будут добавлены автоматически. Если таких колонок более одной, то при автозаполнении полей ниже будет указана первая из них, а остальные варианты будут доступны для выбора в выпадающем списке. Если колонок такого типа в объекте нет, то поле не заполнится. Рекомендуется проверять выбранные значения вручную перед сохранением модели.

    1. В поле Объект укажите объект, в котором будут храниться рекомендации. Обычно таким объектом является деталь. Обратите внимание, что указать можно уже существующий в системе объект. В нашем примере в данном поле можно указать предварительно созданную и настроенную деталь Рекомендации продуктов. При выборе объекта обязательными для заполнения становятся поля Кому рекомендовать (Субъект) и Что рекомендовать (Предмет).

    2. Поле Кому рекомендовать (Субъект) используется для определения субъекта рекомендаций. Поле заполняется автоматически значением колонки объекта, указанного на предыдущем шаге, например “Контакт”. При необходимости вы можете изменить значение, выбрав из выпадающего списка другую колонку подходящего типа. Поле является обязательным для заполнения.

    3. Поле Что рекомендовать (Предмет) используется для определения объекта рекомендаций. Поле заполняется автоматически значением колонки объекта, указанного на предыдущем шаге, например “Продукт”. При необходимости вы можете изменить значение, выбрав из выпадающего списка другую колонку подходящего типа. Поле является обязательным для заполнения.

    4. Поле Вероятность используется для ранжирования записей. В нашем примере чем больше значение, указанное в этой колонке, тем выше вероятность продажи. Поле заполняется автоматически значением колонки объекта, указанного на предыдущем шаге, например “Вероятность”. При необходимости вы можете изменить значение, выбрав из выпадающего списка другую колонку подходящего типа. Поле является обязательным для заполнения.

    5. Поле ML модель используется для указания названия модели машинного обучения, по которой осуществлялся прогноз. В нашем примере здесь будет указано название рекомендательной модели. Поле заполняется автоматически значением колонки объекта, указанного на предыдущем шаге, например “ML модель”. При необходимости вы можете изменить значение, выбрав из выпадающего списка другую колонку подходящего типа. Рекомендуем заполнять это поле, если вы используете несколько различных моделей прогнозирования.

    6. В поле Дата прогноза используется для указания даты, когда проводилось прогнозирование. Поле заполняется автоматически значением колонки объекта, указанного на предыдущем шаге, например “Дата прогноза”. При необходимости вы можете изменить значение, выбрав из выпадающего списка другую колонку подходящего типа. (Рис. 4).

Рис. 4 — Параметры рекомендательной модели прогнозирования
chapter_predicting_reccomend_model_additional_parameters.png

3. Добавить расширенные настройки 

Перейдите на вкладку Расширенные настройки, если вы хотите указать дополнительные параметры модели прогнозирования. Заполните поля аналогично тому, как это описано в настройках для модели прогнозирования справочного поля, а также проверьте автоматически заполненные значения в полях, специфических для данной модели машинного обучения (Рис. 5): 

  1. Список количества факторов — преднастроенный список количества показателей для каждого объекта и субъекта рекомендаций, которые система будет анализировать для подготовки рекомендаций.
  2. Список параметров регуляризации — преднастроенный список количества дополнительных ограничений, которые система будет добавлять с целью минимизации ошибок и недопущения переобучения моделей.
Рис. 5 — Расширенные параметры рекомендательной модели прогнозирования
chapter_predicting_reccomend_model_advanced_parameters.png

Результат прогнозирования 

В результате в Creatio будет создана новая модель, которую можно использовать для запуска бизнес-процессов, осуществляющих прогноз рекомендаций для выбранных субъектов системы.

Подробнее: Настроить бизнес-процесс с прогнозированием.

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

В результате на странице выбранных контактов на детали Рекомендации продуктов будут отображены рекомендованные продукты: