Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Usage
microsoftml.rx_predict(model,
data: typing.Union[revoscalepy.datasource.RxDataSource.RxDataSource,
pandas.core.frame.DataFrame],
output_data: typing.Union[revoscalepy.datasource.RxDataSource.RxDataSource,
str] = None, write_model_vars: bool = False,
extra_vars_to_write: list = None, suffix: str = None,
overwrite: bool = False, data_threads: int = None,
blocks_per_read: int = None, report_progress: int = None,
verbose: int = 1,
compute_context: revoscalepy.computecontext.RxComputeContext.RxComputeContext = None,
**kargs)
Description
La puntuación por instancia de informes resulta en un data frame o una fuente de datos revoscalepy utilizando un modelo entrenado de Microsoft ML Machine Learning con fuente arevoscalepydata.
Detalles
Los siguientes elementos se reportan por defecto en la salida: puntuación en tres variables para los clasificadores binarios: Etiqueta Predicha, Puntuación y Probabilidad; la puntuación para oneClassSvm y clasificadores de regresión; PredictedLabel para clasificadores multiclase, más una variable para cada categoría que precede la Puntuación.
Argumentos
model
Un objeto de información del modelo devuelto desde un modelo microsoftml.
Por ejemplo, un objeto devuelto desde rx_fast_trees o rx_logistic_regression.
datos
Un objeto fuente de datos revoscalepy , un marco de datos o la ruta hacia un .xdf archivo.
output_data
Salida de texto o nombre de archivo xdf o con RxDataSource capacidades de escritura en las que almacenar datos transformados. Si no hay ninguno, se devuelve un dataframe. El valor predeterminado es None.
write_model_vars
Si True, las variables del modelo se escriben en el conjunto de datos de salida además de las variables de puntuación.
Si las variables del conjunto de datos de entrada se transforman en el modelo, también se incluyen las variables transformadas. El valor por defecto es False.
extra_vars_to_write
None o vector de caracteres de variables adicionales, nombres de los datos de entrada para incluir en el output_data. Si write_model_vars es True, también se incluyen variables del modelo. El valor por defecto es None.
Sufijo
Una cadena de caracteres que especifica el sufijo para añadir a la(s) variable(s) de puntuación creada(s) o None en ella no hay sufijo. El valor por defecto es None.
sobrescribir
Si True, un existente output_data es sobrescrito; si False un existente output_data no está sobrescrito. El valor por defecto es False.
data_threads
Un entero que especifica el grado deseado de paralelismo en la cadena de datos. Si no es ninguno, el número de hilos utilizados se determina internamente. El valor predeterminado es None.
blocks_per_read
Especifica el número de bloques que se van a leer para cada fragmento de datos leídos desde el origen de datos.
report_progress
Valor entero que especifica el nivel de informes sobre el progreso del procesamiento de filas:
0: no se notifica ningún progreso.1: el número de filas procesadas se imprime y actualiza.2: se notifican filas procesadas y tiempos.3: se notifican filas procesadas y todos los intervalos.
El valor por defecto es 1.
excesivamente detallado
Valor entero que especifica la cantidad de salida deseada.
Si 0es , no se imprime ninguna salida detallada durante los cálculos. Valores enteros de 1 para 4 proporcionar cantidades crecientes de información.
El valor por defecto es 1.
compute_context
Establece el contexto en el que se ejecutan los cálculos, especificados con una revoscalepy válida. RxComputeContext. Actualmente local y revoscalepy. Se admiten contextos de proceso RxInSqlServer.
kargs
Argumentos adicionales enviados al motor de proceso.
Returns
Un marco de datos o una revoscalpía. El objeto RxDataSource representa los datos de salida creados. Por defecto, la salida de los clasificadores binarios de puntuación incluye tres variables: PredictedLabel, Score, y Probability; rx_oneclass_svm y la regresión incluye una variable: Score; y los clasificadores multiclase incluyen PredictedLabel más una variable para cada categoría antepuesta por Score. Si se proporciona a suffix , se añade al final de estos nombres de variables de salida.
Ejemplo de clasificación binaria
'''
Binary Classification.
'''
import numpy
import pandas
from microsoftml import rx_fast_linear, rx_predict
from revoscalepy.etl.RxDataStep import rx_data_step
from microsoftml.datasets.datasets import get_dataset
infert = get_dataset("infert")
import sklearn
if sklearn.__version__ < "0.18":
from sklearn.cross_validation import train_test_split
else:
from sklearn.model_selection import train_test_split
infertdf = infert.as_df()
infertdf["isCase"] = infertdf.case == 1
data_train, data_test, y_train, y_test = train_test_split(infertdf, infertdf.isCase)
forest_model = rx_fast_linear(
formula=" isCase ~ age + parity + education + spontaneous + induced ",
data=data_train)
# RuntimeError: The type (RxTextData) for file is not supported.
score_ds = rx_predict(forest_model, data=data_test,
extra_vars_to_write=["isCase", "Score"])
# Print the first five rows
print(rx_data_step(score_ds, number_rows_read=5))
Salida:
Automatically adding a MinMax normalization transform, use 'norm=Warn' or 'norm=No' to turn this behavior off.
Beginning processing data.
Rows Read: 186, Read Time: 0, Transform Time: 0
Beginning processing data.
Beginning processing data.
Rows Read: 186, Read Time: 0.001, Transform Time: 0
Beginning processing data.
Beginning processing data.
Rows Read: 186, Read Time: 0.001, Transform Time: 0
Beginning processing data.
Using 2 threads to train.
Automatically choosing a check frequency of 2.
Auto-tuning parameters: maxIterations = 8064.
Auto-tuning parameters: L2 = 2.666837E-05.
Auto-tuning parameters: L1Threshold (L1/L2) = 0.
Using best model from iteration 590.
Not training a calibrator because it is not needed.
Elapsed time: 00:00:00.6058289
Elapsed time: 00:00:00.0084728
Beginning processing data.
Rows Read: 62, Read Time: 0, Transform Time: 0
Beginning processing data.
Elapsed time: 00:00:00.0302359
Finished writing 62 rows.
Writing completed.
Rows Read: 5, Total Rows Processed: 5, Total Chunk Time: 0.001 seconds
isCase PredictedLabel Score Probability
0 False True 0.576775 0.640325
1 False False -2.929549 0.050712
2 True False -2.370090 0.085482
3 False False -1.700105 0.154452
4 False False -0.110981 0.472283
Ejemplo de regresión
'''
Regression.
'''
import numpy
import pandas
from microsoftml import rx_fast_trees, rx_predict
from revoscalepy.etl.RxDataStep import rx_data_step
from microsoftml.datasets.datasets import get_dataset
airquality = get_dataset("airquality")
import sklearn
if sklearn.__version__ < "0.18":
from sklearn.cross_validation import train_test_split
else:
from sklearn.model_selection import train_test_split
airquality = airquality.as_df()
######################################################################
# Estimate a regression fast forest
# Use the built-in data set 'airquality' to create test and train data
df = airquality[airquality.Ozone.notnull()]
df["Ozone"] = df.Ozone.astype(float)
data_train, data_test, y_train, y_test = train_test_split(df, df.Ozone)
airFormula = " Ozone ~ Solar_R + Wind + Temp "
# Regression Fast Forest for train data
ff_reg = rx_fast_trees(airFormula, method="regression", data=data_train)
# Put score and model variables in data frame
score_df = rx_predict(ff_reg, data=data_test, write_model_vars=True)
print(score_df.head())
# Plot actual versus predicted values with smoothed line
# Supported in the next version.
# rx_line_plot(" Score ~ Ozone ", type=["p", "smooth"], data=score_df)
Salida:
'unbalanced_sets' ignored for method 'regression'
Not adding a normalizer.
Making per-feature arrays
Changing data from row-wise to column-wise
Beginning processing data.
Rows Read: 87, Read Time: 0.001, Transform Time: 0
Beginning processing data.
Warning: Skipped 4 instances with missing features during training
Processed 83 instances
Binning and forming Feature objects
Reserved memory for tree learner: 22620 bytes
Starting to train ...
Not training a calibrator because it is not needed.
Elapsed time: 00:00:00.0390764
Elapsed time: 00:00:00.0080750
Beginning processing data.
Rows Read: 29, Read Time: 0.001, Transform Time: 0
Beginning processing data.
Elapsed time: 00:00:00.0221875
Finished writing 29 rows.
Writing completed.
Solar_R Wind Temp Score
0 290.0 9.2 66.0 33.195541
1 259.0 15.5 77.0 20.906796
2 276.0 5.1 88.0 76.594643
3 139.0 10.3 81.0 31.668842
4 236.0 14.9 81.0 43.590839