paint-brush
Por qué y cómo crear un motor de recomendación personalizadoby@itrex
1,328
1,328

Por qué y cómo crear un motor de recomendación personalizado

ITRex17m2023/06/13
Read on Terminal Reader

Más del 80 % de los programas que la gente mira en [Netflix](https://hackernoon.com/company/Netflix/) se descubren a través del motor de recomendación de la plataforma. En esta publicación de blog, lo guiamos a través del proceso de creación de un motor de recomendaciones y aclaramos todo lo que necesita saber antes de recurrir a los proveedores de servicios de IA.
featured image - Por qué y cómo crear un motor de recomendación personalizado
ITRex HackerNoon profile picture
0-item
1-item


Más del 80% de los programas que la gente ve en Netflix se descubren a través del motor de recomendaciones de la plataforma. Significa que la mayoría de lo que ve su ojo es el resultado de decisiones tomadas por una máquina sofisticada.


El servicio de transmisión se basa en inteligencia artificial para observar hilos matizados dentro del contenido y profundizar en las preferencias de los espectadores. Y es seguro decir: ¡el esfuerzo vale la pena!

Si todavía está atrasado pero desea mejorar la experiencia que sus clientes tienen con su negocio, siga leyendo. En esta publicación de blog, lo guiamos a través del proceso de creación de un motor de recomendaciones y aclaramos todo lo que necesita saber antes de recurrir a los proveedores de servicios de IA.


Motores de recomendación 101: cosas que debe saber antes de aventurarse en el desarrollo

Antes de analizar cómo crear un motor de recomendaciones, veamos los tipos, los casos de uso y las opciones de implementación de uno.


Los tipos de motores de recomendación

Tradicionalmente, los sistemas de recomendación se dividen en dos grandes categorías: filtrado basado en contenido y sistemas de filtrado colaborativo.

Filtrado basado en contenido

Los sistemas de filtrado basados en contenido generan recomendaciones basadas en las características o características del contenido. En otras palabras, recomiendan productos o contenidos similares a los que a un usuario le han gustado o con los que ha interactuado anteriormente. De esta manera, un motor de recomendaciones puede sugerir "Adiós a las armas" a un lector que disfrutó de "Todo tranquilo en el frente occidental" y "Catch-22".


Pero, ¿cómo sabe el motor qué elementos son similares? Veamos el enfoque de Netflix para construir un motor de recomendación para entender eso. Aunque el sistema de recomendación de Netflix es de naturaleza híbrida, se basa en gran medida en la similitud del contenido.


El servicio de transmisión tiene un equipo de etiquetadores, que miran cada nuevo contenido y lo etiquetan. Las etiquetas varían enormemente desde cuán llena de acción está la pieza hasta si está ambientada en el espacio o protagonizada por un actor en particular. El análisis de los datos de las etiquetas en comparación con el comportamiento del espectador con algoritmos de aprendizaje automático permite que la plataforma de transmisión descubra qué es realmente relevante para cada usuario.


Filtración colaborativa

Los sistemas de filtrado colaborativo hacen recomendaciones basadas en los comentarios de los usuarios . Dichos sistemas asumen que es probable que los usuarios que disfrutaron de artículos similares reaccionen de manera similar a los nuevos productos y contenidos.


Existen dos enfoques para crear un motor de recomendaciones basado en el filtrado colaborativo: basado en el usuario y basado en elementos.


Con el filtrado basado en usuarios, crea segmentos de usuarios similares con preferencias compartidas. Por lo tanto, es probable que a un usuario se le recomiende un artículo que le gustó a otros usuarios del segmento. Las características del contenido no se tienen en cuenta.


Con el filtrado basado en elementos, el motor crea recomendaciones basadas en la similitud de los elementos que le gustan a un usuario con los sugeridos. Suena similar al filtrado basado en contenido, ¿no? Aunque tanto el filtrado basado en contenido como el filtrado colaborativo basado en elementos usan la similitud de elementos para hacer recomendaciones, difieren en la forma en que determinan qué es similar.


Los sistemas de filtrado basados en contenido simplemente recomiendan elementos que son similares a los que ya le gustaron a un usuario. Con el filtrado colaborativo basado en elementos, se le recomendará un elemento que sea similar a lo que le gustó y que también sea del agrado de los usuarios de su segmento.




Los casos de uso de los motores de recomendación

Un alto grado de personalización se ha convertido en una necesidad que los usuarios esperan, lo que lleva a las empresas a enriquecer sus experiencias en línea con motores de recomendación. Los sectores donde los motores de recomendación se han vuelto bastante comunes abarcan:


  • Comercio minorista y comercio electrónico : los motores de recomendación en el comercio electrónico pueden hacer cualquier cosa, desde categorizar productos hasta sugerir nuevos artículos para que los clientes los compren. Es difícil sobrestimar el impacto generado por la implementación de un motor de recomendación en el comercio electrónico y el servicio al cliente mejorado, el marketing mejorado y las posibilidades más amplias de ventas adicionales que vienen con él. Por ejemplo, el conocido magnate del comercio electrónico, Amazon, genera el 35% de sus ingresos con la ayuda de su sistema de recomendación.


  • Medios y entretenimiento : Desde seleccionar listas de reproducción hasta ofrecer sugerencias personalizadas basadas en interacciones pasadas, los motores de recomendación ayudan a las plataformas de medios y entretenimiento a involucrar a los usuarios por más tiempo mostrándoles contenido que de otro modo no descubrirían. Las plataformas de medios y entretenimiento más grandes, como YouTube , Netflix y Spotify , dependen en gran medida de las recomendaciones personalizadas generadas por IA para atraer y retener a nuevos usuarios.


  • Redes sociales : el sector de las redes sociales también está aprovechando la tecnología para proporcionar sugerencias personalizadas. Al ayudar a los usuarios a descubrir páginas y cuentas similares, las plataformas de redes sociales alientan a sus usuarios a pasar más tiempo interactuando con el contenido, lo que impulsa las tasas de clics y aumenta los ingresos.


  • Banca y finanzas : los sistemas de recomendación basados en IA permiten a los bancos analizar las transacciones de los usuarios y aumentar las ventas para aumentar los ingresos. Por ejemplo, cuando un usuario compra un boleto de avión por un valor de $500, el motor de recomendación asume automáticamente que está volando al extranjero y sugiere que compre un paquete de viaje con seguro.



Opciones de implementación para elegir

A medida que se embarca en el viaje de creación de un motor de recomendaciones, encontrará varias opciones de implementación con sus propias ventajas y consideraciones, a saber:

Motores de recomendación plug-and-play

Los motores de recomendación plug-and-play ofrecen una forma cómoda y sencilla de incorporar recomendaciones personalizadas en su producto o plataforma. Vienen preconstruidos y están diseñados para integrarse perfectamente en su infraestructura existente.


La principal ventaja de los motores de recomendación plug-and-play radica en su simplicidad y facilidad de uso. Por lo general, están diseñados para ser fáciles de usar, lo que permite que incluso las audiencias sin conocimientos técnicos los configuren con un esfuerzo mínimo. Los ejemplos de motores de recomendación plug-and-play abarcan plataformas como Recombee, Seldon y LiftIgniter.


La desventaja de los motores de recomendación plug-and-play es la personalización y la adaptabilidad limitadas. Si bien ofrecen conveniencia y velocidad, es posible que no brinden el nivel de flexibilidad y ajuste que ofrecen las soluciones personalizadas.

Servicios de recomendación basados en la nube preentrenados

Los motores de recomendación basados en la nube permiten aprovechar los vastos recursos computacionales y la experiencia de los proveedores de servicios en la nube. Estos servicios de recomendación suelen proporcionar API fáciles de usar que permiten a los desarrolladores integrar fácilmente la funcionalidad de recomendación en sus aplicaciones.


Los motores de recomendación basados en la nube también son altamente escalables, lo que les permite manejar grandes bases de usuarios y altas cargas de tráfico. Otra ventaja es la mejora continua, ya que los proveedores de servicios actualizan y perfeccionan los modelos subyacentes.


Los principales proveedores de servicios en la nube, como Amazon Web Services, Google Cloud Platform y Microsoft Azure, ofrecen servicios de recomendación previamente capacitados.


Los factores a tener en cuenta al optar por servicios de recomendación basados en la nube preentrenados abarcan la privacidad de los datos, el bloqueo del proveedor y los requisitos de personalización. Si bien estos servicios ofrecen conveniencia y escalabilidad, pueden tener limitaciones en cuanto a la personalización de los algoritmos de recomendación para satisfacer sus necesidades comerciales específicas.

Motores de recomendación personalizados

Los motores de recomendación personalizados ofrecen el mayor grado de flexibilidad y control, lo que le permite incorporar algoritmos patentados, aprovechar el conocimiento específico del dominio y considerar los matices de sus datos. Seguir el camino personalizado le permite capturar las complejidades de las preferencias del usuario, las características de los elementos y los factores contextuales, lo que generalmente da como resultado recomendaciones más precisas y relevantes.


Sin embargo, si bien los motores de recomendación personalizados ofrecen la mayor flexibilidad, también requieren recursos de desarrollo sustanciales, experiencia en aprendizaje automático y esfuerzos continuos de mantenimiento. Por lo tanto, antes de crear un motor de recomendaciones personalizado, evalúe cuidadosamente las necesidades de su negocio, los recursos disponibles y los objetivos a largo plazo.


La regla general es seguir la ruta personalizada en los siguientes escenarios:


  • Tiene necesidades comerciales únicas : si su empresa tiene requisitos únicos que no se pueden cumplir con soluciones listas para usar, vaya a la medida. Le permitirá adaptar el algoritmo a su tarea específica. Digamos que usted es una plataforma de comercio electrónico de nicho que vende productos artesanales. Es posible que tenga requisitos distintos cuando se trata de sugerir productos: el motor de recomendaciones debe considerar factores como la rareza del producto, la artesanía y las preferencias del usuario para estilos o materiales específicos. Crear un motor de recomendaciones desde cero probablemente le permitirá generar recomendaciones que se alineen con las preferencias de los usuarios.


  • Desea control y propiedad totales : la creación de un motor de recomendaciones personalizado le brinda un control total sobre todo el proceso de generación de recomendaciones: desde el preprocesamiento de datos hasta la selección de algoritmos y el ajuste. Le permite obtener la propiedad total del sistema y adaptarlo a medida que su negocio evoluciona sin depender de soluciones de terceros.


  • Posee conocimientos específicos del dominio : si tiene experiencia en un dominio específico o acceso a datos especializados que pueden mejorar significativamente la precisión de las recomendaciones, la creación de una solución personalizada le permite aprovechar ese conocimiento de manera efectiva. Al desarrollar un motor de recomendaciones personalizado, puede incorporar características o restricciones específicas del dominio que pueden no estar disponibles en las soluciones previamente entrenadas.


  • Su aplicación requiere alta escalabilidad y rendimiento : si anticipa un volumen masivo de usuarios o elementos, tiene restricciones estrictas de latencia o necesita procesar conjuntos de datos grandes y complejos, la creación de un motor de recomendación personalizado le brinda la flexibilidad para diseñar y optimizar el sistema para obtener el máximo escalabilidad y rendimiento. Lo mismo se aplica si desea generar recomendaciones en tiempo real o casi en tiempo real.


  • Desea obtener una ventaja competitiva : si las recomendaciones precisas son un factor diferenciador central para su producto o servicio, la creación de un motor de recomendaciones personalizado puede brindarle una ventaja competitiva. Invertir en una solución a medida en este caso podría brindar la oportunidad de brindar experiencias únicas y personalizadas, mejorando el compromiso, la lealtad y la satisfacción del cliente.

Construyendo un motor de recomendación personalizado, paso a paso

Proporcionar recomendaciones personalizadas es una tarea que normalmente se resuelve con el aprendizaje automático. También se pueden utilizar redes neuronales. Sin embargo, su función se limita principalmente al preprocesamiento de datos de entrenamiento. Estos son los pasos clave en el proceso de creación de un motor de recomendación compartido por los desarrolladores de aprendizaje automático de ITRex.

Paso 1. Establecer la dirección

Inicie el desarrollo estableciendo la dirección para el resto del proyecto. Las cosas esenciales que hacer en esta etapa incluyen:


  • Establecimiento de objetivos y definición del alcance del proyecto.

Describa claramente lo que pretende lograr con un sistema de recomendaciones y compare el objetivo establecido con las limitaciones de recursos y presupuesto. Por ejemplo, si desea mejorar la participación del cliente y aumentar las ventas en su tienda en línea, puede mantener el alcance del proyecto limitado a recomendar productos a los clientes que ya han realizado una compra. Mantener el alcance bastante limitado requiere menos esfuerzo que crear un motor de recomendaciones que se dirija a todos los clientes, mientras que el potencial para generar un ROI sigue siendo bastante alto.


  • Evaluación de las fuentes de datos disponibles

El rendimiento de un sistema de recomendación depende en gran medida de los volúmenes y la calidad de los datos de entrenamiento. Antes de aventurarse en la capacitación, evalúe cuidadosamente si tiene suficientes puntos de datos para generar recomendaciones.


  • Definición de métricas de rendimiento

Uno de los desafíos clave de la creación de un motor de recomendaciones que debe tenerse en cuenta desde el principio es definir las métricas de éxito. Encuentre una forma de saber si los usuarios realmente disfrutan de las recomendaciones recién generadas antes de comenzar a entrenar los algoritmos de ML.


Paso 2. Recopilar datos de entrenamiento

El siguiente paso en el proceso de creación de un sistema de recomendación personalizado es recopilar y preparar datos para entrenar algoritmos de aprendizaje automático . Para construir un sistema de recomendaciones confiable, necesita suficientes datos sobre las preferencias del usuario.


Dependiendo del enfoque para construir un motor de recomendaciones, su enfoque cambiará. Al diseñar un sistema de filtrado colaborativo, los datos que recopila se centran en el comportamiento del usuario . Con los sistemas de filtrado basados en contenido, usted se concentra en las características del contenido que les gustan a los usuarios.


Filtración colaborativa

Los datos sobre el comportamiento del usuario pueden presentarse de diferentes formas:


  • Los comentarios explícitos del usuario son cualquier cosa que requiera que un usuario haga un esfuerzo, como escribir una reseña, indicar que le gusta un contenido o un producto, quejarse o iniciar una devolución.
  • Comentarios implícitos de los usuarios , como el historial de compras anteriores, el tiempo que un usuario dedica a mirar una determinada oferta, los hábitos de visualización/escucha, los comentarios que dejan en las redes sociales y más.


Al crear un motor de recomendaciones, recomendamos combinar comentarios explícitos e implícitos, ya que este último permite profundizar en las preferencias de los usuarios que pueden ser reacios a admitir, lo que hace que el sistema sea más preciso.



Filtrado basado en contenido

Al recopilar datos para sistemas de filtrado basados en contenido, es fundamental comprender en qué características del producto/contenido debe confiar al investigar lo que les gusta a los usuarios.


Suponga que está creando un motor de recomendación para amantes de la música. Puede confiar en el análisis de espectrogramas para comprender qué tipo de música le gusta a un usuario en particular y recomendar melodías con espectrogramas similares.


Alternativamente, puede elegir letras de canciones como base para sus recomendaciones y aconsejar canciones que traten temas similares.


La clave es probar y ajustar para comprender qué funciona mejor para usted y estar listo para mejorar continuamente el modelo inicial.


Paso 3. Limpiar y procesar los datos

Para crear un motor de recomendaciones de alto rendimiento, debe tener en cuenta los gustos cambiantes de los usuarios. Dependiendo de lo que recomiendes, es posible que las reseñas o calificaciones anteriores ya no sean relevantes.

Para evitar imprecisiones, considere mirar solo las características que probablemente representen los gustos actuales de los usuarios, elimine los datos que ya no sean relevantes y agregue más peso a las acciones recientes de los usuarios en lugar de las más antiguas.


Paso 4. Elige un algoritmo óptimo

El siguiente paso en el proceso de creación de un motor de recomendación es elegir un algoritmo de aprendizaje automático adecuado para su tarea. Los científicos de datos de ITRex recomiendan considerar los siguientes:


  • Matrix Factorization divide un gran conjunto de datos en partes más pequeñas para descubrir patrones ocultos y similitudes entre usuarios y elementos.


  • Tensor Factorization es una extensión de la factorización de matrices que puede manejar estructuras de datos de mayor dimensión llamadas tensores. Captura patrones más complejos al descomponer los tensores en factores latentes, lo que brinda una comprensión más detallada de las interacciones usuario-elemento.


  • Las máquinas de factorización son modelos poderosos que pueden manejar datos dispersos y de alta dimensión. Capturan interacciones entre funciones y se pueden aplicar a tareas de recomendación. Al considerar las interacciones de las funciones, pueden proporcionar recomendaciones precisas incluso cuando los datos están incompletos.


  • Los modelos de vecindario encuentran similitudes entre usuarios o elementos en función de los atributos o el comportamiento. Particularmente efectivos para el filtrado colaborativo, construyen conexiones entre usuarios o elementos en una red y hacen recomendaciones basadas en las preferencias de usuarios o elementos similares.


  • Random Walk es un algoritmo basado en gráficos que explora las conexiones entre elementos o usuarios en una red. Al navegar por la red, captura similitudes entre elementos o usuarios, haciendo recomendaciones basadas en las conexiones capturadas.


  • SLIM es una técnica utilizada en los sistemas de recomendación para comprender cómo se relacionan los elementos entre sí. Se enfoca en encontrar patrones en las relaciones entre elementos y usa esos patrones para hacer recomendaciones.


  • Los modelos lineales predicen las preferencias de elementos del usuario en función de las relaciones lineales entre las características. Si bien son fáciles de entender y rápidos de entrenar, es posible que no capturen patrones complejos con la misma eficacia que otros enfoques.


Además, puede elegir entre los siguientes modelos de aprendizaje profundo:


  • Los DSSM (Modelos Semánticos Estructurados Profundos) aprenden representaciones de texto o documentos. Se enfocan en capturar el significado semántico de las palabras y sus relaciones dentro de un marco estructurado.


  • Las redes convolucionales gráficas están diseñadas para datos estructurados en gráficos. Operan en gráficos, capturando relaciones e interacciones entre los nodos en el gráfico.


  • El codificador automático variacional es un modelo generativo que aprende representaciones de datos al capturar su espacio latente subyacente. Estos modelos utilizan una arquitectura de codificador-decodificador para comprimir datos en un espacio de menor dimensión y reconstruirlo.


  • Transformer es un modelo que utiliza mecanismos de autoatención para capturar relaciones contextuales entre palabras en una oración o documento.


Lo que es importante tener en cuenta es que los métodos anteriores rara vez se usan de forma aislada. En cambio, se combinan a través de las siguientes técnicas y algoritmos:


  • El ensamblaje implica entrenar múltiples modelos de forma independiente y luego combinar sus predicciones a través de varias técnicas. Cada modelo contribuye por igual a la predicción final, y la combinación suele ser sencilla y no implica entrenar modelos adicionales.


  • El apilamiento tiene un enfoque más avanzado. Implica entrenar múltiples modelos, denominados modelos base, y luego combinar sus predicciones a través de un metamodelo. Los modelos base hacen predicciones basadas en los datos de entrada y sus predicciones se convierten en las características de entrada para el metamodelo. Luego, el metamodelo se entrena para hacer la predicción final.


  • AdaBoost es un algoritmo de aprendizaje de conjunto que mejora la precisión de los modelos base entrenándolos iterativamente en diferentes subconjuntos de datos. El enfoque se centra en las instancias que son difíciles de clasificar correctamente y les presta más atención en iteraciones de entrenamiento posteriores. En cada iteración, AdaBoost asigna pesos a las instancias de entrenamiento en función de su precisión de clasificación. Luego, entrena los modelos de bajo rendimiento en los datos ponderados, donde los pesos enfatizan las instancias mal clasificadas de las iteraciones anteriores.


  • XGBoost es un método de conjunto que combina modelos de predicción débil de manera iterativa para crear un modelo más fuerte. Entrena modelos de forma secuencial, donde cada modelo subsiguiente corrige los errores cometidos por el anterior.



Paso 4. Entrenar y validar el modelo

Una vez que se haya concentrado en un algoritmo para su motor de recomendación, es hora de entrenar y validar el modelo. Así es como se ve este paso en el proceso de creación de un motor de recomendaciones:


Para empezar, debe dividir sus datos en dos conjuntos: un conjunto de entrenamiento y un conjunto de prueba. El conjunto de entrenamiento, como sugiere el nombre, le enseña a su modelo a reconocer patrones en las preferencias del usuario. El conjunto de prueba ayuda a evaluar el rendimiento del modelo en datos nuevos.


Con el conjunto de entrenamiento a mano, comience a entrenar su modelo. Esto implica exponer el algoritmo a los datos, lo que le permite aprender los patrones y relaciones subyacentes.


Después de la fase de entrenamiento, es hora de evaluar el rendimiento del modelo utilizando el conjunto de pruebas. Esto le ayudará a comprender la eficacia con la que el modelo se generaliza a nuevos datos.


Alternativamente, puede confiar en la retroalimentación en tiempo real para comprender qué tan bien se está desempeñando el modelo. De esta forma, implementa el modelo en producción y asigna las recomendaciones generadas a los comentarios de los usuarios. Luego pasa al siguiente paso, donde configura el modelo para ajustar sus parámetros a través de un proceso de aprendizaje iterativo.

Paso 5. Ajuste los hiperparámetros del modelo

Una vez que haya evaluado el rendimiento del modelo, puede ajustarlo según sea necesario. Consideremos un ejemplo de un sistema de recomendación basado en un algoritmo de filtrado colaborativo.

En el filtrado colaborativo, la cantidad de vecinos determina cuántos usuarios o elementos similares se consideran al hacer recomendaciones. Suponga que está creando un motor de recomendaciones que se basa en el filtrado colaborativo y sugiere nuevas películas. Inicialmente, establece el número de vecinos en 10, lo que significa que el modelo considera las preferencias de los 10 usuarios más similares al generar recomendaciones.


Después de evaluar el rendimiento del modelo, descubre que la precisión de las recomendaciones es inferior a la deseada. Para mejorar eso, decide ajustar el modelo ajustando el número de vecinos.


Para explorar el impacto de diferentes tamaños de vecinos, puede realizar experimentos con valores de rango. Por ejemplo, reducir el número de vecinos a 5 puede conducir a un aumento significativo de la precisión. Sin embargo, es posible que observe una ligera disminución en el retiro, lo que indica que el modelo no incluye algunas recomendaciones relevantes. Aumentar el número 20, a su vez, puede conducir a una ligera mejora en el recuerdo, pero las sugerencias pueden volverse menos personalizadas.


La clave es conformarse con un compromiso entre precisión y recuperación y lograr un equilibrio entre capturar las diversas preferencias de los usuarios y mantener recomendaciones precisas.


Paso 6. Implementar, monitorear y actualizar el modelo

Con el modelo preparado y listo para rodar, es hora de implementarlo.


Para garantizar una implementación exitosa, considere la forma más efectiva de incorporar el modelo a su infraestructura existente. Por ejemplo, puede incrustar el modelo en el back-end de su sitio web, asegurándose de que interactúe sin problemas con la interfaz de usuario. Esta integración permite recomendaciones en tiempo real que se adaptan dinámicamente a las preferencias de los usuarios.


Alternativamente, puede implementar el modelo como un servicio, como una API de motor de recomendaciones, que otros componentes de su aplicación pueden utilizar fácilmente. Este enfoque orientado al servicio garantiza flexibilidad y escalabilidad, lo que permite que su aplicación aproveche las capacidades del motor de recomendaciones sin esfuerzo.


La fase de implementación también es un buen momento para considerar cómo se presentarán las recomendaciones a los usuarios. ¿Se mostrarán como sugerencias personalizadas en la página de inicio de un sitio web, claramente categorizadas en una interfaz intuitiva? ¿O se integrarán a la perfección en la interfaz de la aplicación y aparecerán en el momento justo para sorprender a los usuarios? La elección es suya, pero mantenga siempre la experiencia del usuario a la vanguardia.


Finalmente, es crucial probar rigurosamente el modelo implementado para garantizar su funcionalidad perfecta. Ejecute pruebas exhaustivas para validar su rendimiento y comportamiento en varias interacciones de usuarios, para garantizar que las recomendaciones sean precisas, oportunas y estén alineadas con las expectativas de los usuarios.


Los desafíos de construir un motor de recomendaciones y cómo resolverlos

Comprender los desafíos de construir un motor de recomendaciones es crucial para ofrecer recomendaciones personalizadas y relevantes. He aquí un resumen de los más comunes:

Desafío 1. Medir el éxito

Uno de los desafíos clave de la creación de un motor de recomendaciones que debe tenerse en cuenta desde el principio es definir las métricas de éxito. En otras palabras, antes de comenzar a recopilar datos y entrenar algoritmos de ML, debe encontrar una forma confiable de saber si los usuarios realmente disfrutan de las recomendaciones recién generadas. Esto guiará su proceso de desarrollo.

Digamos que eres una plataforma de transmisión. Puede contar la cantidad de Me gusta o suscripciones pagas mensuales para medir qué tan bien está funcionando su motor de recomendación. Sin embargo, es probable que sus recomendaciones sean correctas, mientras que los usuarios son reacios a indicar explícitamente sus preferencias o pagar por el servicio.


La experiencia de nuestros científicos de datos muestra que el comportamiento del usuario es una forma más confiable de medir el rendimiento del sistema de recomendación. No dudaríamos de que un usuario haya disfrutado de un programa si lo vio en exceso en una noche, incluso sin recibir comentarios explícitos.

Desafío 2. La maldición de la dimensionalidad

La dimensionalidad de los datos se refiere a la cantidad de características en un conjunto de datos. Más funciones de entrada a menudo hacen que sea más difícil crear un motor de recomendaciones preciso. Tomemos YouTube como ejemplo. En la plataforma coexisten miles de millones de videos y usuarios, y cada usuario busca recomendaciones personalizadas. Sin embargo, los recursos humanos y computacionales son limitados, y casi nadie quiere pasar horas esperando que se carguen las recomendaciones.


Para abordar este desafío, se necesita un paso adicional, la generación de candidatos, antes de lanzar el algoritmo de recomendación. Este paso permite reducir miles de millones de videos a, digamos, decenas de miles. Y este grupo más pequeño se utiliza luego para generar recomendaciones.


Se utilizan varias estrategias, siendo la búsqueda del vecino más cercano la más destacada, para la generación de candidatos. Otras prácticas comunes para superar el problema de la dimensionalidad incluyen explorar categorías populares o preferencias compartidas entre personas de grupos de edad similares.


Reto 3. El comienzo en frío

Otro problema común en el proceso de creación de un motor de recomendaciones, el enigma del arranque en frío, surge cuando el sistema carece de información suficiente sobre un usuario o un elemento, lo que dificulta proporcionar recomendaciones precisas. Superar este obstáculo implica emplear métodos como el filtrado colaborativo, el filtrado basado en contenido o enfoques híbridos.


Reto 4. La cola larga

Los sistemas de recomendación pueden sufrir un fenómeno conocido como "cola larga". Esto significa que los artículos populares reciben más atención y recomendaciones, mientras que los menos populares pasan desapercibidos para los usuarios. Abordar este problema requiere generar recomendaciones personalizadas y tener en cuenta las preferencias individuales de los usuarios.


Desafío 5. El arranque en frío de las novedades

Cuando se agrega un nuevo elemento al sistema, tiene poca o ninguna información histórica para generar recomendaciones, lo que dificulta la creación de sugerencias relevantes. Un enfoque para abordar este problema es usar filtros de contenido e involucrar activamente a los usuarios para que interactúen con nuevos elementos a través de promociones o anuncios.


Reto 6. El arranque en frío para nuevos usuarios

Del mismo modo, es posible que los nuevos usuarios no tengan suficientes datos históricos para obtener recomendaciones precisas. Para superar este desafío, se pueden emplear métodos como el filtrado basado en contenido, las solicitudes de comentarios y las encuestas iniciales de usuarios.


Desafío 7. Escasez de datos

En los sistemas de recomendación, la escasez de datos es una ocurrencia común donde muchos usuarios califican o interactúan con una pequeña cantidad de elementos. Esto plantea un desafío en la predicción de las preferencias del usuario. Para abordar este problema, se pueden utilizar métodos de factorización de matrices que incorporen reducción de dimensionalidad, regularización y otras técnicas.


En resumen

La creación de un motor de recomendaciones es un viaje impulsado por algoritmos, información de los usuarios y refinamiento iterativo. Desde la definición del problema hasta la selección del enfoque correcto a través del preprocesamiento meticuloso de datos para el entrenamiento del modelo, cada paso contribuye a la creación de un poderoso sistema de recomendaciones.


La capacidad de un motor de recomendaciones para comprender las preferencias de los usuarios y ofrecer recomendaciones personalizadas puede tener un enorme potencial para su empresa. Amazon, YouTube, Spotify y muchas otras empresas menos conocidas, pero no menos exitosas, revolucionaron sus productos y, posteriormente, aumentaron los ingresos con recomendaciones personalizadas.


Por ejemplo, Spotify, una plataforma de transmisión de música que se basa en recomendaciones altamente personalizadas como factor diferenciador clave, continúa aumentando su base de usuarios e ingresos cada año. Solo en el cuarto trimestre de 2022, la promesa de descubrir una nueva canción favorita ha traído a la plataforma un 20% más de usuarios activos mensuales , lo que resulta en 33 millones de adiciones netas.

Si todavía está atrasado, es hora de aprovechar el poder de la IA y revolucionar su experiencia de usuario con un motor de recomendación personalizado.


¿Busca mejorar su solución con un potente motor de recomendaciones? Hable con los consultores de ITRex .


También publicado aquí.