Συστήματα συστάσεων
Συστήματα συστάσεων
Το σύστημα σύστασης δεν είναι μόνο ένα "μοντέλο CTR. "Είναι ένας αγωγός δεδομένων → υποψηφίους → κατατάσσουν → πολιτική → δράση, → ανατροφοδότηση που βελτιστοποιεί την αυξητική αξία κάτω από τους περιορισμούς του πραγματικού κόσμου (ταχύτητα, ανώτατα όρια συχνοτήτων, ποικιλομορφία, δεοντολογία/συμμόρφωση).
1) Δεδομένα, σήματα και αναπαραστάσεις
Εκδηλώσεις: προβολές/κλικ/προσθήκες/αγορές/καταθέσεις, χρόνος διαμονής, ακυρώσεις.
Περιεχόμενο/κατάλογος: χαρακτηριστικά (κατηγορίες/είδη/στούντιο/τιμή/φρεσκάδα/μεταβλητότητα).
Προφίλ χρήστη: RFM, προτιμήσεις, συσκευές/κανάλια, timeslots.
Πλαίσιο: ώρα/ημέρα/διακοπές/αγώνες, τόπος/TZ, τόπος προβολής.
Ποιότητα: point-in-time συνταγές, ταυτότητα των γεγονότων, deadup/antiboot, PII casking.
Ενσωμάτωση: χρήστης/αντικείμενο/πλαίσιο σε κοινόχρηστο χώρο (MF/Word2Vec2Rec/μετασχηματιστές), πολυτροπικό (κείμενο/εικόνες).
2) Αρχιτεκτονική: Ανάκληση → Rank → Re-rank → Action
1. Ανάκληση υποψηφίων (200-5000 υποψήφιοι): ANN (FAISS/ScaNN), δημοτικότητα/τάσεις, φίλτρα βάσει κανόνων.
2. Κατάταξη (20-200): LTR (GBM/NN), αρχιτεκτονικές πύργου, δυαδικοί/πολλαπλοί στόχοι (κλικ, μετατροπή, τιμή).
3. Εκ νέου κατάταξη σε επίπεδο πολιτικής (5-30 στον τελικό κατάλογο): διαφοροποίηση/καινοτομία/serendipity, ποσοστώσεις σήματος/κατηγορίας, RG/συμμόρφωση, ανώτατα όρια συχνότητας, δίκαιη μεταχείριση.
4. Δράση: εμφάνιση/ώθηση/ηλεκτρονικό ταχυδρομείο/προσωπική βιτρίνα με ψυχρές κατολισθήσεις και «ήσυχες ώρες».
5. Ανάδραση: log 'impression→click→action→value', αρνητική ανάδραση (παραλείψτε, καταγγελία).
3) Υποδείγματα υποδειγμάτων
Με βάση το περιεχόμενο: εγγύτητα με τα χαρακτηριστικά και το προφίλ ΤΠ· ιδανικό για ψυχρή εκκίνηση για αντικείμενα.
Συνεργατικό φιλτράρισμα: χρήστης-χρήστης/αντικείμενο-αντικείμενο ανά πίνακα αλληλεπίδρασης.
Παραγοντοποίηση/ενσωμάτωση: MF/BPR/NeuMF, MLP δύο πύργων (πύργος χρήσης × πύργος αντικειμένων).
Learning-to-Rank: pairwise/listwise (LambdaMART, RankNet), NDCG optimization @ k.
Συνεδρία/διαδοχική: GRU4Rec, SASRec, Μετασχηματιστές (T5-style) - σειρά/πλαίσιο της συνεδρίας.
Ληστές: LinnUCB/Thompson για γρήγορες διαδικτυακές προσαρμογές και δημιουργικούς.
RL: Slook Q/DQN/Policy Gradient for multi-step award (κατακράτηση/LTV).
Προσεγγίσεις αιτιώδους συνάφειας/ανύψωσης: συστάσεις που λαμβάνουν υπόψη την αύξηση και όχι την «ακατέργαστη CTR».
4) Στόχοι, περιορισμοί και διαμόρφωση του έργου
Στόχοι: CTR/CTCVR, έσοδα/περιθώριο κέρδους/LTV, διατήρηση, ικανοποίηση, ταχύτητα.
Περιορισμοί: διαφοροποίηση, ποσοστώσεις παρόχου/κατηγορίας, ανώτατα όρια συχνότητας, RG/συμμόρφωση, δικαιοσύνη/δεοντολογία, SLA p95.
[
\ textstyle Score =\alpha\cdot\hat p_{\text{click}} +\beta\cdot\text {Value}
\ gamma\cdot\text {Fatigue} +\delta\cdot\text {Novelty} -\sum _ j\lambda _ j\cdot\text {Penalty} _ j
]
όταν η ποινή είναι παραβίαση ποσόστωσης/ΚΓ/συχνότητας/μονοτονίας.
5) Μετρήσεις και βαθμολόγηση
Εκτός σύνδεσης
Συνάφεια/κατάταξη: AUC/PR- AUC, Ανάκληση @ k, MAP, NDCG @ k.
Επιχειρήσεις: eRPM/eCPM, πληρεξούσιος-LTV, αναμενόμενο περιθώριο κέρδους.
Βαθμονόμηση: Brier, ECE (σημαντική για τα κατώτατα όρια/πολιτικές).
: κάλυψη/ποικιλομορφία/καινοτομία/serendipity.
Επιγραμμική σύνδεση
A/B/πολυσημασμένες δοκιμές: CTR, CTCVR, εισόδημα/συνεδρία, διατήρηση, καταγγελίες/μη υπογραφές (guardrails), καθυστέρηση/χρονοδιάγραμμα.
Αξιολόγηση αιτιώδους συνάφειας: CUPED, οιονεί πειράματα (DID/συνθετικός μάρτυρας) σε περιορισμένη τυχαιοποίηση.
Μετρήσεις ανύψωσης: Qini/AUC, uplift @ k - για συστάσεις σχετικά με τη θεραπεία.
6) Ψυχρή εκκίνηση και αραιότητα
Νέοι χρήστες: δημοφιλής @ segment, έρευνα περιεχομένου, περιεχόμενο βασισμένο στο πρώτο κλικ, ληστής με ευρεία νοημοσύνη.
Νέα aytems: μεταδεδομένα/ενσωμάτωση κειμένου/εικόνες + παρόμοια εμφάνιση ανά στούντιο/κατηγορία.
Μικροί τομείς: μεταφορά μάθησης, πολλαπλών εργασιών (κοινός πύργος), διατομεακή απόσταξη.
7) Διαφοροποίηση, καινοτομία, serendipity
Αλγόριθμοι: MMR, xQUAD, PM-2. πρόστιμα για μονοτονία.
Ποσοστώσεις: min/max ανά κατηγορία/εμπορικό σήμα/κατηγορία κινδύνου.
Σταθερότητα καταλόγου: αδράνεια θέσης, επικαιροποιημένη υστερία. δεν «αναβοσβήνει» η έξοδος.
8) Υποδομή και MLOP
Feature Store: συνταγές PIT, TTL για χαρακτηριστικά συνεδρίας, online/offline ισοτιμία.
Υπηρεσίες ANN: FAISS/ScaNN, sharding/cache, replication.
Ranker: χαρακτηριστικά σε πραγματικό χρόνο, βαθμονόμηση, υπογραφές έκδοσης.
Επίπεδο πολιτικής/εκ νέου κατάταξης: όρια/ποσοστώσεις/RG/συχνότητες/ποικιλομορφία.
SLA: end-to-end p95 ≤ 100-300 мс· οπισθέλκουσα (δημοφιλής-ασφαλής) υπό υποβάθμιση.
Παρατηρησιμότητα: συσχέτιση _ id ίχνη, μετατόπιση χαρακτηριστικών (PSI), επιγραμμικές μετρήσεις ποιότητας, γερανός στάσης.
9) Ασφάλεια, ιδιωτικότητα, δεοντολογία
Ελαχιστοποίηση PII, RLS/CLS, κάλυψη.
Φίλτρα RG/συμμόρφωσης πριν από την απεικόνιση, καλύμματα συχνότητας, ήσυχες ώρες.
Διάγνωση δίκαιης μεταχείρισης ανά τμήμα· επεξήγηση των λόγων της εμφάνισης· την πορεία της προσφυγής.
10) Ψευδο-κωδικός: Ανάκληση → Rank → Re-rank υβριδικό
python
Recall cand_emb = ann.recall(user_embed, topk=500)
cand_rule = popular.by_segment(user.segment, k=200)
cands = dedup(cand_emb + cand_rule)
Rank features = featurize(user, cands, context) # user/item/context scores = ranker.predict(features) # p(click), value
Policy-aware re-rank final = rerank(
cands, scores,
constraints=dict(
diversity_min={'category': 3},
brand_quota={'A':0.3,'B':0.3},
rg_filter=True,
freq_caps=get_user_caps(user)
),
objective_weights=dict(ctr=0.6, value=0.3, novelty=0.1)
)
return final[:N]
Thompson Sampling for Creatives (σκίτσο)
python beta priors per creative: (α, β)
samples = {cr: np.random.beta(alpha[cr], beta[cr]) for cr in creatives}
chosen = max(samples, key=samples.get)
show(chosen)
update(alpha, beta, reward=click)
11) Ψευδο-SQL: αρνητική ανάδραση και ανώτατα όρια συχνότητας
sql
-- Последний показ и флаги «скрыть/жалоба» → баним на 7 дней
WITH last_impr AS (
SELECT user_id, item_id,
MAX(ts) AS last_ts,
BOOL_OR(feedback_hide) AS hidden,
BOOL_OR(feedback_report) AS reported
FROM impressions
GROUP BY 1,2
)
SELECT i.
FROM inventory i
LEFT JOIN last_impr l ON l.user_id=:uid AND l.item_id=i.item_id
WHERE COALESCE(l.hidden,false)=false
AND COALESCE(l.reported,false)=false
AND (l.last_ts IS NULL OR l.last_ts < NOW() - INTERVAL '7 day');
12) Πίνακας απόφασης
13) Αντι-μοτίβα
Βελτιστοποίηση του «ακατέργαστου CTR» αντί της αύξησης και της τιμής.
Έλλειψη στρώματος επαναταξινόμησης → περίσσεια μονοτονίας, «σήραγγα όρασης».
Πρόσωπα από το μέλλον. ανάμειξη TZ· Ορισμοί μη διαβαθμισμένων σημάτων.
Καμία βαθμονόμηση πιθανοτήτων → εσφαλμένα κατώτατα όρια/πολιτικές.
Αγνοήστε την RG/δεοντολογία/δικαιοσύνη → καταγγελίες/κινδύνους/πρόστιμα.
Online/offline desynchronized feature and metrics - «drawdown» in the food.
Απουσία οπισθοπορείας και βαλβίδας ακινητοποίησης.
14) Κατάλογος ελέγχου εκτόξευσης συστάσεων
- Διαβατήριο συστήματος - Στόχοι, περιορισμοί, μετρήσεις, ιδιοκτήτες, εκδόσεις
- Ανάκληση/βαθμός/εκ νέου βαθμός διαζευγμένος? ANN προθερμασμένο, κρύπτες ρυθμισμένα
- Χαρακτηριστικά PIT, βαθμονόμηση, δείκτες αναφοράς εκτός σύνδεσης (NDCG/PR- AUC)
- Σχέδιο Α/Β και φύλακες· Έκθεση ετοιμότητας λήψης αποφάσεων
- Περιορισμοί: ποικιλία/ποσοστώσεις/RG/ανώτατα όρια συχνότητας - εφαρμόζονται και παρακολουθούνται
- SLA p95, ίχνη, ειδοποιήσεις, γερανός στάσης και λαϊκή ασφαλής οπισθοδρόμηση
- Τεκμηρίωση, Runibooks, Σχέδιο Σταδιακής Βελτίωσης
Αποτέλεσμα
Ένα ισχυρό σύστημα συστάσεων είναι ο αγωγός με επίγνωση της πολιτικής: ένα υβριδικό σύστημα Recall/Rank/Re-rank που βελτιστοποιεί την αυξητική αξία υπό την ταχύτητα, τη δεοντολογία και τους περιορισμούς ποικιλομορφίας. Προσθέτοντας ληστές/RL για διαδικτυακή προσαρμογή, πειθαρχία MLOps και σωστή αιτιώδη αξιολόγηση, δεν έχετε «λίστες για χάρη των καταλόγων», αλλά διαχειριζόμενες λύσεις που αυξάνουν την ικανοποίηση των ROMI, LTV και των χρηστών - σταθερές και ασφαλείς.