Cum moderam reclamele

Cum moderam reclamele

Fiecare serviciu ai cărui utilizatori își pot crea propriul conținut (UGC – User-generated content) este forțat nu doar să rezolve problemele de afaceri, ci și să pună lucrurile în ordine în UGC. Moderarea conținutului de proastă sau de calitate scăzută poate reduce în cele din urmă atractivitatea serviciului pentru utilizatori, chiar punând capăt funcționării acestuia.

Astăzi vă vom spune despre sinergia dintre Yula și Odnoklassniki, care ne ajută să moderam eficient reclamele în Yula.

Sinergia în general este un lucru foarte util, iar în lumea modernă, când tehnologiile și tendințele se schimbă foarte repede, se poate transforma într-un salvator. De ce să irosești resursele limitate și timpul inventând ceva care a fost deja inventat și adus în minte înaintea ta?

La fel ne-am gândit când ne-am confruntat cu sarcina completă de a modera conținutul utilizatorului - imagini, text și link-uri. Utilizatorii noștri încarcă milioane de conținut pe Yula în fiecare zi și, fără procesare automată, este complet imposibil să moderați manual toate aceste date.

Prin urmare, am folosit o platformă de moderare gata făcută, pe care colegii noștri de la Odnoklassniki o completaseră până la o stare de „aproape perfecțiune”.

De ce Odnoklassniki?

În fiecare zi, zeci de milioane de utilizatori vin pe rețeaua de socializare și publică miliarde de conținut: de la fotografii la videoclipuri și texte. Platforma de moderare Odnoklassniki ajută la verificarea unor volume foarte mari de date și la contracararea spammerilor și a botilor.

Echipa de moderare OK a acumulat multă experiență, deoarece își îmbunătățește instrumentul de 12 ani. Este important ca aceștia să își poată împărtăși nu numai soluțiile gata făcute, ci și să personalizeze arhitectura platformei lor pentru a se potrivi sarcinilor noastre specifice.

Cum moderam reclamele

De acum înainte, pentru concizie, vom numi pur și simplu platforma de moderare OK „platformă”.

Cum funcționează totul

Schimbul de date între Yula și Odnoklassniki este stabilit prin Apache Kafka.

De ce am ales acest instrument:

  • În Yula, toate reclamele sunt post-moderate, așa că inițial nu a fost necesar un răspuns sincron.
  • Dacă se întâmplă un paragraf prost și Yula sau Odnoklassniki nu sunt disponibile, inclusiv din cauza unor sarcini de vârf, atunci datele de la Kafka nu vor dispărea nicăieri și pot fi citite mai târziu.
  • Platforma era deja integrată cu Kafka, așa că majoritatea problemelor de securitate au fost rezolvate.

Cum moderam reclamele

Pentru fiecare anunț creat sau modificat de utilizator în Yula, este generat un JSON cu date, care este plasat în Kafka pentru moderarea ulterioară. De la Kafka, anunțurile sunt încărcate în platformă, unde sunt adjudecate automat sau manual. Reclamele proaste sunt blocate cu un motiv, iar cele în care platforma nu găsește încălcări sunt marcate ca „bune”. Apoi toate deciziile sunt trimise înapoi la Yula și aplicate în serviciu.

În cele din urmă, pentru Yula totul se rezumă la acțiuni simple: trimiteți un anunț pe platforma Odnoklassniki și primiți o rezoluție „ok”, sau de ce nu „ok”.

Prelucrare automată

Ce se întâmplă cu anunțul după ce ajunge pe platformă? Fiecare anunț este împărțit în mai multe entități:

  • Nume,
  • Descriere,
  • fotografii,
  • categoria și subcategoria anunțului selectate de utilizator,
  • цена.

Cum moderam reclamele

Platforma efectuează apoi gruparea pentru fiecare entitate pentru a găsi duplicate. Mai mult, textul și fotografiile sunt grupate în funcție de scheme diferite.

Înainte de grupare, textele sunt normalizate pentru a elimina caracterele speciale, literele modificate și alte deșeuri. Datele primite sunt împărțite în N-grame, fiecare dintre ele fiind hashing. Rezultatul sunt multe hashuri unice. Asemănarea dintre texte este determinată de Măsura lui Jaccard între cele două seturi rezultate. Dacă asemănarea este mai mare decât pragul, atunci textele sunt îmbinate într-un singur grup. Pentru a accelera căutarea clusterelor similare, se utilizează hashing MinHash și localitate.

Au fost inventate diverse opțiuni pentru lipirea imaginilor pentru fotografii, de la compararea imaginilor pHash la căutarea duplicatelor folosind o rețea neuronală.

Ultima metodă este cea mai „severă”. Pentru a antrena modelul, au fost selectate tripleți de imagini (N, A, P) în care N nu este similar cu A și P este similar cu A (este un semiduplicat). Apoi, rețeaua neuronală a învățat să facă A și P cât mai aproape posibil, iar A și N cât mai departe posibil. Acest lucru are ca rezultat mai puține rezultate false pozitive în comparație cu simpla luare de încorporare dintr-o rețea pre-instruită.

Când rețeaua neuronală primește imagini ca intrare, generează un vector N(128)-dimensional pentru fiecare dintre ele și se face o solicitare pentru a evalua proximitatea imaginii. Apoi, se calculează un prag la care imaginile apropiate sunt considerate duplicate.

Modelul este capabil să găsească cu pricepere spammeri care fotografiază în mod specific același produs din unghiuri diferite pentru a ocoli comparația pHash.

Cum moderam reclameleCum moderam reclamele
Un exemplu de fotografii spam lipite împreună de o rețea neuronală ca duplicate.

În etapa finală, reclamele duplicate sunt căutate simultan atât prin text, cât și prin imagine.

Dacă două sau mai multe reclame sunt blocate împreună într-un cluster, sistemul începe blocarea automată, care, folosind anumiți algoritmi, selectează ce duplicate să șteargă și pe care să lase. De exemplu, dacă doi utilizatori au aceleași fotografii într-un anunț, sistemul va bloca anunțul mai recent.

Odată create, toate clusterele trec printr-o serie de filtre automate. Fiecare filtru atribuie un scor cluster-ului: cât de probabil este să conţină ameninţarea pe care o identifică acest filtru.

De exemplu, sistemul analizează descrierea dintr-un anunț și selectează categorii potențiale pentru aceasta. Apoi îl ia pe cel cu probabilitate maximă și îl compară cu categoria specificată de autorul anunțului. Dacă nu se potrivesc, anunțul este blocat pentru categoria greșită. Și întrucât suntem amabili și sinceri, îi spunem direct utilizatorului ce categorie trebuie să aleagă pentru ca anunțul să treacă prin moderare.

Cum moderam reclamele
Notificare de blocare pentru categoria incorectă.

Învățarea automată se simte ca acasă în platforma noastră. De exemplu, cu ajutorul său căutăm în numele și descrierile mărfurilor interzise în Federația Rusă. Și modelele de rețele neuronale „examinează” cu meticulozitate imaginile pentru a vedea dacă acestea conțin URL-uri, texte spam, numere de telefon și aceleași informații „interzise”.

Pentru cazurile în care încearcă să vândă un produs interzis deghizat în ceva legal și nu există niciun text în titlu sau descriere, folosim etichetarea imaginii. Pentru fiecare imagine, se pot adăuga până la 11 mii de etichete diferite care descriu ceea ce este în imagine.

Cum moderam reclamele
Ei încearcă să vândă narghilea deghându-l în samovar.

În paralel cu filtrele complexe, funcționează și cele simple, rezolvând probleme evidente legate de text:

  • antimat;
  • detector URL și numere de telefon;
  • menționarea mesageriei instantanee și a altor contacte;
  • pret redus;
  • reclame în care nimic nu este de vânzare etc.

Astăzi, fiecare reclamă trece printr-o sită fină de peste 50 de filtre automate care încearcă să găsească ceva rău în reclamă.

Dacă niciunul dintre detectoare nu a funcționat, atunci i se trimite lui Yula un răspuns că anunțul este „cel mai probabil” în ordine perfectă. Noi înșine folosim acest răspuns, iar utilizatorii care s-au abonat la vânzător primesc o notificare despre disponibilitatea unui produs nou.

Cum moderam reclamele
Notificare că vânzătorul are un produs nou.

Ca urmare, fiecare anunț este „încărcat” cu metadate, dintre care unele sunt generate la crearea anunțului (adresa IP a autorului, user-agent, platformă, geolocalizare etc.), iar restul este scorul emis de fiecare filtru. .

Cozi de anunţuri

Când un anunț ajunge pe platformă, sistemul îl pune într-una dintre cozi. Fiecare coadă este creată folosind o formulă matematică care combină metadatele publicitare într-un mod care detectează orice tipare necorespunzătoare.

De exemplu, puteți crea o coadă de anunțuri în categoria „Telefoane mobile” de la utilizatorii Yula presupus din Sankt Petersburg, dar adresele lor IP sunt din Moscova sau din alte orașe.

Cum moderam reclamele
Un exemplu de reclame postate de un utilizator în diferite orașe.

Sau puteți forma cozi pe baza scorurilor pe care rețeaua neuronală le atribuie reclamelor, aranjandu-le în ordine descrescătoare.

Fiecare coadă, conform propriei formule, atribuie un punctaj final reclamei. Apoi puteți proceda în diferite moduri:

  • specificați pragul la care un anunț va primi un anumit tip de blocare;
  • trimiteți toate anunțurile din coadă moderatorilor pentru examinare manuală;
  • sau combinați opțiunile anterioare: specificați pragul de blocare automată și trimiteți moderatorilor acele anunțuri care nu au atins acest prag.

Cum moderam reclamele

De ce sunt necesare aceste cozi? Să presupunem că un utilizator a încărcat o fotografie cu o armă de foc. Rețeaua neuronală îi atribuie un scor de la 95 la 100 și determină cu o precizie de 99% că există o armă în imagine. Dar dacă valoarea scorului este sub 95%, acuratețea modelului începe să scadă (aceasta este o caracteristică a modelelor de rețele neuronale).

Ca urmare, se formează o coadă pe baza modelului de scor, iar acele anunțuri care au primit între 95 și 100 sunt blocate automat ca „Produse interzise”. Reclamele cu un scor sub 95 sunt trimise moderatorilor pentru procesare manuală.

Cum moderam reclamele
Beretta de ciocolată cu cartușe. Doar pentru moderare manuală! 🙂

Moderare manuală

La începutul anului 2019, aproximativ 94% din toate reclamele din Yula sunt moderate automat.

Cum moderam reclamele

Dacă platforma nu poate decide asupra unor reclame, le trimite spre moderare manuală. Odnoklassniki și-a dezvoltat propriul instrument: sarcinile pentru moderatori afișează imediat toate informațiile necesare pentru a lua o decizie rapidă - anunțul este potrivit sau ar trebui blocat, indicând motivul.

Și pentru ca calitatea serviciului să nu sufere în timpul moderarii manuale, munca oamenilor este monitorizată în mod constant. De exemplu, în fluxul de activități, moderatorului i se arată „capcane” - anunțuri pentru care există deja soluții gata făcute. Dacă decizia moderatorului nu coincide cu cea terminată, moderatorului i se dă o eroare.

În medie, un moderator petrece 10 secunde verificând un anunț. În plus, numărul de erori nu depășește 0,5% din toate anunțurile verificate.

Moderația oamenilor

Colegii de la Odnoklassniki au mers și mai departe și au profitat de „ajutorul publicului”: au scris o aplicație de joc pentru rețeaua socială în care puteți marca rapid o cantitate mare de date, evidențiind un semn rău - Moderatorul Odnoklassniki (https://ok.ru/app/moderator). O modalitate bună de a profita de ajutorul utilizatorilor OK care încearcă să facă conținutul mai plăcut.

Cum moderam reclamele
Un joc în care utilizatorii etichetează fotografii care au un număr de telefon pe ele.

Orice coadă de anunțuri din platformă poate fi redirecționată către jocul Odnoklassniki Moderator. Tot ceea ce marca utilizatorii jocului este apoi trimis moderatorilor interni pentru revizuire. Această schemă vă permite să blocați reclamele pentru care filtrele nu au fost încă create și să creați simultan mostre de antrenament.

Stocarea rezultatelor moderarii

Salvăm toate deciziile luate în timpul moderării, astfel încât să nu reprocesăm acele anunțuri asupra cărora am luat deja o decizie.

Milioane de clustere sunt create în fiecare zi pe baza reclamelor. De-a lungul timpului, fiecare grup este etichetat „bun” sau „rău”. Fiecare anunț nou sau revizuire a acestuia, care intră într-un cluster cu un semn, primește automat o rezoluție de la clusterul însuși. Există aproximativ 20 de mii de astfel de rezoluții automate pe zi.

Cum moderam reclamele

Dacă nu sosesc noi anunțuri în cluster, acesta este eliminat din memorie și hash-ul și soluția sa sunt scrise în Apache Cassandra.

Când platforma primește o nouă reclamă, mai întâi încearcă să găsească un cluster similar dintre cele deja create și să ia o soluție de la acesta. Dacă nu există un astfel de cluster, platforma merge la Cassandra și se uită acolo. L-ai găsit? Grozav, aplică soluția clusterului și o trimite lui Yula. Există în medie 70 de mii de astfel de decizii „repetate” în fiecare zi — 8% din total.

Rezumând

De doi ani și jumătate folosim platforma de moderare Odnoklassniki. Ne plac rezultatele:

  • Moderăm automat 94% din toate reclamele pe zi.
  • Costul moderării unui anunț a fost redus de la 2 ruble la 7 copeici.
  • Datorită instrumentului gata făcut, am uitat de problemele de gestionare a moderatorilor.
  • Am crescut numărul de anunțuri procesate manual de 2,5 ori cu același număr de moderatori și același buget. Calitatea moderării manuale a crescut și datorită controlului automat și fluctuează în jurul a 0,5% dintre erori.
  • Acoperim rapid noile tipuri de spam cu filtre.
  • Conectam rapid noi departamente la moderare „Yula Verticals”. Din 2017, Yula a adăugat verticalele Imobiliare, Locuri vacante și Auto.

Sursa: www.habr.com

Adauga un comentariu