Comment sélectionner les fonctionnalités pertinentes des données?


11

Récemment, je travaillais sur un problème pour faire une analyse des coûts de mes dépenses pour une ressource particulière. Je prends habituellement des décisions manuelles à partir de l'analyse et planifie en conséquence.

J'ai un ensemble de données volumineuses au format Excel et avec des centaines de colonnes, définissant l'utilisation de la ressource dans différents délais et types (autres utilisations détaillées diverses). J'ai également des informations sur mes 4 dernières années de données et l'utilisation réelle des ressources et les coûts encourus en conséquence.

J'espérais former un NN pour prévoir à l'avance mes coûts et planifier avant même de pouvoir effectuer manuellement l'analyse des coûts.

Mais le plus gros problème auquel je suis confronté est la nécessité d'identifier les caractéristiques d'une telle analyse. J'espérais qu'il existe un moyen d'identifier les caractéristiques de l'ensemble de données.

PS - J'ai une idée de l'ACP et de certaines autres techniques de réduction des ensembles de fonctionnalités, ce que je regarde, c'est la façon de les identifier en premier lieu.

Réponses:


1

Puisque vous avez toutes vos données dans un tableau, une chose relativement simple à faire est de considérer chaque colonne indépendamment, puis de voir si la variable de sortie (coût engagé) a une corrélation avec cela.

Si la colonne n'a pas (ou très peu de corrélation) avec la variable de sortie, alors considérez-la comme non importante. Ceux qui font la coupe sont ensuite examinés plus en détail.

Ce n'est évidemment pas très différent de la façon dont un algorithme d'arbre de décision fonctionnerait (comme ID3).


0

il n'y a pas de règle stricte pour la sélection d'entités, vous devez examiner manuellement l'ensemble de données et essayer différentes techniques d'ingénierie d'entités. Et il n'y a pas de règle que vous devez appliquer des réseaux de neurones pour cela, les réseaux de neurones prennent beaucoup de temps à s'entraîner, au lieu de cela, vous pouvez expérimenter avec des méthodes basées sur un arbre de décision (forêts aléatoires) puisque vos données sont de toute façon dans une structure tabulaire.


merci pour l'entrée, 1. Je suis d'accord que NN n'est pas le meilleur moyen de tester l'hypothèse, mais je suppose qu'en utilisant NN, nous pouvons obtenir des relations plus vastes entre les fonctionnalités, pour obtenir de meilleurs résultats (dans la plupart des cas). 2. Le problème auquel j'étais confronté était de sélectionner les caractéristiques, qui définiraient réellement le modèle de mon problème, ainsi que la façon de définir les poids des caractéristiques.
Karan Chopra

0

C'est une grande question et probablement l'une des tâches les plus difficiles sur ML.

Vous avez quelques options:

  1. Vous pouvez utiliser des algorithmes de pondération (par exemple, Chi au carré) pour comprendre quelles fonctionnalités contribuent le plus à votre sortie
  2. Vous pouvez utiliser d'autres algorithmes ML pour classer si une fonctionnalité contribue ou non à vos prédictions
  3. Vous pouvez utiliser d'autres algorithmes ML (autres que NN) qui vous fournissent intrinsèquement des pondérations de fonctionnalités (par exemple, Random Forest)

J'espère que ça t'as aidé


0

Il est sage de considérer non seulement la corrélation de l'engagement des ressources avec le coût, mais aussi le retour sur le coût de l'engagement des ressources. Le défi typique est que ces retours sont presque toujours cumulatifs ou retardés. Un cas d'accumulation est lorsque la ressource est le réglage ou l'amélioration continue d'un processus dont l'absence ralentit la génération de revenus. Un cas de retard se produit lorsque les ressources de recherche encourent des coûts sans impact sur les revenus pendant une période de temps mais que la génération de revenus qui commence si la recherche produit des résultats productifs peut être un facteur substantiel supérieur au coût total des résultats fournis.

La raison pour laquelle les données de dépenses en elles-mêmes peuvent conduire à un apprentissage de réseau inadapté est qu'un réseau qui est formé pour réduire, par exemple, les dépenses de marketing les mettra à zéro. Cela entraînerait généralement une tendance à la baisse des ventes jusqu'à ce que l'entreprise se replie. Sans inclure les retours dans les informations de formation, aucun apprentissage utile ne peut se produire.

Un MLP de base (perceptron multicouche) n'apprendra pas les caractéristiques temporelles des données, les aspects d'accumulation et de retard. Vous aurez besoin d'un réseau dynamique. Le type de réseau le plus régulièrement réussi pour ce type d'apprentissage à ce jour est le type de réseau LSTM (mémoire à court terme) ou l'une de ses variantes dérivées. Les données sur les revenus et le solde doivent être utilisées conjointement avec les données sur les dépenses pour former le réseau à prédire les résultats commerciaux pour toute séquence donnée de missions de ressources proposées (plan budgétaire détaillé).

La fonction de perte doit équilibrer correctement le terme de tri avec les objectifs financiers à moyen et long terme. Les liquidités disponibles négatives devraient entraîner une augmentation prononcée de la fonction de perte, de sorte que cette évitement des risques de base pour la réputation et le coût du crédit soit appris.

Les colonnes de vos données qui présentent une forte corrélation avec le retour sur investissement sont difficiles à déterminer à l'avance. Vous pouvez immédiatement exclure des colonnes conformes à l'un des critères suivants.

  • Toujours vide
  • Autres constantes, celles qui ont la même valeur pour chaque ligne
  • Celles qui peuvent toujours être dérivées d'autres colonnes

Les données peuvent être réduites d'autres manières

  • Description complète des données en caractérisant les tendances de manière simple
  • Utilisation d'indices pour spécifier des chaînes longues avec une précision de 100% en attribuant un numéro à chaque chaîne
  • Compression
  • Sinon, réduire la redondance dans les données

Les RBM (machines Boltzmann restreintes) peuvent extraire des caractéristiques des données et les PCA peuvent éclairer les colonnes à faible contenu d'information, mais l'importance des colonnes en termes de corrélation avec les revenus ne sera pas identifiée à l'aide de ces appareils dans leur forme de base.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.