×

Self-learning statistical natural language processing for automatic production of virtual personal assistants

  • US 9,798,719 B2
  • Filed: 10/24/2016
  • Issued: 10/24/2017
  • Est. Priority Date: 07/25/2013
  • Status: Expired due to Fees
First Claim
Patent Images

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 corresponds to a token of 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 lattice of candidate alternatives based on the assigned 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 an unsupervised 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 unsupervised algorithm comprises to;

    (i) identify predefined named entities and relationships in a first group of predefined sample queries in the corpus;

    (ii) cluster the predefined sample queries using an unsupervised clustering algorithm to generate a plurality of clusters; and

    (iii) assign a user intent and slots to each cluster of the plurality of clusters.

View all claims
  • 0 Assignments
Timeline View
Assignment View
    ×
    ×