AI evalúa los sitios web imitando a personas reales e incluso los supera. Como se hace

Hoy, uno de los componentes de uKit AI, un sistema inteligente de rediseño de sitios web, se está haciendo público. Es un módulo prototipo para evaluar la belleza de las páginas web. Combina una red neuronal y árboles de decisión para imitar la reacción de un visitante común al diseño del sitio web.

En el futuro, dicho módulo evaluará el trabajo del algoritmo de diseño generativo, el elemento clave de uKit AI, que diseñará páginas sin participación humana basándose en el contenido disponible y el "conocimiento" de la diferencia entre un sitio web no efectivo y el destinado a aumentar la tasa de conversión.

La versión actual de WebScore AI refleja la opinión de un usuario promedio de Internet sobre la apariencia del sitio web. Sin embargo, podemos crear otras opciones, por ejemplo, es posible calificar la usabilidad de un sitio web.

Sitios web utilizados para entrenar el sistema. En primer lugar, hemos recopilado 12,000 sitios y tiendas en línea creados en diferentes años en varias plataformas y en diferentes idiomas. La tarea principal era obtener suficientes ejemplos de gradación visual, desde sitios web bastante malos hasta muy buenos. De esta manera, hemos mostrado al sistema lo que puede encontrar en la web moderna.

Un par de sitios web de la muestra de capacitación.

Cada gradación se mide con una escala, y se supone que esta escala debe ser entendida por una persona común cuya opinión tratamos de modelar. Entonces, se nos ocurrió una idea de la escala "de 1 a 10", que se utiliza en nuestro servicio.

Personas que son imitadas por WebScore AI. Necesitábamos dos cosas para formar un conjunto de datos (un conjunto de datos para un modelo de capacitación) de una variedad de sitios web:

  • los signos por los cuales el sistema determinará si el sitio web es atractivo;
  • el evalúa (marcas) hechas con la ayuda de nuestra escala para una cierta cantidad de sitios web. Se convertirán en un modelo para el sistema.

Alguien debería poner estas evaluaciones iniciales. Dicho "maestro", o un grupo de "maestros", para ser más específicos, afectará en gran medida cómo funcionará el modelo.

Interfaz de evaluación de sitios web: tome y use nuestro GitHub pronto.

Para reunir un grupo de enfoque, realizamos una selección preliminar de candidatos en 1500 ejemplos de sitios web. Un trabajo de rutina, pero responsable y que requiere un gran enfoque. La selección preliminar nos ayudó a eliminar candidatos inadecuados y también a excluir de la muestra los sitios web "controvertidos" (cuando alguien lo califica como 1 y el otro como 10).

Al principio, experimentamos con métodos de evaluación.

Por ejemplo, ofrecimos evaluar un sitio web a la vez, luego dos sitios web al mismo tiempo, o elegir uno de los dos, el más atractivo. El enfoque en el que el encuestado vio un solo sitio web y lo evaluó funcionó mejor. Lo usamos para evaluar 10.000 de los sitios web restantes.

Una persona evaluó si un sitio web es hermoso o no. ¿Cómo hará esto la máquina? Usted y yo solo necesitamos una mirada para formar una opinión sobre la belleza general de algo. Pero sabemos que el diablo está en los detalles.

Los signos de atractivo visual del sitio web que guiarán al modelo son un momento clave para todo el proyecto. Le pedimos una mano al equipo de diseño del creador de sitios web de uKit, su trabajo se utiliza como base para cientos de miles de sitios web y millones de personas lo ven. Juntos hemos compilado una lista ampliada de características a las que los profesionales prestan atención cuando desarrollan un diseño de sitio web. Y luego trató de cortarlo, dejando solo los más importantes.

Equipo de diseño de uKit.com.

Como resultado, obtuvimos una lista de verificación de 125 criterios bastante diferentes pero significativos agrupados en quince categorías. Por ejemplo, la lista tiene: adaptación a pantallas populares, una variedad de tamaños de fuente, pureza de colores, longitud de encabezados, proporción de las imágenes en toda la página, etc. Lo que queda por hacer es entrenar el modelo usando estas reglas.

Crea un algoritmo. ¿Qué es exactamente un "modelo de enseñanza"? Es la construcción de un algoritmo que se basa en un conjunto dado de características y puede evaluar el sitio web seleccionado. Es deseable que la evaluación del sistema y la evaluación promedio del maestro compartan una brecha mínima en sus evaluaciones finales.

Hemos decidido utilizar el método de aumento de gradiente sobre los árboles de decisión, porque es uno de los enfoques más populares y efectivos. Usando algoritmos básicos, construye un conjunto, cuyo resultado general excede los resultados de cualquier algoritmo separado.

Además, al agregar cada algoritmo básico posterior, trata de mejorar la calidad de las respuestas de todo el conjunto.

Para acelerar y facilitar el proceso, utilizamos la biblioteca CatBoost de Yandex, que permite construir un refuerzo basado en gradientes en los llamados "árboles de decisión ajenos", asegurando buenas capacidades de capacitación de un modelo desde el principio y una transición rápida para proporcionar predicciones (estimaciones ) para nuevos objetos.

Agregar una red neuronal. Cuando el algoritmo básico estuvo listo, decidimos realizar un experimento: ¿mejorarán los resultados si agregamos una red neuronal? En realidad, ya sabíamos cómo "mirar" un sitio web y su diseño, y ahora decidimos darle al sistema una especie de "lupa" que puede usar para revelar aún más detalles.

Elegimos una de las redes más populares, resnet50, conocida como un buen algoritmo para extraer funciones de alto nivel. Y hemos aprendido cómo obtener 1000 atributos adicionales para la evaluación del sitio web. Como resultado, el sistema ahora caracteriza una URL por el total de 1125 funciones y encuentra el "lugar" del sitio web en una escala de 10 puntos. El proceso lleva varias decenas de segundos, por eso consideramos acelerar el modelo reduciendo el número de signos y manteniendo la calidad de la evaluación en el mismo nivel.

Primeros resultados El modelo entrenado de esta manera podría hacer estimaciones 3 veces más precisas en comparación con las de los "maestros" individuales.

Podemos decir que el modelo superó a sus primeros maestros, ya que las estimaciones de los grupos focales difieren mucho más del promedio que la estimación de la red neuronal. Ahora ponemos el algoritmo en la red para capacitación adicional. Y tú también puedes convertirte en su maestro.