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 2007, I became CTO ofĀ Voxler, and then co-foundedĀ AudioGamingĀ &Ā Novelab.
In 2013, I created a VR headset in Cardboard that became theĀ Google Cardboard in 2014.
I oversaw innovation for six years atĀ Google Arts & Culture Lab, focusing my team onĀ AI/ML.
During this period, invested my personal time in deep-learning explorations and worked on video generation and text analysis, among other things.
In 2020, I co-foundedĀ Ā Init ML. We launchedĀ Clipdrop.coĀ &Ā cleanup.pictures.
We sold our company to Stability in Feb 2023.
- Twitter: @dh7net & typefully.com/dh7net
- Instagram: dh7net
- Linked In: https://www.linkedin.com/in/damien-henr7/
- Mastodon: @dh7@vis.social
- NFTs: fxhash.xyz/dh7net
- Older website: dh7.free.fr
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.
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 notebook explains theĀ codeĀ fromĀ Fizz Buzz in TensorFlowĀ blog post written byĀ Joel GrusYou should read his post first!
HisĀ codeĀ tries to play the Fizz Buzz game by using machine learning.
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/ šš»