SystemGetCrossValidationResults (Analysis Services – Data Mining)
Gilt für: SQL Server 2019 und früher Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
Wichtig
Data Mining wurde in SQL Server 2017 Analysis Services als veraltet eingestuft und wurde jetzt in SQL Server 2022 Analysis Services eingestellt. Die Dokumentation wird für veraltete und eingestellte Features nicht aktualisiert. Weitere Informationen finden Sie unter Abwärtskompatibilität von Analysis Services.
Partitioniert die Miningstruktur in die angegebene Anzahl an Querschnitten, trainiert ein Modell für jede Partition und gibt anschließend Genauigkeitsmetriken für jede Partition zurück.
Hinweis
Diese gespeicherte Prozedur kann nicht verwendet werden, um Clustermodelle oder Modelle, die mithilfe des Microsoft Time Series-Algorithmus oder des Microsoft Sequence Clustering-Algorithmus erstellt werden, zu überprüfen. Zum Überprüfen von Clustermodellen können Sie die separate gespeicherte Prozedur SystemGetClusterCrossValidationResults (Analysis Services – Data Mining) verwenden.
Syntax
SystemGetCrossValidationResults(
<mining structure>
[, <mining model list>]
,<fold count>
,<max cases>
,<target attribute>
[,<target state>]
[,<target threshold>]
[,<test list>])
Argumente
Miningstruktur
Name einer Miningstruktur in der aktuellen Datenbank.
(erforderlich)
mining model list
Durch Trennzeichen getrennte Liste von Miningmodellen, die überprüft werden sollen.
Wenn ein Modellname Zeichen enthält, die im Namen eines Bezeichners nicht gültig sind, muss der Name in Klammern gesetzt werden.
Wenn keine Liste mit Miningmodellen angegeben wird, erfolgt die Kreuzvalidierung für alle Clustering-Modelle, die mit der angegebenen Struktur verknüpft sind und ein vorhersagbares Attribut enthalten.
Hinweis
Zum Kreuzvalidieren von Clustermodellen müssen Sie eine separate gespeicherte Prozedur verwenden, SystemGetClusterCrossValidationResults (Analysis Services – Data Mining)..
(Optional)
fold count
Ganzzahliger Wert, der die Anzahl der Partitionen angibt, in die das Dataset aufgeteilt werden soll. Der Mindestwert beträgt 2. Die maximale Anzahl von Aufteilungen ist maximum integer oder die Anzahl von Fällen, wobei der jeweils niedrigere Wert gilt.
Jede Partition enthält ungefähr diese Anzahl von Fällen: maximale Anzahl von Fällen/, die zusammengeklappt werden.
Es ist kein Standardwert vorhanden.
Hinweis
Die Anzahl der Aufteilungen wirkt sich erheblich auf die Zeit aus, die für die Kreuzvalidierung benötigt wird. Wenn Sie eine zu hohe Zahl auswählen, kann die Ausführung der Abfrage sehr lang dauern, und in manchen Fällen reagiert der Server möglicherweise nicht mehr oder ein Timeout tritt ein.
(erforderlich)
Maximale Anzahl von Fällen
Ganzzahliger Wert, der die maximale Anzahl von Fällen angibt, die über alle Aufteilungen hinweg getestet werden können.
Der Wert 0 gibt an, dass alle Fälle in der Datenquelle verwendet werden.
Wenn Sie einen Wert angeben, der größer ist als die tatsächliche Anzahl der Fälle im Dataset ist, werden alle Fälle in der Datenquelle verwendet.
Es ist kein Standardwert vorhanden.
(erforderlich)
target-Attribut
Zeichenfolge, die den Namen des vorhersagbaren Attributs enthält. Ein vorhersagbares Attribut kann eine Spalte, eine verschachtelte Tabellenspalte oder eine Schlüsselspalte für eine geschachtelte Tabelle eines Miningmodells sein.
Hinweis
Das Vorhandensein des Zielattributs wird nur zur Laufzeit überprüft.
(erforderlich)
target state
Formel, die den Wert angibt, der vorhergesagt werden soll. Wenn ein Zielwert angegeben ist, werden Metriken nur für den angegebenen Wert aufgelistet.
Wenn kein Wert oder nullangegeben ist, werden die Metriken für den wahrscheinlichsten Status der einzelnen Vorhersagen berechnet.
Der Standardwert ist NULL.
Während der Überprüfung wird ein Fehler ausgelöst, wenn der angegebene Wert für das angegebene Attribut nicht gültig ist oder die Formel nicht der richtige Typ für das angegebene Attribut ist.
(Optional)
Zielschwellenwert
Double größer als 0 und kleiner als 1. Gibt das minimale Wahrscheinlichkeitsergebnis an, das für die Vorhersage des angegebenen Zielstatus erreicht werden muss, damit er als richtig gewertet wird.
Eine Vorhersage, deren Wahrscheinlichkeit niedriger als dieser Wert ist oder damit übereinstimmt, wird als falsch erachtet.
Wenn kein Wert oder nullangegeben ist, wird der wahrscheinlichste Status unabhängig von seinem Wahrscheinlichkeitsergebnis verwendet.
Der Standardwert ist NULL.
Hinweis
SQL Server Analysis Services löst keinen Fehler aus, wenn Sie den Zustandsschwellenwert auf 0,0 festlegen, aber Sie sollten diesen Wert niemals verwenden. Tatsächlich bedeutet eine Schwelle von 0,0, dass Vorhersagen mit einer Wahrscheinlichkeit von 0 (null) Prozent als richtig gewertet werden.
(Optional)
test list
Eine Zeichenfolge, die Testoptionen angibt.
Hinweis Dieser Parameter ist für die zukünftige Verwendung reserviert.
(Optional)
Rückgabetyp
Das Rowset, das zurückgegeben wird, enthält Bewertungen für jede Partition in jedem Modell.
In der folgenden Tabelle werden die Spalten in diesem Rowset beschrieben.
Spaltenname | Beschreibung |
---|---|
ModelName | Name des Modells, das getestet wurde. |
AttributeName | Der Name der vorhersagbaren Spalte. |
AttributeState | Ein angegebener Zielwert in der vorhersagbaren Spalte. Wenn dieser Wert nullist, wurde die wahrscheinlichste Vorhersage verwendet. Wenn diese Spalte einen Wert enthält, wird die Genauigkeit des Modells nur für diesen Wert bewertet. |
PartitionIndex | Ein 1-basierter Index, der angibt, für welche Partition die Ergebnisse gelten. |
PartitionSize | Ein ganzzahliger Wert, der angibt, wie viele Fälle in jeder Partition enthalten waren. |
Test | Kategorie des Tests, der ausgeführt wurde. Eine Beschreibung der Kategorien und der in jeder Kategorie enthaltenen Tests finden Sie unter Measures im Kreuzvalidierungsbericht. |
"Measure" | Der Name des Measures, der vom Test zurückgegeben wurde. Measures für die einzelnen Modelle richten sich nach dem Typ des vorhersagbaren Werts. Eine Definition der einzelnen Measure finden Sie unter Kreuzvalidierung (Analysis Services – Data Mining). Eine Liste der für die einzelnen vorhersagbaren Typen zurückgegebenen Measures finden Sie unter Measures im Kreuzvalidierungsbericht. |
Wert | Der Wert des angegebenen Testmeasures. |
Hinweise
Verwenden Sie SystemGetAccuracyResults (Analysis Services – Data Mining), um Genauigkeitsmetriken für das gesamte Dataset zurückzugeben.
Wenn das Miningmodell bereits in Folds partitioniert wurde, können Sie die Verarbeitung umgehen und nur die Ergebnisse der Kreuzüberprüfung zurückgeben, indem Sie SystemGetAccuracyResults (Analysis Services – Data Mining) verwenden.
Beispiele
Das folgende Beispiel veranschaulicht, wie man eine Miningstruktur zur Kreuzvalidierung in zwei Aufteilungen partitioniert und dann zwei Miningmodelle testet, die mit der Miningstruktur, [v Target Mail]
, verknüpft sind.
In Zeile 3 des Codes sind die Miningmodelle aufgelistet, die Sie testen möchten. Wenn Sie die Liste nicht angeben, werden alle der Struktur zugeordneten Nicht-Clusteringmodelle verwendet. In Zeile 4 des Codes ist die Anzahl der Partitionen angegeben. Da für max caseskein Wert angegeben ist, werden alle Fälle in der Miningstruktur verwendet und gleichmäßig auf die Partitionen verteilt.
In Zeile 5 ist das vorhersehbare Attribut, Bike Buyer, angegeben, und in Zeile 6 der vorherzusagende Wert, nämlich 1 (was heißt: "Ja, will kaufen").
Der Wert NULL in Zeile 7 gibt an, dass keine minimale Wahrscheinlichkeitsschwelle erreicht werden muss. Deshalb wird die erste Vorhersage, die eine Wahrscheinlichkeit von ungleich 0 (null) hat, zur Bewertung der Genauigkeit verwendet.
CALL SystemGetCrossValidationResults(
[v Target Mail],
[Target Mail DT], [Target Mail NB],
2,
'Bike Buyer',
1,
NULL
)
Beispielergebnisse:
ModelName | AttributeName | AttributeState | PartitionIndex | PartitionSize | Test | "Measure" | Wert |
---|---|---|---|---|---|---|---|
Target Mail DT | Bike Buyer | 1 | 1 | 500 | Klassifizierung | Richtig positiv | 144 |
Target Mail DT | Bike Buyer | 1 | 1 | 500 | Klassifizierung | Falsch positiv | 105 |
Target Mail DT | Bike Buyer | 1 | 1 | 500 | Klassifizierung | Richtig negativ | 186 |
Target Mail DT | Bike Buyer | 1 | 1 | 500 | Klassifizierung | Falsch negativ | 65 |
Target Mail DT | Bike Buyer | 1 | 1 | 500 | Wahrscheinlichkeit | Logarithmisches Ergebnis | -0.619042807138345 |
Target Mail DT | Bike Buyer | 1 | 1 | 500 | Wahrscheinlichkeit | Lift | 0.0740963734002671 |
Target Mail DT | Bike Buyer | 1 | 1 | 500 | Wahrscheinlichkeit | Wurzel des mittleren quadratischen Fehlers | 0.346946279977653 |
Target Mail DT | Bike Buyer | 1 | 2 | 500 | Klassifizierung | Richtig positiv | 162 |
Target Mail DT | Bike Buyer | 1 | 2 | 500 | Klassifizierung | Falsch positiv | 86 |
Target Mail DT | Bike Buyer | 1 | 2 | 500 | Klassifizierung | Richtig negativ | 165 |
Target Mail DT | Bike Buyer | 1 | 2 | 500 | Klassifizierung | Falsch negativ | 87 |
Target Mail DT | Bike Buyer | 1 | 2 | 500 | Wahrscheinlichkeit | Logarithmisches Ergebnis | -0.654117781086519 |
Target Mail DT | Bike Buyer | 1 | 2 | 500 | Wahrscheinlichkeit | Lift | 0.038997399132084 |
Target Mail DT | Bike Buyer | 1 | 2 | 500 | Wahrscheinlichkeit | Wurzel des mittleren quadratischen Fehlers | 0.342721344892651 |
Anforderungen
Die Kreuzüberprüfung ist nur in SQL Server Enterprise ab SQL Server 2008 verfügbar.
Weitere Informationen
SystemGetCrossValidationResults
SystemGetAccuracyResults (Analysis Services - Data Mining)
SystemGetClusterCrossValidationResults (Analysis Services – Data Mining)
SystemGetClusterAccuracyResults (Analysis Services – Data Mining)