Self-learning statistical natural language processing for automatic production of virtual personal assistants
First Claim
1. A computing device for interpreting natural language requests, the computing device comprising:
- a semantic compiler module to generate a semantic model as a function of a corpus of predefined requests, wherein the semantic model includes a plurality of mappings between a natural language request and a semantic representation of the natural language request, wherein the semantic representation identifies a user intent and zero or more slots associated with the user intent; and
a request decoder module to;
(i) generate, using the semantic model, a lattice of candidate alternatives indicative of a natural language request, wherein each candidate alternative represents a token of the natural language request, and wherein the lattice comprises a plurality of routes, wherein each route represents the natural language request;
(ii) assign a composite confidence weight to each candidate alternative as a function of the semantic model;
(iii) determine an optimal route through the candidate alternative lattice from the plurality of routes based on the composite confidence weight; and
(iv) generate a semantic representation of the natural language request as a function of the candidate alternatives of the optimal route;
wherein to generate the semantic model comprises to;
(i) identify a contextual semantic feature in the corpus using a semi-supervised algorithm, wherein the contextual semantic feature comprises a sequence of lexical sets associated with a user intent and zero or more slots associated with the user intent;
(ii) determine a first probability of the contextual semantic feature given the user intent; and
(iii) determine a normalized probability of the user intent as a function of a rate of occurrence of the contextual semantic feature in the corpus; and
wherein to identify the contextual semantic feature using the semi-supervised algorithm comprises to;
(i) tag a first group of predefined sample queries in the corpus to identify user intents and slots;
(ii) extract the contextual semantic feature from the sample queries;
(iii) analyze, using the semantic model, a second group of predefined sample queries in the corpus;
(iv) extract additional contextual semantic features in response to analyzing the second group of predefined sample queries; and
(v) update the first probability and the normalized probability in response to analyzing the second group of predefined sample queries.
0 Assignments
0 Petitions
Accused Products
Abstract
Technologies for natural language request processing include a computing device having a semantic compiler to generate a semantic model based on a corpus of sample requests. The semantic compiler may generate the semantic model by extracting contextual semantic features or processing ontologies. The computing device generates a semantic representation of a natural language request by generating a lattice of candidate alternative representations, assigning a composite weight to each candidate, and finding the best route through the lattice. The composite weight may include semantic weights, phonetic weights, and/or linguistic weights. The semantic representation identifies a user intent and slots associated with the natural language request. The computing device may perform one or more dialog interactions based on the semantic request, including generating a request for additional information or suggesting additional user intents. The computing device may support automated analysis and tuning to improve request processing. Other embodiments are described and claimed.
-
Citations
21 Claims
-
1. A computing device for interpreting natural language requests, the computing device comprising:
-
a semantic compiler module to generate a semantic model as a function of a corpus of predefined requests, wherein the semantic model includes a plurality of mappings between a natural language request and a semantic representation of the natural language request, wherein the semantic representation identifies a user intent and zero or more slots associated with the user intent; and a request decoder module to;
(i) generate, using the semantic model, a lattice of candidate alternatives indicative of a natural language request, wherein each candidate alternative represents a token of the natural language request, and wherein the lattice comprises a plurality of routes, wherein each route represents the natural language request;
(ii) assign a composite confidence weight to each candidate alternative as a function of the semantic model;
(iii) determine an optimal route through the candidate alternative lattice from the plurality of routes based on the composite confidence weight; and
(iv) generate a semantic representation of the natural language request as a function of the candidate alternatives of the optimal route;wherein to generate the semantic model comprises to;
(i) identify a contextual semantic feature in the corpus using a semi-supervised algorithm, wherein the contextual semantic feature comprises a sequence of lexical sets associated with a user intent and zero or more slots associated with the user intent;
(ii) determine a first probability of the contextual semantic feature given the user intent; and
(iii) determine a normalized probability of the user intent as a function of a rate of occurrence of the contextual semantic feature in the corpus; andwherein to identify the contextual semantic feature using the semi-supervised algorithm comprises to;
(i) tag a first group of predefined sample queries in the corpus to identify user intents and slots;
(ii) extract the contextual semantic feature from the sample queries;
(iii) analyze, using the semantic model, a second group of predefined sample queries in the corpus;
(iv) extract additional contextual semantic features in response to analyzing the second group of predefined sample queries; and
(v) update the first probability and the normalized probability in response to analyzing the second group of predefined sample queries. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for interpreting natural language requests, the method comprising:
-
generating, by a computing device, a semantic model as a function of a corpus of predefined requests, wherein the semantic model includes a plurality of mappings between a natural language request and a semantic representation of the natural language request, wherein the semantic representation identifies a user intent and zero or more slots associated with the user intent; generating, by the computing device using the semantic model, a lattice of candidate alternatives indicative of a natural language request, wherein each candidate alternative represents a token of the natural language request, and wherein the lattice comprises a plurality of routes, wherein each route represents the natural language request; assigning, by the computing device, a composite confidence weight to each candidate alternative as a function of the semantic model; determining, by the computing device, an optimal route through the candidate alternative lattice from the plurality of routes based on the composite confidence weight; and generating, by the computing device, a semantic representation of the natural language request as a function of the candidate alternatives of the optimal route; wherein generating the semantic model comprises;
(i) identifying a contextual semantic feature in the corpus using a semi-supervised algorithm, wherein the contextual semantic feature comprises a sequence of lexical sets associated with a user intent and zero or more slots associated with the user intent;
(ii) determining a first probability of the contextual semantic feature given the user intent; and
(iii) determining a normalized probability of the user intent as a function of a rate of occurrence of the contextual semantic feature in the corpus; andwherein identifying the contextual semantic feature using the semi-supervised algorithm comprises;
(i) tagging a first group of predefined sample queries in the corpus to identify user intents and slots;
(ii) extracting the contextual semantic feature from the sample queries;
(iii) analyzing, using the semantic model, a second group of predefined sample queries in the corpus;
(iv) extracting additional contextual semantic features in response to analyzing the second group of predefined sample queries; and
(v) updating the first probability and the normalized probability in response to analyzing the second group of predefined sample queries. - View Dependent Claims (13, 14, 15, 16)
-
-
17. One or more non-transitory computer-readable storage media comprising a plurality of instructions that in response to being executed cause a computing device to:
-
generate a semantic model as a function of a corpus of predefined requests, wherein the semantic model includes a plurality of mappings between a natural language request and a semantic representation of the natural language request, wherein the semantic representation identifies a user intent and zero or more slots associated with the user intent; generate, using the semantic model, a lattice of candidate alternatives indicative of a natural language request, wherein each candidate alternative represents a token of the natural language request, and wherein the lattice comprises a plurality of routes, wherein each route represents the natural language request; assign a composite confidence weight to each candidate alternative as a function of the semantic model; determine an optimal route through the candidate alternative lattice from the plurality of routes based on the composite confidence weight; and generate a semantic representation of the natural language request as a function of the candidate alternatives of the optimal route; wherein to generate the semantic model comprises to;
(i) identify a contextual semantic feature in the corpus using a semi-supervised algorithm, wherein the contextual semantic feature comprises a sequence of lexical sets associated with the user intent and zero or more slots associated with the user intent;
(ii) determine a first probability of the contextual semantic feature given the user intent; and
(iii) determine a normalized probability of the user intent as a function of a rate of occurrence of the contextual semantic feature in the corpus; andwherein to identify the contextual semantic feature using the semi-supervised algorithm comprises to;
(i) tag a first group of predefined sample queries in the corpus to identify user intents and slots;
(ii) extract the contextual semantic feature from the sample queries;
(iii) analyze, using the semantic model, a second group of predefined sample queries in the corpus;
(iv) extract additional contextual semantic features in response to analyzing the second group of predefined sample queries; and
(v) update the first probability and the normalized probability in response to analyzing the second group of predefined sample queries. - View Dependent Claims (18, 19, 20, 21)
-
Specification