Daily Scrum — 5 de febrero de 2026

🎯 Objetivo hoy

Implementar clustering de FAQs con K-Means y FCM.


✅ ¿Qué hice ayer?

  • Comparé Frobenius vs KL-divergence para NMF.
  • Calculé coherencia UCI y UMass para diferentes valores de k.
  • Generé wordclouds y visualizaciones de tópicos.
  • Definí estructura de mapa de conceptos.

🚀 ¿Qué haré hoy?

  1. Preparación de Embeddings:
    • Obtener embeddings de las preguntas sintéticas.
    • Usar modelo de embeddings del RAG (text-embedding-3-small).
    • Normalizar embeddings para clustering.
  2. Clustering K-Means:
    • Crear scripts/math/faq_clustering.py.
    • Implementar K-Means con inicialización K-Means++.
    • Probar diferentes valores de k (3, 5, 7).
    • Aplicar Elbow Method para selección de k.
  3. Clustering FCM (Fuzzy C-Means):
    • Integrar scikit-fuzzy.
    • Implementar FCM con parámetro de fuzziness m=2.
    • Obtener grados de pertenencia por pregunta.
  4. Comparación Inicial:
    • Calcular Silhouette Score para ambos algoritmos.
    • Documentar diferencias observadas.

🚧 Obstáculos potenciales

  • Instalación de scikit-fuzzy (posibles conflictos de versión).
  • FCM puede no converger con datos muy dispersos.

✅ Criterios de aceptación

  • Script faq_clustering.py creado.
  • K-Means implementado y ejecutado.
  • FCM implementado y ejecutado.
  • Silhouette Score calculado para ambos.
  • Elbow Method aplicado y documentado.

📁 Archivos creados/modificados

Acción Archivo
NEW scripts/math/faq_clustering.py
NEW output/clustering/comparison.png
NEW output/clustering/elbow_tfidf.png
NEW output/clustering/elbow_bow.png
NEW output/clustering/fcm_membership_tfidf.png
NEW output/clustering/fcm_membership_bow.png
NEW output/clustering/results.json

📊 Resultados

Método Representación Silhouette
K-Means TF-IDF 0.1348
K-Means BoW 0.1575
FCM (m=2) TF-IDF 0.1124
FCM (m=2) BoW 0.0923
  • Punto 1 y 2: Implementación de K-Means y FCM desde cero.
  • Embeddings: Integración de nomic-embed-text via Ollama finalizada.
  • NMF: Integración de embeddings en Topic Modeling con interpretación semántica.
  • Resultados: Comparativa final completada (Embeddings Silhouette: 0.24 vs TF-IDF: 0.13).

Archivos Generados/Modificados

  • scripts/math/faq_clustering.py: Añadido soporte Ollama y robustez K-Means++.
  • scripts/math/topic_modeling.py: Añadido OllamaEmbeddings e interpretación de tópicos.
  • output/clustering/: Nuevas gráficas comparativas y heatmaps de embeddings.

🔜 Próximos pasos

  • Aplicar estos modelos de clustering para el etiquetado automático de nuevas FAQs en el chatbot.
  • Implementar visualización de tópicos 3D usando PCA/t-SNE sobre los embeddings.
  • Comparar TF-IDF vs BoW vs Embeddings