AI procjenjuje web stranice oponašajući stvarne ljude i čak ih nadmašuje. Kako se to radi?

Danas je jedna od komponenti uKit AI-a, inteligentni sustav redizajniranja web stranica, javno dostupan. To je prototipni modul za ocjenu ljepote web stranica. Kombinira neuronsku mrežu i stabla odluka da imitira reakciju običnog posjetitelja na dizajn web stranice athe.

Ubuduće će takav modul ocjenjivati ​​rad algoritma generativnog dizajna, ključnog elementa uKit AI-a, koji će dizajnirati stranice bez ljudskog učešća oslanjajući se na dostupni sadržaj i "znanje" o razlici između neučinkovite web stranice i onaj usmjeren na povećanje stope konverzije.

Trenutačna AI verzija WebScore odražava pogled prosječnog internetskog korisnika o izgledu web mjesta. Iako, na primjer, možemo stvoriti i druge mogućnosti, moguće je ocijeniti upotrebljivost web mjesta.

Web stranice koje se koriste za obučavanje sustava. Prije svega, prikupili smo 12.000 web lokacija i internetskih trgovina nastalih u različitim godinama na različitim platformama i na različitim jezicima. Glavni zadatak bio je dobiti dovoljno primjera vizualne gradacije, od prilično loših web stranica do vrlo dobrih. Na ovaj smo način pokazali sustavu na što se sve može suočiti u modernom webu.

Nekoliko web stranica iz uzorka treninga.

Svaka gradacija mjeri se ljestvicom, a tu ljestvicu treba razumjeti obična osoba, čije mišljenje pokušavamo modelirati. Dakle, došli smo do ideje o skali od 1 do 10, koja se koristi u našoj usluzi.

Osobe koje imitiraju webScore AI. Dvije su nam stvari potrebne za formiranje skupa podataka (skupa podataka za model treninga) s različitih web mjesta:

  • znakove pomoću kojih će sustav odrediti je li web stranica atraktivna;
  • ocjenjivači (ocjene) napravljene uz pomoć našeg mjerila za određenu količinu web stranica. Oni će postati model za sustav.

Netko bi trebao postaviti ove početne ocjene. Takav „učitelj“ ili grupa „nastavnika“, točnije, uvelike će utjecati na to kako će model funkcionirati.

Sučelje za procjenu web stranica: preuzmite i uskoro koristite naš GitHub.

Da bismo okupili fokusnu skupinu, proveli smo preliminarni odabir kandidata na 1500 primjera web mjesta. Rutinski posao, ali odgovoran i zahtijeva veliku usredotočenost. Preliminarni odabir pomogao nam je da uklonimo neprimjerene kandidate i da izuzmemo „kontroverzne“ (kad netko ocijeni kao 1, a drugi kao 10) web-mjesta iz uzorka.

U početku smo eksperimentirali s metodama evaluacije.

Na primjer, ponudili smo procjenu jedne web stranice odjednom, a zatim dvije web stranice istovremeno ili odabrati jednu od dvije, najatraktivniju. Pristup u kojem je ispitanik vidio jednu jedinstvenu web stranicu i procijenio je da djeluje najbolje. Koristili smo ga za procjenu 10.000 preostalih web stranica.

Osoba je procjenjivala je li web stranica lijepa ili ne. Kako će stroj to učiniti? Ti i ja trebamo samo jedan pogled da bismo formirali mišljenje o cjelokupnoj ljepoti nečega. Ali znamo da je vrag u detaljima.

Znakovi vizualne privlačnosti na web stranici koji će voditi model ključni su trenutak za cijeli projekt. Za pomoć smo pitali dizajnerski tim za izradu web stranica uKit, njihov se rad koristi kao osnova za stotine tisuća web stranica, a milioni ljudi ga vide. Zajedno smo sastavili prošireni popis značajki na koje profesionalci obraćaju pažnju prilikom razvoja dizajna web stranice. A onda je pokušao smanjiti, ostavljajući samo one najvažnije.

uKit.com dizajnerski tim.

Kao rezultat toga, dobili smo popis od 125 prilično različitih, ali značajnih kriterija grupiranih u petnaest kategorija. Na primjer, popis sadrži: prilagođavanje popularnim ekranima, različite veličine fonta, čistoću boja, duljinu naslova, omjer slika na cijeloj stranici i tako dalje. Preostaje samo obučiti model pomoću ovih pravila.

Napravite algoritam. Što je točno „model podučavanja“? To je izrada algoritma koji se temelji na zadanom nizu karakteristika i može procijeniti odabranu web lokaciju. Poželjno je da evaluacija sustava i ocjena prosječnog učitelja dijele minimalni jaz u konačnim ocjenama.

Odlučili smo koristiti metodu povećanja gradijenta nad stablima odluka, jer je to jedan od najpopularnijih i najučinkovitijih pristupa. Pomoću osnovnih algoritama konstruira skup čiji ukupni rezultat premašuje rezultate bilo kojeg zasebnog algoritma.

Nadalje, dodavanjem svakog sljedećeg osnovnog algoritma nastoji se poboljšati kvaliteta odgovora cijelog skupa.

Da bismo ubrzali i olakšali postupak, koristili smo CatBoost biblioteku tvrtke Yandex koja omogućava izgradnju nagibača s gradijentom u takozvanim „nesvjesnim stablima odluka“ osiguravajući dobre mogućnosti treninga modela od samog početka i brzi prijelaz na pružanje predviđanja (procjene ) za nove predmete.

Dodavanje neuronske mreže. Kad je osnovni algoritam bio spreman, odlučili smo provesti eksperiment: hoće li se rezultati poboljšati ako dodamo neuronsku mrežu? Zapravo, već smo znali kako „pogledati“ web mjesto i njegov dizajn, a sada smo odlučili dati sustavu neku „lupu“ koja se može koristiti za otkrivanje još više detalja.

Odabrali smo jednu od najpopularnijih mreža, resnet50, poznat je kao dobar algoritam za vađenje značajki na visokoj razini. I naučili smo kako dobiti 1000 dodatnih atributa za procjenu web mjesta. Kao rezultat toga, sustav sada karakterizira URL prema ukupno 1125 značajki i pronalazi web mjesto "mjesto" na skali od 10 bodova. Proces traje do nekoliko desetaka sekundi, zbog čega smatramo da ubrzavamo model smanjujući broj znakova uz održavanje kvalitete ocjene na istoj razini.

Prvi rezultati. Model treniran na ovaj način mogao bi napraviti 3 puta preciznije procjene u odnosu na ocjene pojedinih "učitelja".

Možemo reći da je model nadmašio svoje prve učitelje jer se procjene fokusne skupine znatno razlikuju od prosječnih od procjene neuronske mreže. Sada smo algoritam stavili u mrežu za daljnju obuku. I vi možete postati njegov učitelj.