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


Алгоритм дерева принятия решений (Майкрософт)

Алгоритм дерева принятия решений (Майкрософт) представляет собой регрессивный алгоритм и алгоритм классификации, предоставляемый службами Microsoft SQL Server 2005 Analysis Services (SSAS) для использования в прогнозирующем моделировании как дискретных, так и непрерывных атрибутов.

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

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

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

Пример

Отделу маркетинга компании Adventure Works Cycle нужно идентифицировать характеристики предыдущих заказчиков, которые могут указывать на высокую вероятность приобретения этими заказчиками продукта в будущем. В базе данных AdventureWorks хранятся демографические данные, описывающие предыдущих заказчиков. Используя алгоритм дерева принятия решений (Майкрософт) для анализа этих данных, маркетинговый отдел может построить модель, которая прогнозирует, будет ли конкретный заказчик покупать продукты, на основании состояний известных столбцов, содержащих данные об этом заказчике, например демографические данные и сведения о покупках в прошлом.

Принцип работы алгоритма

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

Прогнозирование дискретных столбцов

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

Гистограмма из алгоритма дерева принятия решений (Microsoft)

Корреляция, показанная на диаграмме, приведет к тому, что алгоритм дерева принятия решений (Майкрософт) создаст новый узел в модели.

Узел дерева принятия решений

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

Прогнозирование непрерывных столбцов

Когда алгоритм дерева принятия решений (Майкрософт) строит дерево, основанное на непрерывном прогнозируемом столбце, каждый узел содержит регрессионную формулу. Разбиение осуществляется в точке нелинейности в этой регрессионной формуле. Например, рассмотрим следующую диаграмму.

Линии множественной регрессии, показывающие нелинейность

Диаграмма содержит данные, которые можно моделировать либо используя одиночную линию, либо используя две соединенные линии. Однако одиночная линия не обеспечит надлежащего представления данных. Вместо этого при использовании двух линий модель обеспечит гораздо более точное приближение данных. Точка соединения этих двух линий является точкой нелинейности и представляет собой точку, в которой разобьется узел в модели дерева решений. Например, узел, соответствующий точке нелинейности на предыдущем графике, может быть представлен следующей диаграммой. Эти два уравнения представляют регрессионные уравнения для этих двух линий.

Уравнение, представляющее точку нелинейности

Использование алгоритма

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

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

Типы содержимого входных столбцов

Continuous, Cyclical, Discrete, Discretized, Key, Table и Ordered

Типы содержимого прогнозируемых столбцов

Непрерывные, циклические, дискретные, дискретизированные, табличные и упорядоченные

Флаги моделирования

MODEL_EXISTENCE_ONLY, NOT NULL и REGRESSOR

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

IsDescendant

PredictNodeId

IsInNode

PredictProbability

PredictAdjustedProbability

PredictStdev

PredictAssociation

PredictSupport

PredictHistogram

PredictVariance

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

Алгоритм дерева принятия решений (Майкрософт) поддерживает использование языка разметки прогнозирующих моделей (PMML) для создания моделей интеллектуального анализа данных.

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

Параметр Описание

MAXIMUM_INPUT_ATTRIBUTES

Определяет количество входных атрибутов, которые алгоритм может обработать перед вызовом выбора компонентов. Установите значение 0, чтобы отключить выбор компонентов.

Значение по умолчанию равно 255.

MAXIMUM_OUTPUT_ATTRIBUTES

Определяет количество выходных атрибутов, которые алгоритм может обработать перед вызовом выбора компонентов. Установите значение 0, чтобы отключить выбор компонентов.

Значение по умолчанию равно 255.

SCORE_METHOD

Определяет метод, используемый для вычисления коэффициента разбиения. Доступные параметры: Энтропия (1), априорный метод Байеса с K2 (2) или априорный эквивалент Дирихле метода Байеса (BDE) (3).

Значение по умолчанию равно 3.

SPLIT_METHOD

Определяет метод, используемый для разбиения узла. Доступные параметры: двоичный (1), полный (2) или оба (3).

Значение по умолчанию равно 3.

MINIMUM_SUPPORT

Определяет минимальное количество конечных вариантов, необходимых для формирования разбиения в дереве решений.

Значение по умолчанию равно 10.

COMPLEXITY_PENALTY

Управляет ростом дерева решений. Низкое значение увеличивает количество разбиений, а высокое количество — уменьшает. Значение по умолчанию основано на количестве атрибутов для конкретной модели, как описано в следующем списке.

  • Для атрибутов с 1 по 9 значением по умолчанию является 0,5.
  • Для атрибутов с 10 до 99 значением по умолчанию является 0,9.
  • Для 100 или более атрибутов значением по умолчанию является 0,99.

FORCED_REGRESSOR

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

См. также

Основные понятия

Алгоритмы интеллектуального анализа данных
Мастер интеллектуального анализа данных
Выбор компонентов в интеллектуальном анализе данных
Просмотр модели интеллектуального анализа данных с помощью средства просмотра деревьев (Microsoft)

Другие ресурсы

CREATE MINING MODEL (расширения интеллектуального анализа данных)

Справка и поддержка

Получение помощи по SQL Server 2005