Si studia quanto ci si può fidare di un modello e come classificare i risultati di un modello, per capire se è migliore di un altro.
Partiamo dagli approcci supervisionati.
Uno degli indicatori è legato alla misurazione dell’errore sui dati di training e testing (facendo training sul training e testing sempre sul training) ma questa non è una buona misura ma si fa per capire se il modello ha buone performance su dati “ovvi” ma questo non è garanzia di qualità, non studiando dati non osservati in fase di training. Si rischiano overfitting/underfitting (nel primo caso si impara molto bene sui dati di training ma quel modello appreso ha performance basse e complessità computazionale alta su dati nuovi mentre nel secondo caso il modello ha già performance basse e quindi risultati pessimi su nuovi dati, anche se si ha minor complessità computazionale, avendo magari meno parametri).
Esempio di modello in overfitting
Andamento di overfitting/underfitting sulla qualità del modello, con indicato il range ideale. Spesso sull’asse delle $x$ si ha il numero di iterazioni necessarie per capire quando terminarle per non andare in overfitting, come nel caso delle reti neurali.
Normalmente quindi si fa il testing su un testing set.
Spesso è meglio avere un modello meno preciso ma con complessità computazionale adeguata al dominio in cui sto lavorando. Si hanno quindi varie misure di performance:
Si hanno quindi:
Calcolando per il primo punto:
Passiamo ora al secondo punto.