Seuraava artikkeli auttaa sinua: Rakenna ensimmäinen ML-putkisi Kubeflow:ssa
Kubeflow-putkilinjat ovat erinomainen tapa luoda kannettavia, skaalautuvia koneoppimistoimintoja. Se on osa suurempaa Kubeflow-ekosysteemiä, joka pyrkii minimoimaan monimutkaisuuden ja ajan, joka tarvitaan koulutukseen ja koneoppimismallien käyttöönottoon mittakaavassa. Joten tässä artikkelissa käsittelemme Kubeflowa teoreettisesti ja käytännössä toteuttamalla putkilinjan tietystä Jupyter-muistikirjasta. Alla on tärkeimmät kohdat, joista aiomme keskustella tämän artikkelin kautta.
Sisällysluettelo
- Mikä on Kubeflow?
- Mitkä ovat Kubeflown käyttötapaukset?
- Ympäristön järjestäminen
- ML-putkilinjan rakentaminen
Ymmärretään ensin Kubeflown ekosysteemi.
Mikä on Kubeflow?
Kubeflow on päästä päähän koneoppimisen pinoorkesterityökalusarja, joka perustuu Kubernetesiin monimutkaisten järjestelmien käyttöönottoon, skaalaukseen ja hallintaan. Kubeflown ominaisuudet, kuten JupyterHub-palvelimien käyttö, joiden avulla useat ihmiset voivat osallistua projektiin samanaikaisesti, ovat osoittautuneet loistavaksi työkaluksi. Kubeflow korostaa yksityiskohtaista projektinhallintaa sekä mainitun projektin syvällistä seurantaa ja analysointia.
Tietotutkijat ja -insinöörit voivat nyt luoda täysin toimivan putkilinjan segmentoiduilla vaiheilla. Nämä Kubeflow:n segmentoidut vaiheet ovat löyhästi kytkettyjä ML-liukuhihnan komponentteja. Ominaisuutta ei ole nähtävissä muissa kehyksissä ja joka mahdollistaa liukuputkien uudelleenkäytön ja muokkaamisen myöhempiä työkuormia varten.
Kubeflow on ilmainen ja avoimen lähdekoodin projekti, joka tekee koneoppimistyönkulkujen suorittamisesta helpompaa ja koordinoidumpaa Kubernetes-klustereissa (avoimen lähdekoodin konttiorkesterijärjestelmä ohjelmistojen käyttöönoton, skaalauksen ja hallinnan automatisointiin).
Tämä on Kubernetes-pohjainen Cloud-Native-kehys koneoppimisen käyttämiseen säiliöjärjestelmissä. Kubeflown Kubernetesin integroinnista ja laajentamisesta on tullut sujuvaa, ja Kubeflow luotiin toimimaan kaikkialla, missä Kubernetes käyttää GCP:tä, AWS:ää, Azurea ja niin edelleen.
Mitkä ovat Kubeflown käyttötapaukset?
Koulutetut mallit kootaan usein yhdeksi tiedostoksi ja tallennetaan palvelimelle tai kannettavalle tietokoneelle. Malli ladataan sitten palvelinprosessiin, joka hyväksyy verkkopyynnöt mallin päättelemiseksi, ja tiedosto kopioidaan sovellusta isännöivälle koneelle. Kun useat sovellukset vaativat mallipäätelmän tulosta yhdestä mallista, prosessi muuttuu monimutkaisemmaksi, varsinkin kun päivityksiä ja palautuksia tarvitaan.
Kubeflow antaa meille mahdollisuuden päivittää ja palauttaa useita sovelluksia tai palvelimia samanaikaisesti. Kun päivitystapahtuma on valmis, voit vaihtaa mallia yhdessä paikassa ja varmistaa, että kaikki asiakassovellukset saavat päivitykset nopeasti.
On yleistä, että koneoppimisasetukset ja -resurssit jaetaan. Usean vuokraajan koneoppimisympäristö tarvitaan yksinkertaisen ja tehokkaan jakamisen mahdollistamiseksi. Kubeflow-putkia voidaan käyttää sellaisen tekemiseen.
Sinun tulisi yrittää tarjota jokaiselle yhteistyökumppanille oma tila. Kubernetesin avulla voit ajoittaa ja hallita säilöjä sekä seurata kunkin yhteiskäyttäjän odottavia ja käynnissä olevia töitä.
Saat lisätietoja Kubeflowsta seuraamalla näitä artikkeleita, joissa yksi käsittelee ominaisuuksia, käyttötapauksia ja toinen vertaa sitä MLFlowiin.
Seuraavassa osiossa keskustelemme siitä, kuinka voimme määrittää ympäristöjä ML-putkilinjan rakentamiseksi, ja myöhemmin rakennamme ML-putkilinjan Jupyter-muistikirjasta.
Ympäristön järjestäminen
Kubeflow-ympäristön asennus on monessa muodossa, tässä ympäristön asetukset tarkoittaa virtuaalisen esiintymän luomista Kubeflow-käyttöliittymän kojelautaan, jossa työskentelemme. Käyttöönotto voidaan suorittaa paikallisesti tai ylipilvipalveluissa, kuten Google Cloud Platform (GCP) tai Amazon-verkkopalvelut (AWS).
Voit seurata tätä virallista asennusopasta paikallista käyttöönottoa varten, vaikka paikallinen käyttöönotto vaatii melko korkeat vaatimukset, kuten paljon tallennustilaa ja RAM-muistia, kun taas pilvipohjainen käyttöönotto on melko yksinkertaista ja suoraviivaista MiniKF:n avulla. MiniKF on kevyempi versio Kubeflowsta, jossa on nyt avaimet käteen -ratkaisu mallien kehittämiseen, testaukseen ja käyttöönottoon.
Voimme määrittää tämän joko GCP:lle tai AWS:lle. Voit seurata jommankumman virallista asennusta täältä. Kun teet kaikki asennusvaiheet ja kirjaudut sisään kojelautaan, ikkunan pitäisi näyttää tältä.
Vasemmassa paneelissa on erilaisia toimintoja, jotka ovat osa putkilinjan rakentamista. Alla nämä komponentit.
- Koti: Koti on ydinpaikka, josta löydät uusimmat materiaalit, meneillään olevat kokeilut ja asiaankuuluvat asiakirjat.
- Muistikirjat: Muistikirjojen palvelimien hallintaan.
- Tensorboards: Käytä TensorBoards-palvelimia hallitaksesi TensorBoard-palvelimia.
- Mallit: Käsitellä KFServing-malleja, jotka on otettu käyttöön.
- Volyymit: Voit hallita klusterin volyymit.
- Kokeet (AutoML): Katib-testien seuraamiseksi.
- Kokeilut (KFP): Hallita Kubeflow Pipelines (KFP) -kokeita.
- Putket: Voit seurata KFP-putkia.
- Juoksu: Voit seurata KFP-ajoja.
- Toistuvat juoksut: Voit hallita KFP:n toistuvia ajoja siirtymällä kohtaan Toistuvat ajot.
- Artefaktit: ML-metadata (MLMD) -artefakteja seurataan.
- Teloitukset: MLMD:ssä suorituksia käytetään useiden komponenttien suoritusten seuraamiseen.
ML-putkilinjan rakentaminen
Kun työskentelemme muistikirjoissa, voimme yksinkertaisesti kytkeä muistikirjamme tähän suoraan Jupyter Labin kautta ja rakentaa hienostuneen putkiston hienostuneesta muistikirjasta. Jaamme tämän rakennusprosessin vaiheittain.
Vaihe 1: Käynnistä muistikirjapalvelin
Kun olet määrittänyt kojelaudan, muistikirjapalvelin voidaan käynnistää Notebook-välilehdeltä (paneelin toinen vaihtoehto) ja luoda muistikirjalle uusi palvelin, jossa mainitaan mikä tahansa satunnainen nimi palvelimelle alla olevan kuvan mukaisesti.

Kun palvelin on luotu, muodosta yhteys siihen ja se avaa Jupyter lab -esiintymän uudessa välilehdessä.
Vaihe 2: Muistikirjan liittäminen
Täällä voit ladata oman muistikirjasi tai terminaalista, voit kloonata sen vastaavasta arkistosta. Tässä käytän muistikirjaa Kubeflown arkistosta, jotta meidän on avattava pääte ja tehtävä git klooni https://github.com/kubeflow-kale/kale ja avaa ja tutki titanic ml dataset -muistikirja esimerkkikansiosta.

Suorita muistikirja vaihe vaiheelta nähdäksesi, onko siinä riippuvuusongelmia. Jos kirjasto puuttuu, lisää se muistikirjan yläosaan ja suorita kaikki solut uudelleen.
Tässä muistikirjassa koneoppimisen avulla luodaan malli, joka ennustaa, ketkä Titanicin matkustajat selvisivät haaksirikkoutumisesta. Aineisto sisältää yhteenvedon Titanicin matkustajien kohtaloista heidän sosioekonomisen asemansa (luokka), sukupuolen, iän ja selviytymisen mukaan.
Vaihe 3: Muunna muistikirja Kubeflow-putkiksi
Kun olet suorittanut ja tarkastanut muistikirjan, napsauta Kubeflow-painiketta vasemmassa ruudussa aloittaaksesi liukuhihnan rakennusmenetelmän. Tutki kuinka useista soluista on tullut osa yhtä liukuhihnavaihetta ja kuinka liukuhihnavaihe voi olla riippuvainen aikaisemmista vaiheista, joita voidaan muuttaa halutun virtauksen perusteella.
Valitse nyt avattavasta valikosta Compile and Run. Seuraa tilannekuvan edistymistä sekä Pipeline Runin kehitystä. Sen jälkeen voit tarkastella ajoa napsauttamalla linkkiä ja siirtyäksesi Kubeflow Pipelines -käyttöliittymään. Koko putkilinjan kokoaminen vie muutaman minuutin, joten ole kärsivällinen.
Yllä oleva prosessi näkyy kuvan alla.

Nyt kun putki on rakennettu ja valmis käyttöön, on aika tarkastella tietoja. Kubeflow Pipelines -koontinäyttöön pääsee napsauttamalla muistikirjan ajolinkkiä tai napsauttamalla kojelaudan sisällä olevaa Suorita-välilehteä.
Määritetyt liukuhihnakomponentit tulevat näkyviin. Kun ne ovat valmiit, dataputken polkua muutetaan. Voit tutkia jokaista putkistoa napsauttamalla sitä ja vastaavat havainnot näkyvät seuraavassa ikkunassa.

Siinä kaikki, toistaiseksi olemme onnistuneet luomaan ensimmäisen putken saumattomasti.
Viimeiset sanat
Kubeflow- ja Kubeflow-putkistosta on nyt tullut vallankumouksellinen MLOps-alusta, jossa koeajalla olevat voivat käyttää kannettavaa suoraan putkilinjan tuotantoon. Tämän aloitusviestin kautta olemme nähneet käsitteellisesti, mitä Kubeflow on, ja käytännössä alkaen ympäristön luomisesta putken käyttöönottoon, keskustelimme perusteellisesti kaikesta.