Exploiting Semantic Web Knowledge Graphs in Data Mining
Total Page:16
File Type:pdf, Size:1020Kb
Exploiting Semantic Web Knowledge Graphs in Data Mining Inauguraldissertation zur Erlangung des akademischen Grades eines Doktors der Naturwissenschaften der Universit¨atMannheim presented by Petar Ristoski Mannheim, 2017 ii Dekan: Dr. Bernd Lübcke, Universität Mannheim Referent: Professor Dr. Heiko Paulheim, Universität Mannheim Korreferent: Professor Dr. Simone Paolo Ponzetto, Universität Mannheim Tag der mündlichen Prüfung: 15 Januar 2018 Abstract Data Mining and Knowledge Discovery in Databases (KDD) is a research field concerned with deriving higher-level insights from data. The tasks performed in that field are knowledge intensive and can often benefit from using additional knowledge from various sources. Therefore, many approaches have been proposed in this area that combine Semantic Web data with the data mining and knowledge discovery process. Semantic Web knowledge graphs are a backbone of many in- formation systems that require access to structured knowledge. Such knowledge graphs contain factual knowledge about real word entities and the relations be- tween them, which can be utilized in various natural language processing, infor- mation retrieval, and any data mining applications. Following the principles of the Semantic Web, Semantic Web knowledge graphs are publicly available as Linked Open Data. Linked Open Data is an open, interlinked collection of datasets in machine-interpretable form, covering most of the real world domains. In this thesis, we investigate the hypothesis if Semantic Web knowledge graphs can be exploited as background knowledge in different steps of the knowledge discovery process, and different data mining tasks. More precisely, we aim to show that Semantic Web knowledge graphs can be utilized for generating valuable data mining features that can be used in various data mining tasks. Identifying, collecting and integrating useful background knowledge for a given data mining application can be a tedious and time consuming task. Furthermore, most data mining tools require features in propositional form, i.e., binary, nominal or numerical features associated with an instance, while Linked Open Data sources are usually graphs by nature. Therefore, in Part I, we evaluate unsupervised fea- ture generation strategies from types and relations in knowledge graphs, which are used in different data mining tasks, i.e., classification, regression, and outlier de- tection. As the number of generated features grows rapidly with the number of instances in the dataset, we provide a strategy for feature selection in hierarchical feature space, in order to select only the most informative and most representa- tive features for a given dataset. Furthermore, we provide an end-to-end tool for mining the Web of Linked Data, which provides functionalities for each step of the knowledge discovery process, i.e., linking local data to a Semantic Web knowledge graph, integrating features from multiple knowledge graphs, feature generation and selection, and building machine learning models. However, we show that such fea- ture generation strategies often lead to high dimensional feature vectors even after iii iv dimensionality reduction, and also, the reusability of such feature vectors across different datasets is limited. In Part II, we propose an approach that circumvents the shortcomings intro- duced with the approaches in Part I. More precisely, we develop an approach that is able to embed complete Semantic Web knowledge graphs in a low dimensional feature space, where each entity and relation in the knowledge graph is represented as a numerical vector. Projecting such latent representations of entities into a lower dimensional feature space shows that semantically similar entities appear closer to each other. We use several Semantic Web knowledge graphs to show that such latent representation of entities have high relevance for different data mining tasks. Furthermore, we show that such features can be easily reused for different datasets and different tasks. In Part III, we describe a list of applications that exploit Semantic Web knowl- edge graphs, besides the standard data mining tasks, like classification and regres- sion. We show that the approaches developed in Part I and Part II can be used in applications in various domains. More precisely, we show that Semantic Web graphs can be exploited for analyzing statistics, building recommender systems, entity and document modeling, and taxonomy induction. Zusammenfassung Data Mining und Knowledge Discovery in Databases (KDD) ist ein Forschungs- bereich, der sich mit dem Extrahieren von Informationen und Fakten aus Daten beschäftigt. Aufgaben aus diesem Feld der Forschung benötigen viel Wissen und profitieren oft von Wissen aus verschiedenen Quellen. Daher wurden in diesem Bereich schon viele Ansätze vorgeschlagen, die Daten aus dem Semantic Web mit Data Mining und Knowledge Discovery Prozessen kombinieren. Semantic Web Knowledge Graphs sind dabei oft die Technologien, auf die viele Informationssys- teme, welche Zugang zu strukturierten Daten benötigen, zurückgreifen. Solche Knowledge Graphs beinhalten Informationen und Fakten über Entitäten aus der realen Welt und ihre Beziehungen zueinander. Diese Informationen können von verschiedenen Natural Language Processing, Information Retrieval und Data Min- ing Applikationen genutzt werden. Nach dem Prinzip von Semantic Web, sind auch Semantic Web Knowledge Graphs in Form von Linked Open Data öffentlich verfügbar. Linked Open Data ist hierbei eine Sammlung von öffentlich verfüg- baren Datensätzen aus verschiedenen Domänen, die miteinander verknüpft sind und in maschinenlesbarer Form vorliegen. In dieser Dissertation beschäftigen wir uns mit der Hypothese, ob Hintergrund- informationen aus Semantic Web Knowledge Graphs sowohl in verschiedenen Schrit- ten der Knowledge Discovery als auch in Bereichen des Data Mining genutzt wer- den können. Hierbei wollen wir vor allem zeigen, dass markante Data Mining Features aus Semantic Web Knowledge Graphs in einer Reihe von Data Mining Aufgaben hilfreich sind. Das Identifizieren, Sammeln und Integrieren von nützlichen Hintergrundinfor- mationen für eine gegebene Data Mining Anwendung ist oftmals sehr aufwendig und zeitintensiv. Zudem benötigen viele Data Mining Applikationen die Feature in Aussagenform (z.B. binäre, nominale oder nummerische Feature die zu einer Instanz gehören), wohingegen Linked Open Data Datensätze meist in Form eines Graphen vorliegt. Daher evaluieren wir in Teil I verschiedene unüberwachte An- sätze um Features aus Relationen im Knowledge Graphs zu extrahieren. Diese werden für Aufgaben aus dem Data Mining wie Klassifizierung, Regression und Erkennung von Ausreißern benutzt. Hierbei wächst die Anzahl der Feature stark mit der Anzahl der Instanzen im Datensatz, weswegen wir einen Ansatz für die Se- lektion von Features in einem hierarchischen Feature Space präsentieren, der die informativsten und repräsentativsten Features aus einem gegebenen Datensatz aus- v vi sucht. In diesem Zusammenhang stellen wir unsere End-to-end Anwendung, die Data Mining auf dem Netz von Linked Data ermöglicht, zur Verfügung. Diese un- terstützt sowohl alle Schritte der Knowledge Discovery (das Vernetzen von lokalen Daten mit Daten aus dem Semantic Knowledge Graphs, die Integration von Fea- tures aus verschiedenen Graphen und die Generierung und Selektion von Features), als auch die Erzeugung von Modellen aus dem Machine Learning. Allerdings zeigen wir auch, dass unser Ansatz selbst nach der Reduktion der Feature immer noch eine sehr hohe Dimensionalität aufweist und zudem Feature Vektoren aus einem solchen Modell sich schwer auf andere Datensätze anwenden lassen. Im zweiten Teil stellen wir einen weiteren Ansatz vor, der die Probleme aus dem Ansatz in Teil I umgeht. Wir haben eine Methode entwickelt, die es er- möglicht ganze Semantic Web Knowledge Graphs in einen Feature Space mit geringer Dimensionalität zu transformieren. Dabei wird jede Entität und Rela- tion als numerischer Wert in einem Vektor repräsentiert. Nach der Projektion in einen solchen Vektorraum ist zu sehen, dass Entitäten, die sich semantisch ähnlich sind, auch nah beieinander im Vektorraum abgebildet werden. Hierbei haben wir mehrere Semantic Web Knowledge Graphs getestet, um zu zeigen, dass eine solche Darstellung der Entitäten vorteilhaft für verschiedene Data Mining Aufgaben ist. Außerdem können wir zeigen, dass solche Features auch auf anderen Datensätzen für andere Aufgaben genutzt werden können. Im dritten Teil beschreiben wir eine Liste von Anwendungen, die Semantic Web Knowledge Graphs benutzen und dabei über Standardaufgaben des Data Min- ing wie Klassifizierung und Regression hinausgehen. Hierbei zeigen wir, dass die Ansätze aus Teil I und II in Anwendungen aus verschiedenen Domänen be- nutzt werden können. Speziell gehen wir dabei auf die Nutzung von Seman- tic Web Knowledge Graphs in der Analyse von Statistiken, zum Entwickeln von Empfehlungsdiensten, der Modellierung von Entitäten und Dokumenten und der Induktion von Taxonomien. Contents 1 Introduction 1 1.1 Research Questions . .5 1.2 Contributions . .6 1.3 Structure . .6 2 Fundamentals 9 2.1 Semantic Web Knowledge Graphs . .9 2.1.1 Linked Open Data . 10 2.2 Data Mining and The Knowledge Discovery Process . 11 2.3 Semantic Web Knowledge Graphs in Data Mining and Knowledge Discovery . 13 3 Related Work 16 3.1 Selection . 17 3.1.1 Using LOD to interpret relational databases . 18 3.1.2 Using LOD to interpret semi-structured data . 19 3.1.3 Using LOD to interpret