Поделиться через


Содержимое моделей интеллектуального анализа данных для моделей упрощенного алгоритма Байеса (службы Analysis Services — интеллектуальный анализ данных)

Применимо к: SQL Server 2019 и более ранних версий Analysis Services Azure Analysis Services Fabric/Power BI Premium

Важно!

Интеллектуальный анализ данных не рекомендуется использовать в службах SQL Server 2017 Analysis Services, а в SQL Server 2022 Analysis Services его поддержка прекращена. Документация не обновляется для устаревших и неподдерживаемых функций. Дополнительные сведения см. в статье об обратной совместимости служб Analysis Services.

В этом разделе описывается содержимое модели интеллектуального анализа данных, относящееся к моделям, которые используют упрощенный алгоритм Байеса (Майкрософт). Объяснение того, как интерпретировать статистику и структуру, общие для всех типов моделей, а также общие определения терминов, связанных с содержимым модели интеллектуального анализа данных, см. в разделе Содержимое модели интеллектуального анализа данных (службы Analysis Services — интеллектуальный анализ данных).

Основные сведения о структуре модели упрощенного алгоритма Байеса

Модель упрощенного алгоритма Байеса состоит из одного родительского узла, который представляет модель и ее метаданные, и нескольких независимых деревьев, расположенных под родительским узлом и представляющих выбранные прогнозируемые атрибуты. Помимо деревьев для атрибутов, каждая модель содержит один узел граничной статистики (NODE_TYPE = 26), в котором приведена описательная статистика по набору обучающих вариантов. Дополнительные сведения см. в разделе Данные в узле граничной статистики.

Для каждого прогнозируемого атрибута со значением модель формирует дерево, содержащее сведения, которые описывают, как различные входные столбцы влияют на результат по данному прогнозируемому значению. Каждое дерево содержит прогнозируемый атрибут и его значение (NODE_TYPE = 9), а затем ряд узлов, представляющих входные атрибуты (NODE_TYPE = 10). Поскольку входные атрибуты обычно имеют несколько значений, каждый входной атрибут (NODE_TYPE = 10) может иметь несколько дочерних узлов (NODE_TYPE = 11), каждый из которых соответствует определенному состоянию атрибута.

Примечание

Поскольку модель упрощенного алгоритма Байеса не поддерживает непрерывные типы данных, все значения входных столбцов считаются дискретными или дискретизированными. Можно задать способ дискретизации значения. Дополнительные сведения см. в разделе Изменение дискретизации столбца в модели интеллектуального анализа данных.

Структура содержимого модели для наивного байе

Содержимое модели упрощенного алгоритма Байеса

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

Сведения о столбцах общего назначения в наборе строк схемы, таких как MODEL_CATALOG и MODEL_NAME, которые не описаны здесь, или объяснение терминологии модели интеллектуального анализа данных см. в разделе Содержимое модели интеллектуального анализа данных (службы Analysis Services — интеллектуальный анализ данных).

MODEL_CATALOG
Имя базы данных, в которой хранится модель.

MODEL_NAME
Имя модели.

ATTRIBUTE_NAME
Имена атрибутов, соответствующих этому узлу.

Узел модели Имя прогнозируемого атрибута.

Граничная статистика Неприменимо

Прогнозируемый атрибут Имя прогнозируемого атрибута.

Входной атрибут Имя входного атрибута.

Состояние входного атрибута Только имя входного атрибута. Чтобы получить состояние, используйте столбец MSOLAP_NODE_SHORT_CAPTION.

NODE_NAME
Имя узла.

Этот столбец содержит те же значения, что и NODE_UNIQUE_NAME.

Дополнительные сведения о правилах выбора имен для узлов см. в разделе Использование имен и идентификаторов узлов.

NODE_UNIQUE_NAME
Уникальное имя узла. Уникальные имена присваиваются в соответствии с правилом, по которому имя должно содержать сведения о связях между узлами. Дополнительные сведения о правилах выбора имен для узлов см. в разделе Использование имен и идентификаторов узлов.

NODE_TYPE
Выходными данными модели упрощенного алгоритма Байеса являются узлы следующих типов.

Идентификатор типа узла Описание
26 (NaiveBayesMarginalStatNode) Содержит статистику, описывающую весь набор обучающих вариантов для модели.
9 (прогнозируемый атрибут) Содержит имя прогнозируемого атрибута.
10 (входной атрибут) Содержит имя столбца входного атрибута и дочерние узлы, содержащие значения этого атрибута.
11 (состояние входного атрибута) Содержит значения или дискретизированные значения всех входных атрибутов, связанных с заданным выходным атрибутом.

NODE_CAPTION
Метка или заголовок, связанный с узлом. Этой свойство используется главным образом для отображения.

Корневой элемент модели Пусто

Граничная статистика пуста

Прогнозируемый атрибут Имя прогнозируемого атрибута.

Входной атрибут Имя прогнозируемого атрибута и текущего входного атрибута. Например,

Покупатель велосипеда -> возраст

Состояние входного атрибута Имя прогнозируемого атрибута и текущего входного атрибута, а также значение входного атрибута. Например,

Покупатель велосипеда -> Возраст = Отсутствует

CHILDREN_CARDINALITY
Количество имеющихся у узла потомков.

Корневой элемент модели Количество прогнозируемых атрибутов в модели плюс 1 для узла граничной статистики.

Граничная статистика По определению не имеет потомков.

Прогнозируемый атрибут Количество входных атрибутов, связанных с текущим прогнозируемым атрибутом.

Входной атрибут Количество дискретных или дискретизированных значений для текущего входного атрибута.

Состояние входного атрибута Значение всегда равно 0.

PARENT_UNIQUE_NAME
Уникальное имя родительского узла. Дополнительные сведения о связи между родительскими и дочерними узлами см. в разделе Использование имен и идентификаторов узлов.

NODE_DESCRIPTION
Значение совпадает с заголовком узла.

NODE_RULE
XML-представление заголовка узла.

MARGINAL_RULE
Значение совпадает с правилом узла.

NODE_PROBABILITY
Вероятность, связанная с этим узлом.

Корневой элемент модели Значение всегда равно 0.

Граничная статистика Значение всегда равно 0.

Прогнозируемый атрибут Всегда 1.

Входной атрибут Значение всегда равно 1.

Состояние входного атрибута Десятичное число, представляющее вероятность текущего значения. Значения для всех состояний входного атрибута, имеющих входной атрибут общим родителем, в сумме составляют 1.

MARGINAL_PROBABILITY
Значение совпадает с вероятностью узла.

NODE_DISTRIBUTION
Таблица, содержащая гистограмму вероятности для узла. Дополнительные сведения см. в разделе Таблица NODE_DISTRIBUTION.

NODE_SUPPORT
Число вариантов, поддерживаемое этим узлом.

Корневой элемент модели Количество всех вариантов в обучающих данных.

Граничная статистика Значение всегда равно 0.

Прогнозируемый атрибут Количество всех вариантов в обучающих данных.

Входной атрибут Количество всех вариантов в обучающих данных.

Состояние входного атрибута Количество вариантов в обучающих данных, которые содержат только это выбранное значение.

MSOLAP_MODEL_COLUMN
Метка, используемая для отображения. Значение обычно совпадает с ATTRIBUTE_NAME.

MSOLAP_NODE_SCORE
Представляет важность атрибута или значения в модели.

Корневой элемент модели Значение всегда равно 0.

Граничная статистика Значение всегда равно 0.

Прогнозируемый атрибут Всегда 0.

Входной атрибут Оценка интересности для текущего входного атрибута относительно текущего прогнозируемого атрибута.

Состояние входного атрибута Значение всегда равно 0.

MSOLAP_NODE_SHORT_CAPTION
Текстовая строка, представляющая имя или значение столбца.

Корень модели Пустой

Граничная статистика Пусто

Прогнозируемый атрибут Имя прогнозируемого атрибута.

Входной атрибут Имя входного атрибута.

Состояние входного атрибута Значение или дискретизированное значение входного атрибута.

Использование имен и идентификаторов узлов

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

Тип узла Стандартный идентификатор узла
Корневой элемент модели (1) Всегда равно 0.
Узел граничной статистики (26) Произвольное значение идентификатора.
Прогнозируемый атрибут (9) Шестнадцатеричное число, начинающееся с 10000000

Пример: 100000001, 10000000b
Входной атрибут (10) Шестнадцатеричное число из двух частей, первая из которых всегда равна 20000000, а вторая начинается с шестнадцатеричного идентификатора связанного прогнозируемого атрибута.

Пример: 20000000b00000000

В этом случае связанный прогнозируемый атрибут имеет идентификатор 10000000b.
Состояние входного атрибута (11) Шестнадцатеричное число из трех частей, первая из которых всегда равна 30000000, вторая начинается с шестнадцатеричного идентификатора связанного прогнозируемого атрибута, а третья представляет идентификатор значения.

Пример: 30000000b00000000200000000

В этом случае связанный прогнозируемый атрибут имеет идентификатор 10000000b.

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

SELECT NODE_NAME, NODE_CAPTION  
FROM TM_NaiveBayes.CONTENT  
WHERE NODE_TYPE = 10  

Ожидаемый результат:

NODE_NAME NODE_CAPTION
20000000000000001 Покупатель велосипеда -> Поездки расстояние
20000000000000002 Покупатель велосипедов -> Английский образование
20000000000000003 Покупатель велосипедов -> английский род занятий
20000000000000009 Покупатель велосипеда -> семейное положение
2000000000000000a Покупатель велосипеда -> Количество детей на дому
2000000000000000b Покупатель велосипедов —> регион
2000000000000000c Покупатель велосипеда -> Всего детей

Затем можно использовать идентификаторы родительских узлов, чтобы получить дочерние узлы. Следующий запрос возвращает узлы, содержащие значения для атрибута Marital Status , а также вероятность каждого узла.

SELECT NODE_NAME, NODE_CAPTION, NODE_PROBABILITY  
FROM TM_NaiveBayes.CONTENT  
WHERE NODE_TYPE = 11  
AND [PARENT_UNIQUE_NAME] = '20000000000000009'  

Примечание

Имя столбца PARENT_UNIQUE_NAME необходимо заключить в квадратные скобки, чтобы отличить его от зарезервированного ключевого слова с тем же именем.

Ожидаемый результат:

NODE_NAME NODE_CAPTION NODE_PROBABILITY
3000000000000000900000000 Покупатель велосипеда -> семейное положение = отсутствует 0
3000000000000000900000001 Покупатель велосипеда -> семейное положение = S 0.457504004
3000000000000000900000002 Покупатель велосипеда -> семейное положение = M 0.542495996

Таблица NODE_DISTRIBUTION

Столбец вложенной таблицы NODE_DISTRIBUTION обычно содержит статистику о распределении значений в узле. В модели упрощенного алгоритма Байеса эта таблица заполняется только для следующих узлов.

Тип узла Содержимое вложенной таблицы
Корневой элемент модели (1) Пусто.
Узел граничной статистики (24) Содержит сводные данные по всем прогнозируемым атрибутам и входным атрибутам во всем наборе обучающих данных.
Прогнозируемый атрибут (9) Пусто.
Входной атрибут (10) Пусто.
Состояние входного атрибута (11) Содержит статистику, описывающую распределение значений в обучающих данных для данного сочетания прогнозируемого значения и значения входного атрибута.

Идентификаторы или заголовки узлов можно использовать, чтобы получить увеличенный уровень детализации данных. Например, следующий запрос возвращает определенные столбцы из таблицы NODE_DISTRIBUTION только для тех узлов входных атрибутов, которые связаны со значением 'Marital Status = S'.

SELECT FLATTENED NODE_CAPTION,  
(SELECT ATTRIBUTE_NAME, ATTRIBUTE_VALUE, [SUPPORT], [PROBABILITY], VALUETYPE  
FROM NODE_DISTRIBUTION) as t  
FROM TM_NaiveBayes.content  
WHERE NODE_TYPE = 11  
AND NODE_CAPTION = 'Bike Buyer -> Marital Status = S'  

Ожидаемый результат:

NODE_CAPTION T.ATTRIBUTE_NAME t.ATTRIBUTE_VALUE t.SUPPORT t.PROBABILITY t.VALUETYPE
Покупатель велосипеда -> семейное положение = S Покупатель велосипеда Missing 0 0 1
Покупатель велосипеда -> семейное положение = S Покупатель велосипеда 0 3783 0.472934117 4
Покупатель велосипеда -> семейное положение = S Покупатель велосипеда 1 4216 0.527065883 4

В этих результатах значение столбца SUPPORT сообщает число клиентов с указанным семейным положением, которые приобрели велосипед. Столбец PROBABILITY содержит вероятность каждого значения атрибута, рассчитанную только для этого узла. Общие определения терминов, используемых в таблице NODE_DISTRIBUTION, см. в разделе Содержимое модели интеллектуального анализа данных (службы Analysis Services — интеллектуальный анализ данных).

Данные в узле граничной статистики

В модели упрощенного алгоритма Байеса вложенная таблица для узла граничной статистики содержит распределение значений для всего набора обучающих данных. Например, в следующей таблице содержится частичный список статистических данных из вложенной таблицы NODE_DISTRIBUTION для модели TM_NaiveBayes.

ATTRIBUTE_NAME ATTRIBUTE_VALUE Псевдоним PROBABILITY дисперсия VALUETYPE
Покупатель велосипеда Missing 0 0 0 1
Покупатель велосипеда 0 8869 0.507263784 0 4
Покупатель велосипеда 1 8615 0.492736216 0 4
Семейное положение Missing 0 0 0 1
Семейное положение S 7999 0.457504004 0 4
Семейное положение M 9485 0.542495996 0 4
Общее количество детей Missing 0 0 0 1
Общее количество детей 0 4865 0.278254404 0 4
Общее количество детей 3 2093 0.119709449 0 4
Общее количество детей 1 3406 0.19480668 0 4

В результат включен столбец [Bike Buyer], поскольку узел граничной статистики всегда содержит описание прогнозируемого атрибута и его возможные значения. Все остальные упомянутые столбцы представляют входные атрибуты вместе со значениями, использованными в модели. Значения могут быть только отсутствующими, дискретными или дискретизированными.

В модели упрощенного алгоритма Байеса не могут присутствовать непрерывные атрибуты, и поэтому все числовые данные представляются как дискретные (VALUE_TYPE = 4) либо дискретизированные (VALUE_TYPE = 5).

Значение Missing (VALUE_TYPE = 1) добавляется к каждому входному и выходному атрибуту, представляя возможные значения, которые не присутствовали в обучающих данных. Важно различать строку «missing» и значение Missing по умолчанию. Дополнительные сведения см. в разделе Отсутствующие значения (службы Analysis Services — интеллектуальный анализ данных).

См. также:

Содержимое модели интеллектуального анализа данных (службы Analysis Services — интеллектуальный анализ данных)
Средства просмотра моделей интеллектуального анализа данных
Запросы интеллектуального анализа данных
Microsoft Naive Bayes Algorithm