Natural Language Processing (NLP) requires modelling complex relationships between the semantics of the language. While traditional machine learning techniques are used for NLP, the models built for conversations, called chatbots, are unable to be truly generic. While chatbots have been made with traditional machine learning techniques, deep learning has allowed the complexities within NLP to be easier to model and can be leveraged to build a chatbot which has a real conversation with a human. In this project, we explore the problems and techniques used to build chatbots and where improvements can be made. We analyze different architectures to build chatbots and propose a hybrid model, partly retrieval-based and partly generation-based which gives the best results.
Bhagwat, Vyas Ajay, "Deep Learning for Chatbots" (2018). Master's Projects. 630.