Transformaciones de datos

Las transformaciones de datos se usan para:

  • Preparar datos para el entrenamiento de modelos.
  • Aplicar un modelo importado en formato de TensorFlow o de ONNX.
  • Realizar el procesamiento posterior de los datos una vez pasados a través de un modelo.

Las transformaciones de esta guía devuelven clases que implementan la interfaz IEstimator. Las transformaciones de datos se pueden encadenar juntas. Cada transformación espera y genera datos de tipos y formatos específicos, que se especifican en la documentación de referencia vinculada.

Algunas transformaciones de datos requieren datos de aprendizaje para calcular sus parámetros. Por ejemplo, el transformador NormalizeMeanVariance calcula el medio y la varianza de los datos de aprendizaje durante la operación Fit() y usa esos parámetros en la operación Transform().

Otras transformaciones de datos no requieren datos de aprendizaje. Por ejemplo, la transformación ConvertToGrayscale puede realizar la operación Transform() sin haber visto ningún dato de aprendizaje durante la operación Fit().

Agrupación y asignación de columnas

Transformación Definición ONNX Exportable
Concatenate Concatenar una o más columnas de entrada en una columna de salida nueva
CopyColumns Copiar y cambiar el nombre de una o más columnas de entrada
DropColumns Quitar una o más columnas de entrada
SelectColumns Seleccionar una o más columnas para conservar a partir de los datos de entrada

Normalización y escalado

Transformación Definición ONNX Exportable
NormalizeMeanVariance Restar la media (de los datos de aprendizaje) y dividir por la varianza (de los datos de aprendizaje)
NormalizeLogMeanVariance Normalizar en función del logaritmo de los datos de aprendizaje
NormalizeLpNorm Escalar los vectores de entrada por su lp-norm, donde p es 1, 2 o infinito. Se establece de manera predeterminada en la norma l2 (distancia euclidiana)
NormalizeGlobalContrast Escalar cada valor de una fila al restar la media de los datos de la fila y dividir por la desviación estándar o la norma l2 (de los datos de la fila) y multiplicar por un factor de escala configurable (valor predeterminado 2)
NormalizeBinning Asignar el valor de entrada a un índice de discretización por el número de discretizaciones para generar un valor flotante entre 0 y 1. Los límites de discretización se calculan para distribuir de manera uniforme los datos de aprendizaje entre las discretizaciones
NormalizeSupervisedBinning Asignar el valor de entrada a una discretización en función de su correlación con la columna de etiqueta
NormalizeMinMax Escalar la entrada por la diferencia entre los valores mínimo y máximo de los datos de aprendizaje
NormalizeRobustScaling Escalar cada valor mediante estadísticas sólidas a valores atípicos que centren los datos en torno a 0 y escalar los datos según el intervalo de cuantiles.

Conversiones entre los tipos de datos

Transformación Definición ONNX Exportable
ConvertType Convertir el tipo de una columna de entrada en un tipo nuevo
MapValue Asignar valores a claves (categorías) en función del diccionario de asignaciones suministrado No
MapValueToKey Asignar valores a claves (categorías) mediante la creación de la asignación a partir de los datos de entrada
MapKeyToValue Convertir claves de vuelta a sus valores originales
MapKeyToVector Convertir claves de vuelta a vectores de los valores originales
MapKeyToBinaryVector Convertir claves de vuelta a un vector binario de valores originales No
Hash Aplicar un algoritmo hash al valor de la columna de entrada

Transformaciones de texto

Transformación Definición ONNX Exportable
FeaturizeText Transformar una columna de texto en una matriz flotante de recuentos de n-gramas y char-gramas normalizados No
TokenizeIntoWords Dividir una o más columnas de texto en palabras individuales
TokenizeIntoCharactersAsKeys Dividir una o más columnas de texto en flotantes de caracteres individuales sobre un conjunto de temas
NormalizeText Cambiar mayúsculas y minúsculas, quitar marcas diacríticas, signos de puntuación y números
ProduceNgrams Transformar una columna de texto en un contenedor de recuentos de n-gramas (secuencias de palabras consecutivas)
ProduceWordBags Transformar una columna de texto en un contenedor de recuentos de vector de n-gramas
ProduceHashedNgrams Transformar una columna de texto en un vector de recuentos de n-gramas con algoritmo hash No
ProduceHashedWordBags Transformar una columna de texto en un contenedor de recuentos de n-gramas con algoritmo hash
RemoveDefaultStopWords Quitar las palabras irrelevantes predeterminadas para el idioma especificado de las columnas de entrada
RemoveStopWords Quitar las palabras irrelevantes especificadas de las columnas de entrada
LatentDirichletAllocation Transformar un documento (representado como vector de flotantes) en un vector de flotantes sobre un conjunto de temas
ApplyWordEmbedding Convertir vectores de tokens de texto en vectores de oraciones con un modelo entrenado previamente

Transformaciones de imagen

Transformación Definición ONNX Exportable
ConvertToGrayscale Convertir una imagen en escala de grises No
ConvertToImage Convertir un vector de píxeles en ImageDataViewType No
ExtractPixels Convertir píxeles de una imagen de entrada en un vector de números No
LoadImages Cargar imágenes de una carpeta en memoria No
LoadRawImageBytes Carga imágenes de bytes sin procesar en una nueva columna. No
ResizeImages Cambiar el tamaño de imágenes No
DnnFeaturizeImage Aplicar un modelo de red neuronal profunda (DNN) previamente entrenado para transformar una imagen de entrada en un vector de características No

Transformaciones de datos categóricos

Transformación Definición ONNX Exportable
OneHotEncoding Convertir una o más columnas de texto en vectores codificados one-hot
OneHotHashEncoding Convertir una o más columnas de texto en vectores codificados one-hot basados en hash No

Transformaciones de datos de serie temporal

Transformación Definición ONNX Exportable
DetectAnomalyBySrCnn Detectar anomalías en los datos de serie temporal de entrada con el algoritmo de valor residual espectral (SR) No
DetectChangePointBySsa Detectar puntos de cambio en los datos de serie temporal con el análisis de espectro singular (SSA) No
DetectIidChangePoint Detectar puntos de cambio en los datos de serie temporal independientes y distribuidos de manera idéntica (IID) con puntuaciones de Martingala y estimaciones de densidad de kernel adaptable No
ForecastBySsa Pronosticar los datos de serie temporal con el análisis de espectro singular (SSA) No
DetectSpikeBySsa Detectar picos en los datos de serie temporal con el análisis de espectro singular (SSA) No
DetectIidSpike Detectar picos en los datos de serie temporal independientes y distribuidos de manera idéntica (IID) con puntuaciones de Martingala y estimaciones de densidad de kernel adaptable No
DetectEntireAnomalyBySrCnn Detectar anomalías para todos los datos de entrada mediante el algoritmo SRCNN. No
DetectSeasonality Detectar la estacionalidad mediante el análisis de Fourier. No
LocalizeRootCause Localizar la causa principal de la entrada de serie temporal mediante un algoritmo de árbol de decisión. No
LocalizeRootCauses Localizar las causas principales de la entrada de la serie de vinculación. No

Valores que faltan

Transformación Definición ONNX Exportable
IndicateMissingValues Crear una columna de salida booleana nueva cuyo valor es true cuando falta el valor en la columna de entrada
ReplaceMissingValues Crear una columna de salida nueva cuyo valor se establece en un valor predeterminado si falta el valor de la columna de entrada y, de otro modo, el valor de entrada

Selección de características

Transformación Definición ONNX Exportable
SelectFeaturesBasedOnCount Seleccionar las características con valores no predeterminados que sobrepasan un umbral
SelectFeaturesBasedOnMutualInformation Seleccionar las características de las que más dependen los datos de la columna de etiqueta

Transformaciones de características

Transformación Definición ONNX Exportable
ApproximatedKernelMap Asignar cada vector de entrada a un espacio de característica dimensional inferior, donde los productos internos se aproximan a una función kernel, para que las características se puedan usar como entradas en los algoritmos lineales No
ProjectToPrincipalComponents Reducir las dimensiones del vector de característica de entrada mediante la aplicación del algoritmo Análisis de componentes principales

Transformaciones de explicación

Transformación Definición ONNX Exportable
CalculateFeatureContribution Calcular las puntuaciones de contribución para cada elemento de un vector de característica No

Transformaciones de calibración

Transformación Definición ONNX Exportable
Platt(String, String, String) Transforma la puntuación sin procesar de un clasificador binario en una probabilidad de clase mediante la regresión logística con parámetros estimados usando los datos de entrenamiento
Platt(Double, Double, String) Transforma la puntuación sin procesar de un clasificador binario en una probabilidad de clase mediante la regresión logística con parámetros fijos
Naive Transforma la puntuación sin procesar de un clasificador binario en una probabilidad de clase mediante la asignación de puntuaciones a los intervalos y el cálculo de la probabilidad según la distribución entre los intervalos
Isotonic Transforma la puntuación sin procesar de un clasificador binario en una probabilidad de clase mediante la asignación de puntuaciones a los intervalos, donde la posición de los límites y el tamaño de los intervalos se calculan usando los datos de entrenamiento No

Transformaciones de aprendizaje profundo

Transformación Definición ONNX Exportable
ApplyOnnxModel Transforma los datos de entrada con un modelo importado de ONNX No
LoadTensorFlowModel Transforma los datos de entrada con un modelo importado de TensorFlow No

Transformaciones personalizadas

Transformación Definición ONNX Exportable
FilterByCustomPredicate Quitar las filas en las que un predicado especificado devuelve true No
FilterByStatefulCustomPredicate Quitar las filas en las que un predicado especificado devuelve true, pero permitir un estado especificado. No
CustomMapping Transformar las columnas existentes en columnas nuevas con una asignación definida por el usuario No
Expression Aplicar una expresión para transformar columnas en otras nuevas No