Comparthing Logo
rekomendavimo sistemosmašininis mokymasisdebesų infrastruktūramlopsmodelio optimizavimas

Sistemos efektyvumas rekomenduojant ir gryno modelio tikslumo optimizavimas

Rekomendavimo sistemų efektyvumas sutelktas į delsos, skaičiavimo sąnaudų ir išteklių naudojimo mažinimą, išlaikant priimtiną rekomendacijų kokybę. Grynas modelio tikslumo optimizavimas teikia pirmenybę nuspėjamiesiems našumo rodikliams, tokiems kaip AUC, NDCG ir atkūrimas, dažnai skaičiavimo išlaidų sąskaita. Pasirinkimas priklauso nuo to, ar jūsų diegimas vertina mastelio keitimą ir sąnaudas, ar neapdorotą reitingavimo kokybę.

Akcentai

  • Efektyvumo srityje delsa ir kaina traktuojami kaip pirmos klasės sėkmės rodikliai, o ne antraeilės mintys.
  • Grynas tikslumo optimizavimas gali sukurti modelius, kurių ekonomiškai neįmanoma pritaikyti dideliu mastu.
  • Dviejų bokštų architektūros ir dirbtinio neuroninio tinklo (ANN) paieška yra efektyvumo požymiai, o tarptinkliniai tinklai ir transformatoriai daugiausia dėmesio skiria signalo tikslumui.
  • Daugumoje gamybos sistemų derinami abu metodai, naudojant pigų kandidatų generavimą, o po to brangų perkvalifikavimą.

Kas yra Sistemos efektyvumas rekomendacijoje?

Inžinerinis metodas, kuris optimizuoja delsą, pralaidumą, atmintį ir energijos suvartojimą visame rekomendacijų sraute.

  • „Google“ „YouTube“ komanda pranešė, kad net 10 % sumažėjęs pateikimo delsos laikas lėmė išmatuojamą įsitraukimo padidėjimą, todėl efektyvumas tapo tiesioginiu pajamų svertu.
  • Efektyvūs rekomendavimo teikėjai paprastai naudoja tokius metodus kaip dviejų bokštų modeliai, apytikslė artimiausio kaimyno paieška ir kvantavimo įterpimas, kad būtų galima pritaikyti jį milijardams elementų.
  • „Meta“ DLRM ir vėlesni darbai su suspaustais įterpimais parodė, kad 4 bitų kvantavimas gali sumažinti modelio atmintį iki 16 kartų, minimaliai prarandant tikslumą.
  • Sistemos efektyvumas apima visą steką, įskaitant funkcijų paiešką, modelio išvadą ir pertvarkymą po reitingavimo, o ne tik patį neuroninį tinklą.
  • Tokios įmonės kaip „Pinterest“ ir „TikTok“ paskelbė straipsnius, įrodančius, kad talpyklos ir išankstinio skaičiavimo strategijos gali sumažinti pateikimo išlaidas 30–50 %.

Kas yra Gryno modelio tikslumo optimizavimas?

Tyrimais pagrįstas metodas, kuris maksimaliai padidina tikslumo rodiklius neprisijungus ir prisijungus, nesirūpinant skaičiavimo sąnaudomis.

  • Tikslumu besivadovaujantys rekomenduotojai pagrindiniais sėkmės kriterijais laiko tokius rodiklius kaip AUC, log-loss, NDCG@K, MAP@K ir recall@K.
  • Gilieji modeliai, tokie kaip transformatoriai, dideli kryžminiai tinklai ir grafų neuroniniai tinklai, dažnai pasižymi didesniu tikslumu, tačiau reikalauja žymiai daugiau skaičiavimo pajėgumų.
  • „RecSys“ akademinė bendruomenė istoriškai teikė pirmenybę tikslumo lyginamiesiems rodikliams, tokiems kaip „MovieLens“, „Amazon Reviews“ ir „Yelp“ duomenų rinkiniai.
  • Tokie modeliai kaip SASRec, BERT4Rec ir LightFM buvo publikuoti daugiausia su tikslumo pagerėjimu kaip pagrindiniu rezultatu.
  • Grynas tikslumo optimizavimas gali lemti modelius, kurių užklausa trunka šimtus milisekundžių, todėl jie yra nepraktiški didelio masto realiuoju laiku teikiamoms funkcijoms.

Palyginimo lentelė

Funkcija Sistemos efektyvumas rekomendacijoje Gryno modelio tikslumo optimizavimas
Pagrindinis tikslas Sumažinkite delsą, išlaidas ir išteklių naudojimą Maksimaliai padidinkite prognozavimo tikslumo metriką
Pagrindiniai rodikliai P99 delsa, QPS, kaina už 1k užklausų, atminties naudojimas AUC, NDCG@K, prisiminimas@K, logaritminis praradimas, MAP
Tipiniai metodai Kvantavimas, dirbtinio neuroninio tinklo paieška, kaupimas talpykloje, dviejų bokštų modeliai, distiliavimas Gilesni tinklai, kryžminės funkcijos, GNN, transformatoriai, ansambliavimas
Apskaičiuoti biudžetą Apribotas ir optimizuotas Dažnai nevaržomas arba dosnus
Diegimo dėmesys Gamybos metu per dieną pateikiama milijardai užklausų Tyrimo lyginamieji rodikliai ir vertinimas neprisijungus
Poveikis verslui Tiesioginis išlaidų taupymas ir naudotojo patirtis dėl greičio Geresnės rekomendacijos, jei pateikimas neviršija biudžeto
Per didelio pritaikymo rizika Žemesnis, nes dažnai naudojami paprastesni modeliai Didesnis, nes sudėtingi modeliai gali įsiminti modelius
Aparatinės įrangos jautrumas Aukštas – pritaikytas konkretiems greitintuvams Žemesnis – veikia visur, kur yra prieinami skaičiavimo pajėgumai

Išsamus palyginimas

Pagrindinė filosofija ir kompromisai

Sistemos efektyvumo požiūriu rekomendacijų kokybė traktuojama kaip vienas iš daugelio kintamųjų, balansuojant ją su delsa, kaina ir patikimumu. Grynasis tikslumo optimizavimas kokybę laiko dominuojančiu kintamuoju ir daro prielaidą, kad skaičiavimo pajėgumus galima pritaikyti. Praktiškai šie du metodai yra priešinguose spektro galuose, ir dauguma gamybos komandų atsiduria kažkur per vidurį, šiek tiek sumažindamos tikslumą, kad gautų didelį efektyvumo padidėjimą.

Modelio architektūros pasirinkimai

Į efektyvumą orientuotos komandos renkasi architektūras, kurios atskiria kandidatų generavimą nuo reitingavimo, pavyzdžiui, dviejų bokštų modelius, kuriuose vartotojų ir elementų įterpimai yra iš anksto apskaičiuojami nepriklausomai. Į tikslumą orientuotos komandos dažnai renkasi skirtingų funkcijų sąveiką, dėmesio mechanizmus ir gilųjį stekinimą, kurie fiksuoja išsamesnius signalus, bet reikalauja bendrų skaičiavimų pateikimo metu. Architektūros pasirinkimas apima viską – nuo funkcijų saugyklų iki aptarnavimo infrastruktūros.

Vertinimo ir sėkmės kriterijai

Kai prioritetas yra efektyvumas, sėkmė matuojama tokiais aptarnavimo rodikliais kaip uodegos delsa, pralaidumas vienam GPU ir bendros eksploatavimo išlaidos. Tikslumo principu pagrįstos komandos gyvuoja ir miršta pagal neprisijungus pasiekiamų lyderių sąrašų rezultatus ir internetinių A/B testų padidėjimą įsitraukimo ar pajamų srityje. Modelis, kuris laimi NDCG, bet viršija delsos biudžetą, yra nesėkmė efektyvumu pagrįstoje kultūroje, o modelis, kuris teikia paslaugas per 5 ms, bet užima prastas pozicijas, yra nesėkmė tikslumu pagrįstoje kultūroje.

Realaus pasaulio dislokavimo realybė

Tokiose įmonėse kaip „Meta“, „Google“ ir „TikTok“ rekomendacijų sistemos apdoroja trilijonus užklausų, todėl net ir nedideli efektyvumo patobulinimai reiškia milijonus infrastruktūros sutaupymų. Akademinėje ir startuolių aplinkoje dažnai trūksta šių mastelio apribojimų, todėl jos gali dar labiau padidinti tikslumą, nesijaudindamos dėl pateikimo išlaidų. Dėl to paskelbtuose tikslumo lyginamuosiuose rodikliuose dažnai naudojami modeliai, kurie niekada neišlaikytų gamybinės peržiūros hiperskalintuve.

Kai kiekvienas požiūris laimi

Efektyvumas laimi, kai pateikimo kaina dominuoja biudžete, kai vartotojo suvokiamas delsos laikas tiesiogiai veikia įsitraukimą arba kai sistema turi būti pritaikoma prie didžiulių katalogų. Grynas tikslumas laimi, kai katalogas yra mažas, kai rekomendacijos yra iš anksto apskaičiuojamos neprisijungus arba kai verslo atvejis dėl ribinio kokybės padidėjimo pateisina skaičiavimo išlaidas. Hibridiniai metodai, tokie kaip kaskadinės rekomendacijos, kai pigus modelis filtruoja kandidatus, o tada brangus modelis juos iš naujo įvertina, yra vis dažnesni.

Privalumai ir trūkumai

Sistemos efektyvumas rekomendacijoje

Privalumai

  • + Mažesnės aptarnavimo išlaidos
  • + Geresnė naudotojo patirtis
  • + Skalaujama iki milijardų elementų
  • + Numatoma infrastruktūra

Pasirinkta

  • Gali paaukoti tikslumą
  • Reikalingas gilus sistemų išmanymas
  • Sunkiau greitai pakartoti
  • Ribotas modelio sudėtingumas

Gryno modelio tikslumo optimizavimas

Privalumai

  • + Aukštesnės kokybės
  • + Lengviau tyrinėti
  • + Stiprūs neprisijungus pasiekiami etalonai
  • + Užfiksuoja sudėtingus raštus

Pasirinkta

  • Brangu aptarnauti
  • Didelė vėlavimo rizika
  • Sunku pritaikyti mastelį
  • Dažnai nepraktiška gamyboje

Dažni klaidingi įsitikinimai

Mitas

Tikslesnis modelis visada pagerins verslo rodiklius, kai bus įdiegtas.

Realybė

Jei modelis prideda delsą arba pateikimo išlaidas, vartotojai gali nutraukti sesijas nematę rekomendacijų. Daugelis A/B testų parodė, kad šiek tiek mažiau tikslus, bet greitesnis modelis realaus įsitraukimo metrikose pranoksta lėtesnį, tikslesnį modelį.

Mitas

Į efektyvumą orientuoti rekomendavimo įrankiai būtinai yra paprastesni ir mažiau galingi.

Realybė

Šiuolaikinės efektyvios sistemos naudoja sudėtingus metodus, tokius kaip išmokti indeksai, kvantavimo suvokimas ir apytikslė artimiausio kaimyno paieška. Jos nėra paprastos – jos kruopščiai suprojektuotos taip, kad tiektų energiją neviršydamos riboto išteklių biudžeto.

Mitas

Neprisijungus pasiekiamo tikslumo rodikliai patikimai prognozuoja našumą internete.

Realybė

Tokie neprisijungus pasiekiami rodikliai kaip AUC ir NDCG koreliuoja su sėkme internete, bet toli gražu nėra tobuli. Modelis, kuris neprisijungus laimi 0,5 % NDCG, gali pralaimėti internete, jei prideda 20 ms delsą, todėl gamybos komandos didelį dėmesį skiria efektyvumui.

Mitas

Reikia rinktis tarp tikslumo ir efektyvumo.

Realybė

Šie du metodai nėra griežtai priešingi. Tokie metodai kaip žinių distiliavimas, genėjimas ir kvantavimas gali atkurti didžiąją dalį didelio modelio tikslumo daug mažesnėje pakuotėje, suteikdami jums abu.

Mitas

Akademiniai kriterijai atspindi, kas veikia gamyboje.

Realybė

Akademiniai rekomendacijų tyrimai daugiausia optimizuoja tikslumą statiniuose duomenų rinkiniuose, ignoruodami pateikimo apribojimus. Tokių įmonių kaip „Netflix“ ir „Meta“ gamybos sistemos labai skiriasi nuo paskelbtų etalonų.

Dažnai užduodami klausimai

Kas yra sistemos efektyvumas rekomendavimo sistemose?
Sistemos efektyvumas reiškia, kaip gerai rekomendavimo sistema naudoja skaičiavimo, atminties ir tinklo išteklius prognozėms pateikti. Tai apima pateikimo delsą, pralaidumą, kainą už užklausą ir energijos suvartojimą. Efektyvi sistema užtikrina priimtiną rekomendacijų kokybę, tuo pačiu sumažindama šias veiklos sąnaudas, o tai labai svarbu tokiose platformose kaip „YouTube“ ar „TikTok“.
Kodėl grynas tikslumo optimizavimas gamyboje dažnai yra nepraktiškas?
Labai tikslūs modeliai paprastai yra dideli ir lėti, nes jie remiasi giliais tinklais, kryžminėmis funkcijomis arba transformatoriais. Esant milijardams užklausų per dieną, net 50 ms delsos padidėjimas gali kainuoti milijonus infrastruktūros ir pakenkti vartotojų įsitraukimui. Todėl gamybos komandos riboja modelio sudėtingumą, kad neviršytų delsos ir biudžeto apribojimų.
Kaip dviejų bokštų modeliai pagerina efektyvumą?
Dviejų bokštų modeliai atskirai koduoja vartotojus ir elementus į įterpimus, todėl elementų įterpimus galima iš anksto apskaičiuoti neprisijungus ir indeksuoti, kad būtų galima greitai apytiksliai ieškoti artimiausio kaimyno. Pateikimo metu reikia apskaičiuoti tik vartotojo įterpimą, tada greita dirbtinio neuroninio tinklo (ANN) paieška suranda kandidatus. Ši architektūra smarkiai sumažina internetinius skaičiavimus, palyginti su modeliais, kurie vertina kiekvieną vartotojo ir elemento porą kartu.
Ar galite pasiekti ir didelį tikslumą, ir didelį efektyvumą?
Taip, taikant tokias technikas kaip žinių distiliavimas, kai mažas studento modelis mokosi iš didelio mokytojo, kvantavimo, kuris sumažina atmintį be didelio kokybės praradimo, įterpimas ir kaskadinis reitingavimas, kai pigus modelis filtruoja kandidatus, o brangus modelis juos iš naujo reitinguoja. Daugelis gamybinių sistemų pasiekia 95 % didelio modelio tikslumo už daug mažesnę kainą.
Kokie rodikliai yra svarbiausi efektyviems rekomendatoriams?
Pagrindiniai rodikliai yra P50 ir P99 delsa, užklausų skaičius per sekundę vienam serveriui, 1000 rekomendacijų kaina, atminties naudojimas ir energijos sąnaudos vienai užklausai. Tikslumo rodikliai vis dar svarbūs, tačiau jie yra subalansuoti atsižvelgiant į šiuos veiklos apribojimus. Komandos dažnai stebi efektyvumo pakoreguotą tikslumą, kuris padalija kokybės padidėjimą iš jam pasiekti sunaudotų skaičiavimo išteklių.
Kuo padeda apytikslė artimiausio kaimyno paieška?
Tokie dirbtinio neuroninio tinklo (DNN) algoritmai kaip HNSW ir IVF-PQ randa artimus atitikmenis įterpimo erdvėje, neatlikdami išsamaus palyginimo su kiekvienu elementu. Užuot vertinusi milijonus kandidatų, sistema per milisekundes atrenka kelis šimtus geriausių. Būtent tai leidžia naudoti didelio katalogo rekomendacijas, nes tiksli paieška būtų per lėta.
Ar kvantizavimas yra saugus rekomendavimo modeliams?
Šiuolaikiniai kvantavimo metodai, ypač kvantavimą suvokiantis mokymas, stebėtinai gerai išlaiko tikslumą. „Meta“ ir „Google“ paskelbė rezultatus, rodančius 4 bitų ir net 2 bitų įterpimus su minimaliu kokybės pablogėjimu. Pagrindinė rizika kyla tada, kai modeliai yra labai jautrūs mažiems įterpimo pokyčiams, tokiu atveju geriau veikia mišraus tikslumo metodai arba selektyvus kvantavimas.
Kokį vaidmenį kaupimas talpykloje atlieka rekomendavimo efektyvumui?
Talpykloje kaupimas yra milžiniškas. Populiarūs elementų įterpimai, dažnai naudojamų vartotojų funkcijos ir net iš anksto apskaičiuoti rekomendacijų sąrašai gali būti kaupiami talpykloje, siekiant išvengti nereikalingų skaičiavimų. „Pinterest“ ir „TikTok“ pranešė, kad agresyvios talpyklos strategijos sumažina pateikimo skaičiavimą 30–50 %. Visa gudrybė – negaliojimas – žinojimas, kada talpykloje saugomi rezultatai yra pasenę, o tam reikia kruopštaus srauto projektavimo.
Kaip apsispręsite, ar investuoti į tikslumą, ar į efektyvumą?
Pradėkite nuo to, kad įvertintumėte, kur yra jūsų kliūtis. Jei aptarnavimo išlaidos dominuoja jūsų infrastruktūros sąskaitose arba delsa mažina įsitraukimą, investuokite į efektyvumą. Jei turite skaičiavimo laisvės, bet rekomendacijos atrodo silpnos, investuokite į tikslumą. Dauguma brandžių komandų taiko portfelio metodą, tikslumo biudžetą išleisdamos tik ten, kur ribinė nauda pateisina ribines sąnaudas.
Ar transformatoriai rekomendacijose visada lenkia paprastesnius modelius?
Nebūtinai. Transformatoriai puikiai tinka sekų modeliavimui ir gali fiksuoti ilgas naudotojų istorijas, tačiau jų aptarnavimas yra brangus. Daugeliui katalogų ir srauto modelių gerai suderinti dviejų bokštų arba kelių tinklų modeliai pasiekia transformatoriaus tikslumą už daug mažesnę kainą. Transformatoriaus pranašumas dažniausiai išryškėja, kai naudotojų elgsenos sekos yra ilgos ir išsamios.
Kas yra kaskadinė rekomendavimo sistema?
Kaskadinė sistema naudoja kelis modelius iš eilės: pigus, greitas modelis generuoja kandidatus, o tada palaipsniui brangesni ir tikslesni modeliai juos iš naujo reitinguoja. Tai leidžia taikyti didelius skaičiavimus tik keliems šimtams populiariausių elementų, o ne visam katalogui. Tai dominuojanti architektūra tokiose įmonėse kaip „YouTube“, „Meta“ ir „Spotify“.
Kaip aparatinės įrangos pasirinkimas veikia efektyvumo ir tikslumo kompromisą?
Grafikos procesoriai teikia pirmenybę didelėms matricų operacijoms ir yra naudingesni tikslumu pagrįstiems modeliams, o procesoriai ir specializuoti greitintuvai, tokie kaip taktiniai procesoriai (TPU), gali būti pritaikyti konkretiems aptarnavimo modeliams. Pasirinkus aparatinę įrangą, atitinkančią jūsų modelio architektūrą, galima gerokai pakeisti šį kompromisą. Modelis, kuris per brangus procesoriaus atžvilgiu, gali būti įperkamas naudojant optimizuotą išvadų aparatinę įrangą, todėl aparatinės įrangos poreikius atitinkantis modelių projektavimas tampa vis svarbesnis.

Nuosprendis

Rinkitės sistemos efektyvumą, kai dirbate dideliu mastu ir aptarnavimo kaina ar delsa tiesiogiai veikia jūsų pelną, o tai yra daugelio didelių platformų realybė. Rinkitės gryną tikslumo optimizavimą, kai dirbate tyrimų srityje, turite nedidelį katalogą arba galite sau leisti didelius skaičiavimus ir jums reikia kiekvienos kokybės pagerinimo dalelės. Gamybos aplinkoje protingiausios komandos pirmiausia projektuoja efektyvumą, o tada tikslumo biudžetą skiria ten, kur to labiausiai reikia.

Susiję palyginimai

„Kafka“ ir „Flink“ palyginti su apdorojimu atmintyje

„Kafka“ ir „Flink“ sudaro paskirstytą srautinio apdorojimo ekosistemą realaus laiko duomenų srautams, o apdorojimas atmintyje pagreitina analizę, nes duomenys saugomi tik RAM atmintyje – kiekvienas iš jų tenkina iš esmės skirtingus architektūrinius greičio, mastelio ir tvarumo poreikius.

„Netflix“ mašininio mokymosi platforma ir nepriklausomi mašininio mokymosi įrankiai

„Netflix“ vidinė mašininio mokymosi platforma siūlo glaudžiai integruotus, didelio masto įrankius, skirtus transliacijų suasmeninimui, o nepriklausomi mašininio mokymosi įrankiai suteikia mažesnėms komandoms lankstumo ir kontrolės. Pasirinkimas priklauso nuo masto, pritaikymo poreikių ir esamų investicijų į infrastruktūrą.

Adaptyvioji infrastruktūra ir statinė infrastruktūros projektavimas

Adaptyvi infrastruktūra dinamiškai prisitaiko prie kintančių darbo krūvių, naudodama automatizavimą ir mastelio keitimą realiuoju laiku, o statinės infrastruktūros projektavimas remiasi fiksuotais, iš anksto sukonfigūruotais ištekliais. Pasirinkimas priklauso nuo darbo krūvio kintamumo, biudžeto nuspėjamumo ir veikimo brandos jūsų debesijos aplinkoje.

Apkrovos balansavimas mašininio mokymosi sistemose ir paprastas API užklausų tvarkymas

Apkrovos balansavimas mašininio mokymosi sistemose valdo GPU reikalaujančius išvadų ir mokymo darbo krūvius specializuotoje įrangoje, o paprastas API užklausų apdorojimas paskirsto nedidelį HTTP srautą bendrosios paskirties serveriuose. Jie labai skiriasi sudėtingumu, išteklių poreikiu ir maršruto parinkimo išmanumu.

Atsparumas gedimams ir sistemos paleidimas iš naujo

Atsparumas gedimams proaktyviai perkelia darbo krūvius į sveikas sistemas, kol vartotojai nepastebi problemų, o sistemos gedimų atveju iš naujo paleidžiamos sistemos reaktyviai atkuria paslaugas po netikėtų gedimų. Abu metodai siekia palaikyti prieinamumą, tačiau iš esmės skiriasi laiku, architektūros sudėtingumu ir poveikiu vartotojams.