FPI : Failure Point Isolation in Large-scale Conversational Assistants (2022)

Abstract: Large-scale conversational assistants such as Cortana, Alexa, Google Assistant and Siri process requests through a series of modules for wake word detection, speech recognition, language understanding and response generation. An error in one of these modules can cascade through the system. Given the large traffic volumes in these assistants, it is infeasible to manually analyze the data, identify requests with processing errors and isolate the source of error. We present a machine learning system to address this challenge. First, we embed the incoming request and context, such as system response and subsequent turns, using pre-trained transformer models. Then, we combine these embeddings with encodings of additional metadata features (such as confidence scores from different modules in the online system) using a “mixing-encoder” to output the failure point predictions. Our system obtains 92.2% of human performance on this task while scaling to analyze the entire traffic in 8 different languages of a large-scale conversational assistant. We present detailed ablation studies analyzing the impact of different modeling choices.

## introduction conversational assistants have become increasingly prevalent in every-day life. with them, users can control appliances at home, get current weather information, or get help with recipes in the kitchen through simple voice commands. a typical dialog system processes user requests in multiple stages (see figure 1 ). first, a voice trigger (or wake word) @xcite model determines whether the user is speaking to the assistant. following the trigger component, an automatic speech recognition (asr) @xcite module converts user audio stream into a set of discrete text tokens. this text is sent to the natural language understanding (nlu) component, which analyzes what the user request means. the domain classifier (dc) categorizes the user's request into a set of pre-defined topics, the intent classifier (ic) assigns an intent which represents what the user is trying to accomplish, and the entity recognition and resolution component (err) recognizes and resolves known entities in the users request. the system generates the best possible response (result stage) using several subsystems that are specific to each dialog assistant (e.g., dialog management, re-ranking, etc). finally the response is rendered into a human-like speech using a text-to-speech (tts) system. when such a system makes an error, the complexity of the processing pipeline makes it extremely challenging to isolate the source of a defect. an error in an upstream component (e.g. asr) can propagate through the system to the final response to the user. in such cases it is likely that multiple components starting from the first source of the error (referred to as "root" or "failure point" hereby) produce erroneous outputs. however, it is critical to identify this error to improve the overall system. given the large traffic volumes, manual analysis to identify root causes for processing errors is infeasible. ## related work several works have attempted evaluating dialog systems using deterministic or machine learningbased methods. the majority can be classified into the following groups: word-overlap metrics, user sentiment based approach, or component-specific error attribution. word-overlap metrics models like blue @xcite and rouge @xcite are not well-suited for evaluating real-world conversational assistants. @xcite has demonstrated that the word-overlap metrics do not correlate @xmath0. as conversational assistants can also perform real-world functions (e.g., turning on lights), evaluation of such systems based on the tex-tual response alone does not fully capture the set of actions taken by the system. finally, the deterministic metrics are not fine-grained enough to identify which component of the system was responsible for the defective interaction. hence, word-overlap metrics have a limited ability to provide prescriptive feedback to developers. @xcite proposed evaluating dialog systems based on the user perception and interaction quality (iq). here each dialog is assigned a numerical score as evaluated by an annotator. schmitt and ultes (2015); bodigutla et al. (2020); gupta et al. (2021) developed models that used features derived from the logs of the dialog system to build predictive iq models. @xcite demonstrated that transformer-based architectures without log-derived features can outperform previously-developed models. @xcite proposed a similar to iq metric, adem, and trained a predictive mode. @xcite developed a transformer-based model, maude. this model is trained using contrastive learning and produces scores that correlates with human judgment. the sentiment or quality-based metrics allow for monitoring real-life dialog systems, however they do not provide actionable insight into the performance of the system components. @xcite and @xcite have built systems that attribute errors in the nlu component of a conversational assistant. @xcite focused on building transformer-based models that detect nlu intent and domain classifications errors. @xcite detect nlu domain and intent errors in the dialog system using confidence scores produced by the nlu models. when attributing nlu errors, they focus on root-causing issues in the training data (e.g., low-resource intent, mislabeling, etc). though this feedback is actionable, neither of these works attempt to root-cause errors in other components of dialog systems. these aforementioned approaches have limitations when it comes to failure point isolation in large-scale conversational assistants. instead of focusing on a small portion of a dialog system, we create an automated error attribution system that can provide insights into the root causes of defective interactions at scale for all of the components of a conversational assistant. unlike approaches that estimate user satisfaction and dialog quality from the user's perspective, our focus is on understanding whether the system delivered the response that it was designed to deliver and if not, why. in case when the system was designed to perform the action but failed to do so, our model provides clear feedback that can help to improve system performance in the future. ## methodology in this section, we first describe our training and test datasets, and discuss the challenges in constructing them ( § 3.1). next, we describe the creation of our "golden" test dataset ( § 3.2). then, we describe the features that we use in our model ( § 3.3). finally, we present details of the network architecture and model training used to output fpi based on these input features ( § 3.4). ## limitations during our research we identified several limitations in the fpi system. first, our training dataset only allows a single failure point, however multiple components of a dialog assistant can fail in a real-world system. hence, it would be useful to extend fpi task for capturing all critical and noncritical errors regardless of whether they resulted in a defective user session. second, our system provides only a component-level failure point isolation. future systems could build on our work to identify the sub-components of a dialog assistant responsible for the failure. next, it would be useful to develop a framework which would allow joint system-level error attribution and assessment of interaction quality (iq). such an approach would not only help developers understand system errors but also cases which result in negative customer interaction. we have not experimented with bigger language models for our application, which might demonstrate stronger performance than the models used in this work. ## conclusion we present an effective machine learning system to detect and isolate failure points in a real-world conversational assistant. such assistants can have a complex hierarchy of modules making error isolation very challenging. by leveraging pre-trained transformer models to process the request text and contextual metadata features, our system obtains 92.2% of human performance. given the large volumes of traffic in real-world conversational assistants, the manual process of obtaining human annotations for error isolation is prohibitively time consuming and expensive. while achieving human parity, our system automates this process and scales to a large volume of traffic. we conduct detailed ablation studies of our system and illustrate the key components that led to the highlighted gains.