decide on loss function we will use for the output layer this is applicable in the case when we have supervised learning problemi we have an output label associated with each of the input data points learning the parameters of the neural network determine the values of each connection weight each arrow in figure - carries connection weight we will learn these weights by optimizing our loss function using some optimization algorithm and method called backpropagation we will not go into the details of backpropagation hereas it is beyond the scope of the present we will extend these topics when we actually use neural networks deep neural networks deep neural networks are an extension of normal artificial neural networks there are two major differences that deep neural networks haveas compared to normal neural networks number of layers normal neural networks are shallowwhich means that they will have at max one or two hidden layers whereas the major difference in deep neural networks is that they have lot more hidden layers and this number is usually very large for examplethe google brain project used neural network that had millions of neurons diverse architectures based on what we discussed in we have wide variety of deep neural network architectures ranging from dnnscnnsrnnsand lstms recent research have even given us attention based networks to place special emphasis on specific parts of deep neural network hence with deep learningwe have definitely gone past the traditional ann architecture computation power the larger the network and the more layers it hasthe more complex the network becomes and training it takes lot of time and resources deep neural networks work best on gpu based architectures and take far less time to train than on traditional cpusalthough recent improvements have vastly decreased training times python libraries for deep learning python is language of choiceacross both academia and enterprisesto develop and use normal/deep neural networks we will learn about two packages--theano and tensorflow--which will allow us to build neural network based models on datasets in addition to these we will learn to use keraswhich is high level interface to building neural networks easily and has concise apicapable of running on top of both tensorflow and theano besides thesethere are some more excellent frameworks for deep learning we also recommend you to check out pytorchmxnetcaffe (recently caffe was released)and lasagne