Cómo construí un sistema híbrido de recomendaciones con ML.NET que alcanza 87 por ciento de precisión para un marketplace de alquileres y cómo lo llevamos a producción en Q2BSTUDIO
El desafío
Al crear Goorfa, un marketplace de alquileres, el reto fue claro: ayudar a cada persona a encontrar la habitación y los compañeros ideales en un mar de anuncios. Los filtros tradicionales se quedaban cortos. Necesitábamos un motor que entendiera preferencias reales, aprendiera de las interacciones y priorizara la confianza y la seguridad. El sistema resuelve cuatro frentes clave: recomendaciones de habitaciones por presupuesto, ubicación, servicios y preferencias; matching de roommates por compatibilidad de estilo de vida y factores sociales; scoring de confianza para seguridad; y aprendizaje en tiempo real con alta disponibilidad y degradación elegante.
Arquitectura y enfoque híbrido
Implementé un motor híbrido en .NET 9 con ML.NET que combina filtrado basado en contenido, filtrado colaborativo mediante factoración de matrices, scoring de confianza y compatibilidad entre usuarios. Las solicitudes pasan por un orquestador que calcula puntuaciones parciales, las normaliza y las combina en un score híbrido, manteniendo estrategias de fallback para asegurar respuesta incluso ante fallos del modelo. Las interacciones de los usuarios alimentan el entrenamiento continuo del componente colaborativo.
Stack tecnológico
Backend con .NET 9 y ML.NET; acceso a datos con Entity Framework Core sobre SQL Server con índices optimizados; caché en memoria y Redis; frontend en Angular 17 con TypeScript y RxJS; arquitectura Clean Architecture con patrón CQRS para separación de responsabilidades y facilidad de pruebas.
Algoritmos principales y cómo los implementé
Filtrado basado en contenido: calculo similitud de atributos entre el perfil del usuario y cada habitación o roommate. La puntuación pondera variables como presupuesto y ubicación con mayor peso, y añade tipo de propiedad, servicios, tipo de habitación y disponibilidad. Para presupuesto, aplico una tolerancia del 20 por ciento fuera del rango para no penalizar en exceso ofertas cercanas.
Filtrado colaborativo con ML.NET: uso factoración de matrices para inferir afinidades a partir de señales implícitas. Definí un sistema de rating implícito donde reservar puntúa 5, contactar 4, compartir 3.5, guardar 3 y ver 2. Entreno con 20 iteraciones, rank aproximado 100 y learning rate 0.1, y almaceno el modelo en caché 24 horas para respuestas subsegundo.
Compatibilidad entre roommates: represento preferencias en vectores y aplico similitud coseno. La compatibilidad combina estilo de vida, edad, género, horarios, hobbies y orden con pesos específicos, priorizando convivencia real.
Combinación híbrida: el score final suma contenido, colaborativo, confianza, ubicación, precio y compatibilidad según el contexto. Por ejemplo, para habitaciones uso pesos que favorecen contenido y ubicación; para roommates incremento el peso de confianza y compatibilidad.
Sistema de confianza y seguridad
La seguridad es esencial en un marketplace. Diseñé un trust score multifactor con cuatro pilares y pesos: verificación 40 por ciento, valoraciones 25 por ciento, actividad 20 por ciento e historial 15 por ciento. La verificación se desglosa en email, teléfono, foto, identidad con mayor peso y un bonus para agencias, normalizando a un máximo de 1. Este score se integra en el ranking para elevar perfiles más fiables y reducir riesgo para los usuarios.
Rendimiento y fiabilidad
Caché inteligente: modelo colaborativo en caché 24 horas, trust score 6 horas e interacciones 30 minutos. Fallback de 4 niveles: si el servicio principal falla, el cliente recurre a recomendaciones por contenido, luego a items populares, después a resultados cacheados y, como último recurso, a una respuesta vacía útil y contextualizada. Optimicé con procesamiento en paralelo, prefiltrado geográfico y por disponibilidad antes del ML, pool de conexiones y ciclo de vida eficiente de modelos en memoria. Con esto, las respuestas pasaron de 2 a 5 segundos a menos de 1 segundo con alta estabilidad.
Integración en frontend
El servicio de Angular aplica timeout de 5 segundos, reintentos y gestión de modo fallback para garantizar fluidez. Se instrumenta el tracking de interacciones view, save, contact, book con timestamp para alimentar el aprendizaje continuo y mejorar la personalización con cada acción.
Métricas y resultados
Tiempo de respuesta por debajo de 1 segundo, 80 por ciento más rápido. Uptime del 99.9 por ciento gracias a la degradación controlada. Cache hit del 85 por ciento. Recuperación ante errores con fallback de 4 niveles. Engagement del 73 por ciento, 28 puntos por encima. Precisión de matching del 87 por ciento, 22 puntos de mejora, y procesos de reserva un 45 por ciento más rápidos.
Lecciones aprendidas
El enfoque híbrido es clave porque cubre más casos y mejora la precisión. El trust scoring aumenta la confianza y reduce riesgo. Las estrategias de fallback son esenciales cuando un componente de IA no está disponible. El aprendizaje en tiempo real mejora mes a mes. La optimización de rendimiento es un esfuerzo continuo que incluye caché, paralelismo y afinado de base de datos.
Próximas mejoras
En la siguiente fase añadiremos modelos de deep learning para collaborative filtering, NLP para analizar descripciones, evaluación de calidad de fotos y aprendizaje online sin downtime. A medio plazo exploraremos multi armed bandits para balancear exploración y explotación, grafos para relaciones sociales entre roommates, estacionalidad en recomendaciones y modelos de predicción de precio.
Conclusión
Llevar un motor de recomendaciones a producción va más allá del algoritmo: requiere arquitectura robusta con separación de capas, tests y monitorización, optimización para escala, seguridad del usuario con scoring de confianza, estrategias de fiabilidad y mejora continua con aprendizaje en tiempo real. El resultado no es solo mostrar anuncios, es entender lo que cada persona quiere y presentarlo con velocidad y seguridad.
Cómo lo hacemos en Q2BSTUDIO
En Q2BSTUDIO diseñamos e implantamos motores de recomendación y soluciones de inteligencia artificial de extremo a extremo para empresas, integrados con software a medida, automatización de procesos, servicios cloud en AWS y Azure, ciberseguridad y analítica avanzada con Power BI. Si buscas potenciar tu negocio con ia para empresas y agentes IA o necesitas aplicaciones a medida construidas con buenas prácticas como Clean Architecture y CI CD, nuestro equipo puede ayudarte desde la ideación hasta la operación 24x7.
Conoce más sobre nuestros servicios de inteligencia artificial en inteligencia artificial para empresas y descubre cómo abordamos proyectos de software a medida y multiplataforma en aplicaciones a medida y software a medida. También te acompañamos con ciberseguridad y pentesting, servicios cloud aws y azure, business intelligence con power bi y automatización de procesos para maximizar el ROI.
Tecnologías clave utilizadas: ML.NET, .NET 9, Angular 17, Entity Framework Core, Redis, SQL Server y principios de Clean Architecture con CQRS.
¿Has enfrentado retos al crear sistemas de recomendación? Comparte tu experiencia y mejores prácticas. Etiquetas: MachineLearning, MLNET, RecommendationEngine, DotNet, Angular, PropTech, IA, SoftwareDevelopment, aplicaciones a medida, software a medida, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, power bi, automatización de procesos