Understanding Graph Neural Networks | Part 1/3 - Introduction

  Рет қаралды 154,038

DeepFindr

DeepFindr

Күн бұрын

Пікірлер: 113
@sieyk
@sieyk 3 жыл бұрын
Every video I've seen failed to start at the basics. Thank you so much!
@gurjotsingh3726
@gurjotsingh3726 Жыл бұрын
I was going through my reasearch internship projects , never ever heard of GNNS, beautiful networks , when u told used in recommender systems, I was sold there. Nice explanation for a Deep Learning noobie like . Thanks a lot!! Keep up the good work.
@DeepFindr
@DeepFindr Жыл бұрын
Hi, glad you liked it :) I also have a video on GNNs with recommender systems :)
@mohammadrezagolzar3511
@mohammadrezagolzar3511 Жыл бұрын
I loved the way you explained things in a clear way that is understandable to most users.
@oguzzaydin
@oguzzaydin 3 жыл бұрын
Thanks for this superb basicly understandable introduction! I've just found this channel and I think these videos will be very helpful for my thesis. Omg bro you're the best! Subscribed!
@DeepFindr
@DeepFindr 3 жыл бұрын
Thanks man!
@alexvass
@alexvass Жыл бұрын
great video and clear
@DeepFindr
@DeepFindr Жыл бұрын
Thank you!
@byoutekinaeiyuu
@byoutekinaeiyuu Жыл бұрын
Probably the best yt video for this topic! Thank you so much! I subscribed and will watch more of your content!
@waleedrafi7977
@waleedrafi7977 3 жыл бұрын
Thank you for providing us such a great explanation. I really want to see a video on Fake news detection (graph classification) on your channel soon!
@jonathanorder
@jonathanorder 3 жыл бұрын
Thank you so much! I'm learning about this topic for my master's final work and the video is so well-explained.
@oguzzaydin
@oguzzaydin 3 жыл бұрын
Great. I am also working on GNN for my bachelor thesis. What is your department?
@timmae9655
@timmae9655 3 жыл бұрын
Out of curiosity, What was your topic?
@eransasson20
@eransasson20 3 ай бұрын
Thanks for this amazing presentation! This topic which is not trivial is also not easy to show in pictures and you succeeded perfectly. Great help!
@AshwinSankaranYT
@AshwinSankaranYT 3 жыл бұрын
Wow. Just Wow! Clear cut explanations so far!
@dhartdata5998
@dhartdata5998 3 жыл бұрын
Your series on GNN are very informative. Thanks.
@amrithavarshini126
@amrithavarshini126 3 жыл бұрын
Thank you so much for this! I have been trying to learn GNNs for my thesis and this was very helpful :)
@DeepFindr
@DeepFindr 3 жыл бұрын
Happy it helps! Tomorrow I'll upload another video on edge features for GNNs if this might be interesting for you :)
@NoNTr1v1aL
@NoNTr1v1aL Жыл бұрын
Absolutely amazing playlist! Subscribed.
@nintishia
@nintishia 3 жыл бұрын
Lucid explanation of basics. Thanks for making the video. The impression that I obtained from this video is that the finally obtained node embeddings contain all the information in the graph -- node properties, adjacencies, overall graph structure -- all of it. Is that the right view?
@DeepFindr
@DeepFindr 3 жыл бұрын
Hi! Yes this is correct. The node embeddings are a representation that hold all of this information including the context of the node in the graph. :)
@microcosmos9654
@microcosmos9654 3 жыл бұрын
The best explanation that I have found, thank you for your work!
@hiramcoriarodriguez1252
@hiramcoriarodriguez1252 3 жыл бұрын
Finally, i understand the differences between the tree task of machine learning on graph data. I want to say that your video content is too good, i hope to see more videos from you in the future of GNNs because is a hot topic and a lot of people wants to learn it, including me.
@DeepFindr
@DeepFindr 3 жыл бұрын
Thanks I'm happy it helps. Yes there are a couple more GNN videos on my todo list ;-)
@8thFloorHarmony
@8thFloorHarmony 3 жыл бұрын
so far so good. really looking forward to the 2nd and 3rd videos : D
@comp-it1913
@comp-it1913 2 жыл бұрын
Great video, How to use GNNs on point clouds.. looking forward from your side and with a clear understandable video like this. Already subscribed
@softuandwetu
@softuandwetu 9 ай бұрын
point cloud formation is done using GAN but not the graph attention network but Generative adversarial network
@evgenii.v
@evgenii.v Жыл бұрын
Nice videos, very easy to understand, you have really good explaining skills! And also thank you!
@naevan1
@naevan1 2 жыл бұрын
Hi, great video. I'm starting a project as a par time student researcher and i'm really having troubles with GNNs - especially the coding part with pytorch haha. But your video really helped clear out some inconsistencies in my head . thanks :)
@DeepFindr
@DeepFindr 2 жыл бұрын
Happy you liked it!
@alihaidershahhaider3061
@alihaidershahhaider3061 5 ай бұрын
Ahh thats nice one I found! Can you explain how GNN can be linked to topological data analysis?
@windupbird9019
@windupbird9019 3 жыл бұрын
Clear and amazing as an intro to GNN. Thank you very much
@saadhayat5973
@saadhayat5973 11 ай бұрын
what a video. great awesome simple explanation
@faiazahsan6774
@faiazahsan6774 Жыл бұрын
Best video on youtube for GNNs. Can you suggest any book on GNN with codes?
@eladwarshawsky7587
@eladwarshawsky7587 10 ай бұрын
Brilliantly explained
@amiralizadeh6621
@amiralizadeh6621 Жыл бұрын
thank you for the nice slides. the node features are names x and the node embedding are alos called x but in a different color. this is my first video on GNNs so i'm not sure.
@felipeolivos8934
@felipeolivos8934 3 жыл бұрын
Many thanks for sharing this knowledge and for do it so easy to understand. You are the man!
@DeepFindr
@DeepFindr 3 жыл бұрын
Thanks! Happy to share :)
@himanshumangoli6708
@himanshumangoli6708 2 жыл бұрын
Thanks for this good stuff. I have some general doubts suppose we have only information of nodes and edges so how we extract feature or dimension before feeding it to GNNs. Please reply
@DeepFindr
@DeepFindr 2 жыл бұрын
Hi. You either have to calculate some features for each of the nodes or you would need to use another embedding algorithm like Node2Vec. GNNs need some features for each of the nodes to work. I have a video called "converting a tabular dataset to a graph dataset" which might give you some more ideas how to set this up
@AliRashidi97
@AliRashidi97 2 жыл бұрын
Hi. Thanks a lot for this great playlist. Can you please make a tutorial on Graph RL?
@nikiiliev8062
@nikiiliev8062 2 жыл бұрын
Amazing videos mate.
@chaymaemakri8903
@chaymaemakri8903 2 жыл бұрын
Great job! I have a question to you, if can I use the GNN to solve an optimization problem (electrical system)? Thanks.
@DeepFindr
@DeepFindr 2 жыл бұрын
Hi! Generally yes :) what kind of optimization problem do you want to solve? There are many papers on this topic like these: - arxiv.org/abs/2106.10529 - arxiv.org/abs/2109.03604 - deepai.org/publication/spatio-temporal-graph-neural-networks-for-multi-site-pv-power-forecasting Let me know if you have further questions :)
@harshithbachimanchi7015
@harshithbachimanchi7015 3 жыл бұрын
Very clear and consice. Thank you so much!
@deepanjanmitra8199
@deepanjanmitra8199 2 жыл бұрын
I couldn't understand one thing: are these nodes analogous to the data points of a dataset? For instance, I have a dataset that has features [f1, f2, f3], and the dataset is [[x11, x12, x13], [x21, x22, x23] , [x31, x32, x33] , [x41, x42, x43] ]. In this case, what will be the nodes and edges?
@DeepFindr
@DeepFindr 2 жыл бұрын
I think this really depends on the Dataset. For a dataset where you have users and their attributes as features, each node in the graph represents a user and therefore one data point. For molecules however one whole graph is a data point. I have also a video on how to convert a tabular dataset into a graph dataset that might help to get a feeling for this.
@kishorkunal21
@kishorkunal21 2 жыл бұрын
How can I install PyTorch Geometric on Mac M1? Please share a link/doc or anything.
@minaf_rad2356
@minaf_rad2356 Жыл бұрын
HI thanks for your video it was so useful for me.. and i have a question : what's different between GNN and GCN?
@DeepFindr
@DeepFindr Жыл бұрын
Thanks! GCN is a special variant of GNNs. GNN is a general term for neural networks that operate in graphs. GCN extends convolutions to Graphs, but there are also other variants like GAT for example. :)
@ransakaravihara
@ransakaravihara 3 жыл бұрын
Thank you so much. Great video series☺️
@sisaybekele7957
@sisaybekele7957 3 жыл бұрын
wow great! what's the relation between GNN and GCN?
@DeepFindr
@DeepFindr 3 жыл бұрын
Thanks! There are many terms flying around - Message Passing Neural Network, Graph Neural Network, Graph Convolution Network. GNN is the term for all Neural networks that operate on graph data. GCN is a special type of graph neural network from Kipf and welling. They simply collect all neighbor node states, perform a transformation on each of the embeddings and sum over them. Message Passing NNs are a broader concept and here the information collected from the neighbors is not just the node embedding but can also include other things like edge features ect. The messages are therefore a generalized concept of information flowing between the nodes. Generally I would say we can order the terms like this: GNN > MPNN > GCN But this is just my personal interpretation. In many papers the terms are used interchangeably. Hope that helps :) if you want to have a closer look at further GNN variants I would also point you to my edge-features video. I think it's better visualized there :)
@manikbali5562
@manikbali5562 3 жыл бұрын
By Permutation independent do you mean permutation of just the leaf nodes or all nodes
@DeepFindr
@DeepFindr 3 жыл бұрын
The aggregation operation is performed on the neighbor nodes of each node. For instance you can use mean, Max, sum... Any permutation independent function. You could for instance not use a neural network because different input orders would lead to different outputs. If that answers your question.
@corredordavid8081
@corredordavid8081 3 жыл бұрын
Thanks a lot! Do you have any idea about how to make sense of the hidden layers content in a classification problem? I mean how to interpret the information the hidden layers contain after training. Thank you again! Very well explained!
@DeepFindr
@DeepFindr 3 жыл бұрын
Hi! Representations are usually far from being interpretable. However there exist approaches to make the representations less "black box". There exist different explainability techniques such as GraphLIME - but those rather explain the importance of nodes / edges for an individual prediction. So basically what the GNN has learned. I don't know if that is what you looking for. Alternatively you might have a look ath sparse GNNs. Sparse representations are usually easier to interpret. Finally you can also have a look at the similarity of embeddings. I visualize this in the video on Knowledge graphs. With t-SNE you can for instance reduce the dimensionality of the embeddings and then compare them. Hope that helps :)
@corredordavid8081
@corredordavid8081 3 жыл бұрын
@@DeepFindr thanks a lot for your help! I'll check it. If I may, can I ask you if it make sense to use gcn in small networks (150 nodes). Since deep learning is suppose to work with huge datasets, I'm not sure if using gcn is the best option for me. Cheers!
@DeepFindr
@DeepFindr 3 жыл бұрын
@@corredordavid8081 Do you mean you have 150 graphs? It's hard to say it in general (as it depends on the complexity of your machine learning problem). But I don't see a problem with just 150 graphs. Sure it's always - the more data the better, but just give it a try :) But GCN is certainly one of the simpler GNN layers, so a good point to get started. Good luck!
@corredordavid8081
@corredordavid8081 3 жыл бұрын
@@DeepFindr I mean a classification problem using as input a graph of 150 nodes. I'm looking at the videos you did about XAI. Very clear, thank you!
@DeepFindr
@DeepFindr 3 жыл бұрын
@@corredordavid8081 ah I see so you just have one graph, ok. I made a video on knowledge graphs, there I use also one single graph as input. I think it can totally work with 150 nodes. Cool thanks! The XAI series is however rather general (not related to graphs). But I might upload a video on graph explainability which is also quite interesting I think. :)
@nerdinvestdor
@nerdinvestdor 3 жыл бұрын
Can I consider this Transductive Setting: Node, Edge classification, and Inductive Setting is used to do Graph Prediction/Regression (ie: Say if molecule is toxic or non-toxic?) Thanks in advance but still trying to put my head around this :)
@DeepFindr
@DeepFindr 3 жыл бұрын
Hi! Yes, I've mainly seen these setups. But there is also the possibility to have node regression on full graphs, so predicting properties about each node in a graph. For example for a molecule you could not only be infested in the full graph - eg predicting toxic yes/no - but also in attributes about each node, such as predicting the 3d coordinates of each atom.
@bryancc2012
@bryancc2012 4 жыл бұрын
great video! could we use GNN to do unsupervised knowledge database clustering?
@DeepFindr
@DeepFindr 4 жыл бұрын
Hi, thanks for the feedback! I recently uploaded a video on how to do node classification in knowledge graphs. I assume the learned embeddings can also be used to perform unsupervised clustering. In this node classification video I visualize the GNN embeddings in the last minutes of the video. I think this comes pretty close to what you are looking for :) (but I have never tried unsupervised stuff with GNNs)
@DeepFindr
@DeepFindr 4 жыл бұрын
Also, there is a paper on your topic called "Graph Clustering with Graph Neural Networks"
@bryancc2012
@bryancc2012 4 жыл бұрын
@@DeepFindr thanks for the reply !
@tinyentropy
@tinyentropy 2 жыл бұрын
It would be nice if you could provide some survey papers or other sources. Thanks in advance!
@DeepFindr
@DeepFindr 2 жыл бұрын
Hi! I read this one when creating this video (among others) :) arxiv.org/abs/1901.00596
@AmanAbidi1
@AmanAbidi1 Жыл бұрын
Got something beneficial!!! Thanks
@ChandanSharma-bu6kd
@ChandanSharma-bu6kd 3 жыл бұрын
Homomorphism not isomorphism at 4.28 Isomorphism is a bijection.... So have be an exact image.... Homomorphism is less restrictive..
@DeepFindr
@DeepFindr 3 жыл бұрын
Hi. The isomorphism is referring to the graph, because two graphs can have a different node order but still be structurally identical (structure preservingl. Homomorphism might refer to the image, yes. But the operation on the image leads to two non-isomorphic images. Do you agree?
@Mur43j
@Mur43j Жыл бұрын
i just wanna ask if i can use the GNN in civil engineering work? if yes then how?
@DeepFindr
@DeepFindr Жыл бұрын
Hi, you might want to have a look at this paper: www.sciencedirect.com/science/article/abs/pii/S0926580523002443 Hope this is what you are looking for :)
@DungPham-ai
@DungPham-ai 4 жыл бұрын
Amazing. Thank so much.
@clayouyang2157
@clayouyang2157 3 жыл бұрын
can you tell me the details about GNN accomplishing the different level of task?
@DeepFindr
@DeepFindr 3 жыл бұрын
Hi :) The standard GNN is always outputting node level embeddings. So every GNN can be used for node prediction tasks. For graph level prediction you have to aggregate the individual node embeddings into a graph embedding. There are different methods for this (I also have a video on this in my current GNN project series). Finally, for link prediction, you can use the node embeddings of two nodes and predict if there is a connection between them. Does this answer your questions? :)
@clayouyang2157
@clayouyang2157 3 жыл бұрын
@@DeepFindr lol, thanks for your answer, it is very helpful. i think that i will do graph-level downstream task
@naveenkinnal5413
@naveenkinnal5413 3 жыл бұрын
Amazing video !! Subscribed. Also, could you please let me know how can we build a custom dataset and dataloader here. Thanks in advance
@DeepFindr
@DeepFindr 3 жыл бұрын
Hi and thanks! There is a tutorial on the pytorch geometric page on how to create a custom dataset: pytorch-geometric.readthedocs.io/en/latest/notes/create_dataset.html. But I will also soon upload a video on how to do that in torch geometric. Thanks!
@Kraft_Funk
@Kraft_Funk 4 жыл бұрын
High quality content! Subscribed :)
@DeepFindr
@DeepFindr 4 жыл бұрын
Thanks! I appreciate the feedback. If there is something else you are interested in, let me know.
@Kraft_Funk
@Kraft_Funk 4 жыл бұрын
@@DeepFindr It would be nice if you could explain the MessagePassing base class in detail, in torch_geometric
@marsrover2754
@marsrover2754 2 жыл бұрын
Can you make more tutorials from very beginning covering every concept in details and hands on tutorials and make a playlist? It's a great help.
@DeepFindr
@DeepFindr 2 жыл бұрын
Hi :) there is already a Playlist. Which concept is not covered yet? Thanks
@marsrover2754
@marsrover2754 2 жыл бұрын
@@DeepFindr So far these things are quite good and I found the playlist amazing but what I am saying is to show how to show the information in the form of adjacency and incidence matrix and all with the real example like patient data or customer purchase behavior or likes dislikes and all and cover everything from scratch it will not only make this playlist richer but also help a lot of people. Also if you can add more projects based on this then it will be a great help. In that sense, I had mentioned the previous comments. So far I have found this playlist a great one. More projects like drug-to-drug interaction. Project on prediction of node-level interaction. Route planning etc. That will not only help more people to understand the concepts more thoroughly but also at the end of the playlist they will have good portfolio of projects.
@DeepFindr
@DeepFindr 2 жыл бұрын
Hi, are you referring to the 3 GNN Intro videos? Or all my videos? :) Because I have uploaded many videos on GNNs from molecule data, over traffic prediction to knowledge graphs :) have you seen them already?
@DeepFindr
@DeepFindr 2 жыл бұрын
And thanks for your comment and ideas :)
@marsrover2754
@marsrover2754 2 жыл бұрын
@@DeepFindr I am watching it now and learning it from your playlist so kudos to you for making such a great playlist I just shared my view of how it can be much more fruitful as usually, every other tutorial are using standard graph data but if you can show something or make a tutorial on something where one can show normal data in the form of graphs and then leverage the GNNs that will be a great learning and more and more people will get benefit out of it. Thanks for such a great playlist though.
@leonardodelgado296
@leonardodelgado296 3 жыл бұрын
Really cool bro
@rivershi8273
@rivershi8273 3 жыл бұрын
Wow, it is so great.
@البداية-ذ1ذ
@البداية-ذ1ذ 3 жыл бұрын
Hi ,could you please help in fixing this errot OSError: /usr/local/lib/python3.6/dist-packages/torch_sparse/_convert.so: undefined symbol: _ZN3c104impl23ExcludeDispatchKeyGuardC1ENS_11DispatchKeyE,when i dowload the database section this appear and stop .i run the jupter as it is but dont know what i should do .thanks in advance
@DeepFindr
@DeepFindr 3 жыл бұрын
Have you tried pip install -U zmq?
@البداية-ذ1ذ
@البداية-ذ1ذ 3 жыл бұрын
@@DeepFindr i used colab jupeter, and i run your jupeter as it is .and there is part above for installing
@DeepFindr
@DeepFindr 3 жыл бұрын
@@البداية-ذ1ذ hi! Can you send me a screenshot to deepfindr@gmail.com? Thx
@البداية-ذ1ذ
@البداية-ذ1ذ 3 жыл бұрын
@@DeepFindr yes sure ,thanks alot
@البداية-ذ1ذ
@البداية-ذ1ذ 3 жыл бұрын
@@DeepFindr i did ,did you recieve it
@khadijaaithmid5536
@khadijaaithmid5536 2 жыл бұрын
thanks man God bless you
@nealhan5807
@nealhan5807 3 жыл бұрын
Excellent video! Could please share the slides?
@DeepFindr
@DeepFindr 3 жыл бұрын
Thanks! Sure, please send an email to deepfindr@gmail.com and I send them back :)
@nealhan5807
@nealhan5807 3 жыл бұрын
@@DeepFindr Thank you! I have sent an email to you.😊
@DeepFindr
@DeepFindr 3 жыл бұрын
Hi, I think I haven't received anything :)
@ridouanefouad3445
@ridouanefouad3445 3 жыл бұрын
Thank you so much .please share the slides?
@DeepFindr
@DeepFindr 3 жыл бұрын
Sure, can you send an email to deepfindr@gmail.com? :) thx
@שחרכהן-פ6ד
@שחרכהן-פ6ד 8 ай бұрын
Thanks!!!
@Mai-he2hv
@Mai-he2hv 4 жыл бұрын
hi deepfindr, can i have your email so that i can contact you. i have a job that i want to solve, and willing to pay. waiting for your reply
@DeepFindr
@DeepFindr 4 жыл бұрын
Hi, sure just send me an email to: deepfindr@gmail.com. You don't have to pay me, I'm happy to help. :)
@maxmaximus1503
@maxmaximus1503 4 жыл бұрын
@@DeepFindr i have sent you an email, have a look
@veerasaidurga8502
@veerasaidurga8502 6 ай бұрын
Your voice clarity is toooo worst
@DeepFindr
@DeepFindr 6 ай бұрын
Always make sure that insults are grammatically correct!
@dennislinnert5476
@dennislinnert5476 6 ай бұрын
@veerasaidurga8502 Who hurt you brother? Get some help, maybe going outside of the basement would help ;) or its just the hyderabad people
“Don’t stop the chances.”
00:44
ISSEI / いっせい
Рет қаралды 59 МЛН
An Introduction to Graph Neural Networks: Models and Applications
59:00
Microsoft Research
Рет қаралды 292 М.
DDPS | “A first-principles approach to understanding deep learning”
1:17:33
Inside Livermore Lab
Рет қаралды 15 М.
Theoretical Foundations of Graph Neural Networks
1:12:20
Petar Veličković
Рет қаралды 93 М.
But what is a neural network? | Deep learning chapter 1
18:40
3Blue1Brown
Рет қаралды 18 МЛН
Graph Neural Networks: A gentle introduction
29:15
Aladdin Persson
Рет қаралды 47 М.
How Graph Neural Networks Are Transforming Industries
12:03
AssemblyAI
Рет қаралды 13 М.
Graph Representation Learning (Stanford university)
1:16:53
Machine Learning TV
Рет қаралды 96 М.