Il machine learning funziona attraverso la logica matematica. Le caratteristiche rilevanti di ogni punto dati devono quindi essere espresse numericamente, in modo che i dati stessi possano essere inseriti in un algoritmo matematico che "apprenda" come mappare un dato input all'output desiderato.
I punti dati nel machine learning sono solitamente rappresentati in forma di vettore, in cui ogni elemento (o dimensione) del vettore di embedding di un punto dati corrisponde al suo valore numerico per una specifica caratteristica. Per le modalità di dati che sono intrinsecamente numeriche, come i dati finanziari o le coordinate geospaziali, questo è relativamente semplice. Ma molte modalità di dati, come testo, immagini, dati grafici sui social media o comportamenti degli utenti delle app, non sono intrinsecamente numeriche e quindi richiedono una progettazione delle caratteristiche meno immediatamente intuitiva da esprimere in modo compatibile con l'ML.
Il processo (spesso manuale) di scelta delle caratteristiche dei dati da utilizzare negli algoritmi di machine learning si chiama selezione delle caratteristiche. Le tecniche di estrazione delle caratteristiche affinano i dati solo in base alle loro dimensioni più pertinenti e significative. Entrambi sono sottoinsiemi del feature engineering, la più ampia disciplina della pre-elaborazione dei dati non elaborati per l'uso nel machine learning. Una importante distinzione del deep learning è che in genere opera su dati non elaborati e automatizza gran parte del processo di feature engineering, o almeno il processo di estrazione delle caratteristiche. Ciò rende il deep learning più scalabile, anche se meno interpretabile, rispetto al machine learning tradizionale.
Parametri e ottimizzazione del modello di machine learning
Per un esempio pratico, considera un semplice algoritmo di regressione lineare per prevedere i prezzi di vendita delle abitazioni sulla base di una combinazione ponderata di tre variabili: superficie in metri quadrati, età dell’abitazione e numero di camere da letto. Ogni casa è rappresentata come un embedding vettoriale con 3 dimensioni: [square footage, bedrooms, age]
. Una casa di 30 anni con 4 camere da letto e una superficie di 1.900 piedi quadrati potrebbe essere rappresentata come [1900, 4, 30]
(anche se, ai fini matematici, questi numeri potrebbero prima essere ridimensionati, o normalizzati, per riportarli a un intervallo più uniforme).
L'algoritmo è una semplice funzione matematica:
Prezzo = (A * superficie in metri quadrati) + (B * numero di stanze) – (C * età) + prezzo base
Qui , e sono i parametri del modello: regolandoli si regolerà il peso del modello per ogni variabile. L'obiettivo del machine learning è trovare i valori ottimali per tali parametri del modello: in altre parole, i valori dei parametri che fanno sì che la funzione complessiva produca i risultati più accurati. Sebbene la maggior parte delle istanze reali di machine learning coinvolga algoritmi più complessi con un numero maggiore di variabili di input, il principio rimane lo stesso: ottimizzare i parametri regolabili dell'algoritmo per ottenere una maggiore precisione.