Second, we compute the value for $f_t$, the activation of the memory cells’ forget gates at time t :
(3)$f_t =\sigma(W_f x_t + U_f h_{t-1}+ b_f)$
Given the value of the input gate activation $i_t$, the forget gate activation $f_t$ and the candidate state value $\widetilde{C_t}$, we can compute $C_t$ the memory cells’ new state at time $t$ :
(4)$C_t = i_t *\widetilde{C_t}+ f_t * C_{t-1}$
With the new state of the memory cells, we can compute the value of their output gates and, subsequently, their outputs :
\item The model we used in this tutorial is a variation of the standard LSTM model. In this variant, the activation of a cell’s output gate does not depend on the memory cell’s state $C_t$. This allows us to perform part of the computation more efficiently (see the implementation note, below, for details). This means that, in the variant we have implemented, there is no matrix $V_o$ and equation (5) is replaced by equation (7) :
(7)$o_t =\sigma(W_o x_t + U_o h_{t-1}+ b_1)$
\end{itemize}
\end{frame}
\begin{frame}
\frametitle{Implementation Note}
\begin{itemize}
\begin{itemize}
\item Implementation note : In the code included this tutorial, the equations (1), (2), (3) and (7) are performed in parallel to make the computation more efficient. This is possible because none of these equations rely on a result produced by the other ones. It is achieved by concatenating the four matrices $W_*$ into a single weight matrix W and performing the same concatenation on the weight matrices $U_*$ to produce the matrix U and the bias vectors $b_*$ to produce the vector b. Then, the pre-nonlinearity activations can be computed with :
$z =\sigma(W x_t + U h_{t-1}+ b)$
The result is then sliced to obtain the pre-nonlinearity activations for i, f, $\widetilde{C_t}$, and o and the non-linearities are then applied independently for each.
\end{itemize}
\end{itemize}
\end{frame}
\end{frame}
\begin{frame}
\frametitle{}
\begin{itemize}
\item a
\end{itemize}
\end{frame}
\begin{frame}{Conclusion}
\begin{frame}{Conclusion}
Theano/Pylearn2/libgpuarry provide an environment for machine learning that is:
Theano/Pylearn2/libgpuarry provide an environment for machine learning that is:
...
@@ -1054,7 +1128,7 @@ Deep Learning Tutorial on LSTM: \url{http://deeplearning.net/tutorial/lstm.html}
...
@@ -1054,7 +1128,7 @@ Deep Learning Tutorial on LSTM: \url{http://deeplearning.net/tutorial/lstm.html}
\begin{frame}{Acknowledgments}
\begin{frame}{Acknowledgments}
\begin{itemize}
\begin{itemize}
\item All people working or having worked at the LISA lab.
\item All people working or having worked at the LISA lab.
\item All Theano/Pylearn 2 users/contributors
\item All Theano users/contributors
\item Compute Canada, RQCHP, NSERC, and Canada Research Chairs for providing funds or access to compute resources.
\item Compute Canada, RQCHP, NSERC, and Canada Research Chairs for providing funds or access to compute resources.