Data Science

Top 10 knižníc strojového učenia pre Python

Top 10 knižníc strojového učenia pre Python

Čo chcete vytvoriť? Dôležitá otázka!

Prišli ste sem, aby ste používali Machine Learning (ML) . Zvážili ste dobre, na čo? Keď si vyberiete Knižnicu strojového učenia, musíte začať s tým, ako ju budete používať. Aj keď vás zaujíma iba učenie, mali by ste zvážiť, kde sa strojové učenie používa a ktoré je najbližšie k vášmu hlavnému záujmu. Mali by ste tiež zvážiť, či sa chcete sústrediť na to, aby sa na vašom lokálnom počítači niečo stalo, alebo ak by ste chceli rozšíriť svoju výpočtovú techniku ​​na veľa serverov.

Na začiatku začnite tým, že niečo bude fungovať.

Kde sa používa Machine Learning

Môžete nájsť veľa projektov, ktoré používajú ML, v skutočnosti toľko, že každá kategória má stránky dlhé. Krátka verzia je „všade“, to nie je pravda, ale človek sa začne čudovať. Samozrejmosťou sú mechanizmy odporúčaní, rozpoznávanie obrázkov a detekcia spamu. Pretože už programujete v Pythone, bude vás zaujímať aj softvér na dokončenie kódu The Kite. Toto je ďalšie použitie na zisťovanie chýb z manuálneho zadávania údajov, lekárskej diagnostiky a údržby pre významné továrne a ďalšie odvetvia

Knižnice v skratke:

  1. Scikit-uč sa, Zo scikitu; Rutiny a knižnice nad NumPy, SciPy a Matplotlib. Táto knižnica sa spolieha priamo na rutiny v matematických knižniciach natívnych pre Python. Nainštalujete scikit-learn pomocou svojho bežného správcu balíkov Python. Scikit-learn je malý a nepodporuje výpočty GPU, môže vás to dostať, ale je to vedomá voľba. Tento balík je menší a dá sa s ním ľahšie začať. Vo väčších kontextoch to stále funguje celkom dobre, aj keď na vytvorenie klastra gigantických výpočtov potrebujete ďalšie balíčky.
  2. Scikit-image Špeciálne pre obrázky! Scikit-image má algoritmy na analýzu a manipuláciu s obrazom. Môžete ho použiť na opravu poškodených obrázkov, ako aj na manipuláciu s farbami a inými atribútmi obrázka. Hlavnou myšlienkou tohto balíka je sprístupniť všetky obrázky NumPy, aby ste s nimi mohli vykonávať operácie ako ndarrays. Takto máte obrázky k dispozícii ako údaje na spustenie akýchkoľvek algoritmov.
  3. Shogun: Základňa C ++ s prehľadnými rozhraniami API pre Python, Java, Scala atď. Mnoho, možno väčšina algoritmov dostupných na experimentovanie. Tento je kvôli efektivite napísaný v C ++, existuje tiež spôsob, ako to vyskúšať v cloude. Shogun používa softvér SWIG na prepojenie s mnohými programovacími jazykmi vrátane Pythonu. Shogun pokrýva väčšinu algoritmov a je hojne používaný v akademickom svete. Súčasťou balíka je sada nástrojov dostupná na https: // www.Shogun-Toolbox.org.
  4. Spark MLlib: Je hlavne pre Javu, ale je k dispozícii cez NumPy Library pre vývojárov Pythonu. Spark MLlib je vyvinutý tímom Apache, takže je zameraný na distribuované výpočtové prostredia a musí byť spustený spolu s hlavnými pracovníkmi a pracovníkmi. Môžete to urobiť v samostatnom režime, ale skutočnou silou Sparku je schopnosť distribuovať úlohy na veľa strojov. Distribuovaná povaha produktu Spark ho robí obľúbeným u mnohých veľkých spoločností, ako sú IBM, Amazon a Netflix. Hlavným účelom je ťažiť „Big Data“, čo znamená všetky tie strúhanky, ktoré po sebe zanecháte, keď surfujete a nakupujete online. Ak chcete pracovať so strojovým učením, Spark MLlib je dobrým miestom pre začiatok. Algoritmy, ktoré podporuje, sú rozšírené v celom rozsahu. Ak začínate záujmový projekt, nemusí to byť najlepší nápad.
  5. H2O: Je zameraný na obchodné procesy, takže podporuje predikcie odporúčaní a prevencie podvodov. Podnikanie, H20.ai sa zameriava na hľadanie a analýzu súborov údajov z distribuovaných súborových systémov. Môžete ho spustiť na väčšine bežných operačných systémov, ale hlavným účelom je podpora cloudových systémov. Zahŕňa väčšinu štatistických algoritmov, takže je možné ich použiť pre väčšinu projektov.
  6. Mahout: Je určený pre distribuované algoritmy strojového učenia. Je súčasťou Apache kvôli distribuovanej povahe výpočtov. Za Mahoutom stojí myšlienka, aby matematici implementovali svoje vlastné algoritmy. To nie je pre začiatočníka, ak sa iba učíte, je lepšie použiť niečo iné. Z tohto dôvodu sa Mahout môže pripojiť k mnohým back-endom, takže keď ste vytvorili niečo, pozrite sa do toho a zistite, či chcete použiť Mahout pre svoje klientske rozhranie.
  7. Cloudera Oryx: Používa sa hlavne na strojové učenie na dátach v reálnom čase. Oryx 2 je architektúra, ktorá vrství všetku prácu na vytvorenie systému, ktorý dokáže reagovať na údaje v reálnom čase. Vrstvy tiež pracujú v rôznych časových rámcoch, s dávkovou vrstvou, ktorá vytvára základný model, a rýchlou vrstvou, ktorá model upravuje, keď prichádzajú nové údaje. Oryx je postavený na vrchole Apache Spark a vytvára celú architektúru, ktorá implementuje všetky časti aplikácie.
  8. Theano: Theano je knižnica Python, ktorá je integrovaná s NumPy. Toto je najbližšie k Pythonu, ktoré môžete získať. Ak používate Theano, odporúča sa mať nainštalovaný gcc. Dôvod je ten, že Theano môže váš kód skompilovať do najvhodnejšieho možného kódu. Aj keď je Python vynikajúci, v niektorých prípadoch je C rýchlejší. Takže Theano môže konvertovať na C a kompilovať, aby váš program bežal rýchlejšie. Voliteľne môžete pridať podporu GPU.
  9. Tensorflow: Tenzor v názve ukazuje na matematický tenzor. Takýto tenzor má v matici 'n' miesta, tenzor je však viacrozmerné pole. TensorFlow má algoritmy na vykonávanie výpočtov pre tenzory, preto ich názov môžete volať z jazyka Python. Je zabudovaný v jazykoch C a C ++, ale má rozhranie frontend pre Python. Vďaka tomu je jednoduché na používanie a rýchly beh. Tensorflow môže bežať na CPU, GPU alebo distribuovaný cez siete, čo je dosiahnuté vykonávacím mechanizmom, ktorý funguje ako vrstva medzi vašim kódom a procesorom.
  10. Matplotlib: Ak ste prišli s problémom, ktorý môžete vyriešiť pomocou Machine Learning, s najväčšou pravdepodobnosťou budete chcieť vizualizovať svoje výsledky. Tu prichádza na rad matplotlib. Je navrhnutý tak, aby ukazoval hodnoty akýchkoľvek matematických grafov, a je veľmi používaný v akademickom svete.

ZÁVER

Tento článok vám poskytne predstavu o tom, čo je k dispozícii na programovanie v strojovom učení. Ak chcete získať jasný obraz o tom, čo potrebujete, musíte najskôr vytvoriť niekoľko programov a zistiť, ako fungujú. Až kým nebudete vedieť, ako sa dajú veci robiť, nájdete perfektné riešenie pre váš ďalší projekt.

Hry Top 10 hier, ktoré sa dajú hrať na Ubuntu
Top 10 hier, ktoré sa dajú hrať na Ubuntu
Platforma Windows je jednou z dominujúcich platforiem pre hry kvôli obrovskému percentu hier, ktoré sa dnes vyvíjajú na natívnu podporu systému Window...
Hry 5 najlepších arkádových hier pre Linux
5 najlepších arkádových hier pre Linux
V dnešnej dobe sú počítače vážne stroje používané na hranie hier. Ak nemôžete dosiahnuť nové najvyššie skóre, budete vedieť, čo tým myslím. V tomto pr...
Hry Battle For Wesnoth 1.13.6 Vývoj uvoľnený
Battle For Wesnoth 1.13.6 Vývoj uvoľnený
Battle For Wesnoth 1.13.6 vydané minulý mesiac, je šiestym vývojovým vydaním v 1.13.séria x a prináša množstvo vylepšení, najmä používateľského rozhra...