Wow, I was gonna ask, why didn't he explain or give an example for query, key, value in the case of a simple language translation or modelling example. Machine learning community is not very good at conveying their ideas, when you can't put stuff in rigorous mathematics at least use a lot of pictures and many examples at every possible step.
ّDear Pascal, I was wondering if you have any presentations to describe the article titled Neural Machine Translation By Jointly Learning To Align And Translate.
One of the best explanations for attention & transformers in RUclips. Most of the other videos are junk with authors pretending to understand the concepts and just adding to the RUclips clutter.
@@drdr3496 nice. Can you explain me whole query , key and value process for some example like " the cat sat on the mat". What is query, key and values for this sentence
For those who are difficult to digest the picture at 29:00, here's a short explanation. If we take a 4 word sentence as an example: • k = represents each word, in some n-dimensional space (let's say 512), i = 1...4 (since there are 4 words). So k is vector • q = represents a single word in that 512 dimensional space. So q is also a vector • s = is the similarity operation (dot product) of q with each of k matmul (1x512, 512x1) = 1x1. So s is scalar • a = just softmax( S ) to make sum of all a = 1. So each a is a scalar • By now, each a holds a normalized number that represents of how query is similar to each of the word or key k in the sentence. The influence of "q" on each of the "k" is already attained at this critical step. But the outputs are just scalars it only talks about the influence as weight but doesn't encode the word itself (as 512 dimension vector) • To encode all the influences of the words in that query, a final linear combination is done Sum(a*v) to produce the "context" vector. This output context is a single vector 1x512 . "context" because it explains how the query fits in the context of the values Refer to image in this wiki section for more clarification: en.wikipedia.org/wiki/Attention_(machine_learning)#Core_calculations
In recent work, titled "Generalized Attention Mechanism and Relative Position for Transformer" , on transformer it is shown that different matrices for query and key are not required for attention mechanism in Transformer thus reducing number of parameters to be trained for Transformer of GPT, other language models and Transformers for images/videos.
wow! love the way he answers that great question at around 50:52 : “why we dont we implement the mask with hadamard product outside of the softmax?”. brilliant prof.
Thank you for the very comprehensive and understandable course. Being in 2024 I can say that I can understand even better and easier this course using GPT-4.
At 1:18:22, the professor refers to BERT and a "Decoder transformer that predicts a missing word". To me, BERT is a masked Encoder (not decoder). After all, BERT stands for bidirectional *encoder* representation from transformers. It's minor (and doesn't subtract from this great presentation), but can anyone comment?
Could you explain what the model class looks like then? What is the capacity? What is the "unconstrained" version with higher capacity? I was full statistical learning theory style discussion in all pedalogical discussions. I don't understand how people think they understand this. If your life depended on it, would you feel confident in recommending one of these setups? What questions would you have to ask about the data, the model architecture, the observation process? You need worst case bounds, model complexity etc. I see none of that here.
@@syphiliticpangloss Well, in deep learning the theory is far behind engineering. When people say they understand this lecture, they don't mean worst case bounds (which I strongly doubt anyone in the world knows how to calculate for this, without adding so many relaxation assumptions which make it basically irrelevant, like convexity etc.), they just mean that: 1. Engineering wise they understand how to build and use it 2. They feel they grasp enough intuition to what is the purpose of each sub-block and why it was added. I don't think anyone truly "understands" much simpler models in DL than transformers, which perform in a far superior level to classical machine learning methods. For example, fully convolutional neural networks, trained with Adam optimizer, based on back-propagation, using BN.
@@1Kapachow1 So can someone explain what the transformer is doing then in a precise way? I would accept answers that reference probability distributions and predictive goals or computation description of components like NAND gates etc. Also accepted would be anything related to the eigenvalues, stability, curvature etc. There are lots of people trying to talk about this stuff. For example arxiv.org/abs/2004.09280 Or Vapnick. To be perfectly clear, I think today we tend to say there are only two things really: a) "data" i.e. observations usually dozens to millions from some process we take to be slowly changing at most and b) predicates/models/architecture/constraints ... "observations" usually less than dozens, usually manually constructure (from other experiments and observations sets perhaps). To each of these we usually have some sort of "narrative" about where each came from, a way of describing it in some way to humans. The second thing is what I'm getting at. "Architecture" is a model constraint. If it is just pulled from thin air without undestanding the problem, the meta-problem etc, it is quite likely that there are buried problems, secret reasons for architecture choices that are not being disclosed or realised. Getting better at describing these models/arch/predicates is how we progress.
Question about positional encoding. If we sum the Word Embedding (WE) with the Positional Encoding (PE) how does the model tell the difference between WE = 0.5, PE = 0.2 and WE = 0.4 and PE = 0.3 ? (Different words that are at different positions can yield the same value) Why not keep the PE separate from WE?
the explanation of K,V and Q is great. unfortunately i lost him as soon as he started on multi-head. must be that the single head i possess is empty :-)
Fantastic lecture, but I became confused reviewing minute 36, which says something like "When we do this in one block we essentially look at pairs of words... In the first block we look at pairs of words and the second block we're looking at pairs of pairs... We're combining more than just two words but [rather] groups of words that get larger and larger...." This would be similar to how we think of features in convolutional layers. But I don’t understand it here, since all of Q, K, and V are projections of the _whole_ input context, are they not? How do we get from that to the first attention block “essentially look[s] at pairs of words”?
Very intersting lecture. Something that is not totally clear on minute 46: these multihead presented intuitievely as explicit 3 various filterts as in cnn to produce 3 corresponding feature maps,but on previous part of lecture its being said that multi heads are stacked one after another to produce at first info from (word i,word j) and second pairs of that stuff i.e one is the input to another one. So how to understand it in the rightr way? Seems like on minute 46 the inputs to each of the linear are the same but on lecture part it looks like one is going after another and intuitevly the pair of pais and so one changes the ouput size.
There is a better answer to the question asked at @1:04:30, regarding the positional encodings polluting word embeddings. If the positional embedding vectors are in a subspace of their own, then the addition of the positional encodings will never obfuscate the information encapsulated by word embeddings. Since the word embeddings are usually learned during network training, the network quickly learns to confine word embeddings to the subspace that is orthogonal or linearly independent to the positional encodings. So, TLDR, this is not a problem. In fact, it is advantageous, since information about position is evenly spread throughout all vector components, rather than being concentrated in a few coefficients in the head or tail. This removes a problem of having network nodes specialization, where some of the neurons become solely dedicated to deal with positional information.
41:14 Question, on the output side, why isn't there an additional feed-forward layer between the masked self attention in the output and the attention to the input? And maybe more broadly what are those feed forward units doing?
Does anyone know? Which NMT video has the previous intro to Attention the professor cites in this video? I couldn’t find his video on neural machine translation.
23:09 - aren't query and keys both encode questions, while answers being values? 35:53 - why the values are going to be the same as keys? 36:02 - "attention mechanism merges information from _pairs_ of the words". Attention merges information of one word with _all_ the other words, isn't it? For each different word, values corresponding to all the words are weighed differently and added up.
I am confused about this "pairs of words" too.. Let me assume that every word is represented by a linear combination of all other words. Now what is the point of stacking N (N=6 in the original paper) of these attention layers? It would still be a linear combination right?
why the values are going to be the same as keys? - I would guess that Prof. was referring to the same word / token but not the same representation. The representations come after multiplying with Wv and Wk so they would be different.
Perhaps the reason we can't concatenate positional information is because we are trying to share that information among the dimensions of the word vector
45:50 - For the multiple linear transformations, are we applying the same linear transform to each set of Q/K/V in a "head" ? Or does each Q/K/V get its own unique linear transform applied?
Unique linear transform each time I guess.( In the original paper, under section 3.2.2 they mention that " h times with different learned linear projections to dk, dk and dv respectively") If we take repeat scaled dot product attention 3 times , then we will have total of 9 linear projections.
46:11 i dont understand how there can be a concatention of the outputs followed by a linear combination. in my mind it doesnt make sense to do both. either the outputs are concatenated or added up in a linear combination but both...?
Why not just a complex number for the positional embedding? The imaginary part could be keeping track of the position, and all multiplication and gradient operations should still work
I’m sorry, but the database example was extremely easy to understand but then it goes to the similarity and I don’t get a shit. For a translation problem, for example, would it be the Similarity between the word in English and the text in the other language? How is it going to be any similarity in this case between the words? Or is it between the embeddings? And if we’re trying to predict the next word in a sentence, what is the similarity in this case?
Thanks for the nice lecture. I am still confused regarding how transformers model can replace RNNs or LSTMs for general sequence learning. The size of a sequence might be very lengthy in some applications rather than just a sentence (which can be designed to be fixed in length) so how to deal with this especially if we need to keep the complete sequence with us as there is no recurrence? If the answer is to divide the sequence, then how to link different chunks over time without a recurrence or a carry over? (Loops over time)
transformers are able to "query the recurrencies", think of it as instead of repeating the operation as in RNNs you just query 'x' times a database of the possible values and its given inputs and check if it matches the requirements, and because it's not a recurrence, repetition, you can make multiple of these queries, each being a new operation, at the same time!! each operation can be resolved without interference creating new tokens, or pieces, which represent convergence points in the data universe you are travelling. it's a huge improvement.. confirmed by the models shown at the end of the lecture. hope this helps :)
As JAKKO mentioned the transforms use the attention mechanism in a very efficient manner. The size of the sequence can be sufficiently longer than a sentence and still the attention mechanism will be able to capture the dependencies between the words at different positions. And this creates an efficient contextual representation of the sequence better than the normal input embedding vector. And this is how the complete input sequence is captured by the model without the recurrence. This is really a beautiful approach. (personal opinion)
Softmax is computationally expensive, I wonder if this can be replaced somehow with another function to produce probabilities since Softmax is present in many places in all the blocks of the transformer network.
Around @29:50 mark, he first mentions that the key vectors correspond to each output word, but the slide mentions input word. Could someone please clarify this?
19:00 it's basically an exclusionary perceptron layer, isn't it? (also could be called fuzzy LUT) I'm sure it was used before for the attention emulation
Finally, Someone can explain simply what queries, keys , values are in the transformer model . Thank you Sir !!!
Yeah, I don't understand why nobody else goes over this seemingly pretty important detail
Wow, I was gonna ask, why didn't he explain or give an example for query, key, value in the case of a simple language translation or modelling example. Machine learning community is not very good at conveying their ideas, when you can't put stuff in rigorous mathematics at least use a lot of pictures and many examples at every possible step.
I can also recommend this explanation: ruclips.net/video/mMa2PmYJlCo/видео.html
It has helped me a lot
@@andrii5054 The video really simplify the concept. Thanks for sharing !
Where was that?
The slides are posted here: cs.uwaterloo.ca/~ppoupart/teaching/cs480-spring19/schedule.html
Hello Professor. Your explanations are amazing. Kindly pin this comment or add in description so that it is visible to everyone.
ّDear Pascal, I was wondering if you have any presentations to describe the article titled Neural Machine Translation By Jointly Learning To Align And Translate.
00:00 Attention
31:32 Transformer
47:15 Masked Multi-head Attention
1:01:45 Layer normalization, Positional embedding
Thank you for this!
thanks
One of the best explanations for attention & transformers in RUclips. Most of the other videos are junk with authors pretending to understand the concepts and just adding to the RUclips clutter.
This is the single best video on "Attention is all you need", attention, transformers, etc. on the Internet. It's simple as that. Thanks Dr Poupart.
Why does a dot product correlate to attention?
@@bleacherz7503 a dot product between two vectors shows how similar they are
@@drdr3496 nice. Can you explain me whole query , key and value process for some example like " the cat sat on the mat". What is query, key and values for this sentence
ty
For those who are difficult to digest the picture at 29:00, here's a short explanation. If we take a 4 word sentence as an example:
• k = represents each word, in some n-dimensional space (let's say 512), i = 1...4 (since there are 4 words). So k is vector
• q = represents a single word in that 512 dimensional space. So q is also a vector
• s = is the similarity operation (dot product) of q with each of k matmul (1x512, 512x1) = 1x1. So s is scalar
• a = just softmax( S ) to make sum of all a = 1. So each a is a scalar
• By now, each a holds a normalized number that represents of how query is similar to each of the word or key k in the sentence. The influence of "q" on each of the "k" is already attained at this critical step. But the outputs are just scalars it only talks about the influence as weight but doesn't encode the word itself (as 512 dimension vector)
• To encode all the influences of the words in that query, a final linear combination is done Sum(a*v) to produce the "context" vector. This output context is a single vector 1x512 . "context" because it explains how the query fits in the context of the values
Refer to image in this wiki section for more clarification:
en.wikipedia.org/wiki/Attention_(machine_learning)#Core_calculations
Thank you very much Dr. Poupart. This is the best explanation of transformers I have come across on the internet
This is the best lecture on attention mechanism I can find! Thank you Dr. Poupart! finally all the details made sense to me.
Thank you to the person asking the question at 28:49! The softmax gave it away, but I wasn't sure.
Thank you very much, this was by far the best explanation of Transformers that I found online!
I was about to type the same.
In recent work, titled "Generalized Attention Mechanism and Relative Position for Transformer" , on transformer it is shown that different matrices for query and key are not required for attention mechanism in Transformer thus reducing number of parameters to be trained for Transformer of GPT, other language models and Transformers for images/videos.
This is the best Transformer / Attention Explaination ever.. Thank you
This video just cured my depression.
dont worry, im sure the next visit to a public internet forum will once again obliterate hope in humanity
haha same here
Cured my ADHD
This video gave me depression…
@@Mrduralexx yeah its a different level of anxiety that it instills
wow! love the way he answers that great question at around 50:52 : “why we dont we implement the mask with hadamard product outside of the softmax?”. brilliant prof.
Bhaiji love from India. Is lecture ko araam se dekhunga
I am not able to find a better video than this one explaining attention and transformer on the internet
I totally agree, He is genius!
The best explanation of attention mechanism I found on RUclips is the making pizza analogue by Alfredo Canziani.
Best video on attention that I have come across
This is the best video Internet about Transformers network
Most awesome video on transformers one could find on youtube
Thanks a lot Professor Poupart one of the best explanation for maths behind transformers!
I eventually understood the Q,K,V in attention. Many thanks.
Thank you for the very comprehensive and understandable course. Being in 2024 I can say that I can understand even better and easier this course using GPT-4.
I asked chatGPT for the best video on Attention and it brought me here
Very enjoyed your lecture, Professor Poupart! Very informative and simplified many complicated concepts. Thank you very much!
Little did anyone know just how groundbreaking this foundation would be for Chat GPT / GPT 4.
Best video to watch on the first day of 2023
His toturial video is my favorite timepass, specially at night,Hail to prof. Poupart
By far the best I have seen to explain multiheaded attention
One of the best videos!
finallu understood what is going on . most of the videos are so simple and skipped math . i liked it
Good motivation and understanding.
thank you for being so thorough!
Big fan, big fan Sir!!
Finally understood this!
True
Very good explanation. Thanks.
You are a blessing, finally understood a very important concept.
I'm a novice and have been praying to get someone who discusses these papers. You're an answered prayer! Great lecturer.
At 1:18:22, the professor refers to BERT and a "Decoder transformer that predicts a missing word".
To me, BERT is a masked Encoder (not decoder).
After all, BERT stands for bidirectional *encoder* representation from transformers.
It's minor (and doesn't subtract from this great presentation), but can anyone comment?
Great lecture. And I believe you are correct, it seems there is a typo here. I was questioning the same!
Thank you very much. It is very detailed and captures the intuition.
Could you explain what the model class looks like then? What is the capacity? What is the "unconstrained" version with higher capacity? I was full statistical learning theory style discussion in all pedalogical discussions. I don't understand how people think they understand this.
If your life depended on it, would you feel confident in recommending one of these setups? What questions would you have to ask about the data, the model architecture, the observation process? You need worst case bounds, model complexity etc. I see none of that here.
@@syphiliticpangloss Well, in deep learning the theory is far behind engineering.
When people say they understand this lecture, they don't mean worst case bounds (which I strongly doubt anyone in the world knows how to calculate for this, without adding so many relaxation assumptions which make it basically irrelevant, like convexity etc.),
they just mean that:
1. Engineering wise they understand how to build and use it
2. They feel they grasp enough intuition to what is the purpose of each sub-block and why it was added.
I don't think anyone truly "understands" much simpler models in DL than transformers, which perform in a far superior level to classical machine learning methods.
For example, fully convolutional neural networks, trained with Adam optimizer, based on back-propagation, using BN.
@@1Kapachow1 So can someone explain what the transformer is doing then in a precise way? I would accept answers that reference probability distributions and predictive goals or computation description of components like NAND gates etc.
Also accepted would be anything related to the eigenvalues, stability, curvature etc.
There are lots of people trying to talk about this stuff. For example arxiv.org/abs/2004.09280
Or Vapnick.
To be perfectly clear, I think today we tend to say there are only two things really: a) "data" i.e. observations usually dozens to millions from some process we take to be slowly changing at most and b) predicates/models/architecture/constraints ... "observations" usually less than dozens, usually manually constructure (from other experiments and observations sets perhaps). To each of these we usually have some sort of "narrative" about where each came from, a way of describing it in some way to humans.
The second thing is what I'm getting at. "Architecture" is a model constraint. If it is just pulled from thin air without undestanding the problem, the meta-problem etc, it is quite likely that there are buried problems, secret reasons for architecture choices that are not being disclosed or realised.
Getting better at describing these models/arch/predicates is how we progress.
A great lecture! Highly recommended!
Best explanation of transformer I have ever seen, thank you Dr Poupart
Thank you so much, the brainstorming
The simplest explanation of attention, thanks a lot for sharing, great lectures🤗!
Truly fantastic wow
Question about positional encoding.
If we sum the Word Embedding (WE) with the Positional Encoding (PE) how does the model
tell the difference between WE = 0.5, PE = 0.2 and WE = 0.4 and PE = 0.3 ?
(Different words that are at different positions can yield the same value)
Why not keep the PE separate from WE?
and thats how gpt was born my fellas
A very interesting explanation (wonderful)
This year should be the "tranformer year" as there a breakout in domain of CV.
Great video!
Best explanation
Nice lecture! Thanks!
he sounds bored and depressed but the content is high class.
the explanation of K,V and Q is great. unfortunately i lost him as soon as he started on multi-head. must be that the single head i possess is empty :-)
Fantastic lecture, but I became confused reviewing minute 36, which says something like "When we do this in one block we essentially look at pairs of words... In the first block we look at pairs of words and the second block we're looking at pairs of pairs... We're combining more than just two words but [rather] groups of words that get larger and larger...." This would be similar to how we think of features in convolutional layers. But I don’t understand it here, since all of Q, K, and V are projections of the _whole_ input context, are they not? How do we get from that to the first attention block “essentially look[s] at pairs of words”?
Very intersting lecture. Something that is not totally clear on minute 46: these multihead presented intuitievely as explicit 3 various filterts as in cnn to produce 3 corresponding feature maps,but on previous part of lecture its being said that multi heads are stacked one after another to produce at first info from (word i,word j) and second pairs of that stuff i.e one is the input to another one. So how to understand it in the rightr way? Seems like on minute 46 the inputs to each of the linear are the same but on lecture part it looks like one is going after another and intuitevly the pair of pais and so one changes the ouput size.
There is a better answer to the question asked at @1:04:30, regarding the positional encodings polluting word embeddings. If the positional embedding vectors are in a subspace of their own, then the addition of the positional encodings will never obfuscate the information encapsulated by word embeddings. Since the word embeddings are usually learned during network training, the network quickly learns to confine word embeddings to the subspace that is orthogonal or linearly independent to the positional encodings. So, TLDR, this is not a problem. In fact, it is advantageous, since information about position is evenly spread throughout all vector components, rather than being concentrated in a few coefficients in the head or tail. This removes a problem of having network nodes specialization, where some of the neurons become solely dedicated to deal with positional information.
Beautiful explanations
Great explanation sir... Thank You! Please post more such lectures and I would be the first to look at it...
41:14 Question, on the output side, why isn't there an additional feed-forward layer between the masked self attention in the output and the attention to the input? And maybe more broadly what are those feed forward units doing?
very interesting and useful. Thanks Sir
thank you, the video is really useful. 👍🏻👍🏻
31:34 The lecturer has changed shirt.
Also, there seems to be a discontinuity, the discussion on the generalization of attention models was cut short at the same instant
These are 2 different classes clubbed together.
I heard queries, keys & values were primative concepts and counter-intuitive, but I didn't know it was THIS primative.
Excellent session....Tq professor
This was a great lecture, thank you.
Cool lecture!
very good video!😀
Great lecture.
Thank you for the clear explanation and well-illustrated examples!
Beautiful.
Does anyone know? Which NMT video has the previous intro to Attention the professor cites in this video? I couldn’t find his video on neural machine translation.
23:09 - aren't query and keys both encode questions, while answers being values?
35:53 - why the values are going to be the same as keys?
36:02 - "attention mechanism merges information from _pairs_ of the words". Attention merges information of one word with _all_ the other words, isn't it? For each different word, values corresponding to all the words are weighed differently and added up.
I am confused about this "pairs of words" too.. Let me assume that every word is represented by a linear combination of all other words. Now what is the point of stacking N (N=6 in the original paper) of these attention layers? It would still be a linear combination right?
why the values are going to be the same as keys? - I would guess that Prof. was referring to the same word / token but not the same representation. The representations come after multiplying with Wv and Wk so they would be different.
Perhaps the reason we can't concatenate positional information is because we are trying to share that information among the dimensions of the word vector
45:50 - For the multiple linear transformations, are we applying the same linear transform to each set of Q/K/V in a "head" ? Or does each Q/K/V get its own unique linear transform applied?
Unique linear transform each time I guess.( In the original paper, under section 3.2.2 they mention that " h times with different learned linear projections to dk, dk and dv respectively")
If we take repeat scaled dot product attention 3 times , then we will have total of 9 linear projections.
They each get their own learned parameters.
Beautifully explained.. things seem clear to me now .. Thanks a lot sir!
great explanation
Huge thanks for putting this online.
46:11 i dont understand how there can be a concatention of the outputs followed by a linear combination. in my mind it doesnt make sense to do both. either the outputs are concatenated or added up in a linear combination but both...?
Very clear explanation
Thank you very much for sharing that great lecture!
Shouldn't it be the attention vector instead of the value? at 27:44
Thank you very much Sir!
thank you my man, u saved me
Good explanation
Why not just a complex number for the positional embedding? The imaginary part could be keeping track of the position, and all multiplication and gradient operations should still work
I’m sorry, but the database example was extremely easy to understand but then it goes to the similarity and I don’t get a shit. For a translation problem, for example, would it be the Similarity between the word in English and the text in the other language? How is it going to be any similarity in this case between the words? Or is it between the embeddings?
And if we’re trying to predict the next word in a sentence, what is the similarity in this case?
Hi Sir, Sir where did we get the lecture about the Attention mechanism basic concept.?
Thank you Professor :)
Woohoo... Thank you so much
Thanks for the nice lecture. I am still confused regarding how transformers model can replace RNNs or LSTMs for general sequence learning. The size of a sequence might be very lengthy in some applications rather than just a sentence (which can be designed to be fixed in length) so how to deal with this especially if we need to keep the complete sequence with us as there is no recurrence? If the answer is to divide the sequence, then how to link different chunks over time without a recurrence or a carry over? (Loops over time)
transformers are able to "query the recurrencies", think of it as instead of repeating the operation as in RNNs you just query 'x' times a database of the possible values and its given inputs and check if it matches the requirements, and because it's not a recurrence, repetition, you can make multiple of these queries, each being a new operation, at the same time!! each operation can be resolved without interference creating new tokens, or pieces, which represent convergence points in the data universe you are travelling.
it's a huge improvement.. confirmed by the models shown at the end of the lecture. hope this helps :)
As JAKKO mentioned the transforms use the attention mechanism in a very efficient manner. The size of the sequence can be sufficiently longer than a sentence and still the attention mechanism will be able to capture the dependencies between the words at different positions. And this creates an efficient contextual representation of the sequence better than the normal input embedding vector. And this is how the complete input sequence is captured by the model without the recurrence.
This is really a beautiful approach. (personal opinion)
Softmax is computationally expensive, I wonder if this can be replaced somehow with another function to produce probabilities since Softmax is present in many places in all the blocks of the transformer network.
Thank you soo much!!!
This was a great lecture - really explained this to me thanks
Very helpful
Thank you!
just curious, if transformer networks were known 4 years ago itself, why did it take chatgpt such a long time to be developed?
Around @29:50 mark, he first mentions that the key vectors correspond to each output word, but the slide mentions input word. Could someone please clarify this?
Thank you so much for great explanation, professor.
19:00 it's basically an exclusionary perceptron layer, isn't it? (also could be called fuzzy LUT) I'm sure it was used before for the attention emulation
thanks professor for easy explain ... can you share powerpoint with us ..
Dear Prof. Dr. Poupart, do we have chance to have your presentation that used at the lecture of 19 please ?