UniPinRec: Unifying Generative Retrieval and Ranking at Pinterest Scale
UniPinRec is het eerste productiesysteem dat retrieval en ranking volledig verenigt in een enkele transformer-gebaseerde pipeline met gedeelde input-, trainings- en serving-infrastructuur, waarmee significante winst in engagement en efficiëntie wordt behaald op de schaal van Pinterest.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Stel je Pinterest voor als een enorme, bruisende bibliotheek met miljarden boeken (Pins). Wanneer je binnenloopt, moet de bibliotheek twee dingen heel snel doen:
- Retrieval (Ophalen): De hele bibliotheek scannen om een paar duizend boeken te vinden die jou misschien interesseren.
- Ranking (Rangschikken): Die paar duizend boeken zorgvuldig lezen en ze in de perfecte volgorde zetten voor jou om te bekijken.
De Oude Manier: Twee Afzonderlijke Bibliothecarissen
Lange tijd gebruikte Pinterest twee verschillende "bibliothecarissen" (AI-modellen) om dit te doen.
- Bibliothecaris A (Retrieval) was een snelheidswonder. Zij scande de hele bibliotheek razendsnel, maar las de boeken niet diepgaand. Ze pakte gewoon een grote stapel potentiële matches.
- Bibliothecaris B (Ranking) was een zorgvuldige lezer. Zij nam die stapel, las elk boek in detail, en sorteerde ze perfect.
Het Probleem: Beiden lazen exact dezelfde aantekeningen over jouw eerdere gedrag (wat je hebt aangeklikt, opgeslagen of verborgen). Ze deden beide het zware werk van het "onthouden" van jouw geschiedenis afzonderlijk. Dit was alsolijk het inhuren van twee mensen om hetzelfde telefoonboek uit het hoofd te leren, alleen maar om twee verschillende lijstjes te maken. Het verspilde geld, computerkracht en tijd.
De Nieuwe Oplossing: UniPinRec (De Super-Bibliothecaris)
Het artikel introduceert UniPinRec, één enkele "Super-Bibliothecaris" die beide taken tegelijk uitvoert, met één brein, één set aantekeningen en één workflow.
Zo hebben ze het werkend gekregen, met drie slimme trucs:
1. De "Masked Action" Truc (MAM)
Normaal gesproken kijkt de "Retrieval"-bibliothecaris alleen naar een lijst met items die je leuk vond. De "Ranking"-bibliothecaris moet echter weten wat je deed met die items (heb je geklikt? opgeslagen? verborgen?).
- Het Oude Probleem: Als je "wat je deed" mengt in de lijst, verstoort dit de snelheid van de Retrieval-bibliothecaris.
- De UniPinRec Fix: Ze gebruiken een "Masking"-techniek. Stel je voor dat de bibliothecaris een lijst heeft van jouw geschiedenis. Ze dekken het deel dat zegt "wat je deed" af (maskeren) met een plaknotitie.
- De bibliothecaris leert te raden wat je deed op basis van het item.
- Dit stelt de bibliothecaris in staat om zowel te leren hoe je items vindt (Retrieval) als hoe je ze beoordeelt (Ranking), zonder dat de lijst te lang of verwarrend wordt. Het is als het tegelijkertijd leren autorijden en parkeren door te oefenen met de handrem erop.
2. De "Gedeelde Geheugen" Truc (KV Cache Reuse)
Dit is de grootste versneller.
- Het Oude Probleem: Wanneer de Ranking-bibliothecaris aan het werk ging, moest hij je hele geschiedenis vanaf nul opnieuw lezen om te begrijpen wie je was.
- De UniPinRec Fix: De Retrieval-bibliothecaris doet eerst het zware werk van het lezen van je geschiedenis. In plaats van die aantekeningen weg te gooien, geeft hij ze door aan de Ranking-bibliothecaris.
- De Ranking-bibliothecaris leest de geschiedenis niet opnieuw; hij kijkt gewoon naar de aantekeningen die de eerste bibliothecaris al heeft geschreven.
- Analogie: Het is als een chef-kok die alle groenten snijdt (Retrieval) en vervolgens de kom overhandigt aan een sous-chef die er alleen nog de kruiden aan toevoegt (Ranking). De sous-chef hoeft de groenten niet opnieuw te snijden. Dit bespaart een enorme hoeveelheid tijd.
3. De "Blended Training" Truc
In plaats van het model eerst te trainen als een "Vinder" en dan later als een "Sorterer", trainden ze het om beide taken gelijktijdig uit te voeren.
- Ze voerden het model voorbeelden die zowel de "geschiedenis van wat je leuk vond" ALS de "lijst van wat je zag maar niet klikte" bevatten.
- Dit leerde het model om een betere vinder te zijn omdat het wist hoe het items moest beoordelen, en een betere beoordelaar omdat het wist hoe het de juiste items moest vinden.
De Resultaten: Sneller, Slimmer, Goedkoper
Toen ze deze Super-Bibliothecaris aan het werk zetten in de echte Pinterest-app, waren de resultaten indrukwekkend:
- Betere Aanbevelingen: Gebruikers sloegen meer Pins op en openden meer meldingen. Het systeem vond betere items omdat de "Vinder" en de "Sorterer" met elkaar communiceerden.
- Snellere Snelheid: Omdat ze stopten met het opnieuw lezen van de geschiedenis van de gebruiker, werd het systeem in totaal 11% sneller.
- Meer Capaciteit: Het systeem kon 63% meer gebruikers tegelijkertijd aan zonder te vertragen.
Samenvatting
UniPinRec is als het samenvoegen van twee aparte afdelingen tot één efficiënt team. Door hetzelfde "brein" (model), dezelfde "aantekeningen" (gebruikersgeschiedenis) en dezelfde "workflow" te delen, bespaart Pinterest geld op computers, maakt het de app sneller voor gebruikers en laat het mensen content zien die ze daadwerkelijk willen zien. Ze hebben niet het hele bibliotheeksysteem vervangen; ze hebben alleen de bestaande bibliothecarissen perfect laten samenwerken.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.