Facebook Messenger Chatbot
Svetlin Slavov 25536
Tsvetan Dimitrov 25360
Agenda
-
Motivation
-
Problem solution
-
Bot training
-
Used technologies
-
Create a chatbot that could hold a fun conversation.
-
Train it on the Cornell Movie Dialogue dataset
-
Integrate and host it on the Facebook Messenger Platform
Motivation
Problem solution / 1
-
Deep Learning
-
End-to-end system
-
1 system trained on 1 dataset
-
make no assumptions
-
Problem solution / 2
-
Recurrent Neural Networks
-
LSTM (Long Short Term Memory) networks
Problem solution / 3
-
Sequence-2-Sequence model - 2 LSTMs:
-
Encoder - process input
-
Decoder - generate output
-
Data Preprocessing
-
split sentences into tokens
-
assign token ids to each token for fast retrieval
-
get vocabulary of most used words
-
padding for variable length sequences
-
bucketing of sentences avoiding huge number of paddings
Word embedding / 1
-
learn dense representation of words in a low dimensional vector space
-
word vector difference gives us semantic relations, e.g.:
-
vienna - austria + bulgaria = sofia
-
Word embedding / 2
Used Technologies / 1
Used Technologies / 2
-
Additional libraries
-
nltk, numpy, Flask
-
-
CUDA
-
Tensorflow GPU support
-
-
Tensorflow
-
LSTM implementations and word embedding
-
GPU support
-
-
Heroku
-
Deployment
-
References
DEMO
Facebook Messenger ChatBot
By Tsvetan Dimitrov
Facebook Messenger ChatBot
- 267