Znanstveniki podatkov in strokovnjaki za strojno učenje se ukvarjajo s precejšnjim številom podatkov različnih vrst v tipičnem projektu podatkovne znanosti. Razviti so bili številni modeli z različnimi konfiguracijami in funkcijami ter večkratnimi iteracijami prilagajanja parametrov za doseganje optimalne zmogljivosti.
V takem scenariju je treba spremljati in meriti vse spremembe podatkov in prilagoditve procesa gradnje modela, da se ugotovi, kaj je delovalo in kaj ne. Bistvenega pomena je tudi, da se lahko vrnete na prejšnjo izdajo in pogledate prejšnje rezultate.
Nadzor različic podatkov (DVC), ki pomaga pri upravljanju podatkov, osnovnega modela in izvajanju ponovljivih rezultatov, je ena takih tehnologij, ki nam omogoča spremljanje vsega tega.
V tej objavi bomo natančno preučili nadzor različic podatkov in najboljša orodja za uporabo. Začnimo.
Kaj je nadzor različic podatkov?
Različice so potrebne za vse produkcijske sisteme. Enotna točka dostopa do najsodobnejših podatkov. Vsak vir, ki se pogosto spreminja, zlasti s strani več uporabnikov hkrati, potrebuje ustvarjanje revizijske sledi za spremljanje vseh sprememb.
Sistem za nadzor različic je odgovoren za zagotavljanje, da so vsi v ekipi na isti strani. Zagotavlja, da vsi v ekipi delajo na najnovejši različici datoteke in, kar je še pomembneje, da vsi sodelujejo pri istem projektu hkrati.
Če imate ustrezno opremo, lahko to dosežete z minimalnim naporom!
Če boste uporabili zanesljivo strategijo upravljanja različic podatkov, boste imeli dosledne nabore podatkov in temeljit arhiv vseh svojih raziskav. Orodja za različice podatkov so ključnega pomena za vaš potek dela, če vam je mar za ponovljivost, sledljivost in zgodovino modelov ML.
Pomagajo vam pridobiti različico predmeta, kot je zgoščena vrednost nabora podatkov ali modela, ki jo lahko nato uporabite za prepoznavanje in primerjavo. Ta različica podatkov se pogosto vnese v vašo rešitev za upravljanje metapodatkov, da se zagotovi, da je vaše usposabljanje modela različico in ponovljivost.
Najboljša orodja za nadzor različic podatkov
Zdaj je čas, da si ogledate najboljše razpoložljive rešitve za nadzor različic podatkov, ki jih lahko uporabite za spremljanje vsakega dela vaše kode.
1. git-lfs
Projekt Git LFS je brezplačen za uporabo. Znotraj Gita so velike datoteke, kot so zvočni vzorci, videoposnetki, baze podatkov in fotografije, nadomeščene z besedilnimi kazalci, vsebina datoteke pa je shranjena na oddaljenem strežniku, kot je GitHub.com ali GitHub Enterprise.
Omogoča vam, da uporabite Git za različico ogromnih datotek - do velikosti nekaj GB - gostite več v vaših repozitorijih Git z uporabo zunanjega pomnilnika ter hitreje klonirate in pridobite velika repozitorija datotek. Ko gre za upravljanje podatkov, je to precej lahka rešitev. Za delo z Gitom ne potrebujete dodatnih ukazov, sistemov za shranjevanje ali kompletov orodij.
Omejuje količino informacij, ki jih prenesete. To pomeni, da bo kloniranje in pridobivanje velikih datotek iz skladišč hitrejše. Kazalci so izdelani iz lažjega materiala in kažejo na LFS.
Zato se, ko svoj repo potisnete v glavni repozitorij, hitro posodobi in zavzame manj prostora.
Prednosti
- Enostavno se vključi v razvojne poteke večine podjetij.
- Ni potrebe po upravljanju dodatnih pravic, ker uporablja enaka dovoljenja kot repozitorij Git.
Proti
- Git LFS zahteva uporabo namenskih strežnikov za shranjevanje vaših podatkov. Posledično bodo vaše ekipe za podatkovno znanost zaprte, vaša inženirska delovna obremenitev pa se bo povečala.
- Zelo specializirano in lahko zahteva uporabo različnih orodij za nadaljnje faze v delovnem toku podatkovne znanosti.
Cenitev
Za vsakogar je brezplačna.
2. LakeFS
LakeFS je odprtokodna rešitev za različico podatkov, ki shranjuje podatke v S3 ali GCS in ima Git podobno paradigmo razvejanja in predaje, ki se spreminja v petabajte.
Ta strategija razvejanja naredi vaše podatkovno jezero skladno s standardom ACID, tako da omogoča, da se spremembe zgodijo v različnih vejah, ki jih je mogoče sestaviti, združiti in razveljaviti atomsko in v trenutku.
LakeFS ekipam omogoča ustvarjanje dejavnosti podatkovnega jezera, ki so ponovljive, atomske in imajo različice. To je novinec na sceni, vendar je sila, s katerim je treba računati.
Uporablja Git podoben pristop razvejanja in nadzora različic za interakcijo z vašimi podatkovno jezero, razširljiv do petabajtov podatkov. Na eksabajtni lestvici lahko preverite nadzor različic.
Prednosti
- Operacije, podobne Gitu, vključujejo razvejanje, potrditev, združevanje in vračanje.
- Kavlji pred potrditvijo/združitvijo se uporabljajo za preverjanje CI/CD podatkov.
- Zagotavlja zapletene funkcije, kot so transakcije ACID, za preprosto shranjevanje v oblaku, kot sta S3 in GCS, pri čemer ostaja nevtralen glede formata.
- Povrnite spremembe podatkov v realnem času.
- Z lahkoto se prilagaja, kar mu omogoča, da sprejme zelo velika podatkovna jezera. Nadzor različic je mogoče zagotoviti tako za razvojne kot za proizvodne nastavitve.
Proti
- LakeFS je nov izdelek, zato se lahko funkcionalnost in dokumentacija spremenita hitreje kot pri prejšnjih rešitvah.
- Ker je osredotočen na različico podatkov, boste morali uporabiti vrsto dodatnih orodij za različne dele delovnega toka znanosti o podatkih.
Cenitev
Za vsakogar je brezplačna.
3. KVB
Nadzor različic podatkov je brezplačna rešitev za različice podatkov, zasnovana za aplikacije podatkovne znanosti in strojnega učenja. To je program, ki vam omogoča, da svoj cevovod določite v katerem koli jeziku.
Z upravljanjem velikih datotek, nizov podatkov, modelov strojnega učenja, kode itd. orodje omogoča skupno rabo in ponovljivost modelov strojnega učenja. Program sledi zgledu Gita pri zagotavljanju preproste ukazne vrstice, ki jo je mogoče nastaviti v samo nekaj korakih.
Kot pove že ime, DVC ne pomeni samo različic podatkov. Prav tako olajša upravljanje cevovodov in modelov strojnega učenja za ekipe.
Končno bo DVC pomagal izboljšati doslednost modelov vaše ekipe in njihovo ponovljivost. Namesto uporabe zapletenih pripon datotek in komentarjev v kodi, izkoristite Veje Git preizkušati nove ideje. Za potovanje namesto papirja in svinčnika uporabite avtomatizirano metrično sledenje.
Za prenos doslednih svežnjev strojno učenje modele, podatke in kodo v produkcijo, oddaljene računalnike ali kolegovo namizje, lahko uporabite ukaze push/pull namesto ad-hoc skriptov.
Prednosti
- Je lahek, odprtokoden in deluje z vsemi glavnimi platformami v oblaku in vrstami shranjevanja.
- Prilagodljiv, agnostičen glede formata in ogrodja ter enostaven za izvedbo.
- Celoten razvoj vsakega modela ML je mogoče izslediti nazaj do njegove izvorne kode in podatkov.
Proti
- Upravljanje cevovoda in nadzor različic DVC sta neločljivo povezana. Če vaša ekipa že uporablja drug izdelek podatkovnega cevovoda, bo prišlo do redundance.
- Ker je DVC lahek, bo vaša ekipa morda morala ročno oblikovati dodatne funkcije, da bo uporabniku prijaznejši.
Cenitev
Za vsakogar je brezplačna.
4. DeltaLake
DeltaLake je odprtokodna plast za shranjevanje, ki povečuje zanesljivost podatkovnega jezera. Delta Lake poleg pretakanja in paketne obdelave podatkov podpira transakcije ACID in razširljivo upravljanje metapodatkov.
Deluje z API-ji Apache Spark in je nameščen na vašem obstoječem podatkovnem jezeru. Delta Sharing je prvi odprti protokol na svetu za varno izmenjavo podatkov v podjetju, ki omogoča preprosto izmenjavo podatkov z drugimi podjetji neodvisno od njihovih računalniških sistemov.
Delta Lakes z lahkoto obdelujejo petabajte podatkov. Metapodatki so shranjeni na enak način kot podatki, uporabniki pa jih lahko pridobijo z metodo Describe Detail. Delta Lakes ima eno samo arhitekturo, ki lahko bere podatke toka in pakete.
Upserte je preprosto narediti z Delto. Ti dvigi ali spajanja v tabelo Delta so primerljivi s spajanji SQL. Uporabite ga lahko za integracijo podatkov iz drugega podatkovnega okvira v vašo tabelo in izvajanje posodobitev, vstavljanj in brisanja.
Prednosti
- Številne zmogljivosti, kot so transakcije ACID in robustno upravljanje metapodatkov, so lahko na voljo v vaši trenutni rešitvi za shranjevanje podatkov.
- Delta Lake lahko zdaj brez truda upravlja tabele z milijardami particij in datotek v velikosti petabajtov.
- Zmanjšuje potrebo po ročnem nadzoru različic podatkov in drugih težavah s podatki, kar razvijalcem omogoča, da se osredotočijo na razvoj izdelkov na vrhu svojih podatkovnih jezer.
Proti
- Ker je bil zasnovan za delo s Sparkom in ogromnimi količinami podatkov, je Delta Lake na splošno preobremenjen za večino nalog.
- Zahteva uporabo namenskega zapisa podatkov, kar omejuje njegovo prilagodljivost in ga naredi nezdružljivega z vašimi trenutnimi obrazci.
Cenitev
Za vsakogar je brezplačna.
5. Dolt
Dolt je baza podatkov SQL, ki izvaja razcepitev, kloniranje, razvejanje, združevanje, potiskanje in vlečenje na enak način kot to počne repozitorij git. Za izboljšanje uporabniške izkušnje baze podatkov za nadzor različic Dolt omogoča sinhronizirano spreminjanje podatkov in strukture.
Je odlično orodje za sodelovanje vas in vaših sodelavcev. Z Doltom se lahko povežete na enak način kot s katero koli drugo bazo podatkov MySQL in izvajate poizvedbe ali spreminjate podatke z ukazi SQL.
Ko gre za različico podatkov, je Dolt edinstven. Dolt je baza podatkov, v nasprotju z nekaterimi drugimi rešitvami, ki samo različico podatkov. Medtem ko je programska oprema trenutno v zgodnjih fazah, obstaja upanje, da bo v bližnji prihodnosti popolnoma združljiva z Git in MySQL.
Vsi ukazi, ki jih poznate z Gitom, bodo delovali tudi z Doltom. Datoteke različic Git, tabele različic Dolt Z vmesnikom ukazne vrstice uvozite datoteke CSV, potrdite svoje spremembe, jih objavite na daljavo in združite spremembe svojega soigralca.
Prednosti
- Lahka in open source delno.
- V primerjavi z bolj obskurnimi izbirami ima vmesnik SQL, zaradi česar je bolj dostopen analitikom podatkov.
Proti
- V primerjavi z drugimi različicami različic baze podatkov je Dolt še vedno izdelek v razvoju.
- Ker je Dolt baza podatkov, morate vanjo prenesti svoje podatke, če želite izkoristiti prednosti.
Cenitev
Vsi so dobrodošli, da uporabljajo sejo skupnosti. Platforma ne zagotavlja premijskih cen; namesto tega se morate obrniti na ponudnika.
6. Pachyderm
Pachyderm je brezplačen sistem za nadzor različic podatkovne znanosti z veliko funkcijami. Pachyderm Enterprise je zmogljiva platforma za podatkovno znanost, zasnovana za obsežno sodelovanje v zelo varnih okoljih.
Pachyderm je ena redkih platform podatkovne znanosti na seznamu. Cilj Pachyderma je zagotoviti platformo, ki upravlja celoten podatkovni cikel in omogoča preprosto podvajanje ugotovitev modelov strojnega učenja. Pachyderm je v tem kontekstu znan kot "Docker of Data". Pachyderm zapakira vaše izvajalno okolje z uporabo vsebnikov Docker. To olajša podvajanje istih rezultatov.
Podatkovni znanstveniki in ekipe DevOps lahko samozavestno uvedejo modele zahvaljujoč kombinaciji verzioniranih podatkov z Dockerjem. Zahvaljujoč učinkovitemu sistemu shranjevanja je mogoče ohraniti petabajte strukturiranih in nestrukturiranih podatkov, medtem ko so stroški shranjevanja minimalni.
V vseh fazah cevovoda omogoča vodenje različic na podlagi datotek natančen revizijski zapis za vse podatke in artefakte, vključno z vmesnimi izhodi. Številne zmogljivosti orodja temeljijo na teh stebrih, ki ekipam pomagajo kar najbolje izkoristiti orodje.
Prednosti
- Na podlagi vsebnikov bodo vaša podatkovna okolja prenosljiva in enostavna za prenos med ponudniki v oblaku.
- Robusten, z možnostjo prilagajanja od majhnih do izjemno velikih sistemov.
Proti
- Ker je toliko gibljivih elementov, kot je strežnik Kubernetes, ki so potrebni za obvladovanje brezplačne izdaje Pachyderma, je krivulja učenja bolj strma.
- Pachyderm je morda težko vključiti v obstoječo infrastrukturo podjetja zaradi številnih tehnoloških komponent.
Cenitev
Platformo lahko začnete uporabljati s sejo skupnosti, za izdajo za podjetja pa se morate obrniti na prodajalca.
7. Neptun
Metapodatke za gradnjo modela upravlja shramba metapodatkov ML, ki je pomemben vidik sklada MLOps. Za vsak potek dela MLOps služi Neptune kot centralizirana shramba metapodatkov.
Na enem mestu lahko spremljate, vizualizirate in primerjate na tisoče modelov strojnega učenja. Vključuje funkcije, kot so sledenje poskusom, register modelov in spremljanje modela, kot tudi vmesnik za sodelovanje. Vključuje več kot 25 različnih integriranih orodij in knjižnic, vključno z več orodji za usposabljanje modelov in nastavitvijo hiperparametrov.
Neptunu se lahko pridružite brez uporabe svoje kreditne kartice. Namesto tega bo zadostoval račun Gmail.
Prednosti
- Integracija s katerim koli cevovodom, tokom, kodno bazo ali ogrodjem je preprosta.
- Vizualizacije v realnem času, enostaven API in hitra podpora
- Z Neptunom lahko naredite "varnostno kopijo" vseh podatkov vaših poskusov na enem mestu, ki jih lahko pozneje obnovite.
Proti
- Čeprav ni povsem odprtokodna, bi za zasebno uporabo domnevno zadostovala posamezna različica, čeprav je tak dostop omejen na en mesec.
- Obstaja nekaj majhnih pomanjkljivosti v oblikovanju.
Cenitev
Platformo lahko začnete uporabljati z individualnim načrtom, ki je brezplačen za vsakogar. Razdelek s cenami se začne pri 150 $/mesec.
zaključek
V tej objavi smo razpravljali o najboljših orodjih za urejanje različic podatkov. Kot smo videli, ima vsako orodje svoj nabor funkcij. Nekatere so bile brezplačne, druge pa je bilo treba plačati. Nekateri so zelo primerni za model malih podjetij, drugi pa so bolj primerni za velike poslovne modele.
Posledično morate po tehtanju prednosti in slabosti izbrati najboljšo programsko opremo za svoje namene. Priporočamo, da pred nakupom vrhunskega izdelka preizkusite brezplačno preskusno različico.
Pustite Odgovori