Kuinka valvomme mainoksia

Kuinka valvomme mainoksia

Jokainen palvelu, jonka käyttäjät voivat luoda omaa sisältöä (UGC - User-generated content) on pakotettu paitsi ratkaisemaan yritysongelmia, myös laittamaan asiat järjestykseen UGC:ssä. Huono tai heikkolaatuinen sisällön moderointi voi viime kädessä heikentää palvelun houkuttelevuutta käyttäjille ja jopa lopettaa sen toiminnan.

Tänään kerromme Yulan ja Odnoklassnikin välisestä synergiasta, joka auttaa meitä hallitsemaan mainoksia tehokkaasti Yulassa.

Synergia yleensä on erittäin hyödyllinen asia, ja nykymaailmassa, kun teknologiat ja trendit muuttuvat erittäin nopeasti, siitä voi tulla hengenpelastaja. Miksi tuhlata niukkoja resursseja ja aikaa keksiä jotain, mikä on jo keksitty ja tullut mieleen ennen sinua?

Ajattelimme samaa, kun meillä oli koko tehtävä valvoa käyttäjien sisältöä - kuvia, tekstiä ja linkkejä. Käyttäjämme lataavat miljoonia sisältöä Yulaan päivittäin, ja ilman automaattista käsittelyä on täysin mahdotonta käsitellä kaikkia näitä tietoja manuaalisesti.

Siksi käytimme valmiita moderointialustaa, jonka kollegamme Odnoklassnikista olivat siihen mennessä saaneet valmiiksi "melkein täydellisyyteen".

Miksi Odnoklassniki?

Joka päivä kymmenet miljoonat käyttäjät tulevat sosiaaliseen verkostoon ja julkaisevat miljardeja sisältöä: valokuvista videoihin ja teksteihin. Odnoklassnikin moderointialusta auttaa tarkastamaan erittäin suuret tietomäärät ja torjumaan roskapostittajia ja botteja.

OK moderaattoritiimille on kertynyt paljon kokemusta, sillä se on kehittänyt työkaluaan 12 vuoden ajan. On tärkeää, että he eivät voi vain jakaa valmiita ratkaisujaan, vaan myös räätälöidä alustansa arkkitehtuuria vastaamaan erityistehtäviämme.

Kuinka valvomme mainoksia

Tästä lähtien kutsumme OK-valvontaalustaa yksinkertaisesti "alustaksi".

Miten se kaikki toimii

Tiedonvaihto Yulan ja Odnoklassnikin välillä toteutetaan kautta Apache Kafka.

Miksi valitsimme tämän työkalun:

  • Yulassa kaikki mainokset ovat jälkimoderoituja, joten alun perin synkronista vastausta ei vaadittu.
  • Jos tapahtuu huono kappale ja Yula tai Odnoklassniki eivät ole käytettävissä, mukaan lukien joidenkin huippukuormien vuoksi, Kafkan tiedot eivät katoa mihinkään, ja ne voidaan lukea myöhemmin.
  • Alusta oli jo integroitu Kafkaan, joten useimmat tietoturvaongelmat ratkesivat.

Kuinka valvomme mainoksia

Jokaiselle käyttäjän Yulassa luomalle tai muokkaamalle mainokselle luodaan JSON dataineen, joka sijoitetaan Kafkaan myöhempää valvontaa varten. Kafkasta ilmoitukset ladataan alustalle, jossa ne ratkaistaan ​​automaattisesti tai manuaalisesti. Huonot mainokset estetään syystä, ja ne, joissa alusta ei löydä rikkomuksia, merkitään "hyviksi". Sitten kaikki päätökset lähetetään takaisin Yulalle ja sovelletaan palveluun.

Loppujen lopuksi Yulalle kaikki riippuu yksinkertaisista toimista: lähetä mainos Odnoklassniki-alustalle ja saat takaisin päätöslauselman "ok" tai miksi ei "ok".

Automaattinen käsittely

Mitä mainokselle tapahtuu sen jälkeen, kun se tulee alustalle? Jokainen mainos on jaettu useisiin kokonaisuuksiin:

  • Nimi,
  • kuvaus,
  • Valokuvat,
  • käyttäjän valitsema mainoksen luokka ja alaluokka,
  • цена.

Kuinka valvomme mainoksia

Alusta suorittaa sitten klusteroinnin jokaiselle entiteetille kaksoiskappaleiden löytämiseksi. Lisäksi teksti ja valokuvat on ryhmitelty erilaisten kaavioiden mukaan.

Ennen klusterointia tekstit normalisoidaan erikoismerkkien, muuttuneiden kirjainten ja muun roskan poistamiseksi. Vastaanotettu data jaetaan N-grammiin, joista jokainen on hajautus. Tuloksena on monia ainutlaatuisia tiivisteitä. Tekstien samankaltaisuus määräytyy Jaccardin mitta kahden tuloksena olevan joukon välillä. Jos samankaltaisuus on suurempi kuin kynnys, tekstit yhdistetään yhdeksi klusteriksi. Samankaltaisten klustereiden etsimisen nopeuttamiseksi käytetään MinHash- ja Locality-sensitive-hajautustoimintoa.

Kuvien liimaamiseen on keksitty erilaisia ​​vaihtoehtoja pHash-kuvien vertaamisesta kaksoiskappaleiden etsimiseen hermoverkon avulla.

Viimeinen menetelmä on "vakavin". Mallin harjoittamiseksi valittiin kuvien kolmikot (N, A, P), joissa N ei ole samanlainen kuin A ja P on samanlainen kuin A (on puolikopio). Sitten hermoverkko oppi tekemään A:n ja P:n mahdollisimman lähelle ja A:n ja N:n mahdollisimman pitkälle. Tämä johtaa harvempiin vääriin positiivisiin tuloksiin verrattuna pelkkään upotusten ottamiseen valmiiksi koulutetusta verkosta.

Kun hermoverkko vastaanottaa kuvia syötteenä, se generoi niistä jokaiselle N(128)-ulotteisen vektorin ja pyydetään arvioimaan kuvan läheisyys. Seuraavaksi lasketaan kynnys, jolla läheiset kuvat katsotaan kaksoiskappaleiksi.

Malli osaa taitavasti löytää roskapostittajia, jotka kuvaavat nimenomaan samaa tuotetta eri näkökulmista ohittaakseen pHash-vertailun.

Kuinka valvomme mainoksiaKuinka valvomme mainoksia
Esimerkki roskapostikuvista, jotka hermoverkko liimaa yhteen kaksoiskappaleina.

Viimeisessä vaiheessa päällekkäisiä mainoksia etsitään samanaikaisesti sekä tekstin että kuvan perusteella.

Jos kaksi tai useampi mainos on juuttunut yhteen klusteriin, järjestelmä käynnistää automaattisen eston, joka tiettyjä algoritmeja käyttäen valitsee mitkä kaksoiskappaleet poistetaan ja mitkä jätetään. Jos esimerkiksi kahdella käyttäjällä on samat valokuvat mainoksessa, järjestelmä estää uudemman mainoksen.

Kun kaikki klusterit on luotu, ne käyvät läpi sarjan automaattisia suodattimia. Jokainen suodatin antaa klusterille pistemäärän: kuinka todennäköistä on, että se sisältää tämän suodattimen tunnistaman uhan.

Järjestelmä esimerkiksi analysoi mainoksen kuvauksen ja valitsee sille mahdolliset luokat. Sitten se ottaa suurimman todennäköisyyden omaavan ja vertaa sitä mainoksen kirjoittajan määrittelemään luokkaan. Jos ne eivät täsmää, mainos estetään väärässä kategoriassa. Ja koska olemme ystävällisiä ja rehellisiä, kerromme käyttäjälle suoraan, mikä luokka hänen on valittava, jotta mainos läpäisi valvonnan.

Kuinka valvomme mainoksia
Ilmoitus estämisestä väärän luokan vuoksi.

Koneoppiminen tuntuu kotoisalta alustallamme. Esimerkiksi sen avulla etsimme Venäjän federaatiossa kiellettyjen tavaroiden nimiä ja kuvauksia. Ja hermoverkkomallit "tutkivat" kuvat huolellisesti nähdäkseen, sisältävätkö ne URL-osoitteita, roskapostiviestejä, puhelinnumeroita ja samaa "kiellettyä" tietoa.

Tapauksissa, joissa he yrittävät myydä kiellettyä tuotetta lailliseksi naamioituneeksi, eikä otsikossa tai kuvauksessa ole tekstiä, käytämme kuvakoodeja. Jokaista kuvaa kohti voidaan lisätä jopa 11 tuhatta erilaista tunnistetta, jotka kuvaavat kuvan sisältöä.

Kuinka valvomme mainoksia
He yrittävät myydä vesipiippua naamioimalla sen samovaariksi.

Monimutkaisten suodattimien rinnalla toimivat myös yksinkertaiset, jotka ratkaisevat ilmeisiä tekstiin liittyviä ongelmia:

  • antimat;
  • URL-osoite ja puhelinnumero ilmaisin;
  • pikaviestien ja muiden kontaktien mainitseminen;
  • alennettu hinta;
  • mainokset, joissa ei ole myytävänä jne.

Nykyään jokainen mainos käy yli 50 automaattisen suodattimen seulan läpi, jotka yrittävät löytää mainoksesta jotain huonoa.

Jos mikään ilmaisimista ei toiminut, Yulalle lähetetään vastaus, että ilmoitus on "todennäköisimmin" täydellisessä kunnossa. Käytämme tätä vastausta itse, ja myyjän tilaaneet käyttäjät saavat ilmoituksen uuden tuotteen saatavuudesta.

Kuinka valvomme mainoksia
Ilmoitus, että myyjällä on uusi tuote.

Tämän seurauksena jokainen mainos "kasvaa" metatiedoilla, joista osa syntyy mainoksen luomisen yhteydessä (tekijän IP-osoite, käyttäjäagentti, alusta, maantieteellinen sijainti jne.), ja loput ovat kunkin suodattimen antamat pisteet. .

Ilmoitusjonot

Kun mainos osuu alustalle, järjestelmä asettaa sen johonkin jonoista. Jokainen jono luodaan matemaattisen kaavan avulla, joka yhdistää mainoksen metatiedot tavalla, joka havaitsee huonot mallit.

Voit esimerkiksi luoda jonon "Cell Phones" -kategorian mainoksista Yula-käyttäjiltä, ​​jotka oletettavasti ovat kotoisin Pietarista, mutta heidän IP-osoitteensa ovat Moskovasta tai muista kaupungeista.

Kuinka valvomme mainoksia
Esimerkki mainoksista, jotka yksi käyttäjä on lähettänyt eri kaupungeissa.

Tai voit muodostaa jonoja niiden pisteiden perusteella, jotka neuroverkko antaa mainoksille, järjestämällä ne laskevaan järjestykseen.

Jokainen jono antaa oman kaavansa mukaan mainokselle lopullisen pistemäärän. Sitten voit jatkaa eri tavoilla:

  • määritä kynnys, jolla mainos saa tietyn tyyppisen eston;
  • lähetä kaikki jonossa olevat mainokset valvojille manuaalista tarkistusta varten;
  • tai yhdistä edelliset vaihtoehdot: määritä automaattinen estokynnys ja lähetä valvojille ne mainokset, jotka eivät ole saavuttaneet tätä kynnystä.

Kuinka valvomme mainoksia

Miksi näitä jonoja tarvitaan? Oletetaan, että käyttäjä on ladannut valokuvan ampuma-aseesta. Neuraaliverkko antaa sille arvosanan 95-100 ja määrittää 99 prosentin tarkkuudella, että kuvassa on ase. Mutta jos pistemäärä on alle 95%, mallin tarkkuus alkaa heikentyä (tämä on hermoverkkomallien ominaisuus).

Tämän seurauksena pistemallin perusteella muodostuu jono, ja 95-100 pisteet saaneet mainokset estetään automaattisesti "kielletyiksi tuotteiksi". Mainokset, joiden pistemäärä on alle 95, lähetetään valvojille manuaalista käsittelyä varten.

Kuinka valvomme mainoksia
Suklaa Beretta patruunoilla. Vain manuaaliseen moderointiin! 🙂

Manuaalinen moderointi

Vuoden 2019 alussa noin 94 % kaikista Yulan mainoksista moderoidaan automaattisesti.

Kuinka valvomme mainoksia

Jos alusta ei voi päättää joistakin mainoksista, se lähettää ne manuaaliseen valvontaan. Odnoklassniki kehitti oman työkalunsa: moderaattoreiden tehtävät näyttävät välittömästi kaikki tarvittavat tiedot nopean päätöksen tekemiseksi - mainos sopii tai se tulisi estää, ilmoittaen syyn.

Ja jotta palvelun laatu ei kärsisi manuaalisen moderoinnin aikana, ihmisten työtä seurataan jatkuvasti. Esimerkiksi tehtävävirrassa moderaattorille näytetään "ansat" – mainoksia, joihin on jo valmiita ratkaisuja. Jos moderaattorin päätös ei täsmää valmiin päätöksen kanssa, moderaattorille annetaan virheilmoitus.

Moderaattori käyttää keskimäärin 10 sekuntia yhden mainoksen tarkistamiseen. Lisäksi virheiden määrä on enintään 0,5 % kaikista vahvistetuista mainoksista.

Ihmisten maltillisuus

Odnoklassnikin kollegat menivät vielä pidemmälle ja hyödynsivät "yleisön apua": he kirjoittivat pelisovelluksen sosiaaliseen verkostoon, jossa voit nopeasti merkitä suuren määrän dataa korostaen joitain huonoja merkkejä - Odnoklassniki Moderator (https://ok.ru/app/moderator). Hyvä tapa hyödyntää OK-käyttäjien apua, jotka yrittävät tehdä sisällöstä nautinnollisempaa.

Kuinka valvomme mainoksia
Peli, jossa käyttäjät merkitsevät kuvia, joissa on puhelinnumero.

Kaikki alustan mainosjonot voidaan ohjata Odnoklassniki Moderator -peliin. Kaikki, mitä pelin käyttäjät merkitsevät, lähetetään sitten sisäisille moderaattoreille tarkistettavaksi. Tämän järjestelmän avulla voit estää mainokset, joille ei ole vielä luotu suodattimia, ja luoda samanaikaisesti harjoitusnäytteitä.

Valvontatulosten tallentaminen

Tallennamme kaikki moderoinnin aikana tehdyt päätökset, jotta emme käsittele uudelleen niitä mainoksia, joista olemme jo tehneet päätöksen.

Miljoonia klustereita luodaan päivittäin mainosten perusteella. Ajan myötä jokainen klusteri merkitään "hyväksi" tai "huonoksi". Jokainen uusi mainos tai sen versio, joka tulee merkillä varustettuun klusteriin, saa automaattisesti ratkaisun itse klusterilta. Tällaisia ​​automaattisia ratkaisuja on noin 20 tuhatta päivässä.

Kuinka valvomme mainoksia

Jos klusteriin ei tule uusia ilmoituksia, se poistetaan muistista ja sen hash ja ratkaisu kirjoitetaan Apache Cassandralle.

Kun alusta saa uuden ilmoituksen, se yrittää ensin löytää samanlaisen klusterin jo luotujen joukosta ja ottaa siitä ratkaisun. Jos tällaista klusteria ei ole, alusta menee Cassandraan ja katsoo sieltä. Löysitkö sen? Hienoa, soveltaa ratkaisua klusteriin ja lähettää sen Yulalle. Tällaisia ​​”toistuvia” päätöksiä tehdään päivittäin keskimäärin 70 tuhatta – 8 % kokonaismäärästä.

Yhteenvetona

Olemme käyttäneet Odnoklassnikin moderointialustaa kaksi ja puoli vuotta. Pidämme tuloksista:

  • Valvomme automaattisesti 94 % kaikista mainoksista päivässä.
  • Yhden mainoksen moderoinnin hinta laskettiin 2 ruplasta 7 kopekkaan.
  • Valmiin työkalun ansiosta unohdimme moderaattorien hallintaan liittyvät ongelmat.
  • Lisäsimme manuaalisesti käsiteltyjen mainosten määrää 2,5 kertaa samalla määrällä valvojia ja samalla budjetilla. Myös manuaalisen moderoinnin laatu on parantunut automaattisen ohjauksen ansiosta ja vaihtelee noin 0,5 % virheistä.
  • Peitämme nopeasti uudentyyppiset roskapostit suodattimilla.
  • Yhdistämme nopeasti uudet osastot moderointiin "Yula Verticals". Vuodesta 2017 lähtien Yula on lisännyt Kiinteistöt-, Avoimet työpaikat- ja Auto-toimialat.

Lähde: will.com

Lisää kommentti