So, recently there was this question from @svpino that in theory, you can model any function using a neural network with a single hidden layer. However, deep networks are much more efficient than shallow ones. Why?
Here's a thread answering that question🧵
📌 Both shallow (network with one hidden layer) and deep networks(network with multiple hidden layers) are capable of approximating any function (theoretically). But, still, you get better results with deep neural networks. Here's why 👇
1. To match the performance of a multi-layered neural network you would require a large number of neurons in a single layer in the case of shallow networks.
2. In multi-layered neural networks, each layer can learn a different set of features. For example: if we are doing face recognition using CNN's, the lower layer learns about the edges and the learned edges can group together to detect parts of faces in the later layers.
3. Then, putting together different parts of faces (like eyes, nose, chin, etc) the network can combine them to detect different faces in the last layers
4. So, basically, the earlier layers are learning simpler functions and those learned functions are transferred to subsequent layers to learn more complicated functions.
5. The network is kind of creating abstraction in the intermediate layers of it. Depth gives us the possibility of abstracting relatively abstract concepts in the upper layers of the network.
6. Theoretically, to match the multi-layered neural network with a shallow network (with one hidden layer), you will require an exponentially large number of neurons, increasing the computational complexity of the model massively.
7. To summarize all of this, a deep network can fit the same function (which you are approximating) with fewer parameters than the shallow network
8. This tweet is heavily inspired by a lecture from Andrew Ng in his deeplearning.ai course. Here's the link to the video 👇

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Atharva Ingle

Atharva Ingle Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @AtharvaIngle7

10 Sep
I am using @weights_biases from past 4-5 months and I am in love with the product. It makes working with Deep Learning projects super easy, trackable and fun. Here are some of my favourite features of wandb 👇
1. It is super easy to integrate Weights and Biases with any framework of your choice
2. You can literally log anything to wandb from any metrics you want to track, to model's weights, data, images, configurations, etc. Basically anything you can think of
Read 13 tweets
15 Aug
Some of the best resources I came across for intuitively visualizing #NeuralNetworks (how they transform data and classify stuff).
With these resources, Neural Networks will be no longer black boxes for you'll.
A thread 🧵
A playlist by none other than @3blue1brown explaining how forward and backward propagation works with great visualizations as always. You can't miss this ...
youtube.com/playlist?list=…
A great article from @ch402 explaining how a neural net transforms the data. He has some other great blogposts too, do check out the complete website
colah.github.io/posts/2014-03-…
Read 14 tweets
14 Aug
What is sampling in #MachineLearning and what are different sampling techniques?
Detailed analysis of 10 widely used sampling techniques. (Notes at the end 👇)
A thread 🧵
PS: There is a Notion document at the end of the thread with detailed notes on this topic 😎
Population vs Sample ✨
📌 Population - Population is the collection of the elements which has some or the other characteristic in common.
📌 Sample - Sample is the subset of the population. The process of selecting a sample is known as sampling
Why do we even need sampling 🤔?
📌 Dealing with a complete population is very hard (almost impossible). Sampling is a method that allows us to get information about the population without investigating every individual.
Read 9 tweets
9 Aug
How to learn a Machine Learning algorithm?
Everything you need to consider while approaching to learn a #MachineLearning algorithm 👇

A thread 🧵
1. Get the intuition behind the algorithm (i.e its core ideas and why the algorithm is there in the first place).
---
2. Get the mathematical intuition behind the algorithm (understand the math working under the hood).
---
3. For what the algorithm is used (regression/classification/both) and how it is modified to fit different scenarios.
---
4. How the algorithm works with numerical and categorical data?
---
Read 9 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!

:(