Normalizar componente de dados
Este artigo descreve um componente no designer do Azure Machine Learning.
Use este componente para transformar um conjunto de dados por meio da normalização.
A normalização é uma técnica frequentemente aplicada como parte da preparação de dados para aprendizado de máquina. O objetivo da normalização é alterar os valores das colunas numéricas no conjunto de dados para usar uma escala comum, sem distorcer as diferenças nos intervalos de valores ou perder informações. A normalização também é necessária para que alguns algoritmos modelem os dados corretamente.
Por exemplo, suponha que seu conjunto de dados de entrada contenha uma coluna com valores que variam de 0 a 1 e outra coluna com valores que variam de 10.000 a 100.000. A grande diferença na escala dos números pode causar problemas quando você tenta combinar os valores como recursos durante a modelagem.
A normalização evita esses problemas criando novos valores que mantêm a distribuição geral e as proporções nos dados de origem, mantendo os valores dentro de uma escala aplicada em todas as colunas numéricas usadas no modelo.
Este componente oferece várias opções para transformar dados numéricos:
- Você pode alterar todos os valores para uma escala de 0-1 ou transformar os valores representando-os como classificações de percentil em vez de valores absolutos.
- Você pode aplicar a normalização a uma única coluna ou a várias colunas no mesmo conjunto de dados.
- Se você precisar repetir o pipeline ou aplicar as mesmas etapas de normalização a outros dados, poderá salvá-las como uma transformação de normalização e aplicá-las a outros conjuntos de dados que tenham o mesmo esquema.
Aviso
Alguns algoritmos exigem que os dados sejam normalizados antes de treinar um modelo. Outros algoritmos executam seu próprio dimensionamento ou normalização de dados. Portanto, ao escolher um algoritmo de aprendizado de máquina para usar na criação de um modelo preditivo, certifique-se de revisar os requisitos de dados do algoritmo antes de aplicar a normalização aos dados de treinamento.
Configurar Normalizar Dados
Você pode aplicar apenas um método de normalização de cada vez usando esse componente. Portanto, o mesmo método de normalização é aplicado a todas as colunas selecionadas. Para usar métodos de normalização diferentes, use uma segunda instância de Normalize Data.
Adicione o componente Normalizar dados ao seu pipeline. Você pode encontrar o componente No Aprendizado de Máquina do Azure, em Transformação de Dados, na categoria Dimensionar e Reduzir .
Conecte um conjunto de dados que contenha pelo menos uma coluna de todos os números.
Use o Seletor de Colunas para escolher as colunas numéricas a serem normalizadas. Se você não escolher colunas individuais, por padrão , todas as colunas de tipo numérico na entrada serão incluídas e o mesmo processo de normalização será aplicado a todas as colunas selecionadas.
Isso pode levar a resultados estranhos se você incluir colunas numéricas que não devem ser normalizadas! Verifique sempre as colunas cuidadosamente.
Se nenhuma coluna numérica for detetada, verifique os metadados da coluna para verificar se o tipo de dados da coluna é um tipo numérico suportado.
Gorjeta
Para garantir que colunas de um tipo específico sejam fornecidas como entrada, tente usar o componente Selecionar colunas no conjunto de dados antes de Normalizar dados.
Use 0 para colunas constantes quando marcada: selecione esta opção quando qualquer coluna numérica contiver um único valor imutável. Isso garante que essas colunas não sejam usadas em operações de normalização.
Na lista suspensa Método de transformação , escolha uma única função matemática para aplicar a todas as colunas selecionadas.
Zscore: Converte todos os valores em z-score.
Os valores na coluna são transformados usando a seguinte fórmula:
A média e o desvio-padrão são calculados separadamente para cada coluna. É utilizado o desvio-padrão da população.
MinMax: O normalizador min-max redimensiona linearmente cada recurso para o intervalo [0,1].
O reescalonamento para o intervalo [0,1] é feito deslocando os valores de cada recurso para que o valor mínimo seja 0 e, em seguida, dividindo pelo novo valor máximo (que é a diferença entre os valores máximos e mínimos originais).
Os valores na coluna são transformados usando a seguinte fórmula:
Logística: Os valores na coluna são transformados usando a seguinte fórmula:
LogNormal: Esta opção converte todos os valores em uma escala lognormal.
Os valores na coluna são transformados usando a seguinte fórmula:
Aqui μ e σ são os parâmetros da distribuição, calculados empiricamente a partir dos dados como estimativas de máxima verossimilhança, para cada coluna separadamente.
TanH: Todos os valores são convertidos em uma tangente hiperbólica.
Os valores na coluna são transformados usando a seguinte fórmula:
Envie o pipeline ou clique duas vezes no componente Normalizar dados e selecione Executar selecionado.
Resultados
O componente Normalizar dados gera duas saídas:
Para exibir os valores transformados, clique com o botão direito do mouse no componente e selecione Visualizar.
Por padrão, os valores são transformados no local. Se quiser comparar os valores transformados com os valores originais, use o componente Adicionar colunas para recombinar os conjuntos de dados e exibir as colunas lado a lado.
Para salvar a transformação para que você possa aplicar o mesmo método de normalização a outro conjunto de dados, selecione o componente e selecione Registrar conjunto de dados na guia Saídas no painel direito.
Em seguida, você pode carregar as transformações salvas do grupo Transformações do painel de navegação esquerdo e aplicá-las a um conjunto de dados com o mesmo esquema usando Aplicar Transformação.
Próximos passos
Consulte o conjunto de componentes disponíveis para o Azure Machine Learning.