Cheuk Ting Ho
Developer advocate / Data Scientist - support open-source and building the community.
Demystifying Natural Language Processing Used in Chatbots
Grab the slides: slides.com/cheukting_ho/why-chatbots-are-so-bad
Chatbots catagories user message (utterance) in intents to guess what action it should take to handle that message
Information that a chatbot extract form your message
message: "Hi I am Cheuk"
Intent: "Greeting"
Enterty: {"Name": "Cheuk"}
message: "Book a flight to Hong Kong on 8th Dec 2020"
Intent: "Flight booking"
Enterty: {"Destination": "Hong Kong", "Date": T20201208}
catogorizing sentances
➡️ vectoring words and sentances
➡️ finding similarities in vector spaces
Named entity recognition (NER):
- hand writen rule
- Statical model + supervised ML
- Unsupervised ML
- Semi-supervised ML
number of occurances
disregarding grammar and even word order
pre-trained two-layer neural networks
large coprus and high dimension
unsupervised learning algorithm
aggregated global word-word co-occurrence statistics
statisical model - discriminative undirected probabilistic graphical model
Linear Chain CRF - overcome label bias, great performance on sequence data
investigate the relationship between two variable sets
examine the correlation of variables belonging to different sets
sequencial data
feed the output of the prvious prediction as inputs
(Bi-directionsl) GRU, LSTM
ELMo and BERT
Have you even jump in the middle of a conversation?
Conversation is difficult to understand
Context are hidden
Infer meanings
Users are unpredictable
Design with intent in mind:
Do the user have a limited intent choices?
Guiding and hinting the users, fallback mechnisms
Collect user data and retrain
http://www.cs.columbia.edu/~smaskey/CS6998/
https://link.springer.com/article/10.1186/s40887-017-0012-y
https://towardsdatascience.com/named-entity-recognition-with-nltk-and-spacy-8c4a7d88e7da
https://biomedical-engineering-online.biomedcentral.com/articles/10.1186/s12938-018-0573-6
https://medium.com/@phylypo/nlp-text-segmentation-using-conditional-random-fields-e8ff1d2b6060
https://www.aclweb.org/anthology/K18-1020.pdf
http://jalammar.github.io/illustrated-bert/
https://people.cs.umass.edu/~mccallum/papers/crf-tutorial.pdf
By Cheuk Ting Ho
Developer advocate / Data Scientist - support open-source and building the community.