Current research

PhD in Interpretable AI (Symbolic NARMAX)

Symbolic NARMAX systems (arbitrary functions such as Polynomials, Wavelets, RBFs (like GMMs), FIRs, IIRs, etc.) are the main alternative to artificial neural networks (ANNs) for black-box fitting or data (and stochastic process) analysis and processing. For system fitting, they are, however, used essentially for small to mid-size systems (or in situations where interpretability and provable correctness is paramount), since SotA methods are either limited in fitting capabilities (FOrLSR-based methods) or prohibitively slow (genetic algorithms). NARMAX models have many advantages over ANNs such as interpretability, ease of modification and analysis, computational efficiency, and marginal data requirements compared to ANNs (500 or fewer floats vs GB/TB/PB of data). Thus, it's of interest to push the limits of the FOrLSR (Forward Orthogonal Least Squares Regression) framework. This PhD's goal is to make the FOrLSR framework capable of reliably fitting increasingly more complex systems with each paper, such that the more efficient and expressive symbolic NARMAX systems can be used instead of the black-box neural networks in an increased number of applications. The focus is on supporting general symbolic NARMAX expansions to allow users to fit their domain-specific functions and expressions, to customize fitting quality and interpretability.


Paper 1: Arborescent Orthogonal Least Squares Regression (AOrLSR)

The paper constitutes a large jump compared to the SotA, as the presented ML algorithm (linear algebra, graph theory, combinatorial optimization, numerics) beats the most modern methods by a very large margin in speed, precision, stability and model conciseness. It allows to reliably fit large classes of heavily non-linear and dynamic multi-channel systems which were previously deemed too complex to correctly fit (rational, nested inside equations, discontinuous, non-differentiable, acausal, etc). It can also be used for data compression and de-noising (sparse reconstruction) or just as a fancy (over / underdetermined) system solver minimizing the L0-norm (NP-Hard Problem).

The paper contains:

Read or download the AOrLSR paper.
Fully implemented in my python library.


Paper 2: (Symbolic Oscillator)

The paper presents a highly optimized JIT-compiler for generalized rational NARMAX systems, allowing to measure (rather than approximate) the domain-specific user-defined functions during fitting and validation. This allows to further increase the complexity of reliably fitted systems, in addition to allowing their integration in ML-pipelines as compiled python objects.

Paper contains:

Status: Math: 90%. Code: 90% - parts of it already present in my python library
Paper to be submitted this year for publication + full release in library.


Small in-between paper: dERR - ERR metric stabilized for rational NARMAX systems.

This paper proposes an update to the ERR similarity metric to stabilize it against low-variance denominator regressors. This is a long-known problem in fitting rational regressors, that was, however, mathematically misattributed to other phenomena.

Paper contains:

Paper to be submitted this year for publication & integration in the library.


Paper 3: Dictionary Morphing Orthogonal Least Squares Regression (DMOrLSR)

Optimization pipeline allowing the framework to adapt the user-provided domain-specific functions to the system (or data or stochastic process) for more precise and smaller models. (Paper 1 only allows to use the user-provided functions as-is, while this allows the library to optimize them further)

This paper (DMOrLSR) morphs the user-given regressor (functions) to allow expansions which adapt their terms to the system output (imagine a fourier transform which finds the exact peaks and only contains those terms, being sparse). This is based on genetic algorithms, linear algebra, matrix calculus / infinitesimal optimization, with closed form gradients and Hessians independent of the user-passed function, number of arguments and data.

Paper contains:

Already present in my python library but not exposed by current API.
Paper to be submitted this year for publication & full release in library.


Paper 4: Batch Robust Forward Orthogonal Barron Regression (BrFOrBr)

Batching and (outlier/noise) robust fitting.

Paper contains:

Status: Math: 50%. Code: 20%
Equivalence to Neural Networks: Data Batching (Fine tuning) + Data-preprocessing (outlier removal and heavy noise compensation built into the fitting algorithm)


Paper 5: Lean Arborescent Search Algorithm for Generalized NARMAX Expressions (LASAGNE)

Merge the algorithms from all the previous papers into the first one to tremendously increase the complexity of reliably fitted systems in addition to providing supplementary sparsity theorems and optimizations to accelerate fitting. This paper also introduces support for auto-regressive MIMO fitting with compiled systems.

Status: Math: 30%. Code: 0%


Paper 6: Multi-layer LASAGNE for Deep NARMAX-Networks

Reinterprets the generalized symbolic NARMAX model as a single-layer network and generalizes it to be multi-layer, with the advantage over traditional artificial neural networks (ANNs) that the network chooses its optimal structure (size, connections and activation functions) by itself, while remaining interpretable (human readable-equations).

Status: Math: 5%. Code: 0%
Equivalence to Neural Networks: Multi-layer Neural Network with build-in architecture selection and Data-cleaning


Python Library

The above algorithms are offered in the soon to-be-released GPU-accelerated open-source python machine learning package.

The library makes optimal sparse least squares fitting of any functions/data passed by the user for the given system response. All provided examples are with severely non-linear auto-regressive systems, however, the user can pass dictionaries with any type of functions/data. This is thus a very general mathematical framework supporting for example wavelet-, RBF, polynomial, FIR/IIR, binary systems, etc. fitting. The papers also contain an example of using the library to fit a nested expansion in |x|^n inside a fraction or of nesting non-linearities inside other non-linearities.


Supplementary NARMAX research

Based on my previously described papers, further ameliorations and papers are planned:


Dimensionality selection paper

This machine learning algorithm automatically selects the amount of information worth keeping to represent data or a digital system. The applications are for example finding ideal compression ratios (storage and transmission) or ideal approximations of systems.

I propose a version of the algorithm by Zhu and Ghodsi (Alternative Link) in 2006, where the recursion is unrolled to a much more efficient matrix-form algorithm, which also adds the ability to introduce constraints on the dimensionality selection.

Paper contains:

Paper is mostly written, submission date not yet determined (PhD papers have priority).


Contributions at current / former employers

TRACK3D (AI-supervised 3D printing)

My research on custom algorithms and data structures for the 3D printer includes high-throughput GCode analysis and movement extraction, algorithmic pointcloud 3D segmentation, Optical scanner algorithms and data stabilization, etc. sadly stays behind the walls of my NDA.

However, in the context of being a system architect (theoretical informatics research), I did extensive research on modern error-management methods for C++ (Analyzed C, Rust, Bun, Go, etc.) to propose ameliorated language constructs for C++ that allow for advanced, no-throw but value-based error management with compile-time optimizations. This will soon be open-sourced as C++23 library and an accompanying paper.

In addition, in the same system architecture (theoretical informatics research), I designed a rule book of about 60 pages on guidelines for the most modern and safe C++23 that will soon be published. It took inspiration from the C++ coding guidelines of Google, Firefox, CPP Core, CCP-ISO amongst others and supplemented by many tests and benchmarks.

u-he (AI-Audio Generation & Analysis)

My research on ADAA (anti-derivative anti-aliasing for distortions and saturations), AI-based wavetable extraction for Zebra 3, clustering for audio samples, wavelet methods as fourier generalization, psycho-acoustics focussed reverb algorithms, etc. sadly stays behind the walls of my NDA and won't be published, being algorithms used in commercial audio plug-ins.


Eigen contributions

Eigen is a open-source highly optimized lazy-evaluation C++ expression-tree-based linear algebra library, which is used amongst others in Tensorflow, on which Google's AIs/self-driving cars/ game engines / physics simulations / etc. are based.

Contributions: