Scienza dei dati

Le 10 migliori librerie di machine learning per Python

Le 10 migliori librerie di machine learning per Python

Cosa vuoi creare? La domanda importante!

Sei venuto qui per utilizzare Machine Learning (ML) . Hai considerato attentamente per cosa?? Quando scegli una libreria di Machine Learning, devi iniziare con come la utilizzerai. Anche se sei solo interessato all'apprendimento, dovresti considerare dove viene utilizzato il Machine Learning e quale è il più vicino al tuo interesse principale. Dovresti anche considerare se vuoi concentrarti sul far funzionare qualcosa sulla tua macchina locale o se sei interessato a diffondere il tuo computer su molti server.

All'inizio, inizia facendo funzionare qualcosa.

Dove viene utilizzato l'apprendimento automatico

Puoi trovare molti progetti che utilizzano ML, in effetti così tanti che ogni categoria è lunga pagine. La versione breve è "ovunque", questo non è vero, ma uno inizia a chiedersi. Quelli ovvi sono i motori di raccomandazione, il riconoscimento delle immagini e il rilevamento dello spam spam. Dato che stai già programmando in Python, sarai interessato anche al software di completamento del codice Kite. Questo è Altri usi sono per rilevare errori dall'inserimento manuale dei dati, diagnosi medica e manutenzione per le principali fabbriche e altri settori

Le biblioteche in breve:

  1. Scikit-impara, Da scikit; Routine e librerie su NumPy, SciPy e Matplotlib. Questa libreria si basa direttamente sulle routine delle librerie matematiche native di Python. Installi scikit-learn con il tuo normale gestore di pacchetti Python. Scikit-learn è piccolo e non supporta i calcoli GPU, questo potrebbe metterti in difficoltà ma è una scelta consapevole. Questo pacchetto è più piccolo e più facile da usare. Funziona ancora abbastanza bene in contesti più grandi anche se per fare un gigantesco cluster di calcoli, hai bisogno di altri pacchetti.
  2. Scikit-immagine Speciale per le immagini! Scikit-image dispone di algoritmi per l'analisi e la manipolazione delle immagini. Puoi usarlo per riparare le immagini danneggiate e per manipolare il colore e altri attributi dell'immagine. L'idea principale di questo pacchetto è di rendere disponibili tutte le immagini a NumPy in modo da poter effettuare operazioni su di esse come ndarray. In questo modo hai le immagini disponibili come dati per l'esecuzione di qualsiasi algoritmo.
  3. Shogun: Base C++ con interfacce API chiare per Python, Java, Scala ecc. Molti, forse la maggior parte degli algoritmi disponibili per la sperimentazione. Questo è scritto in C++ per l'efficienza, c'è anche un modo per provarlo nel cloud. Shogun usa SWIG per interfacciarsi con molti linguaggi di programmazione, incluso Python. Shogun copre la maggior parte degli algoritmi ed è ampiamente utilizzato nel mondo accademico. Il pacchetto ha una cassetta degli attrezzi disponibile su https://www.shogun-cassetta degli attrezzi.organizzazione.
  4. Spark MLlib: è principalmente per Java ma è disponibile tramite NumPy Library per sviluppatori Python. Spark MLlib è sviluppato dal team Apache quindi è rivolto ad ambienti di calcolo distribuito e deve essere eseguito con master e worker. Puoi farlo in modalità standalone, ma il vero potere di Spark è la capacità di distribuire i lavori su molte macchine. La natura distribuita di Spark lo rende popolare con molte grandi aziende, come IBM, Amazon e Netflix. Lo scopo principale è estrarre i "Big Data", ovvero tutte quelle briciole di pane che lasci quando navighi e fai acquisti online. Se vuoi lavorare con Machine Learning, Spark MLlib è un buon punto di partenza. Gli algoritmi supportati sono distribuiti su tutta la gamma. Se stai iniziando un progetto per hobby, potrebbe non essere l'idea migliore.
  5. H2O: è rivolto ai processi aziendali, quindi supporta le previsioni per le raccomandazioni e la prevenzione delle frodi. L'azienda, H20.ai mira a trovare e analizzare set di dati da file system distribuiti. Puoi eseguirlo sulla maggior parte dei sistemi operativi convenzionali, ma lo scopo principale è supportare i sistemi basati su cloud. Include la maggior parte degli algoritmi statistici, quindi può essere utilizzato per la maggior parte dei progetti.
  6. Mahout: è realizzato per algoritmi di Machine Learning distribuiti. Fa parte di Apache a causa della natura distribuita dei calcoli. L'idea alla base di Mahout è che i matematici implementino i propri algoritmi. Questo non è per un principiante, se stai solo imparando, è meglio usare qualcos'altro. Detto questo, Mahout può connettersi a molti back-end, quindi quando hai creato qualcosa guarda dentro per vedere se vuoi usare Mahout per il tuo frontend.
  7. Cloudera Oryxera: Utilizzato principalmente per l'apprendimento automatico su dati in tempo reale. Oryx 2 è un'architettura che stratifica tutto il lavoro per creare un sistema in grado di reagire ai dati in tempo reale. I livelli funzionano anche in diversi intervalli di tempo, con un livello batch che costruisce il modello di base e un livello velocità che modifica il modello man mano che arrivano nuovi dati. Oryx è basato su Apache Spark e crea un'intera architettura che implementa tutte le parti di un'applicazione.
  8. Teano: Theano è una libreria Python integrata con NumPy. Questo è il più vicino a Python che puoi ottenere. Quando usi Theano, ti consigliamo di avere installato gcc. La ragione di ciò è che Theano può compilare il tuo codice nel codice più appropriato possibile. Mentre Python è fantastico, in alcuni casi C è più veloce. Quindi Theano può convertire in C e compilare rendendo il tuo programma più veloce. Facoltativamente, puoi aggiungere il supporto GPU.
  9. Tensorflow: Il tensore nel nome punta a un tensore matematico. Un tale tensore ha 'n' posti in una matrice, tuttavia, un tensore è un array multidimensionale. TensorFlow ha algoritmi per eseguire calcoli per i tensori, da cui il nome, puoi chiamarli da Python. È costruito in C e C++, ma ha un front-end per Python. Questo lo rende facile da usare e veloce. Tensorflow può essere eseguito su CPU, GPU o distribuito su reti, questo è ottenuto da un motore di esecuzione che funge da livello tra il codice e il processore.
  10. Matplotlib: Quando ti viene in mente un problema che puoi risolvere con l'apprendimento automatico, molto probabilmente vorrai visualizzare i tuoi risultati. È qui che entra in gioco matplotlib. È progettato per mostrare i valori di qualsiasi grafico matematico ed è molto utilizzato nel mondo accademico.

CONCLUSIONE

Questo articolo ti ha dato un'idea di cosa è disponibile per programmare in Machine Learning. Per avere un quadro chiaro di ciò di cui hai bisogno, devi iniziare creando alcuni programmi e vedere come funzionano. Solo quando sai come fare le cose, puoi trovare la soluzione perfetta per il tuo prossimo progetto.

OpenTTD vs Simutrans
Creare la tua simulazione di trasporto può essere divertente, rilassante ed estremamente allettante. Ecco perché devi assicurarti di provare quanti pi...
Tutorial OpenTTD
OpenTTD è uno dei giochi di simulazione aziendale più popolari in circolazione. In questo gioco, devi creare una meravigliosa attività di trasporto. T...
SuperTuxKart per Linux
SuperTuxKart è un fantastico titolo progettato per offrirti l'esperienza di Mario Kart gratuitamente sul tuo sistema Linux. È piuttosto impegnativo e ...