IP Library Granted Patent US 10,692,488
Granted Patent B2
US 10,692,488 · App. 16/549,893 · Granted Jun 23, 2020

Implementing a whole sentence recurrent neural network language model for natural language processing

Inventors: Yinghui Huang (New York, NY); Abhinav Sethy (Chappaqua, NY); Kartik Audhkhasi (White Plains, NY); Bhuvana Ramabhadran (Mount Kisco, NY)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G10L15/197G06N3/08G06N7/005G10L15/063G10L15/16G10L15/22
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,692,488
App. No.
16/549,893
Granted
Jun 23, 2020
Kind
B2
Abstract

A computer selects a test set of sentences from among sentences applied to train a whole sentence recurrent neural network language model to estimate the probability of likelihood of each whole sentence processed by natural language processing being correct. The computer generates imposter sentences from among the test set of sentences by substituting one word in each sentence of the test set of sentences. The computer generates, through the whole sentence recurrent neural network language model, a first score for each sentence of the test set of sentences and at least one additional score for each of the imposter sentences. The computer evaluates an accuracy of the natural language processing system in performing sequential classification tasks based on an accuracy value of the first score in reflecting a correct sentence and the at least one additional score in reflecting an incorrect sentence.

Claims (52)

1. A method, comprising:

selecting, by a computer system, a test set of sentences from among a plurality of sentences applied to train a whole sentence recurrent neural network language model to estimate the probability of likelihood of each whole sentence processed by natural language processing being correct;

generating, by the computer system, a plurality of imposter sentences from among the test set of sentences by substituting one word in each sentence of the test set of sentences;

generating, by the computer system, through the whole sentence recurrent neural network language model, a first score for each sentence of the test set of sentences and at least one additional score for each of the plurality of imposter sentences; and

evaluating, by the computer system, an accuracy of the natural language processing system in performing sequential classification tasks based on an accuracy value of the first score in reflecting a correct sentence and the at least one additional score in reflecting an incorrect sentence.

2. The method according to claim 1 , wherein generating, by the computer system, the plurality of imposter sentences from among the test set of sentences by substituting one word in each sentence of the test set of sentences further comprises:

applying, by the computer system, a noise contrastive estimation sampler against each sentence of the test set of sentences to generate the plurality of imposter sentences.

3. The method according to claim 1 , wherein generating, by the computer system, the plurality of imposter sentences from among the test set of sentences by substituting one word in each sentence of the test set of sentences further comprises:

randomly selecting, by the computer system, a plurality of positions in each sentence of the test set of sentences to substitute one word in each sentence of the test set of sentences.

4. The method according to claim 1 , further comprising:

applying, by the computer system, each separate set of each sentence of the test set of sentences and a selection of imposter sentences of the plurality of imposter sentences generated for each sentence to the whole sentence recurrent neural network language model.

5. The method according to claim 1 , wherein evaluating, by the computer system, the accuracy of the natural language processing system in performing sequential classification tasks based on the accuracy value of the first score in reflecting the correct sentence and the at least one additional score in reflecting the incorrect sentence further comprises:

applying, by the computer system, a linear boundary to classify the first score and the at least one additional score in one of two classes in a linear space, wherein the two classes represent the incorrect sentence and the correct sentence; and

evaluating, by the computer system, the accuracy of the natural language processing system in performing sequential classification tasks based on the accuracy value of the classifications of the first score in the class of the correct sentence and the at least one additional score as the incorrect sentence.

6. The method according to claim 1 , further comprising:

providing, by a computer system, the whole sentence recurrent neural network language model on a recurrent neural network long short-term memory architecture for estimating the probability of likelihood of each whole sentence processed by natural language processing being correct.

7. The method according to claim 1 , wherein selecting, by the computer system, the test set of sentences from among the plurality of sentences applied to train the whole sentence recurrent neural network language model to estimate the probability of likelihood of each whole sentence processed by natural language processing being correct further comprises:

selecting, by the computer system, the test set of sentences from among the plurality of sentences comprising one or more of a palindrome, a series of lexicographically ordered words, and expressing dates.

8. A computer system comprising one or more processors, one or more computer-readable memories, one or more computer-readable storage devices, and program instructions, stored on at least one of the one or more storage devices for execution by at least one of the one or more processors via at least one of the one or more memories, the stored program instructions comprising:

program instructions to select a test set of sentences from among a plurality of sentences applied to train a whole sentence recurrent neural network language model to estimate the probability of likelihood of each whole sentence processed by natural language processing being correct;

program instructions to generate a plurality of imposter sentences from among the test set of sentences by substituting one word in each sentence of the test set of sentences;

program instructions to generate through the whole sentence recurrent neural network language model, a first score for each sentence of the test set of sentences and at least one additional score for each of the plurality of imposter sentences; and

program instructions to evaluate an accuracy of the natural language processing system in performing sequential classification tasks based on an accuracy value of the first score in reflecting a correct sentence and the at least one additional score in reflecting an incorrect sentence.

9. The computer system according to claim 8 , wherein program instructions to generate the plurality of imposter sentences from among the test set of sentences by substituting one word in each sentence of the test set of sentences further comprise:

program instructions to apply a noise contrastive estimation sampler against each sentence of the test set of sentences to generate the plurality of imposter sentences.

10. The computer system according to claim 8 , wherein program instructions to generate the plurality of imposter sentences from among the test set of sentences by substituting one word in each sentence of the test set of sentences further comprise:

program instructions to randomly select a plurality of positions in each sentence of the test set of sentences to substitute one word in each sentence of the test set of sentences.

11. The computer system according to claim 8 , further comprising:

program instructions to apply each separate set of each sentence of the test set of sentences and a selection of imposter sentences of the plurality of imposter sentences generated for each sentence to the whole sentence recurrent neural network language model.

12. The computer system according to claim 8 , wherein program instructions to evaluate the accuracy of the natural language processing system in performing sequential classification tasks based on the accuracy value of the first score in reflecting the correct sentence and the at least one additional score in reflecting the incorrect sentence further comprise:

program instructions to apply a linear boundary to classify the first score and the at least one additional score in one of two classes in a linear space, wherein the two classes represent the incorrect sentence and the correct sentence; and

program instructions to evaluate the accuracy of the natural language processing system in performing sequential classification tasks based on the accuracy value of the classifications of the first score in the class of the correct sentence and the at least one additional score as the incorrect sentence.

13. The computer system according to claim 8 , further comprising:

program instructions to provide the whole sentence recurrent neural network language model on a recurrent neural network long short-term memory architecture for estimating the probability of likelihood of each whole sentence processed by natural language processing being correct.

14. The computer system according to claim 8 , wherein program instructions to select the test set of sentences from among the plurality of sentences applied to train the whole sentence recurrent neural network language model to estimate the probability of likelihood of each whole sentence processed by natural language processing being correct further comprise:

program instructions to select the test set of sentences from among the plurality of sentences comprising one or more of a palindrome, a series of lexicographically ordered words, and expressing dates.

15. A computer program product comprises a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a computer to cause the computer to:

select, by a computer, a test set of sentences from among a plurality of sentences applied to train a whole sentence recurrent neural network language model to estimate the probability of likelihood of each whole sentence processed by natural language processing being correct;

generate, by the computer, a plurality of imposter sentences from among the test set of sentences by substituting one word in each sentence of the test set of sentences;

generate, by the computer, through the whole sentence recurrent neural network language model, a first score for each sentence of the test set of sentences and at least one additional score for each of the plurality of imposter sentences; and

evaluate, by the computer, an accuracy of the natural language processing system in performing sequential classification tasks based on an accuracy value of the first score in reflecting a correct sentence and the at least one additional score in reflecting an incorrect sentence.

16. The computer program product according to claim 15 , further comprising the program instructions executable by a computer to cause the computer to:

apply, by the computer, a noise contrastive estimation sampler against each sentence of the test set of sentences to generate the plurality of imposter sentences.

17. The computer program product according to claim 15 , further comprising the program instructions executable by a computer to cause the computer to:

randomly select, by the computer, a plurality of positions in each sentence of the test set of sentences to substitute one word in each sentence of the test set of sentences.

18. The computer program product according to claim 15 , further comprising the program instructions executable by a computer to cause the computer to:

apply, by the computer, each separate set of each sentence of the test set of sentences and a selection of imposter sentences of the plurality of imposter sentences generated for each sentence to the whole sentence recurrent neural network language model.

19. The computer program product according to claim 15 , further comprising the program instructions executable by a computer to cause the computer to:

apply, by the computer, a linear boundary to classify the first score and the at least one additional score in one of two classes in a linear space, wherein the two classes represent the incorrect sentence and the correct sentence; and

evaluate, by the computer, the accuracy of the natural language processing system in performing sequential classification tasks based on the accuracy value of the classifications of the first score in the class of the correct sentence and the at least one additional score as the incorrect sentence.

20. The computer program product according to claim 15 , further comprising the program instructions executable by a computer to cause the computer to:

provide, by the computer, the whole sentence recurrent neural network language model on a recurrent neural network long short-term memory architecture for estimating the probability of likelihood of each whole sentence processed by natural language processing being correct.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2019
From: HUANG, YINGHUI; SETHY, ABHINAV; AUDHKHASI, KARTIK; RAMABHADRAN, BHUVANA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 050153/0743 →
Continuity (2)
Continuation 15954399 · Apr 16, 2018
Related Publication 20200013393A1 · Jan 9, 2020