Applied Metaphors: Learning TRIZ, Complexity, Data/Stats/ML using Metaphors
  1. Teaching
  2. Math Models for Creative Coders
  3. AI
  4. Working with Neural Nets
  • Teaching
    • Data Analytics for Managers and Creators
      • Tools
        • Introduction to R and RStudio
        • Introduction to Radiant
        • Introduction to Orange
      • Descriptive Analytics
        • Data
        • Summaries
        • Counts
        • Quantities
        • Groups
        • Densities
        • Groups and Densities
        • Change
        • Proportions
        • Parts of a Whole
        • Evolution and Flow
        • Ratings and Rankings
        • Surveys
        • Time
        • Space
        • Networks
        • Experiments
        • Miscellaneous Graphing Tools, and References
      • Statistical Inference
        • 🧭 Basics of Statistical Inference
        • 🎲 Samples, Populations, Statistics and Inference
        • Basics of Randomization Tests
        • 🃏 Inference for a Single Mean
        • 🃏 Inference for Two Independent Means
        • 🃏 Inference for Comparing Two Paired Means
        • Comparing Multiple Means with ANOVA
        • Inference for Correlation
        • 🃏 Testing a Single Proportion
        • 🃏 Inference Test for Two Proportions
      • Inferential Modelling
        • Modelling with Linear Regression
        • Modelling with Logistic Regression
        • 🕔 Modelling and Predicting Time Series
      • Predictive Modelling
        • 🐉 Intro to Orange
        • ML - Regression
        • ML - Classification
        • ML - Clustering
      • Prescriptive Modelling
        • 📐 Intro to Linear Programming
        • 💭 The Simplex Method - Intuitively
        • 📅 The Simplex Method - In Excel
      • Workflow
        • Facing the Abyss
        • I Publish, therefore I Am
      • Case Studies
        • Demo:Product Packaging and Elderly People
        • Ikea Furniture
        • Movie Profits
        • Gender at the Work Place
        • Heptathlon
        • School Scores
        • Children's Games
        • Valentine’s Day Spending
        • Women Live Longer?
        • Hearing Loss in Children
        • California Transit Payments
        • Seaweed Nutrients
        • Coffee Flavours
        • Legionnaire’s Disease in the USA
        • Antarctic Sea ice
        • William Farr's Observations on Cholera in London
    • R for Artists and Managers
      • 🕶 Lab-1: Science, Human Experience, Experiments, and Data
      • Lab-2: Down the R-abbit Hole…
      • Lab-3: Drink Me!
      • Lab-4: I say what I mean and I mean what I say
      • Lab-5: Twas brillig, and the slithy toves…
      • Lab-6: These Roses have been Painted !!
      • Lab-7: The Lobster Quadrille
      • Lab-8: Did you ever see such a thing as a drawing of a muchness?
      • Lab-9: If you please sir…which way to the Secret Garden?
      • Lab-10: An Invitation from the Queen…to play Croquet
      • Lab-11: The Queen of Hearts, She Made some Tarts
      • Lab-12: Time is a Him!!
      • Iteration: Learning to purrr
      • Lab-13: Old Tortoise Taught Us
      • Lab-14: You’re are Nothing but a Pack of Cards!!
    • ML for Artists and Managers
      • 🐉 Intro to Orange
      • ML - Regression
      • ML - Classification
      • ML - Clustering
      • 🕔 Modelling Time Series
    • TRIZ for Problem Solvers
      • I am Water
      • I am What I yam
      • Birds of Different Feathers
      • I Connect therefore I am
      • I Think, Therefore I am
      • The Art of Parallel Thinking
      • A Year of Metaphoric Thinking
      • TRIZ - Problems and Contradictions
      • TRIZ - The Unreasonable Effectiveness of Available Resources
      • TRIZ - The Ideal Final Result
      • TRIZ - A Contradictory Language
      • TRIZ - The Contradiction Matrix Workflow
      • TRIZ - The Laws of Evolution
      • TRIZ - Substance Field Analysis, and ARIZ
    • Math Models for Creative Coders
      • Maths Basics
        • Vectors
        • Matrix Algebra Whirlwind Tour
        • content/courses/MathModelsDesign/Modules/05-Maths/70-MultiDimensionGeometry/index.qmd
      • Tech
        • Tools and Installation
        • Adding Libraries to p5.js
        • Using Constructor Objects in p5.js
      • Geometry
        • Circles
        • Complex Numbers
        • Fractals
        • Affine Transformation Fractals
        • L-Systems
        • Kolams and Lusona
      • Media
        • Fourier Series
        • Additive Sound Synthesis
        • Making Noise Predictably
        • The Karplus-Strong Guitar Algorithm
      • AI
        • Working with Neural Nets
        • The Perceptron
        • The Multilayer Perceptron
        • MLPs and Backpropagation
        • Gradient Descent
      • Projects
        • Projects
    • Data Science with No Code
      • Data
      • Orange
      • Summaries
      • Counts
      • Quantity
      • 🕶 Happy Data are all Alike
      • Groups
      • Change
      • Rhythm
      • Proportions
      • Flow
      • Structure
      • Ranking
      • Space
      • Time
      • Networks
      • Surveys
      • Experiments
    • Tech for Creative Education
      • 🧭 Using Idyll
      • 🧭 Using Apparatus
      • 🧭 Using g9.js
    • Literary Jukebox: In Short, the World
      • Italy - Dino Buzzati
      • France - Guy de Maupassant
      • Japan - Hisaye Yamamoto
      • Peru - Ventura Garcia Calderon
      • Russia - Maxim Gorky
      • Egypt - Alifa Rifaat
      • Brazil - Clarice Lispector
      • England - V S Pritchett
      • Russia - Ivan Bunin
      • Czechia - Milan Kundera
      • Sweden - Lars Gustaffsson
      • Canada - John Cheever
      • Ireland - William Trevor
      • USA - Raymond Carver
      • Italy - Primo Levi
      • India - Ruth Prawer Jhabvala
      • USA - Carson McCullers
      • Zimbabwe - Petina Gappah
      • India - Bharati Mukherjee
      • USA - Lucia Berlin
      • USA - Grace Paley
      • England - Angela Carter
      • USA - Kurt Vonnegut
      • Spain-Merce Rodoreda
      • Israel - Ruth Calderon
      • Israel - Etgar Keret
  • Posts
  • Blogs and Talks

On this page

  • Introduction
  • But Wait! How does Classification Work?
  • Wait, But Why?
  • How to Train your Dragon Neural Network
  • References
    • Convolutional Neural Networks
  • Textbooks
  1. Teaching
  2. Math Models for Creative Coders
  3. AI
  4. Working with Neural Nets

Working with Neural Nets

Can you Dance?

Classification
CNN
ML
DL
Published

December 3, 2024

Modified

May 17, 2025

(a)
(b)
Figure 1: Bharat Natyam Poses

Introduction

One of our aims with Creative Coding is to of course make things interactive. Here we will apply the ml5.js library in p5.js to use an ML/DL algorithm called Classification to detect human poses in front of the camera. The code can then create unique experiences based on pose-detection with ML, and the subsequent code that responds to the user.

We will be following the ideas from here:

Adavu Detection

https://docs.ml5js.org/#/reference/bodypose

Mudra Detection

https://docs.ml5js.org/#/reference/handpose

Bhava Detection

https://docs.ml5js.org/#/reference/facemesh

But Wait! How does Classification Work?

Ah, peasants. Isn’t it enough that you can dance?

So, we can perform Classification based on Machine Learning (ML) structured and algorithms such as:

  1. Random Forests. Also see Google Decision Forests. We will try to get an intuition into bootstrapping of variables in data, creating decision trees, and making random selections of variables from a dataset to create random forests.

  2. And there are Deep Learning (DL) structured and algorithms that allow us to do the same things, perhaps in a more “black-box” manner. We will peep into:

    1. The Perceptron
    2. The Multilayer Perceptron
    3. Backpropagation
    4. Gradient Descent
    5. Convolutional Neural Nets (in a later course)

Here, we will also try to build an intuitive sense of some of the technical terminology involved: convolution, regression, activation, weighting…and such terms that generally elude peasants.

Wait, But Why?

Understanding the underlying math inside of Neural Nets can help us appreciate better how to apply them design with them, and even keep them as simple as needed.

How to Train your Dragon Neural Network

References

  1. Colah’s Blog.(Apr 6, 2014). Neural Networks, Manifolds, and Topology. https://colah.github.io/posts/2014-03-NN-Manifolds-Topology/. Very simple and readable article.
  2. Machine Learning Tokyo: Interactive Tools for ML/DL, and Math. https://github.com/Machine-Learning-Tokyo/Interactive_Tool
  3. https://developers.google.com/machine-learning.https://developers.google.com/machine-learning
  4. The Neural Network Zoo - The Asimov Institute. http://www.asimovinstitute.org/neural-network-zoo/
  5. It’s just a linear model: neural networks edition. https://lucy.shinyapps.io/neural-net-linear/

Convolutional Neural Networks

  1. Digit Recognition with CNNs. Interactive! https://transcranial.github.io/keras-js/#/mnist-cnn
  2. CNN Convoluter. https://pwwang.github.io/cnn-convoluter/
  3. CNN Explainer: Learn Convolutional Neural Network (CNN) in your browser!. https://poloclub.github.io/cnn-explainer/
  4. Deep Lizard. Understanding Convolution Operations in Neural Networks. https://deeplizard.com/resource/pavq7noze2
  5. Andrej Karpathy. ConvNetJS: Deep Learning in your browser.https://cs.stanford.edu/people/karpathy/convnetjs/
  6. Adit Deshpande. A Beginner’s Guide to CNNs. https://adeshpande3.github.io/A-Beginner%27s-Guide-To-Understanding-Convolutional-Neural-Networks/
  7. Anyone Can Learn AI Using This Blog. https://colab.research.google.com/drive/1g5fj7W6QMER4-03jtou7k1t7zMVE9TVt#scrollTo=V8Vq_6Q3zivl
  8. Practical Deep Learning for Coders: An Online Free Course.https://course.fast.ai
  9. Neural Networks Visual with vcubingx
    • Part 1. https://youtu.be/UOvPeC8WOt8
    • Part 2. https://www.youtube.com/watch?v=-at7SLoVK_I

LLMs

  1. Brendan Bycroft.Visualizing LLMs. https://bbycroft.net/llm
  2. Rohit Patel (20 Oct 2024). Understanding LLMs from Scratch Using Middle School Math: A self-contained, full explanation to inner workings of an LLM. https://towardsdatascience.com/understanding-llms-from-scratch-using-middle-school-math-e602d27ec876
  3. AI-powered reporting and annotation for radiology. https://www.md.ai

Using R for DL

  1. torch for R: An open source machine learning framework based on PyTorch. https://torch.mlverse.org
  2. Torch Interactive Tutorial. https://mlverse.shinyapps.io/torch-tour
  3. Geeks for Geeks. Convolutional Neural Nets in R. https://www.geeksforgeeks.org/convolutional-neural-networks-cnns-in-r/
  4. David Selby (9 January 2018). Tea and Stats Blog. Building a neural network from scratch in R. https://selbydavid.com/2018/01/09/neural-network/
  5. Akshaj Verma. (2020-07-24). Building A Neural Net from Scratch Using R - Part 1 and Part 2. https://rviews.rstudio.com/2020/07/20/shallow-neural-net-from-scratch-using-r-part-1/ and https://rviews.rstudio.com/2020/07/24/building-a-neural-net-from-scratch-using-r-part-2/
  6. Ander Fernandez Jauregui. https://anderfernandez.com/en/blog/how-to-create-neural-networks-with-torch-in-r/
  7. https://f0nzie.github.io/rtorch-minimal-book/

Textbooks

  1. Michael Nielsen. Neural Networks and Deep Learning. Available Online
  2. The Little Book of Deep Learning. Available Online
  3. Simone Scardapane. Alice’s Adventures in Diffferentiable WonderLand: A Primer on Designing Neural Networks. https://www.sscardapane.it/alice-book/
  4. Parr and Howard (2018). The Matrix Calculus You Need for Deep Learning.https://arxiv.org/abs/1802.01528
  5. Zhang, Lipton, Li, Smola. Dive into Deep Learning. https://www.d2l.ai/
  6. Sigrid Keydana. Deep Learning and Scientific Computing with R torch https://skeydan.github.io/Deep-Learning-and-Scientific-Computing-with-R-torch/
R Package Citations
Package Version Citation
keras 2.15.0 Allaire and Chollet (2024)
safetensors 0.1.2 Falbel (2023)
tensorflow 2.16.0 Allaire and Tang (2024)
torch 0.14.2 Falbel and Luraschi (2025)
Allaire, JJ, and François Chollet. 2024. keras: R Interface to “Keras”. https://CRAN.R-project.org/package=keras.
Allaire, JJ, and Yuan Tang. 2024. tensorflow: R Interface to “TensorFlow”. https://CRAN.R-project.org/package=tensorflow.
Falbel, Daniel. 2023. safetensors: Safetensors File Format. https://CRAN.R-project.org/package=safetensors.
Falbel, Daniel, and Javier Luraschi. 2025. torch: Tensors and Neural Networks with “GPU” Acceleration. https://CRAN.R-project.org/package=torch.
Back to top

Citation

BibTeX citation:
@online{2024,
  author = {},
  title = {\textless Iconify-Icon Icon=“lucide:person-Standing”
    Width=“1.2em”
    Height=“1.2em”\textgreater\textless/Iconify-Icon\textgreater{}
    \textless Iconify-Icon Icon=“mdi:human-Female-Dance” Width=“1.2em”
    Height=“1.2em”\textgreater\textless/Iconify-Icon\textgreater{}
    {Working} with {Neural} {Nets}},
  date = {2024-12-03},
  url = {https://av-quarto.netlify.app/content/courses/MathModelsDesign/Modules/100-AI/10-NeuralNets/},
  langid = {en}
}
For attribution, please cite this work as:
“<Iconify-Icon Icon=‘lucide:person-Standing’ Width=‘1.2em’ Height=‘1.2em’></Iconify-Icon> <Iconify-Icon Icon=‘mdi:human-Female-Dance’ Width=‘1.2em’ Height=‘1.2em’></Iconify-Icon> Working with Neural Nets.” 2024. December 3, 2024. https://av-quarto.netlify.app/content/courses/MathModelsDesign/Modules/100-AI/10-NeuralNets/.
AI
The Perceptron

License: CC BY-SA 2.0

Website made with ❤️ and Quarto, by Arvind V.

Hosted by Netlify .