J'ai une machine learning problème de classement avec 80% de variables catégorielles. Dois-je utiliser un encodage si je veux utiliser certains classificateur pour le classement? Puis-je transmettre les données à un classificateur sans l'encodage?
Je suis en train de faire les suivants pour la sélection des fonctionnalités:
-
J'ai lu le train de fichier:
num_rows_to_read = 10000 train_small = pd.read_csv("../../dataset/train.csv", nrows=num_rows_to_read)
-
J'ai changer le type de la catégorique fonctionnalités de "catégorie":
non_categorial_features = ['orig_destination_distance', 'srch_adults_cnt', 'srch_children_cnt', 'srch_rm_cnt', 'cnt'] for categorical_feature in list(train_small.columns): if categorical_feature not in non_categorial_features: train_small[categorical_feature] = train_small[categorical_feature].astype('category')
-
J'utilise un hot d'encodage:
train_small_with_dummies = pd.get_dummies(train_small, sparse=True)
Le problème est que le 3'rd partie souvent coincé, même si je suis à l'aide d'un fort de la machine.
Ainsi, sans que l'une chaude, l'encodage je ne peux faire aucune fonction de sélection, pour la détermination de l'importance des fonctions.
Que recommandez-vous?