Quali sono le altre metriche che possiamo utilizzare in Sequential Pattern Mining, quando si utilizza l'algoritmo SPADE?

Aug 19 2020

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, confidencee lift.

Risposte

4 Elenchus Aug 20 2020 at 03:10

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.