I’m a computational linguist and software developer.
At Microsoft Research Maluuba, I’m implementing a next-generation dialogue management system with complex features such as:
- State Tracking, i.e. deciding which pieces of information from previous queries are still relevant to the current query.
- Policy Management, i.e. deciding which action the machine should take next, e.g., present results to the user, ask for confirmation, ask the user to choose from multiple options, etc.
- Support for multiple domains (e.g., making calls, sending messages, navigation, weather forecast, booking flights, …) and allowing the user to switch between them like in a natural conversation.
- Long-term anaphora, i.e. allowing the user to refer back to persons or locations that were mentioned several queries earlier in the conversation.
- Detecting whether the user wants to refine their current search or start a new search from scratch.
- Suspending the current query and coming back to it later if it cannot be answered at the moment due to e.g., the lack of a required internet connection.
- Automatic generation of machine responses using a custom-made NLG (natural language generation) framework with language-independent business logic and language-specific modules.