# Is the following neural network architecture considered deep learning?

I am working in the following neural network architecture, I am using keras and TensorFlow as a back-end.

It is composed by the following, embedding of words, then I added a layer of Long Short-Term Memory (LSTM) neural networks, one layer of output and finally. I am using the softmax activation function.

model = Sequential()
model.add(Embedding(MAX_NB_WORDS, 64, dropout=0.2))
model.add(LSTM(64, dropout_W=0.2, dropout_U=0.2))
model.add(Dense(8))
model.add(Activation('softmax'))


I have the following question, if I am getting a model through this code, could the final product be called a deep learning model?, I know that this code is very small however there is a lot of computations that the machine is making on the background.

## 1 Answer

"Deep learning" is not formally defined. However, typically even simple RNNs are taught as advanced neural network subject alongside other topics labelled "deep learning".

Technically, given the time dimension, the depth of a RNN can include many layers of processing (as opposed to many layers of parameters). As such, some of the knowledge and experience used to help with deep feed-forward networks also applies to RNNs. You could consider the LSTM architecture one such thing, because it is designed to address the vanishing gradient problem that plagues simpler RNN architectures.

So, yes you can call your model a "deep learning model" and have that generally accepted.

I'd be slightly concerned if anyone important to the success of a project thought that label was a big deal - either placed on your CV as or as a buzzword on a resulting product. However, it is not unrealistic marketing because it is essentially true.

• I really appreciate your answer @Neil Stater, I hope the people who gave me bad points for the question have a precise idea of deep learning since it has not been formally defined – neo33 May 1 '18 at 16:14