Dites que vous essayez de classer les maisons en fonction de certaines fonctionnalités: P>
Mais toutes les maisons n'ont pas de garages. Mais quand ils le font, leur zone totale fait une caractéristique très discriminante. Quelle est une bonne approche pour tirer parti des informations contenues dans cette fonctionnalité? P>
3 Réponses :
Vous pouvez incorporer une variable mannequin zéro / une indiquant s'il y a un garage, ainsi que le produit croisé du garage avec le mannequin (pour les maisons sans garage, réglez la zone à zéro). P >
Je ne vois pas comment la variable factice change quelque chose si vous définissez les zones de garage à zéro. Le problème que je vois avec la définition des zones de garage non existants à 0 est qu'ils seront considérés comme similaires à des garages extrêmement petits, qui est inexacte.
@ TY4: C'est là que le mannequin est entré. Par exemple, si vous alliez installer un modèle linéaire, grâce au mannequin, vous obtiendriez une interception différente pour les maisons avec et sans garages. Sur les secondes pensées, vous n'avez probablement même pas besoin du produit croisé.
La meilleure approche consiste à construire votre jeu de données avec toutes les fonctionnalités et, dans la plupart des cas, il suffit de remplir de zéros ces colonnes qui ne sont pas disponibles.
Utilisation de votre exemple, ce serait quelque chose comme: P >
Total area Number of rooms Garage area 100 2 0 300 2 5 125 1 1.5
Vous voudrez incorporer une fonctionnalité d'indicateur zéro. C'est-à-dire une caractéristique 1 lorsque la taille du garage est 0 et 0 pour toute autre valeur. P>
Votre vecteur de fonctionnalité sera alors: Zone | Num_rooms | garage_size | garage_existes p>
Votre algorithme d'apprentissage de la machine sera alors capable de voir cette caractéristique (non linéaire) de la taille du garage. p>