Fondamenti di scienza dei dati
I Data Scientist affrontano una vasta gamma di problemi della vita reale utilizzando dati e varie tecniche. L’ottimizzazione matematica, una tecnica potente che può essere applicata a un’ampia gamma di problemi in molti settori, costituisce un ottimo investimento nel toolkit dei Data Scientist. In questo pratico post introduttivo, familiarizzeremo con tre popolari librerie di ottimizzazione in Python: quelle di Google Strumenti ORQuello dell’IBM DOcplex e della Fondazione COIN-OR Polpa.
L’ottimizzazione matematica riguarda la ricerca scelta ottimale per un problema quantitativo entro limiti predefiniti. Ha tre componenti:
- Funzione(i) obiettivo(i): Ci dice quanto è buona una soluzione e ci permette di confrontare le soluzioni. Una soluzione ottimale è quella che massimizza o minimizza la funzione obiettivo a seconda del caso d’uso.
▶ ️In alcuni casi, possono esserci più funzioni obiettivo. Ciò aggiunge complessità nel determinare quale sia una soluzione ottimale.
▶ ️In alcuni casi, potrebbe non esserci alcuna funzione oggettiva. Tali problemi di ottimizzazione sono chiamati problemi di fattibilità. - Variabili decisionali: Rappresenta uno o più valori che vogliamo scoprire, la risposta che cerchiamo in un problema quantitativo. L’ottimizzazione può essere suddivisa in due tipi a seconda del tipo di variabili decisionali:
▶️ Ottimizzazione discreta: Le variabili decisionali sono discrete. L’assegnazione dell’orario e l’individuazione del percorso di viaggio più breve tra due località sono alcuni esempi di ottimizzazione discreta. Se vuoi saperne di più sull’ottimizzazione discreta, questo corso e/o questa guida potrebbe interessarti.
▶️Ottimizzazione continua: Le variabili decisionali sono continue. Potresti aver già sentito parlare del termine ottimizzazione nel contesto del machine learning. L’apprendimento automatico è un esempio di area in cui viene utilizzata l’ottimizzazione continua. Se desideri saperne di più sull’ottimizzazione continua, potresti trovare questo tutorial utile. - Vincolo/i: Definisce la gamma fattibile di soluzioni per le variabili decisionali.
▶ ️In alcuni problemi di ottimizzazione continua potrebbero non esserci vincoli. Questa si chiama ottimizzazione non vincolata.
Fonte: towardsdatascience.com