Pagina: Introduzione al Machine Learning
- SE InteresseML è ALTO E LivelloEsperienza è PRINCIPIANTE ALLORA PrioritaPagina è ALTA.
- SE InteresseML è MEDIO E LivelloEsperienza è INTERMEDIO ALLORA PrioritaPagina è MEDIA.
Progetto · Raccomandatore Fuzzy
Usare la logica fuzzy per consigliare al lettore quali contenuti esplorare dopo.
Immagina un visitatore che arriva su fuzzypython.org e legge alcune pagine introduttive. Vogliamo suggerirgli in modo "intelligente" quali contenuti approfondire dopo, combinando:
Invece di regole rigide, useremo un piccolo sistema di raccomandazione fuzzy.
Per ciascuna pagina candidata (es. Intro ML, Funzioni di appartenenza fuzzy, Filosofia digitale e IA, ecc.) possiamo definire una regola fuzzy che assegna una priorità in base alle variabili di ingresso.
Esempi di regole per qualche pagina chiave del sito:
Per ogni pagina candidata calcoliamo un grado fuzzy di priorità. Dopo defuzzificazione (o ordinamento basato sui gradi massimi), otteniamo una lista ordinata di suggerimenti, ad esempio:
Questa lista può essere mostrata in un box "Consigliati per te" a fine pagina.
Un possibile schema (semplificato) per rappresentare pagine e regole:
pages = [
"intro_ml",
"intro_fuzzy",
"matematica_base",
"filosofia_digitale"
]
rules = [
{
"page": "intro_ml",
"antecedent": [("interesse_ml", "alto"), ("livello", "principiante")],
"operator": "AND",
"priority": "alta",
},
{
"page": "intro_fuzzy",
"antecedent": [("interesse_fuzzy", "alto"), ("livello", "principiante")],
"operator": "AND",
"priority": "alta",
},
]
# Un motore di inferenza calcolerà i gradi di verità di ciascuna regola
# e produrrà un punteggio di priorità per ogni pagina.
Da qui puoi costruire un piccolo motore di raccomandazione fuzzy che si integra con il tuo sito o con un prototipo in Jupyter/Streamlit.