Actualmente estoy usando SVM y escalando mis características de entrenamiento al rango de [0,1]. Primero ajusto / transformo mi conjunto de entrenamiento y luego aplico la misma transformación a mi conjunto de prueba. Por ejemplo:
### Configure transformation and apply to training set
min_max_scaler = MinMaxScaler(feature_range=(0, 1))
X_train = min_max_scaler.fit_transform(X_train)
### Perform transformation on testing set
X_test = min_max_scaler.transform(X_test)
Supongamos que una característica dada en el conjunto de entrenamiento tiene un rango de [0,100], y que la misma característica en el conjunto de prueba tiene un rango de [-10,120]. En el conjunto de entrenamiento, esa característica se escalará apropiadamente a [0,1], mientras que en el conjunto de pruebas, esa característica se escalará a un rango fuera de ese primer especificado, algo así como [-0.1,1.2].
Me preguntaba cuáles son las consecuencias de que las características del conjunto de pruebas estén fuera del alcance de las que se usan para entrenar el modelo. ¿Es esto un problema?
fuente
MinMaxScaler
.