Vi siete mai chiesti come fa il programma che gestisce le nostre email a distinguere uno spam da un non-spam? Questo, infatti, grazie ad un algoritmo di machine learning riesce a smistare automaticamente la nostra posta elettronica e ad etichettare in modo quasi perfetto come spam o non-spam la posta in arrivo.
L’algoritmo che smista la posta in arrivo riceve come input un insieme di email che sono già state smistate. Tra le email già etichettate l’algoritmo riconosce e conserva le caratteristiche salienti che distinguono gli spam dai non-spam (ad esempio il mittente e le parole chiave) e utilizza queste ultime come discriminanti nel processo di smistamento.
Fin qui sembra che gli algoritmi di machine learning non facciano nulla di più che raccogliere dei dati in input, analizzarli e fornire un output. In realtà non è esattamente così. L’output di un algoritmo di machine learning, infatti, non è un valore ma una regola che riesca a prevedere quando ad una email verrà assegnato il valore spam e quando, invece, il valore non-spam.
Un possibile modo di smistare la posta in arrivo potrebbe essere quello di identificare come spam le email che contengano frasi come "Clicca qui!", "Iscriviti gratis", "Prova gratuita". Ci si potrebbe chiedere, però, quanto questo metodo di previsione sia accurato e la risposta sarebbe sconfortante. Per fortuna il nostro mailer sa fare meglio di così. L’algoritmo impara e si migliora con l’aumentare dei dati che gli vengono trasmessi. Infatti, se noi forniamo all’algoritmo una mail con le frasi sopracitate che, però, è non-spam, allora questo utilizzerà criteri aggiuntivi per lo smistamento.
Un algoritmo di machine learning, dunque, migliora le sue performance nel raggiungimento di un obiettivo man mano che la sua esperienza in quell’ambito aumenta, sviluppando una sorta di senso critico e di intuito interamente generato da formule.
Comments