In this course, we study neural networks of various types. Topics include: neural network architectures, perceptrons, the backpropagation algorithm, neuro-probabilistic language models, convolutional nets for digit recognition, mini-batch gradient descent, the momentum method, recursive neural networks, Bayesian approach, Hopfield Nets, RBM learning, Deep autoencoders, Semantic Hashing,