Difference between revisions of "Readings"
(213 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | = | + | =Textbooks= |
− | + | ||
+ | Main course book (''the whole book is mandatory reading''): | ||
+ | * Dean Allemang, James Hendler & Fabien Gandon (2020). '''Semantic Web for the Working Ontologist, Effective Modeling for Linked Data, RDFS and OWL (Third Edition).''' ISBN: 9781450376143, PDF ISBN: 9781450376150, Hardcover ISBN: 9781450376174, DOI: 10.1145/3382097. | ||
+ | |||
+ | Supplementary text book (''not'' mandatory): | ||
+ | * Andreas Blumauer and Helmut Nagy (2020). '''The Knowledge Graph Cookbook - Recipes that Work.''' mono/monochrom. ISBN-10: 3902796707, ISBN-13: 978-3902796707. | ||
=Other materials= | =Other materials= | ||
− | |||
− | + | In addition, '''the materials listed below for each lecture are either mandatory or suggested reading'''. More materials will be added to each lecture in the coming weeks. | |
+ | |||
+ | '''The lectures and lectures notes are also part of the curriculum.''' | ||
+ | |||
+ | Make sure you download the electronic resources to your own computer in good time before the exam. This is your own responsibility. That way you are safe if a site becomes unavailable or somehow damaged the last few days before the exam. | ||
+ | |||
+ | ''Note:'' to download some of the papers, you may need to be inside UiB's network. Either use a computer directly on the UiB network or connect to your UiB account through VPN. | ||
=Lectures= | =Lectures= | ||
− | |||
− | ==Lecture 1: Introduction== | + | Below are the mandatory and suggested readings for each lecture. All the textbook chapters in Allemang, Hendler & Gandon are mandatory, whereas the chapters in Blumauer & Nagy are suggested. |
+ | |||
+ | ==Lecture 1: Introduction to KGs== | ||
Themes: | Themes: | ||
− | * | + | * Introduction to Knowledge Graphs |
− | * | + | * Organisation of the course |
− | |||
− | |||
Mandatory readings: | Mandatory readings: | ||
− | * Chapters 1-2 in Allemang & | + | * Chapters 1-2 in Allemang, Hendler & Gandon (3rd edition) |
− | * [http://www.youtube.com/watch?v=HeUrEh-nqtU Tim Berners-Lee talks about the semantic web] | + | * [http://www.youtube.com/watch?v=HeUrEh-nqtU Tim Berners-Lee talks about the semantic web] |
− | + | * [[:File:S01-KnowledgeGraphs.pdf | Slides from the lecture]] | |
− | |||
− | |||
− | * [[:File:S01- | ||
Useful materials: | Useful materials: | ||
− | * | + | * Important knowledge graphs (''which we will look more at later''): |
− | * | + | ** Wikidata (https://www.wikidata.org/) |
− | * | + | <!-- ** DBpedia (https://www.dbpedia.org, https://dbpedia.org/page/Bergen) --> |
− | * | + | ** GeoNames (https://www.geonames.org/) |
+ | <!-- ** BabelNet (https://babelnet.org/) | ||
+ | ** Linking Open Data (LOD) (http://lod-cloud.net) | ||
+ | ** Linked Open Vocabularies (LOV, https://lov.linkeddata.es/dataset/lov/) | ||
+ | --> | ||
+ | * Pages 27-55 and 105-122 in Blumauer & Nagy (suggested) | ||
− | ==Lecture 2: RDF== | + | ==Lecture 2: Representing KGs (RDF)== |
Themes: | Themes: | ||
− | * RDF | + | * Resource Description Framework (RDF) |
− | * Programming RDF in | + | * Programming RDF in Python |
− | |||
Mandatory readings: | Mandatory readings: | ||
− | * Chapter 3 in Allemang & | + | * Chapter 3 in Allemang, Hendler & Gandon (3rd edition) |
− | * [https://www.w3.org/TR/rdf11-primer/ W3C's RDF 1.1 Primer] | + | * [https://www.w3.org/TR/rdf11-primer/ W3C's RDF 1.1 Primer] |
− | + | * [http://rdflib.readthedocs.io/ RDFlib 6.2.0 documentation]: | |
− | + | ** Main page | |
− | ** | + | ** Getting started with RDFLib |
− | * [[:File:S02-RDF | + | ** Loading and saving RDF |
+ | ** Creating RDF triples | ||
+ | ** Navigating Graphs | ||
+ | ** Utilities and convenience functions | ||
+ | ** RDF terms in rdflib | ||
+ | ** Namespaces and Bindings | ||
+ | * [[:File:S02-RDF.pdf | Slides from the lecture]] | ||
Useful materials: | Useful materials: | ||
− | * [https://www.w3.org/TR/rdf11-concepts/ W3C's RDF 1.1 Concepts and Abstract Syntax] | + | * [https://www.ldf.fi/service/rdf-grapher RDF Grapher] for drawing RDF graphs |
− | * | + | * [https://rdflib.readthedocs.io/en/stable/apidocs/modules.html RDFLib 6.2.0 packages] (reference for the labs) |
+ | * [https://www.w3.org/TR/rdf11-concepts/ W3C's RDF 1.1 Concepts and Abstract Syntax] | ||
+ | * An overview page of some other [https://www.w3.org/2018/09/rdf-data-viz/ RDF Data Visualization tools] | ||
+ | * Pages 25-28, 92-100, 125-128, and 164-167 in Blumauer & Nagy (suggested) | ||
− | ==Lecture 3: SPARQL== | + | ==Lecture 3: Querying and updating KGs (SPARQL)== |
Themes: | Themes: | ||
− | * SPARQL | + | * SPARQL queries |
− | |||
* SPARQL Update | * SPARQL Update | ||
− | * Programming SPARQL Update in | + | * Programming SPARQL and SPARQL Update in Python |
− | Mandatory readings: | + | Mandatory readings (tentative): |
− | * Chapter | + | * Chapter 6 in Allemang, Hendler & Gandon (3rd edition) |
− | * [http://www.w3.org/TR/sparql11-update/ SPARQL 1.1 Update Language] (Sections 1-3 | + | * [https://medium.com/wallscope/constructing-sparql-queries-ca63b8b9ac02 Constructing SPARQL Queries] |
− | * [[:File:S03-SPARQL | + | * [http://www.w3.org/TR/sparql11-update/ SPARQL 1.1 Update Language] (Sections 1-3) |
+ | * [https://rdflib.readthedocs.io/ rdflib 6.1.1] materials: | ||
+ | ** Querying with SPARQL | ||
+ | * [[:File:S03-SPARQL.pdf | Slides from the lecture]] | ||
Useful materials: | Useful materials: | ||
+ | * [[:File:sparql-1_1-cheat-sheet.pdf | SPARQL 1.1 Cheat Sheet]] | ||
* [http://www.w3.org/TR/sparql11-query/ SPARQL 1.1 Query Language] | * [http://www.w3.org/TR/sparql11-query/ SPARQL 1.1 Query Language] | ||
* [http://www.w3.org/TR/sparql11-update/ SPARQL 1.1 Update Language] (the rest of it) | * [http://www.w3.org/TR/sparql11-update/ SPARQL 1.1 Update Language] (the rest of it) | ||
− | * | + | * For example pages 54-55, 133 in Blumauer & Nagy (suggested) |
− | |||
− | |||
− | |||
− | |||
− | ==Lecture 4: | + | ==Lecture 4: Open Knowledge Graphs I== |
Themes: | Themes: | ||
− | * | + | * The LOD cloud |
− | * | + | * Important open KGs (LOD datasets) |
− | * | + | ** Wikidata |
− | * | + | ** DBpedia ''(lecture 5)'' |
+ | ** GeoNames ''(lecture 5)'' | ||
+ | ** the GDELT project ''(lecture 5)'' | ||
+ | ** WordNet ''(lecture 5)'' | ||
+ | ** BabelNet ''(lecture 5)'' | ||
+ | ** ConceptNet ''(lecture 5)'' | ||
+ | |||
+ | Mandatory readings ''(both lecture 4 and 5)'': | ||
+ | * Chapter 5 in Allemang, Hendler & Gandon (3rd edition) | ||
+ | * [https://www.w3.org/DesignIssues/LinkedData.html Linked Data], Tim Berners-Lee, 2006-07-27. | ||
+ | * [http://lod-cloud.net The Linking Open Data (LOD) cloud diagram] - The Linked Open Data Cloud | ||
+ | * Important knowledge graphs - and what to read: | ||
+ | ** Wikidata (https://www.wikidata.org/): | ||
+ | *** [https://www.wikidata.org/wiki/Wikidata:Introduction Introduction to Wikidata] | ||
+ | *** [https://www.wikidata.org/wiki/Wikidata:SPARQL_query_service/Wikidata_Query_Help SPARQL query service/A gentle introduction to the Wikidata Query Service] | ||
+ | *** example: [https://www.wikidata.org/wiki/Q26793] | ||
+ | ** DBpedia (https://www.dbpedia.org): | ||
+ | *** [http://wiki.dbpedia.org/about About Dbpedia] | ||
+ | *** example: [https://dbpedia.org/resource/Bergen] | ||
+ | ** GeoNames (https://www.geonames.org/): | ||
+ | *** [http://www.geonames.org/about.html About GeoNames] | ||
+ | *** example: [https://www.geonames.org/3161732/bergen.html] | ||
+ | ** GDELT (https://www.gdeltproject.org/) | ||
+ | *** [https://www.gdeltproject.org/ The GDELT Project] - see also the About and Data pages | ||
+ | ** WordNet (https://wordnet.princeton.edu/) | ||
+ | *** [https://wordnet.princeton.edu/ WordNet - A lexical database for English] | ||
+ | ** BabelNet (https://babelnet.org/): | ||
+ | *** [http://live.babelnet.org/about About BabelNet] | ||
+ | *** [https://babelnet.org/how-to-use How to use] | ||
+ | *** example: [https://babelnet.org/synset?id=bn%3A00010008n&orig=Bergen&lang=EN] | ||
+ | ** ConceptNet (http://conceptnet.io) | ||
+ | *** [http://conceptnet.io ConceptNet - An open, multilingual knowledge graph] | ||
+ | * [[:File:S04-S05-OpenKGs.pdf | Slides from the lecture]] | ||
+ | |||
+ | Useful materials | ||
+ | * [[:File:BizerHeathBernersLee-LinkedData2009-TheStorySoFar.pdf | Bizer, C., Heath, T., & Berners-Lee, T. (2009). Linked data-the story so far. Semantic services, interoperability and web applications: emerging concepts, 205-227.]] | ||
+ | * Wikidata statistics | ||
+ | ** [https://grafana.wikimedia.org/d/000000167/wikidata-datamodel?orgId=1&refresh=30m Entity statistics] | ||
+ | ** [https://grafana.wikimedia.org/d/000000175/wikidata-datamodel-statements?orgId=1&refresh=30m Statement statistics] | ||
+ | * [https://www.dbpedia-spotlight.org/ DBpedia Spotlight] | ||
+ | * GDELT documentation | ||
+ | ** [http://data.gdeltproject.org/documentation/GDELT-Event_Codebook-V2.0.pdf Event Codebook (and covers mentions)] | ||
+ | ** [http://data.gdeltproject.org/documentation/CAMEO.Manual.1.1b3.pdf CAMEO event codes and other codes] | ||
+ | ** [http://data.gdeltproject.org/documentation/GDELT-Global_Knowledge_Graph_Codebook-V2.1.pdf Global Knowledge Graph Codebook] | ||
+ | * Parts 1 and 3 in Blumauer & Nagy's text book (not tightly related to the lecture, but time to finish them by now :-)) | ||
+ | |||
+ | ==Lecture 5: Open Knowledge Graphs II== | ||
+ | ''See readings for lecture 4.'' | ||
+ | |||
+ | ==Lecture 6: Enterprise Knowledge Graphs I== | ||
+ | |||
+ | Themes: | ||
+ | * Enterprise Knowledge Graphs (EKGs) | ||
+ | * ''Guest lecture with Sindre Asplem from CapGemini, who will talk about CapGemini's experiences with EKGs, including methods and high-level architecture. He will also talk about SHACL, the RDF Shapes Constraint Language (which we may revisit in Lecture 7 and Exercise 7).'' | ||
Mandatory readings: | Mandatory readings: | ||
− | * | + | * ''Slides from Sindre Asplem's guest lecture are available from mitt.uib.no .'' |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Supplementary readings: | |
− | * | + | * Parts 2 and 4 in Blumauer & Nagy's text book (''strongly suggested - this is where Blumauer & Nagy's book is good!'') |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ==Lecture | + | ==Lecture 7: Rules (SHACL and RDFS)== |
Themes: | Themes: | ||
− | * RDFS | + | * SHACL and RDFS |
* Axioms, rules and entailment | * Axioms, rules and entailment | ||
− | * Programming RDFS in | + | * Programming SHACL and RDFS in Python |
Mandatory readings: | Mandatory readings: | ||
− | * Chapters | + | * Chapters 7-8 in Allemang, Hendler & Gandon (3rd edition) |
− | * [http://www.w3.org/TR/rdf-schema/ W3C's RDF Schema 1.1] | + | * [https://book.validatingrdf.com/bookHtml011.html Chapter 5 ''SHACL''] in [https://book.validatingrdf.com/index.html Validating RDF] (available online) |
− | * [[:File: | + | ** Sections 5.1, 5.3-5.5, and 5.6,1-5.6.3 |
+ | * [http://www.w3.org/TR/rdf-schema/ W3C's RDF Schema 1.1], focus on sections 1-3 and 6 | ||
+ | * [[:File:S07-SHACL-RDFS.pdf | Slides from the lecture]] | ||
Useful materials: | Useful materials: | ||
− | * [https://www.w3.org/TR/rdf11-mt/ W3C's RDF 1.1 Semantics] ( | + | * Interactive, online [https://shacl.org/playground/ SHACL Playground] |
− | * [https:// | + | * [https://docs.google.com/presentation/d/1weO9SzssxgYp3g_44X1LZsVtL0i6FurQ3KbIKZ8iriQ/ Lab presentation containing a short overview of SHACL and pySHACL] |
− | * [https:// | + | * [https://pypi.org/project/pyshacl/ pySHACL - A Python validator for SHACL at PyPi.org] ''(after installation, go straight to "Python Module Use".)'' |
− | + | * [https://w3c.github.io/data-shapes/shacl/ Shapes Constraint Language (SHACL) (Editor's Draft)] | |
− | + | * [https://www.w3.org/TR/rdf11-mt/ W3C's RDF 1.1 Semantics] (''the axioms and entailments in sections 8 and 9, are most important, and we will review them in the lecture'') | |
− | * | + | * [https://github.com/blazegraph/database/wiki/InferenceAndTruthMaintenance Inference and Thruth Maintenance in Blazegraph] |
− | + | * [https://github.com/RDFLib/OWL-RL OWL-RL] adds inference capability on top of RDFLib. To use it, copy the ''owlrl'' folder into your project folder, next to your Python files, and import it with ''import owlrl''. | |
− | + | * [https://owl-rl.readthedocs.io/en/latest/owlrl.html OWL-RL documentation] (most likely more detailed than you will need - check the [[Python Examples]] first | |
+ | * Pages 101-106 in Blumauer & Nagy (suggested) | ||
− | ==Lecture | + | ==Lecture 8: Ontologies (OWL)== |
Themes: | Themes: | ||
* Basic OWL concepts | * Basic OWL concepts | ||
* Axioms, rules and entailments | * Axioms, rules and entailments | ||
− | * Programming basic OWL in | + | * Programming basic OWL in Python |
Mandatory readings: | Mandatory readings: | ||
− | * Chapter | + | * Chapter 9-10 in Allemang, Hendler & Gandon (3rd edition) |
− | * [[:File: | + | * [http://www.w3.org/TR/owl-primer OWL2 Primer], sections 2-6 |
+ | * [http://vowl.visualdataweb.org/ VOWL: Visual Notation for OWL Ontologies] | ||
+ | * [https://protegeproject.github.io/protege/getting-started/ Protégé-OWL Getting Started] | ||
+ | * [[:File:S08-OWL.pdf | Slides from the lecture]] | ||
− | Useful materials: | + | Useful materials (cursory): |
− | * [https:// | + | * [http://www.w3.org/TR/owl-overview OWL 2 Document Overview] |
− | * | + | * [https://www.w3.org/TR/owl2-quick-reference/ OWL 2 Quick Reference Guide] |
− | ** | + | * [https://www.w3.org/TR/owl2-rdf-based-semantics/ OWL2 RDF-Based Semantics] |
− | * | + | * The OWL-RL materials (from Lecture 5) |
− | + | * [http://vowl.visualdataweb.org/v2 VOWL: Visual Notation for OWL Ontologies] | |
− | + | * [http://vowl.visualdataweb.org/webvowl/index.html#sioc WebVOWL] | |
+ | * [[:File:LohmannEtAl2016-VisualizingOntologiesWithVOWL.pdf | Lohmann et al. (2019): Visualizing Ontologies with VOWL. ''Semantic Web Journal.'']] | ||
+ | * Pages 106-109 in Blumauer & Nagy (suggested) | ||
− | ==Lecture | + | ==Lecture 9: Vocabularies== |
Themes: | Themes: | ||
Line 146: | Line 213: | ||
Mandatory readings: | Mandatory readings: | ||
− | * Chapters | + | * Chapters 10-11 in Allemang, Hendler & Gandon (3rd edition) |
* [http://lov.okfn.org/dataset/lov/ Linked Open Vocabularies (LOV)] | * [http://lov.okfn.org/dataset/lov/ Linked Open Vocabularies (LOV)] | ||
− | * [http:// | + | * Important vocabularies / ontologies: |
− | * [ | + | ** [http://xmlns.com/foaf/spec/ Friend of a Friend (FOAF)] (if necessary follow the link to the 2004 version) |
− | + | ** [http://motools.sourceforge.net/event/event.html Event Ontology (event)] | |
− | + | ** [http://www.w3.org/TR/owl-time/ Time ontology in OWL (time, OWL-time)] | |
− | * | + | ** [https://www.w3.org/2003/01/geo/ geo: World Geodetic Standard (WGS) 84] |
+ | ** [http://dublincore.org/ Dublin Core (DC)] | ||
** [http://www.w3.org/2004/02/skos/ SKOS - Simple Knowledge Organization System Home Page] | ** [http://www.w3.org/2004/02/skos/ SKOS - Simple Knowledge Organization System Home Page] | ||
+ | ** [http://rdfs.org/sioc/spec/ Semantic Interlinked Online Communities (SIOC)] | ||
** [http://schema.org/docs/full.html schema.org - Full Hierarchy] | ** [http://schema.org/docs/full.html schema.org - Full Hierarchy] | ||
− | ** [http:// | + | ** [http://wikidata.dbpedia.org/services-resources/ontology DBpedia Ontology] |
− | + | ** [http://www.w3.org/ns/prov# Provenance Interchange (PROV)] | |
− | |||
− | |||
− | ** [http | ||
− | |||
** [http://creativecommons.org/ns Creative Commons (CC) Vocabulary] | ** [http://creativecommons.org/ns Creative Commons (CC) Vocabulary] | ||
− | ** | + | ** ''What we expect you to know about each vocabulary is this:'' |
− | + | *** Its purpose and where and how it can be used. | |
− | + | *** Its most central 3-6 classes and properties be able to explain its basic structure. | |
− | + | *** It is less important to get all the names and prefixes 100% right: we do not expect you to learn every little detail by heart. | |
− | + | * [[:File:S09-Vocabularies.pdf | Slides from the lecture]] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | ==Lecture | + | ==Lecture 10: Formal ontologies (description logic, OWL-DL)== |
Themes: | Themes: | ||
− | * | + | * OWL-DL |
− | * | + | * Description logic |
− | + | * Decision problems | |
− | * | ||
− | |||
− | |||
Mandatory readings: | Mandatory readings: | ||
− | * | + | * Chapters 12-13 in Allemang, Hendler & Gandon (3rd edition) |
− | * [ | + | * [http://www.w3.org/TR/owl-primer OWL2 Primer], sections 2-6 (same as Lecture 8) and sections 9-10 |
− | + | * [[:File:S10-OWL-DL.pdf | Slides from the lecture]] | |
− | |||
− | * [[:File: | ||
Useful materials: | Useful materials: | ||
− | * [http:// | + | * [http://www.w3.org/TR/owl-overview OWL 2 Document Overview] (same as Lecture 8) |
− | * [https://www. | + | * [https://www.w3.org/TR/2012/REC-owl2-quick-reference-20121211/ OWL 2 Quick Reference Guide] (same as Lecture 8) |
− | * [ | + | * [[:File:NardiBrachman-IntroductionToDescriptionLogic.pdf | Nardi & Brachman: Introduction to Description Logics. Chapter 1 in Description Logic Handbook.]] |
− | * [ | + | * [[:File:BaderNutt-BasicDescriptionLogics.pdf | Baader & Nutt: Basic Description Logics. Chapter 2 in Description Logic Handbook.]] |
− | * | + | ** ''Cursory'', quickly gets mathematical after the introduction. In particular, sections 2.2.2.3-4 about fixpoint semantics apply to TBoxes with cyclic definitions, which we do not consider in this course. We also do not consider the stuff about rules, epistemics, and reasoning from section 2.2.5 on. |
− | ==Lecture | + | ==Lecture 11: KG embeddings== |
− | Themes: | + | Themes: |
− | * | + | * KG embeddings |
− | * | + | * Link prediction |
− | * | + | * TorchKGE |
− | Mandatory readings: | + | Mandatory readings (preliminary): |
− | * [ | + | * [https://towardsdatascience.com/introduction-to-machine-learning-for-beginners-eed6024fdb08 Introduction to Machine Learning for Beginners] ([[:file:IntroToMachineLearning.pdf | PDF]]) |
− | * | + | * [https://towardsdatascience.com/introduction-to-word-embedding-and-word2vec-652d0c2060fa Introduction to Word Embeddings and word2vec] ([[:file:IntroToWordEmbeddings.pdf | PDF]]) |
− | * [[: | + | * [https://towardsdatascience.com/introduction-to-knowledge-graph-embedding-with-dgl-ke-77ace6fb60ef Introduction to Knowledge Graph Embeddings] ([[:file:IntroToKGEmbeddings.pdf | PDF]]) |
+ | * [[:file:S11-GraphEmbeddings.pdf | Slides from the lecture]] | ||
− | + | Supplementary readings (preliminary): | |
− | * [ | + | * [[:file:Mikolov_et_al._-_2013_-_Efficient_Estimation_of_Word_Representations_in_Ve.pdf | Mikolov et al’s original word2vec paper]] |
− | * [ | + | * [[:file:Bordes_et_al._-_Translating_Embeddings_for_Modeling_Multi-relation.pdf | Bordes et al’s original TransE paper]] |
− | + | * [https://torchkge.readthedocs.io/en/latest/ Welcome to TorchKGE’ s documentation!] (for the labs) | |
− | |||
− | ==Lecture | + | ==Lecture 12: Enterprise Knowledge Graphs II== |
Themes: | Themes: | ||
− | * | + | * Google’s Knowledge Graph |
− | * | + | * Amazon’s Product Graph |
− | * | + | * (News Hunter’s infrastructure and architecture) |
+ | * JSON-LD | ||
Mandatory readings: | Mandatory readings: | ||
− | * | + | * [https://www.blog.google/products/search/introducing-knowledge-graph-things-not/ Introducing the Knowledge Graph: Things not Strings], Amit Singhal, Google (2012). ''(The blog post that introduced Google's knowledge graph to the world.)'' |
− | * [[:File: | + | * [https://blog.google/products/search/about-knowledge-graph-and-knowledge-panels/ A reintroduction to our Knowledge Graph and knowledge panels], Danny Sullivan, Google (2020). |
+ | * [https://www.aboutamazon.com/news/innovation-at-amazon/making-search-easier How Amazon’s Product Graph is helping customers find products more easily], Arun Krishnan, Amazon (2018). ''(Short blog post that reviews some central ideas from the AutoKnow research paper listed below.)'' | ||
+ | * [https://www.amazon.science/blog/building-product-graphs-automatically Building product graphs automatically], Xin Luna Dong, Amazon (2020). | ||
+ | * [https://json-ld.org/ JSON for Linking Data] | ||
+ | * [[:File:S12-EnterpriseKGs-II.pdf | Slides from the lecture]] | ||
− | + | Supplementary readings: | |
− | * [ | + | * [[:File:2006.13473.pdf | AutoKnow: Self-Driving Knowledge Collection for Products of Thousands of Types]]. Example of research paper from Amazon - this is a bit heavy for Bachelor level, but you can have a look :-) |
− | |||
− | |||
− | |||
− | |||
− | |||
− | ==Lecture | + | ==Lecture 13: Wrapping up== |
Themes: | Themes: | ||
− | * | + | * Questions about the exam |
− | * | + | * Quizzes |
− | |||
− | |||
Mandatory readings: | Mandatory readings: | ||
− | * | + | * The rest of Allemang, Hendler & Gandon (3rd edition) |
Useful materials: | Useful materials: | ||
− | * | + | * The rest of Blumauer & Nagy (suggested) |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
| | ||
− | <div class="credits" style="text-align: right; direction: ltr; margin-left: 1em;">''INFO216, UiB, | + | <div class="credits" style="text-align: right; direction: ltr; margin-left: 1em;">''INFO216, UiB, 2017-2023, Andreas L. Opdahl (c)''</div> |
Latest revision as of 09:48, 25 April 2023
Textbooks
Main course book (the whole book is mandatory reading):
- Dean Allemang, James Hendler & Fabien Gandon (2020). Semantic Web for the Working Ontologist, Effective Modeling for Linked Data, RDFS and OWL (Third Edition). ISBN: 9781450376143, PDF ISBN: 9781450376150, Hardcover ISBN: 9781450376174, DOI: 10.1145/3382097.
Supplementary text book (not mandatory):
- Andreas Blumauer and Helmut Nagy (2020). The Knowledge Graph Cookbook - Recipes that Work. mono/monochrom. ISBN-10: 3902796707, ISBN-13: 978-3902796707.
Other materials
In addition, the materials listed below for each lecture are either mandatory or suggested reading. More materials will be added to each lecture in the coming weeks.
The lectures and lectures notes are also part of the curriculum.
Make sure you download the electronic resources to your own computer in good time before the exam. This is your own responsibility. That way you are safe if a site becomes unavailable or somehow damaged the last few days before the exam.
Note: to download some of the papers, you may need to be inside UiB's network. Either use a computer directly on the UiB network or connect to your UiB account through VPN.
Lectures
Below are the mandatory and suggested readings for each lecture. All the textbook chapters in Allemang, Hendler & Gandon are mandatory, whereas the chapters in Blumauer & Nagy are suggested.
Lecture 1: Introduction to KGs
Themes:
- Introduction to Knowledge Graphs
- Organisation of the course
Mandatory readings:
- Chapters 1-2 in Allemang, Hendler & Gandon (3rd edition)
- Tim Berners-Lee talks about the semantic web
- Slides from the lecture
Useful materials:
- Important knowledge graphs (which we will look more at later):
- Wikidata (https://www.wikidata.org/)
- GeoNames (https://www.geonames.org/)
- Pages 27-55 and 105-122 in Blumauer & Nagy (suggested)
Lecture 2: Representing KGs (RDF)
Themes:
- Resource Description Framework (RDF)
- Programming RDF in Python
Mandatory readings:
- Chapter 3 in Allemang, Hendler & Gandon (3rd edition)
- W3C's RDF 1.1 Primer
- RDFlib 6.2.0 documentation:
- Main page
- Getting started with RDFLib
- Loading and saving RDF
- Creating RDF triples
- Navigating Graphs
- Utilities and convenience functions
- RDF terms in rdflib
- Namespaces and Bindings
- Slides from the lecture
Useful materials:
- RDF Grapher for drawing RDF graphs
- RDFLib 6.2.0 packages (reference for the labs)
- W3C's RDF 1.1 Concepts and Abstract Syntax
- An overview page of some other RDF Data Visualization tools
- Pages 25-28, 92-100, 125-128, and 164-167 in Blumauer & Nagy (suggested)
Lecture 3: Querying and updating KGs (SPARQL)
Themes:
- SPARQL queries
- SPARQL Update
- Programming SPARQL and SPARQL Update in Python
Mandatory readings (tentative):
- Chapter 6 in Allemang, Hendler & Gandon (3rd edition)
- Constructing SPARQL Queries
- SPARQL 1.1 Update Language (Sections 1-3)
- rdflib 6.1.1 materials:
- Querying with SPARQL
- Slides from the lecture
Useful materials:
- SPARQL 1.1 Cheat Sheet
- SPARQL 1.1 Query Language
- SPARQL 1.1 Update Language (the rest of it)
- For example pages 54-55, 133 in Blumauer & Nagy (suggested)
Lecture 4: Open Knowledge Graphs I
Themes:
- The LOD cloud
- Important open KGs (LOD datasets)
- Wikidata
- DBpedia (lecture 5)
- GeoNames (lecture 5)
- the GDELT project (lecture 5)
- WordNet (lecture 5)
- BabelNet (lecture 5)
- ConceptNet (lecture 5)
Mandatory readings (both lecture 4 and 5):
- Chapter 5 in Allemang, Hendler & Gandon (3rd edition)
- Linked Data, Tim Berners-Lee, 2006-07-27.
- The Linking Open Data (LOD) cloud diagram - The Linked Open Data Cloud
- Important knowledge graphs - and what to read:
- Wikidata (https://www.wikidata.org/):
- DBpedia (https://www.dbpedia.org):
- About Dbpedia
- example: [2]
- GeoNames (https://www.geonames.org/):
- About GeoNames
- example: [3]
- GDELT (https://www.gdeltproject.org/)
- The GDELT Project - see also the About and Data pages
- WordNet (https://wordnet.princeton.edu/)
- BabelNet (https://babelnet.org/):
- About BabelNet
- How to use
- example: [4]
- ConceptNet (http://conceptnet.io)
- Slides from the lecture
Useful materials
- Bizer, C., Heath, T., & Berners-Lee, T. (2009). Linked data-the story so far. Semantic services, interoperability and web applications: emerging concepts, 205-227.
- Wikidata statistics
- DBpedia Spotlight
- GDELT documentation
- Parts 1 and 3 in Blumauer & Nagy's text book (not tightly related to the lecture, but time to finish them by now :-))
Lecture 5: Open Knowledge Graphs II
See readings for lecture 4.
Lecture 6: Enterprise Knowledge Graphs I
Themes:
- Enterprise Knowledge Graphs (EKGs)
- Guest lecture with Sindre Asplem from CapGemini, who will talk about CapGemini's experiences with EKGs, including methods and high-level architecture. He will also talk about SHACL, the RDF Shapes Constraint Language (which we may revisit in Lecture 7 and Exercise 7).
Mandatory readings:
- Slides from Sindre Asplem's guest lecture are available from mitt.uib.no .
Supplementary readings:
- Parts 2 and 4 in Blumauer & Nagy's text book (strongly suggested - this is where Blumauer & Nagy's book is good!)
Lecture 7: Rules (SHACL and RDFS)
Themes:
- SHACL and RDFS
- Axioms, rules and entailment
- Programming SHACL and RDFS in Python
Mandatory readings:
- Chapters 7-8 in Allemang, Hendler & Gandon (3rd edition)
- Chapter 5 SHACL in Validating RDF (available online)
- Sections 5.1, 5.3-5.5, and 5.6,1-5.6.3
- W3C's RDF Schema 1.1, focus on sections 1-3 and 6
- Slides from the lecture
Useful materials:
- Interactive, online SHACL Playground
- Lab presentation containing a short overview of SHACL and pySHACL
- pySHACL - A Python validator for SHACL at PyPi.org (after installation, go straight to "Python Module Use".)
- Shapes Constraint Language (SHACL) (Editor's Draft)
- W3C's RDF 1.1 Semantics (the axioms and entailments in sections 8 and 9, are most important, and we will review them in the lecture)
- Inference and Thruth Maintenance in Blazegraph
- OWL-RL adds inference capability on top of RDFLib. To use it, copy the owlrl folder into your project folder, next to your Python files, and import it with import owlrl.
- OWL-RL documentation (most likely more detailed than you will need - check the Python Examples first
- Pages 101-106 in Blumauer & Nagy (suggested)
Lecture 8: Ontologies (OWL)
Themes:
- Basic OWL concepts
- Axioms, rules and entailments
- Programming basic OWL in Python
Mandatory readings:
- Chapter 9-10 in Allemang, Hendler & Gandon (3rd edition)
- OWL2 Primer, sections 2-6
- VOWL: Visual Notation for OWL Ontologies
- Protégé-OWL Getting Started
- Slides from the lecture
Useful materials (cursory):
- OWL 2 Document Overview
- OWL 2 Quick Reference Guide
- OWL2 RDF-Based Semantics
- The OWL-RL materials (from Lecture 5)
- VOWL: Visual Notation for OWL Ontologies
- WebVOWL
- Lohmann et al. (2019): Visualizing Ontologies with VOWL. Semantic Web Journal.
- Pages 106-109 in Blumauer & Nagy (suggested)
Lecture 9: Vocabularies
Themes:
- LOD vocabularies and ontologies
Mandatory readings:
- Chapters 10-11 in Allemang, Hendler & Gandon (3rd edition)
- Linked Open Vocabularies (LOV)
- Important vocabularies / ontologies:
- Friend of a Friend (FOAF) (if necessary follow the link to the 2004 version)
- Event Ontology (event)
- Time ontology in OWL (time, OWL-time)
- geo: World Geodetic Standard (WGS) 84
- Dublin Core (DC)
- SKOS - Simple Knowledge Organization System Home Page
- Semantic Interlinked Online Communities (SIOC)
- schema.org - Full Hierarchy
- DBpedia Ontology
- Provenance Interchange (PROV)
- Creative Commons (CC) Vocabulary
- What we expect you to know about each vocabulary is this:
- Its purpose and where and how it can be used.
- Its most central 3-6 classes and properties be able to explain its basic structure.
- It is less important to get all the names and prefixes 100% right: we do not expect you to learn every little detail by heart.
- Slides from the lecture
Lecture 10: Formal ontologies (description logic, OWL-DL)
Themes:
- OWL-DL
- Description logic
- Decision problems
Mandatory readings:
- Chapters 12-13 in Allemang, Hendler & Gandon (3rd edition)
- OWL2 Primer, sections 2-6 (same as Lecture 8) and sections 9-10
- Slides from the lecture
Useful materials:
- OWL 2 Document Overview (same as Lecture 8)
- OWL 2 Quick Reference Guide (same as Lecture 8)
- Nardi & Brachman: Introduction to Description Logics. Chapter 1 in Description Logic Handbook.
- Baader & Nutt: Basic Description Logics. Chapter 2 in Description Logic Handbook.
- Cursory, quickly gets mathematical after the introduction. In particular, sections 2.2.2.3-4 about fixpoint semantics apply to TBoxes with cyclic definitions, which we do not consider in this course. We also do not consider the stuff about rules, epistemics, and reasoning from section 2.2.5 on.
Lecture 11: KG embeddings
Themes:
- KG embeddings
- Link prediction
- TorchKGE
Mandatory readings (preliminary):
- Introduction to Machine Learning for Beginners ( PDF)
- Introduction to Word Embeddings and word2vec ( PDF)
- Introduction to Knowledge Graph Embeddings ( PDF)
- Slides from the lecture
Supplementary readings (preliminary):
- Mikolov et al’s original word2vec paper
- Bordes et al’s original TransE paper
- Welcome to TorchKGE’ s documentation! (for the labs)
Lecture 12: Enterprise Knowledge Graphs II
Themes:
- Google’s Knowledge Graph
- Amazon’s Product Graph
- (News Hunter’s infrastructure and architecture)
- JSON-LD
Mandatory readings:
- Introducing the Knowledge Graph: Things not Strings, Amit Singhal, Google (2012). (The blog post that introduced Google's knowledge graph to the world.)
- A reintroduction to our Knowledge Graph and knowledge panels, Danny Sullivan, Google (2020).
- How Amazon’s Product Graph is helping customers find products more easily, Arun Krishnan, Amazon (2018). (Short blog post that reviews some central ideas from the AutoKnow research paper listed below.)
- Building product graphs automatically, Xin Luna Dong, Amazon (2020).
- JSON for Linking Data
- Slides from the lecture
Supplementary readings:
- AutoKnow: Self-Driving Knowledge Collection for Products of Thousands of Types. Example of research paper from Amazon - this is a bit heavy for Bachelor level, but you can have a look :-)
Lecture 13: Wrapping up
Themes:
- Questions about the exam
- Quizzes
Mandatory readings:
- The rest of Allemang, Hendler & Gandon (3rd edition)
Useful materials:
- The rest of Blumauer & Nagy (suggested)