Готовишься к экзамену?
Полнофункциональный тренажер @bot_1cnik_bot с полноценным обучением, режимом экзамена и подробной статистикой.
В платформе 1С объект типа «МодельПрогноза» (для механизма анализа данных и прогнозирования) как получается в коде?
Он формируется на основе результата выполненного анализа данных (из объекта «РезультатАнализа…»)
Правильно: Модель прогноза создается только после того, как анализ данных уже выполнен и получен объект результата анализа. Далее у результата вызывают метод создания модели (например, «СоздатьМодельПрогноза()»), и именно он возвращает объект «МодельПрогноза» нужного вида.
Он появляется при обращении к одноименному свойству глобального контекста (например, «МодельПрогноза = МодельПрогноза»)
Неправильно: В глобальном контексте нет свойства, которое бы «выдавало» готовую модель прогноза по имени, как это бывает у менеджеров метаданных (Справочники, Документы и т.п.). Модель прогноза привязана к конкретному результату анализа и не может быть получена простым обращением к глобальному свойству.
Его можно создать напрямую через конструктор «Новый МодельПрогноза()»
Неправильно: «МодельПрогноза» не создается как обычный объект общего назначения через «Новый», потому что ей нужны параметры, сформированные механизмом анализа (правила, структуры, коэффициенты и т.д.). Поэтому корректный путь - только через результат анализа, который «собирает» модель и возвращает ее готовой.
Пояснение
Модель прогноза в 1С - это следующий шаг после анализа данных: сначала вы выполняете анализ (например, дерево решений, поиск ассоциаций, кластеризацию), получаете «РезультатАнализа…», и уже из него строите модель, которая умеет прогнозировать новые данные.
Типовой сценарий (упрощенно):
1) Подготовить источник данных (таблица значений/запрос/выгрузка), указать параметры анализа.
2) Выполнить анализ и получить объект результата, например:
- РезультатАнализа = Анализ.Выполнить();
3) Создать модель прогноза именно из результата:
- Модель = РезультатАнализа.СоздатьМодельПрогноза();
4) Передать в модель новые данные для прогноза (источник) и выполнить прогноз:
- Модель.ИсточникДанных = НовыеДанные;
- РезультатПрогноза = Модель.Выполнить();
Почему это важно:
- У разных видов анализа разные внутренние структуры результата (деревья, правила, кластеры, ассоциации). Модель прогноза должна унаследовать эти структуры, поэтому она не может появиться «сама» из глобального контекста.
- Создание через «Новый» не подходит, потому что без результата анализа модель будет «пустой» и не будет содержать знаний, необходимых для прогнозирования.
Практический пример использования:
- Вы анализируете продажи, чтобы понять, какие товары часто покупают вместе (анализ ассоциаций). После анализа создаете модель прогноза и подаете ей набор товаров из текущей корзины - модель возвращает рекомендации, какие позиции вероятнее всего купят дополнительно.