Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda StandardScaler, MinMaxScaler, MaxAbsScaler | Seção
Practice
Projects
Quizzes & Challenges
Questionários
Challenges
/
Fundamentos de Machine Learning

bookStandardScaler, MinMaxScaler, MaxAbsScaler

Existem três abordagens populares para escalonar os dados:

  • MinMaxScaler: escala as variáveis para o intervalo [0, 1];
  • MaxAbsScaler: escala as variáveis de modo que o valor absoluto máximo seja 1 (garantindo que os dados estejam no intervalo [-1, 1]);
  • StandardScaler: padroniza as variáveis tornando a média igual a 0 e a variância igual a 1.

Para ilustrar como os scalers operam, considere as variáveis 'culmen_depth_mm' e 'body_mass_g' do conjunto de dados penguins. Essas variáveis podem ser plotadas para observar suas escalas.

MinMaxScaler

O MinMaxScaler funciona subtraindo o valor mínimo (para que os valores comecem do zero) e depois dividindo por (x_max - x_min) para que o resultado seja menor ou igual a 1.

Aqui está o gif mostrando como o MinMaxScaler funciona:

MaxAbsScaler

O MaxAbsScaler funciona encontrando o valor absoluto máximo e dividindo cada valor por ele. Isso garante que o valor absoluto máximo seja 1.

StandardScaler

A ideia do StandardScaler vem da estatística. Ele funciona subtraindo a média (para centralizar em torno de zero) e dividindo pelo desvio padrão (para tornar a variância igual a 1).

Note
Nota

Se você não entende o que são média, desvio padrão e variância, pode consultar nosso curso Aprendendo Estatística com Python. Entretanto, este conhecimento não é obrigatório para prosseguir.

Aqui está um exemplo de código com MinMaxScaler. Outros scalers são aplicados da mesma forma.

12345678910
import pandas as pd from sklearn.preprocessing import MinMaxScaler df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a65bbc96-309e-4df9-a790-a1eb8c815a1c/penguins_imputed_encoded.csv') # Assign X,y variables X, y = df.drop('species', axis=1), df['species'] # Initialize a MinMaxScaler object and transform the X minmax = MinMaxScaler() X = minmax.fit_transform(X) print(X)
copy

A saída não é das mais bonitas, pois os scalers transformam os dados em um array do numpy, mas com pipelines isso não será um problema.

Note
Nota

Apenas as colunas de atributos (a variável X) devem ser escaladas. Não há necessidade de escalar a variável alvo, pois isso complicaria o processo de transformação inversa.

Qual Scaler Utilizar?

O StandardScaler é mais sensível a outliers, tornando-o menos adequado como scaler padrão. Caso prefira uma alternativa ao StandardScaler, a escolha entre MinMaxScaler e MaxAbsScaler depende da preferência pessoal, seja para escalar os dados para o intervalo [0,1] com o MinMaxScaler ou para [-1,1] com o MaxAbsScaler.

1. Qual é o principal objetivo de usar o MinMaxScaler no pré-processamento de dados?

2. Por que você pode reconsiderar o uso do StandardScaler para seu conjunto de dados?

question mark

Qual é o principal objetivo de usar o MinMaxScaler no pré-processamento de dados?

Select the correct answer

question mark

Por que você pode reconsiderar o uso do StandardScaler para seu conjunto de dados?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 15

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

bookStandardScaler, MinMaxScaler, MaxAbsScaler

Deslize para mostrar o menu

Existem três abordagens populares para escalonar os dados:

  • MinMaxScaler: escala as variáveis para o intervalo [0, 1];
  • MaxAbsScaler: escala as variáveis de modo que o valor absoluto máximo seja 1 (garantindo que os dados estejam no intervalo [-1, 1]);
  • StandardScaler: padroniza as variáveis tornando a média igual a 0 e a variância igual a 1.

Para ilustrar como os scalers operam, considere as variáveis 'culmen_depth_mm' e 'body_mass_g' do conjunto de dados penguins. Essas variáveis podem ser plotadas para observar suas escalas.

MinMaxScaler

O MinMaxScaler funciona subtraindo o valor mínimo (para que os valores comecem do zero) e depois dividindo por (x_max - x_min) para que o resultado seja menor ou igual a 1.

Aqui está o gif mostrando como o MinMaxScaler funciona:

MaxAbsScaler

O MaxAbsScaler funciona encontrando o valor absoluto máximo e dividindo cada valor por ele. Isso garante que o valor absoluto máximo seja 1.

StandardScaler

A ideia do StandardScaler vem da estatística. Ele funciona subtraindo a média (para centralizar em torno de zero) e dividindo pelo desvio padrão (para tornar a variância igual a 1).

Note
Nota

Se você não entende o que são média, desvio padrão e variância, pode consultar nosso curso Aprendendo Estatística com Python. Entretanto, este conhecimento não é obrigatório para prosseguir.

Aqui está um exemplo de código com MinMaxScaler. Outros scalers são aplicados da mesma forma.

12345678910
import pandas as pd from sklearn.preprocessing import MinMaxScaler df = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a65bbc96-309e-4df9-a790-a1eb8c815a1c/penguins_imputed_encoded.csv') # Assign X,y variables X, y = df.drop('species', axis=1), df['species'] # Initialize a MinMaxScaler object and transform the X minmax = MinMaxScaler() X = minmax.fit_transform(X) print(X)
copy

A saída não é das mais bonitas, pois os scalers transformam os dados em um array do numpy, mas com pipelines isso não será um problema.

Note
Nota

Apenas as colunas de atributos (a variável X) devem ser escaladas. Não há necessidade de escalar a variável alvo, pois isso complicaria o processo de transformação inversa.

Qual Scaler Utilizar?

O StandardScaler é mais sensível a outliers, tornando-o menos adequado como scaler padrão. Caso prefira uma alternativa ao StandardScaler, a escolha entre MinMaxScaler e MaxAbsScaler depende da preferência pessoal, seja para escalar os dados para o intervalo [0,1] com o MinMaxScaler ou para [-1,1] com o MaxAbsScaler.

1. Qual é o principal objetivo de usar o MinMaxScaler no pré-processamento de dados?

2. Por que você pode reconsiderar o uso do StandardScaler para seu conjunto de dados?

question mark

Qual é o principal objetivo de usar o MinMaxScaler no pré-processamento de dados?

Select the correct answer

question mark

Por que você pode reconsiderar o uso do StandardScaler para seu conjunto de dados?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 15
some-alt