I grew up in the countryside in France, before the internet was a thing. I was lucky as a child to own a ZX81 and got access to an IBM PC Clone. I teach myself to code in Basic, Turbo Pascal, and Assembler.
I studied signal analysis and worked for the industry but soon was attracted by entrepreneurship.
In 2013, I created a VR headset in Cardboard that became the Google Cardboard in 2014.
We sold our company to Stability in Feb 2023.
Here are some tutorials I wrote to understand ML. You can find them on github.
RNN stands for "Recurrent Neural Network".To understand why RNN are so hot you must read this!
This notebook explains the Minimal character-level Vanilla RNN model written by Andrej Karpathy, this code creates an RNN to generate a text, char after char, by learning char after char from a textfile.
ML-Tutorial-Notebooks/RNN.ipynb at master · dh7/ML-Tutorial-Notebooks
This depot contain tutorials for real beginners who want to understand machine learning by reading some code. - ML-Tutorial-Notebooks/RNN.ipynb at master · dh7/ML-Tutorial-Notebooks
I love this character-level Vanilla RNN code because it doesn't use any library except NumPy. All the NN magic in 112 lines of code, no need to understand any dependency. Everything is there! I'll try to explain in detail every line of it. Disclaimer: I still need to use some external links for reference.
This notebook is for real beginners who want to understand the RNN concepts by reading code.
Temperature is a concept that is used when you need to generate a random number from a probability vector but wants to overemphasize samples that have the highest probability.
This notebook shows the effects in practice.
This video is 100% generated by an algorithm in one shot. No edit or post-processing. I used videos recorded from trains windows, with landscapes that move from right to left and trained a Machine Learning (ML) algorithm with it. First, it learns how to predict the next frame of the videos, by analyzing examples. Then it produces a frame from the first picture, then another frame from the one just generated, etc. The output becomes the input of the next calculation step. So, except the first one that I chose, all the other frames were generated by the algorithm. The results are low resolution, blurry, and not realistic most of the time. But it resonates with the feeling I have when I travel on a train. It means that the algorithm learned the patterns needed to create this feeling. Unlike classical computer-generated content, these patterns are not chosen or written by a software engineer. In this video, nobody made explicit that the foreground should move faster than the background: thanks to Machine Learning, the algorithm figured that itself. The algorithm can find patterns that a software engineer may haven’t noticed and is able to reproduce them in a way that would be difficult or impossible to code. What you see at the beginning is what the algorithm produces after very little learning. It learns more and more during the video, that's why there are more and more realistic details. Learnings are updated every 20s.
This video was made as side project, but was also documented later there as part as the magenta google project.
It was featured in the press manywhere, for instance here.
“Entrée d’un train en gare de la Ciotat” is the first movie ever recorded.
I train CycleGan to predict what it should look like today.
Here is the fun result:
I downloaded then analyzed 6M answers to a french public debate to create a data visualization where you can see all of them by zooming into a latent space.
Try it here: 👉🏻 https://dh7.github.io/lgdn/ 👈🏻