presentación de recomendaciones se pueden dividir en dos secciones principales:
- Extracción de características
- Recomendación
La extracción de características es muy específica para el objeto que se recomienda. Para la música, por ejemplo, algunas características del objeto pueden ser la respuesta de frecuencia de la canción, la potencia, el género, etc. Las características para los usuarios pueden ser la edad, la ubicación, etc. Luego, crea un vector para cada usuario y canción con los diversos elementos del vector correspondiente a diferentes características de interés.
Realizar la recomendación real solo requiere de vectores de funciones bien pensados. Tenga en cuenta que si no elige las funciones correctas, su motor de recomendaciones fallará. Esto sería como pedirle que me diga mi sexo según mi edad. Por supuesto, mi edad puede proporcionar un poco de información, pero creo que podrías imaginar mejores preguntas para hacer. De todos modos, una vez que tenga sus vectores de características para cada usuario y canción, tendrá que entrenar el motor de recomendación. Creo que la mejor manera de hacerlo sería conseguir que un grupo de usuarios realice su prueba demográfica y luego contarle canciones específicas que les gusten. En este punto, tiene toda la información que necesita. Su trabajo es dibujar un límite de decisión con la información que tiene. Considera un ejemplo simple. Desea predecir si a un usuario le gusta el "Regreso en negro" de AC/DC según la edad y el sexo. Imagine un gráfico que muestra 100 puntos de datos. El eje x es la edad, el eje y es el sexo (1 es masculino, 2 es femenino). Una marca negra indica que al usuario le gusta la canción, mientras que una marca roja significa que no le gusta la canción. Supongo que este gráfico podría tener muchas marcas negras correspondientes a los usuarios que son hombres y tienen entre 12 y 37 años, mientras que el resto de las marcas serán rojas. Entonces, si tuviéramos que seleccionar manualmente un límite de decisión, sería un rectángulo alrededor de esta área que contiene la mayoría de las marcas negras. Esto se llama límite de decisión porque, si una persona completamente nueva se acerca a ti y te dice su edad y sexo, solo tienes que trazarlos en el gráfico y preguntar si caen dentro de esa caja o no.
Entonces, la parte difícil aquí es encontrar el límite de decisión. La buena noticia es que no necesita saber cómo hacer eso. Solo necesita saber cómo usar algunas de las herramientas comunes. Puedes buscar el uso de redes neuronales, máquinas de vectores de soporte, clasificadores lineales, etc. Nuevamente, no dejes que los grandes nombres te engañen. La mayoría de la gente no puede decirte lo que estas cosas realmente están haciendo. Simplemente saben cómo enchufar cosas y obtener resultados.
Sé que es un poco tarde, pero espero que esto ayude a cualquiera que tropiece con este hilo.
¿Cuál es su experiencia? ¿Ya sabes cómo programar? ¿En que idioma?¿Y cuál es su enfoque? Supongo que la lógica de back-end, pero si también quiere que las páginas se vean bien es un challgenge extra ;-) –
soy estudiante cs tengo buen conocimiento c, C++, java y también C# en lado web tengo php en la base de datos intermedia mysql y un pequeño oráculo. –
Lo que necesita es algún conocimiento de ingeniería de software, como cómo obtener y analizar requisitos. Si descubres lo que realmente quieres, otra técnica ya no es un problema. –