Software and Tools


As a Network of Excellence and a European Lighthouse, ELSA is committed to transparently sharing the network’s research results. Foundational AI and ML research and its results are key to increasing the safety of AI in Europe.

On this page, we guide you through the ELSA-affiliated software, tools, repositories, and more.

Please note that the content primarily relates to ELSA research and therefore refers to ELSA-related or acknowledging papers. You can find the papers on the publications page.

Topics of the tools you will find:



Auditing

After writing your code, you might want to audit its performance against attacks, vulnerabilite s, and securities. Here Below, you find helpful input and inspiration from the ELSA network.

Auditing Vulnerabilities

Repositories for developers aiming to audit their code in terms of vulnerability

CodeLMSec BenchmarkPaper Resource: RepositoryApplication Area:
Auditing Code Generation for Vulnerabilities
Access via GitHub

Code repository containing data for “CodeLMSec Benchmark: Systematically Evaluating and Finding Security Vulnerabilities in Black-Box Code Language Models”. The paper presents a method to systematically study the security issues of code language models to assess their susceptibility to generating vulnerable code.

(SVEN) Large Language Models for Code: Security Hardening and Adversarial TestingPaper Resource: RepositoryApplication Area:
Auditing Code Generation for Vulnerabilities
Access via GitHub

Code repository containing data for the paper “Large Language Models for Code: Security Hardening and Adversarial Testing”

Explainability

Tools for developers and researchers to increase the explainability of their code.

b-cos explainabilityPaper Resource: RepositoryApplication Area:
Repository making DNNs inherently interpretable.
Access via GitHub

Code repository for the paper “B-cos Networks: Alignment is all we need for Interpretability”, that presents a new direction for increasing the interpretability of deep neural networks (DNNs) by promoting weight-input alignment during training.

Machine Learning

MLDoctorCode BaseApplication Area:
Auditing Machine Learning
Access via GitHub

MLDoctor is a code base for developers and/or researchers for holistically assessing the risks of inference attacks against machine learning models.

SecMLPython LibraryApplication Area:
Auditing Machine Learning
Access via GitHub

SecML is a python library for Secure and Explainable Machine Learning. It is equipped with evasion and poisoning adversarial machine learning attacks, and it can wrap models and attacks from other different frameworks.

SecML MalwarePython LibraryApplication Area:
Auditing Machine Learning by creating adversarial attacks against Windows Malware detectors.
Access via GitHub

SecML Malware is a python library for creating adversarial attacks against Windows Malware detectors. Built on top of SecML, SecML Malware includes most of the attack proposed in the state of the art.

Privacy

GanLeaksPaper Resource: RepositoryApplication Area:
Membership Inference Attacks against Generative Models
Access via GitHub

Code repository containing the implementation for “GAN-Leaks: A Taxonomy of Membership Inference Attacks against Generative Models” (CCS 2020)

MLLeaksPaper Resource: RepositoryApplication Area:
Membership inference attacks on Machine Learning as a service (MLaaS)
Access via GitHub

Code repository for the paper “ML-Leaks: Model and Data Independent Membership Inference Attacks and Defenses on Machine Learning Models”


Interpretability

Helpful tools to increase the interpretability of code for developers and researchers.

Interpretable-through-prototypes deepfake detection for diffusion modelsPaper Resource: RepositoryApplication Area:
Auditing Interpretability
Access via GitHub

Repository containing materials for the following paper “Interpretable-through-prototypes deepfake detection for diffusion models.” Proceedings of the IEEE/CVF International Conference on Computer Vision. 2023.


LLM Deliberation & Vulnerability

Input for developers and researchers tackling LLM deliberation and tracking vulnerabilities.

LLM deliberationPaper Resource: RepositoryApplication Area:
LLM Deliberation
Access via GitHub

Repository for benchmark paper “Cooperation, Competition, and Maliciousness: LLM-Stakeholders Interactive Negotiation” (NeurIPS 2024)

LVE RepositoryRepositoryApplication Area:
LLM Vulnerability Documentation
Access via website

Tracking and documentation of vulnerabilities and exposures of large language models (LVEs).


Privacy-Preserving and Collaborative Learning

Repositories and code tackling challenges in privacy-preserving matters and collaboration. These repositories, models, and code are work related to specific papers. Applying and using them requires a certain knowledge for the topics such as algorithm development, AI, ML, security and privacy constraints and more.

CoBoPaper Resource: RepositoryApplication Area:
Personalized vision models and personalized collaborative learning.
Access via GitHub

Code for “CoBo: Collaborative Learning via Bilevel Optimization” published at NeurIPS 2024

CoMiGSPaper Resource: CodeApplication Area:
Collaborative Language Modeling
Access via GitHub

Code for “On-Device Collaborative Language Modeling via a Mixture of Generalists and Specialists”.

DECORPaper Resource: CodeApplication Area:
Decentralised Learning
Access via GitHub

Code for “The Privacy Power of Correlated Noise in Decentralized Learning” Published at ICML 2024.

DPConvCNPPaper Resource: CodeApplication Area:
Differentially Private Regression
Access via GitHub

Repository for differentially private convolutional conditional neural process (DPConvCNP) model presented in the paper Noise-Aware Differentially Private Regression via Meta-Learning (NeurIPS 2024).

DPFed-KMPaper Resource: CodeApplication Area:
Kaplan-Meier estimators
Access via GitHub

Code for: “Private and Collaborative Kaplan- Meier Estimators” published at WPES at CCS 2024.

DP-FSLPaper Resource: RepositoryApplication Area:
Membership Inference Attacks against Generative Models
Access via GitHub

Code repository containing the implementation for “GAN-Leaks: A Taxonomy of Membership Inference Attacks against Generative Models” (CCS 2020).

FedLAP-DPPaper Resource: CodeApplication Area:
Privacy-preserving approach for federated learning
Access via GitHub

Code for: “FedLAP-DP: Federated Learning by Sharing Differentially Private Loss Approximations“ published at PoPETs’24.

GS-WGANPaper Resource: CodeApplication Area:
Sensitive data sanitisation with rigorous privacy guarantees
Access via GitHub

Code for: “GS-WGAN: A Gradient-Sanitized Approach for Learning Differentially Private Generators” published at NeurIPS 2020.

ML-Doctor CodePaper Resource: CodeApplication Area:
Inference Attacks against Machine Learning Models
Access via GitHub

Code for: “ML-Doctor: Holistic Risk Assessment of Inference Attacks Against Machine Learning Models” published at USENIX’22.

MyTHPaper Resource: RepositoryApplication Area:
Bias in Federated Learning
Access via GitHub

Code for “MyThisYourThat: Interpretable Identification of Systematic Bias in Federated Learning for Biomedical Images”.

Personalized Collaborative LLMsPaper Resource: Code BaseApplication Area:
LLM finetuning
Access via GitHub

Code for “Personalized Collaborative Fine-Tuning for On-Device Large Language Models” Published at CoLM 2024. Exploration on-device self-supervised collaborative fine-tuning of large language models with limited local data availability, using Low-Rank Adaptation (LoRA).

PRO-GENE-GENPaper Resource: RepositoryApplication Area:
Gene expression data generation
Access via GitHub

Code for: “Towards Biologically Plausible and Private Gene Expression Data Generation” published at PoPETs’24.

PROLINPaper Resource: RepositoryApplication Area:
Federated Learning
Access via GitHub

Code for: “Client-specific Property Inference against Secure Aggregation in Federated Learning” published at WPES at CCS 2023.

PSGPaper Resource: RepositoryApplication Area:
Federated Learning
Access via GitHub

Code for: “Client-specific Property Inference against Secure Aggregation in Federated Learning” published at WPES at CCS 2023.

individual-accounting-gdpPaper Resource: RepositoryApplication Area:
Gaussian Differential Privacy
Access via GitHub

Model and Code for “Meditron-70b: Scaling medical pretraining for large language models”.

PFL-DocVQA-CompetitionCompetition ResourceApplication Area:
Privacy-preserving for fine-tuning document understanding multi-modal language models
Access via GitHub

This repository with base framework and method for the PFL-DocVQA Competition and code for: “Privacy-Aware Document Visual Question Answering” published in ICDAR 2024.

SecurityNet CodePaper Resource: RepositoryApplication Area:
ML model training
Access via GitHub

Code for: “SecurityNet: Assessing Machine Learning Vulnerabilities on Public Models” published at USENIX 2024.

subsampling-is-not-magicPaper Resource: Code & notebookApplication Area:
Differentially Private Stochastic Optimisation
Access via GitHub

Code and Mathematica notebook for: “Subsampling is not Magic: Why Large Batch Sizes Work for Differentially Private Stochastic Optimisation” (ICML 2024).

Towards Efficient Scalable Training DP DLPaper Resource: RepositoryApplication Area:
Deep Learning Training
Access via GitHub

Code to reproduce the experiments carried out in “Towards Efficient and Scalable Training of Differentially Private Deep Learning” published at Workshop on Advancing Neural Network Training at International Conference on Machine Learning (WANT@ICML 2024).


Technical Robustness and Safety

From adversarial robustness to technical safety, the repositories and content below aim to support researchers in exploring and testing their algorithms.

Adversarial Pruning BenchmarkPaper Resource: RepositoryApplication Area:
LLM Deliberation
Access via GitHub

The Adversarial Pruning Benchmark is a framework implemented to enable a uniform and reliable evaluation of Adversarial Pruning methods.

AdversarialRecoveryRepositoryApplication Area:
Sample recovery
Access via GitHub

AdversarialRecovery is a repository for robust adversarial sample recovery, especially for cross-domain samples (unseen datasets, unseen objects, and unseen adversarial algorithms to the training stage).

Adversarial Robustness Certification for Bayesian Neural NetworksPaper Resource: RepositoryApplication Area:
Robustness certification of Bayesian neural networks (BNNs) 
Access via GitHub

This repository provides implementations for training Bayesian Neural Networks (BNNs) using various inference methods, along with comprehensive certifications for their probabilistic robustness, decision robustness, and uncertainty quantification.

Automated Design for Linear Bounding Functions for Sigmoidal Nonlinearities in Neural NetworksPaper Resource: RepositoryApplication Area:
Robustness verification framework for neural networks
Access currently unavailable

The code implements a robustness verification framework for neural networks with general activation functions (e.g., Sigmoid, Tanh), focusing on enhancing the quality of linear bounds in convex relaxation techniques.

FAST (FeAture SelecTion)CodeApplication Area:
Testing for deep neural networks
Access via GitHub

The code implements FAST (FeAture SelecTion), a method to enhance the efficiency and effectiveness of test case prioritization for deep neural networks (DNNs).

FullCertCertification LibraryApplication Area:
Neural network training
Access via GitHub

A Deterministic End-to-End Certification for Training and Inference of Neural Networks.

GeometricKernelsLibraryApplication Area:
Kernel Implementation
Access via website or GitHub

GeometricKernels is a library that implements kernels — most importantly, heat and Matérn kernels — on non-Euclidean spaces such as Riemannian manifolds, graphs and meshes.

ModSec-AdvLearnPaper Ressource: ExperimentsApplication Area:
Countering Adversarial SQL Injections
Access via GitHub

ModSec-AdvLearn is a machine-learning-based methodology that improves the detection of SQL injection attacks on Web Application Firewall (WAF) while addressing vulnerabilities to adversarial manipulations.

NebulaTransformer Neural Network Application Area:
Windows Malware Analysis
Access via GitHub

Nebula is a tool to perform dynamic analysis of Windows malware which, by generalizing across different behavioral representations and formats, combines diverse information from dynamic log reports.

PREMAP: A Unifying PREiMage APproximation Framework for Neural Networks
Framework
Application Area:
Preimage Approximation
Access via GitHub

A general and flexible preimage approximation framework designed to generate inputs that satisfy specific target properties.

SecML-TorchPython LibraryApplication Area:
Adversarial Machine Learning and robustness evaluation
Access via GitHub

SecML-Torch (SecMLT) is an open-source Python library designed to facilitate research in the area of Adversarial Machine Learning (AML) and robustness evaluation.

SecML-Torch Encryption PluginPython PluginApplication Area:
Encryption (SecML-Torch)
Access via GitHub

An open-source Python plugin for the SecML-Torch library that integrates homomorphic encryption techniques within machine learning models.

SecML-Torch Fairness PluginPython PluginApplication Area:
Fairness (SecML-Torch)
Access via GitHub

An open-source Python plugin for the SecML-Torch library that introduces a set of methods for analyzing and mitigating discriminatory bias in machine learning models.

SecML-Torch Interpretability PluginPython PluginApplication Area:
Interpretability (SecML-Torch)
Access via GitHub

An open-source Python plugin for the SecML-Torch library. This plugin provides tools for the interpretation and explainability of machine learning models.

Sigma-zeroCodeApplication Area:
Optimization of ℓ0-norm Adversarial Examples
Access via GitHub

This tool is the official PyTorch implementation of the σ-zero: Gradient-based Optimization of L0-norm Adversarial Examples.

TaskTrackerCodeApplication Area:
Task drift detection in LLMs
Access via GitHub

TaskTracker is an approach to detecting task drift in Large Language Models (LLMs) by analysing their internal activations. It provides a simple linear probe-based method and a more sophisticated metric learning method to achieve this. The project also releases the computationally expensive activation data to stimulate further AI safety research.

Uncertainty Adversarial RobustnessPaper Resource: RepositoryApplication Area:
Uncertainty Attack Performance
Access via GitHub

The Uncertainty Adversarial Robustness repository provides practical tools for performing uncertainty attacks against robust models.

Understanding Certified Training with Interval Bound PropagationRepositoryApplication Area:
Training certifiably neural networks
Access via GitHub

This project leverages a novel metric for measuring the tightness of IBP bounds.

The software and tools which you can find here are also described in the ELSA deliverables D1.3 and D2.3. You can access then via the page “Deliverables”.