A conversational chatbot is a software that conducts conversation via auditory or textual methods. This project aims to build a closed-domain, generative-based conversational chatbot from scratch.
The following will be executed :
Speech recognition that allows the device to capture words, phrases and sentences as the user speaks and convert to text. Speech synthesis that allows the device to speak. Usage of SpeechRecognizer library, Google web speech API, PyAudio package.
Natural language processing (NLP) for the device to understand the manually entered or converted text and find the best suitable reply. Machine learning algorithms such as RNNs, LSTM, and Sequence to Sequence model will be implemented from scratch in python. Datasets such as the Reddit conversation datasets, Cornell movie-dialogs corpus, or Twitter feed data can be used for training the NLP model. Exposure to PyTorch.
Build an android app using Android Studio as the conversational interface. The interface displays the entire conversation between the bot and the user.
Prior experience in Python coding. Basic android app development skills are desirable.
Points to be included in proposal :
Write your motivation and understanding of the project briefly. Background in ML/DL ( mention previous projects, if any ). Do specify it if you have no prior experience. Rough timeline explaining what you intend to learn and complete each week.
|Week 1||Read the theory related to speech recognition & synthesis. Brush up Python skills.|
|Week 2||Implement recording speech through microphone and conversion to text. Also, write the code for speaking the reply returned by the NLP algorithm.|
|Week 3||Get familiarised with the bag of words model & neural networks theory.|
|Week 4||Read the theory on RNNs, LSTM, sequence to sequence model thoroughly.|
|Week 5||Implement conversation flow & identification of intents, and entities.|
|Week 6||Train and implement the sequence to sequence model. Complete NLP code.|
|Week 7||Design the conversational interface on Android Studio. Start learning to write code for the functioning of the app.|
|Week 8||Implement code fully. Debugging.|