Quali sono le altre metriche che possiamo utilizzare in Sequential Pattern Mining, quando si utilizza l'algoritmo SPADE?
Sto leggendo questa fantastica pagina con le metriche di interesse utilizzate nelle regole dell'associazione:
https://michael.hahsler.net/research/association_rules/measures.html
Dato che ho dati sequenziali, ho deciso di utilizzare arulesSequences da R, che fanno Sequential Pattern Mining, e creare le regole usando l'algoritmo SPADE.
Ecco alcune regole create:
head(as(rules, 'data.frame'))
rule support confidence lift
1 <{A}> => <{B}> 0.026485890 0.13160987 0.8112745
2 <{D}> => <{B}> 0.009853382 0.03726893 0.2297345
3 <{C}> => <{B}> 0.063455778 0.10779325 0.6644632
4 <{C},{A}> => <{B}> 0.018524358 0.24607330 1.5168542
6 <{D}> => <{E}> 0.015607757 0.14494876 3.1703792
7 <{A}> => <{F}> 0.011587577 0.05757932 1.2593987
Sto pensando se ha senso calcolare altre metriche, come il test del Chi quadrato (per testare l'ipotesi nulla che Lift = 0 per una regola specifica) o calcolare il Lift standardizzato .
E se ha senso, c'è qualche funzione in questo pacchetto o in un altro per calcolare queste nuove metriche?
Ho i miei dubbi perché la cspade()
funzione crea regole solo con support
, confidence
e lift
.
Risposte
Questo libro è una delle risorse più utili che ho trovato per il pattern mining. Il capitolo 5 (disponibile come capitolo di esempio) parla di alcune proprietà delle misure di interesse, ad esempio se la misura è invariante rispetto all'inversione, al ridimensionamento e all'addizione nulla. Quando si sceglie una misura dell'interesse, vale la pena pensare a quali condizioni sono più importanti.
Non ho molta familiarità con R, ma il pacchetto interestMeasure ha l' aspetto che desideri. Altrimenti il pacchetto networkx in Python contiene alcune misure di interesse aggiuntive, o implementarle tu stesso non dovrebbe essere troppo difficile.