Machine Learning Projects (Intermediate level) | 2021

Aleksa Gordić - The AI Epiphany · Beginner ·📐 ML Fundamentals ·5y ago

Key Takeaways

The video discusses intermediate-level machine learning projects, including neural style transfer using PyTorch and generative adversarial networks (GANs) for image generation, with a focus on deep learning and optimization procedures.

Full Transcript

what's up folks uh got myself a new microphone here so hopefully the audio will get better i still didn't have uh the time to buy the the rest of the equipment but it will come soon hopefully the audio will be much better in this in this video so in the last video i showed you some beginner friendly machine learning projects which you could do to get yourself started with machine learning and they were beginner friendly in the sense that you can basically write the amnes classifier in about 50 lines of code and you can find bunch of resources out there which show you how to to solve those problems and i'll link the video in the card somewhere here i hope in this video i'm going to recommend you some more advanced projects i kind of label them as intermediate level machine learning projects and the good thing about these is that i actually have all of them implemented on my github so that's going to help you kick start and do all of these without a problem so i'm a big fan of learning by doing and by coding these from scratch you're going to learn so much more about the deep learning framework of your choice and there will be pie torch if you're following along my github project and aside from the framework you're obviously going to learn a lot more about deep learning uh by just digging in into the project coding the neural networks from scratch and everything else that goes along without further ado let's jump into the project so the first project i'm going to recommend you do is neural style transfer and i've actually got a whole series on neural style transfer i'll link the uh videos somewhere here and also down below in the description jumping straight into the project uh on my github here it's called pytorch neural style transfer and if you open it up you'll see how it looks like and so just let me reiterate once more for those of you who don't know this so neural style transfer is basically about combining this uh content image with the style image and getting a stylized image out as you can see here on the screen so this uh colorized image on the left is the stylized image you get from the nst algorithm and you can see a bunch of beautiful examples that the algorithm can create and this is one of the reasons i recommend you starting with this project is because it's highly visual and most people uh just like seeing uh the things they do visualized so it's a nice intermediate project to start with you're going to have a paradigm shift using this project and the thing the reason being is that you usually uh optimize the weights of the neural network and here in this project you're actually going to tune the input pixels so that you get these amazing imagery as you can see on the on the screen here so aside from the paradigm shift there you'll learn how to match the feature maps of input imagery with the feature maps of the content image and also the gram matrix of the style image and if all of that sounds gibberish to you now that's totally fine um so you'll you'll learn that stuff so if you don't know it right now it's okay and the second project after we finish this one is also my github here it's the pi torch neural style transfer feed forward if we open it up here it's super similar to this one uh the difference being is that you're actually training a neural network here so in the previous one by doing optimization procedure you got those imagery in here you just pass your content image into the neural network and it just kind of stylize the image into the style that the network was trained for you're not going to tweak the input pixels you're going to tweak the actual weights of the neural network doing this project is going to teach you how to build your neural networks from scratch and how to set up the whole training procedure and pretty much the whole pipeline so if you're having any problems whatsoever starting with these projects please write the comments down in the comment section i'll make sure to address all of them and also feel free to open up issues on github i'll be monitoring those also one more thing i opened up a patreon account recently so if you want to support me and become a member of this growing community consider becoming my patron here and you'll get early access to my content and a bunch of other perks so the second project is going to be uh deep dream and it's a really interesting algorithm developed by this guy called alexander marvinso while he was back in google and he kind of woke up during the night had a nightmare and came up with this thing and you can see how it looks like you get this psychedelic looking imagery here so you take some whatever image as the input like say these figures here and after passing it through the algorithm you get these psychedelic ones even the this one on the top left is actually came from from from them from this image here so it's super exciting how it works is you uh basically uh take some images the input uh pass it into the pre-trained uh neural network and uh that neural network will kind of create some something called feature maps and you'll want to amplify whatever the network already sees in the image so because most of them were trained on like uh dog images you'll see how the network is slowly modifying the image it's going to add some like dog eyes and cat ties and fur and stuff like that because that's that was the data that the image was trained on so you're going to learn how to actually do manually do gradients steps so optimization steps you're going to use the raw gradients that you get from maximizing those feature maps and you're going to apply them to these input pixels and that's how you're going to to get these images so there are a lot of more things you can play with as you'll see when you open up this readme uh depending on which layers you use to do to do this uh optimization you're going to get different patterns like if you go to lower layers you'll get these geometric patterns and the higher up you go the deeper you go actually you'll get more like abstract imagery like these here and yeah so you can also create gifs pretty much fun stuff and last but not least generative adversarial networks or gans for short and if you haven't heard of gans so far which i doubt they're just a framework where we have two neural networks one is called the generator the other one is called the discriminator and the goal of the generator is to create uh imagery undistinguishable from the real data and you can see here in this uh so i basically have three gam projects inside of this repo in this original one uh invented by ian goodfellow you basically i used mnist digits so the same as in the beginner video the same data set and basically you can see this row here that's uh real imagery from amnest and after the generator is trained you can generate data that's uh looks like somebody could have written those uh like looks totally real you couldn't probably distinguish between this row and this one here and aside from from that one i also have this conditional again where you can additionally control which class you want to generate so you can condition it and say hey i wanna i want a zero and we just generate zeros you can see in the column here finally this uh deep convolutional again or dc again for short is super famous uh architecture and i've just picked a different data set here you can also use uh amnest but i've picked this cell up a data set of human faces and you can generate you can see how it's learning to generate uh faces of humans and this is how it looks like after the generator is trained obviously not uh undistinguishable from the real data but this was model that was developed i think in 2016 so you have much better models now state of the art like a style gan version two so yeah and i've also developed this uh jupiter notebook which you can use to just kind of better understand how this all works and hopefully yeah you'll find that useful okay a couple of tips on how you should approach these projects so the first nst project i just recommend you go ahead and read the original paper by gadis and it's not super tough even if you're i guess your intermediate since you're watching this video but if you even if you're kind of beginner go go ahead and try and give it give it a try as for uh deep dream uh they they have uh a blog that they wrote a couple of years ago the like chrysola and alexander vincent and you should go ahead and read that one before you go ahead and try and implement the code yourself also just feel feel free to go ahead and examine other people's code including mine obviously and that will help you develop your own version but try and try and develop the the core parts by yourself don't just copy paste code that's that beats the purpose because you want to learn here and when it comes to gans uh i definitely do not recommend you go ahead and try read the original paper it's super tough a lot lots of maths unless you're familiar with mathematics for machine learning just skip the one go ahead and find useful blogs online there are many again blogs out there and that will help you understand the basic logic and then the most important thing here is that you try and implement the training loop yourself that's where the the whole brain is okay that was pretty much it uh going forward i'll be developing some even more advanced projects like graph neural networks and transformers you can expect a video in a couple of months me suggesting some projects you should do yourself which are for more advanced machine learning practitioners i love to hear your thoughts on these three projects uh do you have any project which you think i should have included here just let me know your thoughts down in the comment section if you're new to this channel consider subscribing and hit that bell icon to get notified when i upload a new video until next time keep learning [Music] deep

Original Description

❤️ Become The AI Epiphany Patreon ❤️ ► https://www.patreon.com/theaiepiphany ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ In this video, I'll recommend you some intermediate-level machine learning projects. You'll get some: ✔️ intermediate level ML project ideas ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ ✅ NST (optimization): https://github.com/gordicaleksa/pytorch-neural-style-transfer ✅ NST (neural net): https://github.com/gordicaleksa/pytorch-nst-feedforward ✅ DeepDream: https://github.com/gordicaleksa/pytorch-deepdream ✅ GANs: https://github.com/gordicaleksa/pytorch-gans All of the papers and blogs are linked in READMEs of the above projects! ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ ⌚️ Timetable: 0:00 Intro: what will you learn through these projects? 1:30 Project: Neural Style Transfer (optimization) 3:20 Project: Neural Style Transfer (feed-forward) 4:19 Support me on Patreon 4:34 Project: Deep Dream 6:36 Project: GANs 8:38 How should you approach these? ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ 💰 BECOME A PATREON OF THE AI EPIPHANY ❤️ If these videos, GitHub projects, and blogs help you, consider helping me out by supporting me on Patreon! The AI Epiphany ► https://www.patreon.com/theaiepiphany One-time donation: https://www.paypal.com/paypalme/theaiepiphany Much love! ❤️ ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ 💡 The AI Epiphany is a channel dedicated to simplifying the field of AI using creative visualizations and in general, a stronger focus on geometrical and visual intuition, rather than the algebraic and numerical "intuition". ▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬ 👋 CONNECT WITH ME ON SOCIAL LinkedIn ► https://www.linkedin.com/in/aleksagordic/ Twitter ► https://twitter.com/gordic_aleksa Instagram ► https://www.instagram.com/aiepiphany/ Facebook ► https://www.facebook.com/aiepiphany/ 👨‍👩‍👧‍👦 JOIN OUR DISCORD COMMUNITY: Discord ► https://discord.gg/peBrCpheKE 📢 SUBSCRIBE TO MY MONTHLY AI NEWSLETTER: Substack ► https://aiepiphany.substack.com/ 💻 FOLLOW ME ON GITHUB FOR COOL PROJECTS: GitHub ► https://github.com/g
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from Aleksa Gordić - The AI Epiphany · Aleksa Gordić - The AI Epiphany · 16 of 60

1 Intro | Neural Style Transfer #1
Intro | Neural Style Transfer #1
Aleksa Gordić - The AI Epiphany
2 Basic Theory | Neural Style Transfer #2
Basic Theory | Neural Style Transfer #2
Aleksa Gordić - The AI Epiphany
3 Optimization method | Neural Style Transfer #3
Optimization method | Neural Style Transfer #3
Aleksa Gordić - The AI Epiphany
4 Advanced Theory | Neural Style Transfer #4
Advanced Theory | Neural Style Transfer #4
Aleksa Gordić - The AI Epiphany
5 Anyone can make deepfakes now!
Anyone can make deepfakes now!
Aleksa Gordić - The AI Epiphany
6 What is Computer Vision? | The Art of Creating Seeing Machines
What is Computer Vision? | The Art of Creating Seeing Machines
Aleksa Gordić - The AI Epiphany
7 Feed-forward method | Neural Style Transfer #5
Feed-forward method | Neural Style Transfer #5
Aleksa Gordić - The AI Epiphany
8 Alan Turing | Computing Machinery and Intelligence
Alan Turing | Computing Machinery and Intelligence
Aleksa Gordić - The AI Epiphany
9 Feed-forward method (training) | Neural Style Transfer #6
Feed-forward method (training) | Neural Style Transfer #6
Aleksa Gordić - The AI Epiphany
10 What is Google Deep Dream? (Basic Theory) | Deep Dream Series #1
What is Google Deep Dream? (Basic Theory) | Deep Dream Series #1
Aleksa Gordić - The AI Epiphany
11 Semantic Segmentation in PyTorch | Neural Style Transfer #7
Semantic Segmentation in PyTorch | Neural Style Transfer #7
Aleksa Gordić - The AI Epiphany
12 How to get started with Machine Learning
How to get started with Machine Learning
Aleksa Gordić - The AI Epiphany
13 How to learn PyTorch? (3 easy steps) | 2021
How to learn PyTorch? (3 easy steps) | 2021
Aleksa Gordić - The AI Epiphany
14 PyTorch or TensorFlow?
PyTorch or TensorFlow?
Aleksa Gordić - The AI Epiphany
15 3 Machine Learning Projects For Beginners (Highly visual) | 2021
3 Machine Learning Projects For Beginners (Highly visual) | 2021
Aleksa Gordić - The AI Epiphany
Machine Learning Projects (Intermediate level) | 2021
Machine Learning Projects (Intermediate level) | 2021
Aleksa Gordić - The AI Epiphany
17 Cheapest (0$) Deep Learning Hardware Options | 2021
Cheapest (0$) Deep Learning Hardware Options | 2021
Aleksa Gordić - The AI Epiphany
18 How to learn deep learning? (Transformers Example)
How to learn deep learning? (Transformers Example)
Aleksa Gordić - The AI Epiphany
19 How do transformers work? (Attention is all you need)
How do transformers work? (Attention is all you need)
Aleksa Gordić - The AI Epiphany
20 Developing a deep learning project (case study on transformer)
Developing a deep learning project (case study on transformer)
Aleksa Gordić - The AI Epiphany
21 Vision Transformer (ViT) - An image is worth 16x16 words | Paper Explained
Vision Transformer (ViT) - An image is worth 16x16 words | Paper Explained
Aleksa Gordić - The AI Epiphany
22 GPT-3 - Language Models are Few-Shot Learners | Paper Explained
GPT-3 - Language Models are Few-Shot Learners | Paper Explained
Aleksa Gordić - The AI Epiphany
23 Google DeepMind's AlphaFold 2 explained! (Protein folding, AlphaFold 1, a glimpse into AlphaFold 2)
Google DeepMind's AlphaFold 2 explained! (Protein folding, AlphaFold 1, a glimpse into AlphaFold 2)
Aleksa Gordić - The AI Epiphany
24 Attention Is All You Need (Transformer) | Paper Explained
Attention Is All You Need (Transformer) | Paper Explained
Aleksa Gordić - The AI Epiphany
25 Graph Attention Networks (GAT) | GNN Paper Explained
Graph Attention Networks (GAT) | GNN Paper Explained
Aleksa Gordić - The AI Epiphany
26 Graph Convolutional Networks (GCN) | GNN Paper Explained
Graph Convolutional Networks (GCN) | GNN Paper Explained
Aleksa Gordić - The AI Epiphany
27 Graph SAGE - Inductive Representation Learning on Large Graphs | GNN Paper Explained
Graph SAGE - Inductive Representation Learning on Large Graphs | GNN Paper Explained
Aleksa Gordić - The AI Epiphany
28 PinSage - Graph Convolutional Neural Networks for Web-Scale Recommender Systems | Paper Explained
PinSage - Graph Convolutional Neural Networks for Web-Scale Recommender Systems | Paper Explained
Aleksa Gordić - The AI Epiphany
29 OpenAI CLIP - Connecting Text and Images | Paper Explained
OpenAI CLIP - Connecting Text and Images | Paper Explained
Aleksa Gordić - The AI Epiphany
30 Temporal Graph Networks (TGN) | GNN Paper Explained
Temporal Graph Networks (TGN) | GNN Paper Explained
Aleksa Gordić - The AI Epiphany
31 Graph Neural Network Project Update! (I'm coding GAT from scratch)
Graph Neural Network Project Update! (I'm coding GAT from scratch)
Aleksa Gordić - The AI Epiphany
32 Graph Attention Network Project Walkthrough
Graph Attention Network Project Walkthrough
Aleksa Gordić - The AI Epiphany
33 How to get started with Graph ML? (Blog walkthrough)
How to get started with Graph ML? (Blog walkthrough)
Aleksa Gordić - The AI Epiphany
34 DQN - Playing Atari with Deep Reinforcement Learning | RL Paper Explained
DQN - Playing Atari with Deep Reinforcement Learning | RL Paper Explained
Aleksa Gordić - The AI Epiphany
35 AlphaGo - Mastering the game of Go with deep neural networks and tree search | RL Paper Explained
AlphaGo - Mastering the game of Go with deep neural networks and tree search | RL Paper Explained
Aleksa Gordić - The AI Epiphany
36 DeepMind's AlphaGo Zero and AlphaZero | RL paper explained
DeepMind's AlphaGo Zero and AlphaZero | RL paper explained
Aleksa Gordić - The AI Epiphany
37 OpenAI - Solving Rubik's Cube with a Robot Hand | RL paper explained
OpenAI - Solving Rubik's Cube with a Robot Hand | RL paper explained
Aleksa Gordić - The AI Epiphany
38 MuZero - Mastering Atari, Go, Chess and Shogi by Planning with a Learned Model | RL Paper explained
MuZero - Mastering Atari, Go, Chess and Shogi by Planning with a Learned Model | RL Paper explained
Aleksa Gordić - The AI Epiphany
39 EfficientNetV2 - Smaller Models and Faster Training | Paper explained
EfficientNetV2 - Smaller Models and Faster Training | Paper explained
Aleksa Gordić - The AI Epiphany
40 Implementing DeepMind's DQN from scratch! | Project Update
Implementing DeepMind's DQN from scratch! | Project Update
Aleksa Gordić - The AI Epiphany
41 MLP-Mixer: An all-MLP Architecture for Vision | Paper explained
MLP-Mixer: An all-MLP Architecture for Vision | Paper explained
Aleksa Gordić - The AI Epiphany
42 DeepMind's Android RL Environment - AndroidEnv
DeepMind's Android RL Environment - AndroidEnv
Aleksa Gordić - The AI Epiphany
43 When Vision Transformers Outperform ResNets without Pretraining | Paper Explained
When Vision Transformers Outperform ResNets without Pretraining | Paper Explained
Aleksa Gordić - The AI Epiphany
44 Non-Parametric Transformers | Paper explained
Non-Parametric Transformers | Paper explained
Aleksa Gordić - The AI Epiphany
45 Chip Placement with Deep Reinforcement Learning | Paper Explained
Chip Placement with Deep Reinforcement Learning | Paper Explained
Aleksa Gordić - The AI Epiphany
46 Text Style Brush - Transfer of text aesthetics from a single example | Paper Explained
Text Style Brush - Transfer of text aesthetics from a single example | Paper Explained
Aleksa Gordić - The AI Epiphany
47 Graphormer - Do Transformers Really Perform Bad for Graph Representation? | Paper Explained
Graphormer - Do Transformers Really Perform Bad for Graph Representation? | Paper Explained
Aleksa Gordić - The AI Epiphany
48 GANs N' Roses: Stable, Controllable, Diverse Image to Image Translation | Paper Explained
GANs N' Roses: Stable, Controllable, Diverse Image to Image Translation | Paper Explained
Aleksa Gordić - The AI Epiphany
49 VQ-VAEs: Neural Discrete Representation Learning | Paper + PyTorch Code Explained
VQ-VAEs: Neural Discrete Representation Learning | Paper + PyTorch Code Explained
Aleksa Gordić - The AI Epiphany
50 VQ-GAN: Taming Transformers for High-Resolution Image Synthesis | Paper Explained
VQ-GAN: Taming Transformers for High-Resolution Image Synthesis | Paper Explained
Aleksa Gordić - The AI Epiphany
51 Multimodal Few-Shot Learning with Frozen Language Models | Paper Explained
Multimodal Few-Shot Learning with Frozen Language Models | Paper Explained
Aleksa Gordić - The AI Epiphany
52 Focal Transformer: Focal Self-attention for Local-Global Interactions in Vision Transformers
Focal Transformer: Focal Self-attention for Local-Global Interactions in Vision Transformers
Aleksa Gordić - The AI Epiphany
53 AudioCLIP: Extending CLIP to Image, Text and Audio | Paper Explained
AudioCLIP: Extending CLIP to Image, Text and Audio | Paper Explained
Aleksa Gordić - The AI Epiphany
54 RMA: Rapid Motor Adaptation for Legged Robots | Paper Explained
RMA: Rapid Motor Adaptation for Legged Robots | Paper Explained
Aleksa Gordić - The AI Epiphany
55 DALL-E: Zero-Shot Text-to-Image Generation | Paper Explained
DALL-E: Zero-Shot Text-to-Image Generation | Paper Explained
Aleksa Gordić - The AI Epiphany
56 DETR: End-to-End Object Detection with Transformers | Paper Explained
DETR: End-to-End Object Detection with Transformers | Paper Explained
Aleksa Gordić - The AI Epiphany
57 DINO: Emerging Properties in Self-Supervised Vision Transformers | Paper Explained!
DINO: Emerging Properties in Self-Supervised Vision Transformers | Paper Explained!
Aleksa Gordić - The AI Epiphany
58 DeepMind DetCon: Efficient Visual Pretraining with Contrastive Detection | Paper Explained
DeepMind DetCon: Efficient Visual Pretraining with Contrastive Detection | Paper Explained
Aleksa Gordić - The AI Epiphany
59 Do Vision Transformers See Like Convolutional Neural Networks? | Paper Explained
Do Vision Transformers See Like Convolutional Neural Networks? | Paper Explained
Aleksa Gordić - The AI Epiphany
60 Fastformer: Additive Attention Can Be All You Need | Paper Explained
Fastformer: Additive Attention Can Be All You Need | Paper Explained
Aleksa Gordić - The AI Epiphany

This video provides intermediate-level machine learning project ideas, including neural style transfer and generative adversarial networks (GANs) for image generation, with a focus on deep learning and optimization procedures. The video covers the implementation of these projects using PyTorch and Jupyter Notebook.

Key Takeaways
  1. Tune input pixels for stylized imagery
  2. Match feature maps of input imagery with feature maps of content image and gram matrix of style image
  3. Train neural network to stylize images
  4. Build neural networks from scratch and set up training procedure
  5. Optimize weights of neural network
  6. Read original paper by Gadi and implement code for NST project
  7. Implement code for Deep Dream
  8. Implement training loop for GANs
💡 The video highlights the importance of optimization procedures in deep learning and provides a practical example of how to implement neural style transfer using PyTorch.

Related AI Lessons

Beyond the Elephant: On Manifolds, Projections, and the Hidden Assumptions of Neural Geometry
Learn how neural geometry relies on manifolds, projections, and hidden assumptions to understand complex data, and why it matters for AI development
Medium · AI
Beyond the Elephant: On Manifolds, Projections, and the Hidden Assumptions of Neural Geometry
Learn how neural geometry relies on manifolds, projections, and hidden assumptions to understand complex data, and why it matters for advancing AI research
Medium · Data Science
Beyond the Elephant: On Manifolds, Projections, and the Hidden Assumptions of Neural Geometry
Explore the geometric assumptions underlying neural networks and their implications on manifold learning and projections
Medium · Deep Learning
Beyond the Elephant: On Manifolds, Projections, and the Hidden Assumptions of Neural Geometry
Learn about the hidden assumptions of neural geometry and how manifolds and projections impact neural network performance
Medium · LLM

Chapters (7)

Intro: what will you learn through these projects?
1:30 Project: Neural Style Transfer (optimization)
3:20 Project: Neural Style Transfer (feed-forward)
4:19 Support me on Patreon
4:34 Project: Deep Dream
6:36 Project: GANs
8:38 How should you approach these?
Up next
Machine Learning Project for Final Year Students | ML Project Idea @FameWorldEducationalHub
FAME WORLD EDUCATIONAL HUB
Watch →