Wat is een Knowledge Graph
Een knowledge graph vertegenwoordigt een verzameling onderling verbonden beschrijvingen van entiteiten - real-world objecten, gebeurtenissen, situaties of abstracte concepten. Om deze abstracte definitie te illusteren hier een diagram van een knowledge graph [1] van boeken en hun auteurs.
© Enterprise Knowledge LLC
In een dergelijk model hebben de beschrijvingen een formele structuur, waardoor zowel mensen als computers ze op een efficiënte en ondubbelzinnige manier kunnen verwerken. De Entiteitsbeschrijvingen dragen bij aan elkaar en vormen een netwerk, waarbij elke entiteit een deel vertegenwoordigt van de beschrijving van de entiteiten die daarmee verband houden. b.v. Oscar Wilde was geboren in Ierland.
In de context van Smart Cities, deze knowledge graph is geordend volgens naar de relevante domeinen (bv. luchtkwaliteit), en specifieke relevante entiteiten (bv. locatie, PM10 waarde)
Sleuteleigenschappen
Een knowledge graph combineert kenmerken van verschillende gegevens paradigma's en kunnen worden begrepen als een:
- Database, omdat de gegevens kunnen worden opgevraagd via gestructureerde zoekopdrachten;
- Graaf[2], omdat het kan worden geanalyseerd als elke andere netwerkgegevensstructuur;
- Kennisbank, omdat de gegevens erin een formele betekenis(semantiek) hebben, die kan worden gebruikt om de gegevens te interpreteren en nieuwe feiten af te leiden.
Wanneer formele semantiek wordt gebruikt om de gegevens van een knowledge graph uit te drukken en te interpreteren, zijn er een aantal representatie- en modelleerinstrumenten:
Klassen
Meestal bevat een entiteitsbeschrijving een classificatie van de entiteit met betrekking tot een klassehiërarchie. Bij algemene nieuws- of bedrijfsinformatie kunnen er bijvoorbeeld klassen Persoon, Organisatie en Locatie zijn. Personen en Organisaties kunnen een gemeenschappelijke superklasse Agent hebben. Locatie heeft meestal tal van subklassen, b.v. Land, bevolkte plaats, stad, enz. Het begrip klasse wordt ontleend aan het objectgeoriënteerde ontwerp, waarbij elke entiteit tot precies één klasse behoort te behoren.
Relaties
De relaties tussen entiteiten zijn meestal gekenmerkt met typen, die informatie geven over de aard van de relatie, b.v. vriend, familielid, concurrent, etc. Relatietypen kunnen ook formele definities hebben, b.v. dat ouder-van een omgekeerde relatie is van kind-van, het zijn beide speciale gevallen van familielid van, wat een symmetrische relatie is.
Categorieën
Een entiteit kan worden geassocieerd met categorieën, die een bepaald aspect van zijn semantiek beschrijven, b.v. “Openbaar Vervoer” of “19e eeuwse componisten”. Een boek kan tegelijkertijd tot al deze categorieën behoren: "Boeken over Afrika", "Bestseller", "Boeken van Italiaanse auteurs", "Boeken voor kinderen", enz. Vaak worden de categorieën beschreven en gerangschikt in een hierarchische ordening(taxonomie)
Vrije tekst
Het is mogelijk ‘mensvriendelijke tekst’ toe te voegen om de intenties voor de entiteit verder te verduidelijken en het zoeken te verbeteren.
Ontologieën
Een Ontologie kan beschouwd worden als de abstracte definitie van een knowledge graph, op basis van dewelke nieuwe knowledge graphs kunnen aangemaakt worden. Het dient als een formele definitie tussen de ontwikkelaars van de knowledge graph en zijn gebruikers. Een gebruiker kan een ander mens zijn of een softwaretoepassing die de gegevens op een betrouwbare en nauwkeurige manier wil gebruiken. Het zorgt voor een gedeeld begrip van de gegevens en de betekenis ervan. In het bovenstaande voorbeeld kan de ontologie als volgt worden gedefinieerd
© Enterprise Knowledge LLC