Datatiede

Kymmenen parasta koneoppimiskirjastoa Pythonille

Kymmenen parasta koneoppimiskirjastoa Pythonille

Mitä haluat luoda? Tärkeä kysymys!

Olet tullut tänne käyttämään koneoppimista (ML) . Oletko miettinyt huolellisesti mitä varten? Kun valitset koneoppimiskirjaston, sinun on aloitettava siitä, miten aiot käyttää sitä. Vaikka olisit vain kiinnostunut oppimisesta, sinun on harkittava, missä koneoppimista käytetään ja mikä on lähinnä tärkeintä kiinnostustasi. Sinun tulisi myös miettiä, haluatko keskittyä saamaan jotain menemään paikalliselle koneellesi tai haluatko levittää tietokonettasi monille palvelimille.

Aluksi aloita tekemällä jotain toimimaan.

Missä koneoppimista käytetään

Löydät monia projekteja, jotka käyttävät ML: ää, itse asiassa niin monta, että jokainen luokka on sivua pitkä. Lyhyt versio on 'kaikkialla', tämä ei ole totta, mutta aluksi ihmettelen. Ilmeisiä ovat suositusmoottorit, kuvan tunnistus ja roskapostin tunnistus. Koska ohjelmoit jo Pythonissa, olet kiinnostunut myös The Kite -koodin täydennysohjelmistosta. Tämä on muut käyttötarkoitukset manuaalisten tietojen syöttöön, lääketieteelliseen diagnosointiin ja ylläpitoon liittyvien virheiden havaitsemiseksi suurille tehtaille ja muille teollisuudenaloille

Kirjastot lyhyesti:

  1. Scikit-oppia, Scikitistä; Rutiinit ja kirjastot NumPyn, SciPyn ja Matplotlibin päällä. Tämä kirjasto luottaa suoraan Pythoniin natiivien matemaattisten kirjastojen rutiineihin. Asennat scikit-learnin tavallisen Python-paketinhallinnan kanssa. Scikit-learn on pieni eikä tue GPU-laskelmia, tämä saattaa laittaa sinut, mutta se on tietoinen valinta. Tämä paketti on pienempi ja helpompi aloittaa. Se toimii edelleen melko hyvin suuremmissa yhteyksissä, vaikka jättimäisen laskentaryhmän tekemiseksi tarvitset muita paketteja.
  2. Scikit-kuva Erityinen kuville! Scikit-kuvassa on algoritmeja kuvan analysointiin ja manipulointiin. Voit käyttää sitä korjaamaan vahingoittuneita kuvia sekä manipuloida kuvan värejä ja muita ominaisuuksia. Tämän paketin pääajatuksena on asettaa kaikki kuvat NumPyn saataville, jotta voit tehdä niihin liittyviä toimintoja ndarrays-tiedostoina. Tällä tavoin kuvat ovat käytettävissä datana minkä tahansa algoritmin ajamiseksi.
  3. Shogun: C ++ - pohja, jolla on selkeät API-rajapinnat Pythoniin, Java: han, Scalaan jne. Monet, ehkä suurin osa kokeiluihin käytettävissä olevista algoritmeista. Tämä on kirjoitettu C ++: lla tehokkuuden lisäämiseksi, on myös tapa kokeilla sitä pilvessä. Shogun käyttää SWIG-liitäntää monien ohjelmointikielien, mukaan lukien Python, kanssa. Shogun kattaa suurimman osan algoritmeista ja sitä käytetään laajasti akateemisessa maailmassa. Paketissa on työkalupakki, joka on saatavana osoitteesta https: // www.shogun-työkalupakki.org.
  4. Spark MLlib: On pääasiassa Java-käyttöjärjestelmää varten, mutta se on saatavilla NumPy-kirjaston kautta Python-kehittäjille. Spark MLlibin on kehittänyt Apache-tiimi, joten se on tarkoitettu hajautettuihin tietojenkäsittelyympäristöihin, ja sitä on käytettävä isännän ja työntekijöiden kanssa. Voit tehdä tämän itsenäisessä tilassa, mutta Sparkin todellinen voima on kyky jakaa työt monille koneille. Sparkin hajautettu luonne tekee siitä suositun monien suurten yritysten, kuten IBM, Amazon ja Netflix, keskuudessa. Päätavoitteena on kaivaa "Big Data", joka tarkoittaa kaikkia niitä leivänmuruja, jotka jätät taakse, kun surffaat ja ostat verkossa. Jos haluat työskennellä koneoppimisen kanssa, Spark MLlib on hyvä paikka aloittaa. Sen tukemat algoritmit ovat levinneet koko alueelle. Jos aloitat harrastusprojektin, se ei ehkä ole paras idea.
  5. H2O: Kohdennettu liiketoimintaprosesseihin, joten se tukee suositusten ennustamista ja petosten estämistä. Liiketoiminta, H20.ai: n tavoitteena on löytää ja analysoida hajautettujen tiedostojärjestelmien tietojoukot. Voit käyttää sitä useimmissa perinteisissä käyttöjärjestelmissä, mutta päätarkoitus on tukea pilvipohjaisia ​​järjestelmiä. Se sisältää useimmat tilastolliset algoritmit, joten sitä voidaan käyttää useimmissa projekteissa.
  6. Mahout: Suunniteltu hajautetuille koneoppimisalgoritmeille. Se on osa Apachea laskelmien hajautetun luonteen vuoksi. Mahoutin idea on, että matemaatikot toteuttavat omat algoritminsa. Tämä ei ole tarkoitettu aloittelijoille, jos vain opit, sinun on parempi käyttää jotain muuta. Tämän sanottuaan Mahout voi muodostaa yhteyden moniin taustapalveluihin, joten kun olet luonut jotain, katso sisään, jos haluat käyttää Mahoutia käyttöliittymään.
  7. Cloudera Oryx: Käytetään pääasiassa reaaliaikaisen datan koneoppimiseen. Oryx 2 on arkkitehtuuri, joka kerää kaiken työn luodakseen järjestelmän, joka voi reagoida reaaliaikaiseen dataan. Tasot toimivat myös eri aikakehyksissä, eräkerroksella, joka rakentaa perusmallin, ja nopeuskerroksella, joka muokkaa mallia uusien tietojen tullessa sisään. Oryx on rakennettu Apache Sparkin päälle ja luo kokonaisen arkkitehtuurin, joka toteuttaa kaikki sovelluksen osat.
  8. Theano: Theano on PyPon-kirjastot, joka on integroitu NumPy-palveluun. Tämä on lähinnä Pythonia, jonka saat. Kun käytät Theanoa, sinun on asennettava gcc. Syynä tähän on, että Theano voi koota koodisi sopivimpaan mahdolliseen koodiin. Vaikka Python on loistava, joissakin tapauksissa C on nopeampi. Joten Theano voi muuntaa C: ksi ja kääntää ohjelman ajamisen nopeammaksi. Vaihtoehtoisesti voit lisätä GPU-tuen.
  9. Tensorflow: Nimessä oleva tensori osoittaa matemaattisen tensorin. Tällaisella tensorilla on n-paikkaa matriisissa, mutta tensori on moniulotteinen taulukko. TensorFlow: lla on algoritmeja Tensorien laskelmien tekemiseen, joten nimi, voit kutsua näitä Pythonista. Se on rakennettu C- ja C ++ -järjestelmiin, mutta sillä on käyttöliittymä Pythonille. Tämä tekee siitä helppokäyttöisen ja nopean käynnin. Tensorflow voi toimia CPU: lla, GPU: lla tai jaettuna verkkoihin, tämä saavutetaan suoritusmoottorilla, joka toimii kerroksena koodisi ja prosessorin välillä.
  10. Matplotlib: Kun olet keksinyt ongelman, jonka voit ratkaista koneoppimisen avulla, haluat todennäköisesti visualisoida tulokset. Tässä tulee matplotlib. Se on suunniteltu näyttämään kaikkien matemaattisten kaavioiden arvot, ja sitä käytetään voimakkaasti akateemisessa maailmassa.

PÄÄTELMÄT

Tämä artikkeli on antanut sinulle käsityksen siitä, mitä koneopetuksessa voi ohjelmoida. Saadaksesi selkeän kuvan tarvitsemastasi, sinun on aloitettava tekemällä muutama ohjelma ja nähdä, miten ne toimivat. Vasta kun tiedät kuinka asiat voidaan tehdä, löydät täydellisen ratkaisun seuraavaan projektiisi.

How to reverse Mouse and Touchpads scrolling direction in Windows 10
Mouse and Touchpads not only make computing easy but more efficient and less time-consuming. We cannot imagine a life without these devices, but still...
How to change Mouse pointer and cursor size, color & scheme on Windows 10
The mouse pointer and cursor in Windows 10 are very important aspects of the operating system. This can be said for other operating systems as well, s...
Ilmaiset ja avoimen lähdekoodin pelimoottorit Linux-pelien kehittämiseen
Tämä artikkeli kattaa luettelon ilmaisista ja avoimen lähdekoodin pelimoottoreista, joita voidaan käyttää 2D- ja 3D-pelien kehittämiseen Linuxissa. Tä...