Olá. Fiquei com uma dúvida com relação a como foi feita a normalização dos dados de teste.
Na atividade anterior, foi criada a variável normalizacao
, utilizando x_treino para fazer o fit
:
normalizacao = MinMaxScaler()
x_treino_normalizado = normalizacao.fit_transform(x_treino)
Nesta atividade, a variável normalizacao
foi usada novamente, mas agora para normalizar os dados de teste, usando o método transform
, já que o fit
foi feito anteriormente:
x_teste_normalizado = normalizacao.transform(x_teste)
Minha dúvida é: normalizacao
foi fittada com os dados de x_treino, ou seja, o min e max são calculados com base nesses dados. Quando eu aplico normalizacao.transform
para x_teste, não estou correndo o risco de x_teste ter valores de min e max diferentes? Imagina que o max em x_treino era 30. O que acontece se houver um valor de 50 em x_teste?
Ou seja, para normalizar x_teste, eu não deveria criar uma nova variável com MinMaxScaler e fazer o fit_transform usando x_teste?
Edit: Ou talvez o mais correto seria fazer o fit
de normalizacao
utilizando o x, que contém todas as entradas, tanto de treino quanto de teste?
normalizacao.fit(x)
x_treino_normalizado = normalizacao.transform(x_treino)
x_teste_normalizado = normalizacao.transform(x_teste)
Obrigado!