Hyperbolic Graph Convolutional Networks | Geometric ML Paper Explained
Key Takeaways
The video explains Hyperbolic Graph Convolutional Networks, a class of Graph Convolutional Networks (GCNs) that operate in hyperbolic space, and are used to reduce distortion when embedding real-world graphs with scale-free or hierarchical structure. The video covers the mathematical foundations of hyperbolic GCNs, including the hyperboloid model, tangent space, exponential and logarithmic maps, and the use of learnable curvatures.
Full Transcript
what's cracking guys in this video i'll be covering hyperbolic graph convolutional neural networks by the authors from the url escovets group at stanford and we're going to see that hyperbolic keyword here in the title is what makes this paper particularly scary and math heavy and i'm going to also argue that it's not just mathematics for the sake of mathematics i'm going to show you why they chose they have chosen to to use this exotic geometric space and use it to to to to learn uh like useful embeddings later on for node classification and link prediction tasks so um let me start with with abstract here and then i'm gonna show you a nice visualization that's gonna give you like a gut feeling for why we are doing why are we using hyperbolic spaces uh in the first place and i'm gonna also get into the mathematical formalism so if you're not familiar with what like curvature of space is what hyperbolic space is uh don't worry so we'll get there okay so let's start here uh graph convolutional neural networks or gcns for short embed nodes in a graph into euclidean space which has been shown to incur a large distortion when embedding real-world graphs with scale-free or hierarchical structure okay and then they say we derive gcn's operations in the hyperboloid model of hyperbolic space and map euclidean input features to embeddings in hyperbolic spaces with different trainable curvature at each layer so my whole goal of this video will be to decode what like the the thing they just said in this in this particular sentence here um okay so let me just read this one and then i'm going to tell you what this scale-free graph is so in particular scale-free graphs have tree-like structure and in such graphs the graph volume defined as the number of nodes with some radius to a center node grows exponentially as a function of of radius so basically scale-free networks are just a particular type of networks that have this this power law behavior where uh nodes that have a lot of connections become less and less frequent as you can see here asymptotically we have k which is the number of nodes uh we have we have the probability of a node having k connections as k grows you can see that like basically that probability drops uh according to this power law here so yeah um basically the the the main idea actually is that this exponential a keyword and if we have like graphs that are crowded because of this exponential growth of neighbors that's when we want to use uh the hyperbolic space so now let me give you like a visual intuition for why that may be okay let's get to this chart here okay so let's imagine we have our nodes and we have the associated node features and we can always uh basically visualize node features as points in in like a euclidean space so let's now imagine our euclidean space is displaying here we have the points here and you can you can you can kind of imagine that if we have like exponentially more neighbors here if it's kind of crowded then mapping to this uh like geometric space which we call hyperbolic space uh is going to uh make them uh more spread out and like that's the basic intuition basically by spreading the points which are densely um clustered together in the euclidean space so by spreading them out in the hyperbolic space you make it easier to discern to discriminate between different uh node features and that does do a better uh job at classification etc so that's the the the main uh mental model i want you to have uh throughout this this video um and having said that now let me let me dig into uh like uh mathematical formalisms and let me try and explain what what the hyperbolic gcns basically are okay i'm gonna start with uh some basic notation and explanation of what gcns are if you haven't if you've never watched uh graph ml videos so far go ahead and check out my playlist on graphml uh like in particular go and watch the gcn so graph commercial network uh paper as well as maybe graph attention network uh paper so get paper uh so that's gonna get you up to speed but here i'm just gonna briefly uh recap what we've seen in those videos so first of all the the whole point of graph like representation learning is to learn these uh useful representations of of nodes and sometimes edges which we can then use to do classification tasks on nodes on graphs on edges et cetera so let me just show you the formalism here so graph representation learning is this mapping f so from from this set v of of nodes set e of edges and then we have associated node features sometimes we also have edge features but here i'm just gonna they just ignored the edge features so you can see the notation is the following so x of i which means node i uh so these are the features at the raw features because uh basically zero means uh zeroth layer before we even started applying the the graph uh neural network so and also we have this symbol e which means these are euclidean raw features of this particular node i so that's how you treat this symbol here okay and the goal is to find uh like a mapping to this uh basically a representation z which is of dimension uh the number of nodes times d prime which is the dimensionality of your output uh node features okay so the whole point is to find like a basically uh good features so so that we can discriminate between different classes or do whatever uh arbitrary task okay so that's the graph representation learning now quickly on to how uh graph convolutional neural networks work uh let me just maybe draw a simple example graph here so we have a node i here we have a couple of neighbors so we have some neighbors here they are connected to node i of course these neighbors could have their own neighbors et cetera et cetera but let's focus on this particular node i here and let's see how do we learn the representation of of that particular node okay so what they first do is they create this uh intermediate representation h so i can see here from layer l minus one which is the previous layer uh we do the mapping using the the weight matrix and then we add the bias so we'll have like a separate set of these w's and b's uh in every single layer of the graph uh neural network of the gcn in this particular example so once we form these intermediate representations what we do in order to update the the feature vector of this node i is we simply sum so we we sum the the this intermediate representation of node i with uh like a sum over neighbors uh of weighted intermediate representation so let me just kind of break that down quickly basically what i've said there is the following so let's imagine we have so these are the neighbors we have three neighbors in this particular example we have certain uh basically feature vectors associated with the neighbors so something like that and let's imagine these are the h's so these are the the representations that we have after we do this particular mapping here so we just do weighted average of those of those particular feature actors we sum them up and then apply the nonlinear activation function in order to get basically a novel so layer l a representation of of node i so we're going to finally end up having like h i for layer l and these are just euclidean features now okay now these w uh ijs depending on on the architecture these could be learnable but that's now getting into the attention spectrum what what the original gcn uh did here is basically so this this w i j was simply 1 over square root d i times dj where d is just a degree of a node so that means you basically normalize this particular presentation depending on the degree of this node and degree of your target node js or let's say this is no j in this particular example okay so that's that's that's how they uh how they've done it in the original paper and that's the gcn formalism now for the more important part let me introduce you to the formalism of of hyperbolic spaces and let's see what it's all about okay so hyperbolic spaces have uh different models the most famous ones is this so-called lorenz model also known as the hyperboloid model as you can see here and there is also this poincare ball model of hyperbolic space so here they are going to work with the hyperboloid model because they showed it's more stable and so they they basically stuck with it so we are going to be working with the hyperboloid model of hyperbolic space so they introduced this uh like inner product uh called minkowski inner product so it's a simple mapping of of you map two tupple uh of of these d plus one dimensional points into the real basically uh into a real number and this is how minkowski product is defined basically it's similar to your to your dot product to which you're used to and the only difference is basically uh this this addition of a minus sign for the first coordinate of the points uh in in this space okay next up they denote by this h d k they denote the hyperbolic manifold in d dimensions with constant negative curvature minus 1 over k where k is always bigger than zero so briefly just what a curvature of space is that may seem like very scary but it's not basically um you're usually used to working in the euclidean space so let's imagine we have like an example of a euclidean space a 2d space like a plane here if we shoot a parallel geodesics where geodesic is just a generalization of uh like a straight line to arbitrary spaces so if we were to shoot them in euclidean space here in a plane uh you you can see that the the distance between these two lines is always going to be constant and these two lines will never intersect nor diverge they'll always stay at the same distance from each other that's not the case in every single space and that's why we have the notion of curvature in the case of a sphere if you shoot two parallel geodesics you can see they're gonna intersect at the north pole in this particular example which means when the when the when the geodesics when the parallel geodesics intersect we call that space positively curved uh and on the other hand if the parallel geodesics diverge then we call that space negatively curved and you can see here an example of a hyperbolic space here so you can imagine if i were to extrapolate these points here they are going to diverge each in its own direction here across this hyperbolic space so that's the idea with curvature it's not not not that fancy just once you have this visual mental like mental picture then everything becomes much easier okay so next up they have this uh tangent space at point x of the manifold h the uh decay and let me just now show you how they define those two formally so again this this hyperboloid model is defined as a set of d plus one dimensional points such that the minkowski uh inner product between a point with itself is basically always going to be constant and equals to minus k and additionally the first coordinate of of these of these points needs to be positive so that's that's how we define the hyperboloid model um following up we have this tendon space which is just like a set of perpendicular vectors so a set of orthogonal vectors to your uh vector x so again basically it's a set of vectors v uh d plus one dimensional vectors v such that the inner product again minkowski inner product equals zero so tangent space is a concept you're familiar with uh like even though this is just like uh let me give you like an analogous uh case uh in the case of like a sphere let's let's imagine we have a sphere here so we have a sphere here and basically this is like maybe north pole this is like south pole uh tangent space to the north pole would be just like a simple plane it's a plane such that it touches the the north pole it basically touches the sphere only at a single point and that's at the north pole and you can see here that all of the vectors in this particular plane so let me draw a couple of vectors here all of these vectors are going to be perpendicular so if i take the center of the sphere as as the as the origin and if i were to draw so this is the point x in this formalism so this is point x and so basically you can see that this vector here so all of these vectors in the plane are perpendicular are orthogonal to this particular vector axis so this is basically uh a nice way to formula to algebraically um describe uh this notion of a tangent space we'll soon see why it's convenient to instead of working on the manifold to be working on on a particular tangent space of that manifold we'll see why that is convenient okay let me continue here and let me introduce a couple more details so i'm going to quickly skim over over these formalisms because they're not as vital for this paper but let me just introduce you to the mathematics it may be interesting so now for v and w which lie in the tangent space of the hyperboloid model at point x we define this g of x which is basically uh something called our romanian metric tensor or it's a simple it's basically defined as a minkowski in your product and it's going to later on allow us to define distances in the tangent space that's why it's a it's a it's an important contract and we call this tuple of the hyperboloid uh model and this uh romanian metric tensor we call this arumanian manifold with negative curvature minus one over k okay so not as important just like introducing you to some notation uh so finally the the tangent space is useful to perform euclidean operations undefined in hyperbolic space and we denote uh by the norm of we we basically induce uh the norm of a vector in tangent space uh by doing a square root of the inner inner product where inner product is being skinner product and that's how we define the normal vectors and by doing that we basically have a nice way to uh define a distance in tangent spaces of of of this particular hyperbolic manifold okay so all of that formalism was basically so that we can understand what um exponential and logarithmic maps are so this this is going to be the main construct we need to understand in order to understand how hyperbolic gcns work before i get there i need to briefly introduce geodesics which are basically just uh and they say here which are generalizations of shortest paths in graphs or straight lines in euclidean geometry so that's just a generalization a notion of of like a shortest um path between two points in arbitrary spaces so let me show you how they define it let x be a point on the hyperboloid manifold let you be uh like a basically a point in a vector in the tangent space of that point x uh we call that u the unit speed and because they're going to basically make sure that the inner product here or the norm of that particular vector is going to be equal to one and then they say the unique unit speed geodesic denoted like this such that uh basically that geodesic at point zero equals to this point x on the manifold next up we have gamma dot which just basically means a velocity vector at point evaluated at zero is going to be equal exactly to that u unit speed okay so let me give you uh like a mental model i have when i think about these geodesics so imagine we have a curved space such as this one so something like this and that's just like uh basically imagine we had some type of like a sheet of paper or something and i'm looking at that sheet from this side and that's where we get something like this so now now imagine we have point x which is the point uh we've been using in this formalism of the geodesics here and let's imagine we have like a unit vector uh unit speed vector u uh and now what judicial is is and and that this u lies in the tangential plane of this point x so imagine we have like a tangential plane here and u just lies in that plane and so what the geodesic is is imagine we start from this point and we have this velocity vector and for some amount of time you basically shoot like a point from you you shoot a point from x uh using this velocity vector v and you just trace out where that point will go on this on this curved space so basically imagine if we were to travel for one second maybe we'd end up somewhere here and we'll see why that is useful because that basically allows us to map uh vectors from tangent space as you can see here so we basically just map this vector here we mapped it on to a particular point on the on the manifold here and that's how i like to think about geodesics and exponential and logarithmic maps which i'm going to introduce in a second so and now we have for this particular hyperboloid model we can see how the geodesic is defined here basically some complex uh equation using hyperbolic cosine and the hyperbolic sine and it's not even important you can treat this as a black box so what is important for you to understand is that as we are as we are basically changing this parameter t we're going to be tracing a path along the manifold so we're going to be tracing a point that's always going to belong to manifold and not to the tangent space and here they show how you can calculate the distance between two points on this hyperbolic manifold again some complicated equation we have minkowski inner product we have arc cosine hyperbolic so not that important you can treat it as a black box so what is important is that we have um like geodesic and we have a distance okay so now to the more important part and that's the exponential and logarithmic maps let's see how these are defined so given a point on the manifold x and a tangent vector v that belongs to the tangent space as defined by point x so the exponential map maps from the tangent space of x onto the manifold onto the hyperbolic manifold and you can see how it assigns the point it's basically evaluated as as geodesic at when you set t equals to one and that's precisely what i just explained here so you have uh basically let me just map this directly here so here in this notation we have x and v which means this thing here we now call it so instead of u we call it v so this is v this is x and we we basically what we do is um we trace out this judicic so gamma is a unique geodesic satisfying that at t equals zero it equals x and the velocity is described by by vector v which means as i said so we have a point here at x with the velocity v and we just trace out its path along the manifold and that's how we map vector v to a novel point on the manifold so that's that's your exponential um basically exponential map vice versa we can define a logarithmic map which has this property that if you then apply after applying exponential if you apply a log then you'll you'll you'll end up with the initial vector v and then they say here in general romanian manifolds these operations are only defined locally but in the hyperbolic space they form a bijection between the hyperbolic space and the tangent space at a point now this might might not be um apparent why this is relevant but like it is i'm gonna briefly tell you what this means and that's the following so for this particular hyperbolic model you can see it here uh this tangent space even if it was infinite would have a unique point so for every single point on this plane so we basically have a situation where we can map any arbitrary point here to some point unique point on this particular hyperboloid manifold and that would not be the case for arbitrary general romanian manifold so let me for example show you a contra example so let let's imagine we have a sphere so let's imagine we have a sphere here and let's imagine that at the north pole we have a like a tangent space and let's imagine it's just an infinite tangent space and so you can imagine that if we had a vector such as this one okay so this vector would maybe uh if we were to trace out the geodesic here by doing exponential by applying the exponential map we'd end up maybe mapping this this vector to this point here okay but now the thing is because of how this manifold looks like it's a sphere if we had like a maybe like 3x the size of this vector we'd end up doing like doing a full circle and then one more half and we'd end up at the same point here which means we've basically mapped we don't have a projection anymore we map these two vectors from the plane onto the same point so both of these map to the same point and we don't have a projection and that that's that's a problematic property if you want to learn embeddings okay so that's that's everything you need to understand um now they just show how these exponential and logarithmic maps look like for this particular example of using a hyperbolic manifold you can just see they're using cosine hyperbolic cosines et cetera et cetera but the main idea is the thing i just explained to you okay now that we have this differential geometry under our belt let's now dig into the actual model and understand how it works okay so this should now be fairly straightforward the first step we need to do is given our node feature vectors which are in the euclidean space initially we first want to map them into hyperbolic space okay so how we do that is the following so they define something called north pole of this hyperboloid model uh and they define it like this you can see this uh like bold o the first coordinate is the square root of k everything else is zero and this is the north pole of the of the hyperboloid and so why that is important is because if we were to construct a point if we were to augment our euclidean feature vector here by just prepending zero uh as the zeroth dimension we can see that if we were to do inner product between this augmented euclidean point with the origin we'd get a zero because basically we have zero here which means zero times zero is going to be zero and because here we have all zeros no matter what we have in x we're going to end up with zeros once you sum that up a bunch of zeros uh yields a zero and so that's why we have this fact here uh interesting property if you understand what this what's the semantics behind this expression that's that we we now know that this is a lot that this augmented uh point lies in the tangent space of this of this particular uh north pole of the hyperboloid okay so that's what we have when we have zero that means we have orthogonal like vectors and they say therefore we interpret this point here as a point in the tangent space of the north pole and uh basically then they show how how you can map uh from from the from that augmented point in the tendon space by just applying exponential map um at north pole to get the finally to to get the hyperbolic uh embeddings okay let me quickly show you how you should think about this as it's fairly easy given the diagram up here so this is the tangent space of the north pole imagine that this red dot here is the north pole so this is the tangent space of the north pole of this hyperbolic model here okay so now we want to map an arbitrary point from the tangent space onto the hyperbola hyperbolic space so what we're going to do is the following so imagine this is the point we're trying to to map so this is the one we're trying to find um like a corresponding point on the manifold for this particular point here in the euclidean space so what we do is we you can see we have this vector here and imagine this this plane is now touching this hyperbolic model at a single point so it's a tendon space as i said and then we just do the exponential map which is we shoot a point we start here from the north pole and we just shoot a point in that direction with that velocity vector and then it's going to trace out this particular geodesic and we're going to end up with this point here and that's why this point maps to this one it's fairly easy really once you understand the the visualization of this uh it should be fairly trivial okay so that's the first step of the hyperbolic gcn model we map from euclidean points into hyperbolic points okay the next step is we need to now do um we need to find equivalent operations in the hyperbolic space to what gcn is doing in euclidean space so that means we first need to understand how to do feature transforms in the hyperbolic space let's see what they say so we now want to learn transformations of points on the hyperboloid manifold however there is no notion of vector space structure in hyperbolic space uh so i think the main thing here you should you should have in your mind is like the closure property is is is violated what i mean by that is if you are on a plane and you were to add two arbitrary vectors you end up being in the plane still so that's the closure property so basically uh let me go up here again so if you have uh two vectors here let's imagine we have this vector here and this vector here if we add them up we'll end up with additional vector that lies in the plane but if we were to do if we were to do the same thing for this a hyperboloid model would basically be um violating the closure property and that's why we don't have a notion of of vector space on this on this hyperbolic space that's that's that's how i understand it i may be wrong here but like that's my best understanding of this thing okay so um let's continue here so the main idea is to leverage the exponential and log maps um so that we can use the tangent space to perform euclidean transformations so let me break it down for you what they now do is they're gonna use the log operator to now get from from the hyperbolic point on to the tangent space again of the north pole so we are always mapping onto the tangent space of the north pole then we apply once we have a point there then we apply this this this linear mapping w which may be which may reduce or increase the dimensions so that's why we have d prime here finally we apply again exponential mapping which means we take this whatever this point here is and we form a vector between origin and this point here and we do the usual like the the shooting metaphor and that's how we end up on the manifold again so again we we get from the we map from manifold onto the tension space we do the transform there the linear transform and then we map it back on to the manifold okay i'm going to stop explaining now the exponential and log maps and assume you understand how we map from manifold to tangent space and back uh okay now we have we need to add the concept of a bias and how we do that is the following so bias is a vector uh that's so we def they define b so the bias as an euclidean vector located in the tangent space of the north pole again of the hyperbolic model and so what they do is they do something called uh basically parallel transport and the parallel transport is going to take the bias vector that lies in the tangent space of the north pole it's going to transport it in a smart way and i will not get into the formalism of parallel transport we can imagine just kind of shifting that bias vector from the tension space of the north pole into the tangent space of this point uh x uh the point of interest the point we're currently trying to transform and then we're just going to apply exponential map uh starting from that point x now this may be confusing but again it has a very like simple and uh simple visual interpretation and and semantics uh it's just hard to to maybe understand it from the first uh attempt from this equation so let me try and get back to our diagram here um so imagine we have let me just delete a couple of things here so so is to reduce the clutter so let me delete all of this and let's now try and understand how the blasting works okay so let's imagine we have um so this is the the the tangent space of the north pole and let's imagine we have a bias vector somewhere here so maybe it's something like this and it's a learnable vector remember that so we're trying to learn weights and biases uh so what we do is the following so now imagine we have uh a point that we are trying to transform and i'm going to pick just a just a single one like let's take this one and basically that point is mapped onto this point on the manifold and you can now imagine that this point here we have an associated tangent space i'm gonna try and do that it's gonna probably fail miserably so we have a tangent space that touches only this point uh so it's a tension space of this particular point okay so what we're going to do is take this bias vector b and we're going to transport it onto this tangent space of this point here okay so we're going to transport it to here let's imagine maybe it's not going to lie maybe somewhere here and once we have that we just apply the exponential map which means we're going to shift uh which means we're going to do the following we're going to take this point and now because of the bias vector and applying the exponential map we're going to end up here so we add we we just successfully added a bias in the hyperbolic space so that's what we've done okay let me try and explain this uh once more because it's hard to visualize this and i did not do a great job of drawing this so we have a bias vector here in the tangent space we map it we parallel transport it into this different tangent space that corresponds to this particular point of interest and once we have the bias vector there then we do the shooting so that's the exponential map and we end up from this orange point we end up here and thus we as i said successfully managed to add a bias in the hyperbolic space okay that's the best i can do um in in in one attempt okay so let's get back to the um section 4.2 we've defined we've successfully defined linear mapping in the tendon space and we've successfully defined bias as well next up we need to define neighborhood aggregation so i'm going to just jump to the equations straight ahead so here is what they do given two notes um x i and xj we're gonna apply uh log mapping uh and that means we end up in the tangent space of the north pole and once we are there uh we're going to concatenate them as you can see by the symbol here and then we just pass them into the mlp and we do that for all of the js from the neighborhood of node i and then we just apply a soft max that's how we basically end up with w i js once we have those coefficients we use those coefficients to do the aggregation the following way so again we have uh these are the hyperbolic embedding vectors of neighbors xjs we're going to do logarithmic map but this time the map starts the map is based uh in point x i and not the north pole we're gonna see why that is and once we have that that means now we're in the tangent space now we can do the um simple uh scaling with w i js we sum those up and finally we end up with some resultant vector in the tangent space and then we make it map it back using the exponential map and that's how we end up with the new representation for this particular vector x i so because this was the first time we did not use the north pole as the basis of mapping let me just kind of explain this part a bit better so know that our proposed aggregation is directly performed in the tangent space of each center point x i h as this is where the euclidean approximation is best we show in our ablation experiments that this local aggregation outperforms aggregation in tangent space at the origin due to the fact that relative distances have lower distortion in our approach basically what this means is let me go back to the example i showed you before so let's again focus on this particular orange point and its tangent space so now we're gonna map all of the points on the manifold onto this particular tangent space and then do the uh basically aggregation in that tangent space instead of using the tangent space of the origin uh that's the difference and they as a as they said they've done ablations and it turns out that doing this is better than the aggregation in the in the in this particular tender space here okay so that's it um let me go back here and let me uh end up uh explaining the non-linear activations so here is how is how the non-linearity is defined uh on a curved space so we take the particular embedding vector of interest that lies on the hyperboloid model we do the log mapping which means we map it on to the tangent space of the north pole then we apply the non-linearity whatever that is like value usually and then we apply the x map returning it back onto the manifold the thing to notice here is that these curvatures so k l minus 1 and k l these curvatures might be different and they are actually learnable parameter in hyperbolic gcn gcn model so they can do this because the mathematics adds up they say here fortunately tangent spaces of the north pole are shared across hyperboloid model manifolds of the same dimension that have different curvatures making equation 10 so this is this equation mathematically correct okay that's pretty much it now let's glue everything back together and try to get a holistic overview of what's going on here i know this was a lot of mathematics differential geometry a lot of details let's try and get like a high level mental model of what just happened here uh okay so there's a couple of steps okay so first step is we map from the euclidean space onto the hyperbolic space once we have the feature vectors in the hyperbolic space then we do these uh basically special types of feature transforms and bias so there is a lot of back and forth between manifold and tendon space we mostly do we do everything in tension space so we map this feature from hyperbolic space into tension space we apply the linear transformation we get we return it we map it back on to the manifold and then we just shift it using this particular bias vector uh and it still remains on the manifold so that's this first step once we have those features we do that for all of the node features of our graph once we have that we do the smart aggregation whereby again we're going to be mapping onto tangent spaces of of those uh and and this time tangent space is defined by by particular node i for which we're trying to find the representation okay we're not using the north pole tangent space this time we do the uh weighted sum in that tangent space and then we make the res we map the horizontal resultant point back onto the manifold that's how we get these y's and then finally we applied this non-linear um basically mapping again we have back and forth between tangent space and manifold and we just apply we kind of squeeze in the the your your regular non-linearity between these mappings okay that's that's it um it looks complicated uh it actually is not that complicated when you're familiar with differential geometry and and this kind of sinks in and yeah okay so let me now briefly walk you through um the results they showed that for a particular class of graphs that have uh this low hyperbolicity value delta which basically means it's a fancy way of saying these are graphs that are tree-like in nature and they showed that basically h g c n so that's this model in this introduced in this paper outperforms all of the previous space lines so even gnn such as gcn and get and sage and sgc and as well as uh neural networks and some shallow embeddings so they show better results there and they showed that as we go to higher uh hyperbolicity constant uh which means uh the the graphs are less and less exponential in nature and less tree like this they show worse results here okay and final results i want to show you uh are here they've done some ablations basically um the ablations they've done is doing this attention aggregation uh in the north poles tangent space instead of using uh x i's uh to form the tangent space so that's the difference and here c just stands for whether they use trainable curvatures or not and they showed that by by by both using the trainable curvatures as well as using the uh aggregation in the tangent space of uh xi's that gives them the best results across various different data sets so yeah just some ablations they've done um additionally they showed that uh for some for this particular dataset disease the higher the curvature of the hyperboloid model uh basically the better the results uh let me just show you how to parse this this this chart basically uh if k is large let's say 10 to the power of three so that's like thousand if you plug in ten to the power of three you'll end up with minus three so that's means we're here and you can see that for b k for like thousand we have like lower uh metric here compared to if k was much smaller so if k is maybe um maybe 1 over 10 that would be 10 raised to the power of minus 1 which means we map to here so that means for 1 over 10 for for for high curvature basically we have better performance and again this ties back nicely to the visualization to the explanation i started with uh basically if we have um crowded points in the occluding space the more the so so the higher the curvature of this particular hyper model and i'm having such a hard time pronouncing that word uh so let me just draw it like this so if this was even more curved so something like this that means that basically the separation would be even bigger because you can imagine that even a small perturbation here in the in the euclidean space would cause those two points to be mapped onto uh very like distant points on the actual manifold so maybe this one here would be mapped here and this one here would be mapped even here so and the higher the curvature the bigger this distance will grow and so that's why you can kind of imagine that um higher curvatures uh like in the negative direction um basically help help us spread out the feature vectors okay that was my best attempt to explain this paper uh there is a lot of mathematics um i'm not an expert in differential geometry i know uh enough to to basically understand on an intuitive level how this works uh it's hard to visualize all of this i hope that this paper helped you understand um basically this this this this model a bit better if it did consider sharing the video out also consider subscribing to this channel and finally join our discord community until next time bye bye [Music] you
Original Description
❤️ Become The AI Epiphany Patreon ❤️
https://www.patreon.com/theaiepiphany
👨👩👧👦 Join our Discord community 👨👩👧👦
https://discord.gg/peBrCpheKE
In this video we dig deep into the hyperbolic graph convolutional networks paper introducing a class of GCNs operating in the hyperbolic space.
Hyperbolic GCNs give exceptional results for the class of scale-free/hierarchical/tree-like graphs. I dive deep into differential geometry theory and explain how the method works.
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
✅ Paper: https://arxiv.org/abs/1910.12933
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
⌚️ Timetable:
00:00 Intro - why the hyperbolic space?
04:00 Graph Convolutional Networks recap
08:50 Hyperbolic space and curvature theory
15:25 Geodesics, exp, and log maps
23:00 Mapping from Euclidean to hyperbolic space
26:35 Feature transform in hyperbolic space
32:47 Aggregregation on the hyperboloid manifold
35:25 Non-linear activation with different curvatures
36:30 Holistic overview of the method
38:20 Results, Ablations, and curvature analysis
41:00 Why does curvature help?
42:05 Outro
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
💰 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
Huge thank you to these AI Epiphany patreons:
Eli Mahler
Kevin Stone
Petar Veličković
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
💼 LinkedIn - https://www.linkedin.com/in/aleksagordic/
🐦 Twitter - https://twitter.com/gordic_aleksa
👨👩👧👦 Discord - https://discord.gg/peBrCpheKE
📺 YouTube - https://www.youtube.com/c/TheAIEpiphany/
📚 Medium - https://gordicaleksa.medium.com/
💻 GitHub - https://github.com/gordicaleksa
📢 AI Newsletter - https://aiepiphany.substack.com/
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
#graphs #graphconvolutionalnetwork #hyperbolicspace
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 · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Intro | Neural Style Transfer #1
Aleksa Gordić - The AI Epiphany
Basic Theory | Neural Style Transfer #2
Aleksa Gordić - The AI Epiphany
Optimization method | Neural Style Transfer #3
Aleksa Gordić - The AI Epiphany
Advanced Theory | Neural Style Transfer #4
Aleksa Gordić - The AI Epiphany
Anyone can make deepfakes now!
Aleksa Gordić - The AI Epiphany
What is Computer Vision? | The Art of Creating Seeing Machines
Aleksa Gordić - The AI Epiphany
Feed-forward method | Neural Style Transfer #5
Aleksa Gordić - The AI Epiphany
Alan Turing | Computing Machinery and Intelligence
Aleksa Gordić - The AI Epiphany
Feed-forward method (training) | Neural Style Transfer #6
Aleksa Gordić - The AI Epiphany
What is Google Deep Dream? (Basic Theory) | Deep Dream Series #1
Aleksa Gordić - The AI Epiphany
Semantic Segmentation in PyTorch | Neural Style Transfer #7
Aleksa Gordić - The AI Epiphany
How to get started with Machine Learning
Aleksa Gordić - The AI Epiphany
How to learn PyTorch? (3 easy steps) | 2021
Aleksa Gordić - The AI Epiphany
PyTorch or TensorFlow?
Aleksa Gordić - The AI Epiphany
3 Machine Learning Projects For Beginners (Highly visual) | 2021
Aleksa Gordić - The AI Epiphany
Machine Learning Projects (Intermediate level) | 2021
Aleksa Gordić - The AI Epiphany
Cheapest (0$) Deep Learning Hardware Options | 2021
Aleksa Gordić - The AI Epiphany
How to learn deep learning? (Transformers Example)
Aleksa Gordić - The AI Epiphany
How do transformers work? (Attention is all you need)
Aleksa Gordić - The AI Epiphany
Developing a deep learning project (case study on transformer)
Aleksa Gordić - The AI Epiphany
Vision Transformer (ViT) - An image is worth 16x16 words | Paper Explained
Aleksa Gordić - The AI Epiphany
GPT-3 - Language Models are Few-Shot Learners | Paper Explained
Aleksa Gordić - The AI Epiphany
Google DeepMind's AlphaFold 2 explained! (Protein folding, AlphaFold 1, a glimpse into AlphaFold 2)
Aleksa Gordić - The AI Epiphany
Attention Is All You Need (Transformer) | Paper Explained
Aleksa Gordić - The AI Epiphany
Graph Attention Networks (GAT) | GNN Paper Explained
Aleksa Gordić - The AI Epiphany
Graph Convolutional Networks (GCN) | GNN Paper Explained
Aleksa Gordić - The AI Epiphany
Graph SAGE - Inductive Representation Learning on Large Graphs | GNN Paper Explained
Aleksa Gordić - The AI Epiphany
PinSage - Graph Convolutional Neural Networks for Web-Scale Recommender Systems | Paper Explained
Aleksa Gordić - The AI Epiphany
OpenAI CLIP - Connecting Text and Images | Paper Explained
Aleksa Gordić - The AI Epiphany
Temporal Graph Networks (TGN) | GNN Paper Explained
Aleksa Gordić - The AI Epiphany
Graph Neural Network Project Update! (I'm coding GAT from scratch)
Aleksa Gordić - The AI Epiphany
Graph Attention Network Project Walkthrough
Aleksa Gordić - The AI Epiphany
How to get started with Graph ML? (Blog walkthrough)
Aleksa Gordić - The AI Epiphany
DQN - Playing Atari with Deep Reinforcement Learning | RL Paper Explained
Aleksa Gordić - The AI Epiphany
AlphaGo - Mastering the game of Go with deep neural networks and tree search | RL Paper Explained
Aleksa Gordić - The AI Epiphany
DeepMind's AlphaGo Zero and AlphaZero | RL paper explained
Aleksa Gordić - The AI Epiphany
OpenAI - Solving Rubik's Cube with a Robot Hand | RL paper explained
Aleksa Gordić - The AI Epiphany
MuZero - Mastering Atari, Go, Chess and Shogi by Planning with a Learned Model | RL Paper explained
Aleksa Gordić - The AI Epiphany
EfficientNetV2 - Smaller Models and Faster Training | Paper explained
Aleksa Gordić - The AI Epiphany
Implementing DeepMind's DQN from scratch! | Project Update
Aleksa Gordić - The AI Epiphany
MLP-Mixer: An all-MLP Architecture for Vision | Paper explained
Aleksa Gordić - The AI Epiphany
DeepMind's Android RL Environment - AndroidEnv
Aleksa Gordić - The AI Epiphany
When Vision Transformers Outperform ResNets without Pretraining | Paper Explained
Aleksa Gordić - The AI Epiphany
Non-Parametric Transformers | Paper explained
Aleksa Gordić - The AI Epiphany
Chip Placement with Deep Reinforcement Learning | Paper Explained
Aleksa Gordić - The AI Epiphany
Text Style Brush - Transfer of text aesthetics from a single example | Paper Explained
Aleksa Gordić - The AI Epiphany
Graphormer - Do Transformers Really Perform Bad for Graph Representation? | Paper Explained
Aleksa Gordić - The AI Epiphany
GANs N' Roses: Stable, Controllable, Diverse Image to Image Translation | Paper Explained
Aleksa Gordić - The AI Epiphany
VQ-VAEs: Neural Discrete Representation Learning | Paper + PyTorch Code Explained
Aleksa Gordić - The AI Epiphany
VQ-GAN: Taming Transformers for High-Resolution Image Synthesis | Paper Explained
Aleksa Gordić - The AI Epiphany
Multimodal Few-Shot Learning with Frozen Language Models | Paper Explained
Aleksa Gordić - The AI Epiphany
Focal Transformer: Focal Self-attention for Local-Global Interactions in Vision Transformers
Aleksa Gordić - The AI Epiphany
AudioCLIP: Extending CLIP to Image, Text and Audio | Paper Explained
Aleksa Gordić - The AI Epiphany
RMA: Rapid Motor Adaptation for Legged Robots | Paper Explained
Aleksa Gordić - The AI Epiphany
DALL-E: Zero-Shot Text-to-Image Generation | Paper Explained
Aleksa Gordić - The AI Epiphany
DETR: End-to-End Object Detection with Transformers | Paper Explained
Aleksa Gordić - The AI Epiphany
DINO: Emerging Properties in Self-Supervised Vision Transformers | Paper Explained!
Aleksa Gordić - The AI Epiphany
DeepMind DetCon: Efficient Visual Pretraining with Contrastive Detection | Paper Explained
Aleksa Gordić - The AI Epiphany
Do Vision Transformers See Like Convolutional Neural Networks? | Paper Explained
Aleksa Gordić - The AI Epiphany
Fastformer: Additive Attention Can Be All You Need | Paper Explained
Aleksa Gordić - The AI Epiphany
More on: LLM Foundations
View skill →Related Reads
📰
📰
📰
📰
A lightweight workflow for keeping up with AI conference papers
Dev.to · Daniel
Why CitedEvidence Believes Great Researchers Read Less Than You Think
Medium · AI
How to Write a Literature Review That Actually Argues Something
Medium · Machine Learning
I Built a Personal Paper Engine to Stop Losing Research Papers
Dev.to · Ethan
Chapters (12)
Intro - why the hyperbolic space?
4:00
Graph Convolutional Networks recap
8:50
Hyperbolic space and curvature theory
15:25
Geodesics, exp, and log maps
23:00
Mapping from Euclidean to hyperbolic space
26:35
Feature transform in hyperbolic space
32:47
Aggregregation on the hyperboloid manifold
35:25
Non-linear activation with different curvatures
36:30
Holistic overview of the method
38:20
Results, Ablations, and curvature analysis
41:00
Why does curvature help?
42:05
Outro
🎓
Tutor Explanation
DeepCamp AI