Il machine learning è un vasto universo che comprende al suo interno algoritmi per le artificial intelligence, deep learning e ovviamente per l'analisi dei big data. Qualche tempo fa vi avevamo parlato dei linguaggi di programmazione più gettonati per i progetti di machine learning, oggi invece vogliamo consigliarvi alcune delle librerie più quotate da usare con Python per sviluppare software che implementino le medesime tecnologie.
Iniziamo con Tehano, questa libreria ha quasi 10 anni ed è stata sviluppata all'interno dell'università di Montrèal. Tehano è una delle librerie più usate per i CPU/GPU mathematical compilers. Questa soluzione viene utilizzata, ad esempio, da PyMc3, un probabilistic programming framework, per le derive expressions e per la generazione di codice C a rapida esecuzione.
Passiamo ad un altra open source library ovvero TensorFlow, viene usata principalmente per il numerical computing con i data flow graphs. È stata rilasciata nel 2016 da Google, ma anche se si tratta di un progetto giovane già si trova alla base di molti software come ad esempio Magenta, dove viene utilizzata nell'ambito della music and art generation per costruire delle community composte da artisti, programmatori e machine-learning researcher.
L'ultima libreria di oggi è scikit-learn. Il progetto contiene algoritmi di classificazione, regressione e clustering oltre a Macchine a vettori di supporto, regressione logistica, classificatore bayesiano, k-mean e DBSCAN. Scikit-learn è stato realizzato con NumPy, SciPy e Matplotlib e viene utilizzato dagli ingegneri di Spotify per generare la "musica raccomandata" per gli utenti. Viene anche impiegata nel portale OkCupik per migliorare il matchmaking system. Il progetto conta ben 800 contributors attivi su Github con 22,000 commits.