Patents by Inventor Vishal Vishnoi
Vishal Vishnoi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20220100961Abstract: Techniques for automatically switching between chatbot skills in the same domain. In one particular aspect, a method is provided that includes receiving an utterance from a user within a chatbot session, where a current skill context is a first skill and a current group context is a first group, inputting the utterance into a candidate skills model for the first group, obtaining, using the candidate skills model, a ranking of skills within the first group, determining, based on the ranking of skills, a second skill is a highest ranked skill, changing the current skill context of the chatbot session to the second skill, inputting the utterance into a candidate flows model for the second skill, obtaining, using the candidate flows model, a ranking of intents within the second skill that match the utterance, and determining, based on the ranking of intents, an intent that is a highest ranked intent.Type: ApplicationFiled: September 30, 2021Publication date: March 31, 2022Applicant: Oracle International CorporationInventors: Vishal Vishnoi, Xin Xu, Elias Luqman Jalaluddin, Srinivasa Phani Kumar Gadde, Crystal C. Pan, Mark Edward Johnson, Thanh Long Duong, Balakota Srinivas Vinnakota, Manish Parekh
-
Publication number: 20220058347Abstract: A chatbot system is configured to execute code to perform determining, by the chatbot system, a classification result for an utterance and one or more anchors each anchor of the one or more anchors corresponding to one or more anchor words of the utterance. For each anchor of the one or more anchors, one or more synthetic utterances are generated, and one or more classification results for the one or more synthetic utterances are determined. A report is generated by the chatbot system comprising a representation of a particular anchor of the one or more anchors, the particular anchor corresponding to a highest confidence value among the one or more anchors. The one or more synthetic utterances may be used to generate a new training dataset for training a machine-learning model. The training dataset may be refined according to a threshold confidence values to filter out datasets for training.Type: ApplicationFiled: August 20, 2021Publication date: February 24, 2022Applicant: Oracle International CorporationInventors: Gautam Singaraju, Vishal Vishnoi, Manish Parekh, Alexander Wang
-
Publication number: 20210390951Abstract: Techniques for data augmentation for training chatbot systems in natural language processing. In one particular aspect, a method is provided that includes generating a list of values to cover for an entity, selecting utterances from a set of data that have context for the entity, converting the utterances into templates, where each template of the templates comprises a slot that maps to the list of values for the entity, selecting a template from the templates, selecting a value from the list of values based on the mapping between the slot within the selected template and the list of values for the entity; and creating an artificial utterance based on the selected template and the selected value, where the creating the artificial utterance comprises inserting the selected value into the slot of the selected template that maps to the list of values for the entity.Type: ApplicationFiled: June 11, 2021Publication date: December 16, 2021Applicant: Oracle International CorporationInventors: Srinivasa Phani Kumar Gadde, Yuanxu Wu, Aashna Devang Kanuga, Elias Luqman Jalaluddin, Vishal Vishnoi, Mark Edward Johnson
-
Patent number: 11195532Abstract: The present disclosure relates to chatbot systems, and more particularly, to techniques for detecting that there are multiple intents represented in an utterance and then matching each detected intent to an intent associated with a chatbot in a chatbot system. In certain embodiments, a chatbot system receives an utterance from a user. A language of the utterance is determined and a set of rules identified for the language of the utterance. The utterance is parsed to extract information relating to the sentence structure of the utterance. The set of one or more rules is used to (1) determine whether the utterance is formed of two or more parts that each correspond to a separate intent of a user, and (2) split the utterance into the two or more parts for separate processing including matching of each user intent to an intent configured for a chatbot.Type: GrantFiled: April 24, 2020Date of Patent: December 7, 2021Assignee: Oracle International CorporationInventors: Saba Amsalu Teserra, Vishal Vishnoi
-
Publication number: 20210319347Abstract: Techniques are disclosed for providing a scalable multi-tenant serve pool for chatbot systems. A query serving system (QSS) receives a request to serve a query for a skillbot. The QSS includes: (i) a plurality of deployments in a serving pool, and (ii) a plurality of deployments in a free pool. The QSS determines whether a first deployment from the plurality of deployments in the serving pool can serve the query based on an identifier of the skillbot. In response to determining that the first deployment cannot serve the query, the QSS selects a second deployment from the plurality of deployments in the free pool to be assigned to the skillbot, and loads a machine-learning model associated with the skillbot into the second deployment, wherein the machine-learning model is trained to serve the query for the skillbot. The query is served using the machine-learning model loaded into the second deployment.Type: ApplicationFiled: April 13, 2021Publication date: October 14, 2021Applicant: Oracle International CorporationInventors: Vishal Vishnoi, Suman Mallapura Somasundar, Xin Xu, Stevan Malesevic
-
Publication number: 20210319360Abstract: Techniques are disclosed for providing a scalable multi-tenant serve pool for chatbot systems. A query serving system (QSS) receives a request to serve a query for a new skillbot. The QSS comprises a plurality of deployments, each of which is configured to host a plurality of machine-learning models, each machine-learning model being associated with a skillbot, each deployment including a serving container and a model manager container that hosts a model manager, the serving container including a plurality of sub-containers, each of which hosts one of the machine-learning models downloaded by the model manager. The QSS selects a first deployment to be assigned to the new skillbot based on a first criterion, and loads the machine-learning model associated with the new skillbot into the first deployment. The machine-learning model is trained to serve the query for the new skillbot. The query is served using the machine-learning model.Type: ApplicationFiled: April 13, 2021Publication date: October 14, 2021Applicant: Oracle International CorporationInventors: Vishal Vishnoi, Suman Mallapura Somasundar, Xin Xu, Stevan Malesevic
-
Publication number: 20210304733Abstract: Techniques for noise data augmentation for training chatbot systems in natural language processing. In one particular aspect, a method is provided that includes receiving a training set of utterances for training an intent classifier to identify one or more intents for one or more utterances; augmenting the training set of utterances with noise text to generate an augmented training set of utterances; and training the intent classifier using the augmented training set of utterances. The augmenting includes: obtaining the noise text from a list of words, a text corpus, a publication, a dictionary, or any combination thereof irrelevant of original text within the utterances of the training set of utterances, and incorporating the noise text within the utterances relative to the original text in the utterances of the training set of utterances at a predefined augmentation ratio to generate augmented utterances.Type: ApplicationFiled: September 9, 2020Publication date: September 30, 2021Applicant: Oracle International CorporationInventors: Elias Luqman Jalaluddin, Vishal Vishnoi, Mark Edward Johnson, Thanh Long Duong, Yu-Heng Hong, Balakota Srinivas Vinnakota
-
Publication number: 20210304074Abstract: Techniques are disclosed for tuning hyperparameters of a machine-learning model. A plurality of metrics are selected for which hyperparameters of the machine-learning model are to be tuned. Each metric is associated with a plurality of specification parameters including a target score, a penalty factor, and a bonus factor. The plurality of specification parameters are configured for each metric in accordance with a first criterion. The machine-learning model is evaluated using one or more validation datasets to obtain a metric score. A weighted loss function is formulated based on a difference between the metric score and the target score of each metric, the penalty factor or the bonus factor. The hyperparameters associated with the machine-learning model are tuned in order to optimize the weighted loss function. In response to the weighted loss function being optimized, the machine-learning model is provided as a validated machine-learning model.Type: ApplicationFiled: March 29, 2021Publication date: September 30, 2021Applicant: Oracle International CorporationInventors: Poorya Zaremoodi, Ying Xu, Thanh Tien Vu, Vladislav Blinov, Yu-Heng Hong, Yakupitiyage Don Thanuja Samodhye Dharmasiri, Vishal Vishnoi, Elias Luqman Jalaluddin, Manish Parekh, Thanh Long Duong, Mark Edward Johnson, Xin Xu, Cong Duy Vu Hoang
-
Publication number: 20210304003Abstract: Techniques are disclosed for tuning hyperparameters of a model. Datasets are obtained for training the model and metrics are selected for evaluating performance of the model. Each metric is assigned a weight specifying an importance to the performance of the model. A function is created that measures performance based on the weighted metrics. Hyperparameters are tuned to optimize the model performance. Tuning the hyperparameters includes: (i) training the model that is configured based on a current values for the hyperparameters; (ii) evaluating a performance of the model using the function; (iii) determining whether the model is optimized for the metrics; (iv) in response to the model not being optimized, searching for a new values for the hyperparameters, reconfiguring the model with the new values, and repeating steps (i)-(iii) using the reconfigured model; and (v) in response to the model being optimized for the metrics, providing a trained model.Type: ApplicationFiled: March 29, 2021Publication date: September 30, 2021Applicant: Oracle International CorporationInventors: Mark Edward Johnson, Thanh Long Duong, Vishal Vishnoi, Balakota Srinivas Vinnakota, Tuyen Quang Pham, Cong Duy Vu Hoang
-
Publication number: 20210304075Abstract: The present disclosure relates to chatbot systems, and more particularly, to batching techniques for handling unbalanced training data when training a model such that bias is removed from the trained machine learning model when performing inference. In an embodiment, a plurality of raw utterances is obtained. A bias eliminating distribution is determined and a subset of the plurality of raw utterances is batched according to the bias-reducing distribution. The resulting unbiased training data may be input into a prediction model for training the prediction model. The trained prediction model may be obtained and utilized to predict unbiased results from new inputs received by the trained prediction model.Type: ApplicationFiled: March 30, 2021Publication date: September 30, 2021Applicant: Oracle International CorporationInventors: Thanh Long Duong, Mark Edward Johnson, Vishal Vishnoi, Balakota Srinivas Vinnakota, Yu-Heng Hong, Elias Luqman Jalaluddin
-
Publication number: 20210303798Abstract: The present disclosure relates to techniques for identifying out-of-domain utterances.Type: ApplicationFiled: March 30, 2021Publication date: September 30, 2021Applicant: Oracle International CorporationInventors: Thanh Long Duong, Mark Edward Johnson, Vishal Vishnoi, Crystal C. Pan, Vladislav Blinov, Cong Duy Vu Hoang, Elias Luqman Jalaluddin, Duy Vu, Balakota Srinivas Vinnakota
-
Publication number: 20210082400Abstract: Techniques for stop word data augmentation for training chatbot systems in natural language processing. In one particular aspect, a computer-implemented method includes receiving a training set of utterances for training an intent classifier to identify one or more intents for one or more utterances; augmenting the training set of utterances with stop words to generate an augmented training set of out-of-domain utterances for an unresolved intent category corresponding to an unresolved intent; and training the intent classifier using the training set of utterances and the augmented training set of out-of-domain utterances. The augmenting includes: selecting one or more utterances from the training set of utterances, and for each selected utterance, preserving existing stop words within the utterance and replacing at least one non-stop word within the utterance with a stop word or stop word phrase selected from a list of stop words to generate an out-of-domain utterance.Type: ApplicationFiled: September 9, 2020Publication date: March 18, 2021Applicant: Oracle International CorporationInventors: Vishal Vishnoi, Mark Edward Johnson, Elias Luqman Jalaluddin, Balakota Srinivas Vinnakota, Thanh Long Duong, Gautam Singaraju
-
Publication number: 20210083994Abstract: Techniques are described to determine whether an input utterance is unrelated to a set of skill bots associated with a master bot. In some embodiments, a system described herein includes a training system and a master bot. The training system trains a classifier of the master bot. The training includes accessing training utterances associated with the skill bots and generating training feature vectors from the training utterances. The training further includes generating multiple set representations of the training feature vectors, where each set representation corresponds to a subset of the training feature vectors, and configuring the classifier with the set representations. The master bot accesses an input utterance and generates an input feature vector. The master bot uses the classifier to compare the input feature vector to the multiple set representations so as to determine whether the input feature falls outside and, thus, cannot be handled by the skill bots.Type: ApplicationFiled: September 10, 2020Publication date: March 18, 2021Applicant: Oracle International CorporationInventors: Crystal C. Pan, Gautam Singaraju, Vishal Vishnoi, Srinivasa Phani Kumar Gadde
-
Publication number: 20210012245Abstract: Techniques disclosed herein relate to improving quality of classification models for differentiating different user intents by improving the quality of training samples used to train the classification models. Pairs of user intents that are difficult to differentiate by classification models trained using the given training samples are identified based upon distinguishability scores (e.g., F-scores). For each of the identified pairs of intents, pairs of training samples each including a training sample associated with a first intent and a training sample associated with a second intent in the pair of intents are ranked based upon a similarity score between the two training samples in each pair of training samples. The identified pairs of intents and the pairs of training samples having the highest similarity scores may be presented to users through a user interface, along with user-selectable options or suggestions for improving the training samples.Type: ApplicationFiled: September 30, 2020Publication date: January 14, 2021Applicant: Oracle International CorporationInventors: Gautam Singaraju, Jiarui Ding, Vishal Vishnoi, Mark Joseph Sugg, Edward E. Wong
-
Publication number: 20200372223Abstract: Systems, devices, and methods of the present invention relate to text classification. A text classification system accesses an utterance of text. The utterance includes at least one word. The text classification system generates a parse tree for the utterance. The parse tree includes at least one terminal node with a word type. The terminal node represents a word of the utterance. The text classification system applies one or more rules to the text. The text classification system then classifies the utterance as a question or a request for an autonomous agent to perform an action.Type: ApplicationFiled: August 13, 2020Publication date: November 26, 2020Applicant: Oracle International CorporationInventors: Boris Galitsky, Vishal Vishnoi, Anfernee Xu
-
Patent number: 10824962Abstract: Techniques for improving quality of classification models for differentiating different user intents by improving the quality of training samples used to train the classification models are described. Pairs of user intents that are difficult to differentiate by classification models trained using the given training samples are identified based upon distinguishability scores (e.g., F-scores). For each of the identified pairs of intents, pairs of training samples each including a training sample associated with a first intent and a training sample associated with a second intent in the pair of intents are ranked based upon a similarity score between the two training samples in each pair of training samples. The identified pairs of intents and the pairs of training samples having the highest similarity scores may be presented to users through a user interface, along with user-selectable options or suggestions for improving the training samples.Type: GrantFiled: September 28, 2018Date of Patent: November 3, 2020Assignee: Oracle International CorporationInventors: Gautam Singaraju, Jiarui Ding, Vishal Vishnoi, Mark Joseph Sugg, Edward E. Wong
-
Publication number: 20200342873Abstract: The present disclosure relates to chatbot systems, and more particularly, to techniques for detecting that there are multiple intents represented in an utterance and then matching each detected intent to an intent associated with a chatbot in a chatbot system. In certain embodiments, a chatbot system receives an utterance from a user. A language of the utterance is determined and a set of rules identified for the language of the utterance. The utterance is parsed to extract information relating to the sentence structure of the utterance. The set of one or more rules is used to (1) determine whether the utterance is formed of two or more parts that each correspond to a separate intent of a user, and (2) split the utterance into the two or more parts for separate processing including matching of each user intent to an intent configured for a chatbot.Type: ApplicationFiled: April 24, 2020Publication date: October 29, 2020Applicant: Oracle International CorporationInventors: Saba Amsalu Teserra, Vishal Vishnoi
-
Publication number: 20200342874Abstract: The present disclosure relates to chatbot systems, and more particularly, to techniques for identifying an explicit invocation of a chatbot and determining an input for the chatbot being invoked. In certain embodiments, explicit invocation analysis involves detecting an invocation name in an utterance. The invocation name is an identifier assigned to a particular chatbot. In response to detection of the invocation name, the utterance is refined for input to the particular chatbot by determining which parts of the utterance, if any, contain relevant information for the particular chatbot and generating a new utterance, using the relevant parts of the utterance, for processing by the particular chatbot. The refining can involve removal of a portion of the utterance associated with the invocation name.Type: ApplicationFiled: April 24, 2020Publication date: October 29, 2020Applicant: Oracle International CorporationInventors: Saba Amsalu Teserra, Vishal Vishnoi, Jae Min John
-
Publication number: 20200342850Abstract: Techniques are described for invoking and switching between chatbots of a chatbot system. In some embodiments, the chatbot system is capable of routing an utterance received while a user is already interacting with a first chatbot in the chatbot system. For instance, the chatbot system may identify a second chatbot based on determining that (i) such an utterance is an invalid input to the first chatbot or (ii) that the first chatbot is attempting to route the utterance to a destination associated with the first chatbot. Identifying the second chatbot can involve computing, using a predictive model, separate confidence scores for the first chatbot and the second chatbot, and then determining that a confidence score for the second chatbot satisfies one or more confidence score thresholds. The utterance is then routed to the second chatbot based on the identifying of the second chatbot.Type: ApplicationFiled: April 23, 2020Publication date: October 29, 2020Applicant: Oracle International CorporationInventors: Vishal Vishnoi, Xin Xu, Srinivasa Phani Kumar Gadde, Fen Wang, Muruganantham Chinnananchi, Manish Parekh, Stephen Andrew McRitchie, Jae Min John, Crystal C. Pan, Gautam Singaraju, Saba Amsalu Teserra
-
Patent number: 10796099Abstract: Systems, devices, and methods of the present invention relate to text classification. A text classification system accesses an utterance of text. The utterance includes at least one word. The text classification system generates a parse tree for the utterance. The parse tree includes at least one terminal node with a word type. The terminal node represents a word of the utterance. The text classification system applies one or more rules to the text. The text classification system then classifies the utterance as a question or a request for an autonomous agent to perform an action.Type: GrantFiled: September 28, 2018Date of Patent: October 6, 2020Assignee: Oracle International CorporationInventors: Boris Galitsky, Vishal Vishnoi, Anfernee Xu