Condividi tramite


ALTER MINING STRUCTURE (DMX)

Si applica a: SQL Server Analysis Services

Crea un nuovo modello di data mining basato su una struttura di data mining esistente. Quando si utilizza l'istruzione ALTER MINING STRUCTURE per creare un nuovo modello di data mining, la struttura deve già esistere. Al contrario, quando si usa l'istruzione CREATE MINING MODEL (DMX), si crea un modello e si genera automaticamente la struttura di data mining sottostante contemporaneamente.

Sintassi

  
ALTER MINING STRUCTURE <structure>  
ADD MINING MODEL <model>  
(  
    <column definition list>  
  [(<nested column definition list>) [WITH FILTER (<nested filter criteria>)]]  
)  
USING <algorithm> [(<parameter list>)]   
[WITH DRILLTHROUGH]  
[,FILTER(<filter criteria>)]  

Argomenti

struttura
Nome della struttura di data mining a cui verrà aggiunto il modello di data mining.

model
Nome univoco del modello di data mining.

elenco di definizioni di colonna
Elenco delimitato da virgole contenente le definizioni delle colonne.

elenco di definizioni di colonna nidificate
Elenco delimitato da virgole delle colonne di una tabella nidificata, se applicabile.

criteri di filtro annidati
Espressione di filtro applicata alle colonne di una tabella nidificata.

algorithm
Nome di un algoritmo di data mining, definito dal provider.

Nota

È possibile recuperare un elenco degli algoritmi supportati dal provider corrente usando DMSCHEMA_MINING_SERVICES Set di righe. Per visualizzare gli algoritmi supportati nell'istanza corrente di Analysis Services, vedere Proprietà di data mining.

elenco di parametri
Facoltativo. Elenco delimitato da virgole dei parametri definiti dal provider per l'algoritmo.

criteri di filtro
Espressione di filtro applicata alle colonne della tabella del case.

Osservazioni:

Se la struttura di data mining contiene chiavi composte, il modello di data mining dovrà includere tutte le colonne chiave definite nella struttura.

Se il modello non richiede una colonna stimabile, ad esempio modelli compilati usando gli algoritmi Microsoft Clustering e Microsoft Sequence Clustering, non è necessario includere una definizione di colonna nell'istruzione . Tutti gli attributi nel modello risultante verranno gestiti come input.

Nella clausola WITH applicabile alla tabella case è possibile specificare le opzioni per il filtro e il drill-through:

  • Aggiungere la parola chiave FILTER e una condizione di filtro. Il filtro si applica ai case nel modello di data mining.

  • Aggiungere la parola chiave DRILLTHROUGH per consentire agli utenti del modello di data mining di eseguire il drill-down dai risultati del modello ai dati del case. In DMX (Data Mining Extensions) è possibile abilitare il drill-through solo al momento della creazione del modello.

Per usare il filtro di maiuscole e minuscole e il drill-through, combinare le parole chiave in una singola clausola WITH usando la sintassi illustrata nell'esempio seguente:

WITH DRILLTHROUGH, FILTER(Gender = 'Male')

Elenco delle definizioni di colonna

Per definire la struttura di un modello, specificare un elenco delle definizioni di colonna che include le informazioni seguenti per ogni colonna:

  • Nome (obbligatorio)

  • Alias (facoltativo)

  • Flag di modellazione

  • Richiesta di stima, che indica all'algoritmo se la colonna contiene un valore stimabile, indicato dalla clausola PREDICT o PREDICT_ONLY

Per definire una singola colonna, utilizzare la sintassi seguente nell'elenco delle definizioni di colonna:

<structure column name>  [AS <model column name>]  [<modeling flags>]    [<prediction>]  

Nome e alias di colonna

Il nome di colonna utilizzato nell'elenco delle definizioni di colonna deve essere il nome della colonna così come viene utilizzato nella struttura di data mining. Tuttavia, è anche possibile definire un alias per rappresentare la colonna della struttura nel modello di data mining. È inoltre possibile creare più definizioni di colonna per la stessa colonna della struttura e assegnare un alias e un utilizzo di stima diversi a ogni copia della colonna. Per impostazione predefinita, il nome della colonna della struttura viene utilizzato se non viene definito un alias. Per altre informazioni, vedere Creare un alias per una colonna del modello.

Per le colonne di tabella nidificate, specificare il nome della tabella nidificata, specificare il tipo di dati come TABLE e quindi specificare l'elenco di colonne nidificate da includere nel modello, racchiuse tra parentesi.

È possibile definire un'espressione di filtro che viene applicata alla tabella nidificata aggiungendo un'espressione di criteri di filtro dopo la definizione di colonna della tabella nidificata.

Flag di modellazione

Analysis Services supporta i flag di modellazione seguenti da usare nelle colonne del modello di data mining:

Nota

Il flag di modellazione NOT_NULL si applica alla colonna della struttura di data mining. Per altre informazioni, vedere CREATE MINING STRUCTURE (DMX).

Termine Definizione
REGRESSOR Indica che l'algoritmo può utilizzare la colonna specificata nella formula di regressione degli algoritmi di regressione.
MODEL_EXISTENCE_ONLY Indica che i valori per la colonna di attributi sono meno importanti rispetto alla presenza dell'attributo.

È invece possibile definire più flag di modellazione per una stessa colonna. Per altre informazioni su come usare i flag di modellazione, vedere Flag di modellazione (DMX).

Clausola di stima

La clausola di stima consente di descrivere la modalità di utilizzo della colonna di stima. Nella tabella seguente sono elencate le clausole possibili.

Clausola Descrizione
PREDICT Questa colonna può essere stimata dal modello e i relativi valori possono essere utilizzati come input per stimare il valore di altre colonne stimabili.
PREDICT_ONLY Questa colonna può essere stimata dal modello, ma i relativi valori non possono essere utilizzati nei case di input per stimare il valore di altre colonne stimabili.

Espressioni di criteri di filtro

È possibile definire un filtro per limitare i case utilizzati nel modello di data mining. Il filtro può essere applicato alle colonne nella tabella del case, alle righe nella tabella nidificata o a entrambe.

Le espressioni di criteri di filtro sono predicati DMX semplificati, simili a una clausola WHERE. Le espressioni di filtro sono limitate a formule che utilizzano operatori matematici di base, valori scalari e nomi di colonna. L'operatore EXISTS, che restituisce true se per la sottoquery viene restituita almeno una riga, rappresenta un'eccezione. I predicati possono essere combinati utilizzando gli operatori logici comuni: AND, OR e NOT.

Per altre informazioni sui filtri usati con i modelli di data mining, vedere Filtri per i modelli di data mining (Analysis Services - Data mining).

Nota

Le colonne di un filtro devono essere colonne della struttura di data mining. Non è possibile creare un filtro su una colonna del modello o una colonna in forma di alias.

Per altre informazioni sugli operatori DMX e sulla sintassi, vedere Colonne del modello di data mining.

Elenco delle definizioni di parametro

È possibile modificare le prestazioni e le funzionalità di un modello aggiungendo parametri dell'algoritmo all'elenco di parametri. I parametri che è possibile utilizzare variano in base all'algoritmo specificato nella clausola USING. Per un elenco di parametri associati a ogni algoritmo, vedere Algoritmi di data mining (Analysis Services - Data mining) .

La sintassi dell'elenco dei parametri è la seguente:

[<parameter> = <value>, <parameter> = <value>,...]  

Esempio 1: Aggiunta di un modello a una struttura

Nell'esempio seguente viene aggiunto un modello di data mining Naive Bayes alla struttura di data mining New Mailing e viene limitato il numero massimo di stati di attributo a 50.

ALTER MINING STRUCTURE [New Mailing]  
ADD MINING MODEL [Naive Bayes]  
(  
    CustomerKey,   
    Gender,  
    [Number Cars Owned],  
    [Bike Buyer] PREDICT  
)  
USING Microsoft_Naive_Bayes (MAXIMUM_STATES = 50)  

Esempio 2: Aggiunta di un modello filtrato a una struttura

Nell'esempio seguente viene aggiunto un modello di data mining, Naive Bayes Women, alla struttura di data mining New Mailing . Il nuovo modello presenta la stessa struttura di base del modello di data mining aggiunto nell'esempio 1, ma i case della struttura di data mining sono limitati ai clienti di sesso femminile di età superiore a 50 anni.

ALTER MINING STRUCTURE [New Mailing]  
ADD MINING MODEL [Naive Bayes Women]  
(  
    CustomerKey,   
    Gender,  
    [Number Cars Owned],  
    [Bike Buyer] PREDICT  
)  
USING Microsoft_Naive_Bayes  
WITH FILTER([Gender] = 'F' AND [Age] >50)  

Esempio 3: Aggiunta di un modello filtrato a una struttura con una tabella nidificata

Nell'esempio seguente viene aggiunto un modello di data mining a una versione modificata della struttura di data mining Market Basket. La struttura di data mining utilizzata nell'esempio è stata modificata per aggiungere una colonna Region , che contiene gli attributi per l'area del cliente e una colonna Income Group , che classifica il reddito dei clienti usando i valori High, Moderate o Low.

La struttura di data mining include anche una tabella nidificata in cui sono elencati gli elementi acquistati dal cliente.

Poiché la struttura di data mining contiene una tabella nidificata, è possibile definire un filtro sulla tabella del case, sulla tabella nidificata o su entrambe. In questo esempio vengono combinati un filtro di case e un filtro di riga nidificata per limitare i case ai clienti Europai abbienti che hanno acquistato uno dei modelli di pneumatici Road.

ALTER MINING STRUCTURE [Market Basket with Region and Income]  
ADD MINING MODEL [Decision Trees]  
(  
    CustomerKey,   
    Region,  
    [Income Group],  
    [Product] PREDICT (Model)   
WITH FILTER (EXISTS (SELECT * FROM [v Assoc Seq Line Items] WHERE   
 [Model] = 'HL Road Tire' OR  
 [Model] = 'LL Road Tire' OR  
 [Model] = 'ML Road Tire' )  
)  
) WITH FILTER ([Income Group] = 'High' AND [Region] = 'Europe')  
USING Microsoft_Decision Trees  

Vedi anche

Istruzioni DMX (Data Mining Extensions) Data Definitions
Istruzioni di manipolazione dei dati DMX (Data Mining Extensions)
Riferimento all'istruzione DMX (estensione di data mining)