This course provides a comprehensive and accessible introduction to knowledge graphs, which have recently garnered notable attention from both industry and academia. Knowledge graphs are founded on the principle of applying a graph-based abstraction to data, and are now broadly deployed in scenarios that require using data management techniques for integrating and extracting value from multiple, diverse sources of data at large scale. In this course we define knowledge graphs and provide a high-level overview of how they are used. We present and contrast popular graph models that are commonly used to represent data as graphs, and the languages by which they can be queried before describing how the resulting data graph can be enhanced with notions of schema, identity, and context. We will further discusses how ontologies and rules can be used to encode knowledge as well as how inductive techniques based on statistics, graph analytics, etc. can be used to encode and extract knowledge. It covers techniques for the creation, enrichment, assessment, and refinement of knowledge graphs and surveys recent open and enterprise knowledge graphs and the industries or applications within which they have been most widely adopted. This course closes by discussing the current limitations and future directions along which knowledge graphs are likely to evolve. To make the course accessible for newcomers, running examples and graphical notation are used throughout. Formal definitions and extensive references are also provided for those who opt to delve more deeply into specific topics.
To be defined
5 hours
To be defined