A propos du stade éthique et esthétique: une réflexion sur la pensée Kierkegaardienne Depuis le début de ma vie adulte, j’ai souvent eu le sentiment de devoir rompre de nombreuses digues ; je crois que c’est une expérience commune à la plupart de mes semblables occidentaux, à la sortie de l’adolescence. Cette impulsion destructrice, loin d’être sans conséquence, semble mettre le jeune adulte dans…
With the arrival of large language models (LLMs), something new is coming in the domain of human-computer interactions. These technologies are often seen for their ability to transform numerous industries, but the biggest change may not lie solely in their use as automation tools, but rather in their potential to completely reshape how we interact with computers. Language models have demonstrated…
In this article, I will explore an intriguing way of thinking about probabilities from a categorical viewpoint, which eventually allows us to understand the definition of probabilistic computation in a functional form. This idea is far from new (in the 1960s, Lawvere already constructed this notion to create a framework that could be used to plan certain treaties with the Soviets on disarmament),…
I wrote an article about the modern data stack on Fonction Labs’ blog. It summarizes what is the modern data stack and why it is interesting for companies to build their data stack for Business Intelligence and other applications. Check it out ! At Fonction Labs , we build and deploy data pipelines empowering business with their data.
Some time ago, I presented an article on this blog about functional programming and lambda calculus. Today, I’ll try to implement lambda calculus simply in Haskell. For a more casual introduction to lambda calculus, I invite you to read my other article . I will mostly follow the book “Types and Programming Languages” by Benjamin C. Pierce from the section 5.1 to 5.4, but I will…
In this blog post, we study submodular optimization, exploring its applications in solving knapsack problems, more specifically the document summarization problem. Submodular functions, which exhibit properties akin to convexity, play a role in these applications by enabling the development of simple yet effective algorithms to approximate solutions for the notoriously difficult NP-hard discrete…
In this article, I present a solution to Qube’s challenge that uses manifold optimization, a technique that I was unfamiliar with at the time of attempting the challenge. Since I found it to be an interesting and valuable approach, I decided to share what I learned through this blog post. The Challenge Introduction The problem at hand involves estimating temporal vectors $R_t \in…
This post delves into the world of Variational Bayesian (VB) inference, comparing and contrasting it with traditional Bayesian techniques such as MCMC. We begin by introducing the fundamental concepts of Variational Inference (VI) and explore how it can be applied to Bayesian inference. The post then delves into the optimization model of VB and showcases some basic examples, one of which involves…
In the previous article, we explored how Functors can be used to abstract over different types of containers. In this article, we will delve into Monads, another critical concept in Category Theory and Functional Programming. Monads, like Functors, are about structure and provide a language that simplifies and beautifies programs. Monads definition in programming languages There are many…
Functional programming and category theory are two related fields in mathematics and computer science that can be used to design and solve complex problems. Functional programming, as I explained in the previous articles, is a programming paradigm that emphasizes the application of functions, while category theory is an abstract mathematical system that can be used to analyze and compare objects…
Functional programming languages are based on the lambda-calculus. As explained in the previous article, the lambda-calculus grew out of an attempt by Alonzo Church to formalize the notion of computability. As with mathematical expressions, the principle is that the value of an expression depends only on the values of its subexpressions. The lambda-calculus is a simple language with expressive…
This series of articles is an attempt to briefly present functional programming (FP) in a simple form, introducing its most important concepts (currying, categories, monads..). The goal of this first article is to show that functional programming helps programmers write efficient and elegant code. The different programming paradigm Let us briefly recall what the different main programming…
With a skill set focused on mathematical modeling (optimization, statistics, statistical learning, Bayesian modeling), I have also developed a great interest in programming (particularly functional programming). You can find my resume below. Skills Programming : Python, R, Scala, Haskell, bash, LaTex, Java, Matlab, SQL Statistical Learning : Deep Learning (Pytorch, Tensorflow), Computer Vision…