Ako môžeme porovnať plagát, ktorý sa zobrazuje na stránke používateľa, s tými, ktoré nevidel (čiastočná spätná väzba)?
Machine Learning / AI
(Po objasnení s interviewerom) Ako teraz formulovať úlohu a prístup, s prihliadnutím na to, že odporúčania položiek už existujú, a je potrebné umiestniť bloky na hlavnú stránku bez duplikácie obsahu?
V čom presne vzniká rozptyl v hodnotení IPS?
Stručne otázky o tom, ako prebalíte RAG skúsenosti pre odporúčacie systémy, a potom typické otázky. Nie ako odpovedať, ale v čom spočíva podľa môjho skúsenosti a životopisu.
Napíšte krátky odsek pre seba prezentáciu, v ktorom zdôrazníte, že odporúčacie systémy sú veľmi podobné RAG - retrieval, re-ranking, architektonické podobnosti atď., aby som si to mohol zapamätať a povedať.
Ako funguje kontrastná strata s negatívami v batchi?
Ako prebieha inkrementálna aktualizácia FAISS indexu v produkcii?
Čo sú položky? Ako sa správne vyslovujú?
Odhadnite, koľko dát je potrebných na dohlbovanie modelu v produkcii, opíšte proces dohlbovania, parametre, funkciu straty (contrastive/triplet) a prečo bola vybraná práve ona.
# Formulujte a napíšte definíciu toho, čo je roc auc. # Ako sa počíta roc_auc_score? # Napíšte funkciu, ktorá vypočíta roc_auc_score podľa napísanej definície. # A pre ľubovoľný počet tried s daným poradím priorít? # Model funguje nasledovne # y_score[i] >= prah -> y_pred[i] = 1 # y_score[i] < prah -> y_pred[i] = 0 def test_roc_aur_score(): y_true = [0, 0, 0, 1, 0, 0] y_score = [0.2, 0.4, 0.31, 0.6, 0.3, 0.7] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 0.8 y_true = [0, 1, 0, 0, 0, 1] y_score = [0.7, 0.6, 0.31, 0.31, 0.3, 0.2] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 0.375 y_true = [0, 0, 0, 1, 0, 0] y_score = [0.2, 0.4, 0.31, 0.8, 0.3, 0.7] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 1 y_true = [0, 0, 0, 0, 0, 0] y_score = [0.2, 0.4, 0.31, 0.8, 0.3, 0.7] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 0 # Bonus testy pre viac tried y_true = [0, 1, 0, 0.5, 0, 1] y_score = [0.7, 0.6, 0.31, 0.31, 0.3, 0.2] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 0. y_true = [0, 0.1, 0.2, 0.3, 0.4, 0.6] y_score = [0, 0.1, 0.2, 0.3, 0.4, 0.6] res_metric = roc_auc_score(y_true, y_score) assert res_metric == 1
Čo robiť v prípade, že blok má rôzne množstvá obsahu — existujú jednotlivé bloky a bloky s 30 položkami? Ako pracovať s hodnoteniami obsahu, aby ste získali funkciu z tohto bloku?
Správne som pochopil: máme tracker, ktorý má priemerné skóre od content trackeru na vyplnenie bloku, existujú používateľské a blokové znaky, vzali sme pozitívne — čo presne?
Prosím, povedzte nám presne, o aký projekt išlo a čím ste sa presne zaoberali.
Povej mi o svoji izkušnji, s čim si se ukvarjal v zadnjih petih letih?
Keby ste dostali neobmedzené množstvo GPU-ov na zvýšenie kvality systému, ktorým smerom by ste sa najskôr vydali?
Čo je DSSM, vieš?
Prečo bol projekt vyvíjan dva roky, keď hovoríš, že hlavná časť bola hotová pred dvoma rokmi? Je projekt teraz v údržbe alebo bol ďalej rozvíjaný?
Zakaj bo potem treniran ranker? To pomeni, da bo neodvisen od vsebine — kakšen je njegov cilj?
Aký formát práce zvažujete a v ktorom meste žijete?
# daný je pole a = [1, 20, 10, 0, 59, 63, 0, 88, 0] -> [0, 0, 0, 1, 20, 10, 59, 63, 88] # je potrebné napísať optimálnu funkciu, ktorá presunie nuly na začiatok poľa a zachová poradie ostatných prvkov def move_zeros_to_left(a: List[int]) -> List[int]: pass