AI ocenia strony internetowe naśladując prawdziwych ludzi, a nawet ich przewyższając. Jak to jest zrobione?

Dziś jeden z elementów inteligentnego systemu przeprojektowywania stron internetowych uKit AI jest dostępny publicznie. Jest to prototypowy moduł do oceny piękna stron internetowych. Łączy sieć neuronową i drzewa decyzyjne, aby naśladować reakcję zwykłego użytkownika na projekt witryny.

W przyszłości taki moduł oceni działanie generatywnego algorytmu projektowego, kluczowego elementu uKit AI, który będzie projektował strony bez udziału człowieka, opierając się na dostępnej treści i „wiedzy” na temat różnicy między nieefektywną stroną internetową a ten miał na celu zwiększenie współczynnika konwersji.

Obecna wersja AI AI WebScore odzwierciedla pogląd przeciętnego użytkownika Internetu na temat wyglądu strony internetowej. Chociaż możemy tworzyć inne opcje, na przykład można ocenić użyteczność witryny.

Strony internetowe używane do szkolenia systemu. Przede wszystkim zebraliśmy 12 000 witryn i sklepów internetowych utworzonych w różnych latach na różnych platformach i w różnych językach. Głównym zadaniem było uzyskanie wystarczającej liczby gradacji wizualnych, od całkiem złych stron internetowych po bardzo dobre. W ten sposób pokazaliśmy systemowi, co może spotkać we współczesnej sieci.

Kilka stron z próbki szkoleniowej.

Każda gradacja jest mierzona za pomocą skali, a ta skala powinna być rozumiana przez zwykłą osobę, której opinii próbujemy modelować. Wymyśliliśmy więc skalę „od 1 do 10”, która jest wykorzystywana w naszym serwisie.

Ludzie naśladowani przez WebScore AI. Potrzebowaliśmy dwóch rzeczy do stworzenia zestawu danych (zestawu danych dla modelu szkolenia) z różnych stron internetowych:

  • znaki, za pomocą których system określi, czy strona internetowa jest atrakcyjna;
  • ocenia (oceny) wykonane za pomocą naszej skali dla pewnej liczby stron internetowych. Staną się modelem dla systemu.

Ktoś powinien umieścić te wstępne oceny. Taki „nauczyciel” lub grupa „nauczycieli”, a ściślej mówiąc, znacznie wpłyną na działanie modelu.

Interfejs oceny stron internetowych: wkrótce skorzystaj z naszego GitHub.

Aby zebrać grupę fokusową, przeprowadziliśmy wstępną selekcję kandydatów na 1500 przykładach witryn. Praca rutynowa, ale odpowiedzialna i wymagająca dużego skupienia. Wstępna selekcja pomogła nam wyeliminować nieodpowiednich kandydatów, a także wykluczyć z próby „kontrowersyjne” (gdy ktoś ocenia to jako 1, a drugą jako 10) strony internetowe.

Początkowo eksperymentowaliśmy z metodami oceny.

Na przykład zaproponowaliśmy ocenę jednej witryny internetowej, a następnie dwóch witryn jednocześnie lub wybranie jednej z dwóch, najbardziej atrakcyjnej. Podejście, w którym respondent widział jedną stronę internetową i oceniło ją, działało najlepiej. Wykorzystaliśmy go do oceny 10.000 pozostałych stron internetowych.

Osoba oceniła, czy strona internetowa jest piękna, czy nie. Jak zrobi to maszyna? Ty i ja potrzebujemy tylko jednego spojrzenia, aby wyrobić sobie opinię na temat ogólnego piękna czegoś. Ale wiemy, że diabeł tkwi w szczegółach.

Znaki atrakcyjności wizualnej witryny, które będą prowadzić model, są kluczowym momentem dla całego projektu. Poprosiliśmy zespół projektantów stron internetowych uKit o rękę, ich praca jest wykorzystywana jako podstawa dla setek tysięcy stron internetowych i miliony ludzi to widzą. Wspólnie opracowaliśmy rozszerzoną listę funkcji, na które specjaliści zwracają uwagę podczas opracowywania projektu strony internetowej. A potem próbował go wyciąć, pozostawiając tylko te najważniejsze.

zespół projektowy uKit.com.

W rezultacie otrzymaliśmy listę kontrolną zawierającą 125 całkiem różnych, ale znaczących kryteriów, pogrupowanych w piętnaście kategorii. Na przykład lista ma: dostosowanie do popularnych ekranów, różne rozmiary czcionek, czystość kolorów, długość nagłówków, proporcje obrazów na całej stronie i tak dalej. Pozostało tylko wyszkolić model przy użyciu tych reguł.

Utwórz algorytm. Czym dokładnie jest „model nauczania”? Jest to konstrukcja algorytmu, który jest oparty na danym zestawie cech i może ocenić wybraną witrynę. Pożądane jest, aby ocena systemu i ocena przeciętnego nauczyciela miały minimalną lukę w końcowych ocenach.

Zdecydowaliśmy się zastosować metodę zwiększania gradientu w drzewach decyzyjnych, ponieważ jest to jedno z najbardziej popularnych i skutecznych podejść. Korzystając z podstawowych algorytmów, tworzy zestaw, którego ogólny wynik przekracza wyniki dowolnego oddzielnego algorytmu.

Ponadto, dodając każdy kolejny podstawowy algorytm, próbuje poprawić jakość odpowiedzi całego zestawu.

Aby przyspieszyć i ułatwić ten proces, wykorzystaliśmy bibliotekę CatBoost firmy Yandex, która pozwala budować wzmacniacz oparty na gradientach w tak zwanych „nieświadomych drzewach decyzyjnych”, zapewniając dobre możliwości szkoleniowe modelu od samego początku i szybkie przejście do dostarczania prognoz (szacunki ) dla nowych obiektów.

Dodanie sieci neuronowej. Kiedy podstawowy algorytm był gotowy, postanowiliśmy przeprowadzić eksperyment: czy wyniki poprawią się, jeśli dodamy sieć neuronową? Właściwie już wiedzieliśmy, jak „spojrzeć” na stronę internetową i jej wygląd, a teraz postanowiliśmy nadać systemowi pewnego rodzaju „szkło powiększające”, które może wykorzystać do ujawnienia jeszcze więcej szczegółów.

Wybraliśmy jedną z najpopularniejszych sieci, resnet50, znaną jako dobry algorytm do wyodrębniania funkcji wysokiego poziomu. I nauczyliśmy się, jak uzyskać 1000 dodatkowych atrybutów do oceny witryny. W rezultacie system charakteryzuje teraz adres URL na podstawie łącznie 1125 funkcji i znajduje „miejsce” witryny w 10-punktowej skali. Proces ten zajmuje nawet kilkadziesiąt sekund, dlatego rozważamy przyspieszenie modelu poprzez zmniejszenie liczby znaków przy jednoczesnym utrzymaniu jakości oceny na tym samym poziomie.

Pierwsze wyniki. Model wytrenowany w ten sposób może 3-krotnie dokładniej oszacować dane w porównaniu do szacunków poszczególnych „nauczycieli”.

Można powiedzieć, że model przekroczył swoich pierwszych nauczycieli, ponieważ szacunki grupy fokusowej różnią się znacznie od przeciętnego bardziej niż szacunki sieci neuronowej. Teraz wprowadzamy algorytm do sieci w celu dalszego szkolenia. Możesz także zostać jego nauczycielem.