Juliacon 2024

What's new in Trustworthy AI in Julia (Taija)?
2024-07-11 , For Loop (3.2)

Taija is a growing ecosystem of packages geared towards Trustworthy Artificial Intelligence in Julia. This talk will provide an update on recent developments of some of our core packages. In particular, the focus will be on contributions made by two groups of students from TU Delft, as well as ongoing JSoC work.


Julia’s ecosystem for Artificial Intelligence (AI) and Machine Learning (ML) has been growing at a relatively rapid pace, perhaps most notably so in the SciML domain but also more broadly (e.g. Flux, MLJ, JuliaGenAI, …). The goal of Taija is to make AI models more trustworthy, where we have so far focused primarily on the interplay with packages in the latter category.

Please note: This talk will not introduce various packages in great detail but instead focus on highlighting recent developments and research. If Taija is entirely new to you, I recommend you to check out these slides that I recently presented at the Alan Turing Institute. They provide an accessible and relatively high-level overview of our core packages.

🏠 About

Taija currently covers a range of approaches towards making AI systems more trustworthy:

Various meta packages can be used to extend the core functionality:

The TaijaBase.jl package provides common symbols, types and functions that are used across all or multiple Taija packages.

🛠️ Recent Developments

A lot has happened since we presented some of our core packages at JuliaCon in 2022 and 2023. During the past year, the focus has been on extending and improving these existing packages. Various groups of undergraduate students at TU Delft as well as a few external collaborates have contributed to these efforts.

CounterfactualExplanations.jl

CounterfactualExplanations.jl is a package for Counterfactual Explanations and Algorithmic Recourse in Julia.

  • The code base has been streamlined to make it more accessible to new contributors. (students)
  • Part of this involved moving functionality out of the package into new meta-packages. (students)
  • Multiple new counterfactual generators including FeatureTweak for decision trees and random forests. (students)
  • Improved interoperability with Python and R through TaijaInteroperability.jl. (students)
  • Integration of ECCCo generator for faithful model explanations (Altmeyer et al. 2024).
  • Huge improvements to computational speed and native support for multi-threading and multi-processing.

LaplaceRedux.jl

LaplaceRedux.jl is a package for effortless Bayesian Deep Learning through Laplace Approximation for Flux.jl neural networks.

  • Support for multi-class problems. (students)
  • Support for more sophisticated and scalable Hessian approximations. (students)
  • Interface to MLJ for easy model training and evaluation. (students)

Students’ Experience

I will also briefly report back on the students’ experience working on these projects. This includes the challenges they faced, the skills they acquired, and the impact they had on the Taija ecosystem.

🎯 Ongoing and Future Projects

Taija has been running two Julia Season of Code projects this summer.

  1. (Conformal Bayes) Bridging the gap between Bayesian and frequentist approaches to Predictive Uncertainty Quantification.
  2. (Causal Recourse) From minimal perturbations to minimal interventions for Algorithmic Recourse.

Finally, we are also working with a group of students on TaijaInteractive.jl: a Genie-based web application for interactive model explanations.

📚 References

Altmeyer, Patrick, Mojtaba Farmanbar, Arie van Deursen, and Cynthia CS Liem. 2024. “Faithful Model Explanations Through Energy-Constrained Conformal Counterfactuals.” In Proceedings of the AAAI Conference on Artificial Intelligence, 38:10829–37. 10.

See also:

I’m a PhD student at Delft University of Technology working on the intersection of Trustworthy Artificial Intelligence and Finance. My current research revolves around Counterfactual Explanations and Probabilistic Machine Learning. Previously, I worked as an Economist for the Bank of England.

I started working with Julia at the beginning of PhD in late 2021 and have since developed and used various packages, some of which I presented at JuliaCon 2022 and 2023. These packages now have a common home called Taija, which stands for Trustworthy Artificial Intelligence in Julia.

You can find out more about my work on my website.

This speaker also appears in: