Slot-Filling in Conversations with Deep Learning
Submitted by Nishant Sinha (@ekshaks) on Tuesday, 31 May 2016
Building conversational assistants which help users get jobs done, e.g., order food, book tickets or buy phones, is a complex task. Your bot needs to understand ambiguous natural language inputs, guess user’s intent and context, extract relevant entities, lookup catalogs, generate responses to elicit more information, build user’s profile and finally create and fulfill orders!! While deep learning cannot create an end-to-end assistant for you automatically, it can certainly help with several of the tasks above.
In this talk, I’ll discuss how deep learning can be used for natural language understanding, in particular, to solve the problem of slot-filling. For instance, from the sentence ‘recharge 9900990099 for Rs 100’, we can fill up two slots needed by our recharge bot: phone_number = 9900990099, recharge_amount = 100.
Slot-filling is an instance of the more complex semantic parsing problem. While the latter requires building sophisticated parse trees, slot-filling is, in essence, is a sentence labeling problem. Historically, methods based on conditional random fields (CRFs) have been used to solve the slot-filling problem. Not surprisingly, deep learning methods now outperform CRFs for sequence labeling tasks also. I will present multiple recurrent neural network (RNN) variations for the sequence labeling problem and discuss their relative advantages. I’ll also present encodings which tradeoff local word-level loss functions with sequence level loss functions over RNNs, in order to gain the full power of CRFs.
Building Conversational Assistants
RNN variations - Elman, Jordan, BiRNNs
Optimizing RNNs for Slot-Filling
Nishant Sinha is an experienced computer scientist and researcher with expertise in deductive and inductive inference, conversational interfaces and distributed systems. He has worked at reputed industrial research labs including NEC Labs USA and IBM Research India and mentored several graduate students. He has published in top-tier international academic conferences and has several patents to his credit. At MagicX, Nishant helps build smart personal assistants for getting tasks done.