Je veux calculer l'importance de chaque fonction d'entrée en utilisant un modèle profond.
Mais je n'ai trouvé qu'un seul article sur la sélection des fonctionnalités à l'aide de l'apprentissage en profondeur - la sélection des fonctionnalités approfondies . Ils insèrent une couche de nœuds connectés directement à chaque entité, avant la première couche cachée.
J'ai entendu dire que le réseau de croyances profondes (DBN) peut également être utilisé pour ce genre de travail. Mais je pense que DBN ne fournit que des abstractions (grappes) de fonctionnalités comme PCA, donc bien qu'il puisse réduire la dimension efficacement, je me demande s'il est possible de calculer l'importance (poids) de chaque fonctionnalité.
Est-il possible de calculer l'importance des fonctionnalités avec DBN? Et existe-t-il d'autres méthodes connues pour la sélection des fonctionnalités à l'aide de l'apprentissage en profondeur?
Peut-être consultez ce document: https://arxiv.org/pdf/1712.08645.pdf
Ils utilisent l'abandon pour classer les fonctionnalités.
... Dans ce travail, nous utilisons le concept d'abandon sur la couche d'entités en entrée et optimisons le taux d'abandon en fonction des objets correspondant. Étant donné que chaque entité est supprimée stochastiquement, notre méthode crée un effet similaire à l'ensachage des entités (Ho, 1995) et parvient à mieux classer les entités corrélées que les autres méthodes sans ensachage telles que LASSO. Nous comparons notre méthode à Random Forest (RF), LASSO, ElasticNet, Marginal ranking et plusieurs techniques pour dériver de l'importance dans DNN telles que Deep Feature Selection et diverses heuristiques ...
la source
Jetez un œil à cet article: https://medium.com/@a.mirzaei69/how-to-use-deep-learning-for-feature-selection-python-keras-24a68bef1e33
et ce document: https://arxiv.org/pdf/1903.07045.pdf
Ils présentent un bon schéma pour appliquer des modèles profonds pour la sélection des fonctionnalités.
la source