Knowledge based Relation Discovery in Cultural Heritage Knowledge Graphs
This paper presents a new knowledge based approach for finding serendipitous semantic relations between resources in a knowledge graph. The idea is to characterize the notion of "interesting connection" in terms of generic ontological explanation patterns that are applied to an underlying linked data repository to instantiate connections. In this way, 1) semantically uninteresting connections can be ruled out effectively, and 2) natural language explanations about the connections can be created for the end user. The idea has been implemented and tested based on a knowledge graph of biographical data extracted from the biographies of 13 000 prominent historical persons in Finland, enriched by data linking to collection databases of museums, libraries, and archives. The demonstrator is in use as part of the BiographySampo portal of interlinked biographies. 1 Research Problem and Hypothesis Semantic Web (SW) and Linked Data (LD) technologies [4] facilitate crossdisciplinary and cross organizational data integration. By representing and processing data using shared semantics, based on description and rule logics [7] SW data models and other standards, such as RDF, OWL, SKOS, and SWRL, data integration and reasoning can be applied to the data in a well defined way. This is useful for semantic data interoperability, enrichment, validation, exploration, visualization, and knowledge discovery. A promising and challenging interdisciplinary research and application area in this field has been Cultural Heritage (CH) [8] and Digital Humanities (DH) [17] Data in this domain is heterogeneous, multi topical, multi lingual, comes in large quantities, is strongly contextualized by time and place, has to be personalized for users, and is created collaboratively. These challenges can be attacked using semantic web technologies. Research Problem Within this area of research, this paper focuses on the problem of discovering serendipitous relations (a.k.a connections, associations) in semantically rich interlinked CH datasets, i.e. Knowledge Graphs (KG) 3 For this international effort, see http:/www.w3.org/standards/semanticweb/ Serendipitous knowledge discovery [1] is one of the grand promises and challenges of the Semantic Web. However, there is surprisingly little research about it. A reason for this may be that the notion of serendipity is conceptually complicated to model and measure [2] There is also the lack of high quality densely interlinked datasets, which are needed for finding novel connections in data. In particular, we focus on the problem of finding "interesting" [19] connections between the resources in a KG, such as persons, places, and other named entities. Here the query consists of two or more resources, and the task is to find semantic relations, i.e. the query results, between them that are of interest to the user. Related Works This problem has been addressed before in different domains. The approaches reported in the literature [2] differ in terms of the query formulation, underlying KG, methods for finding connections, and representation of the results. Some sources of inspiration for our paper are shortly reviewed below. In [18] the idea is applied for association finding in national security domain. Within the CH domain, CultureSampo [9, 16] contains an application perspective where connections between two persons were searched using a breath first algorithm, and the result was a list of arcs (such as student of, patron of, etc. connecting the persons based on the Getty ULAN knowledge graph of historical persons. In RelFinder [15, 6, 5] based on the earlier "DBpedia Relationship Finder" [14] the user selects two or more resources, and the result is a minimal visualized graph showing how the query resources are related with each other, e.g. how is Albert Einstein related to Kurt Godel in DBpedia/Wikipedia both gentlemen, e.g. worked at the Princeton University. In WiSP [20] several paths with a relevance measure between two resources in the WikiData KG can be found, based on different weighed shortest path algorithms. The query results are represented as graph paths. Some application such as RelFinder and Explass [3] allow filtering relations between two entities with facets. From a methodological perspective, the main challenge in these systems is how to select and rank the interesting paths, since there are exponentially many possible paths between the query resources in a KG. This problem can be approached by focusing only on "simple paths" that do not repeat nodes, on only restricted node and arc types in the graph (e.g. social connections between persons) and by assuming that shorter, possibly weighted paths are more interesting than longer ones. For weighting paths, measures such as page rank of nodes and commonness of arcs, can be used. The problem of finding interesting connections has also addressed in the field of recommender systems [11] For example, in [12] a knowledge based approach has been used to find relations between musicians and places. However, here the goal is to find recommended interesting resources related to a given resource. For 4 Serendipity means 'happy accident' or 'pleasant surprise' even 'fortunate mistake' 5 http:/www.kulttuurisampo.fi 6 http:/www.getty.edu/research/tools/vocabularies/ulan/ 7 http:/www.visualdataweb.org/relfinder.php 8 http:/wikidata.org example, if a user is interested in a movie, then other movies can be recommended based on, e.g. similarity to other movies, or on statistical collaborative filtering. Research Hypothesis The graph based works above make use of generic traversal algorithms that are application domain agnostic. In contrast, this paper suggests an alternative, knowledge based approach to finding interesting connections in a KG. The idea is to formalize the notion of "interestingness" [19] in the application domain using general explanation patterns that can be instantiated in a KG by using graph traversal queries, e.g. SPARQL. For example, the pattern "Person X created an artwork Y with place Z as a subject" can be used to find numerous instances of relation X,Y, Z between X (any person instance) Y (any book, painting, piece of music, etc. and Z (any place) sharing the same explanation and the connection type. The benefits of this approach are: 1) Non sense relations between the query resources can be ruled out effectively, and 2) the explanation patterns can be used for creating natural language explanations for the connections, not only graph paths to be interpreted by the end user. The price to be paid is the need for crafting the patterns and queries manually, based on application domain knowledge, as customary in knowledgebased system. The amount of work needed depends on the underlying knowledge graph, especially its versatility in different kind of arcs and nodes and how easily they can be generalized in the patterns. We believe that the number of ways in which resources can potentially be connected is in many cases manageable, which makes the approach feasible. In the following, a case study of applying this approach is presented in the Cultural Heritage domain by using a KG of biographical data. In conclusion, lessons learned are discussed, and further research suggested. 2 Case Study: Semantic Relations in a Biographical Knowledge Graph In historical research one is often interested to find out relations between things, such as people, say Leonardo da Vinci, and places, say Florence. Or perhaps the researcher is interested to find out about more general relations between certain types of things, such as Finnish novelists, and larger areas, such as South America. Our tool, Faceted Relator, can be used for solving such problems. Faceted Relator combines ideas of faceted search [21] and relational search. The idea is to transform a KG into a set of instances of interesting relations for faceted analysis. A relation instance has the following core properties: 1) a literal natural language expression that explains the connection in a human readable form. 2) a set of properties that explicate the resources that are connected. For example, the following illustrative example of a tertiary relation X,Y, Z connects Leonardo da Vinci to Vinci and to year 1452 based on the explanation "Person X was born in place Y in Z" for birth events: :c123 a :BirthConnection; 9 https:/www.w3.org/TR/sparql11 overview/ :explanation "Leonardo da Vinci was born in Vinci in 1452" :place :vinci; :time 1452; :person :Leonardo_da_Vinci :BirthConnection rdfs:label "Person X was born in place Y in time Z" Relation instances like this can be searched for in a natural way using faceted search, where the facets are based on the properties of the instances, that can often be organized hierarchically. In this case, there would be a facet for explanation types (such as :BirthConnection) and facets for places (in a partonomy) persons (that may be organizaed into a hierarchy based on, e.g. occupation or nationality) and times (in a partonomy) By making selections on the facet hierarchies, the result set is filtered accordingly and hit counts in facets recalculated. In this way, one could filter out with two clicks, e.g. the different ways in which artists are related to Italy. The query results would include Leonardo being born in Vinci, but also Canaletto having painted a picture that depicts Venice, and so on. The transformation of a KG into relation instances can be created dynamically/virtually while querying or in a separate preprocessing compilation phase. If the number of interesting connections to be pre computed is not too large, preprocessing makes sense since it speeds up the querying substantially and makes its easier to debug the system, because all interesting connection are explicated and can be checked. For graph transformations, SPARQL CONSTRUCT queries can be used effectively. In our demonstrator, for exampl
DHN