Флаги моделирования (интеллектуальный анализ данных)
Флаги моделирования можно использовать в службах SQL Server Analysis Services, чтобы включить в алгоритм интеллектуального анализа данных дополнительные сведения о данных, которые определены в таблице вариантов. Алгоритм может использовать эти сведения для создания более точной модели интеллектуального анализа данных.
Некоторые флаги модели определены на уровне структуры интеллектуального анализа данных, а другие определены на уровне столбца модели интеллектуального анализа данных. Например, флаг моделирования NOT NULL используется со столбцами структуры интеллектуального анализа данных. В столбцах модели интеллектуального анализа данных можно определить дополнительные флаги модели в зависимости от алгоритма, используемого при создании модели.
Примечание |
---|
В подключаемых модулях сторонних разработчиков могут использоваться другие флаги модели, дополняющие стандартные флаги служб Analysis Services. |
Список флагов модели
В следующем списке приведено описание флагов модели, которые поддерживаются в службах Analysis Services. Сведения о флагах моделирования, поддерживаемых конкретными алгоритмами, см. в разделе технического справочника для алгоритма, с помощью которого была создана модель.
NOT NULL
Указывает, что значения столбца атрибутов не должны включать значение NULL. Если службы Analysis Services найдут значение NULL в данном столбце атрибутов в процессе обучения модели, будет выдана ошибка.MODEL_EXISTENCE_ONLY
Указывает, что столбец должен рассматриваться как имеющий два состояния: Missing и Existing. Если значение составляет NULL, оно рассматривается как недостающее. Флаг MODEL_EXISTENCE_ONLY применяется к прогнозируемому атрибуту и поддерживается большинством алгоритмов.Фактически установка для флага MODEL_EXISTENCE_ONLY значения True меняет представление значений так, что становятся возможными только два состояния: Missing и Existing. Все неотсутствующие состояния объединяются в единое значение Existing.
Этот флаг моделирования, как правило, используется в атрибутах, для которых состояние NULL имеет неявный смысл, а явно заданное значение состояния NOT NULL может не быть столь важным, как факт, что этот столбец имеет некоторое значение. Например, в столбце [DateContractSigned] может присутствовать значение NULL, если контракт не подписан, и значение NOT NULL, если контракт подписан. Поэтому, если назначение модели состоит в прогнозировании того, что контракт будет подписан, можно использовать флаг MODEL_EXISTENCE_ONLY для пропуска точного значения даты в вариантах со значением NOT NULL и проведения различия только между вариантами, в которых контракт отсутствует (Missing) или существует (Existing).
Примечание Недостающее состояние — это специальное состояние, используемое алгоритмом, и его не следует путать с текстовым значением «Missing» в столбце. Дополнительные сведения см. в разделе Отсутствующие значения (службы Analysis Services — интеллектуальный анализ данных).
REGRESSOR
Указывает, что столбец во время обработки может использоваться в качестве регрессора. Этот флаг определяется в столбце модели интеллектуального анализа данных и применим только к столбцам с непрерывным числовым типом данных. Дополнительные сведения об использовании этого флага см. в подразделе Использование флага моделирования Regressor.
Просмотр и смена флагов модели
В конструкторе моделей интеллектуального анализа данных можно просматривать флаги модели, связанные со столбцом структуры интеллектуального анализа или столбцом модели, рассматривая свойства структуры или модели.
Чтобы определить, какие флаги модели применены к текущей структуре интеллектуального анализа, можно создать запрос к набору строк схемы интеллектуального анализа данных, возвращающий флаги моделирования только для столбцов структуры, наподобие следующего.
SELECT COLUMN_NAME, MODELING_FLAG
FROM $system.DMSCHEMA_MINING_STRUCTURE_COLUMNS
WHERE STRUCTURE_NAME = '<structure name>'
В конструкторе моделей интеллектуального анализа данных можно добавить или изменить флаги модели, используемые в модели, отредактировав свойства связанных столбцов. Для таких изменений требуется повторная обработка структуры или модели.
Флаги модели можно указать в новой структуре или модели интеллектуального анализа данных с помощью расширения интеллектуального анализа данных либо с помощью скриптов объектов AMO или XMLA. Однако возможность изменения флагов модели, используемых в существующей модели и структуре интеллектуального анализа данных, с помощью расширения интеллектуального анализа данных не предусмотрена. Необходимо создать новую модель интеллектуального анализа, используя синтаксис ALTER MINING STRUCTURE….ADD MINING MODEL.
Использование флага моделирования REGRESSOR
Если для столбца задан флаг модели REGRESSOR, он указывает алгоритму, что столбец содержит потенциальные регрессоры. Фактические регрессоры, используемые в модели, определяются алгоритмом. Потенциальный регрессор может быть отброшен, если он не моделирует прогнозируемый атрибут.
При создании модели с использованием мастера интеллектуального анализа данных все непрерывные входные столбцы отмечаются как возможные регрессоры. Поэтому, даже если пользователь не задает явно флаг REGRESSOR для какого-либо столбца, может оказаться, что этот столбец используется как регрессор в модели.
Можно определить, какие регрессоры фактически использовались в обрабатываемой модели, выполнив запрос к набору строк схемы, относящемуся к модели интеллектуального анализа данных, как показано в следующем примере.
SELECT COLUMN_NAME, MODELING_FLAG
FROM $system.DMSCHEMA_MINING_COLUMNS
WHERE MODEL_NAME = '<model name>'
Примечание Если внесены изменения в модель интеллектуального анализа данных и тип содержимого какого-то столбца изменен с непрерывного на дискретный, необходимо вручную изменить указанный флаг для этого столбца интеллектуального анализа, а затем повторно обработать модель.
Регрессоры в моделях линейной регрессии
Модели линейной регрессии основаны на алгоритме дерева принятия решений Майкрософт. Даже если не используется алгоритм линейной регрессии (Майкрософт), любая модель дерева принятия решений может содержать дерево или узлы, представляющие регрессию применительно к какому-то непрерывному атрибуту.
Поэтому в таких моделях не обязательно указывать, что непрерывный столбец представляет собой регрессор. Алгоритм дерева принятия решений (Майкрософт) секционирует набор данных на области со значимыми шаблонами, даже если для столбца не задан флаг REGRESSOR. Различие между указанными случаями состоит в том, что если пользователем задан флаг моделирования, то алгоритм попытается найти регрессионные уравнения в следующей форме для подгонки шаблонов к узлам дерева.
a*C1 + b*C2 + ...
Далее вычисляется сумма остатков, и, если отклонение слишком велико, принудительно выполняется разбиение дерева.
Например, если осуществляется прогноз поведения клиента в процессе покупки с использованием дохода, Income, в качестве атрибута и на соответствующем столбце Income устанавливается флаг модели REGRESSOR, то в алгоритме вначале предпринимается попытка выполнить подгонку значений Income с применением стандартной формулы регрессии. Если отклонение слишком велико, то происходит отказ от применения формулы регрессии и разбиение дерева осуществляется по какому-то другому атрибуту. Затем в алгоритме дерева принятия решений предпринимается попытка подгонки регрессора к доходу в каждой из ветвей, полученных после разбиения.
Можно применить параметр FORCE_REGRESSOR для обеспечения того, чтобы в алгоритме использовался конкретный регрессор. Этот параметр может применяться с алгоритмом дерева принятия решений и алгоритмом линейной регрессии.
Связанные задачи
Следующие ссылки помогут узнать больше об использовании флагов модели.
Задача |
Раздел |
---|---|
Редактирование флагов моделирования с помощью конструктора интеллектуального анализа данных |
Просмотр или изменение флагов модели (интеллектуальный анализ данных) |
Определение указания для алгоритма с рекомендацией вероятных регрессоров |
Указание столбца, который будет использоваться в модели в качестве регрессора |
Просмотр флагов модели, поддерживаемых конкретными алгоритмами (в подразделе «Флаги моделирования») каждого раздела справки по алгоритму) |
|
Дополнительные сведения о столбцах структуры интеллектуального анализа и свойствах, которые для них можно задать |
|
Дополнительные сведения о столбцах модели интеллектуального анализа данных и флагах моделирования, которые можно применить на уровне модели |
|
Просмотр синтаксиса для работы с флагами модели в инструкциях расширений интеллектуального анализа данных |
Флаги моделирования (расширения интеллектуального анализа данных) |
Понятие отсутствующих значений и работа с ними |
Отсутствующие значения (службы Analysis Services — интеллектуальный анализ данных) |
Сведения об управлении моделями и структурами, а также о задании свойств использования |