Posts

Showing posts from October, 2021

Human Pose Estimation Using Deep Learning

Image
 It is amazing how far human pose estimation algorithms have progressed over the last 10 years.  We will start off with a short tutorial on how to use the opensource OpenPose library and it's associated neural net model.  Then we will dive into the underlying algorithm a little it to give you a better sense of how it all works. The OpenCV DNN (Deep Neural Net) library provides a relatively straightforward way to implement a trained neural net model in either C++ or Python.  Let's check it out. Here's a link to the OpenPose github depository. So how does OpenPose work anyway. Let's check out this presentation at CVPR 2017. Below is a 2 part tutorial on neural net pose estimation and the OpenPose architecture to help you put it all in context.

Basics of Stereo Vision with Oak-D

Image
 Satya Mallick schools us on the basics of getting started with the OpenCV AI Kit with Depth.  Using the DepthAI api and an OAK device you can very easily put together an inexpensive stereo computer vision system that runs deep learning neural net algorithms. The new OAK-D-Lite device is finishing up it's kickstarter campaign , and offers a complete super small stereo vision system with an internal deep learning accelerator chip for $89, which is pretty amazing. The OAK-D devices came out last year, and are a little bit more bulky, and a little bit more expensive.  But still small and affordable in the historical context of stereo vision systems with hardware acceleration for running deep learning algorithms in real time. Introduction to OAK-D Install DepthAI in 30 seconds Introduction to DepthAI Depth Estimation using OAK- The github repository for the code used in these examples is available here .

OpenAi and NeuralLink : Shaping our AI Future

Image
Here's the latest AI Update from NeuraPod.  Mainly covers OpenAI and NeuralLink.

Differentiable Augmentation for GANs Using Kornia

Image
This PyTorch code demo by MildlyOverfitted runs us through how to add Kornia api based differentiable data augmentation to the PyTorch DCGAN tutorial.

Liquid Neural Networks

Image
 Today's presentation is a talk given by Ramin Hasani of MIT at the MIT Center for Brains Minds and Machines on 10/8/21.  It discusses a new biologically inspired continuous time neural network architecture. Abstract: In this talk, we will discuss the nuts and bolts of the novel continuous-time neural network models: Liquid Time-Constant (LTC) Networks. Instead of declaring a learning system's dynamics by implicit nonlinearities, LTCs construct networks of linear first-order dynamical systems modulated via nonlinear interlinked gates. LTCs represent dynamical systems with varying (i.e., liquid) time-constants, with outputs being computed by numerical differential equation solvers. These neural networks exhibit stable and bounded behavior, yield superior expressivity within the family of neural ordinary differential equations, and give rise to improved performance on time-series prediction tasks compared to advance recurrent network models.

Beautiful Thoughts from Ugly Neurons

Image
 This is a talk by Larry Abbot on the interesting properties of neural systems with random connections.  He is also using this discussion to question some standard conventions of analyzing data taken from the firing rates of neurons and it's subsequent analysis in computational neural models.   Do we see what we want to see by how we choose to analyze the data? Food for thought.

Simulating the Universe with Machine Learning

Image
 This talk by Shirley Ho of the Flatiron Institute from 2020 discusses the use of graph neural networks to try and model physical systems that involve n-body interactions. Moving on to the main presentation, Giuseppe Carleo of the Flatiron Institute presents a seminar on machine learning techniques for many-body quantum systems.

Deep Quaternion Networks

Image
 Today's presentation is from a 2018 Twiml AI podcast that mainly focuses on deep quaternion networks.  Skip to 18:30 to get to the main part of the podcast on quaternion networks that we want to focus on. Joseph Lopez leads us in a introduction of Deep Quaternion Networks, the study of deep learning systems based on complex numbers, along with a discussion on the papers Deep Quaternion Networks and Quaternion Recurrent Networks. Observations 1: What this presentation is really all about is that by introducing additional relevant priors into the system, you can reduce the number of parameters in it.

HTC Seminar Series #36: Mathematical Mysteries of Deep Neural Networks

Image
Today's HTC Seminar Series presentation is a lecture by Stephane Mallat at the ICTP Colloquium recorded in November 2020. He cuts through the BS and gets to the real meat of what is going on under the hood in deep learning neural nets. ABSTRACT: Deep neural networks obtain impressive results for image, sound and language recognition or to address complex problems in physics. They are partly responsible of the renewal of artificial intelligence. Yet, we do not understand why they can work so well and why they fail sometimes, which raises many problems of robustness and explainability.  Recognizing or classifying data amounts to approximate phenomena which depend on a very large number of variables. The combinatorial explosion of possibilities makes it potentially impossible to solve. One can learn from data only if the problem is highly structured. Deep neural networks appear to take advantage of these unknown structures. Understanding this "architecture of complexity" inv

A Gentle Introduction to Group Theory

Image
 Group theory is kind of hard to wrap your head around.  At least for me.  But at the same time, it has a fundamental relationship to not only the theory behind neural networks, but also computational models of human visual perception. With that thought in mind, let's check out this very simple introduction to group theory. We have covered group theory in previous HTC posts, including a seminar by Max Weiler on gauge and group theory equivalent CNNs, as well as a post on Lie Groups and Human Visual Perception, and another post on the biophysics of visual edge detection. Observations: 1: Note the fascinating tie in between Gabor filters, channel models of human visual perception, and notions from group theory (Lie Groups). 2: What does this whole notion of their being an absolute finite number of possible simple groups (the monster) tell us about the limits of human visual perception? 3:  How could we turn all of this around in a way that could influence the design of deep learn

Convex Optimization on Manifolds

Image
 Today's lecture is a talk by Richard Hartley presented at Microsoft Research in 2016 that is a good overview of various useful concepts associated with convex manifold optimization.  Richard reviews different concepts associated with the structure of convex manifolds, including optimization on a manifold surface, computations on the geodesics of a manifold, Lie group S03 manifolds for 3D rotations, L1 averaging of S03, as well as their application to computer vision problems like structure from motion and hand-eye coordination. The quaternion representation of rotations is also discussed. Observations 1:  If all rotations in 3D space can be represented on a manifold, what does that tell us about human perceptual representations of 3D objects? 2: Averaging vs Ransac for estimating camera orientation.

Visualizing Quaternions

Image
 We're going to dive into some introductory material to help understand the mathematics of quaternions.  They are an extension of complex numbers to higher order dimensionality, and are an alternative to more conventional vector analysis that are very useful in describing both rotations in 3d computer graphics as well as the quantum mechanics of spin. Recent neural net research incorporate the principals of quaternions into neural network architectures with quaternion convolutional neural networks.  We will be diving into the QCNN architecture(s) in a future HTC post. The following video presentation is a great gentle introduction into visualizing the mathematics of quaternions through the use of stereographic projections.  Hopefully it can help you develop a more intuitive understanding of what quaternions are really all about. So why do we care about this stuff. QCNNs utilize the properties of quaternions to help provide rotational invariance.  And quaternion interpolation provid

NumPy, SciPy, Anaconda, Python and Scientific Programming

Image
 Today's HTC presentation is a conversation with Travis Olliphant on the origins and subsequent development of numerous open source python libraries he was directly involved in creating.  PyTorch for example is built off of the concepts built into NumPy, and Travis discusses the importance of building array processing concepts and constructs directly into a programming language.  He also discusses the nuances of creating profitable companies based on open source software development, and the importance of entrepreneurship in the modern computing landscape. I would hope that everyone today is keenly aware that the way to work now days is to piggyback off of all of the excellent open source code libraries available to everyone (as opposed to re-inventing the wheel every time you start a new project) . There is a ton of new exciting deep learning research we'll be diving back into with new HTC posts hopefully next week as i am extracted from the current brutal software release cyc