Abstract: The present disclosure relates to system (102) and method (500) for optimizing user-machine interaction. The system (102) comprises of user interface (204), memory (206) and processor (202). The processor receives query input associated with query objective from user for generating a suggestive action for the user thereby establishing a communication with the user. The processor (202) parse the query input through enterprise messaging ontology for identifying the query objective and the enterprise messaging ontology comprises predefined suggestive actions defined for each of entity sub-domain along with entity sub-domain. The processor (202) map the query objective with predefined suggestive actions for identifying an intent domain along with an entity sub-domain for the intent domain associated with the query; and predict the suggestive action according to the intent domain along with an entity sub-domain for the intent domain identified for the query, by using predictive algorithm.
DESC:FORM 2
THE PATENTS ACT, 1970.
(39 of 1970)
&
THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See Section 10 and Rule 13)
Title of invention:
A SYSTEM FOR OPTIMIZING USER-MACHINE INTERACTION AND A METHOD THEREOF
Applicants:
GUPSHUP TECHNOLOGY INDIA PRIVATE LIMITED
A company Incorporated in India
Having address:
Unit 101, 1st Floor, Silver Metropolis, Western Express Highway,
Goregaon East, Mumbai - 400063,
Maharashtra, India
&
GUPSHUP INC.
A company Incorporated in United States of America
Having address:
38350 Fremont Blvd, Suite 203, Fremont, California 94536,
United States of America
The following specification describes the invention and the manner in which it is to be performed.
CROSS-REFERENCE TO RELATED APPLICATIONS AND PRIORITY
[001] The present application claims priority from patent application no. 202021020938 filed on November 18, 2020.
TECHNICAL FIELD
[002] The present disclosure in general relates to a field of bot enabled communication. More particularly, the present disclosure relates to a system and method for optimizing user-machine interaction.
BACKGROUND
[003] Many machine learning model and techniques, for example, Natural Language Processing, also known as NLP, is vastly being used for ease of human machine interaction. NLP is concerned with how a machine or a bot may meaningfully interpret and act on human language inputs to facilitate accurate predictions for user’s easy communication. In a simpler way, NLP helps the machine to understand context of human input rather interpreting one of words or text.
[004] Generally, to add NLP capabilities to any bot, developer is required to build a custom library of intent and entities. The custom library of intent and entities are used for training Machine Learning (ML) models to tag user utterances with the defined intent and entities. Such training is time consuming and costly and further such training is highly specific to the bot and needs a lot of training for it to work.
[005] For any effective machine-user interaction, there is a huge need and dependency on training the underlying machine learning models and there is also a continuous need to retrain those machine learning models which not just require huge data and data processing (real-time and historic) but also require skilled resources. In absence of such training of models, the communication might lead to errors. So far available solutions have not identified a way wherein such training of machine learning models may be optimised.
SUMMARY
[006] Before the present method and system for optimizing user-machine interaction is described, it is to be understood that this application is not limited to the particular system, and methodologies described, as there can be multiple possible embodiments that are not expressly illustrated in the present disclosure. It is also to be understood that the terminology used in the description is to describe the particular versions or embodiments only, and is not intended to limit the scope of the present application. This summary is not intended to identify essential features of the claimed subject matter nor is it intended for use in determining or limiting the scope of the claimed subject matter.
[007] In one implementation, a system for optimizing user-machine interaction is described. The system comprises of a user interface (UI), a memory and a processor coupled to the memory. The processor is configured for the processor is configured to execute instructions stored in the memory. The processor is configured for receiving a query input from a user. The query input is associated with a query objective for generating a suggestive action for the user thereby establishing a communication with the user. The processor is further configured to parse the query input through an enterprise messaging ontology for identifying the query objective. The enterprise messaging ontology comprises predefined suggestive actions defined for each of an entity sub-domain along with an entity sub-domain. The processor is further configured to map the query objective with the predefined suggestive actions for identifying an intent domain along with an entity sub-domain for the intent domain associated with the query; and predict the suggestive action according to the intent domain along with an entity sub-domain for the intent domain identified for the query, by using a predictive algorithm.
[008] In another implementation, a method for optimizing user-machine interaction is described. The method comprises receiving a query input from a user through the UI, wherein the query input is associated with a query objective and wherein the query objective is used for generating a suggestive action for the user thereby establishing a communication with the user; parsing the query input through an enterprise messaging ontology for identifying the query objective through the processor; wherein the enterprise messaging ontology comprises predefined suggestive actions defined for each of an entity sub-domain along with an entity sub-domain; mapping the query objective with the predefined suggestive actions for identifying an intent domain along with an entity sub-domain for the intent domain associated with the query through the processor; and predicting the suggestive action according to the intent domain along with an entity sub-domain for the intent domain identified for the query through the processor, by using a predictive algorithm.
BRIEF DESCRIPTION OF DRAWINGS
[009] The detailed description is described with reference to the accompanying figures. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the drawings to refer like features and components.
[0010] Figure 1 illustrates a network implementation diagram (100) of a system (102) for optimizing user-machine interaction, in accordance with an embodiment of the present subject matter.
[0011] Figure 2 illustrates a block diagram of the system (102) for optimizing the user-machine interaction, in accordance with an embodiment of the present subject matter.
[0012] Figure 3 illustrates a block diagram for a hierarchical enterprise specific ontology (302) used by the system (102), in accordance with an embodiment of the present subject matter.
[0013] Figure 4 (a) illustrates an exemplary block diagram for the enterprise messaging ontology for optimizing user-machine interaction, in accordance with an embodiment of the present subject matter.
[0014] Figure 4 (b) illustrates another exemplary block diagram for the enterprise messaging ontology for optimizing user-machine interaction, in accordance with an embodiment of the present subject matter
[0015] Figure 4 (c) illustrates yet another exemplary block diagram for the enterprise messaging ontology for optimizing user-machine interaction, in accordance with an embodiment of the present subject matter.
[0016] Figure 4 (d) illustrates yet another exemplary block diagram for the enterprise messaging ontology for optimizing user-machine interaction, in accordance with an embodiment of the present subject matter.
[0017] Figure 5 illustrates a flow diagram of a method (500) for optimizing user-machine interaction, in accordance with an embodiment of the present subject matter.
DETAILED DESCRIPTION
[0018] Some embodiments of the present disclosure, illustrating all its features, will now be discussed in detail. The words “comprising”, “receiving”, “determining”, “assigning” and other forms thereof, are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms "a", "an" and "the" include plural references unless the context clearly dictates otherwise. Although any systems and methods similar or equivalent to those described herein can be used in the practice or testing of embodiments of the present disclosure, the exemplary, systems and methods facilitating health monitoring are now described. The disclosed embodiments of the systems and methods facilitating health monitoring are merely exemplary of the disclosure, which may be embodied in various forms.
[0019] Various modifications to the embodiment will be readily apparent to those skilled in the art and the generic principles herein may be applied to other embodiments. However, one of ordinary skill in the art will readily recognize that the present disclosure for stripping objects is not intended to be limited to the embodiments illustrated but is to be accorded the widest scope consistent with the principles and features described herein.
[0020] As stated above, existing Machine Learning (ML) models such as NLP models are based on a large amount of training. Such NLP models have the capability to work based on a defined ontology of intents and entities, but may not work without training of a custom model.
[0021] The present subject matter overcomes the problems of training and re-training of ML models through the system and method and overcomes the need of adding the NLP capabilities to the bot for enabling a bot developer to add intent classification and entity extraction capabilities to the bot without building new models for intent and entity extraction. After defining the custom intent and entity ontology for the bot through the proposed system and method, the bot developer may directly use the NLP system and method purposed by the present subject matter to add the NLP capabilities to the bot.
[0022] Referring now to the drawings, and more particularly to Figures 1 through 5, where similar reference characters denote corresponding features consistently throughout the figures, there are shown embodiments.
[0023] Referring now to Figure 1, a network implementation diagram of a system 102 for optimizing user-machine interaction is disclosed. In one example, the system 102 may be connected with user devices 104-1 through 104-N (collectively referred as 104) through a communication network 106.
[0024] It should be understood that the system 102 and the user devices 104 correspond to computing devices. It may be understood that the system 102 may also be implemented in a variety of computing systems, such as a laptop computer, a desktop computer, a notebook, a workstation, a mainframe computer, a server, a network server, a cloud-based computing environment, or a smart phone and the like. It may be understood that the mobile devices 104 may correspond to a variety of a variety of portable computing devices, such as a laptop computer, a desktop computer, a notebook, a smart phone, a tablet, a phablet, and the like.
[0025] In one implementation, the communication network 106 may be a wireless network, a wired network, or a combination thereof. The communication network 106 can be implemented as one of the different types of networks, such as intranet, Local Area Network (LAN), Wireless Personal Area Network (WPAN), Wireless Local Area Network (WLAN), wide area network (WAN), the internet, and the like. The communication network 106 may either be a dedicated network or a shared network. The shared network represents an association of the different types of networks that use a variety of protocols, for example, MQ Telemetry Transport (MQTT), Extensible Messaging and Presence Protocol (XMPP), Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), and the like, to communicate with one another. Further, the communication network 106 may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, and the like.
[0026] Referring now to Figure 2, a block diagram 200 of the system 102 is illustrated in accordance with an embodiment of the present subject matter. In one embodiment, the system 102 may include at least one processor 202, an input/output (I/O) interface 204, and a memory 206. The at least one processor 202 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the at least one processor 202 may be configured to fetch and execute computer-readable instructions stored in the memory 206.
[0027] The user interface 204 may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, a command line interface, and the like. The user interface 204 may allow a user to interact with the system 102. Further, the user interface 204 may enable the system 102 to communicate with the user devices 104, and other computing devices, such as web servers and external data servers (not shown). The user interface 204 can facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, LAN, cable, etc., and wireless networks, such as WLAN, cellular, or satellite. The user interface 204 may include one or more ports for connecting a number of devices to one another or to another server.
[0028] The memory 206, amongst other things, serves as a repository for storing data processed, received, and generated by one or more of modules 208. The memory 206 may include any computer-readable medium or computer program product known in the art including, for example, volatile memory, such as Static Random Access Memory (SRAM) and Dynamic Random Access Memory (DRAM), and/or non-volatile memory, such as Read Only Memory (ROM), Erasable Programmable ROM (EPROM), Electrically Erasable and Programmable ROM (EEPROM), flash memories, hard disks, optical disks, and magnetic tapes.
[0029] The memory 206 may include data generated as a result of the execution of one or more of the modules 208. The memory 206 is connected to a plurality of modules 208. The system 102 may comprise a receiving module 212, an identifying module 214, and a prediction module 216. The receiving module 212 may configure to receive query input from a user through the user Interface 204 by the processor 202. The identifying module 214 may configure for identification of intent domain along with an entity sub-domain for the intent domain. The prediction module 216 may configure to predict suggestive action according to the intent domain along with an entity sub-domain for the intent domain identified for the query, by using a predictive algorithm.
[0030] The data 210 may include a database 218 for storing data processed, computed, received, and generated by one or more of the modules 208. Furthermore, the data 210 may include other data 220 for storing data generated as a result of the execution of modules than the ones mentioned above.
[0031] In an embodiment, the system 102 is configured to optimize user-machine interaction. The system 102 comprises the user interface 204, the memory 206 and the processor 202 coupled to the memory 206.
[0032] The processor 202 is configured to receive a query input from a user. The query input is associated with a query objective. The query objective may defined and later identified through keywords which are extracted and then are mapped with predefined keywords stored in the enterprise messaging ontology. The query input comprises text queries, audio queries or video queries. The query objective is used for generating a suggestive action for the user thereby establishing a communication with the user. The processor 202 then parse the query input through an enterprise messaging ontology for identifying the query objective. The enterprise messaging ontology comprises predefined suggestive actions defined for each of an entity sub-domain along with an entity sub-domain and is developed by using Machine Learning (ML) techniques comprising Natural Language Processing (NLP). The query objective with the predefined suggestive actions are mapped by the processor 202 for identifying an intent domain along with an entity sub-domain for the intent domain associated with the query.
[0033] The processor 202 is further configured to predict the suggestive action according to the intent domain along with an entity sub-domain for the intent domain identified for the query. The prediction is performed by using a predictive algorithm. The predictive algorithm comprises decision tree, reinforcement learning algorithms.
[0034] Referring now to Figure 3, a block diagram of the hierarchical enterprise specific ontology 302 is described. The enterprise messaging ontology comprises the hierarchical enterprise specific ontology 302. Each node in the hierarchical enterprise specific ontology comprises a predefined intent 306 domain and a predefined entity 304 sub-domain for each of the suggestive action.
[0035] Referring now to Figure 4 (a), Figure 4 (b), Figure 4(c) and Figure 4 (d) in combination, exemplary block diagram of the enterprise messaging ontology for optimizing user-machine interaction is described. As shown in Figure 4(a), an enterprise may communicate through different communication modes. The different communication modes comprises and not limited to message, notification, bots (as shown in 402). The possible thread of communication and action may comprise enterprise communication, user action or response (as shown in 404). In an exemplary embodiment, the enterprise sends messages to user with a defined “objective of communication” and “expected actions” from the user. The language of communication is a well formed linguistic structure. Based on the “objective of communication” and “expected actions”, the NLP parsing algorithm dynamically generates the Enterprise Messaging Ontology (as shown in 406) based on communication-action datasets. An ontology extractor 408 is configured to generate Enterprise Messaging Ontology. The Enterprise Messaging Ontology comprises intents and entities. The system 102 extract the intents and entities in products and applications without explicitly training the system 102.
[0036] In an exemplary embodiment, as shown in Figure 4 (b) and Figure 4 (c), the enterprise messaging ontology (as shown in 414) is automatically extracted based on enterprise communication (as shown in 410) and predefined suggestive actions (as shown in 412). The intent domain and entity sub-domain are identified and extracted at an inference time based on the extracted enterprise messaging ontology 414. In an example, the enterprise messaging ontology may be used to identify the intent domain and the entity sub-domain from the input user message “how do I reset pin, my transaction failed” (as shown in 414) by extracting keywords (as shown in 416) such as “reset”, “pin” etc . The identified entity may be financial, transaction and authentication (as shown in 416). The intent domain may be identified as reset pin. The intent domain and the entity sub-domain are then mapped with the predefined intent domain and the entity sub-domain stored in nodes of the Enterprise Messaging Ontology.
[0037] As shown in Figure 4 (c) and Figure 4 (d), based on the extracted data and mapping to the enterprise messaging ontology, the bot is able to refine and execute auto-generation of response on what probable action to be taken by the user to maximize probability of resolution as seen in previous conversations, which allows conversational designers to pick and choose entity and intents from the enterprise messaging ontology and define bot Actions / responses (as shown in 418) in a systematic manner. From the above example, the extracted enterprise messaging ontology is used to allow conversational designers to define a bot action related to “Reset pin” (as shown in 418), in the case of authentication of financial transactions which then allows the real time NLP extractor to offer the correct response / action based on the mappings to the enterprise messaging ontology.
[0038] Referring now to Figure 5, the method 500 for optimizing user-machine interaction through the system 102 is described. Description of the method 500 is similar to the system 100 and hence are not repeated for the sake of brevity.
[0039] As part of the method 500, at step 502, the method 500 provides receiving query input from a user, wherein the query input is associated with a query objective through the user interface 204. The query objective is used for generating the suggestive action for the user thereby establishing the communication with the user
[0040] At step 504, the method 500 includes parsing the query input through the enterprise messaging ontology through the processor 202 for identifying the query objective. The enterprise messaging ontology comprises predefined suggestive actions defined for each of the entity sub-domain along with the entity sub-domain.
[0041] At step 506, the method 500 includes mapping the query objective with the predefined suggestive actions through the processor 202. The mapping is performed for identifying the intent domain along with the entity sub-domain for the intent domain associated with the query.
[0042] At step 508, the method 500 includes predicting the suggestive action according to the intent domain along with the entity sub-domain for the intent domain identified for the query. The prediction is performed by using the predictive algorithm.
[0043] The order in which the method 500 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 500 or alternate methods. Additionally, individual blocks may be deleted from the method 500 without departing from the scope of the subject matter described herein.
[0044] Exemplary embodiments discussed above may provide certain advantages. Though not required to practice aspects of the disclosure, the advantages may include those provided by the following features.
[0045] Some embodiment of the system 102 and the method 500 is configured to build and store hierarchical knowledge graph such as enterprise messaging ontology in a semantic database. The enterprise messaging ontology may include intent hierarchies and semantically related entities.
[0046] Some embodiment of the system 102 and the method 500 is configured to get set of actions which can be performed by the enterprise bot, along with the mapping to the end state combination of intents and entities. In an example, if the enterprise wants the bot to allow the user of the bot to “Pay bill” then they might configure the following activations in the Ontology (bill no, date, pay).
[0047] Some embodiment of the system 102 and the method 500 use NLP and Machine Learning algorithms with the configured set of actions to map an incoming user input to the entities and intents in the database without needing any pre-training. Examples of these algorithms may include language models like BERT trained over the masked messaging dataset, combined with a Natural Language Inference based pre-training on a message similarity dataset.
[0048] Some embodiment of the system 102 and the method 500 optimise the selection of the reduced set of intents and entities which maximizes the activation of the action which the bot can perform. The bot usually has the capability to disambiguate and navigate to the next best possible questions / states to explore in the conversation.
[0049] Some embodiment of the system 102 and the method 500 may reinforcement learning driven action prediction algorithm, used as a ranker which recommends the correct entities and intents which enables actions from the user, hence ranking the extracted entities and intents and generating the enterprises messaging ontology dynamically.
[0050] Some embodiment of the system 102 and the method 500 facilitates the bot developers to add the NLP capabilities to the bot and solve NLP needs “on the fly” without having to train the NLP models for the specific intents and entities.
[0051] In some embodiment of the system 102 and the method 500, a bot Application Program Interface (API) may be integrated with an NLP API, resulting into a bot enabled with the NLP capabilities on the fly.
[0052] Various other modifications, adaptations, and alternative designs are of course possible in light of the above teachings. Therefore, it should be understood at this time that, within the scope of the appended claims, the invention can be practiced otherwise than as specifically described herein.
,CLAIMS:
1. A system (102) for optimizing user-machine interaction, the system (102) comprising:
a user interface (204);
a memory (206);
a processor (202) coupled to the memory (206), wherein the processor is configured to execute instructions stored in the memory (206), wherein the processor is configured for:
receiving, a query input from a user, wherein the query input is associated with a query objective, wherein the query objective is used for generating a suggestive action for the user thereby establishing a communication with the user;
parsing, the query input through an enterprise messaging ontology for identifying the query objective, wherein the enterprise messaging ontology comprises predefined suggestive actions defined for each of an entity sub-domain along with an entity sub-domain;
mapping, the query objective with the predefined suggestive actions for identifying an intent domain along with an entity sub-domain for the intent domain associated with the query; and
predicting, the suggestive action according to the intent domain along with an entity sub-domain for the intent domain identified for the query, by using a predictive algorithm.
2. The system (102) as claimed in claim 1, wherein the query input comprises text queries, audio queries or video queries.
3. The system (102) as claimed in claim 1, wherein the enterprise messaging ontology is developed by using ML techniques comprising Natural Language Processing (NLP).
4. The system (102) as claimed in claim 1, wherein the predictive algorithm comprises decision tree, reinforcement learning algorithms.
5. The system (102) as claimed in claim 1, wherein the enterprise messaging ontology comprises a hierarchical enterprise specific ontology (302), wherein each node in the hierarchical enterprise specific ontology comprises predefined intent (306) domain and a predefined entity (304) sub-domain for each of the suggestive action.
6. A method (500) for optimizing user-machine interaction, the method (500) comprising:
receiving, through a User Interface (UI) (204), a query input from a user, wherein the query input is associated with a query objective, wherein the query objective is used for generating a suggestive action for the user thereby establishing a communication with the user;
parsing, through a processor, the query input through an enterprise messaging ontology for identifying the query objective, wherein the enterprise messaging ontology comprises predefined suggestive actions defined for each of an entity sub-domain along with an entity sub-domain;
mapping, through the processor, the query objective with the predefined suggestive actions for identifying an intent domain along with an entity sub-domain for the intent domain associated with the query; and
predicting, through the processor, the suggestive action according to the intent domain along with an entity sub-domain for the intent domain identified for the query, by using a predictive algorithm.
7. The method (500) as claimed in claim 6, wherein the query input comprises text queries, audio queries or video queries.
8. The method (500) as claimed in claim 6, wherein the enterprise messaging ontology is developed by using ML techniques comprising Natural Language Processing (NLP).
9. The method as claimed in claim 6, wherein the predictive algorithm comprises decision tree, reinforcement learning algorithms.
10. The method (500) as claimed in claim 6, wherein the enterprise messaging ontology comprises a hierarchical enterprise specific ontology, wherein each node in the hierarchical enterprise specific ontology comprises predefined intent domain and a predefined entity sub-domain for each of the suggestive action.
| # | Name | Date |
|---|---|---|
| 1 | 202021020938-STATEMENT OF UNDERTAKING (FORM 3) [18-05-2020(online)].pdf | 2020-05-18 |
| 2 | 202021020938-PROVISIONAL SPECIFICATION [18-05-2020(online)].pdf | 2020-05-18 |
| 3 | 202021020938-FORM 1 [18-05-2020(online)].pdf | 2020-05-18 |
| 4 | 202021020938-DRAWINGS [18-05-2020(online)].pdf | 2020-05-18 |
| 5 | 202021020938-DECLARATION OF INVENTORSHIP (FORM 5) [18-05-2020(online)].pdf | 2020-05-18 |
| 6 | 202021020938-Proof of Right [29-06-2020(online)].pdf | 2020-06-29 |
| 7 | 202021020938-PostDating-(18-05-2021)-(E-6-116-2021-MUM).pdf | 2021-05-18 |
| 8 | 202021020938-APPLICATIONFORPOSTDATING [18-05-2021(online)].pdf | 2021-05-18 |
| 9 | 202021020938-FORM-26 [08-08-2021(online)].pdf | 2021-08-08 |
| 10 | 202021020938-FORM 3 [18-11-2021(online)].pdf | 2021-11-18 |
| 11 | 202021020938-ENDORSEMENT BY INVENTORS [18-11-2021(online)].pdf | 2021-11-18 |
| 12 | 202021020938-DRAWING [18-11-2021(online)].pdf | 2021-11-18 |
| 13 | 202021020938-COMPLETE SPECIFICATION [18-11-2021(online)].pdf | 2021-11-18 |
| 14 | Abstract1.jpg | 2022-04-07 |
| 15 | 202021020938-FORM 18 [13-11-2024(online)].pdf | 2024-11-13 |
| 16 | 202021020938-FER.pdf | 2025-10-22 |