Welcome to the class of 2023 (summer term)

Current as of 08.03.2023, 10:00 (CET, UTC+1)

Students will find all course information here on this course homepage – please check regularly.

Teach-Center: https://tc.tugraz.at/main/enrol/index.php?id=474

2023 Class has started on Monday, March, 6, 2023, 18:00 CET = 10:00 MST = 04:00 AEST

Online via ZOOM – those students who wish to participate in this course must be present online on that day and time.
(When planning meetings please mind the time shift between Edmonton, Vienna/Graz, and Sydney,
and note that there will be different daylight savings times taking into effect)

NOTE: The course will be finished individually with your personal tutor, since some of the students asked for
a longer duration to complete their tasks, the rule is valid: You get your grading when submitting your work to the tutors,
the deadline is set by the tutors.

We are located in both places Vienna and Graz – here you see

[1] the inaugural lecture of Prof. Holzinger in Vienna on digital transformation:
https://www.youtube.com/watch?v=odFFJIgDElw&t=1096s

[2] and here a short intro into human-cetrend AI (HCAI) and explainable AI:
https://www.youtube.com/watch?v=UuiV0icAlRs

GENERAL INFORMATION:
AK HCI, 23S, 706.046, Summer term 2023, 4,5 ECTS,  3 VU, Selective subject for 921 Computer Science (C4 Games Engineering – Human-Computer Interaction, F3 Interactive and Visual Information Systems), for 924 Software Engineering and Management, and for Doctoral School Computer Science, i.e. 786 Doctoral Programme in Technical Sciences, and 791 Doctoral Programme in Natural Sciences.

COURSE DESCRIPTION:
CONTENT:  In this research-based teachig (RBT) course you will work on specific Mini Projects in groups of 1 to 3 students and – guided by a tutor – learn to experiment and apply scientific methods and their practical implementation in experimental software engineeering. Software Engineering is seen as dynamic, interactive and cooperative process which facilitate an optimal mixture of standardization and tailor-made solutions. General motto of this course: Science is to test crazy ideas, Engineering is to put these ideas into Business.
PREVIOUS KNOWLEDGE EXPECTED: General interest in the interface between human intelligence and artificial intelligence (AI). Special interest in human-centered AI (HCAI) and “explainable AI” (xAI) to enable human experts to retrace machine decisions, thus making it human understandable why an algorithm produced a certain result. One goal of the course is to raise awareness for ethically responsible AI and transparent, interpretable and verifiable machine learning.
ASSESSESMENT: Individual as well as Group work will be assessed on both process and product, and each student is then asked for her/his contribution to the outcome, we follow CMU, see: https://www.cmu.edu/teaching/assessment/assesslearning/groupWork.html

> LINK TO TUG-Online

06.03.2023, Monday, 18:00 pm CET, 10:00 am MST, 04:00 am AEST

  • Part 1) Welcome and overview to the principles of this course by the team of the HCAI-Lab
  • Part 2) Top-level presentation of the central topics of the class of 2023 (find title, abstract and short bios of the guest professors below)
  • Part 3) Students speak: short and concise 1-minute self-introduction (elevator speech style) of each student answering three questions:
    • 1) Background and status of study (past – present – future)
    • 2) Topical interests and expectations to this course
    • 3) Level of programming experience
  • Part 4) Question-answer round
  • Part 5) Closing
  • As the course progresses the goal is to match each student to the optimal Mini Project according to his or her interests and abilities.
  • Mini Project -> Group (Note: A group can consist of 1, 2, or 3 students)
  • In the list below you find the top-level descriptions of the Mini Projects, the details are in the TeachCenter and/or will be individually set between the group and the group tutor.

Below you will find a selection of Mini Projects in random order in top-level description. Details, schedules and deliverables, as well as individual means of communication (e.g. email contacts, Slack, Discord, or any other) will be arranged directly with the respective group tutors. We want to match the ideally suited students (knowledge, expertise, interest) to the most suitable Mini Project. The matchmaking will be made via the TeachCenter. Please proceed to the TeachCenter and enroll to the respective group – first come first serve principle.

Mini Project 01: Graph Neural Networks (GNN) and Federated Learning (FL) GNNFL

Goal: Federate the GNN training process of a GNN in the scenario where there is
one central server and many clients (at least two), each with its dataset.

Description: In the era of big data, there are some scenarios where there are no one big dataset by which one can train one large neural network, but many small ones are gathered by slightly different processes. For example, many hospitals may have slightly different datasets that are used locally for prediction tasks. Due to data protection purposes, the hospitals cannot share data or bring them to a central server, so that an all-encompassing neural network training is accomplished. Nevertheless, each of them can train on its dataset and share the weights or other information in a privacy-preserving way and create a neural network that can grasp aspects of different datasets, thereby potentially having more generalization abilities.

Task:

[0.] Input: Dataset of annotated protein graphs for binary classification

[1.] Method:

– Step 1: Simulation of a Federated scenario with several clients and one central server. Each of the clients will contain only one part of the input dataset. The data split should not be uniform, in the sense that each client will have a different number of samples and different (im)balance in the classes.

– Step 2: Train the client’s GNNs, each with its dataset.

– Step 3: Transfer all client weights to the central server. Aggregate them with an average and send the resulting weights back to the clients.

– Step 4: Adopt the weights sent by the server, predict with those on the partial dataset, compare and report the performance results.

[2.] Requirements: Python, PyTorch, PyTorch Geometric (PyG): https://pytorch-geometric.readthedocs.io
and preferably an NVIDIA GPU

References:

[1.] Kipf, Thomas N., and Max Welling.
“Semi-supervised classification with graph convolutional networks.”
arXiv preprint arXiv:1609.02907 (2016).
[2.] Matschinske, Julian, et al. “The featurecloud AI store for federated learning
in biomedicine and beyond.” arXiv preprint arXiv:2105.05734 (2021).
[3.] Jakub Konečný, H Brendan Mcmahan, Felix X Yu, Peter Richtárik, Ananda Theertha Suresh & Dave Bacon (2016). Federated learning: Strategies for improving communication efficiency. arXiv preprint arXiv:1610.05492. https://research.google/pubs/pub45648/

Assigned to: GROUP MH

Mini Project 02: Graph extraction and Graph Neural Networks (GNN) training for graph classification of images of trees

Goal: Graph extraction and classification of graphs extracted from tree crown satellite images.

Description: Bark beetles are creatures that live in the forest and can “eat up” trees. The trees that are “attacked” by bark beetles are generally destroyed and only
in rare cases can their stem be useful. Bark-beetles follow pheromones and kairomones and usually when the attack at a tree is recognizable, they have already moved and attacked some of the nearby ones with high probability. Satellite and drone images have already been incorporated to recognize healthy, diseased or half-diseased trees from the colours of the crown (red, green, red stem and green leaves or the opposite), which has a graph structure itself. Furthermore, a forest area also can be represented by a graph. This would be a much more effective way to solve the task than to examine every tree separately by observation. The classification of the crown images has to also take into account shadowing, the slope of the mountain and so on, which are not going to be part of this task.

Tasks:

[0.] Input: Dataset of annotated images of tree crowns that have a graph structure. Each of them is annotated with a label being healthy, diseased or half-diseased.
The goal is the classification of the graphs.

[1.] Method:

– Step 1: Graph extraction, first by simple clustering and edge detection methods, then with more sophisticated GNNs
– Step 2: Graph classification with GNNs

[2.] Requirements: Python, PyTorch, PyTorch Geometric (PyG) or Deep Graph Library (DGL) and preferably an NVIDIA GPU

References:

[1.] Strîmbu, Victor F., and Bogdan M. Strîmbu. “A graph-based segmentation algorithm for tree crown extraction using airborne LiDAR data.” ISPRS Journal of Photogrammetry and Remote Sensing 104 (2015): 30-43.

[2.] Xu, Keyulu, et al. “How powerful are graph neural networks?.” arXiv preprint arXiv:1810.00826 (2018).

Tutors: Anna & Team

References:

Assigned to: GROUP xxx

Mini Project 03: Point Cloud data classification with Point-GNN

Goal: Classification of annotated point cloud data in the forest

Description: Agricultural and forest applications can be enhanced with the use of AI algorithms. To effectively simulate future automated operations and make use of User Interfaces (UI), the creation of a digital twin of the forest area is important. This can be achieved with the use of Light Detection and Ranging (LiDAR) point cloud data that contain coordinates information. The extraction of graphs according to the fixed-radius near neighbours and their further processing and classification with a GNN is one of the first applications of Geometric Deep Learning on the topic.

Tasks:

[0.] Input: a dataset of annotated point cloud data of trees. The dataset is labelled; several tree types comprise the classes. The goal is the classification of the points.

[1.] Method: Point cloud GNN https://github.com/WeijingShi/Point-GNN

After dataset analysis and preprocessing, use the Point-GNN to classify the point cloud data.

[2.] Requirements: Python, tensorflow and preferably an NVIDIA GPU

References:

[1.] Shi, Weijing, and Raj Rajkumar. “Point-gnn: Graph neural network for 3d object detection in a point cloud.” Proceedings of the IEEE/CVF conference on
computer vision and pattern recognition. 2020.

Assigned to: GROUP xxx

Mini Project 04: Data analysis of tabular data (preprocessing, outlier detection, dimensionality reduction)
and modelling with Decision Trees, Random Forests and Fully-Connected Neural Networks.

Goal: Perform data analysis, preprocessing, classification, regression and feature importance computation on a tabular dataset

Description: The prevention of accidents in forest operations is of great importance. Depending on the severity of the accident, the person(s) affected may spend lots of days hospitalized, impaired, affected for the rest of their lives or even die. Therefore an analysis of the potential factors that influenced such an accident is of great importance. From detailed tabular data containing information about the accident, such as timepoint, age of the worker, type of task, part of the body that was injured and so on, a prediction of the number of recovery days or death needs to be performed. Visualization, cleaning, outlier detection, linear and non-linear correlations is already been performed. Further steps include dimensionality reduction, techniques, modelling with decision trees, random forests and neural networks, as well as some preliminary explanations thereof. The students are welcome to use other methods of their choice as XGBoost instead of f.e. random forest or the newer TabPFN is mandatory.

Tasks:

[0.] Input: One tabular dataset containing ca. 40 input features, 2 continuous target variables for regression and one categorical for classification.

[1.] Method 1: Decision Trees, Random Forests, and Fully-Connected Neural Networks in similar means as in reference [1.]

or

[2.] Method 2: TabPFN – reference [2.] https://github.com/automl/TabPFN

[3.] Requirements: Python, scikit-learn, matplotlib, plotly

References:

[1.] Hoenigsberger, Ferdinand, et al. “Machine Learning and Knowledge Extraction to Support Work Safety for Smart Forest Operations.” Machine Learning and Knowledge Extraction: 6th International Cross-Domain Conference, CD-MAKE 2022, Vienna, Austria, August 23–26, 2022, Proceedings. Cham: Springer International Publishing, 2022.

[2.] Hollmann, Noah, et al. “Tabpfn: A transformer that solves small tabular classification problems in a second.” arXiv preprint arXiv:2207.01848 (2022).

Assigned to: GROUP xxx

Mini Project 05:  Which explanation method of machine learning is preferred by end users?

Goal: Find out if there is a “preferred” xAI explanation for end users (“What explain to whom”) in the context of decision-making.

Description: This miniproject allows to delve into the investigation of an interesting and relevant question: whether different machine learning (ML) explanation techniques [1], [2] differ in terms of understandability and interpretability by users. If so, is there a method that is preferred (easy to understand and interpret) by users? Is it possible to use this technique as a “gold standard” or for multiple scenarios? This research question can be achieved by designing an online experiment by manipulating ML explanations in ML-informed decision-making tasks. Participants need to be invited to conduct tasks in order to collect their responses. The collected data is then analysed (e.g. statistical analysis) to answer the respective research questions.

Tasks: 1) Design an experiment to investigate different xAI methods in ML-information decision-making. 2) Develop a user study or an online survey to collect user responses. 3) Analyse user responses to get insights.

References:

[1] Vijay Arya, Rachel Bellamy, Pin-Yu Chen, Amit Dhurandhar, Michael Hind, Samuel C. Hoffman, Stephanie Houde, Q. Vera Liao, Ronny Luss & Aleksandra Mojsilovic (2019). One explanation does not fit all: A toolkit and taxonomy of ai explainability techniques. https://arxiv.org/abs/1909.03012

[2] AI Explainability 360: extensible open source toolkit to help to comprehend how machine learning models predict labels by various means throughout the AI application lifecycle:  http://aix360.mybluemix.net/

[3] Holzinger, A., Saranti, A., Molnar, C., Biecek, P., Samek, W. (2022). Explainable AI Methods – A Brief Overview. In: Holzinger, A., Goebel, R., Fong, R., Moon, T., Müller, KR., Samek, W. (eds) xxAI – Beyond Explainable AI. xxAI 2020. Lecture Notes in Computer Science LNCS 13200. Springer, Cham. https://doi.org/10.1007/978-3-031-04083-2_2

[4] Angerschmid A, Zhou J, Theuermann K, Chen F, Holzinger A. Fairness and Explanation in AI-Informed Decision Making. Machine Learning and Knowledge Extraction. 2022; 4(2):556-579. https://doi.org/10.3390/make4020026

Mini Project 06:  Post-hoc versus ante-hoc explanation strategies

Goal: Investigate the differences between post-hoc and ante-hoc explanation techniques in machine learning. Find out which of these strategies is easier to understand for end users or a specified target user group. What are the benefits of either one?

Description: This Mini Project allows students to investigate differences between post-hoc and ante-hoc machine learning (ML) explanation techniques. This investigation should involve the perceptional differences in terms of understandability and interpretability by users, as well as the advantages and disadvantages of each strategy. For this project, students should familiarize themselves with the terms explainable AI, post-hoc and ante-hoc explanations. This research question can be achieved by designing an online experiment with explanations e.g. in ML-informed decision-making tasks. Participants need to be invited to conduct tasks in order to collect their responses. The collected data is then analysed (e.g. statistical analysis) to answer the respective research questions.

Tasks: 1) Design an experiment to investigate different strategies. 2) Develop a user study or an online survey to collect user responses. 3) Analyse user responses to get insights.

References:

[1] Vijay Arya, Rachel Bellamy, Pin-Yu Chen, Amit Dhurandhar, Michael Hind, Samuel C. Hoffman, Stephanie Houde, Q. Vera Liao, Ronny Luss & Aleksandra Mojsilovic (2019). One explanation does not fit all: A toolkit and taxonomy of ai explainability techniques. https://arxiv.org/abs/1909.03012

[2] AI Explainability 360: extensible open source toolkit to help to comprehend how machine learning models predict labels by various means throughout the AI application lifecycle:  http://aix360.mybluemix.net/

[3] Holzinger, A., Saranti, A., Molnar, C., Biecek, P., Samek, W. (2022). Explainable AI Methods – A Brief Overview. In: Holzinger, A., Goebel, R., Fong, R., Moon, T., Müller, KR., Samek, W. (eds) xxAI – Beyond Explainable AI. xxAI 2020. Lecture Notes in Computer Science(), vol 13200. Springer, Cham. https://doi.org/10.1007/978-3-031-04083-2_2

[4] Vale, D., El-Sharif, A. & Ali, M. Explainable artificial intelligence (XAI) post-hoc explainability methods: risks and limitations in non-discrimination law. AI Ethics 2, 815–826 (2022). https://doi.org/10.1007/s43681-022-00142-y

[5] Cabitza, F., Campagner, A., Malgieri, G., Natali, C., Schneeberger, D., Stoeger, K. & Holzinger, A. 2023. Quod erat demonstrandum?-Towards a typology of the concept of explanation for the design of explainable AI. Expert Systems with Applications, 213, (3), https://doi.org/10.1016/j.eswa.2022.118888

Mini Project 07: “XAI Design Patterns for Software Engineers” for human-centered AI explanations

Goal: Develop a guideline on how xAI methods should be used/ implemented in order to adhere to user requirements (and possible legal requirements)

Description: This Mini Project is to delve into the generation of machine learning explanations, as well as usability and other aspects. The question of how to design explanations and/or explanatory user interfaces is still an open research topic. This project is meant to investigate different aspects of machine learning explanations in an interdisciplinary manner. For this existing xAI methods could be combined, or a new / different version / new visualizations could be proposed by the group.

Tasks: 1) Chose a use case where xAI is necessary and investigate different xAI methods. 2) Contrast those techniques with each other, based on the requirements. 3) Highlight your chosen method and argue why.

References:

[1] Vijay Arya, Rachel Bellamy, Pin-Yu Chen, Amit Dhurandhar, Michael Hind, Samuel C. Hoffman, Stephanie Houde, Q. Vera Liao, Ronny Luss & Aleksandra Mojsilovic (2019). One explanation does not fit all: A toolkit and taxonomy of ai explainability techniques. https://arxiv.org/abs/1909.03012

[3] Juristo, N., Moreno, A., Sanchez-Segura, MI., Baranauskas, M.C.C. (2007). A Glass Box Design: Making the Impact of Usability on Software Development Visible. In: Baranauskas, C., Palanque, P., Abascal, J., Barbosa, S.D.J. (eds) Human-Computer Interaction – INTERACT 2007. INTERACT 2007. Lecture Notes in Computer Science, vol 4663. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-74800-7_49

[3] Xin He, Yeyi Hong, Xi Zheng & Yong Zhang (2022) What Are the Users’ Needs? Design of a User-Centered Explainable Artificial Intelligence Diagnostic System, International Journal of Human–Computer Interaction, http://doi.org/10.1080/10447318.2022.2095093

Mini Project 08: Autonomous Driving – Maneuvering our robot test park

Goal: Experiment with various model cars and check the feasibility for low-cost autonomous driving

In this mini-project we explore the use of reinforcement learning for developing a miniature self-driving vehicle that can navigate through difficult terrains. Autonomous is a topic which has recently received much attention, especially in the context of driving in cities. However, navigation in rough terrains has been much less developed, and especially in forestry it is often necessary to use specialized equipment that can navigate the terrain safely and efficiently.
In this seminar, you will gain hands-on experience in designing, building, and testing a miniature self-driving vehicle capable of operating in challenging environments, simulating the conditions of real-world forest roads. You will furthermore explore various sensors and control algorithms necessary for creating an autonomous vehicle capable of traversing rough terrain. Students have the opportunity to experiment with different reinforcement learning algorithms and techniques, including deep reinforcement learning and imitation learning, and evaluate their performance in the context of a miniature self-driving vehicle.

Tutors: Florian, Carlo & Team

Assigned to: GROUP xxx

Mini Project 09: Supporting Cancer Scientists

Goal: Supporting cancer scientists in integrating the right data, a time based analysis pipeline
Problem: Integrating newest comprehensive cancer data
Description:
– Query different databases for genomics/metabolomics data,
– focus on glioma with features (mutations, differential expression), age, treatment, visualize over time, providing links to csvs

Tutors: Fleur & Claire

Assigned to: GROUP xxx

Mini Project 10: Comparison of drug-target interaction visualization for glioma research

Goal: Learn how interaction of drug-targets in cancer research can be visualized and how to compare such visualization tools.
Description:
– Identify visualization tools (ideally web-based),
– set up a table of features for comparison & analyze

Tutors: Fleur & Claire

Assigned to: GROUP xxx

Mini Project 11: Classification of Mirco-Flow-Images

Goal: Problem:
Thousands of images of particles need to be classified (particles such as dust or proteins of size 1-100 µm, black and white, hapes and structures vary etc.)
Description:
– Develop an automatic algorithm quantifying the images and/or
– explaining the reasoning for the classification

Tutors: Elisabeth, Sarah, Fleur & Claire

Assigned to: GROUP xxx

Mini Project 12: Molecular Structure Visualization

Problem:
Problem:
Similarity between the structure of molecules is often difficult to determine
Description:
– Visualize the space of molecules where similar molecules are close to each other (or classify them based on their drawn structure)
– The structure of molecules is unique
– Thousands of molecular descriptors (numbers describing them) can be calculated with the Python package RDKIT
– There are too many descriptors to see similarities
– Dimension reduction and visualizations should help to understand the space of molecules
– Drawn molecular structure can be used for similarities as well
– Molecules will come from groups of certain pharmaceutical components

Tutors: Elisabeth, Sarah, Fleur & Claire

Assigned to: GROUP xxx

Some background reading:

Intelligent User Interfaces (IUI) is where Human-computer interaction (HCI) meet Artificial Intelligence (AI). This is often defined as the design of intelligent agents, which is the core essence in Machine Learning (ML). In interactive Machine Learning (iML) this agents can also be humans:

Holzinger, A. 2016. Interactive Machine Learning for Health Informatics: When do we need the human-in-the-loop? Springer Brain Informatics (BRIN), 3, (2), 119-131, doi:10.1007/s40708-016-0042-6.
Online: https://link.springer.com/article/10.1007/s40708-016-0042-6

Holzinger, A. 2016. Interactive Machine Learning (iML). Informatik Spektrum, 39, (1), 64-68, doi:10.1007/s00287-015-0941-6.
Online: https://link.springer.com/article/10.1007/s00287-015-0941-6

Holzinger, A., et al. 2017. A glass-box interactive machine learning approach for solving NP-hard problems with the human-in-the-loop. arXiv:1708.01104.
Online: https://arxiv.org/abs/1708.01104

Holzinger, A., et al. 2017. What do we need to build explainable AI systems for the medical domain? arXiv:1712.09923.
Online: https://www.groundai.com/project/what-do-we-need-to-build-explainable-ai-systems-for-the-medical-domain

Holzinger, A. 2018. Explainable AI (ex-AI). Informatik-Spektrum, 41, (2), 138-143, doi:10.1007/s00287-018-1102-5.
Online: https://link.springer.com/article/10.1007/s00287-018-1102-5

Holzinger, A., et al. 2018. Interactive machine learning: experimental evidence for the human in the algorithmic loop. Applied Intelligence, doi:10.1007/s10489-018-1361-5.
Online: https://link.springer.com/article/10.1007/s10489-018-1361-5

In this practically oriented course, Software Engineering is seen as dynamic, interactive and cooperative process which facilitate an optimal mixture of standardization and tailor-made solutions. Here you have the chance to work on real-world problems (on the project digital pathology).

Previous knowledge expected

Interest in experimental Software Engineering in the sense of:
Science is to test crazy ideas – Engineering is to put these ideas into Business.

Interest in cross-disciplinary work, particularly in the HCI-KDD approach: Many novel discoveries and insights are found at the intersection of two domains, see: A. Holzinger, 2013. “Human–Computer Interaction and Knowledge Discovery (HCI-KDD): What is the benefit of bringing those two fields to work together?“, in Multidisciplinary Research and Practice for Information Systems, Springer Lecture Notes in Computer Science LNCS 8127, A. Cuzzocrea, C. Kittl, D. E. Simos, E. Weippl, and L. Xu, Eds., Heidelberg, Berlin, New York: Springer, pp. 319-328.  [DOI] [Download pdf]

General guidelines for the technical report

Holzinger, A. (2010). Process Guide for Students for Interdisciplinary Work in Computer Science/Informatics. Second Edition. Norderstedt: BoD (128 pages, ISBN 978-3-8423-2457-2)

also available at Fachbibliothek Inffeldgasse.

Technical report templates

Please use the following templates for your scientific paper:

(new) A general LaTeX template can be found on overleaf > https://www.overleaf.com/4525628ngbpmv

Further information and templates available at: Springer Lecture Notes in Computer Science (LNCS)

Review template 2020

REVIEW-TEMPLATE-2020-XXXX (Word-doc 342 kB)

REVIEW-TEMPLATE-2020-XXXX (pdf, 143 kB)