Programovanie

5 distribúcií Pythonu na zvládnutie strojového učenia

Ak pracujete v štatistikách, dátovej vede alebo strojovom učení, je pravdepodobné, že používate Python. A tiež z dobrého dôvodu: Bohatý ekosystém knižníc a nástrojov a pohodlie samotného jazyka robia z Pythonu vynikajúcu voľbu.

ale ktoré Python? Existuje niekoľko distribúcií jazyka a každá z nich bola vytvorená rôznymi spôsobmi a pre rôzne publikum. Tu sme podrobne opísali päť inkarnácií Pythonu, od najobecnejších po najšpecifickejšie, s podrobnosťami o tom, ako sa hromadia na spracovanie úloh strojového učenia.

Súvisiace video: Ako Python uľahčuje programovanie

Python, perfektný pre IT, zjednodušuje mnoho druhov práce, od automatizácie systému až po prácu v špičkových oblastiach, ako je strojové učenie.

Anakonda Python

Anaconda sa začala presadzovať ako hlavná distribúcia v jazyku Python, a to nielen pre dátovú vedu a strojové učenie, ale aj pre všeobecný vývoj v jazyku Python. Spoločnosť Anaconda je podporovaná rovnakým komerčným poskytovateľom (predtým Continuum Analytics), ktorý ponúka plány podpory pre podniky.

Distribúcia Anaconda poskytuje v prvom rade distribúciu v jazyku Python vybavenú ľahkým prístupom k balíkom často používaným v oblasti dátovej vedy: NumPy, Pandas, Matplotlib atď. Nie sú len súčasťou balíka Anaconda, ale sú k dispozícii prostredníctvom vlastného systému správy balíkov s názvom Conda. Balíky nainštalované pomocou Conda môžu obsahovať zložité externé binárne závislosti, ktoré sa nedajú spravovať prostredníctvom vlastného Pythonu Pip. (Upozorňujeme, že Pip môžete stále používať, ak chcete, ale nezískate výhody, ktoré pre tieto balíčky poskytuje Conda.) Každý balík je aktualizovaný programom Anaconda a veľa z nich je kompilovaných s procesorom Intel MKL. rozšírenia pre rýchlosť.

Ďalšou hlavnou výhodou, ktorú Anaconda poskytuje, je grafické prostredie Anaconda Navigator. Navigator nie je IDE, ale skôr pohodlné grafické rozhranie pre funkcie Anaconda vrátane správcu balíkov Conda a používateľsky konfigurovaných virtuálnych prostredí. Môžete tiež použiť Navigator na správu aplikácií tretích strán, ako sú notebooky Jupyter a Visual Studio Code IDE.

Minimálna inštalácia programu Anaconda, nazývaná Miniconda, inštaluje iba toľko základne Anaconda, aby ste mohli začať, ale je možné ju rozšíriť podľa potreby pomocou ďalších balíkov nainštalovaných pomocou Conda alebo Pip. To je užitočné, ak chcete využiť bohatý rozsah knižníc spoločnosti Anaconda, ale musíte mať štíhlosť.

ActivePython

Dátová veda je len jedným z prípadov použitia pre ActivePython, ktorý bol navrhnutý tak, aby slúžil ako profesionálne podporovaná edícia jazyka s konzistentnými implementáciami naprieč architektúrami a platformami. To pomáha, ak používate Python na analýzu dát na platformách ako AIX, HP-UX a Solaris, ako aj Windows, Linux a MacOS.

ActivePython sa snaží čo najviac držať pôvodnej referenčnej inkarnácie Pythonu. Namiesto špeciálneho inštalátora pre zložité matematické a štatistické balíky (prístup Anaconda), ActivePython predkompiluje mnoho z týchto balíkov, v prípade potreby pomocou rozšírení Intel MKL, a poskytne ich ako balíčky s predvolenou inštaláciou ActivePython. Nemusia byť formálne nainštalované; sú k dispozícii hneď po vybalení z krabice.

Ak však chcete upgradovať na novšiu verziu týchto predkompilovaných balíkov, budete musieť počkať, kým vyjde ďalšie zostavenie samotného ActivePythonu. Vďaka tomu je ActivePython konzistentnejší ako celok - je to cenná vec, ktorú treba mať, keď záleží na reprodukovateľnosti výsledkov -, ale aj menej flexibilný.

CPython

Ak chcete začať svoju prácu so strojovým učením úplne od začiatku a nepoužívate nič iné ako oficiálnu verziu jazyka Python v bežnom prostredí, vyberte CPython. Názov CPython, ktorý je pomenovaný preto, že je to referenčné vydanie runtime Pythonu napísané v jazyku C, je k dispozícii na webovej stránke Python Software Foundation a poskytuje iba nástroje potrebné na spustenie skriptov Pythonu a správu balíkov.

CPython má zmysel, ak chcete vytvoriť prostredie Python na mieru pre projekt strojového učenia alebo dátovej vedy, dôverujete si, že to urobíte správne, a nechcete, aby vám prekážali akékoľvek zmeny tretích strán. Zdroj pre CPython je ľahko dostupný, takže môžete dokonca ľubovoľne kompilovať všetky zmeny, ktoré by ste mohli urobiť kvôli rýchlosti alebo potrebám projektu.

Na druhej strane, používanie CPython znamená, že budete musieť zvládnuť vstupy a výstupy inštalácie a konfigurácie balíkov, ako je NumPy, so všetkými ich závislosťami - z ktorých niektoré musia byť vyhľadávané a pridané manuálne.

Niektoré z týchto prác sa za posledných pár rokov stali menej zaťažujúcimi, najmä teraz, keď správca balíkov Python’s Pip elegantne inštaluje predkompilované binárne súbory, aké sa používajú v mnohých balíkoch vedeckých údajov. Ale stále existuje veľa prípadov, najmä v systéme Microsoft Windows, kde budete musieť všetky časti spojiť ručne - napríklad manuálnou inštaláciou kompilátora C / C ++.

Ďalšou nevýhodou používania CPythonu je, že nepoužíva žiadne z možností zvyšovania výkonu, ktoré sú užitočné v strojovom učení a dátovej vede, ako sú napríklad rozšírenia Intel Math Kernel Library (MKL). Ak chcete používať Intel MKL úplne sami, musíte si vytvoriť knižnice NumPy a SciPy.

Premýšľať Canopy

Distribúcia Pythonu Enthought Canopy sa v mnohých ohľadoch podobá Anaconde. Je skonštruovaný s dátovou vedou a strojovým učením ako primárnymi prípadmi použitia, prichádza s vlastným kurátorským indexom balíkov a poskytuje grafické klientske rozhrania aj nástroje príkazového riadku na správu celého nastavenia. Podnikoví používatelia si tiež môžu kúpiť server Enthought Deployment Server, systém správy balíkov za bránou firewall. Balíky strojového učenia vytvorené pre Canopy používajú rozšírenia Intel MKL.

Hlavným rozdielom medzi Anacondou a Canopy je rozsah. Baldachýn je skromnejší, Anaconda komplexnejšia. Zatiaľ čo napríklad Canopy obsahuje nástroje príkazového riadku na vytváranie a správu virtuálnych prostredí Pythonu (užitočné pri práci s rôznymi sadami balíkov pre rôzne pracovné postupy strojového učenia), Anaconda poskytuje pre túto úlohu grafické používateľské rozhranie. Na druhej strane Canopy obsahuje aj šikovné vstavané IDE - kombinovaný prehliadač súborov, notebook Jupyter a editor kódu - ktorý je užitočný na bezproblémové naskočenie a prácu.

WinPython

Pôvodnou úlohou WinPythonu bolo poskytnúť vydanie Pythonu zostaveného špeciálne pre Microsoft Windows. V čase, keď zostavy CPython pre Windows neboli obzvlášť robustné, program WinPython vyplnil užitočné miesto. Dnes je vydanie systému Windows CPython celkom dobré a program WinPython sa obrátil k vyplneniu trhlín, ktoré CPython stále nevypracováva - najmä pre aplikácie v oblasti dátovej vedy a strojového učenia.

Štandardne je program WinPython prenosný. Celá distribúcia WinPython sa zmestí do jedného adresára, ktorý je možné umiestniť kdekoľvek a kdekoľvek bežať. Inštaláciu WinPython je možné dodať ako archív alebo na jednotku USB s predinštalovanými všetkými premennými prostredia, balíkmi a skriptmi potrebnými pre danú úlohu. Je to užitočný spôsob, ako zbaliť všetko potrebné na natrénovanie konkrétneho modelu alebo reprodukciu konkrétneho dátového experimentu. Alebo môžete zaregistrovať inštaláciu WinPython v systéme Windows a spustiť ju, akoby bola nainštalovaná natívne (a ak chcete, odhlásiť ju neskôr).

Pokryté sú aj mnohé zložitejšie prvky distribúcie Pythonu zameranej na strojové učenie. Väčšina kľúčových knižníc - NumPy, Pandas, Jupyter a rozhrania pre jazyky R a Julia - je predvolene zahrnutá a je v prípade potreby postavená na rozšíreniach Intel MKL. Kompilátor Mingw64 C / C ++ je tiež dodávaný s balíkom NumPy vo WinPythone, takže binárne rozšírenia Pythonu je možné zostaviť zo zdroja (napríklad pomocou Cythonu) bez nutnosti inštalácie kompilátora.

WinPython má vlastný inštalačný program balíkov WPPM, ktorý spracováva balíky dodávané s vopred pripravenými binárnymi súbormi aj s balíčkami pure-Python. A pre tých, ktorí chcú iba verziu WinPython s holými kosťami bez predvoleného nastavenia balíkov, ponúka WinPython „nulovú verziu“ v rovnakom duchu ako Miniconda spoločnosti Anaconda.

Súvisiace video: Strojové učenie a AI dešifrované

Pri prekonávaní humbuku okolo strojového učenia a umelej inteligencie náš panel hovorí o definíciách a dôsledkoch tejto technológie.

$config[zx-auto] not found$config[zx-overlay] not found