192.116 Knowledge Graphs
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2021S, VU, 2.0h, 3.0EC
TUWEL

Properties

  • Semester hours: 2.0
  • Credits: 3.0
  • Type: VU Lecture and Exercise
  • Format: Distance Learning

Learning outcomes

After successful completion of the course, students are able to demonstrate a deep understand of Knowledge Graphs.

A short "clickable" description can be found on the website:

https://kg.dbai.tuwien.ac.at/kg-course/

In TISS all details are presented linearly on one page.

Learning outcomes are divided into three main blocks:

  • Representations of Knowledge Graphs
    (logic- and ML-based)

  • Systems for Knowledge Graphs
    (scalablility and reasoning)

  • Applications of Knowledge Graphs
    (real-world enterprise AI)

An overarching aim of the course is to understand the connections between Knowledge Graphs (KGs), Artificial Intelligence (AI), Machine Learning (ML), Deep Learning and Data Science.

Learning outcomes (LOs) are structured into exactly these three blocks. A particular focus is of gaining a broad understanding of all of the following learning outcomes, coming from throughout the database, semantic web, machine learning and data science communities.

Representations

The aim in this part is to understand and apply the predominant representations of knowledge and data in Knowledge Graphs.

  • (LO1) Understand and apply Knowledge Graph Embeddings
  • (LO2) Understand and apply logical knowledge in KGs
  • (LO3) Understand and apply Graph Neural Networks
  • (LO4) Compare different Knowledge Graph data models from the database, semantic web, machine learning and data science communities.

Knowledge Graph Representations

This, crucially, includes the connections between using these types of knowledge in one Knowledge Graph.

Systems

The aim in this part is to be able to design and apply systems that manage Knowledge Graphs.

  • (LO5) Design and implement architectures of a Knowledge Graph
  • (LO6) Describe and apply scalable reasoning methods in Knowledge Graphs
  • (LO7) Apply a system to create a Knowledge Graph
  • (LO8) Apply a system to evolve a Knowledge Graph

Knowledge Graph Systems

The latter two learning outcomes (together with LO11) provide a typical life-cycle of Knowledge Graphs: getting data into a KG, i.e., creating it (LO6), evolving a KG into a new one (LO7) and getting data out of a KG by providing services based on it (L11). Note that the term “life-cycle” is used loosely here, as in many Knowledge Graphs, providing applications is not necessarily the end of the life-cycle, but part of an on-going activity.

Knowledge Graph Lifecycle

Applications

The aim of this part is to understand and design applications of Knowledge Graphs.

  • (LO9) Describe and design real-world applications of Knowledge Graphs
  • (LO10) Describe financial Knowledge Graph applications
  • (LO11) Apply a system to provide services through a Knowledge Graph
  • (LO12) Describe the connections between Knowledge Graphs (KGs), Machine Learning (ML) and Artificial Intelligence (AI)

Knowledge Graph Applications

A particular focus here is getting a holistic understanding of the topics including their connections.

Subject of course

The course content is aligned to the learning outcomes (following the seminal didactical principle of constructive alignment). We here repeat them here and give details what material is covered in each.

Representations

  • (LO1) Understand and apply Knowledge Graph Embeddings

    Knowledge Graph Embeddings (KGEs) are a large field of representations and techniques focused on a shared principle: how to represent of symbolic knowledge - as in typical databases or datasets (in our case, graphs) - in a sub-symbolic way - as in typical machine learning or deep learning scenarios (in our case, as vectors). We will cover the principles as well as selected seminal and recent KGE models such as the translation-based TransE, the semantic matching-based ComplEx, and the neural network-based ConvE.

  • (LO2) Understand and apply logical knowledge

    Logical knowledge representation is a broad traditional field of AI techniques rooted across many communities, including of course the knowledge representation and reasoning, databases, semantic web and other communities. As this aspect is covered in many courses, we will focus on (1) giving a short introduction, (2) show connections between the slightly different frameworks used by different communities and (3) focus on an aspect particularly relevant for Knowledge Graphs: how to represent logical knowledge that uses (i) full recursion - as needed by graph processing - and (ii) powerful object creation (existential quantification in logic terms) – as needed to discover unknown parts of a Knowledge Graph.

  • (LO3) Understand and apply Graph Neural Networks

    Graph Neural Networks (GNNs) are a rapidly-growing field - successfully applied in many applications – based on a very clear idea: can the structure of the graph (i.e., the symbolic world) be used as the structure of an artificial neural network (ANN) as in typical machine learning and deep learning scenarios. We will cover the principles as well as selected models. The goal is to understand how machine learning and deep learning models based on neural networks can be guided by graph data and knowledge.

  • (LO4) Compare different Knowledge Graph data models from the database, semantic web, machine learning and data science communities.

    KGEs, logical models and GNNs are ways of representing different forms of knowledge in a Knowledge Graph, and thus naturally need to talk about different data models that they are based on. In this part, we will dig deeper into different concrete data models of representing graphs and Knowledge Graphs. One particular focus will be temporal models for Knowledge Graphs. We will give brief overviews of data models from the database, Semantic Web and other communities, and will give pointers to courses that give more details on each of them.

Systems

  • (LO5) Design and implement architectures of a Knowledge Graph

    Designing an IT architecture for any complex AI applications is a challenge, typically requiring to integrate a number of technologies. In this part, we will consider different technology stacks available for Knowledge Graphs, and how to decide which capabilities should be handled by which parts of the architecture. This includes topics such as storing large Knowledge Graphs, and the border between what the Knowledge Graph should handle and what external application code should handle. As a main example, we are going to use the Vadalog system and architecture developed at the University of Oxford together with TU Wien, the Central Bank of Italy and many others. For technology stacks covered in detail by other courses, we will stay high level here and give pointers.

  • (LO6) Describe and apply scalable reasoning methods in Knowledge Graphs

    While storing Knowledge Graphs is an important endeavour in itself, using it to derive new data, insights or other output, is a central service offered by a Knowledge Graph. Typically, for simple questions this is called querying, and for more complex questions and if it requires background knowledge, reasoning. Reasoning is a broad area, and in this part, we will focus on the representations and models most important for Knowledge Graphs: reasoning with KG Embeddings, logical knowledge that allows both full recursion as well as object creation, as well as Graph Neural Networks. We will also consider what it means to reason by combining these aspects.

  • (LO7) Apply a system to create a Knowledge Graph

    In this part, we are going to look at the first part of the Knowledge Graph lifecycle, namely creation. We will give a broad overview of available techniques with some pointers for further information. For Knowledge Graphs this topic includes schema mapping – with many classical techniques stemming from the database community on data exchange and integration, and record linkage, which typically includes an ensemble of Machine Learning methods. These topics will be covered as far as needed for giving a full picture of the KG lifecycle, and connections to other courses will be highlighted.

  • (LO8) Apply a system to evolve a Knowledge Graph

    Evolving a Knowledge Graph is a broad topic, and we are going to cover a representative selection of techniques here. In general, it can be divided into two areas: (i) Knowledge Graph completion (i.e., adding to it). We will here discuss link prediction as a central method, in particular including KG Embeddings as well as logic based reasoning with full recursion and existential quantification. We are also going to discuss how to add knowledge to a KG through techniques such as rule learning or model induction. (ii) Knowledge Graph cleaning (i.e. removing parts of a KG) which can either effect the data or knowledge stored in a KG. This is of course broader, and can include topics such as schema evolution, view maintenance, etc. We will provide a broad picture and pointers for further topics covered in other courses.

Applications

  • (LO9) Describe and design real-world applications of Knowledge Graphs

    Systems and representations are central to this course, but hardly motivated without applications. We will give a broad coverage of real-world applications in many sectors, including: the finance sector, energy sector, logistics and supply chain sector, manufacturing sector, aerospace sector and many others. Our goal is to explore the actual real-world applications of Knowledge Graphs, and learn from them which parts of the broad field of KG techniques are used where, and how to use this for designing such data science and computer science applications ourselves.

  • (LO10) Describe financial Knowledge Graph applications

    We are going to dive deep into financial Knowledge Graph applications, which includes the banking sector (commercial banks), the central banking sector (i.e., national banks) and the insurance sector. All of these have connections but also different requirements that show-off particular properties of KGs quite well: while for a commercial bank a KG may be used for predicting customer needs, or in the insurance sector to ascertain credit worthiness, in a central bank the knowledge in a KG often is related to laws and regulations that need to be upheld (and checked by) central banks to protect financial systems. A typical uses case is for example helping to protect companies from hostile takeovers during crises, which we will take a deep dive into the respective real-world Knowledge Graph.

  • (LO11) Apply a system to provide services through a Knowledge Graph

    As a final step of creating and then involving a KG, we here give a glimpse into the finale step, namely services that can be provided through Knowledge Graphs. This will necessarily be just an overview, as many AI-based services today use one or more Knowledge Graphs. The typical services that information systems in general provide are in terms of general-purpose or broad analytics provided to a user, or in terms of specific queries or questions asked to a system. While we are point to a specific courses here for more details, we will give a broad overview of how to build structured query interfaces for KG queries and analytics, visualize Knowledge Graphs, build natural language query interfaces for complex KG queries and questions, and build KG-based recommender systems that use deep logic and KGE-based knowledge. In all of these, we will focus on the KG aspects, seeing how in particular a KG is used to support these services. Our goal is here not to understand visualization, recommender systems, etc. – there are specific courses for that – but to understand how an architecture that includes KGs works, and how KGs specifically help these services.

  • (LO12) Describe the connections between Knowledge Graphs (KGs), Machine Learning (ML) and Artificial Intelligence (AI)

    It is clear that Knowledge Graphs are an area of Artificial Intelligence where a number of techniques come together, and where new Machine Learning techniques such as KG Embeddings native to KGs have emergence. Arguably, it is one of the strengths of KG-based systems to allow all such techniques to come together in a well-organized architecture (some call it a “melting pot”). Yet, is all of KGs Artificial Intelligence? What about database systems and highly-scalable data processing techniques? A particularly interesting angle here are the reasoning techniques: How are traditional logic-based reasoning techniques coming together with Machine Learning-based ones? What is the connection to Neural Network-based methods, in particular those where the KG plays a central role (such as in GNNs)? These are questions we will openly consider in this part to allow everyone to not only understand the individual techniques, but how they connect to each other in KGs.

Teaching methods

To support a diversity of learners, and in line with education literature that suggests inclusive design and a diversity of methods rather than individual intervention, learning is centred around covering all LOs form multiple perspectives.

  • Lectures. This is particularly helpful to learners accessible to the "transmission" learning perspective. This is not limited to classical frontal lecturing, but includes situations where the entire class is participating in joint activities such as via virtual whiteboards (as defined by the individual session plan). Such situations are designed to address the typical challenges of frontal lecturing, in particular student engagement. This stream covers all LOs, but with a limited depth on those that require active practice.

  • Project. This is particularly helpful to learners  accessible to the "apprenticeship" learning perspective. This includes what education literature on active learning suggests on presenting "messy" real problems. Here the concept is very simple: in one consistent project, the learner goes through all LOs.

  • Project Portfolio. Again, the learner goes through all LOs, and by having to assemble a project portfolio (i.e., report highlighting the achieved results with respect to the LOs) facilitates reflecting on the own learning progress. This enables self-regulated learning.

Further details on the project portfolio can be found under "examination modalities".

Mode of examination

Immanent

Additional information

The ECTS breakdown is (from a total of 75 hours corresponding to 3.0 ECTS / 2.0h):

  • 15h Lectures
  • 5h Discussion
  • 40h Project
  • 15h Project Portfolio Preparation

Lecturers

Institute

Course dates

DayTimeDateLocationDescription
Fri10:00 - 11:0005.03.2021 Via online meeting (link will be posted on TUWEL) (LIVE)Kick-off meeting (completely optional - course can be attended fully via recordings if desired)
Fri10:00 - 11:0012.03.2021 - 25.06.2021 Via online meeting (link will be posted on TUWEL) (LIVE)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Knowledge Graphs - Single appointments
DayDateTimeLocationDescription
Fri05.03.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Kick-off meeting (completely optional - course can be attended fully via recordings if desired)
Fri12.03.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri19.03.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri26.03.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri16.04.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri23.04.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri30.04.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri07.05.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri21.05.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri28.05.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri04.06.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri11.06.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri18.06.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)
Fri25.06.202110:00 - 11:00 Via online meeting (link will be posted on TUWEL)Live discussion (completely optional - course can be attended fully via recordings if desired; expected typical duration (depending on discussion): approx. 30 mintues)

Examination modalities

Summative assessment is by one item: the project portfolio. It was already briefly mentioned in the "teaching methods" section. In particular, it:

  • gives a clear, transparent basis for the achieved marks, and puts control of demonstrating the achieved learning outcomes into one's own hands.

  • allows diversity in how to demonstrate the learning outcomes: while a typical way to demonstrate that would be a practical project portfolio, learners who are pursuing a theoretical direction will be able to demonstrate that through a theoretical project portfolio.

  • allows for self-regulated learning: while the portfolio is the single assessment item, it is the witness of a longer learning process, and can be created - using the principle of "patchwork" text - throughout the learning process, or in one block at the end, depending on the learning type.

The following is a (non-exhaustive) list of examples of what can make a good project and portfolio topic:

  • Application-oriented: Portfolio on creating a financial Knowledge Graph, based on public data in Austria combined with EU-level open data.

  • System-oriented: Portfolio on a KG used for scalable reasoning using one ML-technique and a logic-based technique.

  • Foundations-oriented: Portfolio on complexity of KG processing and reasoning in an, e.g.,  databases or ML-based KG framework.

  • State-of-the-art-oriented: Portfolio on the state-of-the-art of Graph Neural Network-based reasoning that incorporates domain knowledge for a chosen domain, and shows how the techniques could be applied.

Each portfolio will have a particular focus, but needs to put it in the context of the other learning outcomes. E.g., while not every portfolio will apply KG Embeddings based models, it should put the covered topics in the context, to demonstrate meeting the learning outcomes.

The procedure is in three simple steps:

  1. one-page summary proposing a portfolio project by the learner

  2. formative feedback on the proposal to the learner

  3. submission of the final portfolio

This will be supported by discussions and feedback throughout the course.

Grading is according to the following principles:

  • G4: Showing basic proficiency in at least 6 learning outcomes.
  • B3: Showing basic proficience in at least 10 learning outcomes.
  • U2: As above, and exceeding the threshold in at least 1 learning outcome.
  • S1: As above, and exceeding the threshold in at least 2 learning outcomes.

That is, it is not necessary for each portfolio to go beyond basic proficiency in all learning outcomes, but perfectly fine to excel in a selection of them.

 

The curricula information is currently being updated. Until this is the case we provide here the following information:

In Which Curricula is the Course?

  • E 066 931 Logic and Computation:
    Module "Knowledge Representation and Artificial Intelligence"
  • E 066 936 Medical Informatics:
    Module "Information Processing" ("Informationsverarbeitung")
  • E 066 937 Software Engineering & Internet Computing:
    Module "Information Systems" ("Informationssysteme")
  • E 066 926 Business Informatics:
    Module "ISE/EXT – Information Systems Engineering Extension"
  • E 066 645 Data Science:
    Module "VAST/EX – Visual Analytics and Semantic Technologies - Extension"

([update 23.02.2021]: now confirmed by both StuKos!)

Course registration

Begin End Deregistration end
15.02.2021 00:00 14.03.2021 23:59

Curricula

Literature

No lecture notes are available.

Miscellaneous

Language

English