Welcome to Lemonfold.io#

Welcome to my personal website and blog. The name “lemonfold” reflects my fascination for geometric methods in machine learning and robotics especially related to folding and unfolding. It is a verbatim and deliberately inaccurate translation for the German name of Gonepteryx rhamni—a beautiful yellow/lime green butterfly (which happens to be my favorite color). The technology behind this page has been inspired (read: shamelessly copied) from Chris Holdgraf’s website so kudos to him!

On this site, you can find out more about me here and read my blog. I love teaching and explaining so I hope you find my articles interesting and you enjoy reading. Feel free to leave some feedback. You will need a GitHub account and adjust the privacy level accordingly (the cookie symbol at the top) to do so.

Gonepteryx rhamni

This is how Gonepteryx rhamni looks like.#

Recent posts#

See the blog archives for a more complete list.

  • 2023-08-07 - Sorting arrays of the ndarray crate

    I came across a problem where I needed to sort an array by its values in one column and potentially sort other arrays with that index. In Python, this is very easy:

  • 2023-07-02 - Citrate Part 1: My First Rust Project

    In this blog post, I want to announce Cerebral a framework written in Rust for experimenting with Self-organizing Neural Networks such as the famous Kohonen networks. It is designed in a way that a network can be defined by composing a model out of a variety of algorithm that define its behavior. Unlike deep learning architectures, the behavior is not defined by a composition of layers, loss functions and diverse learning methods. This type of network defines a less hierarchical topology and learning rules affect all neurons at once. Therefore, this project has different goals as prominent deep learning frameworks, and thus, a different architecture. Being my first Rust library (applications are simpler to implement), I had to evaluate a few options to achieve my goal and I often failed enough battling with Rust’s occasionally frustrating type system.

  • 2023-07-01 - Announcing the Citrate workspace

    Data science with rust! Finally, two years after having started to learn and develop in the Rust programming language, I am happy to find the time to write about my two projects that I have been developing in my rare spare time during the last year.

  • 2023-05-26 - AI/ML Essentials part 3: Gaussian Process Regression

    In this article in the AI/ML Essentials series, we will learn about yet another machine learning model—Gaussian Process Regression. In the previous articles, we encountered instances of unsupervised learning (for clustering and density estimation). The last issue presented a simple taxonomy of machine learning, which guides us through the series:

  • 2023-01-15 - AI/ML Essentials Part 2: Cluster analysis with (Gaussian) Mixture Models

    This is the second part of the series “AI/ML Essentials”, which intends to be a gentle introduction to the topic using mostly layman’s terms and as little mathematics as possible–you don’t need an engineering degree to see the beauty within this fascinating field.

  • 2022-10-29 - AI/ML Essentials Part1: Self-Organizing Maps

    This article is the start of a series that introduces different models and algorithms to beginners

  • 2022-09-03 - Fully-typed Python decorator with optional arguments

    This is my very first blog post! In this short post, I will show the blueprint for a fully-typed Python decorator that optionally accepts parameters.