UMBC CMSC 491/691 Fall 2022
Knowledge Graphs

Home · Schedule · HW · Exams · Notes · GitHub · Examples · Resources · Colab · Discord · Webex

Syllabus

The Web has made us all smarter, providing ready access to vast amounts of knowledge, facts, options and trends. Most of this is in forms that are easy for people to process -- text, speech, images, video, maps -- but difficult for machines to fully understand. New Internet technologies are being developed and deployed that will also make our interconnected computers and devices smarter through access to a Web of data in forms that facilitate machine understanding and can be used for machine learning.

This special topics course for advanced undergraduates and graduate students will introduce the notion of the Semantic Web, provide an overview of the underlying theory and technology, cover existing tools and practices, and highlight current and potential applications. The course will be approximately half lecture and half seminar. Students will be expected to read, discuss and present current research papers, complete a number of short assignments and engage in a longer project, either individually or as part of a group.

The course will cover knowledge modeling concepts such as metadata, ontologies, description logics, rules and provenance; important Web standards for representing data and knowledge including XML and the Semantic Web languages RDF and OWL; current best practices and standards for publishing data on the Web; technologies for extracting information from text and databases; and example applications. We will also study new industry-based approaches and applications to sharing data on the Web being developed and used by major companies including Google, Microsoft, IBM and Facebook.

Recommended prerequisites: Artificial Intelligence (e.g., CMSC 471 or 671), Database Management Systems (e.g., CMSC 461 or 661), or permission of the instructor

Instructor: Tim Finin, 329 ITE, 410-455-3522, finin@umbc.edu, office hours: TBD

Grader: Sai Sandeep Manne (XJ74699@umbc.edu)

Where and when: Tuesday and Thursday, 5:30pm-6:45pm, ENGR 022

Readings: Papers and other material to read will be available online.

Structure: Class time will be spent with about 80% lecture and 20% student-led presentation and discussion of readings. We will use Discord for announcments, questions and discussion. Engaging in discussions on the Discord server will be a required part of the course and the quality and level of your participation in them will play a small part in determining your grade. We'll invite registered students to accept an invitation to this that will be sent shortly before the first class. If you register late, send email to finin@umbc.edu asking to be invited to the server.

Assignments: Students may be required to prepare and present material to the class, complete a number of homework assignments, and engage in a longer project, either individually or as part of a group. I believe that the material in this course is best learned by use it, so the homework assignments will be designed to give you opportunities to use the concepts and technologies we cover. We will use GitHub to distribute individual starter repositories for the assignments. Students will complete these and push them back to GitHub for grading.

Software: We will use a number of software packages that are on our class github site or available for downloading.

Exams: We will hold an midterm exam in class in mid October and a final exam on Thursday, December 15 from 6:00pm to 8:00pm in our classroom.

Academic Honesty: Please read this statement on academic honesty.