Skip to content

Instantly share code, notes, and snippets.

@gusdelact
Created April 12, 2025 07:39
Show Gist options
  • Save gusdelact/f0206d6f06474131e59aca5e2d722c9a to your computer and use it in GitHub Desktop.
Save gusdelact/f0206d6f06474131e59aca5e2d722c9a to your computer and use it in GitHub Desktop.

Una base de datos de conocimiento basada en grafos es un tipo de base que almacena hechos, entidades, relaciones y reglas en forma de grafo semántico, permitiendo a las máquinas entender, razonar y consultar información como si fuera un mapa del conocimiento.


🧠 ¿Qué es una base de conocimiento?

Es una colección estructurada de conocimiento explícito, con información como:

  • Conceptos (ej. Persona, Ciudad, Enfermedad)
  • Relación entre ellos (ej. “viveEn”, “esCausaDe”, “trabajaPara”)
  • Reglas o inferencias (ej. “Si X vive en Ciudad Y, y Y está en País Z, entonces X está en Z”)

🔗 ¿Por qué usar grafos?

Porque el conocimiento no es tabular, es relacional.

Ejemplo:

(Ada Lovelace) —[nacióEn]→ (Londres)
(Londres) —[esCapitalDe]→ (Reino Unido)

Este formato:

  • Permite navegar relaciones de manera natural.
  • Es eficiente para hacer inferencias.
  • Soporta consultas semánticas profundas.

🛠️ ¿Con qué se construyen?

  • Neo4j (con su extensión Neosemantics)
  • RDF stores como GraphDB, Blazegraph, Apache Jena
  • Lenguajes de consulta:
    • SPARQL (para RDF)
    • Cypher (para grafos como Neo4j)
    • OWL para inferencia semántica

📚 Ejemplo real:

  • Wikidata: una base de conocimiento abierta de tipo grafo.
  • Google Knowledge Graph: usado en búsquedas para entender entidades y contextos.
  • IBM Watson Discovery: combina grafos y NLP para responder preguntas técnicas.

🔍 ¿Para qué sirve?

  • Sistemas expertos
  • Agentes inteligentes
  • Chatbots con razonamiento
  • Descubrimiento de conocimiento (KDD)
  • Navegación de relaciones complejas
  • Integración semántica de datos de múltiples fuentes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment