Comparthing Logo
mašininis mokymasismlopsfunkcijų inžinerijaduomenų mokslasdirbtinis intelektas

Funkcijų saugyklų sistemos ir ad hoc funkcijų inžinerija

Funkcijų saugyklų sistemos siūlo centralizuotą, pakartotinai naudojamą ir versijomis pagrįstą funkcijų valdymą mašininio mokymosi darbo eigoms, o ad hoc funkcijų inžinerija remiasi kiekvienam projektui sukurtais individualiais scenarijais. Pasirinkimas tarp jų lemia, kaip komandos keičia modelių mastą, bendradarbiauja ir diegia juos gamybinėje aplinkoje.

Akcentai

  • Funkcijų saugyklos pašalina mokymo pateikimo iškraipymą, suvienodindamos transformacijos logiką paketiniuose ir realaus laiko apdorojimo srautuose.
  • Ad hoc inžinerija siūlo neprilygstamą lankstumą greitam eksperimentavimui be platformos apribojimų.
  • Funkcijų saugyklos paverčia funkcijas bendrais organizacijos ištekliais, taip sumažindamos pasikartojantį darbą tarp komandų.
  • Lūžio taškas funkcijų parduotuvės diegimui paprastai pasiekiamas, kai gamyba pradedama keliais modeliais.

Kas yra Funkcijų parduotuvių sistemos?

Centralizuotos platformos, kurios saugo, versijuoja ir teikia kuruojamas mašininio mokymosi modelių funkcijas skirtingose komandose ir projektuose.

  • Funkcines parduotuves 2010-ųjų pabaigoje išpopuliarino tokios įmonės kaip „Uber“ (Mikelandželas), „Airbnb“ („Chronon“) ir „Google“.
  • Paprastai jie palaiko tiek internetinį (mažo delsos laiko), tiek neprisijungus veikiantį (paketinį) funkcijų teikimą mokymui ir išvadoms.
  • Atvirojo kodo parinktys apima „Feast“, „Hopsworks“ ir „Featureform“, kurių kiekviena siūlo skirtingas saugojimo ir orkestravimo integracijas.
  • Funkcijų saugyklos užtikrina funkcijų nuoseklumą naudodamos tą pačią transformacijos logiką mokymui ir pateikimui, taip sumažindamos mokymo ir pateikimo iškraipymą.
  • Jie teikia integruotas funkcijų versijavimo, kilmės sekimo ir prieigos kontrolės funkcijas, kurios palaiko valdymą ir atkuriamumą.

Kas yra Ad hoc funkcijų inžinerija?

Pasirinktinės, projektui būdingos funkcijos, kurias rankiniu būdu kuria duomenų mokslininkai, naudodami scenarijus, užrašų knygeles arba vienkartinius procesus.

  • Ad hoc funkcijų inžinerija buvo numatytasis duomenų mokslo metodas nuo pat šios srities pradžios, gerokai prieš atsirandant funkcijų saugykloms.
  • Paprastai tai apima „Python“ arba SQL kodo rašymą užrašų knygelėse, tokiose kaip „Jupyter“, kad neapdoroti duomenys būtų paversti modeliui paruoštais įvesties duomenimis.
  • Funkcijos dažnai dubliuojamos skirtinguose projektuose, nes nėra bendros saugyklos, todėl apibrėžimai yra nenuoseklūs.
  • Šis metodas suteikia duomenų mokslininkams maksimalų lankstumą eksperimentuoti su naujomis transformacijomis be platformos apribojimų.
  • Laikui bėgant, priežiūra tampa sunkesnė, nes scenarijai, priklausomybės ir duomenų šaltiniai vystosi be centralizuotos dokumentacijos.

Palyginimo lentelė

Funkcija Funkcijų parduotuvių sistemos Ad hoc funkcijų inžinerija
Funkcijų daugkartinis panaudojimas Aukštas – bendras komandoms ir projektams Žemas – paprastai susijęs su projektu
Mokymo ir paslaugų teikimo nuoseklumas Integruota per vieningus vamzdynus Vadovas, dažnai nenuoseklus
Sąrankos sudėtingumas Didesnė pradinė sąranka ir infrastruktūra Minimaliai – tik kodas ir duomenys
Mastelio keitimas Sukurta gamybos mastui Ribota komandos ir įrankių pajėgumų
Valdymas ir kilmė Versijų kūrimas, prieigos kontrolė, audito takeliai Paprastai nedokumentuotas arba neoficialus
Lankstumas eksperimentams Vidutinis – platformos apribojimas Labai aukštas – nėra platformos apribojimų
Laikas iki pirmojo modelio Lėtesnis dėl sąrankos išlaidų Greičiau vienkartiniams projektams
Priežiūros išlaidos Mažesnis ilgalaikis mastelio keitimas Didesnis, kai funkcijų skaičius auga

Išsamus palyginimas

Darbo eiga ir architektūra

Funkcijų saugyklų sistemos veikia kaip dedikuoti infrastruktūros sluoksniai, esantys tarp neapdorotų duomenų šaltinių ir mašininio mokymosi modelių. Jos tvarko duomenų įkėlimą, transformavimą, saugojimą ir teikimą per vieningą srautą. Tuo tarpu ad hoc funkcijų inžinerija vyksta ten, kur dirba duomenų mokslininkas, dažniausiai užrašų knygelėse arba atskiruose scenarijuose, kurie tiesiogiai renka duomenis, taiko transformacijas ir tiekia modelius. Architektūrinis skirtumas reiškia, kad funkcijų saugykloms reikia iš anksto investuoti į įrankius, o ad hoc metodai gali prasidėti tik nuo CSV failo ir šiek tiek „Pandas“ kodo.

Mokymo ir gamybos suderinamumas

Vienas didžiausių mašininio mokymosi problemų yra mokymo ir aptarnavimo iškraipymas, kai modelis gerai veikia kūrimo metu, bet prastėja gamyboje, nes funkcijos apskaičiuojamos skirtingai. Funkcijų saugyklos šią problemą išsprendžia naudodamos tą patį transformacijos kodą tiek paketinio mokymo duomenims, tiek realaus laiko išvadoms. Taikydamos ad hoc inžineriją, komandos dažnai rašo vieną logikos rinkinį mokymui, o kitą – aptarnavimui, todėl atsiranda subtilių klaidų, kurias, kaip žinoma, sunku derinti. Vien šis nuoseklumo pranašumas paskatino daugelį organizacijų diegti funkcijų saugyklas.

Komandos bendradarbiavimas ir žinių dalijimasis

Kai funkcijos yra bendroje saugykloje, bet kuris duomenų mokslininkas gali jas atrasti ir pakartotinai panaudoti, o tai užkerta kelią nereikalingam darbui ir skatina standartizavimą. Nauji komandos nariai gali naršyti esamų funkcijų kataloge, užuot jas išradę iš naujo. Ad hoc inžinerija linkusi sukurti atskirus elementus, kai kiekvienas analitikas atskirai atkuria panašias funkcijas, kartais su šiek tiek skirtingais apibrėžimais, kurie sukelia painiavą tolesniame procese. Laikui bėgant, dėl šio susiskaidymo sunkiau išlaikyti nuoseklią funkcijų strategiją visoje organizacijoje.

Eksperimentavimo greitis ir pasirengimas gamybai

Ad hoc funkcijų inžinerija sužiba ankstyvųjų eksperimentų metu, kai duomenų mokslininkams reikia greitai atlikti naujas transformacijas, nesijaudinant dėl diegimo. Naują funkciją galima išbandyti per kelias minutes. Funkcijų saugyklos padidina išlaidas, nes kiekviena funkcija turi būti užregistruota, patvirtinta ir integruota į aptarnaujančią infrastruktūrą, prieš ją naudojant gamyboje. Tačiau tos pačios išlaidos atsiperka, kai modeliai pereina į gamybą, nes funkcija jau yra paruošta gamybai, o ne reikalauja atskirų inžinerijos pastangų.

Sąnaudų ir eksploatavimo aspektai

Funkcijų saugyklos valdymas apima infrastruktūros išlaidas saugojimui, skaičiavimui ir orkestravimui, taip pat inžinerines pastangas jai prižiūrėti. Mažoms komandoms ar pavieniams projektams tai gali atrodyti kaip perteklius. Ad hoc inžinerija beveik neturi infrastruktūros išlaidų, tačiau kaupia paslėptas išlaidas dėl pasikartojančio darbo, neatitikimų derinimo ir funkcijų perrašymo gamybai. Nusipelnymo taškas paprastai pasiekiamas, kai organizacija gamyboje turi kelis modelius arba keli duomenų mokslininkai dirba su persidengiančiomis problemomis.

Privalumai ir trūkumai

Funkcijų parduotuvių sistemos

Privalumai

  • + Centralizuotas funkcijų pakartotinis naudojimas
  • + Mokymo ir aptarnavimo nuoseklumas
  • + Integruotas versijų valdymas
  • + Gamybai paruoštas pateikimas

Pasirinkta

  • Didesnė įrengimo kaina
  • Infrastruktūros pridėtinės išlaidos
  • Lėtesnis eksperimentavimas
  • Tiekėjo arba įrankių užrakinimas

Ad hoc funkcijų inžinerija

Privalumai

  • + Maksimalus lankstumas
  • + Greitai pradedama
  • + Nereikia jokios infrastruktūros
  • + Lengva pritaikyti

Pasirinkta

  • Sunku pakartotinai panaudoti
  • Nenuoseklūs apibrėžimai
  • Sunku prižiūrėti
  • Nėra integruoto valdymo

Dažni klaidingi įsitikinimai

Mitas

Funkcijų saugyklos yra tik funkcijų duomenų bazės.

Realybė

Funkcijų saugykla yra daug daugiau nei vien saugykla. Ji apima transformavimo srautus, internetinį ir neinternetinį teikimą, funkcijų atradimą, kilmės stebėjimą ir prieigos kontrolę. Laikant ją paprasta duomenų baze prarandama didžioji dalis jos vertės, ypač nuoseklumo garantijos tarp mokymo ir išvadų.

Mitas

Ad hoc funkcijų inžinerija visiškai nėra pritaikoma mastelio keitimui.

Realybė

Daugelis sėkmingų įmonių daugelį metų naudojosi ad hoc duomenų srautais, prieš pradėdamos naudoti funkcijų saugyklas. Šis metodas gana gerai pritaikomas mažoms komandoms ir keliems modeliams. Kai modelių ir duomenų mokslininkų skaičius gerokai išauga, sutrinka bendradarbiavimas, valdymas ir nuoseklumas.

Mitas

Jums reikia pasirinkti vieną požiūrį visam laikui.

Realybė

Dauguma brandžių mašininio mokymosi organizacijų naudoja abu. Duomenų mokslininkai ad hoc nagrinėja naujas idėjas užrašų knygelėse, o tada patvirtintas funkcijas įkelia į funkcijų saugyklą, skirtą naudoti gamyboje. Praktiškai geriausiai veikia traktuojant jas kaip vienas kitą papildančius, o ne konkuruojančius metodus.

Mitas

Elementų saugyklos automatiškai pagerina modelio tikslumą.

Realybė

Funkcijų saugyklos pagerina veikimo kokybę, nebūtinai modelio našumą. Jos sumažina klaidų skaičių, pagreitina diegimą ir užkerta kelią neatitikimams, tačiau pagrindinėms funkcijoms vis tiek reikia apgalvoto dizaino. Bloga saugyklos funkcija vis tiek yra bloga funkcija.

Mitas

Atvirojo kodo funkcijų saugyklos yra iš karto paruoštos gamybai.

Realybė

Tokios priemonės kaip „Feast“ ir „Hopsworks“ suteikia tvirtą pagrindą, tačiau diegimas gamybinėje aplinkoje vis dar reikalauja didelių inžinerinių darbų, susijusių su stebėjimu, mastelio keitimu, saugumu ir integravimu su esama duomenų infrastruktūra. Parengtis įvairiuose projektuose labai skiriasi.

Dažnai užduodami klausimai

Kas yra funkcijų saugykla mašininio mokymosi srityje?
Funkcijų saugykla yra centralizuota platforma, kurioje saugomos, tvarkomos ir teikiamos mašininio mokymosi funkcijos, skirtos tiek mokymui, tiek išvadoms. Ji veikia kaip tiltas tarp neapdorotų duomenų ir modelių, užtikrinant, kad tie patys funkcijų apibrėžimai būtų nuosekliai naudojami tiek paketinio mokymo užduotyse, tiek realaus laiko prognozėse. Populiarūs pavyzdžiai: „Feast“, „Hopsworks“ ir „Tecton“.
Kodėl įmonės naudoja funkcijų parduotuves, o ne ad hoc kanalus?
Įmonės naudoja funkcijų saugyklas pirmiausia tam, kad pašalintų mokymo paslaugų teikimo iškraipymus, įgalintų funkcijų pakartotinį naudojimą skirtingose komandose ir sumažintų inžinerines pastangas, reikalingas modeliams diegti. Kai keli duomenų mokslininkai dirba su persidengiančiomis problemomis, bendras funkcijų katalogas apsaugo nuo pasikartojančio darbo ir nenuoseklių apibrėžimų, kurie gali nepastebimai sumažinti modelio našumą.
Kada ad hoc funkcijų inžinerija yra tinkamas pasirinkimas?
Ad hoc funkcijų inžinerija geriausiai tinka individualiems duomenų mokslininkams, tyrimų projektams ir ankstyvosios stadijos eksperimentams, kai greitis yra svarbesnis už standartizavimą. Jei kuriate vienkartinį modelį arba tyrinėjate naują probleminę sritį, funkcijų saugyklos sukūrimo išlaidos paprastai nėra pateisinamos. Daugelis komandų pradeda ad hoc ir pereina prie funkcijų saugyklos, kai modeliai pasiekia gamybinę aplinką.
Ar funkcijų saugyklos pakeičia duomenų srautus?
Ne, funkcijų saugyklos papildo, o ne pakeičia duomenų srautus. Neapdoroti duomenys vis tiek teka per išgavimo ir transformavimo srautus, kol pasiekia funkcijų saugyklą. Funkcijų saugykla tada tvarko su funkcijomis susijusius klausimus, pvz., versijų kūrimą, pateikimą ir aptikimą. Įsivaizduokite ją kaip specializuotą sluoksnį, esantį ant esamos duomenų infrastruktūros.
Kaip funkcijų saugyklos tvarko realaus laiko funkcijas?
Dauguma šiuolaikinių funkcijų saugyklų palaiko tiek paketinį, tiek srautinį funkcijų skaičiavimą. Jos integruojasi su srautinio apdorojimo sistemomis, tokiomis kaip „Apache Kafka“ arba „Apache Flink“, kad galėtų apskaičiuoti funkcijas beveik realiuoju laiku, o tada jas pateikti per mažo delsos internetines saugyklas, tokias kaip „Redis“ arba „DynamoDB“. Tai leidžia modeliams naudoti naujas funkcijas išvadų darymo metu, neperkuriant viso srauto.
Kas yra treniruočių ir patiekimo iškraipymas ir kodėl jis svarbus?
Mokymo ir pateikimo iškraipymas įvyksta, kai funkcijos apskaičiuojamos skirtingai modelio mokymo metu ir gamybinės išvados metu, todėl modelis gamybinėje aplinkoje veikia blogiau nei tikėtasi. Tai viena iš dažniausių modelio degradacijos priežasčių po diegimo. Funkcijų saugyklos to išvengia naudodamos identišką transformacijos logiką abiem kontekstams.
Ar išskirtinės parduotuvės vertos mažoms komandoms?
Labai mažoms komandoms, turinčioms vieną ar du modelius, funkcijų saugyklos dažnai padidina sudėtingumą, nei jį pašalina. Sąrankos ir priežiūros išlaidos gali nusverti naudą, kol gamyboje nėra kelių modelių arba keli žmonės nebendradarbiauja kurdami funkcijas. Atvirojo kodo sprendimai, tokie kaip „Feast“, sumažina šį barjerą, tačiau eksploatavimo išlaidos vis tiek išlieka.
Ar galite patys susikurti funkcijų parduotuvę?
Taip, daugelis įmonių kūrė vidines funkcines parduotuves dar prieš tai, kai komercinės ir atvirojo kodo parinktys tapo plačiai prieinamos. „Uber“ „Michelangelo“ ir „Airbnb“ „Chronon“ yra gerai žinomi pavyzdžiai. Savo platformų kūrimas suteikia maksimalią kontrolę, tačiau reikalauja didelių inžinerinių investicijų, todėl dauguma komandų dabar renkasi esamas platformas, nebent jos turi labai specializuotų poreikių.
Kuo skiriasi funkcijų saugykla ir duomenų saugykla?
Duomenų saugykloje saugomi neapdoroti ir apibendrinti verslo duomenys, optimizuoti analizei, o funkcijų saugykloje saugomos ML skirtos funkcijos, optimizuotos tiek paketiniam mokymui, tiek mažo delsos teikimui. Funkcijų saugyklos prideda ML skirtas funkcijas, pvz., prisijungimus tam tikru momentu, funkcijų versijavimą ir teikimą internetu, kurių duomenų saugyklos paprastai neteikia.
Kaip funkcijų saugyklos palaiko modelio valdymą?
Funkcijų saugyklos seka funkcijų kilmę, versijas ir prieigos modelius, o tai padeda organizacijoms laikytis reguliavimo ir audito reikalavimų. Kai modelio prognozės abejojamos, komandos gali tiksliai atsekti, kurios funkcijų versijos buvo naudojamos. Tai ypač vertinga reguliuojamose pramonės šakose, tokiose kaip finansai ir sveikatos apsauga, kur reikalingas modelio skaidrumas.

Nuosprendis

Funkcijų saugyklų sistemos yra geresnis pasirinkimas organizacijoms, kurios gamyboje naudoja kelis modelius arba plečia savo mašininio mokymosi operacijas tarp komandų, kur svarbiausia yra nuoseklumas ir pakartotinis panaudojimas. Ad hoc funkcijų inžinerija išlieka vertinga individualiems duomenų mokslininkams, tyrimų projektams ir ankstyvojo etapo eksperimentams, kai greitis ir lankstumas nusveria centralizuotos infrastruktūros privalumus. Daugelis brandžių komandų iš tikrųjų naudoja abu, pasikliaudamos ad hoc darbu tyrimams ir funkcijų saugyklomis viskam, kas pasiekia gamybinę aplinką.

Susiję palyginimai

„DeepSeek V4“ ir „GPT-4“ klasės modeliai

„DeepSeek V4“ yra kylantis atvirojo svorio didelių kalbų modelis, sukurtas Kinijos dirbtinio intelekto laboratorijoje, o GPT-4 klasės modeliai nurodo „OpenAI“ flagmanines uždarojo kodo sistemas. Šiame palyginime nagrinėjama jų architektūra, galimybės, kainos, prieinamumas ir našumas realiame pasaulyje, siekiant padėti kūrėjams ir įmonėms išmintingai pasirinkti.

„Google“ paieška ir žinių grafiko paieška

„Google“ paieška yra plataus masto žiniatinklio indeksavimo variklis, kurį dauguma žmonių naudoja kasdien, o „Knowledge Graph Search“ yra „Google“ struktūrizuotų objektų duomenų bazė, kurioje pateikiami tiesioginiai atsakymai ir informacijos skydeliai. Supratimas, kuo jie skiriasi, padeda paaiškinti, kodėl kai kurios užklausos pateikia išsamius faktus, o kitos – tradicines mėlynas nuorodas.

„Google“ paieškos algoritmas ir supaprastinti klasės modeliai

„Google“ paieškos algoritmas reitinguoja milijardus tinklalapių, naudodamas mašininį mokymąsi ir šimtus signalų, o supaprastinti klasių modeliai perteikia dirbtinio intelekto koncepcijas į lengvai mokomas, prieinamas sistemas. Viena sistema veikia planetos mastu gamyboje; kita tarnauja kaip pedagoginis tiltas mokiniams, mokantis, kaip iš tikrųjų veikia dirbtinis intelektas.

„Vienas su vienu“ atitikimas aptikimo ir daugelio su vienu atitikimo metodų srityse

„Vienas su vienu“ atitikimo metodas kiekvienam pagrindiniam objektui priskiria vieną numatomą langelį, o „daugelis su vienu“ atitikimo metodas leidžia kelias prognozes suderinti su vienu taikiniu. Abi strategijos formuoja tai, kaip šiuolaikiniai detektoriai, tokie kaip DETR ir „Faster R-CNN“, mokosi lokalizuoti objektus, kiekvienas iš jų turi skirtingus kompromisus tikslumo, mokymo stabilumo ir pasikartojančių aptikimų tvarkymo srityse.

A/B testavimas modelių aptarnavime ir vieno modelio diegime

A/B testavimas modeliuose nukreipia srautą tarp konkuruojančių modelio versijų, kad būtų galima įvertinti realų našumą, o diegiant vieną modelį visiems vartotojams pateikiamas vienas modelis. Komandos renkasi iš jų pagal rizikos toleranciją, srauto kiekį ir statistinio patvirtinimo poreikį prieš visišką diegimą.