CREATE MINING MODEL (расширения интеллектуального анализа данных)
Позволяет создать в базе данных новую модель и структуру интеллектуального анализа данных. Модель можно создать либо путем определения новой модели в инструкции, либо с помощью языка разметки моделей прогнозов (Predictive Model Markup Language, PMML). Второй параметр рекомендуется использовать только опытным пользователям.
Имя структуры интеллектуального анализа данных формируется путем добавления строки «_structure» к имени модели, что гарантирует несовпадение имени структуры и модели.
Чтобы создать модель интеллектуального анализа данных для существующей структуры интеллектуального анализа данных, используется инструкция ALTER MINING STRUCTURE (расширения интеллектуального анализа данных).
Синтаксис
CREATE [SESSION] MINING MODEL <model>
(
[(<column definition list>)]
)
USING <algorithm> [(<parameter list>)] [WITH DRILLTHROUGH]
CREATE MINING MODEL <model> FROM PMML <xml string>
Аргументы
model
Уникальное имя модели.column definition list
Список определений столбцов с разделителями-запятыми.algorithm
Имя алгоритма интеллектуального анализа данных, определенное текущим поставщиком.Примечание Список алгоритмов, поддерживаемых текущим поставщиком, можно получить с помощью инструкции Набор строк DMSCHEMA_MINING_SERVICES. Алгоритмы, поддерживаемые в текущем экземпляре служб Службы Analysis Services, см. в разделе Свойства интеллектуального анализа данных.
parameter list
Необязательный. Список параметров, определенных поставщиком для алгоритма, с разделителями-запятыми.XML string
(Для опытных пользователей.) Модель, закодированная на языке XML (PMML). Строка должна быть заключена в одиночные кавычки (').
Предложение SESSION позволяет создавать модель интеллектуального анализа, которая автоматически удаляется с сервера при закрытии соединения или превышении времени ожидания. Модели интеллектуального анализа SESSION полезны, поскольку они не требуют от пользователя разрешений администратора базы данных и занимают место на диске, только пока открыто соединение.
Предложение WITH DRILLTHROUGH включает детализацию новой модели интеллектуального анализа данных. Включить детализацию можно только при создании модели. Для некоторых типов моделей требуется детализация для просмотра модели в пользовательском средстве просмотра. Детализация не требуется для прогноза или просмотра модели с помощью средства просмотра деревьев содержимого общего вида (Майкрософт).
Инструкция CREATE MINING MODEL позволяет создать новую модель интеллектуального анализа данных на основе списка определений столбцов, алгоритма и списка параметров алгоритма.
Список определений столбца
Структура модели, использующей список определений столбца, определяется путем включения следующих данных в каждый столбец:
Имя (обязательно)
Тип данных (обязательно)
Распространение
Список флагов моделирования
Тип содержимого (обязательно)
Запрос на прогнозирование, указывающий алгоритму на необходимость прогнозирования данного столбца и определяемый предложением PREDICT или PREDICT_ONLY.
Связь со столбцом атрибутов (обязательна, только если применима), определяемая предложением RELATED TO
Чтобы определить один столбец, используйте следующий синтаксис для списка определений столбцов:
<column name> <data type> [<Distribution>] [<Modeling Flags>] <Content Type> [<prediction>] [<column relationship>]
Чтобы определить столбец вложенной таблицы, используйте следующий синтаксис списка определений столбцов:
<column name> TABLE [<prediction>] ( <non-table column definition list> )
Для определения столбца можно использовать не более одного предложения каждого типа, за исключением флагов моделирования. Для любого столбца можно задать несколько флагов моделирования.
Список типов данных, типов содержимого, распределений столбцов и флагов моделирования, используемых при определении столбца, см. в следующих разделах.
К инструкции можно добавить предложение, описывающее связь между двумя столбцами. Службы Службы Analysis Services поддерживают использование следующего предложения <связи столбцов>.
- RELATED TO
Эта форма указывает на иерархию значений. Назначением столбца RELATED TO может быть ключевой столбец вложенной таблицы, столбец с дискретными значениями из строки вариантов или какой-либо другой столбец с предложением RELATED TO, указывающим на более глубокий уровень иерархии.
Для описания использования прогнозируемого столбца используйте прогнозирующее предложение. В следующей таблице приводится описание двух возможных предложений.
Предложение <prediction> |
Описание |
---|---|
PREDICT |
Этот столбец может быть спрогнозирован моделью и может включаться во входные варианты для прогноза значений других прогнозируемых столбцов. |
PREDICT_ONLY |
Данный столбец может быть спрогнозирован с помощью модели, однако его нельзя использовать во входных вариантах для вычисления значений других прогнозируемых столбцов. |
Список определений параметров
Список параметров может использоваться для настройки производительности и функциональности модели интеллектуального анализа данных. Синтаксис списка параметров следующий:
[<parameter> = <value>, <parameter> = <value>,…]
Список параметров, связанных с каждым алгоритмом, см. в разделе Алгоритмы интеллектуального анализа данных (службы Analysis Services — интеллектуальный анализ данных).
Замечания
Если необходимо создать модель со встроенным набором проверочных данных, следует после ALTER MINING STRUCTURE использовать инструкцию CREATE MINING STRUCTURE. При этом не все типы моделей поддерживают набор контрольных данных. Дополнительные сведения см. в разделе CREATE MINING STRUCTURE (расширения интеллектуального анализа данных).
Пошаговое руководство по созданию модели интеллектуального анализа данных при помощи инструкции CREATEMODEL см. в разделе Учебник по расширениям интеллектуального анализа данных для прогнозирования временных рядов.
Пример упрощенного алгоритма Байеса
В следующем примере для создания новой модели интеллектуального анализа данных используется упрощенный алгоритм Байеса (Майкрософт). Столбец Bike Buyer определяется как прогнозируемый атрибут.
CREATE MINING MODEL [NBSample]
(
CustomerKey LONG KEY,
Gender TEXT DISCRETE,
[Number Cars Owned] LONG DISCRETE,
[Bike Buyer] LONG DISCRETE PREDICT
)
USING Microsoft_Naive_Bayes
Пример модели взаимосвязей
В следующем примере для создания новой модели интеллектуального анализа данных используется алгоритм взаимосвязей (Майкрософт). Преимуществом инструкции является возможность вложения таблицы внутри определения модели с помощью табличного столбца. Модель изменяется с помощью параметров MINIMUM_PROBABILITY и MINIMUM_SUPPORT.
CREATE MINING MODEL MyAssociationModel (
OrderNumber TEXT KEY,
[Products] TABLE PREDICT (
[Model] TEXT KEY
)
)
USING Microsoft_Association_Rules (Minimum_Probability = 0.1, MINIMUM_SUPPORT = 0.01)
Пример кластеризации последовательностей
В следующем примере для создания новой модели интеллектуального анализа данных используется алгоритм кластеризации последовательностей (Майкрософт). Чтобы определить модель, используются два ключа. Столбец OrderNumber используется в качестве ключа варианта и задает отдельные заказы. Столбец LineNumber используется в качестве ключа вложенной таблицы и задает последовательность добавления пунктов в заказ.
CREATE MINING MODEL BuyingSequence (
[Order Number] TEXT KEY,
[Products] TABLE
(
[Line Number] LONG KEY SEQUENCE,
[Model] TEXT DISCRETE PREDICT
)
)
USING Microsoft_Sequence_Clustering
Пример алгоритма временных рядов
В следующем примере для создания новой модели интеллектуального анализа данных используется алгоритм временных рядов (Майкрософт) на основе алгоритма ARTxp. ReportingDate – это ключевой столбец для временного ряда, а ModelRegion – ключевой столбец для ряда данных. В этом примере предполагается, что периодичность данных составляет 12 месяцев. Поэтому параметр PERIODICITY_HINT получает значение 12.
Примечание |
---|
Параметр PERIODICITY_HINT должен быть указан с помощью фигурных скобок. Более того, поскольку значение является строкой, его необходимо заключать в одиночные кавычки: "{<числовое значение>}". |
CREATE MINING MODEL SalesForecast (
ReportingDate DATE KEY TIME,
ModelRegion TEXT KEY,
Amount LONG CONTINUOUS PREDICT,
Quantity LONG CONTINUOUS PREDICT
)
USING Microsoft_Time_Series (PERIODICITY_HINT = '{12}', FORECAST_METHOD = 'ARTXP')