system
The system addresses the challenge of non-experts performing data analysis by identifying and extracting data from natural language input, facilitating efficient and understandable data analysis.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- SOFTBANK GROUP CORP
- Filing Date
- 2024-12-11
- Publication Date
- 2026-06-23
AI Technical Summary
Conventional systems face challenges in enabling users without specialized knowledge to effectively extract and analyze specific data through natural language input, as they lack direct linkage between natural language input and data extraction and analysis, making it difficult to achieve both ease of interface and in-depth data analysis.
A system that identifies target data from natural language input, extracts information from a database, analyzes it, and generates results in an understandable format, allowing users to perform complex data analysis efficiently without specialized skills.
Enables users to perform data analysis intuitively and understand results in a user-friendly format, enhancing data extraction and analysis capabilities for non-experts.
Smart Images

Figure 2026102166000001_ABST
Abstract
Description
Technical Field
[0001] The technology of this disclosure relates to a system.
Background Art
[0002] Patent Document 1 discloses a persona chatbot control method performed by at least one processor, including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Data analysis is indispensable in many operations, but it is generally limited to users with specialized knowledge. Therefore, it is difficult for users without specialized knowledge to effectively extract and analyze individual and specific data, quickly discover problems, and formulate solutions. In conventional systems, there is a problem that natural language input is not directly linked to data extraction and analysis, and it is impossible to achieve both ease of interface and in - depth data analysis.
Means for Solving the Problems
[0005] This invention provides a means for identifying target data from natural language input and extracting information from a database, thereby enabling data analysis without requiring specialized user skills. Furthermore, by providing a means for analyzing the extracted information and generating the results in natural language, users can obtain data insights in a direct and easily understandable format. Additionally, by displaying the analysis results on an output device, users can easily acquire the information. This system enables even users without specialized knowledge to efficiently perform complex data analysis.
[0006] "Natural language input" is a method of inputting information into a system using normal spoken or written language.
[0007] "Target data" refers to a specific dataset that should be processed in response to user requests or queries.
[0008] A "database" is a system that systematically stores and manages a collection of information, enabling retrieval and management.
[0009] "Information extraction" is the process of retrieving necessary information from a database based on specific conditions.
[0010] "Analysis" refers to the statistical or logical evaluation of extracted data in order to find meaning in it.
[0011] "Generating results in natural language" means putting the results of the analysis into text in a format that is easy for the user to understand.
[0012] "Displaying on an output device" means visually showing data on a computer monitor or other display device in order to provide information to the user. [Brief explanation of the drawing]
[0013] [Figure 1] This is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] It is a conceptual diagram showing an example of the main functions of a data processing device and a smart device according to the first embodiment. [Figure 3] It is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] It is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] It is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] It is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] It is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] It is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] It shows an emotion map to which multiple emotions are mapped. [Figure 10] It shows an emotion map to which multiple emotions are mapped. [Figure 11] It is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] It is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] It is a sequence diagram showing the processing flow of the data processing system in Example 2 when an emotion engine is combined. [Figure 14] It is a sequence diagram showing the processing flow of the data processing system in Application Example 2 when an emotion engine is combined.
MODE FOR CARRYING OUT THE INVENTION
[0014] Hereinafter, an example of an embodiment of a system according to the technology of the present disclosure will be described with reference to the accompanying drawings.
[0015] First, the terms used in the following description will be explained.
[0016] In the following embodiments, the numbered processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), and the like.
[0017] In the following embodiments, the numbered RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a work memory by the processor.
[0018] In the following embodiments, the numbered storage is one or more non-volatile storage devices that store various programs and various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), or magnetic tapes, etc.
[0019] In the following embodiments, the numbered communication I / F (Interface) is an interface including a communication processor and an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), or Bluetooth (registered trademark), etc.
[0020] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."
[0021] [First Embodiment]
[0022] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.
[0023] As shown in Figure 1, the data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0024] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0025] The smart device 14 comprises a computer 36, a reception device 38, an output device 40, a camera 42, and a communication interface 44. The computer 36 comprises a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The reception device 38, output device 40, and camera 42 are also connected to the bus 52.
[0026] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0027] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0028] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.
[0029] Figure 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0030] As shown in Figure 2, in the data processing device 12, a specific processing is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" related to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 according to the specific processing program 56 executed on the RAM 30.
[0031] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0032] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0033] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0034] This invention provides a system that features a user-friendly interface using natural language and enables efficient information extraction and analysis from databases. To implement this system, terminals, servers, and a network connecting them are used.
[0035] Terminal role
[0036] The terminal functions as a user input device, sending data requests to the server in natural language. Through this terminal, the user can specify the type of data and the content of the analysis in natural language.
[0037] Server Role
[0038] The server analyzes natural language input sent from the terminal and generates queries for database access. Specifically, it uses natural language processing techniques to analyze the input and identify the target data. Next, it automatically generates queries to extract information from the database based on this target data. The extracted data is analyzed on the server, and the results are compiled in natural language.
[0039] The server also sends the generated analysis results to the terminal, providing the user with visual feedback. Specific data trends and analysis results are output in a format that is easy for the user to understand.
[0040] Specific example
[0041] For example, if a user wants to perform a sales analysis, they would input "I want to compare last year's sales with this year's sales" into the terminal using natural language. The terminal would then send this input to the server.
[0042] When the server receives this, the natural language processing engine parses the input and identifies the necessary sales data. It then generates an appropriate query for the database and extracts the sales data. The extracted data is then analyzed, and the analysis results are generated in natural language, such as "This year's sales increased by 10% compared to last year."
[0043] Finally, the generated results are sent to the device, allowing the user to review them. This process enables users to perform data analysis efficiently, even without specialized data skills.
[0044] The following describes the processing flow.
[0045] Step 1:
[0046] The user uses their device to input a request in natural language, such as "I want to compare last year's sales with this year's sales." This input is processed by the device and prepared for transmission to the server.
[0047] Step 2:
[0048] The terminal sends user input to the server. This communication is properly encrypted over the network.
[0049] Step 3:
[0050] The server receives natural language input from the terminal and begins analysis using its natural language processing engine. Here, it identifies the need for sales data comparison and specifies the required time period.
[0051] Step 4:
[0052] Based on the analysis results, the server automatically generates an SQL query to access the database. This query retrieves sales data for the previous and current fiscal years.
[0053] Step 5:
[0054] The server uses the generated SQL query to access the database and extract the necessary data. This data is temporarily stored in the server's memory.
[0055] Step 6:
[0056] The server performs statistical analysis on the extracted sales data and calculates the sales variance. It also analyzes factors that may have influenced sales.
[0057] Step 7:
[0058] The server formats the analysis results into a report in natural language. This report might say something like, "This year's sales increased by 10% compared to last year."
[0059] Step 8:
[0060] The server sends the generated natural language report to the terminal. This transmission is again properly performed over the network.
[0061] Step 9:
[0062] The terminal receives reports sent from the server and displays them for the user to review. The user can visually understand the analysis results and use them to make subsequent decisions.
[0063] (Example 1)
[0064] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0065] In today's information society, it is difficult for non-expert users to easily extract necessary information from databases and perform data analysis based on that information. In particular, there is a need for users without specialized technical knowledge to efficiently extract information using natural language and obtain analysis results in an understandable format.
[0066] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0067] In this invention, the server includes means for identifying target data from natural language input and generating a database query, means for executing the generated database query and obtaining necessary information from the information set, and means for analyzing the obtained information and constructing the results in natural language. This makes it possible for non-expert users to easily extract and analyze data through natural language input and obtain the results in an easily understandable format.
[0068] "Natural language input" refers to text data written in human language that users use to give instructions or make inquiries to a computer.
[0069] "Target data" refers to information that needs to be extracted from the database based on the user's natural language input.
[0070] A "database query" is a set of commands issued to retrieve desired information from a database, and is expressed in formats such as SQL, which is used for searching and extracting data.
[0071] An "information set" refers to a collection of data, such as relational data and document data, that includes all the data stored in a database.
[0072] "Analysis" refers to the process of evaluating acquired data according to a specific purpose and deriving meaningful conclusions or insights.
[0073] "Constructing in natural language" refers to creating sentences that can be interpreted in human language in order to convey the results of the analysis to the user in an easy-to-understand manner.
[0074] An "output terminal" refers to a device that receives instructions and data from a server and displays that information to the user visually or audibly.
[0075] This invention is a system that features a natural language interface and performs efficient information extraction and analysis. An embodiment of the invention utilizes a terminal, a server, and a communication network connecting them.
[0076] The user inputs data requests in natural language through the terminal. The terminal is responsible for sending the input natural language data to the server. The server first parses the received natural language input using a natural language processing engine. Generative AI models such as Google Cloud Natural Language API and Amazon Comprehend are used for this parsing. Based on the parsed results, the server generates database queries and executes them against the database system to retrieve the appropriate set of information.
[0077] The acquired data is analyzed by the server, and the analysis results are compiled into natural language. These results are then generated in a user-friendly format and sent to the device. The user can then view the analysis results through the device.
[0078] As a concrete example, consider a case where a user enters "I want to know the most popular product this year" into their terminal. The server analyzes this natural language input and generates a query to retrieve sales data for the specified product. Then, it extracts the necessary information from the database and creates a result such as "The most popular product this year is 'product name,' and the number of units sold is 1000," which it then sends to the terminal.
[0079] Examples of prompts include natural language requests such as "I want to know the sales summary for this year" or "Please tell me the current inventory status." This system allows users to search for information and obtain analysis results using everyday language, even without advanced technical knowledge.
[0080] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0081] Step 1:
[0082] The user inputs the desired information into the terminal using natural language. For example, the user might input "I want to know this year's sales." The input is raw natural language text, which is then sent to the server as input data.
[0083] Step 2:
[0084] The terminal receives the input natural language data and sends it to the server. Specifically, the terminal's operation involves transferring text data to the server using a network protocol. The server receives the user input text exactly as it was entered.
[0085] Step 3:
[0086] The server parses the received natural language input. Here, it uses a generative AI model (e.g., a natural language processing engine) to identify target data from the input text and generate a database query. In this process, keywords are extracted through natural language analysis, and based on these, a database query such as "SELECT SUM(sales) FROM SalesData WHERE year = 'this year'" is generated. The output is this query.
[0087] Step 4:
[0088] The server executes the generated database query and extracts relevant information from the database. Specifically, it accesses the database using query statements such as SQL and collects data that matches the specified conditions. The output of this procedure is numerical data, such as total sales.
[0089] Step 5:
[0090] The server analyzes the extracted information and constructs the results in natural language in a user-friendly format. The analysis calculates the collected numerical data and, based on the results, generates natural language sentences such as "Total sales for this year are 1 million yen." This sentence becomes the output of the step.
[0091] Step 6:
[0092] The server sends the generated natural language result to the terminal, and the terminal displays the result to the user. Specifically, the terminal's operation is to display the text information on the screen through the user interface. The output here is text information that the user can visually confirm.
[0093] This process allows users to extract data and obtain results through natural language queries via the server and terminal.
[0094] (Application Example 1)
[0095] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."
[0096] Traditional data retrieval systems often required users to perform complex operations or possess specialized knowledge, making them difficult to use, especially for non-specialist users. Furthermore, providing information based on specific criteria was often time-consuming and cumbersome, hindering efficient information gathering.
[0097] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0098] In this invention, the server includes means for identifying target data from natural language input, means for extracting information from a data set based on the identified target data, and means for displaying the generated results on a display device. This makes it possible for users to efficiently and intuitively obtain the necessary information and to be presented with information based on specific conditions, even without special knowledge.
[0099] "Means for identifying target data from natural language input" refers to a function that understands the natural language text entered by the user and identifies specific data related to it.
[0100] "Means for extracting information from a data set based on identified target data" refers to a function that retrieves information corresponding to the identified data from data storage such as a database.
[0101] "Means for analyzing extracted information and generating results in natural language" refers to a function that analyzes extracted information and expresses the results in natural language that is easy for users to understand.
[0102] "Means for displaying the generated results on a display device" refers to a function that visually presents the results generated in natural language on an output device such as a display.
[0103] "Means of presenting information obtained based on user requests according to specific conditions" refers to a function that organizes the information obtained according to the conditions specified by the user and provides it to the user in the most relevant form.
[0104] The system for implementing this invention is designed as a comprehensive platform that allows users to search for information using natural language. When a user enters a search request in natural language via a terminal such as a smartphone or computer, that input is transmitted to a server via the network. The hardware requires an internet-connected terminal and a high-performance server, which enables real-time data processing.
[0105] The server uses natural language processing tools such as Amazon Comprehend and Google Cloud Natural Language API to analyze natural language input from the user. This analysis identifies relevant data and forms database queries such as SQL. The data is extracted from databases such as MySQL® and PostgreSQL, and evaluated and analyzed on the server. The analysis results are generated in a user-friendly format using natural language and sent back to the terminal via the network.
[0106] On the user's device, these results are displayed on the screen, allowing the user to obtain information interactively. This interface makes it easy for users to handle complex data without requiring specialized search knowledge. For example, by entering "I want a highly-rated laptop for under 3000 yen," relevant product information can be easily retrieved and displayed.
[0107] An example of a prompt message is an input that includes specific conditions, such as "List items with a rating of ★★★★ or higher and a budget of less than 3000 yen." The practical value of this invention lies in the fact that it allows users to instantly obtain information that matches their desired conditions.
[0108] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0109] Step 1:
[0110] The user uses a terminal to input an information retrieval request in natural language. The input text is received by the terminal's interface and formatted as data to be sent to the server in preparation for natural language processing.
[0111] Step 2:
[0112] The server analyzes natural language input received from the terminal using Amazon Comprehend or the Google Cloud Natural Language API. This analysis process extracts context and keywords and generates specific identifiers for conversion into database queries. The analysis results output the basic structure of the target data and queries.
[0113] Step 3:
[0114] The server performs a search on a database such as MySQL or PostgreSQL based on the query structure obtained in step 2. Here, it queries the database for information and extracts data that matches the user's request. The relevant data is output as search results.
[0115] Step 4:
[0116] The server analyzes the extracted data and constructs results in natural language that are easy for the user to understand. Specifically, it utilizes a generative AI model to create a clear and easy-to-read report based on the analyzed data. This process uses prompts to adjust the format of the information and prepare output in a format suitable for the user.
[0117] Step 5:
[0118] The server generates natural language results and sends them to the terminal, which then displays them on its screen. The user can then visually review the results and interact with them further as needed. Because this display is done through an interface, the user experience is enhanced.
[0119] Step 6:
[0120] Users can make decisions based on the information displayed, and if necessary, return to the initial step to search for additional information, thereby gaining deeper insights. This feedback loop allows the system to be used efficiently.
[0121] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0122] This invention is a system that combines a natural language-based user interface with an emotion engine, enabling efficient information extraction and analysis from a database, as well as providing information that takes the user's emotions into consideration. The details of the system are shown below.
[0123] Terminal role
[0124] The terminal is an interface that allows users to input requests in natural language and reflect their emotions. When a user inputs, "I want to compare last year's and this year's sales. I'm worried about the decline in performance," the terminal sends this input to the server.
[0125] Server Role
[0126] When the server receives input from a terminal, it analyzes it using a natural language processing engine and an emotion engine. First, the natural language processing engine analyzes the meaning of the input and identifies what data is needed. Next, the emotion engine analyzes the emotions contained in the user's input and identifies the element of "anxiety."
[0127] Based on the data identified by the server, it automatically generates queries to the database to retrieve sales data. The retrieved data is analyzed by an analytics engine to gain insights into sales discrepancies and trends. In this process, the server adjusts the results, including positive information to alleviate user anxiety, based on the analysis results of the sentiment engine.
[0128] Once the analysis is complete, the server generates results in natural language and creates a report that resonates with the user's emotions. For example, it might say, "This year's sales increased by 10% compared to last year. This is due to the success of the new product introduced in the second half of last year. There is no need to worry."
[0129] Specific example
[0130] Suppose a user inputs the following into their device: "I'm worried about the recent decline in sales. I'd like to see how things look in the future." The server receives this input, analyzes the sales data, and recognizes the user's emotion of "worry." As a result, it generates an explanation that takes the user's feelings into consideration, such as, "Sales have decreased slightly compared to last year, but we expect a recovery in the future due to the impact of our new campaign," and sends it to the device.
[0131] By incorporating an emotion engine in this way, the system goes beyond simply providing data analysis results to users, enabling the delivery of more emotionally resonant and convincing information. This supports user decision-making and improves work efficiency.
[0132] The following describes the processing flow.
[0133] Step 1:
[0134] The user uses a device to input a request in natural language, including emotions such as, "I'm worried about the recent decline in sales. I want to look ahead to the future." The device receives this input and prepares to send it to the server.
[0135] Step 2:
[0136] The terminal sends the input data received from the user to the server. During this process, the data is protected by a secure communication protocol.
[0137] Step 3:
[0138] The server receives input sent from the terminal. It activates a natural language processing engine, analyzes the request, and identifies the type of data being requested.
[0139] Step 4:
[0140] The server uses an emotion engine to evaluate the emotions contained in the user's input. In this case, the emotion "worry" is extracted.
[0141] Step 5:
[0142] The server automatically generates queries to the database based on the type of data and sentiment information obtained from natural language processing. It then accesses the database to extract sales data.
[0143] Step 6:
[0144] The server analyzes sales data retrieved from the database. The analysis calculates factors influencing sales increases and decreases, as well as trends. It also considers emotional information, emphasizing positive elements that alleviate user anxiety.
[0145] Step 7:
[0146] The server compiles the analysis results into a report in natural language. This report includes perspectives that alleviate user concerns, such as showing prospects for future sales improvement and success factors.
[0147] Step 8:
[0148] The server sends the generated natural language report to the terminal. This transmission is also performed under appropriate security measures.
[0149] Step 9:
[0150] The device receives reports sent from the server and displays them in a user-friendly format. By reviewing these results and receiving empathetic feedback, users can consider their next actions with greater confidence.
[0151] (Example 2)
[0152] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".
[0153] Modern information processing systems are required to properly understand natural language input and provide information that takes user emotions into consideration. However, conventional systems only provide static data analysis results without considering user emotions, and have not adequately contributed to user decision-making or stress reduction.
[0154] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0155] In this invention, the server includes means for identifying target information from natural language input and performing sentiment analysis; means for extracting information from an information storage device based on the identified target information and sentiment analysis results, and generating adjusted analysis results using a generation engine; and means for generating the generated analysis results in natural language and displaying them on an output device, including content to support decision-making. This enables the provision of information and decision-making support that is tailored to the user's emotions.
[0156] "Natural language input" is a method of inputting the words that users use in their daily lives directly into an information system.
[0157] "Emotion analysis" is a technology that identifies and analyzes a user's emotions from the natural language input.
[0158] "Target information" refers to a set of information identified based on natural language input from the user.
[0159] An "information storage device" is a device or system that holds various types of information and allows it to be retrieved as needed.
[0160] A "generation engine" is a program or system that generates new data or analysis results based on extracted information.
[0161] An "output device" is a device that displays processed information or results so that the user can visually confirm them.
[0162] "Content that supports decision-making" refers to content that includes information and insights necessary for users to make better decisions.
[0163] This invention is a system that combines a user interface using natural language input with sentiment analysis capabilities. It begins with the user using a terminal to input a request in natural language. The terminal functions as an interface to send the input to the server. The server uses a natural language processing engine and a sentiment engine to process this input. A generative AI model is at the core of this system, providing the ability to understand the user's requests and identify the necessary information.
[0164] The server first uses a natural language processing engine to analyze the input, identifying what information is needed. Next, it uses an emotion engine to analyze the user's emotions from the input, detecting emotions such as "anxiety" or "worry." Based on this information, the server automatically generates queries to the database and retrieves the necessary data.
[0165] The acquired data is processed by an analysis engine, providing insights such as sales discrepancies and trends. This process also takes user sentiment into account, allowing for modifications to selected data and information to be interpreted more positively by users.
[0166] Finally, the server generates the results in natural language and sends them to the user's terminal as a report in an easy-to-understand format. For example, if a user enters the prompt "I'm worried about the recent decline in sales. I'd like to see what the future holds," the server analyzes the sales data and recognizes the user's emotion of "worry." As a result, it generates an explanation that takes the user's feelings into consideration, such as "Sales have decreased slightly compared to last year, but we expect a recovery in the future due to the impact of the new campaign."
[0167] This system goes beyond simply providing users with data analysis results; it enables the delivery of more emotionally resonant and convincing information, thereby supporting user decision-making and improving operational efficiency.
[0168] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0169] Step 1:
[0170] The user enters their inquiry in natural language via the terminal. An example of input might be, "I would like to compare last year's and this year's sales. I am worried about the decline in performance." The input here is text data that includes the user's intent and feelings. The role of the terminal is to convert this text data into an appropriate format and prepare it for transmission to the server.
[0171] Step 2:
[0172] The terminal formats natural language text obtained from the user and securely transmits it to the server. Specifically, this involves packaging the data according to the data communication protocol and sending it to the server as a data packet. The input is the user's text data, and the output is formatted communication data.
[0173] Step 3:
[0174] The server inputs the received data into a natural language processing engine. This initiates the process of understanding what information is needed from the input natural language. Specifically, a generative AI model is driven to analyze the text content and identify the requirement of "sales comparison." The input is formatted text data, and the output is the identification of the necessary data as a result of the analysis.
[0175] Step 4:
[0176] The server sends data to the emotion engine based on the analysis results obtained from natural language processing. The emotion engine extracts emotions from the text entered by the user and identifies emotions such as "anxiety." Specifically, it executes an emotion analysis algorithm and evaluates the elements of emotion and their intensity. The input is the analyzed text data, and the output is emotion data.
[0177] Step 5:
[0178] The server generates queries for the information storage device based on the results of both natural language processing and sentiment analysis. These queries are automatically generated to retrieve the necessary sales data. The generation engine creates the queries using database languages such as SQL. The inputs are the identification of the necessary data and sentiment data, and the output is a ready-to-execute query.
[0179] Step 6:
[0180] The server sends the generated query to the information storage device to retrieve sales data. The retrieved data is passed to the analysis engine, which performs data analysis under specific conditions. Specifically, it executes data comparison and trend analysis algorithms. The input is the sales data obtained by the query, and the output is the analysis results.
[0181] Step 7:
[0182] The server uses a generative AI model, taking sentiment data into consideration, to generate results in natural language based on the analysis results. The output is a tailored report designed to alleviate user anxiety and support decision-making. The input consists of analyzed data and sentiment data, and the output is a generated natural language report.
[0183] Step 8:
[0184] The server sends the generated natural language report to the terminal. Specifically, it converts the report back into the optimal data format based on the communication protocol and sends it as a data packet to the terminal. The input is the natural language report, and the output is the transmitted data.
[0185] Step 9:
[0186] The terminal displays the received report on the user interface. This allows the user to visually review the analysis results and the corresponding emotions. The output is a natural language report displayed on the screen.
[0187] (Application Example 2)
[0188] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".
[0189] In conventional systems, data extraction and analysis results are presented separately when users search for information, which presents a challenge in providing information that reflects the user's emotions. Furthermore, if a user has specific emotions, they may not receive appropriate feedback that corresponds to those emotions, potentially leading to unstable decision-making. There is a need for a system that can improve this situation and provide information that takes users' emotions into consideration.
[0190] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0191] In this invention, the server includes means for identifying target data from natural language input, means for extracting information from a data warehouse based on the identified target data, means for analyzing the extracted information and generating results in natural language, means for analyzing the user's emotions and adjusting the information provided accordingly, and means for displaying the generated results on an output device. This makes it possible to provide information that is sensitive to the user's emotions based on their natural language input.
[0192] "Natural language input" is a method of inputting language that humans normally use into a computer, allowing the computer system to understand its meaning and perform operations accordingly.
[0193] "Target data" refers to information extracted from the data warehouse based on user input or requests, and which is subject to analysis.
[0194] A "data warehouse" is a structured location or system for systematically storing large amounts of information, enabling rapid and efficient searching and analysis.
[0195] "Means of extracting information" refers to methods or techniques for obtaining necessary information from a data warehouse based on identified target data.
[0196] "Means for analysis and generating results in natural language" refers to techniques or methods for analyzing extracted information and expressing the results in a natural language format that is easily understood by humans.
[0197] "Means of analyzing user emotions and adjusting information provision accordingly" refers to technology that detects emotional components included in user input and changes the content and presentation method of information according to those emotions.
[0198] "Means for displaying on an output device" refers to a device or technology for presenting the generated natural language format results on a display or other display device.
[0199] The system implementing this invention includes a server equipped with a natural language processing engine and an emotion engine, and a terminal for user operation. When the user provides input in natural language, the terminal sends it to the server. The server uses the NaturalLanguageProcessingEngine to analyze the input and identify what data is needed. At this time, the EmotionEngine is used to detect the user's emotions (e.g., worry or anxiety).
[0200] The server uses DatabaseConnector to extract necessary information from the data warehouse based on the identified target data. The extracted information is parsed and converted into a natural language response. Furthermore, the emotion engine provides information that takes emotions into account, so the content presented is sensitive to the user's feelings. For example, if the user enters "I'm worried about this month's expenses," feedback such as "Considering your spending trends, saving in certain categories is recommended" will be provided.
[0201] This system allows users to receive useful information tailored to their own emotions, enabling them to make decisions with greater confidence.
[0202] An example of a prompt to input into the generating AI model is, "Generate a summary of spending performance and sentiment-sensitive feedback based on the user's input text and sentiment."
[0203] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0204] Step 1:
[0205] The user inputs information into the device using natural language. For example, they might type, "I'm worried about this month's expenses." The device receives this input as text data and sends it to the server.
[0206] Step 2:
[0207] The server uses NaturalLanguageProcessingEngine to parse the received text. This process analyzes language patterns to identify what data is needed. The output is the identification of the target data.
[0208] Step 3:
[0209] The server uses EmotionEngine to analyze the emotions contained in the user's input text. This process identifies emotions (e.g., "worry") from specific keywords and context. The output is the result of the emotion determination.
[0210] Step 4:
[0211] The server uses DatabaseConnector to extract the necessary information from the data warehouse based on the identified target data. Here, a query is generated based on the previously identified data type, and the data is retrieved. The output is informational data.
[0212] Step 5:
[0213] The server integrates the analyzed information data and sentiment judgment results, and uses a generative AI model to generate a natural language response. This response is then fed back to the user as sentiment-sensitive information. For example, it might say, "Analysis of spending recommends saving in a specific category." The output is natural language feedback.
[0214] Step 6:
[0215] The server sends the generated natural language response to the terminal, which then displays it to the user. This allows the user to receive feedback that is tailored to their natural language input and emotions.
[0216] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0217] Data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0218] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.
[0219] [Second Embodiment]
[0220] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.
[0221] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0222] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0223] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.
[0224] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0225] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0226] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0227] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0228] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0229] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0230] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0231] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0232] This invention provides a system that features a user-friendly interface using natural language and enables efficient information extraction and analysis from databases. To implement this system, terminals, servers, and a network connecting them are used.
[0233] Terminal role
[0234] The terminal functions as a user input device, sending data requests to the server in natural language. Through this terminal, the user can specify the type of data and the content of the analysis in natural language.
[0235] Server Role
[0236] The server analyzes natural language input sent from the terminal and generates queries for database access. Specifically, it uses natural language processing techniques to analyze the input and identify the target data. Next, it automatically generates queries to extract information from the database based on this target data. The extracted data is analyzed on the server, and the results are compiled in natural language.
[0237] The server also sends the generated analysis results to the terminal, providing the user with visual feedback. Specific data trends and analysis results are output in a format that is easy for the user to understand.
[0238] Specific example
[0239] For example, if a user wants to perform a sales analysis, they would input "I want to compare last year's sales with this year's sales" into the terminal using natural language. The terminal would then send this input to the server.
[0240] When the server receives this, the natural language processing engine parses the input and identifies the necessary sales data. It then generates an appropriate query for the database and extracts the sales data. The extracted data is then analyzed, and the analysis results are generated in natural language, such as "This year's sales increased by 10% compared to last year."
[0241] Finally, the generated results are sent to the device, allowing the user to review them. This process enables users to perform data analysis efficiently, even without specialized data skills.
[0242] The following describes the processing flow.
[0243] Step 1:
[0244] The user uses their device to input a request in natural language, such as "I want to compare last year's sales with this year's sales." This input is processed by the device and prepared for transmission to the server.
[0245] Step 2:
[0246] The terminal sends user input to the server. This communication is properly encrypted over the network.
[0247] Step 3:
[0248] The server receives natural language input from the terminal and begins analysis using its natural language processing engine. Here, it identifies the need for sales data comparison and specifies the required time period.
[0249] Step 4:
[0250] Based on the analysis results, the server automatically generates an SQL query to access the database. This query retrieves sales data for the previous and current fiscal years.
[0251] Step 5:
[0252] The server uses the generated SQL query to access the database and extract the necessary data. This data is temporarily stored in the server's memory.
[0253] Step 6:
[0254] The server performs statistical analysis on the extracted sales data and calculates the sales variance. It also analyzes factors that may have influenced sales.
[0255] Step 7:
[0256] The server formats the analysis results into a report in natural language. This report might say something like, "This year's sales increased by 10% compared to last year."
[0257] Step 8:
[0258] The server sends the generated natural language report to the terminal. This transmission is again properly performed over the network.
[0259] Step 9:
[0260] The terminal receives reports sent from the server and displays them for the user to review. The user can visually understand the analysis results and use them to make subsequent decisions.
[0261] (Example 1)
[0262] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0263] In today's information society, it is difficult for non-expert users to easily extract necessary information from databases and perform data analysis based on that information. In particular, there is a need for users without specialized technical knowledge to efficiently extract information using natural language and obtain analysis results in an understandable format.
[0264] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0265] In this invention, the server includes means for identifying target data from natural language input and generating a database query, means for executing the generated database query and obtaining necessary information from the information set, and means for analyzing the obtained information and constructing the results in natural language. This makes it possible for non-expert users to easily extract and analyze data through natural language input and obtain the results in an easily understandable format.
[0266] "Natural language input" refers to text data written in human language that users use to give instructions or make inquiries to a computer.
[0267] "Target data" refers to information that needs to be extracted from the database based on the user's natural language input.
[0268] A "database query" is a set of commands issued to retrieve desired information from a database, and is expressed in formats such as SQL, which is used for searching and extracting data.
[0269] An "information set" refers to a collection of data, such as relational data and document data, that includes all the data stored in a database.
[0270] "Analysis" refers to the process of evaluating acquired data according to a specific purpose and deriving meaningful conclusions or insights.
[0271] "Constructing in natural language" refers to creating sentences that can be interpreted in human language in order to convey the results of the analysis to the user in an easy-to-understand manner.
[0272] An "output terminal" refers to a device that receives instructions and data from a server and displays that information to the user visually or audibly.
[0273] This invention is a system that features a natural language interface and performs efficient information extraction and analysis. An embodiment of the invention utilizes a terminal, a server, and a communication network connecting them.
[0274] The user inputs data requests in natural language through the terminal. The terminal is responsible for sending the input natural language data to the server. The server first parses the received natural language input using a natural language processing engine. Generative AI models such as Google Cloud Natural Language API and Amazon Comprehend are used for this parsing. Based on the parsed results, the server generates database queries and executes them against the database system to retrieve the appropriate set of information.
[0275] The acquired data is analyzed by the server, and the analysis results are compiled into natural language. These results are then generated in a user-friendly format and sent to the device. The user can then view the analysis results through the device.
[0276] As a concrete example, consider a case where a user enters "I want to know the most popular product this year" into their terminal. The server analyzes this natural language input and generates a query to retrieve sales data for the specified product. Then, it extracts the necessary information from the database and creates a result such as "The most popular product this year is 'product name,' and the number of units sold is 1000," which it then sends to the terminal.
[0277] Examples of prompts include natural language requests such as "I want to know the sales summary for this year" or "Please tell me the current inventory status." This system allows users to search for information and obtain analysis results using everyday language, even without advanced technical knowledge.
[0278] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0279] Step 1:
[0280] The user inputs the desired information into the terminal using natural language. For example, the user might input "I want to know this year's sales." The input is raw natural language text, which is then sent to the server as input data.
[0281] Step 2:
[0282] The terminal receives the input natural language data and transmits it to the server. As a specific operation of the terminal, it transfers text data to the server using a network protocol. What reaches the server is the original user input text.
[0283] Step 3:
[0284] The server analyzes the received natural language input. Here, a generative AI model (for example, a natural language processing engine) is used to identify target data from the input text and generate a database query. In this process, keywords are extracted through natural language analysis, and based on them, a database query such as "SELECT SUM(sales) FROM SalesData WHERE year = 'this year'" is generated. The output is this query.
[0285] Step 4:
[0286] The server executes the generated database query and extracts relevant information from the database. Specifically, it accesses the database using a query statement such as SQL and collects data that meets the conditions. The output of this procedure is, for example, numerical data such as total sales.
[0287] Step 5:
[0288] The server analyzes the extracted information and assembles the result into a natural language in an easy-to-understand form for the user. In the analysis, the collected numerical data is calculated, and based on the result, a natural language sentence such as "The total sales this year is 1 million yen" is generated. This sentence is the output of the step.
[0289] Step 6:
[0290] The server sends the generated natural language result to the terminal, and the terminal displays the result to the user. Specifically, the terminal's operation is to display the text information on the screen through the user interface. The output here is text information that the user can visually confirm.
[0291] This process allows users to extract data and obtain results through natural language queries via the server and terminal.
[0292] (Application Example 1)
[0293] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0294] Traditional data retrieval systems often required users to perform complex operations or possess specialized knowledge, making them difficult to use, especially for non-specialist users. Furthermore, providing information based on specific criteria was often time-consuming and cumbersome, hindering efficient information gathering.
[0295] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0296] In this invention, the server includes means for identifying target data from natural language input, means for extracting information from a data set based on the identified target data, and means for displaying the generated results on a display device. This makes it possible for users to efficiently and intuitively obtain the necessary information and to be presented with information based on specific conditions, even without special knowledge.
[0297] "Means for identifying target data from natural language input" refers to a function that understands the natural language text entered by the user and identifies specific data related to it.
[0298] "Means for extracting information from a data set based on identified target data" refers to a function that retrieves information corresponding to the identified data from data storage such as a database.
[0299] "Means for analyzing extracted information and generating results in natural language" refers to a function that analyzes extracted information and expresses the results in natural language that is easy for users to understand.
[0300] "Means for displaying the generated results on a display device" refers to a function that visually presents the results generated in natural language on an output device such as a display.
[0301] "Means of presenting information obtained based on user requests according to specific conditions" refers to a function that organizes the information obtained according to the conditions specified by the user and provides it to the user in the most relevant form.
[0302] The system for implementing this invention is designed as a comprehensive platform that allows users to search for information using natural language. When a user enters a search request in natural language via a terminal such as a smartphone or computer, that input is transmitted to a server via the network. The hardware requires an internet-connected terminal and a high-performance server, which enables real-time data processing.
[0303] The server uses natural language processing tools such as Amazon Comprehend and Google Cloud Natural Language API to analyze natural language input from the user. This analysis identifies relevant data and forms database queries such as SQL. The data is extracted from databases such as MySQL and PostgreSQL, evaluated and analyzed on the server. The analysis results are generated in a user-friendly format using natural language and sent back to the terminal via the network.
[0304] On the user's terminal, this result is displayed on the display, and the user obtains information in an interactive manner. With this interface, even without specialized search knowledge, users can easily handle complex data. For example, by entering "want a high - evaluation notebook computer within 3000 yen", relevant product information can be easily obtained and displayed.
[0305] As an example of the prompt sentence, there is an input including specific conditions such as "List up items with a rating of ★★★★ or above and a budget of less than 3000 yen". The practical value of this invention is that information meeting the conditions required by the user can be immediately obtained.
[0306] The flow of the specific process in Application Example 1 will be described using FIG. 12.
[0307] Step 1:
[0308] The user uses the terminal and inputs an information search request in natural language. The input text is received by the terminal interface and formatted as data to be sent to the server for natural language processing preparation.
[0309] Step 2:
[0310] The server analyzes the natural language input received from the terminal using Amazon Comprehend or Google Cloud Natural Language API. In this analysis process, context and keywords are extracted, and specific identifiers for converting into a database query are generated. As an analysis result, the target data and the basic structure of the query are output.
[0311] Step 3:
[0312] The server performs a search on a database such as MySQL or PostgreSQL based on the query structure obtained in step 2. Here, it queries the database for information and extracts data that matches the user's request. The relevant data is output as search results.
[0313] Step 4:
[0314] The server analyzes the extracted data and constructs results in natural language that are easy for the user to understand. Specifically, it utilizes a generative AI model to create a clear and easy-to-read report based on the analyzed data. This process uses prompts to adjust the format of the information and prepare output in a format suitable for the user.
[0315] Step 5:
[0316] The server generates natural language results and sends them to the terminal, which then displays them on its screen. The user can then visually review the results and interact with them further as needed. Because this display is done through an interface, the user experience is enhanced.
[0317] Step 6:
[0318] Users can make decisions based on the information displayed, and if necessary, return to the initial step to search for additional information, thereby gaining deeper insights. This feedback loop allows the system to be used efficiently.
[0319] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0320] This invention is a system that combines a natural language-based user interface with an emotion engine, enabling efficient information extraction and analysis from a database, as well as providing information that takes the user's emotions into consideration. The details of the system are shown below.
[0321] Terminal role
[0322] The terminal is an interface that allows users to input requests in natural language and reflect their emotions. When a user inputs, "I want to compare last year's and this year's sales. I'm worried about the decline in performance," the terminal sends this input to the server.
[0323] Server Role
[0324] When the server receives input from a terminal, it analyzes it using a natural language processing engine and an emotion engine. First, the natural language processing engine analyzes the meaning of the input and identifies what data is needed. Next, the emotion engine analyzes the emotions contained in the user's input and identifies the element of "anxiety."
[0325] Based on the data identified by the server, it automatically generates queries to the database to retrieve sales data. The retrieved data is analyzed by an analytics engine to gain insights into sales discrepancies and trends. In this process, the server adjusts the results, including positive information to alleviate user anxiety, based on the analysis results of the sentiment engine.
[0326] Once the analysis is complete, the server generates results in natural language and creates a report that resonates with the user's emotions. For example, it might say, "This year's sales increased by 10% compared to last year. This is due to the success of the new product introduced in the second half of last year. There is no need to worry."
[0327] Specific example
[0328] Suppose a user inputs the following into their device: "I'm worried about the recent decline in sales. I'd like to see how things look in the future." The server receives this input, analyzes the sales data, and recognizes the user's emotion of "worry." As a result, it generates an explanation that takes the user's feelings into consideration, such as, "Sales have decreased slightly compared to last year, but we expect a recovery in the future due to the impact of our new campaign," and sends it to the device.
[0329] By incorporating an emotion engine in this way, the system goes beyond simply providing data analysis results to users, enabling the delivery of more emotionally resonant and convincing information. This supports user decision-making and improves work efficiency.
[0330] The following describes the processing flow.
[0331] Step 1:
[0332] The user uses a device to input a request in natural language, including emotions such as, "I'm worried about the recent decline in sales. I want to look ahead to the future." The device receives this input and prepares to send it to the server.
[0333] Step 2:
[0334] The terminal sends the input data received from the user to the server. During this process, the data is protected by a secure communication protocol.
[0335] Step 3:
[0336] The server receives input sent from the terminal. It activates a natural language processing engine, analyzes the request, and identifies the type of data being requested.
[0337] Step 4:
[0338] The server uses an emotion engine to evaluate the emotions contained in the user's input. In this case, the emotion "worry" is extracted.
[0339] Step 5:
[0340] The server automatically generates queries to the database based on the type of data and sentiment information obtained from natural language processing. It then accesses the database to extract sales data.
[0341] Step 6:
[0342] The server analyzes sales data retrieved from the database. The analysis calculates factors influencing sales increases and decreases, as well as trends. It also considers emotional information, emphasizing positive elements that alleviate user anxiety.
[0343] Step 7:
[0344] The server compiles the analysis results into a report in natural language. This report includes perspectives that alleviate user concerns, such as showing prospects for future sales improvement and success factors.
[0345] Step 8:
[0346] The server sends the generated natural language report to the terminal. This transmission is also performed under appropriate security measures.
[0347] Step 9:
[0348] The device receives reports sent from the server and displays them in a user-friendly format. By reviewing these results and receiving empathetic feedback, users can consider their next actions with greater confidence.
[0349] (Example 2)
[0350] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal".
[0351] Modern information processing systems are required to properly understand natural language input and provide information that takes user emotions into consideration. However, conventional systems only provide static data analysis results without considering user emotions, and have not adequately contributed to user decision-making or stress reduction.
[0352] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0353] In this invention, the server includes means for identifying target information from natural language input and performing sentiment analysis; means for extracting information from an information storage device based on the identified target information and sentiment analysis results, and generating adjusted analysis results using a generation engine; and means for generating the generated analysis results in natural language and displaying them on an output device, including content to support decision-making. This enables the provision of information and decision-making support that is tailored to the user's emotions.
[0354] "Natural language input" is a method of inputting the words that users use in their daily lives directly into an information system.
[0355] "Emotion analysis" is a technology that identifies and analyzes a user's emotions from the natural language input.
[0356] "Target information" refers to a set of information identified based on natural language input from the user.
[0357] An "information storage device" is a device or system that holds various types of information and allows it to be retrieved as needed.
[0358] A "generation engine" is a program or system that generates new data or analysis results based on extracted information.
[0359] An "output device" is a device that displays processed information or results so that the user can visually confirm them.
[0360] "Content that supports decision-making" refers to content that includes information and insights necessary for users to make better decisions.
[0361] This invention is a system that combines a user interface using natural language input with sentiment analysis capabilities. It begins with the user using a terminal to input a request in natural language. The terminal functions as an interface to send the input to the server. The server uses a natural language processing engine and a sentiment engine to process this input. A generative AI model is at the core of this system, providing the ability to understand the user's requests and identify the necessary information.
[0362] The server first uses a natural language processing engine to analyze the input, identifying what information is needed. Next, it uses an emotion engine to analyze the user's emotions from the input, detecting emotions such as "anxiety" or "worry." Based on this information, the server automatically generates queries to the database and retrieves the necessary data.
[0363] The acquired data is processed by an analysis engine, providing insights such as sales discrepancies and trends. This process also takes user sentiment into account, allowing for modifications to selected data and information to be interpreted more positively by users.
[0364] Finally, the server generates the results in natural language and sends them to the user's terminal as a report in an easy-to-understand format. For example, if a user enters the prompt "I'm worried about the recent decline in sales. I'd like to see what the future holds," the server analyzes the sales data and recognizes the user's emotion of "worry." As a result, it generates an explanation that takes the user's feelings into consideration, such as "Sales have decreased slightly compared to last year, but we expect a recovery in the future due to the impact of the new campaign."
[0365] This system goes beyond simply providing users with data analysis results; it enables the delivery of more emotionally resonant and convincing information, thereby supporting user decision-making and improving operational efficiency.
[0366] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0367] Step 1:
[0368] The user enters their inquiry in natural language via the terminal. An example of input might be, "I would like to compare last year's and this year's sales. I am worried about the decline in performance." The input here is text data that includes the user's intent and feelings. The role of the terminal is to convert this text data into an appropriate format and prepare it for transmission to the server.
[0369] Step 2:
[0370] The terminal formats natural language text obtained from the user and securely transmits it to the server. Specifically, this involves packaging the data according to the data communication protocol and sending it to the server as a data packet. The input is the user's text data, and the output is formatted communication data.
[0371] Step 3:
[0372] The server inputs the received data into a natural language processing engine. This initiates the process of understanding what information is needed from the input natural language. Specifically, a generative AI model is driven to analyze the text content and identify the requirement of "sales comparison." The input is formatted text data, and the output is the identification of the necessary data as a result of the analysis.
[0373] Step 4:
[0374] The server sends data to the emotion engine based on the analysis results obtained from natural language processing. The emotion engine extracts emotions from the text entered by the user and identifies emotions such as "anxiety." Specifically, it executes an emotion analysis algorithm and evaluates the elements of emotion and their intensity. The input is the analyzed text data, and the output is emotion data.
[0375] Step 5:
[0376] The server generates queries for the information storage device based on the results of both natural language processing and sentiment analysis. These queries are automatically generated to retrieve the necessary sales data. The generation engine creates the queries using database languages such as SQL. The inputs are the identification of the necessary data and sentiment data, and the output is a ready-to-execute query.
[0377] Step 6:
[0378] The server sends the generated query to the information storage device to retrieve sales data. The retrieved data is passed to the analysis engine, which performs data analysis under specific conditions. Specifically, it executes data comparison and trend analysis algorithms. The input is the sales data obtained by the query, and the output is the analysis results.
[0379] Step 7:
[0380] The server uses a generative AI model, taking sentiment data into consideration, to generate results in natural language based on the analysis results. The output is a tailored report designed to alleviate user anxiety and support decision-making. The input consists of analyzed data and sentiment data, and the output is a generated natural language report.
[0381] Step 8:
[0382] The server sends the generated natural language report to the terminal. Specifically, it converts the report back into the optimal data format based on the communication protocol and sends it as a data packet to the terminal. The input is the natural language report, and the output is the transmitted data.
[0383] Step 9:
[0384] The terminal displays the received report on the user interface. This allows the user to visually review the analysis results and the corresponding emotions. The output is a natural language report displayed on the screen.
[0385] (Application Example 2)
[0386] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."
[0387] In conventional systems, data extraction and analysis results are presented separately when users search for information, which presents a challenge in providing information that reflects the user's emotions. Furthermore, if a user has specific emotions, they may not receive appropriate feedback that corresponds to those emotions, potentially leading to unstable decision-making. There is a need for a system that can improve this situation and provide information that takes users' emotions into consideration.
[0388] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0389] In this invention, the server includes means for identifying target data from natural language input, means for extracting information from a data warehouse based on the identified target data, means for analyzing the extracted information and generating results in natural language, means for analyzing the user's emotions and adjusting the information provided accordingly, and means for displaying the generated results on an output device. This makes it possible to provide information that is sensitive to the user's emotions based on their natural language input.
[0390] "Natural language input" is a method of inputting language that humans normally use into a computer, allowing the computer system to understand its meaning and perform operations accordingly.
[0391] "Target data" refers to information extracted from the data warehouse based on user input or requests, and which is subject to analysis.
[0392] A "data warehouse" is a structured location or system for systematically storing large amounts of information, enabling rapid and efficient searching and analysis.
[0393] "Means of extracting information" refers to methods or techniques for obtaining necessary information from a data warehouse based on identified target data.
[0394] "Means for analysis and generating results in natural language" refers to techniques or methods for analyzing extracted information and expressing the results in a natural language format that is easily understood by humans.
[0395] "Means of analyzing user emotions and adjusting information provision accordingly" refers to technology that detects emotional components included in user input and changes the content and presentation method of information according to those emotions.
[0396] "Means for displaying on an output device" refers to a device or technology for presenting the generated natural language format results on a display or other display device.
[0397] The system implementing this invention includes a server equipped with a natural language processing engine and an emotion engine, and a terminal for user operation. When the user provides input in natural language, the terminal sends it to the server. The server uses the NaturalLanguageProcessingEngine to analyze the input and identify what data is needed. At this time, the EmotionEngine is used to detect the user's emotions (e.g., worry or anxiety).
[0398] The server uses DatabaseConnector to extract necessary information from the data warehouse based on the identified target data. The extracted information is parsed and converted into a natural language response. Furthermore, the emotion engine provides information that takes emotions into account, so the content presented is sensitive to the user's feelings. For example, if the user enters "I'm worried about this month's expenses," feedback such as "Considering your spending trends, saving in certain categories is recommended" will be provided.
[0399] This system allows users to receive useful information tailored to their own emotions, enabling them to make decisions with greater confidence.
[0400] An example of a prompt to input into the generating AI model is, "Generate a summary of spending performance and sentiment-sensitive feedback based on the user's input text and sentiment."
[0401] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0402] Step 1:
[0403] The user inputs information into the device using natural language. For example, they might type, "I'm worried about this month's expenses." The device receives this input as text data and sends it to the server.
[0404] Step 2:
[0405] The server uses NaturalLanguageProcessingEngine to parse the received text. This process analyzes language patterns to identify what data is needed. The output is the identification of the target data.
[0406] Step 3:
[0407] The server uses EmotionEngine to analyze the emotions contained in the user's input text. This process identifies emotions (e.g., "worry") from specific keywords and context. The output is the result of the emotion determination.
[0408] Step 4:
[0409] The server uses DatabaseConnector to extract the necessary information from the data warehouse based on the identified target data. Here, a query is generated based on the previously identified data type, and the data is retrieved. The output is informational data.
[0410] Step 5:
[0411] The server integrates the analyzed information data and sentiment judgment results, and uses a generative AI model to generate a natural language response. This response is then fed back to the user as sentiment-sensitive information. For example, it might say, "Analysis of spending recommends saving in a specific category." The output is natural language feedback.
[0412] Step 6:
[0413] The server sends the generated natural language response to the terminal, which then displays it to the user. This allows the user to receive feedback that is tailored to their natural language input and emotions.
[0414] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0415] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0416] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.
[0417] [Third Embodiment]
[0418] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.
[0419] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0420] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0421] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.
[0422] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0423] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0424] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0425] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0426] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0427] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0428] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0429] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".
[0430] This invention provides a system that features a user-friendly interface using natural language and enables efficient information extraction and analysis from databases. To implement this system, terminals, servers, and a network connecting them are used.
[0431] Terminal role
[0432] The terminal functions as a user input device, sending data requests to the server in natural language. Through this terminal, the user can specify the type of data and the content of the analysis in natural language.
[0433] Server Role
[0434] The server analyzes natural language input sent from the terminal and generates queries for database access. Specifically, it uses natural language processing techniques to analyze the input and identify the target data. Next, it automatically generates queries to extract information from the database based on this target data. The extracted data is analyzed on the server, and the results are compiled in natural language.
[0435] The server also sends the generated analysis results to the terminal, providing the user with visual feedback. Specific data trends and analysis results are output in a format that is easy for the user to understand.
[0436] Specific example
[0437] For example, if a user wants to perform a sales analysis, they would input "I want to compare last year's sales with this year's sales" into the terminal using natural language. The terminal would then send this input to the server.
[0438] When the server receives this, the natural language processing engine parses the input and identifies the necessary sales data. It then generates an appropriate query for the database and extracts the sales data. The extracted data is then analyzed, and the analysis results are generated in natural language, such as "This year's sales increased by 10% compared to last year."
[0439] Finally, the generated results are sent to the device, allowing the user to review them. This process enables users to perform data analysis efficiently, even without specialized data skills.
[0440] The following describes the processing flow.
[0441] Step 1:
[0442] The user uses their device to input a request in natural language, such as "I want to compare last year's sales with this year's sales." This input is processed by the device and prepared for transmission to the server.
[0443] Step 2:
[0444] The terminal sends user input to the server. This communication is properly encrypted over the network.
[0445] Step 3:
[0446] The server receives natural language input from the terminal and begins analysis using its natural language processing engine. Here, it identifies the need for sales data comparison and specifies the required time period.
[0447] Step 4:
[0448] Based on the analysis results, the server automatically generates an SQL query to access the database. This query retrieves sales data for the previous and current fiscal years.
[0449] Step 5:
[0450] The server uses the generated SQL query to access the database and extract the necessary data. This data is temporarily stored in the server's memory.
[0451] Step 6:
[0452] The server performs statistical analysis on the extracted sales data and calculates the sales variance. It also analyzes factors that may have influenced sales.
[0453] Step 7:
[0454] The server formats the analysis results into a report in natural language. This report might say something like, "This year's sales increased by 10% compared to last year."
[0455] Step 8:
[0456] The server sends the generated natural language report to the terminal. This transmission is again properly performed over the network.
[0457] Step 9:
[0458] The terminal receives reports sent from the server and displays them for the user to review. The user can visually understand the analysis results and use them to make subsequent decisions.
[0459] (Example 1)
[0460] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0461] In today's information society, it is difficult for non-expert users to easily extract necessary information from databases and perform data analysis based on that information. In particular, there is a need for users without specialized technical knowledge to efficiently extract information using natural language and obtain analysis results in an understandable format.
[0462] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0463] In this invention, the server includes means for identifying target data from natural language input and generating a database query, means for executing the generated database query and obtaining necessary information from the information set, and means for analyzing the obtained information and constructing the results in natural language. This makes it possible for non-expert users to easily extract and analyze data through natural language input and obtain the results in an easily understandable format.
[0464] "Natural language input" refers to text data written in human language that users use to give instructions or make inquiries to a computer.
[0465] "Target data" refers to information that needs to be extracted from the database based on the user's natural language input.
[0466] A "database query" is a set of commands issued to retrieve desired information from a database, and is expressed in formats such as SQL, which is used for searching and extracting data.
[0467] An "information set" refers to a collection of data, such as relational data and document data, that includes all the data stored in a database.
[0468] "Analysis" refers to the process of evaluating acquired data according to a specific purpose and deriving meaningful conclusions or insights.
[0469] "Constructing in natural language" refers to creating sentences that can be interpreted in human language in order to convey the results of the analysis to the user in an easy-to-understand manner.
[0470] An "output terminal" refers to a device that receives instructions and data from a server and displays that information to the user visually or audibly.
[0471] This invention is a system that features a natural language interface and performs efficient information extraction and analysis. An embodiment of the invention utilizes a terminal, a server, and a communication network connecting them.
[0472] The user inputs data requests in natural language through the terminal. The terminal is responsible for sending the input natural language data to the server. The server first parses the received natural language input using a natural language processing engine. Generative AI models such as Google Cloud Natural Language API and Amazon Comprehend are used for this parsing. Based on the parsed results, the server generates database queries and executes them against the database system to retrieve the appropriate set of information.
[0473] The acquired data is analyzed by the server, and the analysis results are compiled into natural language. These results are then generated in a user-friendly format and sent to the device. The user can then view the analysis results through the device.
[0474] As a concrete example, consider a case where a user enters "I want to know the most popular product this year" into their terminal. The server analyzes this natural language input and generates a query to retrieve sales data for the specified product. Then, it extracts the necessary information from the database and creates a result such as "The most popular product this year is 'product name,' and the number of units sold is 1000," which it then sends to the terminal.
[0475] Examples of prompts include natural language requests such as "I want to know the sales summary for this year" or "Please tell me the current inventory status." This system allows users to search for information and obtain analysis results using everyday language, even without advanced technical knowledge.
[0476] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0477] Step 1:
[0478] The user inputs the desired information into the terminal using natural language. For example, the user might input "I want to know this year's sales." The input is raw natural language text, which is then sent to the server as input data.
[0479] Step 2:
[0480] The terminal receives the input natural language data and sends it to the server. Specifically, the terminal's operation involves transferring text data to the server using a network protocol. The server receives the user input text exactly as it was entered.
[0481] Step 3:
[0482] The server parses the received natural language input. Here, it uses a generative AI model (e.g., a natural language processing engine) to identify target data from the input text and generate a database query. In this process, keywords are extracted through natural language analysis, and based on these, a database query such as "SELECT SUM(sales) FROM SalesData WHERE year = 'this year'" is generated. The output is this query.
[0483] Step 4:
[0484] The server executes the generated database query and extracts relevant information from the database. Specifically, it accesses the database using query statements such as SQL and collects data that matches the specified conditions. The output of this procedure is numerical data, such as total sales.
[0485] Step 5:
[0486] The server analyzes the extracted information and constructs the results in natural language in a user-friendly format. The analysis calculates the collected numerical data and, based on the results, generates natural language sentences such as "Total sales for this year are 1 million yen." This sentence becomes the output of the step.
[0487] Step 6:
[0488] The server sends the generated natural language result to the terminal, and the terminal displays the result to the user. Specifically, the terminal's operation is to display the text information on the screen through the user interface. The output here is text information that the user can visually confirm.
[0489] This process allows users to extract data and obtain results through natural language queries via the server and terminal.
[0490] (Application Example 1)
[0491] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0492] Traditional data retrieval systems often required users to perform complex operations or possess specialized knowledge, making them difficult to use, especially for non-specialist users. Furthermore, providing information based on specific criteria was often time-consuming and cumbersome, hindering efficient information gathering.
[0493] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0494] In this invention, the server includes means for identifying target data from natural language input, means for extracting information from a data set based on the identified target data, and means for displaying the generated results on a display device. This makes it possible for users to efficiently and intuitively obtain the necessary information and to be presented with information based on specific conditions, even without special knowledge.
[0495] "Means for identifying target data from natural language input" refers to a function that understands the natural language text entered by the user and identifies specific data related to it.
[0496] "Means for extracting information from a data set based on identified target data" refers to a function that retrieves information corresponding to the identified data from data storage such as a database.
[0497] "Means for analyzing extracted information and generating results in natural language" refers to a function that analyzes extracted information and expresses the results in natural language that is easy for users to understand.
[0498] "Means for displaying the generated results on a display device" refers to a function that visually presents the results generated in natural language on an output device such as a display.
[0499] "Means of presenting information obtained based on user requests according to specific conditions" refers to a function that organizes the information obtained according to the conditions specified by the user and provides it to the user in the most relevant form.
[0500] The system for implementing this invention is designed as a comprehensive platform that allows users to search for information using natural language. When a user enters a search request in natural language via a terminal such as a smartphone or computer, that input is transmitted to a server via the network. The hardware requires an internet-connected terminal and a high-performance server, which enables real-time data processing.
[0501] The server uses natural language processing tools such as Amazon Comprehend and Google Cloud Natural Language API to analyze natural language input from the user. This analysis identifies relevant data and forms database queries such as SQL. The data is extracted from databases such as MySQL and PostgreSQL, evaluated and analyzed on the server. The analysis results are generated in a user-friendly format using natural language and sent back to the terminal via the network.
[0502] On the user's device, these results are displayed on the screen, allowing the user to obtain information interactively. This interface makes it easy for users to handle complex data without requiring specialized search knowledge. For example, by entering "I want a highly-rated laptop for under 3000 yen," relevant product information can be easily retrieved and displayed.
[0503] An example of a prompt message is an input that includes specific conditions, such as "List items with a rating of ★★★★ or higher and a budget of less than 3000 yen." The practical value of this invention lies in the fact that it allows users to instantly obtain information that matches their desired conditions.
[0504] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0505] Step 1:
[0506] The user uses a terminal to input an information retrieval request in natural language. The input text is received by the terminal's interface and formatted as data to be sent to the server in preparation for natural language processing.
[0507] Step 2:
[0508] The server analyzes natural language input received from the terminal using Amazon Comprehend or the Google Cloud Natural Language API. This analysis process extracts context and keywords and generates specific identifiers for conversion into database queries. The analysis results output the basic structure of the target data and queries.
[0509] Step 3:
[0510] The server performs a search on a database such as MySQL or PostgreSQL based on the query structure obtained in step 2. Here, it queries the database for information and extracts data that matches the user's request. The relevant data is output as search results.
[0511] Step 4:
[0512] The server analyzes the extracted data and constructs results in natural language that are easy for the user to understand. Specifically, it utilizes a generative AI model to create a clear and easy-to-read report based on the analyzed data. This process uses prompts to adjust the format of the information and prepare output in a format suitable for the user.
[0513] Step 5:
[0514] The server generates natural language results and sends them to the terminal, which then displays them on its screen. The user can then visually review the results and interact with them further as needed. Because this display is done through an interface, the user experience is enhanced.
[0515] Step 6:
[0516] Users can make decisions based on the information displayed, and if necessary, return to the initial step to search for additional information, thereby gaining deeper insights. This feedback loop allows the system to be used efficiently.
[0517] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0518] This invention is a system that combines a natural language-based user interface with an emotion engine, enabling efficient information extraction and analysis from a database, as well as providing information that takes the user's emotions into consideration. The details of the system are shown below.
[0519] Terminal role
[0520] The terminal is an interface that allows users to input requests in natural language and reflect their emotions. When a user inputs, "I want to compare last year's and this year's sales. I'm worried about the decline in performance," the terminal sends this input to the server.
[0521] Server Role
[0522] When the server receives input from a terminal, it analyzes it using a natural language processing engine and an emotion engine. First, the natural language processing engine analyzes the meaning of the input and identifies what data is needed. Next, the emotion engine analyzes the emotions contained in the user's input and identifies the element of "anxiety."
[0523] Based on the data identified by the server, it automatically generates queries to the database to retrieve sales data. The retrieved data is analyzed by an analytics engine to gain insights into sales discrepancies and trends. In this process, the server adjusts the results, including positive information to alleviate user anxiety, based on the analysis results of the sentiment engine.
[0524] Once the analysis is complete, the server generates results in natural language and creates a report that resonates with the user's emotions. For example, it might say, "This year's sales increased by 10% compared to last year. This is due to the success of the new product introduced in the second half of last year. There is no need to worry."
[0525] Specific example
[0526] Suppose a user inputs the following into their device: "I'm worried about the recent decline in sales. I'd like to see how things look in the future." The server receives this input, analyzes the sales data, and recognizes the user's emotion of "worry." As a result, it generates an explanation that takes the user's feelings into consideration, such as, "Sales have decreased slightly compared to last year, but we expect a recovery in the future due to the impact of our new campaign," and sends it to the device.
[0527] By incorporating an emotion engine in this way, the system goes beyond simply providing data analysis results to users, enabling the delivery of more emotionally resonant and convincing information. This supports user decision-making and improves work efficiency.
[0528] The following describes the processing flow.
[0529] Step 1:
[0530] The user uses a device to input a request in natural language, including emotions such as, "I'm worried about the recent decline in sales. I want to look ahead to the future." The device receives this input and prepares to send it to the server.
[0531] Step 2:
[0532] The terminal sends the input data received from the user to the server. During this process, the data is protected by a secure communication protocol.
[0533] Step 3:
[0534] The server receives input sent from the terminal. It activates a natural language processing engine, analyzes the request, and identifies the type of data being requested.
[0535] Step 4:
[0536] The server uses an emotion engine to evaluate the emotions contained in the user's input. In this case, the emotion "worry" is extracted.
[0537] Step 5:
[0538] The server automatically generates queries to the database based on the type of data and sentiment information obtained from natural language processing. It then accesses the database to extract sales data.
[0539] Step 6:
[0540] The server analyzes sales data retrieved from the database. The analysis calculates factors influencing sales increases and decreases, as well as trends. It also considers emotional information, emphasizing positive elements that alleviate user anxiety.
[0541] Step 7:
[0542] The server compiles the analysis results into a report in natural language. This report includes perspectives that alleviate user concerns, such as showing prospects for future sales improvement and success factors.
[0543] Step 8:
[0544] The server sends the generated natural language report to the terminal. This transmission is also performed under appropriate security measures.
[0545] Step 9:
[0546] The device receives reports sent from the server and displays them in a user-friendly format. By reviewing these results and receiving empathetic feedback, users can consider their next actions with greater confidence.
[0547] (Example 2)
[0548] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0549] Modern information processing systems are required to properly understand natural language input and provide information that takes user emotions into consideration. However, conventional systems only provide static data analysis results without considering user emotions, and have not adequately contributed to user decision-making or stress reduction.
[0550] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0551] In this invention, the server includes means for identifying target information from natural language input and performing sentiment analysis; means for extracting information from an information storage device based on the identified target information and sentiment analysis results, and generating adjusted analysis results using a generation engine; and means for generating the generated analysis results in natural language and displaying them on an output device, including content to support decision-making. This enables the provision of information and decision-making support that is tailored to the user's emotions.
[0552] "Natural language input" is a method of inputting the words that users use in their daily lives directly into an information system.
[0553] "Emotion analysis" is a technology that identifies and analyzes a user's emotions from the natural language input.
[0554] "Target information" refers to a set of information identified based on natural language input from the user.
[0555] An "information storage device" is a device or system that holds various types of information and allows it to be retrieved as needed.
[0556] A "generation engine" is a program or system that generates new data or analysis results based on extracted information.
[0557] An "output device" is a device that displays processed information or results so that the user can visually confirm them.
[0558] "Content that supports decision-making" refers to content that includes information and insights necessary for users to make better decisions.
[0559] This invention is a system that combines a user interface using natural language input with sentiment analysis capabilities. It begins with the user using a terminal to input a request in natural language. The terminal functions as an interface to send the input to the server. The server uses a natural language processing engine and a sentiment engine to process this input. A generative AI model is at the core of this system, providing the ability to understand the user's requests and identify the necessary information.
[0560] The server first uses a natural language processing engine to analyze the input, identifying what information is needed. Next, it uses an emotion engine to analyze the user's emotions from the input, detecting emotions such as "anxiety" or "worry." Based on this information, the server automatically generates queries to the database and retrieves the necessary data.
[0561] The acquired data is processed by an analysis engine, providing insights such as sales discrepancies and trends. This process also takes user sentiment into account, allowing for modifications to selected data and information to be interpreted more positively by users.
[0562] Finally, the server generates the results in natural language and sends them to the user's terminal as a report in an easy-to-understand format. For example, if a user enters the prompt "I'm worried about the recent decline in sales. I'd like to see what the future holds," the server analyzes the sales data and recognizes the user's emotion of "worry." As a result, it generates an explanation that takes the user's feelings into consideration, such as "Sales have decreased slightly compared to last year, but we expect a recovery in the future due to the impact of the new campaign."
[0563] This system goes beyond simply providing users with data analysis results; it enables the delivery of more emotionally resonant and convincing information, thereby supporting user decision-making and improving operational efficiency.
[0564] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0565] Step 1:
[0566] The user enters their inquiry in natural language via the terminal. An example of input might be, "I would like to compare last year's and this year's sales. I am worried about the decline in performance." The input here is text data that includes the user's intent and feelings. The role of the terminal is to convert this text data into an appropriate format and prepare it for transmission to the server.
[0567] Step 2:
[0568] The terminal formats natural language text obtained from the user and securely transmits it to the server. Specifically, this involves packaging the data according to the data communication protocol and sending it to the server as a data packet. The input is the user's text data, and the output is formatted communication data.
[0569] Step 3:
[0570] The server inputs the received data into a natural language processing engine. This initiates the process of understanding what information is needed from the input natural language. Specifically, a generative AI model is driven to analyze the text content and identify the requirement of "sales comparison." The input is formatted text data, and the output is the identification of the necessary data as a result of the analysis.
[0571] Step 4:
[0572] The server sends data to the emotion engine based on the analysis results obtained from natural language processing. The emotion engine extracts emotions from the text entered by the user and identifies emotions such as "anxiety." Specifically, it executes an emotion analysis algorithm and evaluates the elements of emotion and their intensity. The input is the analyzed text data, and the output is emotion data.
[0573] Step 5:
[0574] The server generates queries for the information storage device based on the results of both natural language processing and sentiment analysis. These queries are automatically generated to retrieve the necessary sales data. The generation engine creates the queries using database languages such as SQL. The inputs are the identification of the necessary data and sentiment data, and the output is a ready-to-execute query.
[0575] Step 6:
[0576] The server sends the generated query to the information storage device to retrieve sales data. The retrieved data is passed to the analysis engine, which performs data analysis under specific conditions. Specifically, it executes data comparison and trend analysis algorithms. The input is the sales data obtained by the query, and the output is the analysis results.
[0577] Step 7:
[0578] The server uses a generative AI model, taking sentiment data into consideration, to generate results in natural language based on the analysis results. The output is a tailored report designed to alleviate user anxiety and support decision-making. The input consists of analyzed data and sentiment data, and the output is a generated natural language report.
[0579] Step 8:
[0580] The server sends the generated natural language report to the terminal. Specifically, it converts the report back into the optimal data format based on the communication protocol and sends it as a data packet to the terminal. The input is the natural language report, and the output is the transmitted data.
[0581] Step 9:
[0582] The terminal displays the received report on the user interface. This allows the user to visually review the analysis results and the corresponding emotions. The output is a natural language report displayed on the screen.
[0583] (Application Example 2)
[0584] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the headset-type terminal 314 will be referred to as the "terminal."
[0585] In conventional systems, data extraction and analysis results are presented separately when users search for information, which presents a challenge in providing information that reflects the user's emotions. Furthermore, if a user has specific emotions, they may not receive appropriate feedback that corresponds to those emotions, potentially leading to unstable decision-making. There is a need for a system that can improve this situation and provide information that takes users' emotions into consideration.
[0586] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0587] In this invention, the server includes means for identifying target data from natural language input, means for extracting information from a data warehouse based on the identified target data, means for analyzing the extracted information and generating results in natural language, means for analyzing the user's emotions and adjusting the information provided accordingly, and means for displaying the generated results on an output device. This makes it possible to provide information that is sensitive to the user's emotions based on their natural language input.
[0588] "Natural language input" is a method of inputting language that humans normally use into a computer, allowing the computer system to understand its meaning and perform operations accordingly.
[0589] "Target data" refers to information extracted from the data warehouse based on user input or requests, and which is subject to analysis.
[0590] A "data warehouse" is a structured location or system for systematically storing large amounts of information, enabling rapid and efficient searching and analysis.
[0591] "Means of extracting information" refers to methods or techniques for obtaining necessary information from a data warehouse based on identified target data.
[0592] "Means for analysis and generating results in natural language" refers to techniques or methods for analyzing extracted information and expressing the results in a natural language format that is easily understood by humans.
[0593] "Means of analyzing user emotions and adjusting information provision accordingly" refers to technology that detects emotional components included in user input and changes the content and presentation method of information according to those emotions.
[0594] "Means for displaying on an output device" refers to a device or technology for presenting the generated natural language format results on a display or other display device.
[0595] The system implementing this invention includes a server equipped with a natural language processing engine and an emotion engine, and a terminal for user operation. When the user provides input in natural language, the terminal sends it to the server. The server uses the NaturalLanguageProcessingEngine to analyze the input and identify what data is needed. At this time, the EmotionEngine is used to detect the user's emotions (e.g., worry or anxiety).
[0596] The server uses DatabaseConnector to extract necessary information from the data warehouse based on the identified target data. The extracted information is parsed and converted into a natural language response. Furthermore, the emotion engine provides information that takes emotions into account, so the content presented is sensitive to the user's feelings. For example, if the user enters "I'm worried about this month's expenses," feedback such as "Considering your spending trends, saving in certain categories is recommended" will be provided.
[0597] This system allows users to receive useful information tailored to their own emotions, enabling them to make decisions with greater confidence.
[0598] An example of a prompt to input into the generating AI model is, "Generate a summary of spending performance and sentiment-sensitive feedback based on the user's input text and sentiment."
[0599] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0600] Step 1:
[0601] The user inputs information into the device using natural language. For example, they might type, "I'm worried about this month's expenses." The device receives this input as text data and sends it to the server.
[0602] Step 2:
[0603] The server uses NaturalLanguageProcessingEngine to parse the received text. This process analyzes language patterns to identify what data is needed. The output is the identification of the target data.
[0604] Step 3:
[0605] The server uses EmotionEngine to analyze the emotions contained in the user's input text. This process identifies emotions (e.g., "worry") from specific keywords and context. The output is the result of the emotion determination.
[0606] Step 4:
[0607] The server uses DatabaseConnector to extract the necessary information from the data warehouse based on the identified target data. Here, a query is generated based on the previously identified data type, and the data is retrieved. The output is informational data.
[0608] Step 5:
[0609] The server integrates the analyzed information data and sentiment judgment results, and uses a generative AI model to generate a natural language response. This response is then fed back to the user as sentiment-sensitive information. For example, it might say, "Analysis of spending recommends saving in a specific category." The output is natural language feedback.
[0610] Step 6:
[0611] The server sends the generated natural language response to the terminal, which then displays it to the user. This allows the user to receive feedback that is tailored to their natural language input and emotions.
[0612] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0613] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0614] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.
[0615] [Fourth Embodiment]
[0616] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.
[0617] As shown in Figure 7, the data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[0618] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0619] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.
[0620] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.
[0621] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).
[0622] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.
[0623] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.
[0624] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.
[0625] The specific processing program 56 is an example of a "program" relating to the technology of this disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0626] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0627] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.
[0628] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0629] This invention provides a system that features a user-friendly interface using natural language and enables efficient information extraction and analysis from databases. To implement this system, terminals, servers, and a network connecting them are used.
[0630] Terminal role
[0631] The terminal functions as a user input device, sending data requests to the server in natural language. Through this terminal, the user can specify the type of data and the content of the analysis in natural language.
[0632] Server Role
[0633] The server analyzes natural language input sent from the terminal and generates queries for database access. Specifically, it uses natural language processing techniques to analyze the input and identify the target data. Next, it automatically generates queries to extract information from the database based on this target data. The extracted data is analyzed on the server, and the results are compiled in natural language.
[0634] The server also sends the generated analysis results to the terminal, providing the user with visual feedback. Specific data trends and analysis results are output in a format that is easy for the user to understand.
[0635] Specific example
[0636] For example, if a user wants to perform a sales analysis, they would input "I want to compare last year's sales with this year's sales" into the terminal using natural language. The terminal would then send this input to the server.
[0637] When the server receives this, the natural language processing engine parses the input and identifies the necessary sales data. It then generates an appropriate query for the database and extracts the sales data. The extracted data is then analyzed, and the analysis results are generated in natural language, such as "This year's sales increased by 10% compared to last year."
[0638] Finally, the generated results are sent to the device, allowing the user to review them. This process enables users to perform data analysis efficiently, even without specialized data skills.
[0639] The following describes the processing flow.
[0640] Step 1:
[0641] The user uses their device to input a request in natural language, such as "I want to compare last year's sales with this year's sales." This input is processed by the device and prepared for transmission to the server.
[0642] Step 2:
[0643] The terminal sends user input to the server. This communication is properly encrypted over the network.
[0644] Step 3:
[0645] The server receives natural language input from the terminal and begins analysis using its natural language processing engine. Here, it identifies the need for sales data comparison and specifies the required time period.
[0646] Step 4:
[0647] Based on the analysis results, the server automatically generates an SQL query to access the database. This query retrieves sales data for the previous and current fiscal years.
[0648] Step 5:
[0649] The server uses the generated SQL query to access the database and extract the necessary data. This data is temporarily stored in the server's memory.
[0650] Step 6:
[0651] The server performs statistical analysis on the extracted sales data and calculates the sales variance. It also analyzes factors that may have influenced sales.
[0652] Step 7:
[0653] The server formats the analysis results into a report in natural language. This report might say something like, "This year's sales increased by 10% compared to last year."
[0654] Step 8:
[0655] The server sends the generated natural language report to the terminal. This transmission is again properly performed over the network.
[0656] Step 9:
[0657] The terminal receives reports sent from the server and displays them for the user to review. The user can visually understand the analysis results and use them to make subsequent decisions.
[0658] (Example 1)
[0659] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0660] In today's information society, it is difficult for non-expert users to easily extract necessary information from databases and perform data analysis based on that information. In particular, there is a need for users without specialized technical knowledge to efficiently extract information using natural language and obtain analysis results in an understandable format.
[0661] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.
[0662] In this invention, the server includes means for identifying target data from natural language input and generating a database query, means for executing the generated database query and obtaining necessary information from the information set, and means for analyzing the obtained information and constructing the results in natural language. This makes it possible for non-expert users to easily extract and analyze data through natural language input and obtain the results in an easily understandable format.
[0663] "Natural language input" refers to text data written in human language that users use to give instructions or make inquiries to a computer.
[0664] "Target data" refers to information that needs to be extracted from the database based on the user's natural language input.
[0665] A "database query" is a set of commands issued to retrieve desired information from a database, and is expressed in formats such as SQL, which is used for searching and extracting data.
[0666] An "information set" refers to a collection of data, such as relational data and document data, that includes all the data stored in a database.
[0667] "Analysis" refers to the process of evaluating acquired data according to a specific purpose and deriving meaningful conclusions or insights.
[0668] "Constructing in natural language" refers to creating sentences that can be interpreted in human language in order to convey the results of the analysis to the user in an easy-to-understand manner.
[0669] An "output terminal" refers to a device that receives instructions and data from a server and displays that information to the user visually or audibly.
[0670] This invention is a system that features a natural language interface and performs efficient information extraction and analysis. An embodiment of the invention utilizes a terminal, a server, and a communication network connecting them.
[0671] The user inputs data requests in natural language through the terminal. The terminal is responsible for sending the input natural language data to the server. The server first parses the received natural language input using a natural language processing engine. Generative AI models such as Google Cloud Natural Language API and Amazon Comprehend are used for this parsing. Based on the parsed results, the server generates database queries and executes them against the database system to retrieve the appropriate set of information.
[0672] The acquired data is analyzed by the server, and the analysis results are compiled into natural language. These results are then generated in a user-friendly format and sent to the device. The user can then view the analysis results through the device.
[0673] As a concrete example, consider a case where a user enters "I want to know the most popular product this year" into their terminal. The server analyzes this natural language input and generates a query to retrieve sales data for the specified product. Then, it extracts the necessary information from the database and creates a result such as "The most popular product this year is 'product name,' and the number of units sold is 1000," which it then sends to the terminal.
[0674] Examples of prompts include natural language requests such as "I want to know the sales summary for this year" or "Please tell me the current inventory status." This system allows users to search for information and obtain analysis results using everyday language, even without advanced technical knowledge.
[0675] The flow of the specific processing in Example 1 will be explained using Figure 11.
[0676] Step 1:
[0677] The user inputs the desired information into the terminal using natural language. For example, the user might input "I want to know this year's sales." The input is raw natural language text, which is then sent to the server as input data.
[0678] Step 2:
[0679] The terminal receives the input natural language data and sends it to the server. Specifically, the terminal's operation involves transferring text data to the server using a network protocol. The server receives the user input text exactly as it was entered.
[0680] Step 3:
[0681] The server parses the received natural language input. Here, it uses a generative AI model (e.g., a natural language processing engine) to identify target data from the input text and generate a database query. In this process, keywords are extracted through natural language analysis, and based on these, a database query such as "SELECT SUM(sales) FROM SalesData WHERE year = 'this year'" is generated. The output is this query.
[0682] Step 4:
[0683] The server executes the generated database query and extracts relevant information from the database. Specifically, it accesses the database using query statements such as SQL and collects data that matches the specified conditions. The output of this procedure is numerical data, such as total sales.
[0684] Step 5:
[0685] The server analyzes the extracted information and constructs the results in natural language in a user-friendly format. The analysis calculates the collected numerical data and, based on the results, generates natural language sentences such as "Total sales for this year are 1 million yen." This sentence becomes the output of the step.
[0686] Step 6:
[0687] The server sends the generated natural language result to the terminal, and the terminal displays the result to the user. Specifically, the terminal's operation is to display the text information on the screen through the user interface. The output here is text information that the user can visually confirm.
[0688] This process allows users to extract data and obtain results through natural language queries via the server and terminal.
[0689] (Application Example 1)
[0690] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0691] Traditional data retrieval systems often required users to perform complex operations or possess specialized knowledge, making them difficult to use, especially for non-specialist users. Furthermore, providing information based on specific criteria was often time-consuming and cumbersome, hindering efficient information gathering.
[0692] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.
[0693] In this invention, the server includes means for identifying target data from natural language input, means for extracting information from a data set based on the identified target data, and means for displaying the generated results on a display device. This makes it possible for users to efficiently and intuitively obtain the necessary information and to be presented with information based on specific conditions, even without special knowledge.
[0694] "Means for identifying target data from natural language input" refers to a function that understands the natural language text entered by the user and identifies specific data related to it.
[0695] "Means for extracting information from a data set based on identified target data" refers to a function that retrieves information corresponding to the identified data from data storage such as a database.
[0696] "Means for analyzing extracted information and generating results in natural language" refers to a function that analyzes extracted information and expresses the results in natural language that is easy for users to understand.
[0697] "Means for displaying the generated results on a display device" refers to a function that visually presents the results generated in natural language on an output device such as a display.
[0698] "Means of presenting information obtained based on user requests according to specific conditions" refers to a function that organizes the information obtained according to the conditions specified by the user and provides it to the user in the most relevant form.
[0699] The system for implementing this invention is designed as a comprehensive platform that allows users to search for information using natural language. When a user enters a search request in natural language via a terminal such as a smartphone or computer, that input is transmitted to a server via the network. The hardware requires an internet-connected terminal and a high-performance server, which enables real-time data processing.
[0700] The server uses natural language processing tools such as Amazon Comprehend and Google Cloud Natural Language API to analyze natural language input from the user. This analysis identifies relevant data and forms database queries such as SQL. The data is extracted from databases such as MySQL and PostgreSQL, evaluated and analyzed on the server. The analysis results are generated in a user-friendly format using natural language and sent back to the terminal via the network.
[0701] On the user's device, these results are displayed on the screen, allowing the user to obtain information interactively. This interface makes it easy for users to handle complex data without requiring specialized search knowledge. For example, by entering "I want a highly-rated laptop for under 3000 yen," relevant product information can be easily retrieved and displayed.
[0702] An example of a prompt message is an input that includes specific conditions, such as "List items with a rating of ★★★★ or higher and a budget of less than 3000 yen." The practical value of this invention lies in the fact that it allows users to instantly obtain information that matches their desired conditions.
[0703] The flow of a specific process in Application Example 1 will be explained using Figure 12.
[0704] Step 1:
[0705] The user uses a terminal to input an information retrieval request in natural language. The input text is received by the terminal's interface and formatted as data to be sent to the server in preparation for natural language processing.
[0706] Step 2:
[0707] The server analyzes natural language input received from the terminal using Amazon Comprehend or the Google Cloud Natural Language API. This analysis process extracts context and keywords and generates specific identifiers for conversion into database queries. The analysis results output the basic structure of the target data and queries.
[0708] Step 3:
[0709] The server performs a search on a database such as MySQL or PostgreSQL based on the query structure obtained in step 2. Here, it queries the database for information and extracts data that matches the user's request. The relevant data is output as search results.
[0710] Step 4:
[0711] The server analyzes the extracted data and constructs results in natural language that are easy for the user to understand. Specifically, it utilizes a generative AI model to create a clear and easy-to-read report based on the analyzed data. This process uses prompts to adjust the format of the information and prepare output in a format suitable for the user.
[0712] Step 5:
[0713] The server generates natural language results and sends them to the terminal, which then displays them on its screen. The user can then visually review the results and interact with them further as needed. Because this display is done through an interface, the user experience is enhanced.
[0714] Step 6:
[0715] Users can make decisions based on the information displayed, and if necessary, return to the initial step to search for additional information, thereby gaining deeper insights. This feedback loop allows the system to be used efficiently.
[0716] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.
[0717] This invention is a system that combines a natural language-based user interface with an emotion engine, enabling efficient information extraction and analysis from a database, as well as providing information that takes the user's emotions into consideration. The details of the system are shown below.
[0718] Terminal role
[0719] The terminal is an interface that allows users to input requests in natural language and reflect their emotions. When a user inputs, "I want to compare last year's and this year's sales. I'm worried about the decline in performance," the terminal sends this input to the server.
[0720] Server Role
[0721] When the server receives input from a terminal, it analyzes it using a natural language processing engine and an emotion engine. First, the natural language processing engine analyzes the meaning of the input and identifies what data is needed. Next, the emotion engine analyzes the emotions contained in the user's input and identifies the element of "anxiety."
[0722] Based on the data identified by the server, it automatically generates queries to the database to retrieve sales data. The retrieved data is analyzed by an analytics engine to gain insights into sales discrepancies and trends. In this process, the server adjusts the results, including positive information to alleviate user anxiety, based on the analysis results of the sentiment engine.
[0723] Once the analysis is complete, the server generates results in natural language and creates a report that resonates with the user's emotions. For example, it might say, "This year's sales increased by 10% compared to last year. This is due to the success of the new product introduced in the second half of last year. There is no need to worry."
[0724] Specific example
[0725] Suppose a user inputs the following into their device: "I'm worried about the recent decline in sales. I'd like to see how things look in the future." The server receives this input, analyzes the sales data, and recognizes the user's emotion of "worry." As a result, it generates an explanation that takes the user's feelings into consideration, such as, "Sales have decreased slightly compared to last year, but we expect a recovery in the future due to the impact of our new campaign," and sends it to the device.
[0726] By incorporating an emotion engine in this way, the system goes beyond simply providing data analysis results to users, enabling the delivery of more emotionally resonant and convincing information. This supports user decision-making and improves work efficiency.
[0727] The following describes the processing flow.
[0728] Step 1:
[0729] The user uses a device to input a request in natural language, including emotions such as, "I'm worried about the recent decline in sales. I want to look ahead to the future." The device receives this input and prepares to send it to the server.
[0730] Step 2:
[0731] The terminal sends the input data received from the user to the server. During this process, the data is protected by a secure communication protocol.
[0732] Step 3:
[0733] The server receives input sent from the terminal. It activates a natural language processing engine, analyzes the request, and identifies the type of data being requested.
[0734] Step 4:
[0735] The server uses an emotion engine to evaluate the emotions contained in the user's input. In this case, the emotion "worry" is extracted.
[0736] Step 5:
[0737] The server automatically generates queries to the database based on the type of data and sentiment information obtained from natural language processing. It then accesses the database to extract sales data.
[0738] Step 6:
[0739] The server analyzes sales data retrieved from the database. The analysis calculates factors influencing sales increases and decreases, as well as trends. It also considers emotional information, emphasizing positive elements that alleviate user anxiety.
[0740] Step 7:
[0741] The server compiles the analysis results into a report in natural language. This report includes perspectives that alleviate user concerns, such as showing prospects for future sales improvement and success factors.
[0742] Step 8:
[0743] The server sends the generated natural language report to the terminal. This transmission is also performed under appropriate security measures.
[0744] Step 9:
[0745] The device receives reports sent from the server and displays them in a user-friendly format. By reviewing these results and receiving empathetic feedback, users can consider their next actions with greater confidence.
[0746] (Example 2)
[0747] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0748] Modern information processing systems are required to properly understand natural language input and provide information that takes user emotions into consideration. However, conventional systems only provide static data analysis results without considering user emotions, and have not adequately contributed to user decision-making or stress reduction.
[0749] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.
[0750] In this invention, the server includes means for identifying target information from natural language input and performing sentiment analysis; means for extracting information from an information storage device based on the identified target information and sentiment analysis results, and generating adjusted analysis results using a generation engine; and means for generating the generated analysis results in natural language and displaying them on an output device, including content to support decision-making. This enables the provision of information and decision-making support that is tailored to the user's emotions.
[0751] "Natural language input" is a method of inputting the words that users use in their daily lives directly into an information system.
[0752] "Emotion analysis" is a technology that identifies and analyzes a user's emotions from the natural language input.
[0753] "Target information" refers to a set of information identified based on natural language input from the user.
[0754] An "information storage device" is a device or system that holds various types of information and allows it to be retrieved as needed.
[0755] A "generation engine" is a program or system that generates new data or analysis results based on extracted information.
[0756] An "output device" is a device that displays processed information or results so that the user can visually confirm them.
[0757] "Content that supports decision-making" refers to content that includes information and insights necessary for users to make better decisions.
[0758] This invention is a system that combines a user interface using natural language input with sentiment analysis capabilities. It begins with the user using a terminal to input a request in natural language. The terminal functions as an interface to send the input to the server. The server uses a natural language processing engine and a sentiment engine to process this input. A generative AI model is at the core of this system, providing the ability to understand the user's requests and identify the necessary information.
[0759] The server first uses a natural language processing engine to analyze the input, identifying what information is needed. Next, it uses an emotion engine to analyze the user's emotions from the input, detecting emotions such as "anxiety" or "worry." Based on this information, the server automatically generates queries to the database and retrieves the necessary data.
[0760] The acquired data is processed by an analysis engine, providing insights such as sales discrepancies and trends. This process also takes user sentiment into account, allowing for modifications to selected data and information to be interpreted more positively by users.
[0761] Finally, the server generates the results in natural language and sends them to the user's terminal as a report in an easy-to-understand format. For example, if a user enters the prompt "I'm worried about the recent decline in sales. I'd like to see what the future holds," the server analyzes the sales data and recognizes the user's emotion of "worry." As a result, it generates an explanation that takes the user's feelings into consideration, such as "Sales have decreased slightly compared to last year, but we expect a recovery in the future due to the impact of the new campaign."
[0762] This system goes beyond simply providing users with data analysis results; it enables the delivery of more emotionally resonant and convincing information, thereby supporting user decision-making and improving operational efficiency.
[0763] The flow of the specific processing in Example 2 will be explained using Figure 13.
[0764] Step 1:
[0765] The user enters their inquiry in natural language via the terminal. An example of input might be, "I would like to compare last year's and this year's sales. I am worried about the decline in performance." The input here is text data that includes the user's intent and feelings. The role of the terminal is to convert this text data into an appropriate format and prepare it for transmission to the server.
[0766] Step 2:
[0767] The terminal formats natural language text obtained from the user and securely transmits it to the server. Specifically, this involves packaging the data according to the data communication protocol and sending it to the server as a data packet. The input is the user's text data, and the output is formatted communication data.
[0768] Step 3:
[0769] The server inputs the received data into a natural language processing engine. This initiates the process of understanding what information is needed from the input natural language. Specifically, a generative AI model is driven to analyze the text content and identify the requirement of "sales comparison." The input is formatted text data, and the output is the identification of the necessary data as a result of the analysis.
[0770] Step 4:
[0771] The server sends data to the emotion engine based on the analysis results obtained from natural language processing. The emotion engine extracts emotions from the text entered by the user and identifies emotions such as "anxiety." Specifically, it executes an emotion analysis algorithm and evaluates the elements of emotion and their intensity. The input is the analyzed text data, and the output is emotion data.
[0772] Step 5:
[0773] The server generates queries for the information storage device based on the results of both natural language processing and sentiment analysis. These queries are automatically generated to retrieve the necessary sales data. The generation engine creates the queries using database languages such as SQL. The inputs are the identification of the necessary data and sentiment data, and the output is a ready-to-execute query.
[0774] Step 6:
[0775] The server sends the generated query to the information storage device to retrieve sales data. The retrieved data is passed to the analysis engine, which performs data analysis under specific conditions. Specifically, it executes data comparison and trend analysis algorithms. The input is the sales data obtained by the query, and the output is the analysis results.
[0776] Step 7:
[0777] The server uses a generative AI model, taking sentiment data into consideration, to generate results in natural language based on the analysis results. The output is a tailored report designed to alleviate user anxiety and support decision-making. The input consists of analyzed data and sentiment data, and the output is a generated natural language report.
[0778] Step 8:
[0779] The server sends the generated natural language report to the terminal. Specifically, it converts the report back into the optimal data format based on the communication protocol and sends it as a data packet to the terminal. The input is the natural language report, and the output is the transmitted data.
[0780] Step 9:
[0781] The terminal displays the received report on the user interface. This allows the user to visually review the analysis results and the corresponding emotions. The output is a natural language report displayed on the screen.
[0782] (Application Example 2)
[0783] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".
[0784] In conventional systems, data extraction and analysis results are presented separately when users search for information, which presents a challenge in providing information that reflects the user's emotions. Furthermore, if a user has specific emotions, they may not receive appropriate feedback that corresponds to those emotions, potentially leading to unstable decision-making. There is a need for a system that can improve this situation and provide information that takes users' emotions into consideration.
[0785] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.
[0786] In this invention, the server includes means for identifying target data from natural language input, means for extracting information from a data warehouse based on the identified target data, means for analyzing the extracted information and generating results in natural language, means for analyzing the user's emotions and adjusting the information provided accordingly, and means for displaying the generated results on an output device. This makes it possible to provide information that is sensitive to the user's emotions based on their natural language input.
[0787] "Natural language input" is a method of inputting language that humans normally use into a computer, allowing the computer system to understand its meaning and perform operations accordingly.
[0788] "Target data" refers to information extracted from the data warehouse based on user input or requests, and which is subject to analysis.
[0789] A "data warehouse" is a structured location or system for systematically storing large amounts of information, enabling rapid and efficient searching and analysis.
[0790] "Means of extracting information" refers to methods or techniques for obtaining necessary information from a data warehouse based on identified target data.
[0791] "Means for analysis and generating results in natural language" refers to techniques or methods for analyzing extracted information and expressing the results in a natural language format that is easily understood by humans.
[0792] "Means of analyzing user emotions and adjusting information provision accordingly" refers to technology that detects emotional components included in user input and changes the content and presentation method of information according to those emotions.
[0793] "Means for displaying on an output device" refers to a device or technology for presenting the generated natural language format results on a display or other display device.
[0794] The system implementing this invention includes a server equipped with a natural language processing engine and an emotion engine, and a terminal for user operation. When the user provides input in natural language, the terminal sends it to the server. The server uses the NaturalLanguageProcessingEngine to analyze the input and identify what data is needed. At this time, the EmotionEngine is used to detect the user's emotions (e.g., worry or anxiety).
[0795] The server uses DatabaseConnector to extract necessary information from the data warehouse based on the identified target data. The extracted information is parsed and converted into a natural language response. Furthermore, the emotion engine provides information that takes emotions into account, so the content presented is sensitive to the user's feelings. For example, if the user enters "I'm worried about this month's expenses," feedback such as "Considering your spending trends, saving in certain categories is recommended" will be provided.
[0796] This system allows users to receive useful information tailored to their own emotions, enabling them to make decisions with greater confidence.
[0797] An example of a prompt to input into the generating AI model is, "Generate a summary of spending performance and sentiment-sensitive feedback based on the user's input text and sentiment."
[0798] The flow of a specific process in Application Example 2 will be explained using Figure 14.
[0799] Step 1:
[0800] The user inputs information into the device using natural language. For example, they might type, "I'm worried about this month's expenses." The device receives this input as text data and sends it to the server.
[0801] Step 2:
[0802] The server uses NaturalLanguageProcessingEngine to parse the received text. This process analyzes language patterns to identify what data is needed. The output is the identification of the target data.
[0803] Step 3:
[0804] The server uses EmotionEngine to analyze the emotions contained in the user's input text. This process identifies emotions (e.g., "worry") from specific keywords and context. The output is the result of the emotion determination.
[0805] Step 4:
[0806] The server uses DatabaseConnector to extract the necessary information from the data warehouse based on the identified target data. Here, a query is generated based on the previously identified data type, and the data is retrieved. The output is informational data.
[0807] Step 5:
[0808] The server integrates the analyzed information data and sentiment judgment results, and uses a generative AI model to generate a natural language response. This response is then fed back to the user as sentiment-sensitive information. For example, it might say, "Analysis of spending recommends saving in a specific category." The output is natural language feedback.
[0809] Step 6:
[0810] The server sends the generated natural language response to the terminal, which then displays it to the user. This allows the user to receive feedback that is tailored to their natural language input and emotions.
[0811] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.
[0812] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0813] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.
[0814] Furthermore, the emotion identification model 59, acting as an emotion engine, may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[0815] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.
[0816] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.
[0817] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.
[0818] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.
[0819] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."
[0820] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.
[0821] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.
[0822] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.
[0823] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.
[0824] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[0825] Furthermore, it is not necessary to store the entirety of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.
[0826] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.
[0827] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Alternatively, the hardware resource that performs a specific process may consist of a single processor.
[0828] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.
[0829] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.
[0830] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.
[0831] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.
[0832] The following is further disclosed regarding the embodiments described above.
[0833] (Claim 1)
[0834] A means of identifying target data from natural language input,
[0835] A means of extracting information from a database based on identified target data,
[0836] A means of analyzing extracted information and generating results in natural language,
[0837] Means for displaying the generated results on an output device,
[0838] A system that includes this.
[0839] (Claim 2)
[0840] The system according to claim 1, which analyzes natural language input and automatically generates specific data acquisition queries.
[0841] (Claim 3)
[0842] The system according to claim 1, which includes a process for visualizing the analysis results in a format that the user can understand.
[0843] "Example 1"
[0844] (Claim 1)
[0845] A means for identifying target data from natural language input and generating database queries,
[0846] A means of executing the generated database query and obtaining the necessary information from the information set,
[0847] A means of analyzing acquired information and constructing the results in natural language,
[0848] A means of displaying the assembled result on an output terminal,
[0849] A system that includes this.
[0850] (Claim 2)
[0851] The system according to claim 1, which automatically generates data acquisition commands based on target data via natural language processing.
[0852] (Claim 3)
[0853] The system according to claim 1, which has the ability to visualize the analysis results in a format that is easy for the user to understand.
[0854] "Application Example 1"
[0855] (Claim 1)
[0856] A means of identifying target data from natural language input,
[0857] A means for extracting information from a data set based on identified target data,
[0858] A means of analyzing extracted information and generating results in natural language,
[0859] Means for displaying the generated results on a display device,
[0860] A means of presenting information obtained based on user requests according to specific conditions,
[0861] A system that includes this.
[0862] (Claim 2)
[0863] The system according to claim 1, which analyzes natural language input and automatically generates a specific data acquisition query.
[0864] (Claim 3)
[0865] The system according to claim 1, which includes a process for visualizing the analysis results in a format that can be understood by the user.
[0866] "Example 2 of combining an emotion engine"
[0867] (Claim 1)
[0868] A means for identifying target information from natural language input and performing sentiment analysis,
[0869] A means for extracting information from an information storage device based on identified target information and emotion analysis results, and for generating adjusted analysis results using a generation engine,
[0870] A means for generating the analysis results in natural language and displaying them on an output device, including content to support decision-making,
[0871] A system that includes this.
[0872] (Claim 2)
[0873] The system according to claim 1, which analyzes natural language input and automatically generates specific information acquisition commands.
[0874] (Claim 3)
[0875] The system according to claim 1, which includes a process for visualizing the generated analysis results in a format that corresponds to the user's emotions and for providing information that is sensitive to those emotions.
[0876] "Application example 2 when combining with an emotional engine"
[0877] (Claim 1)
[0878] A means of identifying target data from natural language input,
[0879] A means for extracting information from a data warehouse based on identified target data,
[0880] A means of analyzing extracted information and generating results in natural language,
[0881] A means of analyzing user emotions and adjusting information provision accordingly,
[0882] A means for displaying the generated results on an output device,
[0883] A system that includes this.
[0884] (Claim 2)
[0885] The system according to claim 1, which analyzes natural language input and automatically generates a specific data acquisition query.
[0886] (Claim 3)
[0887] The system according to claim 1, which includes a process for visualizing the analysis results in a format that can be understood by the user. [Explanation of symbols]
[0888] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>
Claims
1. A means of identifying target data from natural language input, A means for extracting information from a data set based on identified target data, A means of analyzing extracted information and generating results in natural language, Means for displaying the generated results on a display device, A means of presenting information obtained based on user requests according to specific conditions, A system that includes this.
2. The system according to claim 1, which analyzes natural language input and automatically generates a specific data acquisition query.
3. The system according to claim 1, which includes a process for visualizing the analysis results in a format that can be understood by the user.