Answer span correction
The method enhances MRC systems by generating and correcting answer spans using an augmented training set and a collector model, addressing the issue of partially correct answers and improving answer quality.
Patent Information
- Application Number
- JP2023522789
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-11-05
- Filing Date
- 2021-10-21
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2041-10-21
AI Technical Summary
Existing machine reading comprehension (MRC) systems often generate partially correct answers when presented with answerable questions, lacking effective mechanisms for answer span correction.
A method involving a computing device that generates answers, constructs a new training set with delimiting tokens, and trains a new natural language question-answering system using an augmented training set, incorporating a collector model to correct errors in answer spans.
Improves the quality of MRC output answers by correcting errors and generating answer spans that better match ground truth, enhancing state-of-the-art performance in various error categories.
Smart Images

Figure 0007736787000001 
Figure 0007736787000002 
Figure 0007736787000003
Abstract
Description
[Technical Field]
[0001] The field of embodiments of the present invention relates to answer span correction for machine reading comprehension (MRC) models and systems. [Background technology]
[0002] Answer verification in machine reading comprehension (MRC) consists of verifying the extracted answer against the input context-question pair. Traditional systems address re-evaluating the "answerability" of the question from the extracted answer. Traditional MRC systems tend to generate partially correct answers when presented with answerable questions. Summary of the Invention
[0003] Embodiments relate to answer span correction for machine reading comprehension (MRC) models and systems. One embodiment provides a method for improving answers generated by a natural language question-answering system using a computing device. The method includes receiving, by the computing device, a plurality of questions for the natural language question-answering system. The computing device further generates a plurality of answers to the plurality of questions. The computing device further constructs a new training set with the generated plurality of answers, and each answer is compared to a corresponding question in the plurality of questions. The computing device further augments the new training set with tokens that delimit one or more spans in the generated plurality of answers. The computing device further trains a new natural language question-answering system with the augmented new training set. Embodiments significantly improve state-of-the-art English reader predictions in various error categories through correction. In an MRC system, several features contribute to the benefits of answer correction because existing MRC systems tend to generate partially correct answers when presented with answerable questions. Several features contribute to the benefits of detecting and correcting errors in the MRC model's predictions. Furthermore, the features contribute the advantage of generating answer spans that better match the ground truth (GT), thus improving the quality of the MRC output answers.
[0004] One or more of the following features may be included: In some embodiments, the answer span of the natural language question-answering system's reader model is corrected using a new augmented training set for the new natural language question-answering system.
[0005] In some embodiments, a new natural language question answering system that corrects answer spans is cascaded after the natural language question answering system.
[0006] In one or more embodiments, the method may further include determining whether to correct the answer span by the new natural language question-answering system, and correcting the answer span based on the collector model of the new natural language question-answering system generating the refined answer span.
[0007] In some embodiments, the method may further include the collector model using a neural network to generate the refined answer span.
[0008] In one or more embodiments, the method may include, upon determining that the answer span should not be corrected, creating new answer examples from each original answer of the plurality of answers based on segmenting the GT answers as input to the new natural language question answering system, indicating that no correction is necessary.
[0009] In some embodiments, the method may further include using a plurality of the top-k incorrect answer predictions to create an example answer for each incorrect answer prediction, wherein the input is a predicted answer span of the leader model and the target answer is a GT answer.
[0010] In one or more embodiments, the method may further include the generated answers including predicted answers, and one or more tokens marking the predicted answers in the context for predicting new answers by the collector model.
[0011] These and other features, aspects, and advantages of the present embodiments will become apparent with reference to the following description, appended claims, and accompanying drawings. [Brief explanation of the drawings]
[0012] [Figure 1] FIG. 1 illustrates a cloud computing environment according to one embodiment. [Figure 2]FIG. 2 illustrates a set of abstraction model layers according to one embodiment. [Figure 3] 1 is a network architecture of a system for answer span correction for improved performance on machine reading comprehension (MRC), according to one embodiment. [Figure 4] FIG. 4 illustrates a representative hardware environment that may be associated with the server and / or client of FIG. 3, according to one embodiment. [Figure 5] FIG. 1 is a block diagram illustrating a distributed system for answer span correction for performance improvement for MRC, according to one embodiment. [Figure 6] Figure 1 shows an example of a multi-layer Bidirectional Transformer Encoder (BERT) MRC system. [Figure 7] FIG. 10 illustrates an example of a single answer result (given a question and context) from a leader in a traditional MRC model or system, and also an answer result (given a question and context) from a leader-plus-collector pipeline, according to one embodiment. [Figure 8A] A diagram showing a representative example of training data for a conventional MRC model or system, divided into folds. [Figure 8B] FIG. 10 illustrates a representative example of how n-1 folds are grouped to train separate MRC models, which are used to generate predictions for the remaining folds, according to one embodiment. [Figure 9] FIG. 10 is a flow block diagram for a leader-plus-collector pipeline of a modified MRC answer span collector model, according to one embodiment. [Figure 10A]FIG. 10 shows a table containing results on answerable questions for the Natural Questions (NQ) MRC benchmark for a robustly-optimized BERT method (RoBERTa), an ensemble of two-reader methods, and a method using the leader-plus-collector pipeline (or modified MRC answer span-collector model) shown in FIG. 9 , according to one embodiment. [Figure 10B] FIG. 9 shows a table with results on the Multilingual Question Answering (MLQA) MRC benchmark dataset using a reader-plus-corrector pipeline (the modified MRC answer span corrector model shown in FIG. 9 ) when the paragraphs are in English and for the Generalized Cross-Lingual Transfer Task (G-XLT), according to one embodiment. [Figure 10C] FIG. 10 illustrates a table containing the exact match score difference for all 49 MLQA language pair combinations by using a leader-plus-corrector pipeline (modified MRC answer span corrector model), according to one embodiment. [Figure 11] FIG. 1 is a block diagram of a process for answer span correction for performance improvement for MRC, according to one embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0013] While descriptions of various embodiments are presented for illustrative purposes, they are not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope of the described embodiments. The terms used herein are chosen to best explain the principles of the embodiments, practical applications or technical improvements over technology found in the market, or to enable those skilled in the art to understand the embodiments disclosed herein.
[0014] Embodiments relate to answer span correction for machine reading comprehension (MRC) models and systems. One embodiment provides a method for improving answers generated by a natural language question-answering system using a computing device, including receiving, by the computing device, a plurality of questions for the natural language question-answering system. The computing device further generates a plurality of answers to the plurality of questions. The computing device further constructs a new training set with the generated plurality of answers, and each answer is compared to a corresponding question in the plurality of questions. The computing device further augments the new training set with tokens that delimit one or more spans in the generated plurality of answers. The computing device further trains a new natural language question-answering system with the augmented new training set.
[0015] One or more embodiments include a collector (e.g., collector 960 (FIG. 9)) that utilizes an artificial intelligence (AI) model. The AI model may include a trained ML model (e.g., an NN, a convolutional NN (CNN), a recurrent NN (RNN), a long-short-term memory (LSTM)-based NN, a gated recurrent unit (GRU)-based RNN, a tree-based CNN, a self-attention network (e.g., an NN that utilizes attention as a basic building block; self-attention networks have been shown to be effective for sequence modeling tasks and do not have recursion or convolution), a BiLSTM (bidirectional LSTM), or other models). An artificial NN is an interconnected group of nodes or neurons.
[0016] Although this disclosure includes a detailed description of cloud computing, it should be understood that implementation of the teachings described herein is not limited to cloud computing environments. Rather, some embodiments of the present invention may be implemented in conjunction with any other type of computing environment now known or later developed.
[0017] Cloud computing is a service delivery model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines (VMs), and services) that can be rapidly provisioned and released with minimal administrative effort or interaction with the service provider. This cloud model can include at least five characteristics, at least three service models, and at least four deployment models.
[0018] The features are as follows:
[0019] On-Demand Self-Service: Cloud consumers can unilaterally provision computing capabilities, such as server time or network storage, automatically as needed, without the need for human interaction with the provider of the service.
[0020] Pervasive Network Access: Functionality is available over the network and accessed through standard mechanisms that facilitate use by heterogeneous thin or thick client platforms (e.g., cell phones, laptops, and PDAs).
[0021] Resource Pooling: A provider's computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically allocated and reallocated according to demand. Consumers generally have no control or knowledge of the exact location of the resources provided, but there is some location independence in that they may be able to specify location at a higher level of abstraction (e.g., country, state, or data center).
[0022] Rapid Elasticity: Capabilities can be rapidly and elastically provisioned, in some cases automatically, to scale out quickly, release quickly, and scale in quickly. To the consumer, the capabilities available for provisioning often appear unlimited, and any amount can be purchased at any time.
[0023] Metering Services: Cloud systems automatically control and optimize resource usage by leveraging metering capabilities at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active consumer accounts). Resource usage can be monitored, controlled, and reported, thereby enabling transparency for both providers and consumers of the services being utilized.
[0024] The service model is as follows:
[0025] Software as a Service (SaaS): The functionality offered to the consumer is the use of the provider's applications running on a cloud infrastructure. The applications are accessible from a variety of client devices through thin-client interfaces such as web browsers (e.g., web-based email). The consumer does not manage or control the underlying cloud infrastructure, including the network, servers, operating systems, storage, or even individual application functions, with the possible exception of limited consumer-specific application configuration settings.
[0026] Platform as a Service (PaaS): The capability offered to consumers is the ability to deploy applications they create or acquire, written using programming languages and tools supported by the provider, onto a cloud infrastructure. The consumer does not manage or control the underlying cloud infrastructure, including the network, servers, operating systems, or storage, but does have control over the applications deployed and, in some cases, the application hosting environment configuration.
[0027] Infrastructure as a Service (IaaS): The capability offered to consumers is the ability to provision processing, storage, network, and other basic computing resources onto which they can deploy and run any software, which may include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure, but does have control over the operating systems, storage, deployed applications, and possibly limited control over selected networking components (e.g., host firewalls).
[0028] The deployment model is as follows:
[0029] Private Cloud: The cloud infrastructure is operated solely for the organization. The cloud infrastructure can be managed by the organization or a third party and can exist on-premise or off-premise.
[0030] Community Cloud: Cloud infrastructure is shared by several organizations to support a specific community with shared interests (e.g., mission, security requirements, policy, and compliance considerations). The cloud infrastructure may be managed by the organization or a third party and may exist on-premises or off-premises.
[0031] Public cloud: Cloud infrastructure is made available to the general public or large industry groups and is owned by an organization that sells cloud services.
[0032] Hybrid Cloud: A cloud infrastructure is a composition of two or more clouds (private, community, or public) that remain unique entities but are tied together by standardized or proprietary technologies that enable data and application portability (e.g., cloud bursting for load balancing between clouds).
[0033] A cloud computing environment is a service oriented environment that focuses on statelessness, low coupling, modularity, and semantic interoperability. At the heart of cloud computing is an infrastructure that includes a network of interconnected nodes.
[0034] Referring now to FIG. 1, an exemplary cloud computing environment 50 is shown. As shown, the cloud computing environment 50 comprises one or more cloud computing nodes 10 with which local computing devices used by cloud consumers, such as, for example, a personal digital assistant (PDA) or cellular phone 54A, a desktop computer 54B, a laptop computer 54C, or an automobile computer system 54N, or combinations thereof, may communicate. The nodes 10 may communicate with each other. The nodes 10 may be physically or virtually grouped in one or more networks (not shown), such as a private cloud, a community cloud, a public cloud, or a hybrid cloud, or combinations thereof, as previously described. This enables the cloud computing environment 50 to provide infrastructure, platform, and / or software as a service without the cloud consumer having to maintain resources therefor on their local computing devices. It should be understood that the types of computing devices 54A-N in FIG. 1 are illustrative only, and that computing node 10 and cloud computing environment 50 may communicate with any type of computerized device over any type of network and / or network-addressable connection (e.g., using a web browser).
[0035] Referring now to Figure 2, a set of functional abstraction layers provided by cloud computing environment 50 (Figure 1) is shown. It should be understood in advance that the components, layers, and functions shown in Figure 2 are merely exemplary, and embodiments of the present invention are not limited thereto. As shown, the following layers and corresponding functions are provided:
[0036] Hardware and software layer 60 includes hardware and software components. Examples of hardware components may include mainframe 61, RISC (reduced instruction set computer) architecture-based servers 62, servers 63, blade servers 64, storage devices 65, and network and networking components 66. In some embodiments, software components include network application server software 67 and database software 68.
[0037] The virtualization layer 70 provides an abstraction layer at which the following examples of virtual entities can be provided: virtual servers 71, virtual storage 72, virtual networks including virtual private networks 73, virtual applications and operating systems 74, and virtual clients 75.
[0038] As an example, management layer 80 may provide the functions described below. Resource provisioning 81 provides dynamic procurement of computing and other resources utilized to perform tasks within the cloud computing environment. Metering and pricing 82 provides cost tracking as resources are utilized within the cloud computing environment and billing or invoicing for the consumption of such resources. As an example, such resources may include application software licenses. Security provides identity verification for cloud consumers and tasks, as well as protection for data and other resources. User portal 83 provides access to the cloud computing environment for consumers and system administrators. Service level management 84 provides cloud computing resource allocation and management so that required service levels are met. Service level agreement (SLA) planning and fulfillment 85 provides proactive coordination and procurement of cloud computing resources in anticipation of future needs in accordance with SLAs.
[0039] Workload layer 90 provides examples of functionality for which a cloud computing environment may be utilized. Examples of workloads and functionality that may be provided from this layer include mapping and navigation 91, software development and lifecycle management 92, virtual classroom instruction delivery 93, data analysis processing 94, transaction processing 95, and answer span correction for performance improvement for MRC processing 96 (e.g., system 500 of FIG. 5, leader-plus-collector pipeline (modified MRC answer collector model 900), and process 1100 of FIG. 11). As previously mentioned, all of the above examples described with respect to FIG. 2 are illustrative only, and embodiments are not limited to such examples.
[0040] Although this disclosure includes detailed descriptions of cloud computing, it is reiterated that implementation of the teachings described herein is not limited to cloud computing environments. Rather, embodiments may be implemented in any type of clustered computing environment now known or later developed.
[0041] 3 is a network architecture of a system 300 for answer span correction for performance improvement for an MRC model, according to one embodiment. As shown in FIG. 3, multiple remote networks 302 are provided, including a first remote network 304 and a second remote network 306. A gateway 301 may be coupled between the remote network 302 and a proximate network 308. In the context of this network architecture 300, the networks 304, 306 may each take any form, such as, but not limited to, a LAN, a WAN such as the Internet, a public switched telephone network (PSTN), an internal telephone network, etc.
[0042] In use, gateway 301 serves as an entry point from remote network 302 to proximal network 308. Thus, gateway 301 can function as a router to which a given packet of data arriving at gateway 301 can be routed, as well as a switch that provides the actual path within and out of gateway 301 for a given packet.
[0043] Further included is at least one data server 314 coupled to the proximate network 308, the data server 314 being accessible from the remote network 302 via the gateway 301. Note that the data server 314 may include any type of computing device / groupware. Multiple user devices 316 are coupled to each data server 314. Such user devices 316 may include desktop computers, laptop computers, handheld computers, printers, or any other type of logic-containing device, as well as combinations thereof. Note that in some embodiments, the user devices 316 may also be directly coupled to any of the networks.
[0044] A peripheral device 320 or a series of peripheral devices 320, such as a facsimile machine, a printer, a scanner, a hard disk drive, networked and / or local storage units or systems, etc., may be coupled to one or more of the networks 304, 306, 308. It should be noted that databases and / or additional components may be utilized with or integrated into any type of network element coupled to the networks 304, 306, 308. In the context of this description, a network element may refer to any component of a network.
[0045] According to some approaches, the methods and systems described herein may be implemented in conjunction with and / or on virtual systems and / or systems emulating one or more other systems, such as a UNIX system emulating an IBM® z / OS environment, a UNIX system virtually hosting a MICROSOFT® WINDOWS® environment, a MICROSOFT® WINDOWS® system emulating an IBM® z / OS environment, etc. This virtualization and / or emulation may be implemented through VMWARE® software in some embodiments.
[0046] 4 illustrates a representative hardware system 400 environment associated with the user device 316 and / or server 314 of FIG. 3 , according to one embodiment. As an example, the hardware configuration includes a workstation having a central processing unit 410, such as a microprocessor, and several other units interconnected via a system bus 412. The workstation illustrated in FIG. 4 may include random access memory (RAM) 414, read-only memory (ROM) 416, an I / O adapter 418 for connecting peripheral devices, such as a disk storage unit 420, to the bus 412, a user interface adapter 422 for connecting a keyboard 424, a mouse 426, speakers 428, a microphone 432, and / or other user interface devices, such as a touch screen or a digital camera (not shown), to the bus 412, a communications adapter 434 for connecting the workstation to a communications network 435 (e.g., a data processing network), and a display adapter 436 for connecting the bus 412 to a display device 438.
[0047] As an example, an operating system such as the MICROSOFT® WINDOWS® operating system (OS), MAC OS®, or UNIX® OS may reside on the workstation. In one embodiment, system 400 utilizes a POSIX®-based file system. It will be appreciated that other examples may be implemented on platforms and operating systems other than those described above. Such other examples may include operating systems written using Java®, XML, C, or C++, or a combination thereof, or other programming languages and object-oriented programming methodologies. Object-oriented programming (OOP), which is increasingly used to develop complex applications, may also be used.
[0048] 5 is a block diagram illustrating a distributed system 500 for answer span correction for performance improvement for an MRC model, according to one embodiment. In one embodiment, the system 500 includes a client device 510 (e.g., a mobile device, a smart device, a computing system, etc.), a cloud or resource sharing environment 520 (e.g., a public cloud computing environment, a private cloud computing environment, a data center, etc.), and a server 530. In one embodiment, the client device 510 is provided with cloud services from the server 530 through the cloud or resource sharing environment 520.
[0049] Instead of improving predictions of the answerability of a question given an extracted answer, as addressed by conventional systems, one or more embodiments address the problem that existing MRC systems tend to generate partially correct answers when presented with an answerable question. One embodiment provides an AI correction model that reviews the extracted answers in context and suggests corrections. One embodiment constructs training data for training such an AI correction model using the same labeled data on which the MRC model is trained. According to one embodiment, a corrector detects errors in the MRC model's predictions and then corrects the detected errors.
[0050] Figure 6 shows an example of an MRC system 600 for a multi-layer bidirectional transformer encoder (BERT) model 630. The BERT model 630 is a multi-layer bidirectional transformer encoder. Traditional neural machine translation primarily uses RNNs or CNNs as the model base in an encoder-decoder architecture. Attention-based transformer models abandon traditional RNN and CNN approaches. The attention mechanism is a form of fuzzy memory that contains the hidden state of the model. The model chooses to retrieve content from the memory. The attention mechanism reduces this problem by allowing the decoder to look back at the source sequence hidden state and then provide its weighted average as an additional input to the decoder. Using attention, the model selects the context that best fits the current node as input during the decoding phase. The transformer model uses an encoder-decoder architecture. The BERT model 630 is a deep bidirectional DNN model. The BERT model 630 applies bidirectional training of a transformer to language modeling. The transformer includes an encoder that reads text input and a decoder that generates predictions for the task. There are two stages to using the BERT model 630: pre-training and fine-tuning. During pre-training, the BERT model 630 is trained on unlabeled data across various pre-training tasks. For fine-tuning, the BERT model 630 is first initialized with pre-trained parameters, and all of the parameters are fine-tuned using labeled data from downstream tasks. Each downstream task has a separate Transformer (fine-tuned) model 625, even though they are initialized with the same pre-trained parameters.
[0051] The BERT model 630 pre-training stage includes a masked language model and next sentence prediction. For the masked language model, due to the bidirectional nature and effectiveness of the multilayer self-attention mechanism used by the BERT model 630, a certain percentage (e.g., 15%) of input tokens are randomly masked to train a deep bidirectional representation, and then the masked tokens are predicted. The final hidden vectors corresponding to the masked tokens are fed into an output softmax function across the vocabulary, similar to a standard language model (the softmax function transforms a vector of K real values into a vector of K real values that sum to 1). The masked language model target allows for the representation of left and right contexts for fusion, thereby enabling the pre-training of the deep bidirectional transformer. The BERT model 630 loss function only takes into account the prediction of masked values and ignores the prediction of unmasked words. For next sentence prediction, the BERT model 630 also pre-trains on the binarized next sentence prediction task, which can be very easily generated from any text corpus. To help the BERT model 630 distinguish between the two sentences in training, the input is processed before entering the BERT model 630 as follows: A classification [CLS] token 605 is inserted at the beginning of the question 610 (i.e., the first sentence or sentence A), and a separation [SEP] token 615 is inserted at the end of the question 610 and the context (second sentence or sentence B) 620. A sentence embedding (E) indicating the question 610 or the context 620 is added to each token (e.g., E [CLS] , E [SEP] ). Positional embedding (e.g., E1-E N , E'1-E' M ) is added to each token to indicate its position in the sequence.
[0052] The entire input sequence is passed through a Transformer model 625 to predict whether a context 620 is associated with a question 610. The output of the [CLS] token 605 is transformed into a 2x1 vector using a classification layer (a trained matrix of weights and biases). The probability of IsNextSequence is calculated using a softmax function. For each downstream natural language processing (NLP) task, the task-specific input and output are fed into a BERT model 630, and all parameters are fine-tuned end-to-end. At input, the question 610 and context 620 from pre-training may resemble sentence pairs in paraphrasing, hypothesis-premise pairs in entailment, question-clause pairs in question answering, etc. At output, the token representations are fed into an output layer for token-level tasks such as sequence tagging and question answering, and the [CLS] representations are fed into an output layer for classification (e.g., to output class labels C 635). The output layer generates the Transformer outputs T1 through T N 640 and the answer "Start & End" span position classifier 645, T [SEP] , T'1~T' M , and T [SEP] Includes:
[0053] FIG. 7 shows examples of a single answer result from a reader (e.g., reader 930 of FIG. 9 ; given a question and context) from a conventional MRC system, and also example answer results (given a question and context) from a reader-plus-collector pipeline (MRC answer span collector model 900 ( FIG. 9 )) according to one embodiment. The first example includes question 710, the results in context 715, the answer result from the reader using context (R) 716, and the answer result using context from the reader-plus-collector pipeline (R+C) 717. The second example includes question 720, the results in context 725, R 726, and R+C 727.
[0054] 8A shows a representative example of training data 800 for a conventional MRC model or system, divided into folds. The training data is divided or analyzed into n folds, fold 1 810 through fold n 820.
[0055] FIG. 8B shows a representative example 830 of how n−1 individual folds 835 are grouped to train separate MRC models (n MRC answer span corrector models 900 ( FIG. 9 )), which are used to generate predictions for the remaining folds 840, according to one embodiment. The n MRC answer span corrector models 900 are each trained on n−1 (n is an integer ≧2) different folds and used to generate predictions for the remaining folds 840. Combining the results from the n different models for the omitted folds generates an example system output for each example in the training set. These [question-context-true answer-system answer] tuples are the basis for constructing the training set for the answer span corrector models 900.
[0056] FIG. 9 shows a flow block diagram for the leader-plus-collector pipeline of the modified MRC answer span collector model 900, according to one embodiment. In one embodiment, the output of the leader model 930 is input to the collector (or collector model) 960. In one embodiment, the MRC model (leader model 930) includes a transformer-like encoder with two additional classification heads that select the beginning and end of the answer span, respectively. In this embodiment, the answer span collector (collector 960) also has a similar architecture. The collector 960 is trained on different data than the leader 930. The modified MRC answer span collector model 900 reviews the leader answer 940 (extracted answer) in context, suggests corrections, addresses related issues of improving the answer span, and outputs a corrected answer 970. In one embodiment, the leader answer 940 is generated by inputting a special delimiter token [T d ]950 and [T d ] 951 and utilizes a collector 960 (with a similar architecture to the original reader 930) that is trained to generate new accurate predictions.
[0057] In one embodiment, reader 930 is a baseline reader for the standard MRC task of answer extraction from passage 920 given question 910. Reader 930 uses a pre-trained transformer-based language model plus two classification heads that point to the beginning and end of the answer span. The entire network is then fine-tuned on the target MRC training data. In one embodiment, the input to collector 960 is a delimiter token [T] that creates the boundaries of the reader's prediction (reader answer 940). d ]950 and [T d ] 951, but the rest of the architecture is similar to the reader 930 input. In one embodiment, the modified MRC answer span corrector model 900 preferably keeps the answers that already match the ground truth (GT) spans intact and corrects the rest.
[0058] In one embodiment, reader 930 predictions are needed for the training set to generate training data for the collector 960. To obtain reader 930 predictions, one embodiment splits or parses the training set into five folds (e.g., see example 830 in Figure 8B), trains the reader 930 on four (i.e., n-1) of the folds, and obtains predictions for the remaining folds 840. This process is repeated five times to generate reader predictions (reader answers 940) for all (question, answer) pairs in the training set. These reader predictions (reader answers 940) and the original GT annotations are used to generate training examples for the collector 960. To create examples that do not require correction, a new example 921 is created from each original example (node 920), and the GT answer itself is separated by the input to indicate that no correction is required. For examples requiring correction, the top k incorrect predictions (k is a hyperparameter) of the leader 930 are used to create an example for each, where the input 925 is the span predicted by the leader 930 and the target is the GT. The presence of both the GT (correct) prediction and the incorrect prediction in the input data ensures that the collector 960 learns both to detect and correct the error in the leader 930 prediction.
[0059] 10A shows a table 1000 including results 1005 for answerable questions for the Natural Questions (NQ) MRC benchmark for the robustly-optimized BERT method (RoBERTa), results 1006 for an ensemble of two-reader methods, and results 1007 for a leader-plus-collector pipeline (or modified MRC answer span corrector model 900 shown in FIG. 9 ) method, according to one embodiment. In one exemplary embodiment, the modified MRC answer span corrector model 900 is evaluated on answerable questions in the development (dev) and test sets. To calculate exact matches for answerable test set questions, a system that always outputs answers and takes recall values from the leaderboard is used. Multilingual Question Answering (MLQA) includes examples in seven languages: English (en), Arabic (ar), German (de), Spanish (es), Hindi (hi), Vietnamese (vi), and Simplified Chinese (zh).
[0060] The NQ and MLQA readers fine-tune RoBERTa large and mBERT (cased, 104 languages) language models, respectively. The RoBERTa model is first fine-tuned on SQuAD2.0 and then on NQ. Results show that training on both answerable and unanswerable questions results in a more robust reader, even when evaluated on answerable questions only. The modified MRC answer span corrector model 900 uses the same underlying Transformer language model as the corresponding RoBERTa reader. Training data for the modified MRC answer span corrector model 900 is generated to generate examples requiring correction, and the two (k=2) highest-scoring incorrect reader predictions (the value of k is tuned for dev) are used. Because the goal is to completely correct any errors in the RoBERTA reader predictions, exact agreement (EM) is used as the evaluation metric. In one embodiment, the modified MRC answer span collector model 900 uses a common architecture for the reader 930 and collector 960, but its parameters are separate and trained independently. To compare to an equal-sized baseline, the ensemble system for NQ averages the output logits (predictions, not yet normalized) of two different RoBERTa readers. Averaging across three seeds yields the results in Table 1000. Result 1007 outperforms the ensemble of reader results 1006 by 0.7 points in the dev test. These results confirm that the correction goal fully complements the reader extraction goal and is fundamental to the overall performance gain for the modified MRC answer span collector model 900. Results for NQ answerable questions show that result 1007 for the modified MRC answer span collector model 900 improves by 1.6 points on the dev set and 1.3 points on the blind test set over result 1005 of the RoBERTa reader method.
[0061] FIG. 10B shows a table 1020 containing results for the MLQA MRC benchmark dataset using the reader-plus-corrector pipeline (the modified MRC answer span corrector model 900 shown in FIG. 9 ) when the paragraphs are in English and for the Generalized Cross-Lingual Transfer Task (G-XLT), according to one embodiment. Performance is compared in two settings: English paragraphs and any of the seven questions (En-Context results 1025), and G-XLT results 1030. Performance is averaged across all 49 (question, paragraph) language pairs, including seven languages (English, Arabic, German, Spanish, Hindi, Vietnamese, and Simplified Chinese). In the MLQA, a Fisher randomization test is used on the number of exact matches for a 158k example test set to verify the statistical significance of the results. Table 1020 shows that the reader-plus-collector pipeline (modified MRC answer span collector model 900) performed significantly better than the baseline reader, p<0.01.
[0062] FIG. 10C shows a table 1040 containing the difference in exact match scores for all 49 MLQA language pair combinations by using a reader-plus-corrector pipeline (modified MRC answer span corrector model 900 and corrector 960 (FIG. 9)) according to one embodiment. The results in table 1040 show the change in exact match with corrector 960 for all language pair combinations in the MLQA test set. The last row of table 1040 shows the gain for each paragraph language, averaged across questions in different languages. On average, corrector 960 gives a performance gain for paragraphs in all languages (last row). The highest gain is observed in the English context, which is expected since the corrector 960 model is trained to correct English answers in context. However, we also find that the reader-plus-corrector pipeline (modified MRC answer span corrector model 900) approach generalizes well to other languages in the zero-shot setting, as exact matches are improved in 40 of the 49 language pairs.
[0063] In one embodiment, changes made by the collector 960 of the leader-plus-collector pipeline (modified MRC answer span collector model 900) to the leader's predictions on the NQ dev set represent 13% of the leader model predictions overall. Of all changes, 24% resulted in corrections to incorrect or partially correct answers to GT answers, and 10% replaced the original correct answer with a new correct answer (due to multiple GT annotations in the NQ). In 57% of these cases, the change did not correct the error. However, upon closer inspection, it is observed that the F1 score (a measure of test accuracy) increased in many of these cases (30%) compared to when it decreased (15%). Finally, 9% of changes introduced errors in the correct leader predictions.
[0064] In one embodiment, the percentage of errors corrected in each of the three error categories—partial coverage, verbosity, and duplication—was 9%, 38%, and 22%, respectively. Corrections were made in all categories, but more in verbosity and duplication than in partial coverage, indicating the potential for the corrector 960 (FIG. 9) to learn the concepts of minimality and syntactic structure better than adequacy. In one embodiment, processing using a reader-plus-corrector pipeline (modified MRC answer span corrector model 900 (FIG. 9)) corrects the predictions of a state-of-the-art English reader 930 in various error categories. Experiments using one embodiment show that this approach also generalizes well to multilingual and cross-lingual MRC in seven languages.
[0065] FIG. 11 shows a block diagram of a process 1100 for answer span correction to improve performance for MRC, according to one embodiment. In one embodiment, at block 1110, process 1100 receives a plurality of questions at a natural language question answering system (e.g., an MRC model including reader 930 of FIG. 9 ) by a computing device (e.g., from computing node 10 of FIG. 1 , hardware and software layer 60 of FIG. 2 , processing system 300 of FIG. 3 , system 400 of FIG. 4 , system 500 of FIG. 5 , a reader-plus-collector pipeline (modified MRC answer span collector model 900 of FIG. 9 ), etc.). At block 1120, process 1100 generates, by the computing device, a plurality of answers to the plurality of questions. At block 1130, process 1100 further constructs a new training set with the generated plurality of answers, and each answer is compared to a corresponding question in the plurality of questions. At block 1140, the process 1100 further augments, by the computing device, the new training set with tokens that delimit one or more spans of the generated plurality of answers. At block 1150, the process 1100 further trains a new natural language question answering system (e.g., a leader-plus-collector pipeline with collector 960 or modified MRC answer span collector model 900 of FIG. 9 ) with the new augmented training set.
[0066] In one embodiment, process 1100 may further include a feature in which the answer span of a natural language question-answering system's reader model (e.g., reader 930 of FIG. 9 ) is corrected using a new augmented training set for the new natural language question-answering system.
[0067] In one embodiment, the process 1100 may further include the feature that a new natural language question answering system that corrects the answer span is cascaded after the natural language question answering system.
[0068] In one embodiment, process 1100 may further include a feature of determining whether to correct the answer span by the new natural language question answering system that corrects the answer span, and further correcting the answer span based on which a collector model (e.g., collector 960 of FIG. 9 ) of the new natural language question answering system generates a refined answer span.
[0069] In one embodiment, the process 1100 may further include the collector model using a neural network to generate the refined answer span.
[0070] In one embodiment, process 1100 may further include the feature of, upon determining that the answer span should not be corrected, creating new answer examples from each original answer of the multiple answers based on segmenting the GT answers as input to the new natural language question answering system, indicating that no correction is necessary.
[0071] In one embodiment, the process 1100 may further include the feature of using a plurality of the top-k incorrect answer predictions to create an example answer for each incorrect answer prediction, where the input is the predicted answer span of the leader model and the target answer is the GT answer.
[0072] In one embodiment, the process 1100 may include a feature where the generated answers include predicted answers, and one or more tokens mark the predicted answers in the context to predict new answers by the collector model.
[0073] In some embodiments, the aforementioned features contribute to the benefit of significantly improving state-of-the-art natural language reader predictions in various error categories through correction. In MRC systems, some features contribute to the benefit of answer correction, since existing MRC systems tend to generate partially correct answers when presented with answerable questions. Some features contribute to the benefit of detecting errors in the MRC model's predictions and correcting the detected errors. Furthermore, the features contribute to the benefit of generating answer spans that improve GT agreement, thus improving the quality of the MRC output answers.
[0074] One or more embodiments may be a system, method, or computer program product, or combination thereof, at any possible level of technical detail of integration. The computer program product may include a computer-readable storage medium having computer-readable program instructions for causing a processor to implement aspects of the embodiments.
[0075] A computer-readable storage medium may be a tangible device that holds and stores instructions for use by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the above. A non-exhaustive list of more specific examples of computer-readable storage media includes portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory stick, floppy disk, mechanically encoded devices such as punch cards or ridge-in-groove structures with instructions recorded on them, and any suitable combination of the above. As used herein, computer-readable storage media should not be construed as signals that are transitory in nature, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission medium (e.g., light pulses passing through fiber optic cable), or electrical signals transmitted through wires.
[0076] The computer-readable program instructions described herein may be downloaded from a computer-readable storage medium to each computing / processing device or to an external computer or storage device via a network, such as the Internet, a local area network, a wide area network, or a wireless network, or a combination thereof. The network may include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, or edge servers, or a combination thereof. A network adapter card or network interface within each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium within the respective computing / processing device.
[0077] Computer-readable program instructions for carrying out operations of an embodiment may be assembler instructions, instruction set architecture (ISA) instructions, machine language instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, configuration data for integrated circuits, or source or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, and procedural programming languages such as the "C" programming language or similar programming languages. The computer-readable program instructions may execute entirely on the user's computer, partially on the user's computer as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be to an external computer (e.g., through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA) may execute computer readable program instructions by utilizing state information of the computer readable program instructions to individualize the electronic circuitry to perform aspects of the present embodiments.
[0078] Aspects of the embodiments are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0079] Such computer-readable program instructions may be provided to a processor of a computer or other programmable data processing apparatus, such that the instructions, executed by the processor of the computer or other programmable data processing apparatus, produce means for implementing the functions / acts specified in one or more blocks of the flowcharts and / or block diagrams, to create a machine. Such computer-readable program instructions may also be stored in a computer-readable storage medium that can direct a computer, programmable data processing apparatus, or other device, or combination thereof, to function in a particular manner, such that the computer-readable storage medium storing the instructions comprises an article of manufacture containing instructions that implement aspects of the functions / acts specified in one or more blocks of the flowcharts and / or block diagrams.
[0080] The computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device, causing the computer, other programmable apparatus, or other device to perform a series of operational steps to create a computer-implemented process, such that the instructions, which execute on the computer, other programmable apparatus, or other device, implement the functions / operations specified in one or more blocks of the flowcharts and / or block diagrams.
[0081] The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments. In this regard, each block in the flowcharts or block diagrams may represent a module, segment, or portion of instructions, including one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions described in the blocks may occur in an order other than that described in the figures. For example, two blocks shown in succession may actually be performed as a single step, executed concurrently, executed approximately concurrently, with partial or full time overlap, or the blocks may sometimes be executed in the reverse order, depending on the functionality involved. It will also be noted that each block in the block diagrams and / or flowchart diagrams, and combinations of blocks in the block diagrams and / or flowchart diagrams, may be implemented by a dedicated hardware-based system that performs the specified function or operation or executes a combination of dedicated hardware and computer instructions.
[0082] References to a singular element in the claims shall mean "one or more," not "one" unless specifically stated otherwise. All structural and functional equivalents to the elements of the foregoing exemplary embodiments known or later known to those skilled in the art are intended to be encompassed by the claims. No claim element herein shall be construed under the provisions of the sixth paragraph of 35 U.S.C. 112 unless the element is expressly recited using the phrase "means for" or "step for."
[0083] The terms used herein are for the purpose of describing particular embodiments only and are not intended to be limiting. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms unless the context clearly dictates otherwise. It will be further understood that as used herein, the terms "comprises" and / or "comprising" specify the presence of stated features, integers, steps, operations, elements, or components, or combinations thereof, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, or components, or groups thereof, or combinations thereof.
[0084] The corresponding structure, material, acts, and equivalents of all means or steps and functional elements in the following claims are intended to include any structure, material, or acts for performing a function in combination with other claimed elements as specifically claimed. The description of the present embodiments has been presented for purposes of illustration and description and is not intended to be exhaustive or limited to the embodiments in the form disclosed. Many modifications and variations will be apparent to those skilled in the art without departing from the scope of the embodiments. The embodiments were chosen and described to best explain the principles and practical applications of the embodiments, and to enable those skilled in the art to understand the embodiments with various modifications made to suit the particular uses contemplated.
Claims
1. 1. A method of using a computing device to improve answers generated by a natural language question-answering system, comprising: receiving, by a computing device, a plurality of questions in a natural language question answering system; generating, by the computing device, a plurality of answers to the plurality of questions; constructing, by the computing device, a new training set with the generated answers, wherein each answer is compared with a corresponding question from the plurality of questions; augmenting, by the computing device, the new training set by delimiting one or more spans of the generated plurality of answers with one or more tokens, the tokens marking boundaries by indicating the beginning and end of answers; training, by said computing device, a new natural language question answering system with the new augmented training set; A method comprising:
2. correcting answer spans of a reader model of the natural language question answering system using the new augmented training set for the new natural language question answering system. The method of claim 1 further comprising:
3. cascading the new natural language question answering system that corrects the answer span behind the natural language question answering system; The method of claim 2 further comprising:
4. determining whether the answer span should be corrected by the new natural language question answering system; 4. The method of claim 3, wherein a collector model of the new natural language question answering system corrects the answer span based on which it generates a refined answer span.
5. 5. The method of claim 4, wherein the collector model uses a neural network to generate the refined answer span.
6. and upon determining that the answer span should not be corrected, creating new example answers from each original answer of the plurality of answers based on segmenting ground truth answers as input to the new natural language question answering system, to indicate that no correction is necessary. The method of claim 4 further comprising:
7. 7. The method of claim 6, further comprising: using a plurality of top-k incorrect answer predictions to create an example answer for each incorrect answer prediction, wherein the input is a predicted answer span of the leader model and a target answer is the GT answer.
8. 6. The method of claim 5, wherein the generated answers include predicted answers, and the one or more tokens mark the predicted answers in a context for predicting new answers by the collector model.
9. A computer program product for causing a computer to carry out the method according to any one of claims 1 to 8.
10. A computer-readable storage medium having the computer program according to claim 9 recorded thereon.
11. 1. An apparatus comprising: a memory configured to store instructions; Execute the instructions, receiving a plurality of questions in a natural language question answering system; generating a plurality of answers to the plurality of questions; constructing a new training set with the generated answers, wherein each answer is compared with a corresponding question from the plurality of questions; augmenting the new training set by delimiting one or more spans of the generated plurality of answers with one or more tokens, the tokens marking boundaries by indicating the beginning and end of answers; Training a new natural language question answering system on the new augmented training set a processor configured to: An apparatus comprising:
12. The processor executes the instructions to correcting answer spans of a reader model of the natural language question answering system using the new augmented training set for the new natural language question answering system; Cascading the new natural language question answering system that corrects the answer span behind the natural language question answering system. The apparatus of claim 11 further configured to:
13. The processor executes the instructions to and further configured to determine whether to correct the answer span using the new natural language question answering system for correcting the answer span; 13. The apparatus of claim 12, wherein a collector model of the new natural language question answering system corrects the answer spans based on which it generates refined answer spans, and wherein the collector model uses a neural network to generate the refined answer spans.
14. The processor executes the instructions to In response to a determination that the answer span should not be corrected, creating new answer examples from each original answer of the plurality of answers based on segmenting ground truth answers as input to the new natural language question answering system, and indicating that no correction is necessary; and 14. The apparatus of claim 13, further configured to: use a plurality of top-k incorrect answer predictions to create example answers for each incorrect answer prediction, wherein the input is a predicted answer span of the reader model and a target answer is the GT answer.
15. 14. The apparatus of claim 13, wherein the generated answers include predicted answers, and the one or more tokens mark the predicted answers in a context for predicting new answers by the collector model.
Citation Information
Patent Citations
Question and answer matching processing method and device, question and answer matching model training method and device, equipment and storage medium
CN110442675A
Question and answer matching method and device, model training method and device, equipment and storage medium
CN111046158A
Multi-paragraph reading comprehension candidate answer sorting method and device
CN111460089A
Text classification system and method
CN111563167A
Question and answer system, question answering processing method and question answering program
JP2007219955A