Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 02/22/2023 , and 06/09/2025 are considered by the examiner.
Drawings
The drawing submitted on 02/22/2023 is considered by the examiner.
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 12/11/2025 has been entered.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1, 8, and 15, rejected under 35 U.S.C. 101 because the claimed invention is directed to abstract idea without significantly more. The claim(s) recite(s) analyzing a natural language utterance from a user to identify one or more modification using a knowledge-based modification based on previous user modification to a previous user utterance, to determine one or more computing tasks and executing the modified one or more computing tasks.
The limitation analyzing, identifying, determining a natural language utterance from a user using a knowledge-based modification based on previous user modification to a previous user utterance, and executing the modified one or more computing tasks, as drafted, is a process that, under its broadest reasonable interpretations, covers performance of the limitation in the mind but recitation of generic computer components. That is, other than reciting “analyzing using a machine learning model” nothing in the claim element precludes the step from practically being performed in the mind. For example, but for the “analyzing using a machine learning model” language, “analyzing” in the context of this claim encompasses a first person receiving a verbal request “find a restaurant nearby for lunch” from second person and thinking the request in mind to generate a response using a computer. Similarly, the limitation of “analyzing the natural language utterance to identify one or more common n-grams, from prior attempt records of the knowledge base, that are similar to the natural language utterance; identifying, based on the one or more common n-grams, one or more modifications to the natural language utterance that are based on previous user modifications to a previous user utterance; receiving an indication that the user accepted at least one modification of the one or more modifications, wherein the at least one modification modifies the one or more computing tasks; and executing the modified one or more computing tasks”, covers performance of the limitation in the mind but for the recitation of generic computer components. For example, but for the “analyzing using a machine learning model” language “analyzing”, “identifying”, “receiving”, and “executing” in the context of this claim encompasses the first person thinking for a seafood restaurant at the closest location, since in the past, the second person similar request was changed for a seafood restaurant that is close to the first-person location. The first person confirm the seafood restaurant choice with the second person by asking “would you like to go to a seafood restaurant nearby”. After receiving the response from the second person “yes”, the first person locate a nearby seafood restaurant that is closest to the first-person location, using first person smartphone and GPS of the smartphone. If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer components, then it falls withing the “Mental Process” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
This judicial exception is not integrated into a practical application. In particular, the claim only recites one additional element- executing the modified one or more computing task, using a generic computer component (natural language processor) to perform the execution ([0001] Present invention embodiments relate to natural language processing, and more specifically, to executing computing tasks using a natural language processing model.). The use of machine learning model generally apply the abstract idea without limiting how the use of the machine learning model functions. The limitation only recite the outcomes of “analyzing”, “identifying”, “receiving”, a natural language utterance from a user and “executing” modified utterance to perform a computing task without any details about how the use of the machine learning model contributed or applied to the outcomes. Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. Thus, the use of a machine learning model is recited at a high level of generality (i.e., as a generic processor performing a generic computer function of executing a person’s modified request) such that it amounts no more than mere instructions to apply the exception using a generic computer component, or merely uses a computer tool i.e. “using a machine learning model” to perform an abstract idea (See MPEP 2106.05 (f)). Even when Mere instructions to apply the exception using a generic computer component cannot provide an inventive concept.
As explained above, the invention amounts to mere instruction to apply an exception, cannot provide an invention concept. Even when considered in combination claim as a whole, the claims recite mere instructions to apply the exception using a generic computer component. It is also well-understood, routine and conventional as the background explains “Typically, an NLP model is designed so that users may interact with the model in a conversational and natural way, without having to learn specific commands or syntax.”. The claims 1, 8, and 15, thus are not patent eligible.
With respect to dependent Claims, 3-7, 10-14, and 17-23, claim(s) similarly do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above (for independent claims) with respect to integration of the abstract idea into a practical application, the additional element recites in the dependent claims 3-7, 10-14, and 17-23, amounts to no more than mere instructions to apply the exception using a generic computer component, i.e. using a machine learning model. Mere instructions to apply an exception using a generic computer component cannot provide an inventive concept. The claims 3-7, 10-14, and 17-23, similarly not patent eligible.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claim(s) 1, 3-8, 10-15, and 17-23, are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Gruber et al.(AU 2014/233517 A1).
Regarding Claims 1, 8, and 15, Gruber et al. teaches: A computer-implemented method of analyzing a user input via natural language processing comprising ([0058] The speech-to-text processing module 330 receives speech input (e.g., a user utterance captured in a voice recording) through the 1/0 processing module 328. In some embodiments, the speech-to-text processing module 330 uses various acoustic and language models to recognize the speech input as a sequence of phonemes, and ultimately, a sequence of words or tokens written in one or more languages.): analyzing using a machine learning model, a natural language utterance from a user to determine one or more computing tasks, ([0060] The natural language processing module 332 ("natural language processor") of the digital assistant takes the sequence of words or tokens ("token sequence") generated by the speech-to-text processing module 330, and attempts to associate the token sequence with one or more "actionable intents" recognized by the digital assistant. An "actionable intent" represents a task that can be performed by the digital assistant, and has an associated task flow implemented in the task flow models 354. The effectiveness of the digital assistant, however, is also dependent on the assistant's ability to infer the correct "actionable intent(s)" from the user request expressed in natural language.), wherein the machine learning model is trained to determine the one or more computing tasks from a constrained set of computing tasks(infer the correct "actionable intent(s)" ) based at least on a knowledge base and the natural language utterance ( [0060]The effectiveness of the digital assistant, however, is also dependent on the assistant's ability to infer the correct "actionable intent(s)" from the user request expressed in natural language. [0087] In many instances, a digital assistant is able to infer a user's intent based on a speech input in the form of a request from a user and fulfill the user's request either by providing information sought by the user request or by performing a task according to the user request. Sometimes, however, the digital assistant fails to provide a satisfactory response to the user request for information or action. The reasons for the failures can be many, such as imperfect speech recognition, unrecognized terms and concepts in the user request, incorrect or incomplete information and inadequate capability in the digital assistant's services, and so on. [0090] In some embodiments, the crowd sourcing module 342 establishes and maintains a crowd sourced (CS) knowledge base 358. The CS knowledge base 358 stores crowd sourced information that addresses informational or task requests that the digital assistant provides to a user.); analyzing the natural language utterance to identify one or more common n-grams (unrecognized terms and concepts in the user request ), from prior attempt records of the knowledge base, that are similar to the natural language utterance ([0087] Sometimes, however, the digital assistant fails to provide a satisfactory response to the user request for information or action. The reasons for the failures can be many, such as imperfect speech recognition, unrecognized terms and concepts in the user request, incorrect or incomplete information and inadequate capability in the digital assistant's services, and so on. [0090] In some embodiments, the contents of CS knowledge base 358 are organized by records of previous user requests to which the digital assistant had initially failed to successfully respond, but subsequently fulfilled using crowd-sourced information. CS knowledge base 358 provides references and information to the digital assistant to provide satisfactory responses to the same or similar user requests received in the future. [0092] The user log optionally stores information such as the user requests received, the context information surrounding the user requests, the responses provided to the user, and feedback provided by the user (e.g., clarification inputs or rejections), the parameters, models, third-party services, and procedures used by the digital assistant to generate and provide the responses, etc. [0109] For example, a clarification input from a user includes a user speech input defining a word misinterpreted or misidentified by the digital assistant or a user speech input emphasizing the correct pronunciation of a word misinterpreted or misidentified by the digital assistant.); identifying, based on the one or more common n-grams, one or more modifications to the natural language utterance that are based on previous user modifications to a previous user utterance ([0090] In some embodiments, the crowd sourcing module 342 establishes and maintains a crowd sourced (CS) knowledge base 358. The CS knowledge base 358 stores crowd sourced information that addresses informational or task requests that the digital assistant provides to a user. In some embodiments, the contents of CS knowledge base 358 are organized by records of previous user requests to which the digital assistant had initially failed to successfully respond, but subsequently fulfilled using crowd-sourced information. CS knowledge base 358 provides references and information to the digital assistant to provide satisfactory responses to the same or similar user requests received in the future. In some embodiments, various aspects of the digital assistant system 326, such as the speech-to-text, natural language processing or task-flow processing are modified based on the information stored in the CS knowledge base 358 to improve future performance of the digital assistant system 326. [0092] In some embodiments, the digital assistant maintains a user log 370 for a user of user device 104 based on user requests and interactions between the digital assistant and the user. The user log optionally stores information such as the user requests received, the context information surrounding the user requests, the responses provided to the user, and feedback provided by the user (e.g., clarification inputs or rejections), the parameters, models, third-party services, and procedures used by the digital assistant to generate and provide the responses, etc.) ; receiving an indication that the user accepted (a user speech input accepting) at least one modification of the one or more modifications, wherein the at least one modification modifies the one or more computing tasks ([0105] In response to detecting the impasse, training module 340 is configured to rephrase the user request to elicit a clarification input from the user such as "Did you mean to call your wife?" Subsequently, in this example, the user acknowledges that this was the user's original intent by responding "Yes, I did." [0107] In some embodiments, a clarification input includes a user speech input repeating the user request or initial speech input from the user, a user speech input repeating the user request or initial speech input from the user with a changed emphasis, a user speech input spelling out a word misinterpreted or misidentified by the digital assistant, a user speech input accepting an alternative response of two or more alternative responses provided by the digital assistant, a user speech input confirming the rephrased user request provided by the digital assistant, a user speech input accepting a second best guess provided by the digital assistant, a user speech input further expounding upon or clarifying the initial user request, and so on. [0112] In this way, a respective initial response to the at least one speech input is replaced with the satisfactory response.) and the one or more modifications are selected based on a score of each of a plurality of previous user utterances, and wherein the score is determined, using the prior attempt records, based on how many times a previous user accepted the at least one modification ([0116] Pattern identification module 514 is configured to identify a pattern of success or failure as to the completion of a respective task based on the feedback information collected from a plurality of events each of which are associated with a previous completion of the respective task. [0125] Figure 5, for example, shows pattern identification module 510 configured to identify a pattern or success or failure associated with an aspect of speech recognition, intent inference and task execution previously used to complete the task based on feedback information stored in user log 370. [0133] In some embodiments, hypothesis generation module 512 is configured to assign a confidence value between 0 and 1 to all hypotheses it generates based on the feedback information associated with the one or more previous completions of the task associated with the hypothesis. Furthermore, in some embodiments, parameter alteration module 516 is configured to test the hypothesis by altering a parameter used in the at least one of speech recognition, intent inference and task execution for a subsequent completion of the task when the confidence value assigned to the hypothesis exceeds a predetermined confidence threshold such as 0.5, 0.67, or 0.75. [0134] The electronic device adopts or rejects (628) the hypothesis based on feedback information collected from the subsequent completions of the task. For example, analytics module 518 (Figure 5) is configured to adopt or reject the hypothesis based on feedback information collected from the one or more subsequent completions of the task. In some embodiments, when analytics module 518 adopts the hypothesis, parameter alteration module 516 is configured to permanently or semi-permanently alter a parameter used in the at least one of speech recognition, intent inference and task execution for subsequent completions of the task.) ; and executing using the machine learning model the modified one or more computing tasks ([0135] In other words, analytics module 618 is configured to adopt the hypothesis if after implementing the hypothesis, the ratio of indicators of failures to indicators of success for the task is less than the ratio prior to implementing the hypothesis (e.g., the task completion metric improves as it approaches 0). [0138] In some embodiments, after rejecting (638) the hypothesis, the electronic device: generates (640) a modified hypothesis regarding the parameter used in at least one of speech recognition, intent deduction, and task execution as the cause for the pattern of success or failure; and tests (642) the modified hypothesis by altering the parameter in at least one of speech recognition, intent deduction, and task execution for subsequent completions of the task.).
Regarding Claims 3, 10, and 17, Gruber et al. teaches: The computer-implemented method of claim 1, wherein the user accepting the at least one modification adjusts a score of the previous user utterance in the knowledge base (See rejection of claim 1 and [0104] In some embodiments, the electronic device (424) reduces a respective intent inference or speech recognition threshold so as to generate the two or more alternative responses to the at least one speech input from the user. In some embodiments, training module 340 is configured to provide two or more alternative responses to the user request which the natural language processor 332 did not initially select due to corresponding low confidence values. After the user rejects an initial response associated with a highest confidence value, training module 340 lowers the threshold confidence level required by the natural language processor 332 in order to provide two or more alternative responses to the user. For example, the alternative responses indicated in the aforementioned example have confidence values of 65% and 40%, respectively, in comparison to an 85% confidence value for the initial response.).
Regarding Claims 4, 11, and 18, Gruber et al. teaches: The computer-implemented method of claim 1, further comprising: prompting the user via a user interface that displays text comprising the natural language utterance of the user and one or more visual elements corresponding to the one or more modifications (See rejection of claim 1 and [0053] The user interface module 322 receives commands and/or inputs from a user via the I/O interface 306 (e.g., from a keyboard, touch screen, pointing device, controller, and/or microphone), and generates user interface objects on a display. The user interface module 322 also prepares and delivers outputs (e.g., speech, sound, animation, text, icons, vibrations, haptic feedback, and light, etc.) to the user via the I/O interface 306 (e.g., through displays, audio channels, speakers, and touch-pads, etc.). [0078] In some cases, the task flow processor 336 receives a structured query that has one or more ambiguous properties, e.g., when a structured query for the "send a message" domain indicates that the intended recipient is "Bob," and the user happens to have multiple contacts named "Bob." In such cases, the task flow processor 336, optionally, requests that the dialogue processor 334 disambiguate this property of the structured query. In tum, the dialogue processor 334, optionally, asks the user "Which Bob?", and displays (or reads) a list of contacts named "Bob" from which the user may choose.).
Regarding Claims 5, 12, and 19, Gruber et al. teaches: The computer-implemented method of claim 1, wherein the knowledge base is updated in response to the user providing a previously-unprompted modification (See rejection of claim 1 and [0112] During the learning session, the electronic device associates (440) the satisfactory response with the at least one speech input for processing future occurrences of the at least one speech input. Figure 3B, for example, shows the training module 340 configured to associate a satisfactory response with the user request (e.g., including at least one speech input) by permanently (or semi-permanently) adjusting at least one of speech-to- text processing, natural language processing and task-flow processing so that future occurrences of the user request or speech input produce the satisfactory response instead of an impasse. In this way, a respective initial response to the at least one speech input is replaced with the satisfactory response. In some embodiments, a user in enabled to modify or revert the adjustments made by the digital assistant by initiating a dialogue with the digital assistant or going to a website associated with the user's digital assistant.).
Regarding Claims 6, 13, and 20, Gruber et al. teaches: The computer-implemented method of claim 1, wherein the knowledge base includes a plurality of records of previous user interactions of a plurality of users, wherein each previous user interactions includes at least one initial utterance and at least one modified utterance (See rejection of claim 1 and [0090] In some embodiments, the crowd sourcing module 342 establishes and maintains a crowd sourced (CS) knowledge base 358. The CS knowledge base 358 stores crowd sourced information that addresses informational or task requests that the digital assistant provides to a user. In some embodiments, the contents of CS knowledge base 358 are organized by records of previous user requests to which the digital assistant had initially failed to successfully respond, but subsequently fulfilled using crowd-sourced information. CS knowledge base 358 provides references and information to the digital assistant to provide satisfactory responses to the same or similar user requests received in the future. In some embodiments, CS knowledge base 358 is organized to facilitate searching by the natural language processor. For example, the information and answers in CS knowledge base 358 are indexed by nodes in ontology 360, so that the infrastructure of the natural language processor can be leveraged to quickly find past questions and answers in one or more relevant domains.).
Regarding Claims 7, 14, Gruber et al. teaches: The computer-implemented method of claim 1, wherein the one or more modifications include a word or phrase to be added to the natural language utterance, to be replaced in the natural language utterance, or to be removed from the natural language utterance (see rejection of claim 1 and [0066] In some embodiments, the ontology 360 includes all the domains (and hence actionable intents) that the digital assistant is capable of understanding and acting upon. In some embodiments, the ontology 360 is optionally modified, such as by adding or removing entire domains or nodes, or by modifying relationships between the nodes within the ontology 360. [0110] In another example, training module 340 is configured to adjust a parameter of the natural language processor 332 by adding a synonym to a property node in ontology 360 (e.g., add "ring" as a synonym to "call"), adjusting the relationship between nodes in ontology 360, or altering a domain associated with a user request in ontology 360 (e.g., associating the speech input "Find me a table" with a "furniture" domain instead of a "restaurant reservation" domain). In another example, training module 340 is configured to adjust a language or speech model associated with speech recognition (e.g., associating "Columbia" with "co-LUM-bee-a" instead of "ko-LOM-bee-a"). [0129] In some embodiments, a hypothesis regarding a parameter used in at least one of speech recognition, intent inference and task execution includes a hypothesis that adjusting a language or acoustic model for speech-to-text processing, adding a word to the vocabulary for speech-to-text processing, altering a relationship between nodes or domains in ontology 360 for natural language processing, adding property nodes to ontology 360 for natural language processing, or altering a task flow model for task flow processing, would improve upon the pattern of success or failure identified by pattern identification module 510.).
Regarding Claims 21, 22, and 23, Gruber et al. teaches: The computer-implemented method of claim 1, further comprising: vectorizing (assign) user utterances (assign a confidence value between 0 and 1 to all hypotheses) from the prior attempt records to identify an utterance closest to the natural language utterance of the user (See rejection of claim 1 and [0133] In some embodiments, testing the hypothesis occurs (626) when a hypothesis confidence value associated with the hypothesis exceeds a predetermined confidence threshold. In some embodiments, hypothesis generation module 512 is configured to assign a confidence value between 0 and 1 to all hypotheses it generates based on the feedback information associated with the one or more previous completions of the task associated with the hypothesis. A confidence value close to 0 denotes a low likelihood of the hypothesis being the cause of the pattern of success or failure, and a confidence value close to 1 denotes a high likelihood of the hypothesis being the cause of the pattern of success or failure. Furthermore, in some embodiments, parameter alteration module 516 is configured to test the hypothesis by altering a parameter used in the at least one of speech recognition, intent inference and task execution for a subsequent completion of the task when the confidence value assigned to the hypothesis exceeds a predetermined confidence threshold such as 0.5, 0.67, or 0.75. [0134] The electronic device adopts or rejects (628) the hypothesis based on feedback information collected from the subsequent completions of the task. For example, analytics module 518 (Figure 5) is configured to adopt or reject the hypothesis based on feedback information collected from the one or more subsequent completions of the task.).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. The prior art of record Chen (AU 2015/210460 A1) teach: Speech Recognition Repair Using Contextual Information.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MOHAMMAD K ISLAM whose telephone number is (571)270-5878. The examiner can normally be reached Monday -Friday, EST (IFP).
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Paras Shah can be reached at 571-270-1650. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/MOHAMMAD K ISLAM/Primary Examiner, Art Unit 2653