Discuti il tutorial sul forum !
Algoritmo a priori (parte 1)
Obiettivo
In questo articolo tratteremo come implementare l'algoritmo a priori in java per trovare coppie di articoli (prodotti)
che hanno alta frequenza tra un insieme di prodotti venduti.
L'algoritmo a priori
Questo algoritmo e' utilizzato per trovare coppie di insiemi frequenti in un insiemi di oggetti che possono essere
qualsiasi cosa. Ad esempio se analizziamo i carrelli della spesa per capire quali prodotti vengono comprati insieme,
questa informazione viene usata per posizionare i prodotti sugli scaffali ed ottimizzare i percorsi fatti.
Altre applicazioni del M-B problem:
Basket:documenti ,articoli: parole (frasi e concetti in relazione)
Basket: frasi, articoli: documenti (plagio, mirror sites su web)
Risultati del M-B Mining
Association Rules: regole del tipo se un cliente compra X1,X2,…,Xn allora compra anche Y con alta probabilita’. La probabilita’ minima che noi pretendiamo si chiama confidenza. Richiediamo che questa sia decisamente piu’ alta di quella attesa.
Ad esempio la regola latte,burro=>pane potrebbe derivare dal fatto che quasi tutti comprano pane. Mentre la regola pannolini=>birra vale con confidenza molto piu’ alta della percentuale di clienti che compra birra.
Algoritmo A-Priori
Si procede a livelli:
Read( s ); /*soglia di supporto
L1:= {a | a appare con frequenza >= s };
L2:= {{a,b} | a,b L1,{a,b} appare con frequenza >= s };
L3:= {{a,b,c} | {a,b}, {a,c}, {b,c}, L2 {a,b,c} appare con frequenza >= s };
ETC….
Il database
Il database a cui ci riferiremo è oracle versione 9.
Il programma java è nella seconda parte.
La nostra tabella è cosi composta:
-- Create table
create table SYSTEM.ACQUISTI
(
TRANSID VARCHAR2(6),
ITEMS VARCHAR2(20),
MESE VARCHAR2(2),
ANNO VARCHAR2(2)
)
tablespace SYSTEM
pctfree 10
pctused 40
initrans 1
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
-- Create table
create table SYSTEM.CATEGORIE
(
NOMECAT VARCHAR2(20),
CODICECAT VARCHAR2(10)
)
tablespace SYSTEM
pctfree 10
pctused 40
initrans 1
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
-- Create table
create table SYSTEM.PRODOTTI
(
NOME VARCHAR2(20),
MARCA VARCHAR2(20),
MODELLO VARCHAR2(30),
QUANTITA NUMBER,
CODICECATEGORIA VARCHAR2(10),
CODICESOTTOCATEGORIA VARCHAR2(10),
IMMAGINE VARCHAR2(40),
CODICE VARCHAR2(10),
PREZZO NUMBER
)
tablespace SYSTEM
pctfree 10
pctused 40
initrans 1
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
-- Create table
create table SYSTEM.SOTTOCATEGORIE
(
NOMESOTTOCATEGORIA VARCHAR2(20),
CODICESOTTOCATEGORIA VARCHAR2(10),
CODICECATEGORIA VARCHAR2(20)
)
tablespace SYSTEM
pctfree 10
pctused 40
initrans 1
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
Links
http://alpha.dmi.unict.it/DB2Vecchio/Datamining/dm-01-14-10-04.ppt
Correlati
- Algoritmo a priori (parte 1)
- Algoritmo a priori (parte 2)
- Algoritmo a priori con php e mysql
- Muovere un oggetto 3d con macromedia director (Parte 1)
- Muovere un oggetto 3d con macromedia director (Parte 2)
- Muovere un oggetto 3d con macromedia director (Parte 3)
- Muovere muovere la camera con la tastiera con macromedia director (Parte 4)
- Guida completa alla pixel art (capitolo 1)
- Figure Isometriche in pixel art (parte 1)
- Figure Isometriche in pixel art (parte 2)
- Figure Isometriche in pixel art (parte 3)
- La guida completa ai css capitolo 1
- La guida completa ai css capitolo 10
- Selezionare una parte di una strinda da un campo di una tabella
- Realizzare una chat con flash e java (parte 2 il server)
- Realizzare una chat con flash e php (parte 2 il server)
- Creare un gioco isometrico (parte 1)
- Creare un gioco isometrico (parte 2 dinamicità )
- Creare un gioco isometrico (parte 3 muri e oggetti)
- Lavorare con i canali in photoshop (parte 2)
- Texture personalizzate con photoshop parte 2
- Texture personalizzate con photoshop parte 3
- Creare gioco auto parte 1
- Creare gioco auto (parte 2 velocità e benzina)
- Creare gioco auto (parte 3 tracciato)
- Creare gioco auto (parte 4 tempi)
- Creare gioco auto (parte 5 salvare i dati nel database mysql)
- Creare gioco auto (parte 6 migliorie al gioco)
- Creare gioco auto (parte 7 replay)
- Creare gioco auto (parte 8 mostrare risultati)
- Creare gioco auto (parte 9 multiplayer)
- Creare un gioco piattaforma (parte1)
- Creare un gioco piattaforma (parte2 campo di gioco)
- Creare un gioco piattaforma (parte3 vite e coins)
- Creare un gioco piattaforma (parte4 sparo)
- Criptare le password con l'algoritmo MD5
- Creare un gioco pong multiplayer (parte 2 il server java)
- Creare un gioco pong multiplayer (parte 3 giocatoreA)
- Creare un gioco pong multiplayer (parte 4 giocatoreB)
- Realizzare un gioco sparo in flash (parte 2 nemici)
- Creare un gioco navicella spaziale (parte1)
- Creare un gioco navicella spaziale (parte2 nemici)
- Creare un gioco navicella spaziale (parte3 collisioni)
- Creare un gioco navicella spaziale (parte4 conclusione)
- Creare un gioco navicella spaziale (parte5 nemici)
- Realizzare una navicella spaziale che si muove e spara a 360 gradi (parte 2)
- Realizzare gioco pong in flash (parte 2 aggiungere il suono)
- Leggere le email con php parte 2 (verifica presenza allegati)
- Leggere le email con php parte 3 (leggere il contenuto)
- Leggere le email con php parte 4 (cancellare email)
- Javascript Guida completa capitolo 1
- Creare un gioco pseudo 3d (parte 1)
- Creare un gioco pseudo 3d (parte 2 interazione con oggetti)
- Creare il proprio sito web gratis con lycos parte 2
- Struttura ad albero dinamica com php/mysql (parte 2 funzioni)
- Struttura ad albero dinamica com php/mysql (parte 3 altre funzioni)
- Flash Caricare dinamicamente un file mp3 in un filmato (parte 2)
Commenti
Scrivi un commento































