6
Natural Language Processing and Recurrent Neural Networks
This chapter will introduce two different topics that nevertheless complement each other – natural language processing (NLP) and recurrent neural networks (RNNs). NLP teaches computers to process and analyze natural language text to perform tasks such as machine translation, sentiment analysis, and text generation. Unlike images in computer vision, natural text represents a different type of data, where the order (or sequence) of the elements matters. Thankfully, RNNs are suitable for processing sequential data, such as text or time series. They help us deal with sequences of variable length by defining a recurrence relation over these sequences (hence the name). This makes NLP and RNNs natural allies. In fact, RNNs can be applied to any problem since it has been proven that they are Turing-complete – theoretically, they can simulate any program that a regular computer would not be able to compute.
However...