georgian-io-archive / foreshadow

An automatic machine learning system
https://foreshadow.readthedocs.io
Apache License 2.0
29 stars 2 forks source link

treat NaN value as a category for categorical value and temporarily u… #183

Closed jzhang-gp closed 4 years ago

jzhang-gp commented 4 years ago

Description

This change is to fix a problem that when there are missing values for categorical columns, estimators like Logistic Regression will fail while TPOT will not because TPOT imputes missing values on its own.

Right now, only numerical features have an imputation step. For categorical features, after discussing with our data scientists, we choose to treat missing value as a separate category.

For Neither type, we have to temporarily use the categorical encoder. The reason behind that is explained in the code comment.