Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro: SQL Server 2016 (13.x) a novější verze ve Windows
Vygeneruje predikovanou hodnotu pro daný vstup skládající se z modelu strojového učení uloženého v binárním formátu v databázi SQL Serveru.
Poskytuje bodování v modelech strojového učení R a Pythonu téměř v reálném čase.
sp_rxPredict je uložená procedura napsaná v jazyce C++ a je optimalizovaná speciálně pro operace vyhodnocování.
sp_rxPredict je obálka pro:
| Funkce | Obal |
|---|---|
rxPredict Funkce R |
-
RevoScaleR - MicrosoftML |
| rx_predict Funkce Pythonu |
-
revoskalepie - MicrosoftML |
Model se musí vytvořit pomocí jazyka R nebo Python. Jakmile je však serializován a uložen v binárním formátu v cílové instanci databázového stroje, je možné ji využívat z této instance databázového stroje, i když není nainstalovaná integrace jazyka R nebo Python. Další informace najdete v tématu Bodování v reálném čase pomocí sp_rxPredict na SQL Serveru.
Syntaxe
sp_rxPredict ( @model , @input )
[ ; ]
Argumenty
@model
Předem natrénovaný model v podporovaném formátu.
@input
Platný dotaz SQL.
Návratová hodnota
Vrátí se sloupec skóre a také všechny průchozí sloupce ze vstupního zdroje dat.
Pokud algoritmus podporuje generování těchto hodnot, je možné vrátit sloupce s dodatečným skóre, jako je interval spolehlivosti.
Poznámky
Chcete-li povolit použití uložené procedury, musí být sqlCLR v instanci povolen.
Poznámka:
Povolení této možnosti má vliv na zabezpečení. Použijte alternativní implementaci, například funkci PREDICT , pokud sqlCLR není možné povolit na vašem serveru.
Uživatel potřebuje EXECUTE oprávnění k databázi.
Podporované algoritmy
K vytvoření a trénování modelu použijte jeden z podporovaných algoritmů pro R nebo Python, který poskytuje SLUŽBA SQL Server Machine Learning Services (R nebo Python),SQL Server 2016 R Services, SQL Server Machine Learning Server (samostatný) (R nebo Python) nebo SQL Server 2016 R (samostatný).
R: Modely RevoScaleR
1 Modely také podporují nativní bodování s PREDICT funkcí.
R: Modely MicrosoftML
- rxFastTrees: Rychlý strom
- rxFastForest: Rychlý les
- rxLogisticRegression: Logistická regrese
- rxOneClassSvm: OneClass SVM
- rxNeuralNet: Neurální síť
- rxFastLinear: Rychlý lineární model
R: Transformace poskytované MicrosoftML
- rxFastTrees: Rychlý strom
- concat: Transformace zřetězení strojového učení
- kategorická: Transformace dat kategorií ve službě Machine Learning
- KategoricalHash: Transformace HashData ve službě Machine Learning
- selectFeatures: Transformace výběru funkcí strojového učení
Python: Modely revoscalepy
1 Modely také podporují nativní bodování s PREDICT funkcí.
Python: modely microsoftml
- microsoftml.rx_fast_trees: zesílené stromy
- microsoftml.rx_fast_forest: Náhodné doménové struktury
- microsoftml.rx_logistic_regression: Logistická regrese
- microsoftml.rx_oneclass_svm: Detekce anomálií
- microsoftml.rx_neural_network: neurální síť
- microsoftml.rx_fast_linear: Lineární model s stochastickou dvojitou souřadnicí ascentní
Python: Transformace poskytované microsoftml
- microsoftml.rx_fast_trees: zesílené stromy
- microsoftml.concat: Zřetězí více sloupců do jednoho vektorového
- microsoftml.categorical: Převede textový sloupec na kategorie
- microsoftml.categorical_hash: Hodnoty hash a převede textový sloupec na kategorie
Nepodporované typy modelů
Následující typy modelů se nepodporují:
Modely využívající
rxGlmalgoritmy vrxNaiveBayesRevoScaleR.Modely PMML v R.
Modely vytvořené pomocí jiných knihoven než Microsoftu
Modely využívající transformační funkci nebo vzorec obsahující transformaci, například
A ~ log(B)nejsou podporovány v bodování v reálném čase. Pokud chcete použít model tohoto typu, doporučujeme před předáním dat do bodování v reálném čase provést transformaci vstupních dat.
Bodování v reálném čase nepoužívá interpret, takže během kroku vyhodnocování se nepodporují žádné funkce, které by mohly vyžadovat interpret.
Příklady
DECLARE @model =
SELECT @model
FROM model_table
WHERE model_name = 'rxLogit trained';
EXECUTE sp_rxPredict @model = @model,
@inputData = N'SELECT * FROM data';
Kromě platného dotazu SQL musí vstupní data v @inputData obsahovat sloupce kompatibilní se sloupci v uloženém modelu.
sp_rxPredictpodporuje pouze následující typy sloupců .NET: double, float, short, ushortlong, , ulonga string. Před jejich použitím pro vyhodnocování v reálném čase možná budete muset vyfiltrovat nepodporované typy ve vstupních datech.
Informace o odpovídajících typech SQL najdete v tématu SQL-CLR mapování typů nebo mapování dat parametrů CLR.