Transformações de dados

As transformações de dados são usadas para:

  • preparar dados para treinamento de modelo
  • aplicar um modelo importado no formato TensorFlow ou ONNX
  • pós-processar dados após passá-los por um modelo

As transformações neste guia retornam classes que implementam a interface IEstimator. Transformações de dados podem ser encadeadas. Cada transformação espera e produz dados de tipos e formatos específicos, especificados na documentação de referência vinculada.

Algumas transformações de dados requerem dados de treinamento para calcular seus parâmetros. Por exemplo: o transformador NormalizeMeanVariance calcula a média e a variância dos dados de treinamento durante a operação Fit() e usa esses parâmetros na operação Transform().

Outras transformações de dados não requerem dados de treinamento. Por exemplo: a transformação ConvertToGrayscale pode executar a operação Transform() sem ter visto nenhum dado de treinamento durante a operação Fit().

Agrupamento e mapeamento de coluna

Transformação Definição Exportável do ONNX
Concatenate Concatenar uma ou mais colunas de entrada em uma nova coluna de saída Sim
CopyColumns Copiar e renomear uma ou mais colunas de entrada Sim
DropColumns Remover uma ou mais colunas de entrada Sim
SelectColumns Selecione uma ou mais colunas para manter dos dados de entrada Sim

Normalização e dimensionamento

Transformação Definição Exportável do ONNX
NormalizeMeanVariance Subtrair a média (dos dados de treinamento) e dividir pela variação (dos dados de treinamento) Sim
NormalizeLogMeanVariance Normalizar com base no logaritmo dos dados de treinamento Sim
NormalizeLpNorm Dimensionar vetores de entrada pela sua lp-norm, em que p é 1, 2 ou infinito. Padronizar para a norma l2 (distância euclidiana) Sim
NormalizeGlobalContrast Dimensionar cada valor em uma linha subtraindo a média dos dados da linha e dividir pelo desvio padrão ou pela norma l2 (dos dados da linha) e multiplicar por um fator de escala configurável (padrão 2) Sim
NormalizeBinning Atribuir o valor de entrada a um índice bin e dividir pelo número de categorias para produzir um valor flutuante entre 0 e 1. Os limites do bin são calculados para distribuir uniformemente os dados de treinamento em compartimentos Sim
NormalizeSupervisedBinning Atribuir o valor de entrada a um bin baseado em sua correlação com a coluna de rótulo Sim
NormalizeMinMax Dimensionar a entrada pela diferença entre os valores mínimo e máximo nos dados de treinamento Sim
NormalizeRobustScaling Escale cada valor usando estatísticas robustas para exceções que centralizarão os dados em torno de 0 e os dimensionarão de acordo com o intervalo do quantil. Sim

Conversões entre tipos de dados

Transformação Definição Exportável do ONNX
ConvertType Converter o tipo de uma coluna de entrada em um novo tipo Sim
MapValue Mapear valores para chaves (categorias) com base no dicionário de mapeamentos fornecido No
MapValueToKey Mapear valores para chaves (categorias) criando o mapeamento a partir dos dados de entrada Sim
MapKeyToValue Converter chaves de volta para seus valores originais Sim
MapKeyToVector Converter chaves de volta para vetores de valores originais Sim
MapKeyToBinaryVector Converter chaves de volta para um vetor binário de valores originais No
Hash Resumir o valor na coluna de entrada Sim

Transformações de texto

Transformação Definição Exportável do ONNX
FeaturizeText Transformar uma coluna de texto em uma matriz flutuante de contagens de diagramas e de caracteres No
TokenizeIntoWords Dividir uma ou mais colunas de texto em palavras individuais Sim
TokenizeIntoCharactersAsKeys Dividir uma ou mais colunas de texto em caracteres individuais flutua sobre um conjunto de tópicos Sim
NormalizeText Alterar maiúsculas e minúsculas, remover marcas diacríticas, sinais de pontuação e números Sim
ProduceNgrams Transformar a coluna de texto em um local de contagens de ngrams (sequências de palavras consecutivas) Sim
ProduceWordBags Transformar a coluna de texto em um local de contagens de vetores ngrams Yes
ProduceHashedNgrams Transformar coluna de texto em um vetor de contagens de ngram hashed No
ProduceHashedWordBags Transformar coluna de texto em um local de contagens de ngram hashed Sim
RemoveDefaultStopWords Remover palavras irrelevantes para o idioma especificado das colunas de entrada Sim
RemoveStopWords Remover palavras irrelevantes especificadas de colunas de entrada Sim
LatentDirichletAllocation Transformar um documento (representado como um vetor de flutuadores) em um vetor de flutuantes em um conjunto de tópicos Sim
ApplyWordEmbedding Converter vetores de tokens de texto em vetores de sentença usando um modelo pré-treinado Sim

Transformações de imagem

Transformação Definição Exportável do ONNX
ConvertToGrayscale Converter uma imagem em escala de cinza No
ConvertToImage Converter um vetor de pixels para ImageDataViewType No
ExtractPixels Converter pixels de imagem de entrada em um vetor de números No
LoadImages Carregar imagens de uma pasta na memória No
LoadRawImageBytes Carrega imagens de bytes brutos em uma nova coluna. No
ResizeImages Redimensionar imagens No
DnnFeaturizeImage Aplica um modelo de DNN (rede neural profunda) pré-treinado para transformar uma imagem de entrada em um vetor de recurso No

Transformações de dados categóricos

Transformação Definição Exportável do ONNX
OneHotEncoding Converter uma ou mais colunas de texto em vetores codificados one-hot Sim
OneHotHashEncoding Converter uma ou mais colunas de texto em vetores codificados em one-hot com base em hash No

Transformações de dados de série temporal

Transformação Definição Exportável do ONNX
DetectAnomalyBySrCnn Detectar anomalias nos dados de série temporal de entrada usando o algoritmo SR (Spectral Residual) No
DetectChangePointBySsa Detectar pontos de alteração nos dados de série temporal usando SSA (análise de espectro singular) No
DetectIidChangePoint Detectar pontos de alteração em dados de série temporal IID (independentes e distribuídos de forma idêntica) usando estimativas de densidade de kernel adaptável e pontuações de Martingale No
ForecastBySsa Prever dados de série temporal usando SSA (análise de espectro singular) No
DetectSpikeBySsa Detectar picos nos dados de série temporal usando a SSA (análise de espectro singular) No
DetectIidSpike Detectar picos em dados de série temporal IID (independentes e distribuídos de forma idêntica) usando estimativas de densidade de kernel adaptável e pontuações de Martingale No
DetectEntireAnomalyBySrCnn Detectar anomalias em todos os dados de entrada usando o algoritmo SRCNN. No
DetectSeasonality Detecta a sazonalidade usando a análise fourier. No
LocalizeRootCause Localiza a causa raiz da entrada de série temporal usando um algoritmo de árvore de decisão. No
LocalizeRootCauses Localiza as causas raiz da entrada de série temporal. No

Valores ausentes

Transformação Definição Exportável do ONNX
IndicateMissingValues Criar uma nova coluna de saída booleana, cujo valor é verdadeiro quando o valor na coluna de entrada está ausente Sim
ReplaceMissingValues Criar uma nova coluna de saída, cujo valor é configurado para um valor padrão se o valor estiver ausente da coluna de entrada e o valor de entrada, caso contrário Sim

Seleção de recursos

Transformação Definição Exportável do ONNX
SelectFeaturesBasedOnCount Selecionar recursos cujos valores não padrão são maiores que um limite Sim
SelectFeaturesBasedOnMutualInformation Selecione os recursos nos quais os dados na coluna de rótulo são mais dependentes Sim

Transformações de recurso

Transformação Definição Exportável do ONNX
ApproximatedKernelMap Mapear cada vetor de entrada em um espaço de recurso dimensional inferior, em que os produtos internos aproximam uma função de kernel, para que os recursos possam ser usados como entradas para os algoritmos lineares No
ProjectToPrincipalComponents Reduzir as dimensões do vetor de recurso de entrada aplicando o algoritmo de Análise de Componente Principal

Transformações de explicabilidade

Transformação Definição Exportável do ONNX
CalculateFeatureContribution Calcular pontuações de contribuição para cada elemento de um vetor de recurso No

Transformações de calibração

Transformação Definição Exportável do ONNX
Platt(String, String, String) Transforma uma pontuação bruta de classificador binário em uma probabilidade de classe usando a regressão logística com parâmetros estimados usando os dados de treinamento Sim
Platt(Double, Double, String) Transforma uma pontuação bruta de classificador binário em uma probabilidade de classe usando a regressão logística com parâmetros fixos Sim
Naive Transforma uma pontuação bruta de classificador binário em uma probabilidade de classe atribuindo pontuações a compartimentos e calculando a probabilidade com base na distribuição entre os compartimentos Sim
Isotonic Transforma uma pontuação bruta de classificador binário em uma probabilidade de classe atribuindo pontuações a compartimentos, em que a posição dos limites e o tamanho dos compartimentos são estimados usando os dados de treinamento No

Transformações de aprendizado profundo

Transformação Definição Exportável do ONNX
ApplyOnnxModel Transformar os dados de entrada com um modelo ONNX importado No
LoadTensorFlowModel Transformar os dados de entrada com um modelo TensorFlow importado No

Transformações personalizadas

Transformação Definição Exportável do ONNX
FilterByCustomPredicate Remove linhas em que um predicado especificado retorna true. No
FilterByStatefulCustomPredicate Remove linhas em que um predicado especificado retorna true, mas permite um estado especificado. No
CustomMapping Transformar colunas existentes em novas com um mapeamento definido pelo usuário No
Expression Aplicar uma expressão para transformar colunas em novas Não