MicrosoftML (pacchetto R in Machine Learning Services per SQL Server)
Si applica a: SQL Server 2016 (13.x) e versioni successive
MicrosoftML è un pacchetto R di Microsoft che fornisce algoritmi di Machine Learning con prestazioni elevate. Include funzioni per il training e le trasformazioni, l'assegnazione dei punteggi, l'analisi di testo e immagini e l'estrazione di caratteristiche per la derivazione di valori da dati esistenti. Il pacchetto è incluso in Machine Learning Services per SQL Server e R Services per SQL Server 2016 e offre prestazioni elevate per i Big Data, con l'elaborazione multicore e un flusso dei dati rapido. MicrosoftML include anche numerose trasformazioni per l'elaborazione di testo e immagini.
Documentazione di riferimento completa
Il pacchetto MicrosoftML è distribuito in più prodotti Microsoft, ma l'utilizzo è lo stesso indipendentemente dal fatto che sia incluso in SQL Server o in un altro prodotto. Poiché le funzioni sono le stesse, la documentazione per le singole funzioni RevoScaleR viene pubblicata in una sola posizione nelle informazioni di riferimento per R. In caso di comportamenti specifici per un prodotto, le discrepanze verranno indicate nella pagina della Guida delle funzioni in questione.
Versioni e piattaforme
Il pacchetto MicrosoftML è basato su R 3.5.2 ed è disponibile solo quando si installa uno dei prodotti o download Microsoft seguenti:
Nota
Le versioni complete del prodotto sono solo per Windows in SQL Server 2017. Sia Windows che Linux sono supportati per MicrosoftML in SQL Server 2019.
Dipendenze dei pacchetti
Gli algoritmi in MicrosoftML dipendono da RevoScaleR per:
- Oggetti di origine dati. I dati utilizzati dalle funzioni di MicrosoftML vengono creati usando le funzioni di RevoScaleR.
- Elaborazione remota (spostamento dell'esecuzione delle funzioni in un'istanza di SQL Server remota). Il pacchetto RevoScaleR fornisce funzioni per la creazione e l'attivazione di un contesto di calcolo remoto per SQL Server.
Nella maggior parte dei casi, i pacchetti vengono caricati insieme ogni volta che si usa MicrosoftML.
Funzioni per categoria
Questa sezione elenca le funzioni per categoria per offrire un'idea di come vengono usate. È anche possibile usare il sommario per trovare le funzioni in ordine alfabetico.
1 - Algoritmi di Machine Learning
Nome della funzione | Descrizione |
---|---|
rxFastTrees | Implementazione di FastRank, un'implementazione efficiente dell'algoritmo di gradient boosting MART. |
rxFastForest | Implementazione della foresta casuale e della foresta di regressione quantile tramite rxFastTrees. |
rxLogisticRegression | Regressione logistica tramite L-BFGS. |
rxOneClassSvm | Macchine a vettori di supporto a una classe. |
rxNeuralNet | Rete neurale di regressione binaria multiclasse. |
rxFastLinear | Ottimizzazione SDCA (Stochastic Dual Coordinate Ascent) per la regressione e la classificazione binaria lineari. |
rxEnsemble | Esegue il training di numerosi modelli di vario tipo per ottenere prestazioni predittive migliori rispetto a quelle ottenute da un singolo modello. |
2 - Funzioni di trasformazione
Nome della funzione | Descrizione |
---|---|
concat | Trasformazione per creare una singola colonna con valori di vettore da più colonne. |
categorical | Creare il vettore indicatore usando la trasformazione categorica con il dizionario. |
categoricalHash | Converte il valore categorico in una matrice di indicatori tramite hashing. |
featurizeText | Produce un contenitore di conteggi di sequenze di parole consecutive, denominate n-grammi, da un determinato corpus di testo. Offre rilevamento della lingua, tokenizzazione, rimozione di parole non significative, normalizzazione del testo e generazione di caratteristiche. |
getSentiment | Assegna un punteggio al testo in linguaggio naturale e crea una colonna contenente le probabilità che i sentiment nel testo siano positivi. |
ngram | Consente di definire argomenti per l'estrazione di caratteristiche basate su conteggi e su hash. |
selectColumns | Seleziona un set di colonne di cui ripetere il training, eliminando tutte le altre. |
selectFeatures | Seleziona le caratteristiche delle variabili specificate usando una modalità specificata. |
loadImage | Carica i dati dell'immagine. |
resizeImage | Ridimensiona un'immagine a una dimensione specificata usando un metodo di ridimensionamento specificato. |
extractPixels | Estrae i valori pixel da un'immagine. |
featurizeImage | Definisce le caratteristiche di un'immagine usando un modello di rete neurale profonda con training preliminare. |
3 - Funzioni di assegnazione dei punteggi e training
Nome della funzione | Descrizione |
---|---|
rxPredict.mlModel | Esegue la libreria di punteggi da SQL Server, usando la stored procedure, o dal codice R abilitando il punteggio in tempo reale per offrire prestazioni della stima molto più veloci. |
rxFeaturize | Trasforma i dati da un set di dati di input a un set di dati di output. |
mlModel | Fornisce un riepilogo di un modello di Machine Learning di Microsoft R. |
4 - Funzioni di perdita per la regressione e la classificazione
Nome della funzione | Descrizione |
---|---|
expLoss | Specifiche per la funzione di perdita per la classificazione esponenziale. |
logLoss | Specifiche per la funzione di perdita per la classificazione dei log. |
hingeLoss | Specifiche per la funzione di perdita per la classificazione cardine. |
smoothHingeLoss | Specifiche per la funzione di perdita per la classificazione cardine liscia. |
poissonLoss | Specifiche per la funzione di perdita di regressione di Poisson. |
squaredLoss | Specifiche per la funzione di perdita di regressione al quadrato. |
5 - Funzioni di selezione delle caratteristiche
Nome della funzione | Descrizione |
---|---|
minCount | Specifica per la selezione delle caratteristiche in modalità di conteggio. |
mutualInformation | Specifica per la selezione delle caratteristiche in modalità di informazione mutua. |
6 - Funzioni di modellazione di ensemble
Nome della funzione | Descrizione |
---|---|
fastTrees | Crea un elenco contenente il nome della funzione e gli argomenti per eseguire il training di un modello Fast Tree con rxEnsemble. |
fastForest | Crea un elenco contenente il nome della funzione e gli argomenti per eseguire il training di un modello Fast Forest con rxEnsemble. |
fastLinear | Crea un elenco contenente il nome della funzione e gli argomenti per eseguire il training di un modello Fast Linear con rxEnsemble. |
logisticRegression | Crea un elenco contenente il nome della funzione e gli argomenti per eseguire il training di un modello di regressione logistica con rxEnsemble. |
oneClassSvm | Crea un elenco contenente il nome della funzione e gli argomenti per eseguire il training di un modello OneClassSvm con rxEnsemble. |
7 - Funzioni di rete neurale
Nome della funzione | Descrizione |
---|---|
optimizer | Specifica gli algoritmi di ottimizzazione per l'algoritmo di Machine Learning rxNeuralNet. |
8 - Funzioni di stato del pacchetto
Nome della funzione | Descrizione |
---|---|
rxHashEnv | Oggetto ambiente usato per archiviare lo stato a livello di pacchetto. |
Come usare MicrosoftML
Le funzioni in MicrosoftML possono essere chiamate nel codice R incapsulato nelle stored procedure. La maggior parte degli sviluppatori compila in locale le soluzioni MicrosoftML e quindi esegue la migrazione del codice R completato alle stored procedure, come esercizio di distribuzione.
Il pacchetto MicrosoftML per R è già installato in SQL Server 2017.
Il pacchetto non è caricato per impostazione predefinita. Per prima cosa, caricare il pacchetto MicrosoftML e quindi caricare RevoScaleR se è necessario usare contesti di calcolo remoti oppure oggetti di origine dati o connettività correlati. Fare quindi riferimento alle singole funzioni necessarie.
library(microsoftml);
library(RevoScaleR);
logisticRegression(args);