Come seleziono le funzionalità rilevanti dei dati?


11

Recentemente stavo lavorando su un problema per fare un'analisi dei costi delle mie spese per una particolare risorsa. Di solito prendo alcune decisioni manuali dall'analisi e pianifico di conseguenza.

Ho un grande set di dati in formato Excel e con centinaia di colonne, che definiscono l'uso della risorsa in diversi intervalli di tempo e tipi (altri vari usi dettagliati). Ho anche informazioni sui miei precedenti 4 anni di dati e sull'utilizzo effettivo delle risorse e sui costi sostenuti di conseguenza.

Speravo di formare un NN per prevedere in anticipo i miei costi e pianificare ancora prima di poter eseguire manualmente l'analisi dei costi.

Ma il problema più grande che sto affrontando è la necessità di identificare le funzionalità per tale analisi. Speravo che ci fosse un modo per identificare le funzionalità dal set di dati.

PS: ho idea di PCA e di altre tecniche di riduzione del set di funzionalità, quello che sto guardando è il modo di identificarli in primo luogo.

Risposte:


1

Dato che hai tutti i tuoi dati in una tabella, una cosa relativamente semplice da fare è considerare ogni colonna in modo indipendente, e quindi vedere se la variabile di output (costo sostenuto) ha una correlazione con quella.

Se la colonna non ha (o una correlazione molto bassa) con la variabile di output, considerala non importante. Quelli che effettuano il taglio vengono quindi considerati ulteriormente.

Questo ovviamente non è molto diverso da come funzionerebbe un algoritmo dell'albero decisionale (come ID3).


0

non esiste una regola rigida per la selezione delle funzionalità, è necessario esaminare manualmente il set di dati e provare diverse tecniche per la progettazione delle funzionalità. E non esiste alcuna regola per cui dovresti applicare reti neurali per questo, le reti neurali richiedono molto tempo per la formazione, invece puoi sperimentare metodi basati sull'albero decisionale (foreste casuali) poiché i tuoi dati sono comunque nella struttura tabulare.


grazie per l'input, 1. Sono d'accordo che NN non è il modo migliore per testare l'ipotesi, ma suppongo che usando NN possiamo ottenere relazioni più vaste tra le caratteristiche, per ottenere risultati migliori (nella maggior parte dei casi). 2. Il problema che stavo affrontando era selezionare le caratteristiche, che in realtà avrebbero definito il modello per il mio problema, anche come definire i pesi delle caratteristiche.
Karan Chopra,

0

Questa è una grande domanda e probabilmente uno dei compiti più difficili su ML.

Hai alcune opzioni:

  1. È possibile utilizzare gli algoritmi di ponderazione (ad esempio Chi-quadrato) per capire quali funzioni contribuiscono maggiormente al risultato
  2. È possibile utilizzare altri algoritmi ML per classificare se una funzione contribuisce o meno alle previsioni
  3. È possibile utilizzare altri algoritmi ML (diversi da NN) che forniscono intrinsecamente ponderazioni di funzionalità (ad esempio Random Forest)

spero che aiuti


0

È saggio considerare non solo la correlazione dell'impegno delle risorse con il costo, ma anche il ritorno sul costo dell'impegno delle risorse. La sfida tipica è che tali rendimenti sono quasi sempre cumulativi o ritardati. Un caso di accumulo è quando la risorsa è la messa a punto continua o il miglioramento di un processo la cui assenza rallenta la generazione di entrate. Un caso di ritardo è quando le risorse di ricerca comportano costi senza impatto sulle entrate per un periodo di tempo, ma la generazione di entrate che inizia se la ricerca produce risultati produttivi può essere un fattore sostanziale al di sopra del costo totale dei risultati forniti.

Il motivo per cui i dati di spesa di per sé possono portare all'apprendimento disadattato della rete è perché una rete che è addestrata per ridurre, ad esempio, le spese di marketing li azzererà. Ciò di solito causerebbe una tendenza al ribasso delle vendite fino a quando il business non si chiuderà. Senza includere i ritorni nelle informazioni sulla formazione, non può verificarsi alcun apprendimento utile.

Un MLP di base (percettrone multistrato) non apprenderà le caratteristiche temporali dei dati, gli aspetti di accumulo e ritardo. Avrai bisogno di una rete stateful. Il tipo di rete di maggior successo per questo tipo di apprendimento al momento della stesura è il tipo di rete LSTM (memoria a breve termine) o una delle sue varianti derivate. I dati sui ricavi e sul saldo devono essere utilizzati insieme ai dati sulle spese per formare la rete al fine di prevedere i risultati aziendali per una determinata sequenza di impegni di risorse proposti (piano di bilancio completamente dettagliato).

La funzione di perdita deve bilanciare adeguatamente i termini di selezione con gli obiettivi finanziari a medio e lungo termine. La liquidità disponibile negativa dovrebbe produrre un forte aumento della funzione di perdita in modo tale da apprendere tale evitamento dei rischi di base per la reputazione e il costo del credito.

Quali colonne nei tuoi dati hanno forti correlazioni con il ritorno sull'investimento è difficile da determinare in anticipo. È possibile escludere immediatamente le colonne conformi a uno dei seguenti criteri.

  • Sempre vuoto
  • Altre costanti, quelle che hanno lo stesso valore per ogni riga
  • Quelli che possono sempre essere derivati ​​da altre colonne

I dati possono essere ridotti in altri modi

  • Descrivere completamente i dati caratterizzando le tendenze in modo semplice
  • Utilizzo degli indici per specificare stringhe lunghe con un'accuratezza del 100% assegnando un numero a ciascuna stringa
  • Compressione
  • Altrimenti ridurre la ridondanza nei dati

Gli RBM (macchine Boltzmann riservate) possono estrarre funzionalità dai dati e gli APC possono illuminare le colonne a basso contenuto di informazioni, ma il significato delle colonne in termini di correlazione con le entrate non verrà identificato utilizzando questi dispositivi nella loro forma di base.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.