Course Offerings
Explore common data collection, management, and sharing practices in information technology and emerging technologies, such as search engines and AI systems. Students will read papers and engage in discussions about the pros and cons of established data practices and learn about the three main components of responsible data management: 1) consent and ownership, 2) privacy and anonymity, and 3) broader impact. Students will also practice how to collect data, make data-driven decisions, and design data-driven products through group projects as UX designers, researchers, and data scientists. The course will bring in interdisciplinary perspectives with guest speakers from archive science, engineering, and respponsible AI, to provide a holistic view of broader data ecosystems and infrastructures.
Develop prompts for text and image generation through an iterative cycle, making the most of foundation models, including large language models and diffusion models. Overview of the field of prompt engineering, including historical development, ethical dilemmas, and the creation of chatbots.
The current Web has experienced tremendous changes to connect data, people, and knowledge. There are a couple of exciting efforts trying to bring the Web to its full potential. The Semantic Web is one of them which is heavily embedded in the Artificial Intelligence area with the long-term goal to enhance the human and machine interaction by representing data semantics, integrating data silos, and enabling intelligent search and discovery. This course aims to provide the basic overview of the Semantic Web in general, and data semantics in particular, and how they can be applied to enhance data integration and knowledge inference. Ontology is the backbone of the Semantic Web. It models the semantics of data and represents them in markup languages proposed by the World Wide Web Consortium (W3C). W3C plays a significant role in directing major efforts at specifying, developing, and deploying standards for sharing information. Semantically enriched data paves the crucial way to facilitate the Web functionality and interoperability. This course contains three parts: Semantic Web language, RDF graph database (i.e., RDF triple store), and its applications. The fundamental part of the course is the Semantic Web languages. It starts from XML and goes further to RDF and OWL. The RDF graph database part introduces different APIs of Jena and its reasoners. The application part showcases current trends on semantic applications. Prerequisites Basic knowledge of HTML and XML is desired. Course Objectives This course aims to develop a critical appreciation of semantic technologies as they are currently being developed. At the end of this course, students should be able to: • sketch the overall architecture of the Semantic Web. • identify the major technologies of the Semantic Web and explain their roles. • illustrate the design principles of the Semantic Web by applying the technologies. • understand certain limitations of the Semantic Web technologies, and be aware of the kinds of services it can and cannot deliver. Course aims are achieved through: • Lectures covers basic knowledge of the Semantic Web • Projects applying semantic technologies to concrete problems of information delivery and use • Assignments of practicing and utilizing key semantic technologies
This course will cover fundamental concepts in Machine Learning (ML). The course will provide conceptual and practical knowledge on a wide range of modern machine learning algorithms; including supervised learning (multiple linear regression, logistic regression, neural networks, and decision trees), unsupervised learning (clustering, dimensionality reduction, recommender systems), reinforcement learning & deep learning models (CNN, RNN, Autoencoders & Transformers) and also introduce the importance of Prompt Engineering and Retrieval Augmented Generation. The goal is for students to be comfortable and confident in machine learning concepts and have the ablity to build machine learning model solution to challenging real-world problems. If you’re looking to break into AI or build a career in machine learning, this is a great place to start.
Natural Language Processing (NLP) is concerned with interactions between computers and humans through the medium of human languages. It involves analyzing, understanding, and generating human language, making it possible for machines to interpret and respond to human speech and text. NLP is currently making significant contributions to modern technological advancements and serves as the backbone of crucial applications such as Gen AI, Conversational AI, Question Answering, Human Language Translation, Summarization, Sentiment and Emotion Analysis, Search and Recommendation, and Information Extraction in various domains such as healthcare, finance, legal, libraries and education and beyond. The proposed graduate-level course aims to cover fundamental concepts in Natural Language Processing / Computational Linguistics and how they are used to solve real-world problems. Classes in each week will be divided into two segments: (a) Theory and Methods, a concise description of an NLP concept, and (b) Practicum, a hands-on session on applying the theory to a real-world task on publicly available multilingual text datasets. We will use Python for programming along with popular libraries for text processing such as NLTK, SpaCy and HuggingFace's transformers. By the end of the course, the goals for the students are to: 1. Understand the process of garnering and pre-processing a large amount of multilingual textual data from various domains and sources. Characterize the processes to store, load, pre-process multilingual data and apply language processing operations such as normalization, tokenization, lemmatization, chunking and machine readable representation (vector) extraction. 2. Train machine learning algorithms for natural language understanding and generation and evaluate their performance. 3. Learn to extract information from unstructured text and represent them in the form of knowledge graphs 4. Learn to use existing knowledge graphs, ontologies and lexical knowledge networks for predictive analysis on text 5. Learn about popular NLP applications and tasks and the process of building such applications 6. Propose a novel product/research-focused idea (this will be an iterative process), design and execute experiments, and present the findings and demos to a suitable audience (in this case, the class).
Introduction to combining human and machine intelligence to benefit people and society. Explore cutting-edge research on a number of subjects related to human-AI interaction, including the psychological and societal impacts of AI as well as design guidelines and methods for human-centered AI.
INF 382C: Understanding and Serving Users
What does it really mean to be user-centered? How do we practice user-centered design in a professional and methodical manner? What research findings can we rely on to help us improve user experiences? This is a readings/discussion course that examines in depth what we know about people (that is, what does scientific research actually tell us) and how can we apply this knowledge in the real-world of experience design. We examine human psychology, from physical ergonomics to cultural dispositions, stopping off on cognition and social analyses en route, so as to have a holistic, robust perspective on what it means to understand users. The readings are complemented with an examination of methods e.g., what is a cognitive walkthrough and how do you do it reliably? what are the limitations of heuristic evaluations? The goal is to give you a solid grounding in the practices of user-centered thinking, regardless of your area of application, and prepare you for professional level contributions in the user-experience world. There is no teamwork, all students deliver individual term papers and design critique diaries. There are also no pre-requisites -- technical or theoretical, the class is open to all.
In this course, we will work to understand and address the challenges of misinformation, disinformation, and strategic manipulation in online environments. First, we will work to develop a deep understanding of the problem space. We will read and discuss existing research (both historical and contemporary) on how and why misinformation and disinformation spread. Next, we will explore the process, both personal and interpersonal, by which these issues can be approached and addressed in our own lives. This will involve reflecting on our own presuppositions, beliefs, and biases about information; and doing a project in which we apply the principles of Human-Centered Design to investigate different design directions for addressing misleading information. Students will gain important contextual knowledge and hands-on design experience that they can take into future professional domains (from education to policy to technology), where they can contribute to building more trustworthy information systems.
Accessible UX provides students working (or planning to work) in any area of UX, Digital Product Management, or Development with key skills and insights into the current accessibility landscape, in addition to specific guidelines and WCAG conformance specifications. The course is divided into foundational and tactical modules. The first half of the course provides a comprehensive overview of Accessibility and its importance. The second half of the course involves evaluating real-world applications and websites per the WCAG guidelines, producing Accessibility reports, planning studies (with persons with disabilities), and designing for accessibility. Course Goals 1. Become proficient in recognizing accessibility issues in key domains 2. Understand successful team and organizational behaviors in Accessibility 3. Learn how Accessible UX and Development is accomplished 4. Evaluate Web and App experiences using the WCAG framework from W3.org/WAI
The purpose of this course is to provide theoretical and practical foundations for information professionals who wish to design and evaluate search systems and services, taking user-centered approaches. This course explores search user interfaces, search behavior, search interaction, search user experience, search as learning, search for creativity, and research methods for understanding information behavior and evaluating search systems. Students will learn search behavior across various contexts, including academic and professional settings, everyday life, and digital learning environments. Students will gain insights into how people interact with, use, and evaluate information in a variety of application areas, such as web search engines, domain-specific search systems, digital libraries, social search platforms, and generative AI-based systems.
Learning key data wrangling maneuvers in abstract and implementations in SQL, Excel, R Tidyverse, and Python Pandas. Maneuvers in data transformations include Nest, Pivot, Mutate (inc. separate/unite), Group/Summarize and Rectangling. Projects include working with "wild caught" data datasets (usually CSV or JSON) and computational notebook environments (e.g., iPython, Jupyter, Rmarkdown, Quarto). Fall 2024 has changes from previous syllabus now that we have Database Design and Introduction to Programming. Nonetheless, the previous syllabus is still useful as it links to course materials that show the teaching approach and type of assignments. http://howisonlab.github.io/datawrangling/#Schedule_of_classes