**These are the lecture notes for FAU’s YouTube Lecture “****Deep Learning****”. This is a full transcript of the lecture video & matching slides. We hope, you enjoy this as much as the videos. Of course, this transcript was created with deep learning techniques largely automatically and only minor manual modifications were performed. If you spot mistakes, please let us know!**

**Previous Lecture**** / ** Watch this Video** /

Each neuron computes an inner product of two vectors before applying the non-linearity. Image under CC BY 4.0 from the Deep Learning Lecture.

So, how do we express this? Let’s recall what our single neuron is doing. The single neuron is computing essentially an inner product of its weights. By the way, we are skipping over this bias notation. So, we are expanding this vector by one additional element. This allows us to describe the bias also and the inner product as shown on the slide here. This is really nice because then you can see that the output *y* hat is just an inner product.

A fully connected layer can be expressed in terms of matrix multiplication. Image under CC BY 4.0 from the Deep Learning Lecture.

Now think about the case that we have *M* neurons which means that we get some *y* hat index *m*. All of them are inner products. So, if you bring this into a vector notation, you can see that the vector **y** hat is nothing else than a matrix multiplication of **x** with this matrix **W**. You see that a fully connected layer is nothing else than matrix multiplication. So, we can essentially represent arbitrary connections and topologies using this fully connected layer. Then, we also apply a pointwise non-linearity such that we get the nonlinear effect. The nice thing about matrix notation is of course that we can describe now the entire layer derivatives using matrix calculus.

A two-neuron fully connected layer with three inputs. Image under CC BY 4.0 from the Deep Learning Lecture.

So, our fully connected layer would then get the following configuration: Three elements for the input and then weights for every neuron. Let’s say you have two neurons, then we get these weight vectors. We multiply the two with **x**. In the forward pass, we have determined this **y** hat for the entire module using a matrix. If you want to compute the gradients, then we need exactly two partial derivatives. These are the same as we already mentioned: We need the derivative with respect to the weights. This is going to be the partial derivative with respect to **W** and the partial derivatives with respect to **x** for the backpropagation to pass it on to the next module.

#lecture-notes #deep-learning #data-science #deep learning

1.05 GEEK