Cómo construí un motor de recomendaciones híbrido con 87 por ciento de precisión para una plataforma de alquileres
Contenido: El reto, Arquitectura, Algoritmos e implementación, Sistema de confianza, Rendimiento y fiabilidad, Integración frontend, Resultados y métricas, Ejemplos de código, Lecciones aprendidas, Mejoras futuras, Conclusión
El reto
Al crear Goorfa, una plataforma de marketplace de alquiler, el desafío era claro: cómo ayudar a cada usuario a encontrar la habitación ideal y al compañero de piso más compatible entre cientos de opciones. El filtrado tradicional por precio y ubicación se quedaba corto. Necesitábamos recomendaciones inteligentes, personalizadas, capaces de interpretar preferencias y predecir lo que realmente gustaría.
La plataforma debía resolver recomendaciones de habitaciones según presupuesto, zona, servicios y preferencias; emparejamiento de roommates contemplando estilo de vida, compatibilidad, rangos de edad y factores sociales; un sistema de confianza para seguridad y fiabilidad; aprendizaje en tiempo real desde interacciones; y alta disponibilidad con degradación elegante.
Arquitectura en alto nivel
Implementé un sistema de recomendación híbrido con ML.NET que combina filtrado basado en contenido, filtrado colaborativo por factorización de matrices, puntuación de confianza y compatibilidad. Un combinador de puntuaciones agrega los resultados y un sistema de fallback de cuatro niveles garantiza respuesta incluso ante fallos. Las interacciones de usuario alimentan el entrenamiento periódico del modelo colaborativo.
Tecnologías: Backend con NET 9, ML.NET y Entity Framework Core; Frontend con Angular 17, TypeScript y RxJS; base de datos SQL Server con índices optimizados; caché en memoria y Redis; arquitectura limpia con CQRS.
Algoritmos y detalles de implementación
Filtrado basado en contenido
Calculamos una puntuación de afinidad entre usuario y habitación o usuario y usuario, a partir de atributos normalizados y pesados: presupuesto, ubicación, tipo de propiedad y de habitación, amenities y disponibilidad. El resultado se integra con el trust score y otras señales para un score global.
Fórmulas clave
ContentScore igual a presupuesto por 0.25 más ubicación por 0.25 más tipo de propiedad por 0.15 más amenidades por 0.15 más tipo de habitación por 0.10 más disponibilidad por 0.10.
El cálculo de presupuesto devuelve coincidencia perfecta si el precio de la habitación cae dentro de los rangos del usuario; en caso contrario aplica una tolerancia de 20 por ciento proporcional a la desviación para producir una puntuación entre 0 y 1.
Compatibilidad de roommates
CompatibilityScore igual a estilo de vida por 0.30 más edad por 0.20 más género por 0.15 más horarios por 0.15 más hobbies por 0.10 más limpieza por 0.10.
Filtrado colaborativo con ML.NET
Entrenamos un modelo de factorización de matrices con columnas de usuario y filas de habitación, etiqueta de valoración y opciones como iteraciones 20, rango 100 y tasa de aprendizaje 0.1. El modelo se actualiza de forma programada y se cachea 24 horas.
Esquema de valoración implícita
Reservar igual a 5.0, contactar igual a 4.0, guardar igual a 3.0, compartir igual a 3.5, visualizar igual a 2.0. Estas señales ponderan la preferencia real sin pedir rating explícito.
Similitud coseno para matching de usuarios
Para emparejar roommates, vectorizamos atributos y calculamos similitud coseno entre perfiles. Un score cercano a 1 indica alta afinidad.
Sistema de puntuación de confianza
La seguridad del usuario es esencial. Diseñé un trust score multifactor con cuatro componentes ponderados: verificación 40 por ciento, reputación 25 por ciento, actividad 20 por ciento e historial 15 por ciento. El resultado es un score global entre 0 y 1 que se integra en el ranking de recomendaciones.
Factores de verificación
Verificación de email suma 0.25, teléfono 0.20, foto 0.20, identidad 0.30 y verificación de agencia añade un bonus 0.05. La suma se acota a 1. Estos factores elevan la calidad de los resultados y la confianza en el marketplace.
Rendimiento y fiabilidad
Estrategia de caché inteligente con expiraciones diferenciadas: modelo colaborativo 24 horas, trust score 6 horas, interacciones 30 minutos. Se emplean invalidaciones selectivas cuando cambian datos críticos.
Sistema de fallback en 4 niveles
Ante un fallo del servicio principal se activa contenido basado en reglas y contenido, luego ítems populares, luego resultados cacheados y, como último recurso, una respuesta vacía guiada con mensajes útiles. Así alcanzamos 99.9 por ciento de disponibilidad efectiva.
Optimizaciones
Procesamiento en paralelo para calcular múltiples candidatos, prefiltrado geográfico y de disponibilidad antes del ML, pool de conexiones y un ciclo de vida eficiente de modelos en memoria.
Integración en frontend
Un servicio de recomendaciones en Angular aplica timeout de 5 segundos, reintentos y activa automáticamente el modo fallback cuando hay errores o latencias. También rastrea interacciones de usuario en tiempo real para alimentar el sistema con señales implícitas.
Resultados y métricas
Tiempo de respuesta bajó de 2 a 5 segundos a menos de 1 segundo, una mejora del 80 por ciento. Uptime subió de 95 a 99.9 por ciento. La tasa de aciertos de caché alcanzó 85 por ciento. De una recuperación de errores básica pasamos a un sistema de 4 niveles. El engagement de usuario creció de 45 a 73 por ciento y la precisión de matching llegó al 87 por ciento desde 65 por ciento.
Impacto de negocio
Una precisión del 87 por ciento logra coincidencias altamente relevantes. El aumento del 73 por ciento en interacción impulsa conversiones. El proceso de reserva es 45 por ciento más rápido. La confianza de los usuarios se eleva gracias a la verificación avanzada y la puntuación de confianza.
Ejemplos y configuraciones representativas
Peso de señales para ranking de habitaciones: contenido 0.35, colaborativo 0.25, confianza 0.15, ubicación 0.15 y precio 0.10. Para roommates: contenido 0.20, colaborativo 0.20, confianza 0.25, ubicación 0.10, precio 0.05 y compatibilidad 0.20.
Un endpoint GET de recomendaciones acepta parámetros de usuario, tipo de recomendación, límites para habitaciones y roommates, y flags para incluir detalle de puntuaciones y razones. El controlador envía una query con Mediator y retorna una respuesta tipada y cacheable.
Lecciones aprendidas
El enfoque híbrido es clave porque ningún algoritmo único cubre todos los casos. El trust score es crítico en marketplaces para elevar seguridad y conversión. Las estrategias de fallback son esenciales porque los servicios de ML pueden fallar. El aprendizaje en tiempo real mejora el sistema de forma continua. Rendimiento y optimización son trabajos permanentes donde caché, paralelismo y base de datos marcan la diferencia.
Mejoras futuras
Próximos 3 meses: modelos de aprendizaje profundo con filtrado colaborativo neuronal, análisis NLP de descripciones, evaluación de calidad de fotos y aprendizaje online sin interrupciones. Próximos 6 meses: multiarmed bandits para explorar y explotar, redes neuronales de grafos para análisis social, recomendaciones estacionales y predicción de precios para consejería dinámica.
Conclusión
Construir un motor de recomendaciones listo para producción es mucho más que programar algoritmos. Requiere una arquitectura robusta, pruebas y monitorización, optimización de rendimiento, seguridad del usuario con puntuación de confianza, fiabilidad mediante fallback y mejora continua basada en señales en vivo. El resultado no solo muestra listados: entiende al usuario y le guía a decisiones más rápidas y seguras. Tecnologías clave usadas: ML.NET, NET 9, Angular 17, Entity Framework Core y principios de Clean Architecture. El sistema entrega miles de recomendaciones diarias con 99.9 por ciento de disponibilidad y 87 por ciento de precisión, combinando lo mejor del contenido, lo colaborativo y la confianza.
Sobre Q2BSTUDIO
En Q2BSTUDIO ayudamos a compañías a construir motores de recomendación, aplicaciones a medida y software a medida listos para producción, integrados con servicios cloud aws y azure, ciberseguridad, servicios inteligencia de negocio y power bi, así como automatización de procesos, agentes IA e ia para empresas. Si buscas un partner para potenciar tus productos con inteligencia artificial, descubre cómo nuestra inteligencia artificial para empresas acelera resultados reales. Y si necesitas una plataforma sólida y escalable, explora nuestro desarrollo de aplicaciones a medida.
Etiquetas: Machine Learning, ML.NET, Motor de Recomendaciones, NET, Angular, PropTech, IA, Software Development, aplicaciones a medida, software a medida, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, agentes IA, power bi, automatización de procesos, ia para empresas