Tenemos datos de 600.000 usuarios que describe si se observan de 80+ binario características. Es decir, nuestros datos son un 600.000 x 80 de la matriz binaria con perfil de usuario.
Sabemos que a partir de la inspección que algunas funciones están positivamente y negativamente correlacionados. Algunos positivo/negativo características de excluir a los demás. La mayoría de los usuarios tienen menos de 10 características positivas en sus perfiles.
Queremos recuperar el perfil de los nuevos usuarios pidiéndoles el conjunto mínimo de preguntas a partir de los 80+ potencial dada esta los datos anteriores.
La idea es dar un pequeño conjunto de preguntas (5-10) a los nuevos usuarios. Los que deben proporcionar la máxima cantidad de información con el fin de "cortar" el número de posibles preguntas siguientes. Después de que un usuario ha respondido a la primera serie de preguntas, nos gustaría pedir a un lado establece que, de nuevo, "cortar" el número de preguntas siguientes más rápido. Parece razonable tener en cuenta las respuestas positivas y negativas.
Podría usted por favor me dan algunos consejos de cómo implementar este modelo? Nos gustaría tener:
- Una manera de medir la distribución del número esperado de preguntas para cada usuario.
- Alguna manera de ajustar el "número de preguntas iniciales" siempre.
- El modelo debe ser preprocesadas con el fin de ser capaz de reaccionar rápido a la entrada del usuario.
- Si es posible, visualizar la relación entre las preguntas.
- Si es posible, ser capaz de controlar el número esperado de preguntas (supongo que por descarte correlaciones bajas).
- Si es posible, actualizar el modelo incremental el uso de los encuestados nuevos (no crítico)
Planeamos prototipo en Python y, a continuación, aplicar en .Net, pero cualquier otra sugerencia/código será bienvenida.