I have been keeping my notes offline since the beginning of my Ph.D., however, I think sharing thoughts at an earlier phase before thinking hard on them can turn out to be very useful discussions while also helping others. Thus I decided to visit and write here occasionally.
All said this very first blog post will be an introductory one where I talk very briefly about my research perspective and the topic I have been working on so far. So, let me start by talking about what kept me busy for the last few years: Dialogue state tracking.
What is Dialogue State Tracking?
Do not let the name confuse you in any way, there is a high chance you have used a system that is powered with this task behind. If you have ever talked to a digital agent online (through chat or voice) and purchased a service or a product here you go! The problem of automatically extracting user preferences from these conversations has the fancy name of dialogue state tracking in NLP. You can think of users’ preferences (e.g. the location or date of a hotel booking) as the states of the conversation and the task is to simply track these states throughout the dialogue turns.
|DST example source|
Okay but what is the big deal?
So now that we have settled a simple understanding of the task let’s talk about why is this an important problem? So why simply am I spending my time so that the next dialogue agent you talk to would not respond “I don’t recognize that command”? Simple!
→ To finish my thesis.
Okay, it is not just that. I believe the translation to an industrial impact of this research topic is to be able to automate the call-centers all around the world. Recent advancements in technology let us replace much of the predictable physical work with automated systems like assembly lines, simple packaging, cashiers , etc.. There is also active research in the AI community to do more such as driverless cars. Automating call centers is no toy problem when compared to self-driving cars. It has many challenges:
- Conversations are noisy with unexpected input from users.
- New business models introduce new services/items but lack the necessary amount of data. Thus we need a strategy that adapts our existing models with fewer data in less time.
So my excitement in this topic is exactly on this last point. I am fairly interested in training pipelines that help models generalize to new domains with low or no supervision at all. I am not going to delve into many details yet, as it is just an introductory post but I hope this read at least help you in knowing me better :)