An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale (Paper Explained)

  Рет қаралды 328,651

Yannic Kilcher

Yannic Kilcher

Күн бұрын

#ai #research #transformers
Transformers are Ruining Convolutions. This paper, under review at ICLR, shows that given enough data, a standard Transformer can outperform Convolutional Neural Networks in image recognition tasks, which are classically tasks where CNNs excel. In this Video, I explain the architecture of the Vision Transformer (ViT), the reason why it works better and rant about why double-bline peer review is broken.
OUTLINE:
0:00 - Introduction
0:30 - Double-Blind Review is Broken
5:20 - Overview
6:55 - Transformers for Images
10:40 - Vision Transformer Architecture
16:30 - Experimental Results
18:45 - What does the Model Learn?
21:00 - Why Transformers are Ruining Everything
27:45 - Inductive Biases in Transformers
29:05 - Conclusion & Comments
Paper (Under Review): openreview.net/forum?id=YicbF...
Arxiv version: arxiv.org/abs/2010.11929
BiT Paper: arxiv.org/pdf/1912.11370.pdf
ImageNet-ReaL Paper: arxiv.org/abs/2006.07159
My Video on BiT (Big Transfer): • Big Transfer (BiT): Ge...
My Video on Transformers: • Attention Is All You Need
My Video on BERT: • BERT: Pre-training of ...
My Video on ResNets: • [Classic] Deep Residua...
Abstract: While the Transformer architecture has become the de-facto standard for natural language processing tasks, its applications to computer vision remain limited. In vision, attention is either applied in conjunction with convolutional networks, or used to replace certain components of convolutional networks while keeping their overall structure in place. We show that this reliance on CNNs is not necessary and a pure transformer can perform very well on image classification tasks when applied directly to sequences of image patches. When pre-trained on large amounts of data and transferred to multiple recognition benchmarks (ImageNet, CIFAR-100, VTAB, etc), Vision Transformer attains excellent results compared to state-of-the-art convolutional networks while requiring substantially fewer computational resources to train.
Authors: Anonymous / Under Review
Errata:
- Patches are not flattened, but vectorized
Links:
KZfaq: / yannickilcher
Twitter: / ykilcher
Discord: / discord
BitChute: www.bitchute.com/channel/yann...
Minds: www.minds.com/ykilcher
Parler: parler.com/profile/YannicKilcher
LinkedIn: / yannic-kilcher-488534136
If you want to support me, the best thing to do is to share out the content :)
If you want to support me financially (completely optional and voluntary, but a lot of people have asked for this):
SubscribeStar: www.subscribestar.com/yannick...
Patreon: / yannickilcher
Bitcoin (BTC): bc1q49lsw3q325tr58ygf8sudx2dqfguclvngvy2cq
Ethereum (ETH): 0x7ad3513E3B8f66799f507Aa7874b1B0eBC7F85e2
Litecoin (LTC): LQW2TRyKYetVC8WjFkhpPhtpbDM4Vw7r9m
Monero (XMR): 4ACL8AGrEo5hAir8A9CeVrW8pEauWvnp1WnSDZxW7tziCDLhZAGsgzhRQABDnFy8yuM9fWJDviJPHKRjV4FWt19CJZN9D4n

Пікірлер: 353
@nicdemai
@nicdemai 5 ай бұрын
I watched this video at the beginning of my ML Masters journey 2 years ago and it all felt like a foreign language. Today I'm watching it again and I’m proud to say that I understand a lot of the things discussed. Whoever is reading this, keep grinding!
@jonassvenningsen8986
@jonassvenningsen8986 4 ай бұрын
I just had the exact same experience.
@MDNQ-ud1ty
@MDNQ-ud1ty 4 ай бұрын
Welcome to the Matrix. Smith will visit you shortly with your medal.
@chutiyfakey
@chutiyfakey 4 ай бұрын
I just started my masters and am feeling the same you felt. Hope it gets easier
@marcosrodriguez2496
@marcosrodriguez2496 2 жыл бұрын
Holy cow, these videos are so valuable. This view that Transformers are generalization of MLPs, while CNNs and LSTMs are specializations of it is brilliant. Thank you.
@erfanmiahi9462
@erfanmiahi9462 3 жыл бұрын
Even the number of TPUs that they have used is enough to guess where this paper comes from.
@spsharan2000
@spsharan2000 3 жыл бұрын
Lol yeah xD
@jugsma6676
@jugsma6676 3 жыл бұрын
haha, yea
@notgabby604
@notgabby604 3 жыл бұрын
Too much is set in stone too soon. Generally very poor scientific method in deep learning. You don't even need GPUs for large scale deep learning with distributed simple evolution training algorithms like Comtinuous Gray Code Optimization. With say 256 raspberry pi 4s you get 1024 CPU cores for $15000 and 4.5 KWH. With a training set of 1 million inages each core gets less than 1000 each which it need to return a cost for, for each sparse mutation list. The main metric is DRAM memory bandwidth per unit hardware cost. This is especially the case with Fast Transform fixed-filter-bank neural networks.
@lethanh1122
@lethanh1122 3 жыл бұрын
It must be from Faceboogle
@zihaozheng4159
@zihaozheng4159 3 жыл бұрын
haha, then I think this paper break the rule of double blind review
@devlogs1785
@devlogs1785 2 жыл бұрын
You have a talent of making a complicated idea simple ans digestable yet keeping its technical fundamentals understandable.
@pladselsker8340
@pladselsker8340 Жыл бұрын
I'm slowly starting to grasp more and more what the heck is going on in these videos!! I've been watching your paper reviews for some time now, and I think this is the first time I actually get everything you're saying in a video. That feeling is great. Thank you for your work!
@lucha6262
@lucha6262 3 жыл бұрын
I love the insights you give into the concepts presented in the paper. I very much like the last 2-3 minutes ranking NN architectures by bias
@TL-fe9si
@TL-fe9si 3 жыл бұрын
The comments about the biases of these different type of architecture really helps me gain better understanding of these things, thank you!
@jahcane3711
@jahcane3711 3 жыл бұрын
I appreciate the jests :D great to have you pumping out videos again. Thanks for another banger :)
@googleyoutubechannel8554
@googleyoutubechannel8554 Жыл бұрын
This was the best video on transformers I've seen on YT, still in 2022. I think Yannic may be one of the only people that is actually able to productively reason about the core dynamics, effectiveness and utility of ML model designs.
@shivapundir7105
@shivapundir7105 3 жыл бұрын
This is so helpful for an undergrad like me. Yannic explains topics in easy understandable terms. Thank you. Love from INDIA.
@IgorAherne
@IgorAherne 3 жыл бұрын
Yannic, I absolutely love your reviews :D so energetic! thanks for your work man
@dimy931
@dimy931 3 жыл бұрын
Transformers still have inductive biases ( no, I am not talking about the residual connections ). Like for example the softmaxes used to determine similarities between the elements or the fact that we still use multiple layers which still talks about hierarchical structure of sorts. But they have weaker bias in the sense that their biases look much more abstract at the world. A CNN bias says this is how images looks like. Transformers say this is how you can describe how a large set of unique stuff interact. And before CNNs, Wavelet transformers were saying this is how edges in an image look like. The biases are still there they have just become much more abstract as we learned that we can learn anything if we applied the right training tricks and datasets. That said residual connections are very abstract concept and for that I do not think we are touching them for a while. They essentially say look at the big picture first and give me your decision, then look again but this time closer and try revising your decision. That is a very efficient computational model we as human beings employ on daily basis. So are transformers by the way.
@Samarpanrai94
@Samarpanrai94 3 жыл бұрын
Are biases always a bad thing?
@dennismertens990
@dennismertens990 3 жыл бұрын
@@Samarpanrai94 I don't think they are, but inductive bias is intrinsic to machine learning. It's presumably present in animals as well.
@sheggle
@sheggle 3 жыл бұрын
@@Samarpanrai94 depends on where you work, if you are developing these models in the real world, biases can be amazing if they're correct. In an application you want to help a model as much as possible. The idea is, that if you have enough data, these biases will be present in the dataset and a learnt bias is better than an assumed one. That's why research pushes for that front. In the limited data regime though, no, they're definitely not necessarily bad
@galileo3431
@galileo3431 Жыл бұрын
I really love your intuition on the residual connections!
@omarsilva924
@omarsilva924 3 жыл бұрын
Great video. I love your intro about the anonymous paper. Thank you for sharing. Well done!
@JesusPerez-rp1it
@JesusPerez-rp1it Жыл бұрын
The generalization/specialization discussion was extremely helpful. Amazing content
@AladdinPersson
@AladdinPersson 2 жыл бұрын
Never got into your videos before but your perspective is super interesting, thanks for making these videos :) I think your perspective on how we bias the models and how you view transformers to be the most general even more so than MLPs) was insightful and something I had to reflect on
@talha_anwar
@talha_anwar 2 жыл бұрын
no update on your channel
@johntanchongmin
@johntanchongmin Жыл бұрын
At first I thought you were very happy with the double blind review process, but I soon found out that you weren't. You have encouraged me to arxiv my work and continue to work hard to do what I think is important, rather than wait for top journals/conferences to accept. Thank you.
@MrAstor69
@MrAstor69 2 жыл бұрын
Excellent explanation for visual transformers. The only thing that can be concluded is that most large companies will offer their large models as a service through the API. It is simply very difficult to train such a large model with small capacities.
@stefanvasilev8948
@stefanvasilev8948 Жыл бұрын
This video and especially the explanation about inductive biases are pure gold!
@CristianGarcia
@CristianGarcia 3 жыл бұрын
The Transformer architecture is a nice example of Sutton's "Bitter Lesson".
@Gannicus99
@Gannicus99 3 жыл бұрын
The "bitter lesson" bases success on increased compute, which was made possible entirely by more space and energy efficient hardware. Computes success comes from miniaturization, not the other way around. The irony :)
@sebastiangarciaacosta5468
@sebastiangarciaacosta5468 3 жыл бұрын
¡Hey! Saludos desde Cali, admiro tu trabajo en la comunidad Machine Learning Colombia.
@conduit242
@conduit242 3 жыл бұрын
It all comes back to kNN
@JohnSmith-he5xg
@JohnSmith-he5xg 8 ай бұрын
The discussion (and insight) that we've introduced these biases to simplify the Model's job and make up for inadequate training data, but in doing so have limited overall performance is incredible.
@kuan-chunlee9611
@kuan-chunlee9611 3 жыл бұрын
I like the idea to see transformer as a general version of mlp with even less inductive bias. very insightful
@moctardiallo2608
@moctardiallo2608 3 жыл бұрын
It has been difficult for me to understand the transformer until you mentioned "sets" at 7:06 halleluah. small vocabulary precision can make a huge change!
@alisharifi5520
@alisharifi5520 2 жыл бұрын
very interesting and informative explanation, and also a very well complement of my own understanding, thanks.
@commiekaza
@commiekaza Жыл бұрын
Yannic! your channel is awesome, thank you for covering so many interesting things in a nice digestable way! Stay cool
@csam11100
@csam11100 3 жыл бұрын
Amazing explanation especially about the comparison between transformer, mlp and cnn. Thank you so much!
@CODEMENTAL
@CODEMENTAL 3 жыл бұрын
Great video Yannic, explaining transformers. You were on the money about who the anonymous authors were. No surprise there. I found your video because of another paper from Google, in this case, DeepMind that also uses transformers, but in this case applied to 3D meshes. The name of the paper is Polygen: An Autoregressive Generative Model of 3D Meshes. I will be looking forward to see you reviewing this paper, if you ever do. Is it the case that we are facing a transformer revolution in deep learning?
@rq3068
@rq3068 Жыл бұрын
This is an awesome explanation. We can learn everything from data if we have an infinite amount of data, and we can have never have infinite amount of data, we must introduce inductive bias or strong priors and try to learn the universe from limited samples.
@Kerrosene
@Kerrosene 3 жыл бұрын
Nice review...especially the sections after 21:00.
@TheAIEpiphany
@TheAIEpiphany 3 жыл бұрын
Nice explanation, thanks! For me it was even super obvious just mentioning Kolesnikov so many times, you only do that if you're Kolesnikov and you're building off of that work! It's obviously not anonymous.
@annawoodard6457
@annawoodard6457 2 жыл бұрын
Your insights really helped me understand this paper. Thank you!
@sfarmapietre
@sfarmapietre 3 жыл бұрын
Double blind review as it is currently done is based on a purely voluntary work done by reviewers, ACs, etc and is based on the mutual trust that i) reviewers respect the idea of double blind that is necessary to reduce the bias of paper evaluations, as well as ii) authors write their papers in an anonymous way. There are of course exceptions when this is broken, intentional or unintentional, but it would be very hard and resource expensive for any conference to impose 100% accuracy of this process.
@suleymanemirakin
@suleymanemirakin 9 ай бұрын
I want to read papers but reading paper is hard and costs so much time your videos are so fast and clear thank you my friend
@crpCph
@crpCph Жыл бұрын
It's impressive that you predicted that residual connections are going down next. I've seen multiple papers where people start improving on their complexity
@moustafa_shomer
@moustafa_shomer 3 жыл бұрын
great video please keep on reading papers and explaining them!
@batuannguyen8061
@batuannguyen8061 3 жыл бұрын
Thank you for your sharing, it's very useful and interesting! But I have an issue about it. My issue is, with the constant number of patches, why don't we use the naive positional encoding (0/n, 1/n, 2/n, ..., n/n)? I think if we use it, the distance between 2 different patches will not be effected by n, because n is the constant.
@chrismartinis8924
@chrismartinis8924 3 жыл бұрын
Very well presented ... thank you for putting in the effort.
@Kram1032
@Kram1032 3 жыл бұрын
I wonder what would be more general than a transformer. Maybe something like: - dynamic #convergence iterations (currently transformers do only a single projection step between layers) - dynamic #layers - which layers to skip to (potentially giving something like type determination where you can feed in data and if it is text it gets routed through one set of layers, if it is images, it gets routed another way or something like that) - what amounts to wider-label attention, like, not only care about what the current and next layer of this specific neuron output/is looking for, but also their same-layer neighbours, or their equivalents from earlier/later neighbours. Not sure if that makes sense, but basically just give the soft routing mechanism more inputs to arrive at its decisions.
@Kram1032
@Kram1032 3 жыл бұрын
lol didn't mean to put hashtags like that. That was supposed to mean "number of"
@Peter.Wirdemo
@Peter.Wirdemo 3 жыл бұрын
The main problem with all of these ideas is the back propagating gradient descent, how should it be able to train the parameters using the loss without a bidirectional relationship between the layers? Sure, I am not saying it is impossible - there might be ways to temporarily store the ”routing” data but that would be memory consuming. All calculations needs an equivalent reverse or else you are lost regarding what weights to adjust in what direction to close in on your target output, unless you come up with a totally new concept of how to train your NN.
@Kram1032
@Kram1032 3 жыл бұрын
@@Peter.Wirdemo I mean yeah, definitely. And that's part of the reason *transformers* are so resource hungry as well, isn't it? I was just thinking about how to make this even more flexible, making use of even more patterns. Really what I'm describing here, if all of those were implemented together, would amount to deciding what specific neural network to use based on current internal state and input. It's like having one full brain not just per task but literally per input. It'd be the ultimate form of meta-learning, I think. And probably not something that'd ever become feasible at scale.
@Peter.Wirdemo
@Peter.Wirdemo 3 жыл бұрын
Kram1032 Yeah, perhaps I misunderstood your ideas. But transformers, when it comes to memory consuming, is all about storing weigths, it’s not storing temporary states for all connections in all layers during iteration (train or when sampling). When one layer is done basically all it keeps in memory is the output of that layer. Same goes for back propagating, it only keeps the gradient temporary in memory between layers. So it has no memory of what happened in one particular layer on forward when the gradient comes back and the weights is trained. The model needs to know what to do with the weights by using the gradient only, it cannot hold everything in memory what happened there for the current input and the current iteration. Any layer skips or arbitrary adjustment between nodes on the same layer must be possible to reverse engineer during back propagating using the gradient only. Well, not sure if my bad wordings here is helpful, sorry if my explainations is just confusing.
@Kram1032
@Kram1032 3 жыл бұрын
@@Peter.Wirdemo I mean, yeah. All I was trying to accomplish here is to further generalize Transformers. I make no claims about any of these actually being good or remotely accomplishable ideas. (I think there's *some* success with the dynamic number of layers stuff in some settings at least. Not quite *truly* dynamic, but some architectures can stop evaluating early when they are "sure enough". Maybe transformers could be done that way too.)
@tekudiv
@tekudiv 3 жыл бұрын
Awesome video explanation 👍
@florianhonicke5448
@florianhonicke5448 3 жыл бұрын
Thank you so much for the video! It's a pleasure as always. Should we just stop ai research for 20 years and than train a Transformer net without skip connections on quantum computers with yottabytes of image data? Would save a lot of work 😜
@YannicKilcher
@YannicKilcher 3 жыл бұрын
You win machine learning!
@bryce-bryce
@bryce-bryce 2 жыл бұрын
Awesome, I have been wondering a while ago if the network that a network performs at each layer is not "too static". In a normal CNN the operations are completely defined by the programmer und only the weights are learned. But maybe the operations themselves can be learned as well. Seems like Transformers are going a bit in that direction if I understood everything correctly.
@wagbagsag
@wagbagsag 3 жыл бұрын
Not sure if I buy your argument that transformers are somehow more general and less biased than MLPs. They implement the prior of repeated computation and spatial invariance. In addition to those priors, i think the real reason transformers win over MLPs is because we given them a multiplication operation in representation space (attention). MLPs only get to perform addition of their hidden representations
@ralf2202
@ralf2202 2 жыл бұрын
If the MLP is big enough, it will always win. That's the universal approximator theorem.
@maurotubeli
@maurotubeli 3 жыл бұрын
Thanks tons for sharing this ! you are really good at explaining papers :) I'm new to transformers so please bare w my potential noobie question. Would you say that one disadvantage of transformers (probably stemming from their general design) is that, in comparison to CNNs, larger amounts of data is required in practice to train good models? Thanks for your feedback
@shreyasbhat3957
@shreyasbhat3957 2 жыл бұрын
Have a look at compact transformers
@Zantorc
@Zantorc 3 жыл бұрын
'Double blind' - but only in one eye!
@DamianReloaded
@DamianReloaded 3 жыл бұрын
Getting rid of back propagation altogether could be a "next thing". Maybe by randomly approximating the weights, maybe using some sort of very-fast-very-parallel-hardware that would update all weights at once with random values. And maybe afterwards make this process be learnable somehow :/ (maybe learnable as in disconnecting neurons that are not needed) Maybe also having a generative neural network synthesizing datasets from a small amount of samples, so that if the model sees an input that was not in the dataset, it may have "dreamed" about it during training and be more robust.
@gman21xx
@gman21xx 3 жыл бұрын
The bogo sort approach to NNs
@DamianReloaded
@DamianReloaded 3 жыл бұрын
@@gman21xx if the hardware was built to work like this it could be very fast and very low energy. And in principle it is "guarantied" to converge _at some point_ from now to infinity XD
@ptuls79
@ptuls79 3 жыл бұрын
This paper might be onto something openreview.net/forum?id=PdauS7wZBfC
@luckyshadowtux
@luckyshadowtux 3 жыл бұрын
@@ptuls79 a review of that once it is published would be very cool. Would be interesting to apply to tranformers
@wwtapsable
@wwtapsable Жыл бұрын
@@gman21xx just look at the best case scenario, O(1), it is obviously the best alg for the job.
@ikboljonsobirov
@ikboljonsobirov 3 жыл бұрын
The whisper part in Experimental Results got me real good )))
@victorrielly4588
@victorrielly4588 3 жыл бұрын
I figured it out! Google must have submitted that article.
@BrandonFurtwangler
@BrandonFurtwangler 3 жыл бұрын
I wonder if the initial “down sample” to a low resolution image could be avoided (without insane compute) using a transformer of transformers. One spatial one temporal. The inner transformer (spatial) would be just like this paper on a downsampled image, but instead of downsampling the whole image you downsample a window (still to a fixed low res size). You then do this on N windows to form a sequence (sort of like your eye temporally moving around focusing on parts of the image), and transform that.
@SuperArjun11
@SuperArjun11 3 жыл бұрын
fuck it. I have nothing better to do, I'll try this out
@nineteenfortyeight6762
@nineteenfortyeight6762 3 жыл бұрын
@@SuperArjun11 do let us know
@Daweim0
@Daweim0 2 жыл бұрын
@@SuperArjun11 It's been 10 months, how did it turn out?
@thiswasme5452
@thiswasme5452 2 жыл бұрын
@@SuperArjun11 PLz respond .. did you try
@SuperArjun11
@SuperArjun11 2 жыл бұрын
@@thiswasme5452 in a very sad turn of events, I got out of academia and into corporate before any of this was realised. Apologies, y'all 😭
@jakobgelszinnis673
@jakobgelszinnis673 3 жыл бұрын
22:46 I think, that while you use the terms inductive bias and inducive prior interchangeably in this passage - you rather describe an indictive BIAS than an inductive prior. The difference would be, that an inductive prior will set a starting point until your model gets informed by your data, while the inductive BIAS inevitability limits the space of possible model-solutions. Both occur together, like the case when you bias your DL-model through its architecture while giving it a prior initialization of parameters. Have I misunderstood something? Either way: I love your videos, thanks!
@YannicKilcher
@YannicKilcher 3 жыл бұрын
Thanks for the clarifications!
@arunprabhu8120
@arunprabhu8120 3 жыл бұрын
That intro was Epic :)
@huonglarne
@huonglarne 2 жыл бұрын
I love your take on the matter. Very eye-opening
@yujiachen5732
@yujiachen5732 3 жыл бұрын
Great video. Have a quick question though, when you mention the difference between MLP and transformer, you said transformers compute w onnthe fly12:02. Doesn't w in transformer also fixed?
@innastainvas4705
@innastainvas4705 2 жыл бұрын
in MLP x_i ^{l+1} = \sum_j w_{ij} x_j^{l}, where w_{ij} are fixed don't depend on concrete input, if you try to make comparison of using attention matrix elements in this context then x_i^{l} are vectors and coefficients depend on {kq} (key, query) that change depend on the input (are defined on the fly)
@alachance2010
@alachance2010 3 жыл бұрын
MLP bias/prior is the connections themselves. Very Interesting. So the most general system would have the entire architecture and structure be computed on the fly.
@mollybeavers3160
@mollybeavers3160 3 жыл бұрын
Wow, thank you for the video! I'm a beginner at deep learning and had just stated reading this paper. This really helped me get started with this paper!
@suleymanemirakin
@suleymanemirakin 9 ай бұрын
I love your channel my friend thank you so much this channel helped a lot
@tanmay8639
@tanmay8639 3 жыл бұрын
Another great video bro !!
@herp_derpingson
@herp_derpingson 3 жыл бұрын
As humans when we think of attention in vision. It is not that our eyes shut down when we are not paying attention to our surroundings. Our eyes keep running object detection/motion detection tasks with dedicated neurons. It is just the higher order functions decide not to pay attention to that already processed information and use that bandwidth on something else. 19:30 Attention is a generalization of convolutions. 10:50 I think this is equivalent to running the image through a 16x16x3x16 conv filter with stride 16. (i.e. it takes a 256x256x3 tensor and gives a 16x16x16 tensor). Then pass it through a few layers of 16x16x16x16 conv with stride 0. (i.e. a conv block which takes a 16x16x16 tensor and spits out a 16x16x16 tensor). Then a dense at the end for classification. MHA is equivalent to a full nxn conv. 20:40 A 16x16 conv2d could do the same. Seriously though. I dont see the benefit of double blind in non-medical papers.
@raunaquepatra3966
@raunaquepatra3966 3 жыл бұрын
I think it's mentioned somewhere the 256x256 image is downscaled to 64x64 due to limits on their budget :D And I think they are using a stride 8 in the 16x16 patches(the figure with the positional encoding show 7x7)
@YannicKilcher
@YannicKilcher 3 жыл бұрын
yep the comparisons with convolutions are really nice!
@stanislawcronberg3271
@stanislawcronberg3271 11 ай бұрын
Great video, thank you for showing the bigger picture
@javiervargas6323
@javiervargas6323 3 жыл бұрын
Liked in just the first 3 minutes for the laughs on your very accurate jokes. Then I saw the entire video, I would have liked it anyway ;) thanks great work
@_tnk_
@_tnk_ 3 жыл бұрын
Good point about convolution being an inductive bias
@LouisChiaki
@LouisChiaki 3 жыл бұрын
Even famous group of authors can be identified easily in open review, it probably still benefits less known authors.
@ilkero1067
@ilkero1067 3 жыл бұрын
It is disappointing how the presenter takes 5 minutes or so to mock the concept but does not seem to understand how this may help a small researcher from an underdeveloped part of the world. Also more steps can easily be implemented to improve the anonymity. There is nothing to mock here.
@diogeneslantern18
@diogeneslantern18 2 жыл бұрын
@@ilkero1067 hear hear. It came across as extremely facetious
@IntuitMachine
@IntuitMachine 3 жыл бұрын
Excellent video summary! Can you explain why you think Transformers is a 'more general' architecture? It seems to me that it has more 'inductive biases', but would that not imply less general? What is it about transformers that make it more general than MLP?
@YannicKilcher
@YannicKilcher 3 жыл бұрын
the re-computation of weights at every forward pass
@binjianxin7830
@binjianxin7830 3 жыл бұрын
Having a bias but a small variance while making use of the Markov property at the same time might be the closest to human intelligence for learning the real world model. Is this what the Temporal Difference Learning discloses?
@user-ge2hv3uy7s
@user-ge2hv3uy7s 3 жыл бұрын
I really enjoying your humor! Totally random, absolutely not related to all between papers similarities comment.
@pedra1_
@pedra1_ 3 жыл бұрын
Great explanation!
@nicolasdufour315
@nicolasdufour315 3 жыл бұрын
Hey, what's the app you use to anotate your papers? Thank you!
@arvind31459
@arvind31459 3 жыл бұрын
He uses OneNote
@RaviAnnaswamy
@RaviAnnaswamy 3 жыл бұрын
In Videos you can search for a video he has where explains all tools and process he uses. here i have linked for your easy reference two of his very generous sharing: Yannic’s How to read research papers kzfaq.info/get/bejne/i9udl5WrtLXeZmQ.html Yannic’s How I make my videos kzfaq.info/get/bejne/fplym8-S05bRdWQ.html
@RaviAnnaswamy
@RaviAnnaswamy 3 жыл бұрын
Yannic’s How to read research papers kzfaq.info/get/bejne/i9udl5WrtLXeZmQ.html Yannic’s How I make my videos kzfaq.info/get/bejne/fplym8-S05bRdWQ.html
@DailyProg
@DailyProg 3 жыл бұрын
Fantastic video as always
@rbain16
@rbain16 3 жыл бұрын
2D slices of high-dimensional loss landscapes show that skip connections make the landscape much smoother/convex. My intuition is that they will remain, but who knows?! :)
@rohitgavirni3400
@rohitgavirni3400 3 жыл бұрын
"Look, we know you can learn anything from data" - Yannic to MLP.
@brainxyz
@brainxyz 3 жыл бұрын
I think transformers are more general simply because they take into account the lateral connections between the neurons. This is what self-attention does in principle. The human brain has lateral connections among the neurons too.
@ankitaharwal5886
@ankitaharwal5886 3 жыл бұрын
What's means by lateral connection ?
@deniz.7200
@deniz.7200 4 ай бұрын
Hi, in the video you claim that you can not get the relation objects far away with CNN (in 21st minute). But when we put fully connected layers after flattened the CNN layers we should be getting all combinations of those features regardless how far they are, am I wrong?
@user-pk6fy6jb9y
@user-pk6fy6jb9y 2 жыл бұрын
Thanks for your sharing. It is very useful
@AbeDillon
@AbeDillon 3 жыл бұрын
I don't think skip-connections are as biased as you claim. The visual intuition is: you might recognize an alligator by the texture of its skin combined with higher order features like the ensemble of shapes that make up its body. But the intuition can be generalized beyond just the visual domain. Sometimes a combination of low-level and high-level features is more informative than just high-level features on their own. If your language model is reading some Eminem lyrics and it outputs only high-level features like the subject-matter, sentiment analysis, theme, etc. It might classify it as Country Western if it abstracts away the low-level features like syllables and rhyme.
@RohitKumarSingh25
@RohitKumarSingh25 3 жыл бұрын
Hi Yannick, I love your videos because you always ask a lot of questions and not just read the paper. If I understood correctly, when you say, transformers are more general because other than feed forward connection, we have self-attention where we calculate the node/neuron values each time before feed-forward. Could you please elaborate a little why this is more general than MLP? Shouldn't MLPs be able to figure this out because of their complete connection given enough data and self-attention is another inductive bias in a way?
@BROHAMMER_OK
@BROHAMMER_OK 3 жыл бұрын
The thing with traditional fully-connected layers is that the weights are fixed by position. For example, if you swap 2 words in a sentence, the output vector of any given layer will change (FCs are not invariant to permutations) This could make sense in some cases, where the order of those 2 words affect the meaning of the sentence, but in other cases the order should not matter, thats what the attention layer is learning. Of course, you could train a MLP with a lot of combinations like you said, but that would use many more parameters, and I believe that in practice you just can't match the transformer's performance.
@thusi87
@thusi87 3 жыл бұрын
Great explanation, But I'm still confused about 1 thing. Tried reading the paper but didn't really click still. Question is regarding "extra learnable [class] embedding". Can someone give some examples as to what the input is to this embedding is? Is the input going to be the same special token (*) for all input samples or is the class label going to be added here? (The latter seems not very sensible), but whats the point of having an learnable embedding if the input is always static?
@YannicKilcher
@YannicKilcher 3 жыл бұрын
yes exactly, it's the same token always
@patrickjdarrow
@patrickjdarrow 3 жыл бұрын
24:18 "Bias -- in the statistical sense". I see someone has learned from Yann's twitter feud 😬
@simleek6766
@simleek6766 3 жыл бұрын
So... how does this compare to adding 'zoom'/'pan' functions, adding xyz+self embeddings, and letting a transformer tell a single 16x16 fully connected layer where to look? Did I beat google?
@lakshaithani268
@lakshaithani268 3 жыл бұрын
Great insights on the transformer
@binli2174
@binli2174 Жыл бұрын
I would actually consider the transformer as a regularized MLP (i.e., a special case of MLP, not the opposite way around). The weights that connect nodes between layers are regularized by the similarities of the connected nodes.
@ahmadanis9930
@ahmadanis9930 Жыл бұрын
What do you mean by these connections in transformers being computed on the fly? Training time?
@IconoclastX
@IconoclastX 3 жыл бұрын
We are so close to this being a reality friends. Hyperealistic images from a simple definition. GptI was really promising, imagine the quality if a model the size of gpt3 was trained to do it.
@annabae713
@annabae713 8 ай бұрын
Great great video! As a PhD student, thank you for making this valuable video
@Jacob-jc6hj
@Jacob-jc6hj 2 жыл бұрын
Which program are you using to annotate your papers?
@yor1001
@yor1001 3 жыл бұрын
Nice to meet another Yannick! Would be interesting to apply transformers to activity detection.
@deiviuds
@deiviuds 3 жыл бұрын
An unrelated question but... What program is this that you are using to view and have this side references? I need a tool like this!
@YannicKilcher
@YannicKilcher 3 жыл бұрын
OneNote, it's just a copy paste on the side.
@flamingflamingo4021
@flamingflamingo4021 3 жыл бұрын
Can you do a python implementation of this model using some dataset and use the model for inference?
@javierpastor8139
@javierpastor8139 4 ай бұрын
Loved this video! Thanks :)
@Myvoetisseer
@Myvoetisseer 3 жыл бұрын
Hey Yannic. You ever seen this paper arxiv.org/pdf/2004.02016v4.pdf ? The topic is pretty niche (meeting summarization) so I understand that it didn't make a huge splash. However the model they use I find interesting. They essentially take a transformer but apply a convolutional philosophy to it, by which I mean multiple layers, each abstracting the previous a little more. In this case they had two encoders, one which operates on word-level (same as normal transformer encoder) but then they have another encoder which takes in the output of the previous. Thus they have an encoder which operates at word level, feeding each sentence into another encoder which operates at sentence level. Both of these feed into a decoder. I personally believe this might be the future of transformers. Early layers encoding a large amount of input to more abstract and condensed information, then feeding that into more encoders. Have you seen other research doing this also? What do you think of this?
@YannicKilcher
@YannicKilcher 3 жыл бұрын
this is interesting, thanks. these things can often work well on specific datasets, but sadly, most problems are just solved with simpler architectures and more data nowadays
@Chesstiger2612
@Chesstiger2612 3 жыл бұрын
What does this mean for cases with little data though? Are conv NNs and LSTM still good because of their inductive priors? Or could you create even better inductive priors using information from other datasets? Let's say you want to classify cats and dogs, you could infer from images of houses, streets, cars, and so on that there is a general theme of spatial correlation (like conv NNs assume), and maybe even do better than that at generating an inductive prior.
@YannicKilcher
@YannicKilcher 3 жыл бұрын
I think especially in the low data regime, models with inductive priors will always remain useful. Like 95% of real world ML problems are solved by linear regression.
@MANDLO
@MANDLO 3 жыл бұрын
Good explanation. Disagree with the opinion on residual connections being an inductive bias. Without residual connection, a layer might not be able to learn an identical mapping because of non linear transformations in the layers.
@TheAIEpiphany
@TheAIEpiphany 3 жыл бұрын
27:28 "There can be something even more general than the transformer" - Yes and that something is called a GNN! Check out this blog Yannic: thegradient.pub/transformers-are-graph-neural-networks/ And thanks for the video! I saw the paper the same day that Karpathy tweeted it. Edit: forgot you made this one back in the day when GNNs were not as popular.
@JeruLuke
@JeruLuke 3 жыл бұрын
You have a great channel too
@MaheshDhoni
@MaheshDhoni 3 жыл бұрын
Could you explain a little more about how Transformers are a generalized version of MLPs? Aren't the weights of MLPs also found on the fly?
@utkarshkumarsingh5961
@utkarshkumarsingh5961 2 жыл бұрын
I'm not too sure about this, correct me if I'm wrong here: In MLPs, there isn't a choice to attend to a node from the previous layer just that the weight decides how strong the attention is. Transformers can choose to skip a node they don't want to pay attention to altogether.
@grafzhl
@grafzhl 3 жыл бұрын
Yannick is at his best when he goes hard with the shade :>
@nineteenfortyeight6762
@nineteenfortyeight6762 3 жыл бұрын
Does the fact that I can't read your username mean I'm a robot? :(
@grafzhl
@grafzhl 3 жыл бұрын
@@nineteenfortyeight6762 Not even, any self-respecting model trained on MNIST would be able to 😌
@nineteenfortyeight6762
@nineteenfortyeight6762 3 жыл бұрын
Please tell captcha
@gamerrr007
@gamerrr007 3 жыл бұрын
Now what about the attention of the pixels in the same patch between eachother?
@AoibhinnMcCarthy
@AoibhinnMcCarthy Жыл бұрын
Brilliant best ever explaining
@Xiineet
@Xiineet 3 жыл бұрын
18:14 so fun :D
@lucidraisin
@lucidraisin 3 жыл бұрын
I'd be open to an ASMR paper review from Yannic lol
@rbain16
@rbain16 3 жыл бұрын
@@lucidraisin I came down to the comments just to say this! Haha!
@hareshindrajit
@hareshindrajit 3 жыл бұрын
Hello Yannic , in 25:38 , you tell that the connections in a transformer are calculated on the fly. Aren't the connections in an MLP also calculated on the fly? Also , can you tell me how long is one tpu-v3 day ? Thanks in advance.
@theomorales5040
@theomorales5040 3 жыл бұрын
No, the connections in an MLP are the learned weights: they are learned during training and then remain frozen during inference.
@hareshindrajit
@hareshindrajit 3 жыл бұрын
@@theomorales5040 Thank you for replying. Now I'm clear about this
@hareshindrajit
@hareshindrajit 3 жыл бұрын
@@theomorales5040 Any idea how much long is one tpuv3-day?
@theomorales5040
@theomorales5040 3 жыл бұрын
@@hareshindrajit Precisely 1 day using 1 TPUv3.
@hareshindrajit
@hareshindrajit 3 жыл бұрын
@@theomorales5040 Okay. That makes sense 👍
@AbeDillon
@AbeDillon 3 жыл бұрын
Wouldn't the most general learning system be a fully connected graph with something like an FIR filter for each connection instead of weights?
@YannicKilcher
@YannicKilcher 3 жыл бұрын
true
@arjunpukale3310
@arjunpukale3310 3 жыл бұрын
Can we use bert for video classification? If yess then please share some resources
@MANDLO
@MANDLO 3 жыл бұрын
Bert is a transformer model trained on texts. There will be architectures similar to this paper for videos in future
@astroganov
@astroganov 3 жыл бұрын
I like the idea about reducing bias of a network
@scottmiller2591
@scottmiller2591 3 жыл бұрын
I'm naming my next network NiT-L/16.
Attention Is All You Need
27:07
Yannic Kilcher
Рет қаралды 618 М.
A pack of chips with a surprise 🤣😍❤️ #demariki
00:14
Demariki
Рет қаралды 37 МЛН
Final muy inesperado 🥹
00:48
Juan De Dios Pantoja
Рет қаралды 14 МЛН
Они убрались очень быстро!
00:40
Аришнев
Рет қаралды 3,2 МЛН
Leveraging APIs for Web-based M
1:55:21
Nuha Jadu
Рет қаралды 525
Why Does Diffusion Work Better than Auto-Regression?
20:18
Algorithmic Simplicity
Рет қаралды 188 М.
Vision Transformer for Image Classification
14:47
Shusen Wang
Рет қаралды 112 М.
Vision Transformer (ViT) - An image is worth 16x16 words | Paper Explained
24:57
Aleksa Gordić - The AI Epiphany
Рет қаралды 40 М.
Vision Transformer and its Applications
34:38
Open Data Science
Рет қаралды 38 М.
Vision Transformer Basics
30:49
Samuel Albanie
Рет қаралды 19 М.
An Image Is Worth 16x16 Words - Paper Explained
7:02
Halfling Wizard
Рет қаралды 4,6 М.
📦Он вам не медведь! Обзор FlyingBear S1
18:26
Девушка и AirPods Max 😳
0:59
ОТЛИЧНИКИ
Рет қаралды 16 М.