Come visto nel capitolo introduttivo di questa guida il machine learning si basa su dei modelli, ovvero dei programmi che hanno la capacità di trovare schemi o prendere decisioni analizzando un set di dati mai visto prima. Tra i molteplici modelli disponibili abbiamo anallizatoi seguenti:
- Decision Tree Regressor;
- Random Forest Regressor;
- Gradient Boosting Regressor;
- Linear Regression;
- Elastic Net;
- SVR;
- Cat Boost Regressor;
- XGB Regressor.
La domanda cruciale ora è: quale è il modello che si comporta in modo migliore per i nostri scopi?
Per capire quale modello fa più al caso nostro procediamo dividendo il nostro set di dati in due parti:
x: dati indipendenti, su cui basare la previsione;
y: dati dipendenti, che vogliamo prevedere.
L’obiettivo sarà predire y in base a x.
In particolare andiamo a creare quattro insiemi, ovvero i dati di allenamento per x e y (X_train e Y_train) ed i dati di test per x e y (X_test e Y_test).
L’insieme di training (pari all’80% dei dati) allena il modello mentre l’insieme di test (pari al 20% dei dati) ne misura l’efficacia.
A questo punto procediamo ad addestrare ogni modello utilizzando i dati X_train e Y_train, dopodichè andiamo a calcolare per ognuno di essi l’errore assoluto medio (che rappresenta l’errore di previsione medio) e l’errore quadratico medio (che rappresenta la “dispersione” degli errori).
Gli errori saranno calcolati sia per la parte di training che per la parte di test. Il modello migliore per la nostra situazione sarà ovviamente quello che mostra errori minori.
Dovendo noi prevedere grandezze fisiche diverse (temperatura massima, temperatura minima e precipitazioni) potrebbe essere che modelli diversi si dimostrino migliori in un caso piuttosto che nell’altro. Ecco perchè effettueremo queste verifiche per i 3 casi e vedremo per ognuno di essi quale è il modello più preciso.
Analizzando i valori relativi alla previsione della temperatura massima si nota che il modello Random Forest Regressor sembra essere il modello con errori assoluto e quadratico medi più bassi nella fase di test.

Relativamente alla temperatura minima il ragionamento sembra essere analogo: il modello Random Forest Regressor anche in questo caso si dimostra essere quello con errori assoluto e quadratico medi più bassi nella fase di test (anche il modello Cat Boost Regression sembra comportarsi molto bene).

Infine non ci rimane che scegliere il modello per effettuare le previsioni delle precipitazioni: il modello Linear Regression sembra essere in questo caso il modello con errori assoluto e quadratico medi più bassi nella fase di test.

Concludendo quindi abbiamo capito che per provare a prevedere la temperatura massima e minima il modello Random Forest Regressor sembra essere quello più affidabile, mentre per la previsione delle precipitazioni ci affideremo al modello Linear Regression.
Nel prossimo capitolo della guida andremo ad analizzare nel dettaglio come abbiamo scritto il codice per calcolare quanto abbiamo appena visto.
