Alex Mordvintsev Profile Banner
Alex Mordvintsev Profile
Alex Mordvintsev

@zzznah

16,278
Followers
1,703
Following
647
Media
3,600
Statuses

Mad Scientist, DeepDream creator. Designing Self-Organising Systems and Programmable Artificial Life.

Joined December 2016
Don't wanna be here? Send us removal request.
Pinned Tweet
@zzznah
Alex Mordvintsev
10 months
New article: "Isotropic Neural Cellular Automata", a review of our previous work on making NCAs rotation and reflection equivariant @RandazzoEttore @eyvindn @cwpfautz
10
79
339
@zzznah
Alex Mordvintsev
11 months
New "DotCamera" demo shows how to feed a video camera stream into #swissgl and drive some particles in 70 lines!
39
633
5K
@zzznah
Alex Mordvintsev
6 years
My submissions for #nips4creativity are here
31
638
2K
@zzznah
Alex Mordvintsev
3 years
"Calligraphy of Chaos", trying to predict the future of a stochastic chaotic system
17
279
2K
@zzznah
Alex Mordvintsev
5 years
Sinkhorn iteration for Optimal Transport with TF. Code:
12
237
1K
@zzznah
Alex Mordvintsev
4 years
Self-repairing Mondrian
6
186
1K
@zzznah
Alex Mordvintsev
3 years
Exploring the relation between parts and the whole. Neural CA, WebGL, 2020
35
227
1K
@zzznah
Alex Mordvintsev
3 years
what it feels like / what it actually is?
Tweet media one
Tweet media two
21
142
911
@zzznah
Alex Mordvintsev
3 years
I may have heard and read about immune system 1000s times, but seeing it in action is totally different experience
@slava__bobrov
Slava Bobrov
3 years
Our white blood cells attacking a parasite:
16
186
774
10
115
924
@zzznah
Alex Mordvintsev
5 years
I'm trying to make a visual explanation of DeepDream process for a wide audience. Also learning svg+d3 animations. WDYT?
15
149
858
@zzznah
Alex Mordvintsev
6 years
Tweet media one
10
134
776
@zzznah
Alex Mordvintsev
2 years
New tutorial! "Differentiable Finite State Machines" - using JAX and gradient descent to learn discrete state machines from input-output string pairs
Tweet media one
12
124
756
@zzznah
Alex Mordvintsev
5 years
Goodbye SVG diagrams... Hello WebGL, my old friend.
14
132
734
@zzznah
Alex Mordvintsev
5 years
7
101
718
@zzznah
Alex Mordvintsev
7 months
my language model is not like yours
19
74
657
@zzznah
Alex Mordvintsev
4 years
My paint brush is alive
9
72
632
@zzznah
Alex Mordvintsev
5 months
No, I will not think about using RegEx to convert JS into WebGPU WGSL shaders. No, I will not try to write such RegExp. No, I will never use this method to write an actual shader. Oh no, what I've done. #webgpu #wgsl #js
Tweet media one
Tweet media two
Tweet media three
17
53
626
@zzznah
Alex Mordvintsev
2 years
New tutorial: "Simple 3D visualization with JAX raycasting". 3D rendering with nothing but ~100 lines of JAX code
6
95
624
@zzznah
Alex Mordvintsev
5 years
This type of AI art is the favourite to explore for me and my wife. (1/5)
Tweet media one
13
89
616
@zzznah
Alex Mordvintsev
2 years
accident
16
40
542
@zzznah
Alex Mordvintsev
6 years
Optimizer finding its way through the parameter space
8
126
542
@zzznah
Alex Mordvintsev
4 years
10
76
521
@zzznah
Alex Mordvintsev
2 years
a reminder that 'reshape', 'transpose' and many other functions in np, tf, jax and torch are obsolete and should be deprecated
Tweet media one
Tweet media two
23
52
509
@zzznah
Alex Mordvintsev
1 year
Over the last few weeks I was working on SwissGL, tiny JS graphics library with a single function that does everything. Demos: Code:
14
88
506
@zzznah
Alex Mordvintsev
3 years
New Neural CA article "Self-Organising Textures" is live on @distillpub !!! From @eyvindn , @drmichaellevin , @RandazzoEttore and me. Remember Hexells and all those living textures I've been posting lately? That's how we do it, and you can now too!
9
111
501
@zzznah
Alex Mordvintsev
1 year
Pleased to share our new work: “Particle Lenia and the energy-based formulation” by @eyvindn @RandazzoEttore and me! (thread ⬇️ )
5
118
466
@zzznah
Alex Mordvintsev
1 year
WebGL2 State diagram is awesome as (1) WebGL/OpenGL reference, (2) showcase how overcomplicated graphics APIs are
3
74
458
@zzznah
Alex Mordvintsev
1 year
Added particle fields visualization, two particles interact when their fields overlap.
8
54
425
@zzznah
Alex Mordvintsev
3 years
Trying to explain AD modes
Tweet media one
5
65
429
@zzznah
Alex Mordvintsev
4 years
The most interesting things happen outside of the training conditions.
6
49
423
@zzznah
Alex Mordvintsev
6 years
Normalizing Flow bending the space. Thank you for the great tutorial and notebooks, @ericjang11
5
85
418
@zzznah
Alex Mordvintsev
4 years
3
60
389
@zzznah
Alex Mordvintsev
1 year
Particle Life, reimplemented using WebGL. Inspired by @tom_mohr_ 's cool work ()
2
44
392
@zzznah
Alex Mordvintsev
2 years
What I've done? Row-column sorted pairwise distance matrix as a rotation-reflection invariant point cloud description. Using optimisation to reconstruct shape from matrix. Is this a well known thing? (code below) @gabrielpeyre
7
53
393
@zzznah
Alex Mordvintsev
1 year
🐸
8
37
383
@zzznah
Alex Mordvintsev
6 years
This is what style optimization looks like in 3d mesh
5
65
377
@zzznah
Alex Mordvintsev
5 years
4
55
368
@zzznah
Alex Mordvintsev
2 years
OMG, the whole city, rendering, shadows, ambient occlusion... 274 chars!!!
@zozuar
yonatan
2 years
float i,e,a,l,y;vec3 p,q,d=vec3((FC.xy-.5*r)/r.y,-1);for(d.xz*=rotate2D(t*.2);i++<2e2;e=max(min(++y,-e),y-3.)){i>1e2?l=log(e+=1e-4)/1e2,d/=d,o:o+=exp(-e*1e3)/2e2;p=q+=d*e*.7;p++;y=p.y;for(a=3.;a>.04;a*=.6)p.xz*=rotate2D(5.),p=abs(p)-a,e=min(e,max(p.x,(max(p.y,p.z))));}o+=l;
89
1K
8K
5
42
352
@zzznah
Alex Mordvintsev
3 years
Haeckel
8
41
339
@zzznah
Alex Mordvintsev
4 years
I often complain about NumPy-ish frameworks (TF, jax, torch) being inefficient for anything less conventional. Here is a benchmark of today, 10k iters of Physarum: TF - 11.9 s, Taichi - 240ms. Taichi is 40-50x times faster and the code is more readable.
9
29
333
@zzznah
Alex Mordvintsev
8 months
Started working on mipmap support in SwissGL, which allowed to greatly simplify the DotCamera demo. So, I decided to fix the camera aspect and add the "dayMode" (available under the gear button)
4
48
330
@zzznah
Alex Mordvintsev
3 years
Much cleaner, isn't it?
Tweet media one
6
40
327
@zzznah
Alex Mordvintsev
2 years
Isn't it strange that, despite decades of work in generative models, denoising diffusion was developed so recently?
9
24
318
@zzznah
Alex Mordvintsev
3 years
Last week I gave a lecture on differentiable programming for which I implemented a toy version of TF/PyTorch on top of NumPy. It took ~150 loc and was a very fun exercise. I think I'll call it TensorToy. Anyone's interested?
24
7
303
@zzznah
Alex Mordvintsev
4 years
Imagine a group of agents on a plane, arranged in a shape of a digit. Can they figure out what digit they make by talking to their neighbors only? Check out our new paper from the Differentiable Self-Organisation series!
@RandazzoEttore
Ettore Randazzo
4 years
Our second Distill article: Self-classifying MNSIT digits is out! w/ @zzznah @eyvindn @drmichaellevin @samgreydanus @distillpub This time, our beloved Neural CA learn to self-classify the digit they compose! 1/N
4
107
363
2
62
304
@zzznah
Alex Mordvintsev
8 months
SwissGL Demo: Particle Lenia with alien SOUNDS! Audio is fully rendered on GPU with GLSL shaders and streamed to WebAudio thanks to the new async GPU->CPU read feature. LIVE DEMO: Press "toggleAudio" in settings for sound 4K YouTube version:…
6
57
296
@zzznah
Alex Mordvintsev
3 years
"Controlling Neural CA with noise" -- new tutorial where I'm trying to document the exploration precess (idea -> experiment -> early results). I'd really appreciate your feedback!
14
58
297
@zzznah
Alex Mordvintsev
1 year
The main reason I love graphics programming is because it allows to show pictures I have in my head to everyone (). Particle Lenia fields: U (heightmap), G (color)
5
22
290
@zzznah
Alex Mordvintsev
4 years
I've posted my first "life-coding" tutorial () that shows how to implement a simple model of 2d vector alignment on a grid! Looking forward to your feedback! (Neural CA tutorials will follow later)
6
42
283
@zzznah
Alex Mordvintsev
5 years
Neverending Story music video for our friends from St.Petersburg! Music by PCP, see youtube for the full video and credits
2
64
282
@zzznah
Alex Mordvintsev
5 years
I don't always do 3d tsne in colab, but when I do, I prefer VR.
7
52
278
@zzznah
Alex Mordvintsev
3 years
My toy implementation of the "Implicit Geometric Regularization for Learning Shapes" by Amos Gropp et al. Fitting SDF to a set of points WITHOUT normals by implicitly solving Eikonal equation is MAGIC!
3
31
279
@zzznah
Alex Mordvintsev
1 year
Work in progress: real-time Particle Lenia with 16k points (4K video )
5
36
269
@zzznah
Alex Mordvintsev
3 years
The World is pushing The-State-of-The-Art, and I'm... dragging dots
8
20
267
@zzznah
Alex Mordvintsev
2 years
Wow, texture NCAs are also way cooler when they have a starting seed!
4
21
256
@zzznah
Alex Mordvintsev
3 years
DeepMind have solved protein folding, and I'm just sitting here preparing some tutorial materials on backprop
6
9
256
@zzznah
Alex Mordvintsev
5 years
This summer I spent quite a few evenings working on a zooming effect for a music video by @bssmusic . Glad it's finally live!
8
35
253
@zzznah
Alex Mordvintsev
1 year
Tiny thing that felt missing: touch in the ParticleLife demo
3
29
254
@zzznah
Alex Mordvintsev
3 years
Digital collectables are all the rage now. What about collecting GitHub repos? Look at this beauty I've made, you may own it one day, with GitHub-redirect based authenticity proof! No blockchain involved ;) Digital ownership becomes digital responsibility!
11
27
247
@zzznah
Alex Mordvintsev
3 years
I see a lot of developments in Optimal Transport these days. What about Optimal Transport Paths, assuming that moving things together is cheaper? The most comprehensive page I've found is 10-20 years old! @gabrielpeyre
Tweet media one
@n_keriven
Nicolas Keriven
3 years
OT with Sinkhorn's algo in an epsilon-random graph wrt shortest path distance poke @gabrielpeyre
4
51
455
5
47
245
@zzznah
Alex Mordvintsev
2 years
Happy New Year!!!
8
19
244
@zzznah
Alex Mordvintsev
3 years
Back to the basics
4
8
240
@zzznah
Alex Mordvintsev
3 years
Wow! FPGA-controlled speakers support and move a particle with standing acoustic waves 🤯
@JureMenart
Jure S. Menart
3 years
@Rainmaker1973 my home made levitator, just a little bit larger and able to move particles in 3 dimensions :)
6
42
255
0
24
245
@zzznah
Alex Mordvintsev
2 years
Early training is my favourite part
5
10
239
@zzznah
Alex Mordvintsev
5 years
Keep finding strange attracts from 2015. This one was done by warping the image by the rotated gradient of the activation field.
1
24
240
@zzznah
Alex Mordvintsev
3 years
9
24
239
@zzznah
Alex Mordvintsev
4 years
Feel like your hands are tied when using DL frameworks? Want low-level control on data layout and access, but still need backprop? Don't want to leave cosy Colab-kernel? Try Taichi on @GoogleColab !!! (brought to you by ~10 hours of staring at GDB)
4
37
237
@zzznah
Alex Mordvintsev
3 years
It's always nice to have a compact and efficient boilerplate as a base for new experiments. I've updated the PyTorch Texture NCA code with the improvements from my latest video tutorial
8
24
237
@zzznah
Alex Mordvintsev
5 years
3
26
226
@zzznah
Alex Mordvintsev
6 years
Does a laptop have historical value, if it rendered the first DeepDream image ever? I'll have to return it soon...
Tweet media one
9
22
228
@zzznah
Alex Mordvintsev
4 years
Zooming in
5
26
224
@zzznah
Alex Mordvintsev
3 years
I'm finally releasing 'deepdream.c' source on GitHub ()! Inception-V1 classification, adversarial examples and #DeepDream , all in ~900 lines of C89 code. Big thanx to @KanonDotArt for inspiring and supporting this project!
@KanonDotArt
Kanon
3 years
#K21 artwork 07 by Alexander Mordvintsev ( @zzznah ) is now live on our gallery! 🌚 Read more about Alex and his work on our Medium
1
8
45
6
51
222
@zzznah
Alex Mordvintsev
6 years
6yo son found his style
Tweet media one
9
16
213
@zzznah
Alex Mordvintsev
3 years
New to video tutorial: Neural CA "Grafting". I show how to combine multiple CA rules on the same grid (top), and how to use fine-tuning to make CA "realtives" that can collaborate across the boundary area (bottom)!
10
40
208
@zzznah
Alex Mordvintsev
2 years
failures are usually more interesting than the intended behaviour
5
26
208
@zzznah
Alex Mordvintsev
5 years
New advances in differentiable image parameterizations: backprop through the smoke!
@twominutepapers
Two Minute Papers
5 years
Finally, Style Transfer For Smoke Simulations! 💨 ▶️Full video: #ai #deeplearning #fluids
5
157
794
2
34
206
@zzznah
Alex Mordvintsev
6 years
neural pixel art attempt
Tweet media one
Tweet media two
7
29
204
@zzznah
Alex Mordvintsev
4 years
Unboxing
11
11
200
@zzznah
Alex Mordvintsev
5 years
Interesting cloud formation
9
23
200
@zzznah
Alex Mordvintsev
3 years
Math is weird: it's like an imaginary world in your head, but in every other head it's the same.
14
25
192
@zzznah
Alex Mordvintsev
4 years
Woke up with an idea of using Verilog to design Minecraft redstone circuits. Quick search revealed a few already existing projects, e.g.
Tweet media one
6
67
191
@zzznah
Alex Mordvintsev
4 years
On the importance of Gamma Correction for motion blur in visualisation. Moving particles look darker than static if you don't do "img **= 1/2.2" before writing the frame.
5
28
193
@zzznah
Alex Mordvintsev
3 years
Visited Cellular Automata museum
Tweet media one
Tweet media two
Tweet media three
Tweet media four
3
9
189
@zzznah
Alex Mordvintsev
5 years
Seattle
Tweet media one
6
22
181
@zzznah
Alex Mordvintsev
3 years
Zooming into lives of individual cells is something I particularly enjoy, although it doesn't seem to tell much about what's going on. All cells are rendered with a single quad using tricks from @Shadertoy
4
19
186
@zzznah
Alex Mordvintsev
11 months
llama.cpp is a triumph of minimalism, that reminds us how useful it is to throw away the crust and start from the blank canvas. First dependencies serve you, then they slow you.
@natfriedman
Nat Friedman
11 months
Watching llama.cpp do 40 tok/s inference of the 7B model on my M2 Max, with 0% CPU usage, and using all 38 GPU cores. Congratulations @ggerganov ! This is a triumph.
114
761
5K
2
23
183
@zzznah
Alex Mordvintsev
3 years
I prefer to use scatter plot for losses to see the evolving distribution
Tweet media one
4
7
184
@zzznah
Alex Mordvintsev
5 years
Will be presenting an overview of Differentiable Programming is SPb ITMO next week.
3
17
184
@zzznah
Alex Mordvintsev
3 years
Differentiable Self-Organizing Systems Tutorial at @ALifeConf July 20, 10:00-12:00 (CET) We will train some VERY SMALL neural networks!
3
34
184
@zzznah
Alex Mordvintsev
7 months
5
26
181
@zzznah
Alex Mordvintsev
6 months
With a long overdue I'm adding 64k Particle Lenia to SwissGL demos set (slow on low-end devices, I'll try to optimize it further in the future)
5
27
179
@zzznah
Alex Mordvintsev
5 years
Origin of Species
Tweet media one
4
23
177
@zzznah
Alex Mordvintsev
4 years
Xavier NX is a beast, but it took me a week of writing CUDA to make it run Neural CA fast enough.
8
17
174
@zzznah
Alex Mordvintsev
4 years
1
24
174
@zzznah
Alex Mordvintsev
3 years
Don't know why I'm doing this, but I can't stop.
Tweet media one
6
17
174