System
By preprocessing corporate data and generating decision trees for accurate predictions, the system addresses AI hallucination and inaccuracies, ensuring reliable and efficient responses to user inquiries.
Patent Information
- Application Number
- JP2024125361
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-07-31
- Publication Date
- 2026-02-13
AI Technical Summary
Conventional generative AI systems face risks of hallucination and inaccuracies when dealing with corporate data, leading to credibility issues and difficulties in providing quick and accurate responses to changing information.
A system that preprocesses corporate data by filling in missing values and removing unnecessary data, generates a decision tree from the preprocessed data, and uses this tree for accurate predictions and responses to user inquiries.
This approach improves data accuracy and efficiency, reducing the risk of hallucination and providing highly reliable information by enabling quick and accurate responses to user queries.
Smart Images

Figure 2026023426000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the 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] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Conventional generative AI faces the risk of hallucination due to data learning and the risk of providing incorrect information. This risk, particularly when dealing with corporate data, can lead to serious misunderstandings among users, potentially negatively impacting the company's credibility and management. Furthermore, the need to respond quickly and accurately to frequently changing information makes it difficult for current technology to address this issue.
[0005] In order to solve the above problems, the present invention aims to provide a system that converts corporate data into a decision tree format and allows a generation AI to provide answers based on this decision tree chart. [Means for solving the problem]
[0006] The present invention solves the above-mentioned problems by providing a system including a data preprocessing means for collecting information from a corporate database, filling in missing values, and deleting unnecessary data; a decision tree generation means for generating a decision tree from the preprocessed corporate data; a prediction means for executing a prediction using the decision tree based on a user's query; and a response means for responding to the user with the prediction result. Specifically, the system converts data collected from the corporate database into a data frame, and improves data accuracy by filling in missing values with average values. Furthermore, a system is constructed that makes accurate predictions in response to user queries based on the generated decision tree and quickly provides the results to the user. This makes it possible to improve the efficiency of corporate operations and prevent the provision of incorrect information.
[0007] A "company database" is a database that stores information managed by a company, and includes product information, inventory information, price information, customer information, and the like.
[0008] "Collecting information" means extracting the necessary data from a company database and obtaining it for use in analysis.
[0009] "Missing values" refer to missing values in a dataset, which affect calculations and analysis.
[0010] "Unnecessary data" refers to data that is not useful or gets in the way of data analysis or response generation.
[0011] "Data preprocessing means" refers to a means for performing processing to prepare data suitable for analysis, such as filling in missing values and deleting unnecessary data.
[0012] A "decision tree" is a tree-structured model that creates decision rules based on data and performs classification and prediction.
[0013] The "decision tree generation means" is a means for generating a decision tree model based on preprocessed data.
[0014] "User inquiries" refer to questions or requests that users make to the system.
[0015] The "prediction means" is a means for making predictions and classifications in response to inquiries from users using the generated decision tree.
[0016] The "response means" is a means for providing the user with the prediction result generated by the prediction means.
[0017] A "data frame" is a data structure that has rows and columns and stores data in a tabular format. [Brief explanation of the drawings]
[0018] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0019] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0020] First, the terms used in the following description will be explained.
[0021] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0022] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0023] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0024] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, 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), Bluetooth (registered trademark), etc.
[0025] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0026] [First embodiment]
[0027] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0028] 1, a 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.
[0029] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0030] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0031] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the 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.
[0032] 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 of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0033] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0034] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0035] 2, in the data processing device 12, a specific process 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" according to the technology of the present 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 process 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.
[0036] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0037] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0038] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0039] The present invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on the decision tree. Specifically, it is composed of a data preprocessing unit, a decision tree generation unit, a prediction unit, and a response unit.
[0040] Data Preprocessing
[0041] The server collects the necessary information from the company database and formats it into a data frame. The collected data may contain missing values or unnecessary data. For this reason, the server imputes the missing values, for example, by using the average value. It also improves data accuracy by deleting duplicate data and data unnecessary for analysis.
[0042] Decision tree generation
[0043] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, the server divides the dataset into features and targets, and trains a decision tree classifier to model patterns in the company's data. The generated decision tree is then used for subsequent predictions.
[0044] User inquiries
[0045] The terminal receives inquiries from users in text format, including information about categories, stock status, prices, ratings, etc. The terminal converts the received inquiries into an appropriate format and sends them to the server.
[0046] Prediction and response measures
[0047] The server analyzes the query received from the device and makes a prediction using the generated decision tree. Specifically, it extracts the optimal prediction from the decision tree model based on the features contained in the query. The server then returns the prediction result to the device, which then displays it to the user.
[0048] Specific examples
[0049] For example, a company database might contain the following product data:
[0050] Product categories: Electronic devices, books, clothing
[0051] Stock: 10, 200, 5
[0052] Price: 1000, 500, 3000
[0053] Rating: 4.5, 3.8, 4.9
[0054] Target: Recommended A, Recommended B, Recommended C
[0055] First, the server converts this data into a data frame, imputes missing values, and removes unnecessary data. Next, it generates a decision tree from the preprocessed data. This decision tree provides a model for predicting the optimal recommended products based on the features of each product.
[0056] When a user sends a query such as "Please tell me electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the device sends this query to the server. The server uses a decision tree to predict the result "Recommendation A" and returns it to the device. The device then displays this result to the user.
[0057] This series of processes allows us to handle corporate data accurately and efficiently while providing appropriate responses to user inquiries, thereby reducing the risk of hallucination and providing highly reliable information.
[0058] The processing flow will be explained below.
[0059] Step 1:
[0060] The server collects the necessary information (e.g., product category, availability, price, rating, etc.) from the company database. The data extracted from the database is converted into a data frame format.
[0061] Step 2:
[0062] The server performs data preprocessing on the data frame, such as imputing missing values with the mean and removing duplicates and unnecessary data, to prepare a dataset suitable for analysis.
[0063] Step 3:
[0064] The server uses a decision tree generation algorithm to generate a decision tree based on the preprocessed data. First, it separates the data frame into features (e.g., category, inventory, price, rating) and targets (e.g., recommended products), and then trains a decision tree classifier. This decision tree model is used for future predictions.
[0065] Step 4:
[0066] The terminal receives a query from the user (e.g., "Which low-cost electronic devices are in stock?"), converts the received query into an appropriate format, and sends it to the server.
[0067] Step 5:
[0068] The server analyzes the inquiry sent from the device and performs predictions using a decision tree model based on the inquiry content. Based on the features specified in the inquiry (e.g., category is electronic equipment, in stock, price is under 1,000 yen, rating is 4.5 or higher), the optimal recommendation result is extracted from the decision tree.
[0069] Step 6:
[0070] The server obtains the prediction results from the decision tree and returns them to the device. For example, if the prediction result is a specific recommended product such as "Recommendation A," the server sends that information to the device.
[0071] Step 7:
[0072] The terminal displays the prediction results received from the server to the user, who can then decide what to do based on the results.
[0073] This series of processing flows enables the server and terminals to work together to efficiently and accurately process corporate data and realize a system that provides specific responses to user inquiries.
[0074] Example 1
[0075] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0076] Conventional information systems have struggled to efficiently preprocess large amounts of corporate data, generate appropriate predictive models, and respond quickly and accurately to user inquiries. Missing values and unnecessary data can reduce data accuracy, affecting prediction accuracy. Furthermore, automated processes for responding appropriately to diverse user inquiries are lacking.
[0077] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0078] In this invention, the server includes: a data preprocessing means for collecting information from a corporate database and completing missing values and deleting unnecessary data; a decision tree generation means for generating a decision tree from the preprocessed corporate data; a prediction means for executing a prediction using the decision tree based on a user's query; a response means for responding to the user with the prediction result; a terminal for receiving the query, converting it into an appropriate format, and sending it to the server; a server for collecting corporate data and shaping it into a data frame; a server for completing missing values in the data frame and deleting duplicate data and unnecessary data; a means for dividing a dataset into features and targets using a decision tree generation algorithm and training a decision tree classifier; a server for making optimal predictions using the generated decision tree; and a server for generating prediction results based on the generated decision tree model and returning them to the terminal. This makes it possible to improve the accuracy of corporate data while quickly and accurately responding to user queries.
[0079] "Data preprocessing means" refers to a means for formatting data collected from a company database, filling in missing values, and deleting unnecessary data.
[0080] The "decision tree generation means" is a means for generating a decision tree model from preprocessed enterprise data and training a classifier based on the features of the data and the target.
[0081] The "prediction means" is a means for executing a prediction using a decision tree based on a user's inquiry and extracting the optimal result.
[0082] The "response means" is a means for returning the prediction result to the user.
[0083] A "terminal" is a device that receives queries from users, converts them into an appropriate format, and sends them to a server.
[0084] The "server" is a device that performs a series of processes: collecting corporate data, formatting it into a data frame, and generating and predicting decision trees.
[0085] A "decision tree generation algorithm" is a computational method for dividing a dataset into features and targets to create a decision tree model.
[0086] A "data frame" is a two-dimensional data structure with rows and columns, and is a format for efficiently storing and manipulating enterprise data.
[0087] "Missing value imputation" is the process of filling in missing values in a dataset in a specific way.
[0088] "Unnecessary data removal" is the process of removing duplicate data and information unnecessary for analysis from a dataset.
[0089] The present invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on the decision tree. Specifically, it is composed of a data preprocessing unit, a decision tree generation unit, a prediction unit, and a response unit.
[0090] Data Preprocessing
[0091] The server collects the necessary information from the company database and formats it into a data frame. The hardware used includes a high-performance server computer. The software used includes a database management system (e.g., MySQL) and a data preprocessing and analysis tool (e.g., the Python pandas library). Since the collected data may contain missing values or unnecessary data, the server improves data accuracy by interpolating missing values, for example, with the average value, and removing duplicate data and data unnecessary for analysis.
[0092] Decision tree generation
[0093] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, it divides the dataset into features and targets, and trains a decision tree classifier. The software used includes machine learning libraries (e.g., scikit-learn). The generated decision tree is used for subsequent predictions.
[0094] User inquiries
[0095] The terminal receives inquiries from users in text format. For example, a user may send an inquiry via a web form or mobile app such as, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher." The terminal converts the received inquiry into an appropriate format (e.g., JSON) and sends it to the server. Terminals include personal computers and smartphones.
[0096] Prediction and response measures
[0097] The server analyzes the query received from the device and makes a prediction using the generated decision tree. Based on the features contained in the query, the server extracts the optimal prediction from the decision tree model. The server then returns the prediction result to the device, which then displays it to the user.
[0098] Specific examples
[0099] For example, a company database might contain the following product data:
[0100] Product categories: Electronic devices, books, clothing
[0101] Stock: 10, 200, 5
[0102] Price: 1000, 500, 3000
[0103] Rating: 4.5, 3.8, 4.9
[0104] Target: Recommended A, Recommended B, Recommended C
[0105] First, the server converts this data into a data frame, imputes missing values, and removes unnecessary data. Next, it generates a decision tree from the preprocessed data. This decision tree provides a model for predicting the optimal recommended products based on the features of each product.
[0106] When a user sends a query such as "Please tell me electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the device sends this query to the server. The server uses a decision tree to predict the result "Recommendation A" and returns it to the device. The device then displays this result to the user.
[0107] This series of processes enables accurate and efficient handling of corporate data while providing appropriate responses to user inquiries, thereby reducing the risk of errors and enabling the provision of highly reliable information.
[0108] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0109] Step 1:
[0110] The server collects the necessary information from the company database by issuing a query to the database management system (e.g., MySQL) to retrieve company data (e.g., product category, inventory, price, rating, target).
[0111] Input: Database query
[0112] Output: Retrieved data (e.g., product details)
[0113] Operation: The server connects to the database and executes a query containing the required information.
[0114] Step 2:
[0115] The server formats the collected data and stores it as a data frame. Specifically, it converts the acquired data into a two-dimensional data frame using the pandas library.
[0116] Input: Retrieved data
[0117] Output: Data frame
[0118] Operation: The server reads and formats the data as a pandas DataFrame.
[0119] Step 3:
[0120] The server completes missing values in the data frame and removes unnecessary data. Specifically, it completes missing values with the average value and removes duplicate data and columns unnecessary for analysis.
[0121] Input: DataFrame
[0122] Output: refined data frame
[0123] Operation: The server uses pandas to impute missing values and remove duplicate data and unnecessary columns.
[0124] Step 4:
[0125] The server generates a decision tree model based on the preprocessed data. Specifically, it separates the data into features (e.g., category, price, stock, rating) and targets (e.g., recommended products), and trains a decision tree classifier using a machine learning library (e.g., scikit-learn).
[0126] Input: Preprocessed data frame
[0127] Output: Decision tree model
[0128] Operation: The server splits the data into training data (features and targets) and trains a decision tree classifier.
[0129] Step 5:
[0130] A user can request specific product information from a device. For example, a user can send a query via a web form or mobile app, such as, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher."
[0131] Input: User query (text)
[0132] Output: Reformatted query
[0133] Operation: The device converts the query into an appropriate format (e.g., JSON) and sends it to the server.
[0134] Step 6:
[0135] The server analyzes the query received from the device and makes a prediction using the generated decision tree model. Specifically, it extracts the optimal prediction result from the decision tree model based on the feature values contained in the query.
[0136] Input: Formatted query
[0137] Output: Prediction results (recommended products)
[0138] Operation: The server converts the query content into model input and performs predictions on the decision tree model.
[0139] Step 7:
[0140] The server generates a prediction result and returns it to the terminal, which then displays the received prediction result to the user.
[0141] Input: Prediction result
[0142] Output: Prediction results displayed to the user
[0143] Operation: The server sends the prediction results to the terminal, which displays the results to the user.
[0144] In this way, a series of processing steps allows for efficient handling of enterprise data while providing fast and accurate responses to user inquiries.
[0145] (Application example 1)
[0146] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0147] Conventional corporate data analysis systems have difficulty responding quickly and accurately to complex user inquiries, and lack operability and convenience, especially when used on mobile devices such as smartphones. Furthermore, they lack the reliability and accuracy to recommend optimal products based on users' desired criteria.
[0148] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0149] In this invention, the server includes a data preprocessing means for collecting information from a company database and completing missing values and deleting unnecessary data, a decision tree generation means for generating a decision tree from the preprocessed company data, a prediction means for executing a prediction using the decision tree based on a user's inquiry, a response means for returning the prediction result to the user, an interface means for inputting the user's desired conditions on a smartphone, and a communication means for transmitting the user's desired conditions to the server. This enables the user to easily search for optimal products based on their desired conditions via their smartphone and receive prompt and accurate recommendations.
[0150] A "business database" is a collection of data containing detailed information about or relating to a business, including product information, availability, pricing, reviews, etc.
[0151] "Gathering information" is the process of extracting the necessary data from corporate databases and putting it into an analyzable format.
[0152] "Missing value imputation" refers to predicting or imputing missing values in a dataset using statistical or other rational methods.
[0153] "Data removal" refers to the removal of unnecessary information from a dataset that is meaningless or has a negative impact on analysis or prediction.
[0154] "Data preprocessing means" is a general term for methods and procedures for preparing data for analysis, such as collecting information, filling in missing values, and deleting unnecessary data.
[0155] A "decision tree" is an analytical algorithm created using training data, and is a structure for classification and prediction based on data characteristics.
[0156] "Decision tree generation means" refers to an algorithm or method for generating a decision tree based on collected data.
[0157] A "user inquiry" refers to an act in which a user requests information based on specific conditions or requirements.
[0158] "Prediction" is the process of using a decision tree to predict and determine the optimal outcome for a user's query.
[0159] The "response means" is a function / means for returning and displaying the results obtained by the prediction means to the user.
[0160] A "smartphone" is a mobile device with multiple functions such as telephone, email, and internet connection.
[0161] The "interface means" refers to an operation interface that allows a user to input desired conditions via a smartphone.
[0162] "Communication means" refers to the communication protocol or method for transmitting user conditions and requests from the smartphone to the server.
[0163] The present invention is a system that collects information from a corporate database, formats the data, and provides optimal results based on user inquiries. This system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, an interface means, and a communication means.
[0164] The server collects information from the company database and formats the collected data into a data frame. Because the data may contain missing or unnecessary values, the server imputes the missing values, for example, by using the average value. It also improves the accuracy of the data by removing data that is not necessary for analysis.
[0165] After the preprocessing is complete, the server automatically generates a decision tree using a decision tree generation algorithm. Specifically, the data set is divided into features and targets, and a decision tree classifier is trained to model patterns in the company's data. The generated decision tree is then used for subsequent predictions.
[0166] A user searches for product information through a smartphone application. The user uses an interface to input desired conditions (category, price, stock, rating, etc.). This input information is sent to a server via a communication means. For example, a user might input, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher."
[0167] The server analyzes the query received from the user and makes the optimal prediction using a decision tree model. Specifically, it extracts the optimal result from the decision tree based on the features contained in the query. The server then returns the prediction result to the user, and the terminal displays the result to the user.
[0168] The hardware used includes a high-performance server for data processing and prediction, and a smartphone for accepting user inquiries. The software used is Python and Pandas for data processing, Scikit-learn for decision tree generation, and Flask for communication. This makes it possible to handle corporate data accurately and efficiently while quickly providing optimal responses to user inquiries.
[0169] For example, a user can enter a request into a smartphone app, such as "Please tell me about electronic devices in stock that are priced at 1,000 yen or less and have a rating of 4.5 or higher," and send the request to the server. The server uses a decision tree to make a prediction based on the request and responds to the user with a result such as "The recommended product is XX." This series of processes allows the user to quickly obtain optimal product information based on their desired conditions.
[0170] This system will suggest product information using company data, improving the user experience.
[0171] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0172] Step 1:
[0173] The server collects the necessary information from the company database. The collected data includes product categories, inventory amounts, prices, ratings, etc. This data is formatted as a data frame. The input is the company database, and the output is a data frame.
[0174] Step 2:
[0175] The server then performs imputation of missing values from the reformatted data frame. For example, it imputes missing values with the mean value. In this step, the collected data frame is the input, and the imputed data frame is the output.
[0176] Step 3:
[0177] The server removes unnecessary data from the data frame. This process improves the accuracy of the data. Unnecessary data includes duplicate data and items not needed for analysis. In this step, the imputed data frame is the input, and the data frame with unnecessary data removed is the output.
[0178] Step 4:
[0179] The server generates a decision tree based on the preprocessed data frame. Using a decision tree generation algorithm, it divides the dataset into features and targets and trains a decision tree classifier. In this step, the preprocessed data frame is the input and the decision tree model is the output.
[0180] Step 5:
[0181] A user searches for product information using a smartphone application. The user inputs desired conditions (category, price, stock, rating, etc.) using an interface means. This input information is sent to a server via a communication means. The input is the user's desired conditions, and the output is data sent to the server.
[0182] Step 6:
[0183] The server analyzes the received user query and makes the optimal prediction using a decision tree model. Based on the features contained in the query, the optimal result is extracted from the decision tree. In this step, the query data from the user is the input, and the predicted result is the output.
[0184] Step 7:
[0185] The server returns the prediction result to the user. The terminal receives the result and displays it to the user. In this step, the prediction result is the input, and the result displayed to the user is the output.
[0186] For example, if a user inputs the criteria "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the server will use a decision tree model based on the criteria to recommend the most suitable products. The terminal receives the results and displays them to the user.
[0187] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0188] This invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on that decision tree, and combines it with an emotion engine that recognizes the user's emotions. The aim is to provide appropriate responses according to the emotions. Specifically, the system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, and an emotion engine.
[0189] Data Preprocessing
[0190] The server collects the necessary information from the company database and formats it into a data frame. Because the collected data may contain missing or unnecessary values, the server imputes the missing values, for example, by using the average value. It also improves data accuracy by removing duplicate data and data unnecessary for analysis.
[0191] Decision tree generation
[0192] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, the data set is divided into features and targets, and a decision tree classifier is trained to model patterns in the company's data. The generated decision tree model is used as a means of prediction.
[0193] User inquiries
[0194] The terminal receives inquiries from users, including information about categories, stock status, prices, ratings, etc. It converts the inquiries into an appropriate format and sends them to the server.
[0195] Prediction and response measures
[0196] The server analyzes the query received from the device and makes a prediction using a decision tree model. Specifically, it uses the features corresponding to the query to extract the optimal prediction result from the decision tree. It then returns the prediction result to the device.
[0197] Emotion Engine
[0198] The device is equipped with an emotion engine that analyzes the user's facial expressions, tone of voice, and input text to recognize the user's emotional state (e.g., joy, sadness, anger) in real time.
[0199] Emotional response
[0200] The emotion data detected by the emotion engine is sent to the server, which then adjusts the prediction results based on the emotion data and generates an appropriate response for the user. For example, if the user is confused, the server adjusts the response to provide more polite and detailed information.
[0201] Specific examples
[0202] For example, a company database might contain the following product data:
[0203] Product categories: Electronic devices, books, clothing
[0204] Stock: 10, 200, 5
[0205] Price: 1000, 500, 3000
[0206] Rating: 4.5, 3.8, 4.9
[0207] Target: Recommended A, Recommended B, Recommended C
[0208] The server preprocesses the data and generates a decision tree. When a user asks, "What low-cost electronic devices are in stock?", the device analyzes the user's facial expressions and tone of voice, and the emotion engine recognizes the user's emotional state. For example, if the user appears anxious, the server generates a more friendly and reassuring response.
[0209] The decision tree extracts "Recommendation A" as the prediction result, and taking into account the results of the emotion engine, generates a response that gently explains detailed information about "Recommendation A." This response is displayed to the user via the device.
[0210] This mechanism allows for more personalized responses that take into account the user's emotional state, which is expected to improve the user experience.
[0211] The processing flow will be explained below.
[0212] Step 1:
[0213] The server collects the necessary information (e.g., product category, availability, price, rating, etc.) from the company database. The data extracted from the database is converted into a data frame format.
[0214] Step 2:
[0215] The server performs data preprocessing on the data frame, such as imputing missing values with the mean and removing duplicates and unnecessary data, to prepare a dataset suitable for analysis.
[0216] Step 3:
[0217] The server uses a decision tree generation algorithm to generate a decision tree based on the preprocessed data. It separates the data frame into features (e.g., category, inventory, price, rating) and targets (e.g., recommended products) and trains a decision tree classifier. This decision tree model is used for future predictions.
[0218] Step 4:
[0219] The terminal receives a query from the user (e.g., "Which low-cost electronic devices are in stock?"), converts the received query into an appropriate format, and sends it to the server.
[0220] Step 5:
[0221] The device analyzes the user's facial expressions, tone of voice, and input text, and recognizes the user's emotional state in real time through an emotion engine, which then sends the results to the server.
[0222] Step 6:
[0223] The server analyzes the inquiry content and emotion data sent from the device and performs predictions using a decision tree model. Based on the features specified in the inquiry (e.g., category is electronics, in stock, price is under 1,000 yen, rating is 4.5 or higher), the server extracts the optimal recommendation result from the decision tree.
[0224] Step 7:
[0225] The server adjusts the prediction result based on the results of the emotion engine. For example, if the user is confused, it generates a more polite and detailed response. The adjusted prediction result is sent to the terminal as a response means.
[0226] Step 8:
[0227] The terminal displays the prediction results and responses received from the server to the user, who can then decide what action to take based on the displayed results.
[0228] This series of processing flows enables the server and terminals to work together to efficiently and accurately process corporate data, and to realize a system that provides specific responses to user inquiries that take emotions into consideration.
[0229] Example 2
[0230] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0231] Conventional user response systems provide uniform responses without considering emotions, making it difficult to provide personalized responses that meet user needs. They also face the challenge of taking time to process large amounts of data, making it difficult to provide a quick response. This results in a poor user experience and does not improve service satisfaction.
[0232] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0233] In this invention, the server includes a data preprocessing means that collects information from a corporate database and completes missing values and deletes unnecessary data, a decision tree generation means that generates a decision tree from the preprocessed corporate data, a prediction means that executes a prediction using the decision tree based on a user's inquiry, a response means that returns the prediction result to the user, an emotion engine that recognizes the user's emotional state in real time, and an adjustment means that adjusts the prediction result based on emotion data detected by the emotion engine and generates a response to the user. This enables a personalized and prompt response that reflects the emotion data.
[0234] "Data preprocessing means" refers to the process of collecting information from a company database, completing missing values, deleting duplicate data, and organizing unnecessary data.
[0235] "Decision tree generation means" refers to a function that constructs a model from preprocessed corporate data using a decision tree generation algorithm.
[0236] The "prediction means" refers to a function that executes predictions using a decision tree model based on a user inquiry.
[0237] "Response means" refers to a function that performs processing to respond to the user with the prediction results.
[0238] "Emotion engine" refers to a system that recognizes a user's emotional state in real time from their facial expressions, tone of voice, and input text.
[0239] The "adjustment means" refers to a function that adjusts the prediction results based on the emotion data detected by the emotion engine to generate the optimal response for the user.
[0240] A "data frame" refers to a structure that organizes data collected from a corporate database in a matrix format and preprocesses the primary data.
[0241] "Missing value imputation" refers to the process of filling in missing values in a dataset with an appropriate value, such as the mean.
[0242] This invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on that decision tree, and combines it with an emotion engine that recognizes the user's emotions. The aim is to provide appropriate responses according to the emotions. Specifically, the system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, and an emotion engine.
[0243] First, the server collects the necessary information from the company database and formats it into a data frame. Because the collected data may contain missing or unnecessary values, the server imputes the missing values. For example, it imputes missing values with the average value and removes duplicate data and data unnecessary for analysis to improve data accuracy.
[0244] Next, the server applies a decision tree generation algorithm to the preprocessed data to automatically generate a decision tree. Specifically, the dataset is divided into features and targets, and training is performed using a decision tree classifier (e.g., DecisionTreeClassifier in the Python scikit-learn library). The generated decision tree model is later used as a predictive tool to forecast user queries.
[0245] The user makes a query through the device. For example, the query might include, "Which low-cost electronic devices are in stock?" The device converts the query into an appropriate format and sends it to the server. Specifically, the user's query is converted into JSON format and passed to the server.
[0246] The server analyzes the query received from the terminal and makes a prediction using a decision tree model. Specifically, it uses the features corresponding to the query to extract the optimal prediction result from the decision tree. It then generates the prediction result as a response message and returns it to the terminal.
[0247] The emotion engine is installed in the device and analyzes the user's facial expressions, tone of voice, and input text. This engine recognizes the user's emotional state in real time, determining, for example, joy, sadness, anger, etc. from the user's facial expressions. The analysis results are sent to the server as emotion data.
[0248] The server adjusts the prediction results based on the emotional data and generates an appropriate response for the user. For example, if the user is confused, the server adjusts the response to provide more polite and detailed information. After adjusting the response, it is provided to the user via the terminal.
[0249] As a concrete example, suppose a company database contains the following product data:
[0250] Product categories: Electronic devices, books, clothing
[0251] Stock: 10, 200, 5
[0252] Price: 1000, 500, 3000
[0253] Rating: 4.5, 3.8, 4.9
[0254] Target: Recommended A, Recommended B, Recommended C
[0255] Based on this data, the server performs data preprocessing and generates a decision tree model. When a user asks, "Which low-priced electronic devices are in stock?", the device analyzes the user's facial expressions and tone of voice, and the emotion engine recognizes the user's emotional state. For example, if the user appears anxious, the server generates a more friendly and reassuring response. The decision tree extracts "Recommendation A" as a prediction result and, taking into account the results of the emotion engine, generates a response that gently explains detailed information about "Recommendation A." This response is displayed to the user through the device.
[0256] An example of a prompt is "What low-cost electronic devices are in stock?" A system that receives this prompt can provide a quick and appropriate response while taking into account the user's feelings.
[0257] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0258] Step 1: Data collection and preprocessing
[0259] The server collects the necessary information from the company database and converts it into a data frame. It runs a database query as input and generates a data frame as output. Next, it performs missing value imputation, duplicate data removal, and unnecessary data removal on the collected data. For example, it imputes missing values with the mean value using "df.fillna(df.mean())" and removes duplicate data using "df.drop_duplicates()".
[0260] Step 2: Generate a decision tree
[0261] The server applies a decision tree generation algorithm to the preprocessed data frame. Using the preprocessed data frame as input, a decision tree model is generated as output. Specifically, the dataset is divided into features (e.g., price, rating) and targets (e.g., recommendation A, recommendation B, recommendation C), and the decision tree is trained using "DecisionTreeClassifier().fit(X_train, y_train)".
[0262] Step 3: Receiving a user query
[0263] The terminal receives a query from the user. The input is the user's query (e.g., "Which low-priced electronic devices are in stock?"), and the output is the query content that is received and converted into JSON format. Specifically, the terminal takes data from the form input and converts it into JSON format using "request.form.to_dict()".
[0264] Step 4: Sending the query to the server
[0265] The terminal sends the converted query content to the server. The query content is in JSON format as input and is sent to the server as output.
[0266] Step 5: Analyzing and predicting query content
[0267] The server analyzes the query received from the terminal and makes a prediction using the decision tree model. The query is in JSON format as input, and the prediction result is generated as output. Specifically, the query is obtained using "request_data = json.loads(request.get_data())" and the decision tree model's prediction method "clf.predict(features)" is executed.
[0268] Step 6: Send prediction results to your device
[0269] The server returns the prediction result to the device. The prediction result is input, and a response message in JSON format is generated as output and sent to the device.
[0270] Step 7: Emotion analysis using the emotion engine
[0271] The device analyzes the user's facial expressions, tone of voice, and input text using an emotion engine. The input is the user's real-time data (e.g., camera footage, audio, etc.), and the output is the user's recognized emotional state (e.g., joy, sadness, anger). Specifically, "OpenCV" is used for facial recognition, and "Google Cloud Speech-to-Text" is used for voice analysis.
[0272] Step 8: Sending emotion data to the server
[0273] The device sends the analyzed emotion data to the server. The emotion data is input and sent to the server as output.
[0274] Step 9: Adjust the forecast results
[0275] The server adjusts the prediction result based on the received emotion data and generates an appropriate response to the user. The input is the prediction result and emotion data, and the output is an adjusted response message. Specifically, the emotion data is reflected in the response content using the "adjust_response(prediction, emotion)" method.
[0276] Step 10: Send and display the final response to the terminal
[0277] The server finally sends the adjusted response message to the terminal, which displays it to the user. The adjusted response message is the input, and it is displayed on the user's screen as the output.
[0278] In this way, a system is realized that provides personalized responses according to emotions.
[0279] (Application example 2)
[0280] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0281] User experience is extremely important in modern online shopping systems. Conventional systems provide uniform responses without considering the user's emotional state, which can lead to user dissatisfaction. Furthermore, they fail to provide appropriate information when users inquire, causing confusion and anxiety. To solve these problems and improve the user experience, there was a need to develop a system that can recognize users' emotions in real time and provide responses appropriate to those emotions.
[0282] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes enterprise data normalization means, data preprocessing means for completing missing values and eliminating unnecessary data, classification tree generation means for generating a classification tree from the preprocessed data, prediction means for making predictions using the classification tree based on inquiries from users, response means for sending responses to the users, emotion recognition means for recognizing the user's emotions, and response adjustment means for adjusting responses based on the emotion data. This enables personalized responses that take the user's emotional state into consideration, improving the user experience.
[0283] The "corporate data normalization means" is a means having a function of formatting data obtained from a corporate database into a standard format.
[0284] "Missing value imputation" is the process of filling in missing values in a dataset with a representative value, such as the mean.
[0285] "Data pruning" is the process of cleaning a dataset by removing data that is not necessary for analysis or processing.
[0286] The "data preprocessing means" is a means having a function for performing preprocessing after data collection.
[0287] The "classification tree generation means" is a means having a function of generating a tree-like model from preprocessed data using a classification tree algorithm.
[0288] "User inquiries" refer to questions or information requests made by users to the system.
[0289] The "prediction means" is a means having a function of deriving an optimal prediction result using a classification tree based on a user's query.
[0290] The "response means" is a means having a function for responding to the user with the prediction result obtained by the prediction means.
[0291] The "emotion recognition means" is a means having a function of recognizing the user's emotional state in real time by analyzing the user's facial expression, tone of voice, input text, etc.
[0292] The "response adjustment means" is a means having a function of appropriately adjusting a response to a user based on the emotion data obtained by the emotion recognition means.
[0293] A "data structure" is a form of data that is organized according to specific rules.
[0294] A "representative value" is a value that represents the trend of the entire data set, and is usually the mean or median.
[0295] This invention consists of a series of steps to collect information from a corporate database, normalize and preprocess the data, generate a classification tree model based on the data, make predictions in response to user inquiries, and adjust responses according to the user's emotions.
[0296] First, the server collects the necessary information from the company database and converts it into a data frame. At this stage, missing values are filled in and unnecessary data is removed. Specifically, these tasks are performed using the Python pandas library. Missing values are filled in using representative values such as the mean and median.
[0297] Next, the server uses a classification tree algorithm to generate a classification tree based on the preprocessed data. Here, a machine learning library such as scikit-learn is used to divide the dataset into features and targets, and a classification tree model is constructed.
[0298] When a user makes an inquiry through a device, the device sends the details to the server. The inquiry details include category, stock status, price, rating, etc. The server receives the inquiry, makes the best prediction using an existing classification tree model, and returns the result to the device.
[0299] The device is also equipped with an emotion recognition mechanism that analyzes the user's facial expressions, voice tone, input text, etc. to recognize the user's emotional state in real time. For this purpose, it is expected that an external API such as Google Cloud Vision API will be used. Emotion data is sent to the server, and the server adjusts the response content based on this information. By taking into account the results of emotion recognition, responses can be created that provide more detailed and helpful information if the user is anxious or confused.
[0300] As a concrete example, consider a case where a user asks, "What low-cost electronic devices are in stock?" A device-dependent emotion recognition tool may recognize that the user appears confused. This information is sent to the server, and a prediction result from the classification tree is returned as "Recommendation A." However, by taking the emotion recognition results into account, the server can provide a friendly and reassuring response by adding more detailed information about "Recommendation A."
[0301] In this way, personalized responses that take into account the user's emotional state are realized, which is expected to improve the user experience.
[0302] An example prompt could be, "Create a shopping assistant that recognizes the user's emotions in real time when asking about product availability or price, and provides explanations that correspond to those emotions. For example, if the user seems anxious, provide a polite explanation that reassures them."
[0303] The above is a specific embodiment for carrying out the invention.
[0304] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0305] Step 1:
[0306] The server collects the necessary information from the company database and converts it into a data structure. Specifically, it extracts transaction and product-related information from the database and formats it into a data frame using the pandas library. The input is the raw data from the company database, and the output is a structured data frame.
[0307] Step 2:
[0308] The server performs preprocessing on the data frame, imputing missing values and deleting unnecessary data. Specifically, it uses pandas and SimpleImputer to impute missing values with the mean value and deletes duplicate data and unnecessary columns. The input is a data frame, and the output is a data frame after preprocessing.
[0309] Step 3:
[0310] The server generates a classification tree using scikit-learn's DecisionTreeClassifier based on the preprocessed data. It separates the dataset into features and targets and trains the model. The input is the preprocessed data frame, and the output is a classification tree model.
[0311] Step 4:
[0312] A user makes a query through a terminal, for example, by inputting a question about product availability or price. The input is the user's textual query, and the output is a query request to the server.
[0313] Step 5:
[0314] The terminal sends the user's query to the server. The server analyzes the received query and makes a prediction using a classification tree model. Specifically, the query content is mapped to features, which are then input into the classification tree to obtain a prediction result. The input is the user's query data, and the output is the prediction result.
[0315] Step 6:
[0316] The device recognizes the user's emotional state by analyzing their voice, facial expressions, and text. Specifically, it uses the Google Cloud Vision API to analyze the user's face image and an emotion recognition model trained with TensorFlow / Keras to analyze the voice and text. The input is the user's multimodal emotional data, and the output is the user's emotional state.
[0317] Step 7:
[0318] The server adjusts the response based on the emotion recognition results. Specifically, if negative emotions such as confusion or anxiety are recognized, the server adjusts the response content to generate a detailed and kind response. The input is the emotion recognition results and prediction results, and the output is the adjusted response message.
[0319] Step 8:
[0320] The terminal provides the adjusted response received from the server to the user, for example by displaying a text message or playing it as a voice message. The input is the response message from the server, and the output is the display of the response through the user interface.
[0321] The above are the specific processing steps for carrying out the invention, which will enable personalized responses that take into account the user's emotional state, and is expected to improve the user experience.
[0322] 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 a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the 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.
[0323] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0324] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0325] [Second embodiment]
[0326] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0327] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0328] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0329] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0330] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0331] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0332] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0333] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0334] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[0335] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0336] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0337] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. 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."
[0338] The present invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on the decision tree. Specifically, it is composed of a data preprocessing unit, a decision tree generation unit, a prediction unit, and a response unit.
[0339] Data Preprocessing
[0340] The server collects the necessary information from the company database and formats it into a data frame. The collected data may contain missing values or unnecessary data. For this reason, the server imputes the missing values, for example, by using the average value. It also improves data accuracy by deleting duplicate data and data unnecessary for analysis.
[0341] Decision tree generation
[0342] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, the server divides the dataset into features and targets, and trains a decision tree classifier to model patterns in the company's data. The generated decision tree is then used for subsequent predictions.
[0343] User inquiries
[0344] The terminal receives inquiries from users in text format, including information about categories, stock status, prices, ratings, etc. The terminal converts the received inquiries into an appropriate format and sends them to the server.
[0345] Prediction and response measures
[0346] The server analyzes the query received from the device and makes a prediction using the generated decision tree. Specifically, it extracts the optimal prediction from the decision tree model based on the features contained in the query. The server then returns the prediction result to the device, which then displays it to the user.
[0347] Specific examples
[0348] For example, a company database might contain the following product data:
[0349] Product categories: Electronic devices, books, clothing
[0350] Stock: 10, 200, 5
[0351] Price: 1000, 500, 3000
[0352] Rating: 4.5, 3.8, 4.9
[0353] Target: Recommended A, Recommended B, Recommended C
[0354] First, the server converts this data into a data frame, imputes missing values, and removes unnecessary data. Next, it generates a decision tree from the preprocessed data. This decision tree provides a model for predicting the optimal recommended products based on the features of each product.
[0355] When a user sends a query such as "Please tell me electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the device sends this query to the server. The server uses a decision tree to predict the result "Recommendation A" and returns it to the device. The device then displays this result to the user.
[0356] This series of processes allows us to handle corporate data accurately and efficiently while providing appropriate responses to user inquiries, thereby reducing the risk of hallucination and providing highly reliable information.
[0357] The processing flow will be explained below.
[0358] Step 1:
[0359] The server collects the necessary information (e.g., product category, availability, price, rating, etc.) from the company database. The data extracted from the database is converted into a data frame format.
[0360] Step 2:
[0361] The server performs data preprocessing on the data frame, such as imputing missing values with the mean and removing duplicates and unnecessary data, to prepare a dataset suitable for analysis.
[0362] Step 3:
[0363] The server uses a decision tree generation algorithm to generate a decision tree based on the preprocessed data. First, it separates the data frame into features (e.g., category, inventory, price, rating) and targets (e.g., recommended products), and then trains a decision tree classifier. This decision tree model is used for future predictions.
[0364] Step 4:
[0365] The terminal receives a query from the user (e.g., "Which low-cost electronic devices are in stock?"), converts the received query into an appropriate format, and sends it to the server.
[0366] Step 5:
[0367] The server analyzes the inquiry sent from the device and performs predictions using a decision tree model based on the inquiry content. Based on the features specified in the inquiry (e.g., category is electronic equipment, in stock, price is under 1,000 yen, rating is 4.5 or higher), the optimal recommendation result is extracted from the decision tree.
[0368] Step 6:
[0369] The server obtains the prediction results from the decision tree and returns them to the device. For example, if the prediction result is a specific recommended product such as "Recommendation A," the server sends that information to the device.
[0370] Step 7:
[0371] The terminal displays the prediction results received from the server to the user, who can then decide what to do based on the results.
[0372] This series of processing flows enables the server and terminals to work together to efficiently and accurately process corporate data and realize a system that provides specific responses to user inquiries.
[0373] Example 1
[0374] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0375] Conventional information systems have struggled to efficiently preprocess large amounts of corporate data, generate appropriate predictive models, and respond quickly and accurately to user inquiries. Missing values and unnecessary data can reduce data accuracy, affecting prediction accuracy. Furthermore, automated processes for responding appropriately to diverse user inquiries are lacking.
[0376] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0377] In this invention, the server includes: a data preprocessing means for collecting information from a corporate database and completing missing values and deleting unnecessary data; a decision tree generation means for generating a decision tree from the preprocessed corporate data; a prediction means for executing a prediction using the decision tree based on a user's query; a response means for responding to the user with the prediction result; a terminal for receiving the query, converting it into an appropriate format, and sending it to the server; a server for collecting corporate data and shaping it into a data frame; a server for completing missing values in the data frame and deleting duplicate data and unnecessary data; a means for dividing a dataset into features and targets using a decision tree generation algorithm and training a decision tree classifier; a server for making optimal predictions using the generated decision tree; and a server for generating prediction results based on the generated decision tree model and returning them to the terminal. This makes it possible to improve the accuracy of corporate data while quickly and accurately responding to user queries.
[0378] "Data preprocessing means" refers to a means for formatting data collected from a company database, filling in missing values, and deleting unnecessary data.
[0379] The "decision tree generation means" is a means for generating a decision tree model from preprocessed enterprise data and training a classifier based on the features of the data and the target.
[0380] The "prediction means" is a means for executing a prediction using a decision tree based on a user's inquiry and extracting the optimal result.
[0381] The "response means" is a means for returning the prediction result to the user.
[0382] A "terminal" is a device that receives queries from users, converts them into an appropriate format, and sends them to a server.
[0383] The "server" is a device that performs a series of processes: collecting corporate data, formatting it into a data frame, and generating and predicting decision trees.
[0384] A "decision tree generation algorithm" is a computational method for dividing a dataset into features and targets to create a decision tree model.
[0385] A "data frame" is a two-dimensional data structure with rows and columns, and is a format for efficiently storing and manipulating enterprise data.
[0386] "Missing value imputation" is the process of filling in missing values in a dataset in a specific way.
[0387] "Unnecessary data removal" is the process of removing duplicate data and information unnecessary for analysis from a dataset.
[0388] The present invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on the decision tree. Specifically, it is composed of a data preprocessing unit, a decision tree generation unit, a prediction unit, and a response unit.
[0389] Data Preprocessing
[0390] The server collects the necessary information from the company database and formats it into a data frame. The hardware used includes a high-performance server computer. The software used includes a database management system (e.g., MySQL) and a data preprocessing and analysis tool (e.g., the Python pandas library). Since the collected data may contain missing values or unnecessary data, the server improves data accuracy by interpolating missing values, for example, with the average value, and removing duplicate data and data unnecessary for analysis.
[0391] Decision tree generation
[0392] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, it divides the dataset into features and targets, and trains a decision tree classifier. The software used includes machine learning libraries (e.g., scikit-learn). The generated decision tree is used for subsequent predictions.
[0393] User inquiries
[0394] The terminal receives inquiries from users in text format. For example, a user may send an inquiry via a web form or mobile app such as, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher." The terminal converts the received inquiry into an appropriate format (e.g., JSON) and sends it to the server. Terminals include personal computers and smartphones.
[0395] Prediction and response measures
[0396] The server analyzes the query received from the device and makes a prediction using the generated decision tree. Based on the features contained in the query, the server extracts the optimal prediction from the decision tree model. The server then returns the prediction result to the device, which then displays it to the user.
[0397] Specific examples
[0398] For example, a company database might contain the following product data:
[0399] Product categories: Electronic devices, books, clothing
[0400] Stock: 10, 200, 5
[0401] Price: 1000, 500, 3000
[0402] Rating: 4.5, 3.8, 4.9
[0403] Target: Recommended A, Recommended B, Recommended C
[0404] First, the server converts this data into a data frame, imputes missing values, and removes unnecessary data. Next, it generates a decision tree from the preprocessed data. This decision tree provides a model for predicting the optimal recommended products based on the features of each product.
[0405] When a user sends a query such as "Please tell me electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the device sends this query to the server. The server uses a decision tree to predict the result "Recommendation A" and returns it to the device. The device then displays this result to the user.
[0406] This series of processes enables accurate and efficient handling of corporate data while providing appropriate responses to user inquiries, thereby reducing the risk of errors and enabling the provision of highly reliable information.
[0407] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0408] Step 1:
[0409] The server collects the necessary information from the company database by issuing a query to the database management system (e.g., MySQL) to retrieve company data (e.g., product category, inventory, price, rating, target).
[0410] Input: Database query
[0411] Output: Retrieved data (e.g., product details)
[0412] Operation: The server connects to the database and executes a query containing the required information.
[0413] Step 2:
[0414] The server formats the collected data and stores it as a data frame. Specifically, it converts the acquired data into a two-dimensional data frame using the pandas library.
[0415] Input: Retrieved data
[0416] Output: Data frame
[0417] Operation: The server reads and formats the data as a pandas DataFrame.
[0418] Step 3:
[0419] The server completes missing values in the data frame and removes unnecessary data. Specifically, it completes missing values with the average value and removes duplicate data and columns unnecessary for analysis.
[0420] Input: DataFrame
[0421] Output: refined data frame
[0422] Operation: The server uses pandas to impute missing values and remove duplicate data and unnecessary columns.
[0423] Step 4:
[0424] The server generates a decision tree model based on the preprocessed data. Specifically, it separates the data into features (e.g., category, price, stock, rating) and targets (e.g., recommended products), and trains a decision tree classifier using a machine learning library (e.g., scikit-learn).
[0425] Input: Preprocessed data frame
[0426] Output: Decision tree model
[0427] Operation: The server splits the data into training data (features and targets) and trains a decision tree classifier.
[0428] Step 5:
[0429] A user can request specific product information from a device. For example, a user can send a query via a web form or mobile app, such as, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher."
[0430] Input: User query (text)
[0431] Output: Reformatted query
[0432] Operation: The device converts the query into an appropriate format (e.g., JSON) and sends it to the server.
[0433] Step 6:
[0434] The server analyzes the query received from the device and makes a prediction using the generated decision tree model. Specifically, it extracts the optimal prediction result from the decision tree model based on the feature values contained in the query.
[0435] Input: Formatted query
[0436] Output: Prediction results (recommended products)
[0437] Operation: The server converts the query content into model input and performs predictions on the decision tree model.
[0438] Step 7:
[0439] The server generates a prediction result and returns it to the terminal, which then displays the received prediction result to the user.
[0440] Input: Prediction result
[0441] Output: Prediction results displayed to the user
[0442] Operation: The server sends the prediction results to the terminal, which displays the results to the user.
[0443] In this way, a series of processing steps allows for efficient handling of enterprise data while providing fast and accurate responses to user inquiries.
[0444] (Application example 1)
[0445] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0446] Conventional corporate data analysis systems have difficulty responding quickly and accurately to complex user inquiries, and lack operability and convenience, especially when used on mobile devices such as smartphones. Furthermore, they lack the reliability and accuracy to recommend optimal products based on users' desired criteria.
[0447] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0448] In this invention, the server includes a data preprocessing means for collecting information from a company database and completing missing values and deleting unnecessary data, a decision tree generation means for generating a decision tree from the preprocessed company data, a prediction means for executing a prediction using the decision tree based on a user's inquiry, a response means for returning the prediction result to the user, an interface means for inputting the user's desired conditions on a smartphone, and a communication means for transmitting the user's desired conditions to the server. This enables the user to easily search for optimal products based on their desired conditions via their smartphone and receive prompt and accurate recommendations.
[0449] A "business database" is a collection of data containing detailed information about or relating to a business, including product information, availability, pricing, reviews, etc.
[0450] "Gathering information" is the process of extracting the necessary data from corporate databases and putting it into an analyzable format.
[0451] "Missing value imputation" refers to predicting or imputing missing values in a dataset using statistical or other rational methods.
[0452] "Data removal" refers to the removal of unnecessary information from a dataset that is meaningless or has a negative impact on analysis or prediction.
[0453] "Data preprocessing means" is a general term for methods and procedures for preparing data for analysis, such as collecting information, filling in missing values, and deleting unnecessary data.
[0454] A "decision tree" is an analytical algorithm created using training data, and is a structure for classification and prediction based on data characteristics.
[0455] "Decision tree generation means" refers to an algorithm or method for generating a decision tree based on collected data.
[0456] A "user inquiry" refers to an act in which a user requests information based on specific conditions or requirements.
[0457] "Prediction" is the process of using a decision tree to predict and determine the optimal outcome for a user's query.
[0458] The "response means" is a function / means for returning and displaying the results obtained by the prediction means to the user.
[0459] A "smartphone" is a mobile device with multiple functions such as telephone, email, and internet connection.
[0460] The "interface means" refers to an operation interface that allows a user to input desired conditions via a smartphone.
[0461] "Communication means" refers to the communication protocol or method for transmitting user conditions and requests from the smartphone to the server.
[0462] The present invention is a system that collects information from a corporate database, formats the data, and provides optimal results based on user inquiries. This system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, an interface means, and a communication means.
[0463] The server collects information from the company database and formats the collected data into a data frame. Because the data may contain missing or unnecessary values, the server imputes the missing values, for example, by using the average value. It also improves the accuracy of the data by removing data that is not necessary for analysis.
[0464] After the preprocessing is complete, the server automatically generates a decision tree using a decision tree generation algorithm. Specifically, the data set is divided into features and targets, and a decision tree classifier is trained to model patterns in the company's data. The generated decision tree is then used for subsequent predictions.
[0465] A user searches for product information through a smartphone application. The user uses an interface to input desired conditions (category, price, stock, rating, etc.). This input information is sent to a server via a communication means. For example, a user might input, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher."
[0466] The server analyzes the query received from the user and makes the optimal prediction using a decision tree model. Specifically, it extracts the optimal result from the decision tree based on the features contained in the query. The server then returns the prediction result to the user, and the terminal displays the result to the user.
[0467] The hardware used includes a high-performance server for data processing and prediction, and a smartphone for accepting user inquiries. The software used is Python and Pandas for data processing, Scikit-learn for decision tree generation, and Flask for communication. This makes it possible to handle corporate data accurately and efficiently while quickly providing optimal responses to user inquiries.
[0468] For example, a user can enter a request into a smartphone app, such as "Please tell me about electronic devices in stock that are priced at 1,000 yen or less and have a rating of 4.5 or higher," and send the request to the server. The server uses a decision tree to make a prediction based on the request and responds to the user with a result such as "The recommended product is XX." This series of processes allows the user to quickly obtain optimal product information based on their desired conditions.
[0469] This system will suggest product information using company data, improving the user experience.
[0470] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0471] Step 1:
[0472] The server collects the necessary information from the company database. The collected data includes product categories, inventory amounts, prices, ratings, etc. This data is formatted as a data frame. The input is the company database, and the output is a data frame.
[0473] Step 2:
[0474] The server then performs imputation of missing values from the reformatted data frame. For example, it imputes missing values with the mean value. In this step, the collected data frame is the input, and the imputed data frame is the output.
[0475] Step 3:
[0476] The server removes unnecessary data from the data frame. This process improves the accuracy of the data. Unnecessary data includes duplicate data and items not needed for analysis. In this step, the imputed data frame is the input, and the data frame with unnecessary data removed is the output.
[0477] Step 4:
[0478] The server generates a decision tree based on the preprocessed data frame. Using a decision tree generation algorithm, it divides the dataset into features and targets and trains a decision tree classifier. In this step, the preprocessed data frame is the input and the decision tree model is the output.
[0479] Step 5:
[0480] A user searches for product information using a smartphone application. The user inputs desired conditions (category, price, stock, rating, etc.) using an interface means. This input information is sent to a server via a communication means. The input is the user's desired conditions, and the output is data sent to the server.
[0481] Step 6:
[0482] The server analyzes the received user query and makes the optimal prediction using a decision tree model. Based on the features contained in the query, the optimal result is extracted from the decision tree. In this step, the query data from the user is the input, and the predicted result is the output.
[0483] Step 7:
[0484] The server returns the prediction result to the user. The terminal receives the result and displays it to the user. In this step, the prediction result is the input, and the result displayed to the user is the output.
[0485] For example, if a user inputs the criteria "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the server will use a decision tree model based on the criteria to recommend the most suitable products. The terminal receives the results and displays them to the user.
[0486] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0487] This invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on that decision tree, and combines it with an emotion engine that recognizes the user's emotions. The aim is to provide appropriate responses according to the emotions. Specifically, the system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, and an emotion engine.
[0488] Data Preprocessing
[0489] The server collects the necessary information from the company database and formats it into a data frame. Because the collected data may contain missing or unnecessary values, the server imputes the missing values, for example, by using the average value. It also improves data accuracy by removing duplicate data and data unnecessary for analysis.
[0490] Decision tree generation
[0491] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, the data set is divided into features and targets, and a decision tree classifier is trained to model patterns in the company's data. The generated decision tree model is used as a means of prediction.
[0492] User inquiries
[0493] The terminal receives inquiries from users, including information about categories, stock status, prices, ratings, etc. It converts the inquiries into an appropriate format and sends them to the server.
[0494] Prediction and response measures
[0495] The server analyzes the query received from the device and makes a prediction using a decision tree model. Specifically, it uses the features corresponding to the query to extract the optimal prediction result from the decision tree. It then returns the prediction result to the device.
[0496] Emotion Engine
[0497] The device is equipped with an emotion engine that analyzes the user's facial expressions, tone of voice, and input text to recognize the user's emotional state (e.g., joy, sadness, anger) in real time.
[0498] Emotional response
[0499] The emotion data detected by the emotion engine is sent to the server, which then adjusts the prediction results based on the emotion data and generates an appropriate response for the user. For example, if the user is confused, the server adjusts the response to provide more polite and detailed information.
[0500] Specific examples
[0501] For example, a company database might contain the following product data:
[0502] Product categories: Electronic devices, books, clothing
[0503] Stock: 10, 200, 5
[0504] Price: 1000, 500, 3000
[0505] Rating: 4.5, 3.8, 4.9
[0506] Target: Recommended A, Recommended B, Recommended C
[0507] The server preprocesses the data and generates a decision tree. When a user asks, "What low-cost electronic devices are in stock?", the device analyzes the user's facial expressions and tone of voice, and the emotion engine recognizes the user's emotional state. For example, if the user appears anxious, the server generates a more friendly and reassuring response.
[0508] The decision tree extracts "Recommendation A" as the prediction result, and taking into account the results of the emotion engine, generates a response that gently explains detailed information about "Recommendation A." This response is displayed to the user via the device.
[0509] This mechanism allows for more personalized responses that take into account the user's emotional state, which is expected to improve the user experience.
[0510] The processing flow will be explained below.
[0511] Step 1:
[0512] The server collects the necessary information (e.g., product category, availability, price, rating, etc.) from the company database. The data extracted from the database is converted into a data frame format.
[0513] Step 2:
[0514] The server performs data preprocessing on the data frame, such as imputing missing values with the mean and removing duplicates and unnecessary data, to prepare a dataset suitable for analysis.
[0515] Step 3:
[0516] The server uses a decision tree generation algorithm to generate a decision tree based on the preprocessed data. It separates the data frame into features (e.g., category, inventory, price, rating) and targets (e.g., recommended products) and trains a decision tree classifier. This decision tree model is used for future predictions.
[0517] Step 4:
[0518] The terminal receives a query from the user (e.g., "Which low-cost electronic devices are in stock?"), converts the received query into an appropriate format, and sends it to the server.
[0519] Step 5:
[0520] The device analyzes the user's facial expressions, tone of voice, and input text, and recognizes the user's emotional state in real time through an emotion engine, which then sends the results to the server.
[0521] Step 6:
[0522] The server analyzes the inquiry content and emotion data sent from the device and performs predictions using a decision tree model. Based on the features specified in the inquiry (e.g., category is electronics, in stock, price is under 1,000 yen, rating is 4.5 or higher), the server extracts the optimal recommendation result from the decision tree.
[0523] Step 7:
[0524] The server adjusts the prediction result based on the results of the emotion engine. For example, if the user is confused, it generates a more polite and detailed response. The adjusted prediction result is sent to the terminal as a response means.
[0525] Step 8:
[0526] The terminal displays the prediction results and responses received from the server to the user, who can then decide what action to take based on the displayed results.
[0527] This series of processing flows enables the server and terminals to work together to efficiently and accurately process corporate data, and to realize a system that provides specific responses to user inquiries that take emotions into consideration.
[0528] Example 2
[0529] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0530] Conventional user response systems provide uniform responses without considering emotions, making it difficult to provide personalized responses that meet user needs. They also face the challenge of taking time to process large amounts of data, making it difficult to provide a quick response. This results in a poor user experience and does not improve service satisfaction.
[0531] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0532] In this invention, the server includes a data preprocessing means that collects information from a corporate database and completes missing values and deletes unnecessary data, a decision tree generation means that generates a decision tree from the preprocessed corporate data, a prediction means that executes a prediction using the decision tree based on a user's inquiry, a response means that returns the prediction result to the user, an emotion engine that recognizes the user's emotional state in real time, and an adjustment means that adjusts the prediction result based on emotion data detected by the emotion engine and generates a response to the user. This enables a personalized and prompt response that reflects the emotion data.
[0533] "Data preprocessing means" refers to the process of collecting information from a company database, completing missing values, deleting duplicate data, and organizing unnecessary data.
[0534] "Decision tree generation means" refers to a function that constructs a model from preprocessed corporate data using a decision tree generation algorithm.
[0535] The "prediction means" refers to a function that executes predictions using a decision tree model based on a user inquiry.
[0536] "Response means" refers to a function that performs processing to respond to the user with the prediction results.
[0537] "Emotion engine" refers to a system that recognizes a user's emotional state in real time from their facial expressions, tone of voice, and input text.
[0538] The "adjustment means" refers to a function that adjusts the prediction results based on the emotion data detected by the emotion engine to generate the optimal response for the user.
[0539] A "data frame" refers to a structure that organizes data collected from a corporate database in a matrix format and preprocesses the primary data.
[0540] "Missing value imputation" refers to the process of filling in missing values in a dataset with an appropriate value, such as the mean.
[0541] This invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on that decision tree, and combines it with an emotion engine that recognizes the user's emotions. The aim is to provide appropriate responses according to the emotions. Specifically, the system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, and an emotion engine.
[0542] First, the server collects the necessary information from the company database and formats it into a data frame. Because the collected data may contain missing or unnecessary values, the server imputes the missing values. For example, it imputes missing values with the average value and removes duplicate data and data unnecessary for analysis to improve data accuracy.
[0543] Next, the server applies a decision tree generation algorithm to the preprocessed data to automatically generate a decision tree. Specifically, the dataset is divided into features and targets, and training is performed using a decision tree classifier (e.g., DecisionTreeClassifier in the Python scikit-learn library). The generated decision tree model is later used as a predictive tool to forecast user queries.
[0544] The user makes a query through the device. For example, the query might include, "Which low-cost electronic devices are in stock?" The device converts the query into an appropriate format and sends it to the server. Specifically, the user's query is converted into JSON format and passed to the server.
[0545] The server analyzes the query received from the terminal and makes a prediction using a decision tree model. Specifically, it uses the features corresponding to the query to extract the optimal prediction result from the decision tree. It then generates the prediction result as a response message and returns it to the terminal.
[0546] The emotion engine is installed in the device and analyzes the user's facial expressions, tone of voice, and input text. This engine recognizes the user's emotional state in real time, determining, for example, joy, sadness, anger, etc. from the user's facial expressions. The analysis results are sent to the server as emotion data.
[0547] The server adjusts the prediction results based on the emotional data and generates an appropriate response for the user. For example, if the user is confused, the server adjusts the response to provide more polite and detailed information. After adjusting the response, it is provided to the user via the terminal.
[0548] As a concrete example, suppose a company database contains the following product data:
[0549] Product categories: Electronic devices, books, clothing
[0550] Stock: 10, 200, 5
[0551] Price: 1000, 500, 3000
[0552] Rating: 4.5, 3.8, 4.9
[0553] Target: Recommended A, Recommended B, Recommended C
[0554] Based on this data, the server performs data preprocessing and generates a decision tree model. When a user asks, "Which low-priced electronic devices are in stock?", the device analyzes the user's facial expressions and tone of voice, and the emotion engine recognizes the user's emotional state. For example, if the user appears anxious, the server generates a more friendly and reassuring response. The decision tree extracts "Recommendation A" as a prediction result and, taking into account the results of the emotion engine, generates a response that gently explains detailed information about "Recommendation A." This response is displayed to the user through the device.
[0555] An example of a prompt is "What low-cost electronic devices are in stock?" A system that receives this prompt can provide a quick and appropriate response while taking into account the user's feelings.
[0556] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0557] Step 1: Data collection and preprocessing
[0558] The server collects the necessary information from the company database and converts it into a data frame. It runs a database query as input and generates a data frame as output. Next, it performs missing value imputation, duplicate data removal, and unnecessary data removal on the collected data. For example, it imputes missing values with the mean value using "df.fillna(df.mean())" and removes duplicate data using "df.drop_duplicates()".
[0559] Step 2: Generate a decision tree
[0560] The server applies a decision tree generation algorithm to the preprocessed data frame. Using the preprocessed data frame as input, a decision tree model is generated as output. Specifically, the dataset is divided into features (e.g., price, rating) and targets (e.g., recommendation A, recommendation B, recommendation C), and the decision tree is trained using "DecisionTreeClassifier().fit(X_train, y_train)".
[0561] Step 3: Receiving a user query
[0562] The terminal receives a query from the user. The input is the user's query (e.g., "Which low-priced electronic devices are in stock?"), and the output is the query content that is received and converted into JSON format. Specifically, the terminal takes data from the form input and converts it into JSON format using "request.form.to_dict()".
[0563] Step 4: Sending the query to the server
[0564] The terminal sends the converted query content to the server. The query content is in JSON format as input and is sent to the server as output.
[0565] Step 5: Analyzing and predicting query content
[0566] The server analyzes the query received from the terminal and makes a prediction using the decision tree model. The query is in JSON format as input, and the prediction result is generated as output. Specifically, the query is obtained using "request_data = json.loads(request.get_data())" and the decision tree model's prediction method "clf.predict(features)" is executed.
[0567] Step 6: Send prediction results to your device
[0568] The server returns the prediction result to the device. The prediction result is input, and a response message in JSON format is generated as output and sent to the device.
[0569] Step 7: Emotion analysis using the emotion engine
[0570] The device analyzes the user's facial expressions, tone of voice, and input text using an emotion engine. The input is the user's real-time data (e.g., camera footage, audio, etc.), and the output is the user's recognized emotional state (e.g., joy, sadness, anger). Specifically, "OpenCV" is used for facial recognition, and "Google Cloud Speech-to-Text" is used for voice analysis.
[0571] Step 8: Sending emotion data to the server
[0572] The device sends the analyzed emotion data to the server. The emotion data is input and sent to the server as output.
[0573] Step 9: Adjust the forecast results
[0574] The server adjusts the prediction result based on the received emotion data and generates an appropriate response to the user. The input is the prediction result and emotion data, and the output is an adjusted response message. Specifically, the emotion data is reflected in the response content using the "adjust_response(prediction, emotion)" method.
[0575] Step 10: Send and display the final response to the terminal
[0576] The server finally sends the adjusted response message to the terminal, which displays it to the user. The adjusted response message is the input, and it is displayed on the user's screen as the output.
[0577] In this way, a system is realized that provides personalized responses according to emotions.
[0578] (Application example 2)
[0579] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0580] User experience is extremely important in modern online shopping systems. Conventional systems provide uniform responses without considering the user's emotional state, which can lead to user dissatisfaction. Furthermore, they fail to provide appropriate information when users inquire, causing confusion and anxiety. To solve these problems and improve the user experience, there was a need to develop a system that can recognize users' emotions in real time and provide responses appropriate to those emotions.
[0581] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes enterprise data normalization means, data preprocessing means for completing missing values and eliminating unnecessary data, classification tree generation means for generating a classification tree from the preprocessed data, prediction means for making predictions using the classification tree based on inquiries from users, response means for sending responses to the users, emotion recognition means for recognizing the user's emotions, and response adjustment means for adjusting responses based on the emotion data. This enables personalized responses that take the user's emotional state into consideration, improving the user experience.
[0582] The "corporate data normalization means" is a means having a function of formatting data obtained from a corporate database into a standard format.
[0583] "Missing value imputation" is the process of filling in missing values in a dataset with a representative value, such as the mean.
[0584] "Data pruning" is the process of cleaning a dataset by removing data that is not necessary for analysis or processing.
[0585] The "data preprocessing means" is a means having a function for performing preprocessing after data collection.
[0586] The "classification tree generation means" is a means having a function of generating a tree-like model from preprocessed data using a classification tree algorithm.
[0587] "User inquiries" refer to questions or information requests made by users to the system.
[0588] The "prediction means" is a means having a function of deriving an optimal prediction result using a classification tree based on a user's query.
[0589] The "response means" is a means having a function for responding to the user with the prediction result obtained by the prediction means.
[0590] The "emotion recognition means" is a means having a function of recognizing the user's emotional state in real time by analyzing the user's facial expression, tone of voice, input text, etc.
[0591] The "response adjustment means" is a means having a function of appropriately adjusting a response to a user based on the emotion data obtained by the emotion recognition means.
[0592] A "data structure" is a form of data that is organized according to specific rules.
[0593] A "representative value" is a value that represents the trend of the entire data set, and is usually the mean or median.
[0594] This invention consists of a series of steps to collect information from a corporate database, normalize and preprocess the data, generate a classification tree model based on the data, make predictions in response to user inquiries, and adjust responses according to the user's emotions.
[0595] First, the server collects the necessary information from the company database and converts it into a data frame. At this stage, missing values are filled in and unnecessary data is removed. Specifically, these tasks are performed using the Python pandas library. Missing values are filled in using representative values such as the mean and median.
[0596] Next, the server uses a classification tree algorithm to generate a classification tree based on the preprocessed data. Here, a machine learning library such as scikit-learn is used to divide the dataset into features and targets, and a classification tree model is constructed.
[0597] When a user makes an inquiry through a device, the device sends the details to the server. The inquiry details include category, stock status, price, rating, etc. The server receives the inquiry, makes the best prediction using an existing classification tree model, and returns the result to the device.
[0598] The device is also equipped with an emotion recognition mechanism that analyzes the user's facial expressions, voice tone, input text, etc. to recognize the user's emotional state in real time. For this purpose, it is expected that an external API such as Google Cloud Vision API will be used. Emotion data is sent to the server, and the server adjusts the response content based on this information. By taking into account the results of emotion recognition, responses can be created that provide more detailed and helpful information if the user is anxious or confused.
[0599] As a concrete example, consider a case where a user asks, "What low-cost electronic devices are in stock?" A device-dependent emotion recognition tool may recognize that the user appears confused. This information is sent to the server, and a prediction result from the classification tree is returned as "Recommendation A." However, by taking the emotion recognition results into account, the server can provide a friendly and reassuring response by adding more detailed information about "Recommendation A."
[0600] In this way, personalized responses that take into account the user's emotional state are realized, which is expected to improve the user experience.
[0601] An example prompt could be, "Create a shopping assistant that recognizes the user's emotions in real time when asking about product availability or price, and provides explanations that correspond to those emotions. For example, if the user seems anxious, provide a polite explanation that reassures them."
[0602] The above is a specific embodiment for carrying out the invention.
[0603] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0604] Step 1:
[0605] The server collects the necessary information from the company database and converts it into a data structure. Specifically, it extracts transaction and product-related information from the database and formats it into a data frame using the pandas library. The input is the raw data from the company database, and the output is a structured data frame.
[0606] Step 2:
[0607] The server performs preprocessing on the data frame, imputing missing values and deleting unnecessary data. Specifically, it uses pandas and SimpleImputer to impute missing values with the mean value and deletes duplicate data and unnecessary columns. The input is a data frame, and the output is a data frame after preprocessing.
[0608] Step 3:
[0609] The server generates a classification tree using scikit-learn's DecisionTreeClassifier based on the preprocessed data. It separates the dataset into features and targets and trains the model. The input is the preprocessed data frame, and the output is a classification tree model.
[0610] Step 4:
[0611] A user makes a query through a terminal, for example, by inputting a question about product availability or price. The input is the user's textual query, and the output is a query request to the server.
[0612] Step 5:
[0613] The terminal sends the user's query to the server. The server analyzes the received query and makes a prediction using a classification tree model. Specifically, the query content is mapped to features, which are then input into the classification tree to obtain a prediction result. The input is the user's query data, and the output is the prediction result.
[0614] Step 6:
[0615] The device recognizes the user's emotional state by analyzing their voice, facial expressions, and text. Specifically, it uses the Google Cloud Vision API to analyze the user's face image and an emotion recognition model trained with TensorFlow / Keras to analyze the voice and text. The input is the user's multimodal emotional data, and the output is the user's emotional state.
[0616] Step 7:
[0617] The server adjusts the response based on the emotion recognition results. Specifically, if negative emotions such as confusion or anxiety are recognized, the server adjusts the response content to generate a detailed and kind response. The input is the emotion recognition results and prediction results, and the output is the adjusted response message.
[0618] Step 8:
[0619] The terminal provides the adjusted response received from the server to the user, for example by displaying a text message or playing it as a voice message. The input is the response message from the server, and the output is the display of the response through the user interface.
[0620] The above are the specific processing steps for carrying out the invention, which will enable personalized responses that take into account the user's emotional state, and is expected to improve the user experience.
[0621] 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 a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0622] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0623] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[0624] [Third embodiment]
[0625] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0626] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[0627] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0628] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[0629] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0630] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0631] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0632] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0633] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[0634] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0635] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0636] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. 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."
[0637] The present invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on the decision tree. Specifically, it is composed of a data preprocessing unit, a decision tree generation unit, a prediction unit, and a response unit.
[0638] Data Preprocessing
[0639] The server collects the necessary information from the company database and formats it into a data frame. The collected data may contain missing values or unnecessary data. For this reason, the server imputes the missing values, for example, by using the average value. It also improves data accuracy by deleting duplicate data and data unnecessary for analysis.
[0640] Decision tree generation
[0641] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, the server divides the dataset into features and targets, and trains a decision tree classifier to model patterns in the company's data. The generated decision tree is then used for subsequent predictions.
[0642] User inquiries
[0643] The terminal receives inquiries from users in text format, including information about categories, stock status, prices, ratings, etc. The terminal converts the received inquiries into an appropriate format and sends them to the server.
[0644] Prediction and response measures
[0645] The server analyzes the query received from the device and makes a prediction using the generated decision tree. Specifically, it extracts the optimal prediction from the decision tree model based on the features contained in the query. The server then returns the prediction result to the device, which then displays it to the user.
[0646] Specific examples
[0647] For example, a company database might contain the following product data:
[0648] Product categories: Electronic devices, books, clothing
[0649] Stock: 10, 200, 5
[0650] Price: 1000, 500, 3000
[0651] Rating: 4.5, 3.8, 4.9
[0652] Target: Recommended A, Recommended B, Recommended C
[0653] First, the server converts this data into a data frame, imputes missing values, and removes unnecessary data. Next, it generates a decision tree from the preprocessed data. This decision tree provides a model for predicting the optimal product recommendations based on the features of each product.
[0654] When a user sends a query such as "Please tell me electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the device sends this query to the server. The server uses a decision tree to predict the result "Recommendation A" and returns it to the device. The device then displays this result to the user.
[0655] This series of processes allows us to handle corporate data accurately and efficiently while providing appropriate responses to user inquiries, thereby reducing the risk of hallucination and providing highly reliable information.
[0656] The processing flow will be explained below.
[0657] Step 1:
[0658] The server collects the necessary information (e.g., product category, availability, price, rating, etc.) from the company database. The data extracted from the database is converted into a data frame format.
[0659] Step 2:
[0660] The server performs data preprocessing on the data frame, such as imputing missing values with the mean and removing duplicates and unnecessary data, to prepare a dataset suitable for analysis.
[0661] Step 3:
[0662] The server uses a decision tree generation algorithm to generate a decision tree based on the preprocessed data. First, it separates the data frame into features (e.g., category, inventory, price, rating) and targets (e.g., recommended products), and then trains a decision tree classifier. This decision tree model is used for future predictions.
[0663] Step 4:
[0664] The terminal receives a query from the user (e.g., "Which low-cost electronic devices are in stock?"), converts the received query into an appropriate format, and sends it to the server.
[0665] Step 5:
[0666] The server analyzes the inquiry sent from the device and performs predictions using a decision tree model based on the inquiry content. Based on the features specified in the inquiry (e.g., category is electronic equipment, in stock, price is under 1,000 yen, rating is 4.5 or higher), the optimal recommendation result is extracted from the decision tree.
[0667] Step 6:
[0668] The server obtains the prediction results from the decision tree and returns them to the device. For example, if the prediction result is a specific recommended product such as "Recommendation A," the server sends that information to the device.
[0669] Step 7:
[0670] The terminal displays the prediction results received from the server to the user, who can then decide what to do based on the results.
[0671] This series of processing flows enables the server and terminals to work together to efficiently and accurately process corporate data and realize a system that provides specific responses to user inquiries.
[0672] Example 1
[0673] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0674] Conventional information systems have struggled to efficiently preprocess large amounts of corporate data, generate appropriate predictive models, and respond quickly and accurately to user inquiries. Missing values and unnecessary data can reduce data accuracy, affecting prediction accuracy. Furthermore, automated processes for responding appropriately to diverse user inquiries are lacking.
[0675] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0676] In this invention, the server includes: a data preprocessing means for collecting information from a corporate database and completing missing values and deleting unnecessary data; a decision tree generation means for generating a decision tree from the preprocessed corporate data; a prediction means for executing a prediction using the decision tree based on a user's query; a response means for responding to the user with the prediction result; a terminal for receiving the query, converting it into an appropriate format, and sending it to the server; a server for collecting corporate data and shaping it into a data frame; a server for completing missing values in the data frame and deleting duplicate data and unnecessary data; a means for dividing a dataset into features and targets using a decision tree generation algorithm and training a decision tree classifier; a server for making optimal predictions using the generated decision tree; and a server for generating prediction results based on the generated decision tree model and returning them to the terminal. This makes it possible to improve the accuracy of corporate data while quickly and accurately responding to user queries.
[0677] "Data preprocessing means" refers to a means for formatting data collected from a company database, filling in missing values, and deleting unnecessary data.
[0678] The "decision tree generation means" is a means for generating a decision tree model from preprocessed enterprise data and training a classifier based on the features of the data and the target.
[0679] The "prediction means" is a means for executing a prediction using a decision tree based on a user's inquiry and extracting the optimal result.
[0680] The "response means" is a means for returning the prediction result to the user.
[0681] A "terminal" is a device that receives queries from users, converts them into an appropriate format, and sends them to a server.
[0682] The "server" is a device that performs a series of processes: collecting corporate data, formatting it into a data frame, and generating and predicting decision trees.
[0683] A "decision tree generation algorithm" is a computational method for dividing a dataset into features and targets to create a decision tree model.
[0684] A "data frame" is a two-dimensional data structure with rows and columns, and is a format for efficiently storing and manipulating enterprise data.
[0685] "Missing value imputation" is the process of filling in missing values in a dataset in a specific way.
[0686] "Unnecessary data removal" is the process of removing duplicate data and information unnecessary for analysis from a dataset.
[0687] The present invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on the decision tree. Specifically, it is composed of a data preprocessing unit, a decision tree generation unit, a prediction unit, and a response unit.
[0688] Data Preprocessing
[0689] The server collects the necessary information from the company database and formats it into a data frame. The hardware used includes a high-performance server computer. The software used includes a database management system (e.g., MySQL) and a data preprocessing and analysis tool (e.g., the Python pandas library). Since the collected data may contain missing values or unnecessary data, the server improves data accuracy by interpolating missing values, for example, with the average value, and removing duplicate data and data unnecessary for analysis.
[0690] Decision tree generation
[0691] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, it divides the dataset into features and targets, and trains a decision tree classifier. The software used includes machine learning libraries (e.g., scikit-learn). The generated decision tree is used for subsequent predictions.
[0692] User inquiries
[0693] The terminal receives inquiries from users in text format. For example, a user may send an inquiry via a web form or mobile app such as, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher." The terminal converts the received inquiry into an appropriate format (e.g., JSON) and sends it to the server. Terminals include personal computers and smartphones.
[0694] Prediction and response measures
[0695] The server analyzes the query received from the device and makes a prediction using the generated decision tree. Based on the features contained in the query, the server extracts the optimal prediction from the decision tree model. The server then returns the prediction result to the device, which then displays it to the user.
[0696] Specific examples
[0697] For example, a company database might contain the following product data:
[0698] Product categories: Electronic devices, books, clothing
[0699] Stock: 10, 200, 5
[0700] Price: 1000, 500, 3000
[0701] Rating: 4.5, 3.8, 4.9
[0702] Target: Recommended A, Recommended B, Recommended C
[0703] First, the server converts this data into a data frame, imputes missing values, and removes unnecessary data. Next, it generates a decision tree from the preprocessed data. This decision tree provides a model for predicting the optimal product recommendations based on the features of each product.
[0704] When a user sends a query such as "Please tell me electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the device sends this query to the server. The server uses a decision tree to predict the result "Recommendation A" and returns it to the device. The device then displays this result to the user.
[0705] This series of processes enables accurate and efficient handling of corporate data while providing appropriate responses to user inquiries, thereby reducing the risk of errors and enabling the provision of highly reliable information.
[0706] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0707] Step 1:
[0708] The server collects the necessary information from the company database by issuing a query to the database management system (e.g., MySQL) to retrieve company data (e.g., product category, inventory, price, rating, target).
[0709] Input: Database query
[0710] Output: Retrieved data (e.g., product details)
[0711] Operation: The server connects to the database and executes a query containing the required information.
[0712] Step 2:
[0713] The server formats the collected data and stores it as a data frame. Specifically, it converts the acquired data into a two-dimensional data frame using the pandas library.
[0714] Input: Retrieved data
[0715] Output: Data frame
[0716] Operation: The server reads and formats the data as a pandas DataFrame.
[0717] Step 3:
[0718] The server completes missing values in the data frame and removes unnecessary data. Specifically, it completes missing values with the average value and removes duplicate data and columns unnecessary for analysis.
[0719] Input: DataFrame
[0720] Output: refined data frame
[0721] Operation: The server uses pandas to impute missing values and remove duplicate data and unnecessary columns.
[0722] Step 4:
[0723] The server generates a decision tree model based on the preprocessed data. Specifically, it separates the data into features (e.g., category, price, stock, rating) and targets (e.g., recommended products), and trains a decision tree classifier using a machine learning library (e.g., scikit-learn).
[0724] Input: Preprocessed data frame
[0725] Output: Decision tree model
[0726] Operation: The server splits the data into training data (features and targets) and trains a decision tree classifier.
[0727] Step 5:
[0728] A user can request specific product information from a device. For example, a user can send a query via a web form or mobile app, such as, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher."
[0729] Input: User query (text)
[0730] Output: Reformatted query
[0731] Operation: The device converts the query into an appropriate format (e.g., JSON) and sends it to the server.
[0732] Step 6:
[0733] The server analyzes the query received from the device and makes a prediction using the generated decision tree model. Specifically, it extracts the optimal prediction result from the decision tree model based on the feature values contained in the query.
[0734] Input: Formatted query
[0735] Output: Prediction results (recommended products)
[0736] Operation: The server converts the query content into model input and performs predictions on the decision tree model.
[0737] Step 7:
[0738] The server generates a prediction result and returns it to the terminal, which then displays the received prediction result to the user.
[0739] Input: Prediction result
[0740] Output: Prediction results displayed to the user
[0741] Operation: The server sends the prediction results to the terminal, which displays the results to the user.
[0742] In this way, a series of processing steps allows for efficient handling of enterprise data while providing fast and accurate responses to user inquiries.
[0743] (Application example 1)
[0744] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0745] Conventional corporate data analysis systems have difficulty responding quickly and accurately to complex user inquiries, and lack operability and convenience, especially when used on mobile devices such as smartphones. Furthermore, they lack the reliability and accuracy to recommend optimal products based on users' desired criteria.
[0746] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0747] In this invention, the server includes a data preprocessing means for collecting information from a company database and completing missing values and deleting unnecessary data, a decision tree generation means for generating a decision tree from the preprocessed company data, a prediction means for executing a prediction using the decision tree based on a user's inquiry, a response means for returning the prediction result to the user, an interface means for inputting the user's desired conditions on a smartphone, and a communication means for transmitting the user's desired conditions to the server. This enables the user to easily search for optimal products based on their desired conditions via their smartphone and receive prompt and accurate recommendations.
[0748] A "business database" is a collection of data containing detailed information about or relating to a business, including product information, availability, pricing, reviews, etc.
[0749] "Gathering information" is the process of extracting the necessary data from corporate databases and putting it into an analyzable format.
[0750] "Missing value imputation" refers to predicting or imputing missing values in a dataset using statistical or other rational methods.
[0751] "Data removal" refers to the removal of unnecessary information from a dataset that is meaningless or has a negative impact on analysis or prediction.
[0752] "Data preprocessing means" is a general term for methods and procedures for preparing data for analysis, such as collecting information, filling in missing values, and deleting unnecessary data.
[0753] A "decision tree" is an analytical algorithm created using training data, and is a structure for classification and prediction based on data characteristics.
[0754] "Decision tree generation means" refers to an algorithm or method for generating a decision tree based on collected data.
[0755] A "user inquiry" refers to an act in which a user requests information based on specific conditions or requirements.
[0756] "Prediction" is the process of using a decision tree to predict and determine the optimal outcome for a user's query.
[0757] The "response means" is a function / means for returning and displaying the results obtained by the prediction means to the user.
[0758] A "smartphone" is a mobile device with multiple functions such as telephone, email, and internet connection.
[0759] The "interface means" refers to an operation interface that allows a user to input desired conditions via a smartphone.
[0760] "Communication means" refers to the communication protocol or method for transmitting user conditions and requests from the smartphone to the server.
[0761] The present invention is a system that collects information from a corporate database, formats the data, and provides optimal results based on user inquiries. This system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, an interface means, and a communication means.
[0762] The server collects information from the company database and formats the collected data into a data frame. Because the data may contain missing or unnecessary values, the server imputes the missing values, for example, by using the average value. It also improves the accuracy of the data by removing data that is not necessary for analysis.
[0763] After the preprocessing is complete, the server automatically generates a decision tree using a decision tree generation algorithm. Specifically, the data set is divided into features and targets, and a decision tree classifier is trained to model patterns in the company's data. The generated decision tree is then used for subsequent predictions.
[0764] A user searches for product information through a smartphone application. The user uses an interface to input desired conditions (category, price, stock, rating, etc.). This input information is sent to a server via a communication means. For example, a user might input, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher."
[0765] The server analyzes the query received from the user and makes the optimal prediction using a decision tree model. Specifically, it extracts the optimal result from the decision tree based on the features contained in the query. The server then returns the prediction result to the user, and the terminal displays it to the user.
[0766] The hardware used includes a high-performance server for data processing and prediction, and a smartphone for accepting user inquiries. The software used is Python and Pandas for data processing, Scikit-learn for decision tree generation, and Flask for communication. This makes it possible to handle corporate data accurately and efficiently while quickly providing optimal responses to user inquiries.
[0767] For example, a user can enter a request into a smartphone app, such as "Please tell me about electronic devices in stock that are priced at 1,000 yen or less and have a rating of 4.5 or higher," and send the request to the server. The server uses a decision tree to make a prediction based on the request and responds to the user with a result such as "The recommended product is XX." This series of processes allows the user to quickly obtain optimal product information based on their desired conditions.
[0768] This system will suggest product information using company data, improving the user experience.
[0769] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0770] Step 1:
[0771] The server collects the necessary information from the company database. The collected data includes product categories, inventory amounts, prices, ratings, etc. This data is formatted as a data frame. The input is the company database, and the output is a data frame.
[0772] Step 2:
[0773] The server then performs imputation of missing values from the reformatted data frame. For example, it imputes missing values with the mean value. In this step, the collected data frame is the input, and the imputed data frame is the output.
[0774] Step 3:
[0775] The server removes unnecessary data from the data frame. This process improves the accuracy of the data. Unnecessary data includes duplicate data and items not needed for analysis. In this step, the imputed data frame is the input, and the data frame with unnecessary data removed is the output.
[0776] Step 4:
[0777] The server generates a decision tree based on the preprocessed data frame. Using a decision tree generation algorithm, the dataset is divided into features and targets, and a decision tree classifier is trained. In this step, the preprocessed data frame is the input, and the decision tree model is the output.
[0778] Step 5:
[0779] A user searches for product information using a smartphone application. The user inputs desired conditions (category, price, stock, rating, etc.) using an interface means. This input information is sent to a server via a communication means. The input is the user's desired conditions, and the output is data sent to the server.
[0780] Step 6:
[0781] The server analyzes the received user query and makes the optimal prediction using a decision tree model. Based on the features contained in the query, the optimal result is extracted from the decision tree. In this step, the query data from the user is the input, and the predicted result is the output.
[0782] Step 7:
[0783] The server returns the prediction result to the user. The terminal receives the result and displays it to the user. In this step, the prediction result is the input, and the result displayed to the user is the output.
[0784] For example, if a user inputs the criteria "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the server will use a decision tree model based on the criteria to recommend the most suitable products. The terminal receives the results and displays them to the user.
[0785] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0786] This invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on that decision tree, and combines it with an emotion engine that recognizes the user's emotions. The aim is to provide appropriate responses according to the emotions. Specifically, the system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, and an emotion engine.
[0787] Data Preprocessing
[0788] The server collects the necessary information from the company database and formats it into a data frame. Because the collected data may contain missing or unnecessary values, the server imputes the missing values, for example, by using the average value. It also improves data accuracy by removing duplicate data and data unnecessary for analysis.
[0789] Decision tree generation
[0790] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, the data set is divided into features and targets, and a decision tree classifier is trained to model patterns in the company's data. The generated decision tree model is used as a means of prediction.
[0791] User inquiries
[0792] The terminal receives inquiries from users, including information about categories, stock status, prices, ratings, etc. It converts the inquiries into an appropriate format and sends them to the server.
[0793] Prediction and response measures
[0794] The server analyzes the query received from the device and makes a prediction using a decision tree model. Specifically, it uses the features corresponding to the query to extract the optimal prediction result from the decision tree. It then returns the prediction result to the device.
[0795] Emotion Engine
[0796] The device is equipped with an emotion engine that analyzes the user's facial expressions, tone of voice, and input text to recognize the user's emotional state (e.g., joy, sadness, anger) in real time.
[0797] Emotional response
[0798] The emotion data detected by the emotion engine is sent to the server, which then adjusts the prediction results based on the emotion data and generates an appropriate response for the user. For example, if the user is confused, the server adjusts the response to provide more polite and detailed information.
[0799] Specific examples
[0800] For example, a company database might contain the following product data:
[0801] Product categories: Electronic devices, books, clothing
[0802] Stock: 10, 200, 5
[0803] Price: 1000, 500, 3000
[0804] Rating: 4.5, 3.8, 4.9
[0805] Target: Recommended A, Recommended B, Recommended C
[0806] The server preprocesses the data and generates a decision tree. When a user asks, "What low-cost electronic devices are in stock?", the device analyzes the user's facial expressions and tone of voice, and the emotion engine recognizes the user's emotional state. For example, if the user appears anxious, the server generates a more friendly and reassuring response.
[0807] The decision tree extracts "Recommendation A" as the prediction result, and taking into account the results of the emotion engine, generates a response that gently explains detailed information about "Recommendation A." This response is displayed to the user via the device.
[0808] This mechanism allows for more personalized responses that take into account the user's emotional state, which is expected to improve the user experience.
[0809] The processing flow will be explained below.
[0810] Step 1:
[0811] The server collects the necessary information (e.g., product category, availability, price, rating, etc.) from the company database. The data extracted from the database is converted into a data frame format.
[0812] Step 2:
[0813] The server performs data preprocessing on the data frame, such as imputing missing values with the mean and removing duplicates and unnecessary data, to prepare a dataset suitable for analysis.
[0814] Step 3:
[0815] The server uses a decision tree generation algorithm to generate a decision tree based on the preprocessed data. It separates the data frame into features (e.g., category, inventory, price, rating) and targets (e.g., recommended products) and trains a decision tree classifier. This decision tree model is used for future predictions.
[0816] Step 4:
[0817] The terminal receives a query from the user (e.g., "Which low-cost electronic devices are in stock?"), converts the received query into an appropriate format, and sends it to the server.
[0818] Step 5:
[0819] The device analyzes the user's facial expressions, tone of voice, and input text, and recognizes the user's emotional state in real time through an emotion engine, which then sends the results to the server.
[0820] Step 6:
[0821] The server analyzes the inquiry content and emotion data sent from the device and performs predictions using a decision tree model. Based on the features specified in the inquiry (e.g., category is electronics, in stock, price is under 1,000 yen, rating is 4.5 or higher), the server extracts the optimal recommendation result from the decision tree.
[0822] Step 7:
[0823] The server adjusts the prediction result based on the results of the emotion engine. For example, if the user is confused, it generates a more polite and detailed response. The adjusted prediction result is sent to the terminal as a response means.
[0824] Step 8:
[0825] The terminal displays the prediction results and responses received from the server to the user, who can then decide what action to take based on the displayed results.
[0826] This series of processing flows enables the server and terminals to work together to efficiently and accurately process corporate data, and to realize a system that provides specific responses to user inquiries that take emotions into consideration.
[0827] Example 2
[0828] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0829] Conventional user response systems provide uniform responses without considering emotions, making it difficult to provide personalized responses that meet user needs. They also face the challenge of taking time to process large amounts of data, making it difficult to provide a quick response. This results in a poor user experience and does not improve service satisfaction.
[0830] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0831] In this invention, the server includes a data preprocessing means that collects information from a corporate database and completes missing values and deletes unnecessary data, a decision tree generation means that generates a decision tree from the preprocessed corporate data, a prediction means that executes a prediction using the decision tree based on a user's inquiry, a response means that returns the prediction result to the user, an emotion engine that recognizes the user's emotional state in real time, and an adjustment means that adjusts the prediction result based on emotion data detected by the emotion engine and generates a response to the user. This enables a personalized and prompt response that reflects the emotion data.
[0832] "Data preprocessing means" refers to the process of collecting information from a company database, completing missing values, deleting duplicate data, and organizing unnecessary data.
[0833] "Decision tree generation means" refers to a function that constructs a model from preprocessed corporate data using a decision tree generation algorithm.
[0834] The "prediction means" refers to a function that executes predictions using a decision tree model based on a user inquiry.
[0835] "Response means" refers to a function that performs processing to respond to the user with the prediction results.
[0836] "Emotion engine" refers to a system that recognizes a user's emotional state in real time from their facial expressions, tone of voice, and input text.
[0837] The "adjustment means" refers to a function that adjusts the prediction results based on the emotion data detected by the emotion engine to generate the optimal response for the user.
[0838] A "data frame" refers to a structure that organizes data collected from a corporate database in a matrix format and preprocesses the primary data.
[0839] "Missing value imputation" refers to the process of filling in missing values in a dataset with an appropriate value, such as the mean.
[0840] This invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on that decision tree, and combines it with an emotion engine that recognizes the user's emotions. The aim is to provide appropriate responses according to the emotions. Specifically, the system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, and an emotion engine.
[0841] First, the server collects the necessary information from the company database and formats it into a data frame. Because the collected data may contain missing or unnecessary values, the server imputes the missing values. For example, it imputes missing values with the average value and removes duplicate data and data unnecessary for analysis to improve data accuracy.
[0842] Next, the server applies a decision tree generation algorithm to the preprocessed data to automatically generate a decision tree. Specifically, the dataset is divided into features and targets, and training is performed using a decision tree classifier (e.g., DecisionTreeClassifier in the Python scikit-learn library). The generated decision tree model is later used as a predictive tool to forecast user queries.
[0843] The user makes a query through the device. For example, the query might include, "Which low-cost electronic devices are in stock?" The device converts the query into an appropriate format and sends it to the server. Specifically, the user's query is converted into JSON format and passed to the server.
[0844] The server analyzes the query received from the terminal and makes a prediction using a decision tree model. Specifically, it uses the features corresponding to the query to extract the optimal prediction result from the decision tree. It then generates the prediction result as a response message and returns it to the terminal.
[0845] The emotion engine is installed in the device and analyzes the user's facial expressions, tone of voice, and input text. This engine recognizes the user's emotional state in real time, determining, for example, joy, sadness, anger, etc. from the user's facial expressions. The analysis results are sent to the server as emotion data.
[0846] The server adjusts the prediction results based on the emotional data and generates an appropriate response for the user. For example, if the user is confused, the server adjusts the response to provide more polite and detailed information. After adjusting the response, it is provided to the user via the terminal.
[0847] As a concrete example, suppose a company database contains the following product data:
[0848] Product categories: Electronic devices, books, clothing
[0849] Stock: 10, 200, 5
[0850] Price: 1000, 500, 3000
[0851] Rating: 4.5, 3.8, 4.9
[0852] Target: Recommended A, Recommended B, Recommended C
[0853] Based on this data, the server performs data preprocessing and generates a decision tree model. When a user asks, "Which low-priced electronic devices are in stock?", the device analyzes the user's facial expressions and tone of voice, and the emotion engine recognizes the user's emotional state. For example, if the user appears anxious, the server generates a more friendly and reassuring response. The decision tree extracts "Recommendation A" as a prediction result and, taking into account the results of the emotion engine, generates a response that gently explains detailed information about "Recommendation A." This response is displayed to the user through the device.
[0854] An example of a prompt is "What low-cost electronic devices are in stock?" A system that receives this prompt can provide a quick and appropriate response while taking into account the user's feelings.
[0855] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0856] Step 1: Data collection and preprocessing
[0857] The server collects the necessary information from the company database and converts it into a data frame. It runs a database query as input and generates a data frame as output. Next, it performs missing value imputation, duplicate data removal, and unnecessary data removal on the collected data. For example, it imputes missing values with the mean value using "df.fillna(df.mean())" and removes duplicate data using "df.drop_duplicates()".
[0858] Step 2: Generate a decision tree
[0859] The server applies a decision tree generation algorithm to the preprocessed data frame. Using the preprocessed data frame as input, a decision tree model is generated as output. Specifically, the dataset is divided into features (e.g., price, rating) and targets (e.g., recommendation A, recommendation B, recommendation C), and the decision tree is trained using "DecisionTreeClassifier().fit(X_train, y_train)".
[0860] Step 3: Receiving a user query
[0861] The terminal receives a query from the user. The input is the user's query (e.g., "Which low-priced electronic devices are in stock?"), and the output is the query content that is received and converted into JSON format. Specifically, the terminal takes data from the form input and converts it into JSON format using "request.form.to_dict()".
[0862] Step 4: Sending the query to the server
[0863] The terminal sends the converted query content to the server. The query content is in JSON format as input and is sent to the server as output.
[0864] Step 5: Analyzing and predicting query content
[0865] The server analyzes the query received from the terminal and makes a prediction using the decision tree model. The query content is in JSON format as input, and the prediction result is generated as output. Specifically, the query content is obtained using "request_data = json.loads(request.get_data())" and the decision tree model's prediction method "clf.predict(features)" is executed.
[0866] Step 6: Send prediction results to your device
[0867] The server returns the prediction result to the device. The prediction result is input, and a response message in JSON format is generated as output and sent to the device.
[0868] Step 7: Emotion analysis using the emotion engine
[0869] The device analyzes the user's facial expressions, tone of voice, and input text using an emotion engine. The input is the user's real-time data (e.g., camera footage, audio, etc.), and the output is the user's recognized emotional state (e.g., joy, sadness, anger). Specifically, "OpenCV" is used for facial recognition, and "Google Cloud Speech-to-Text" is used for voice analysis.
[0870] Step 8: Sending emotion data to the server
[0871] The device sends the analyzed emotion data to the server. The emotion data is input and sent to the server as output.
[0872] Step 9: Adjust the forecast results
[0873] The server adjusts the prediction result based on the received emotion data and generates an appropriate response to the user. The input is the prediction result and emotion data, and the output is an adjusted response message. Specifically, the emotion data is reflected in the response content using the "adjust_response(prediction, emotion)" method.
[0874] Step 10: Send and display the final response to the terminal
[0875] The server finally sends the adjusted response message to the terminal, which displays it to the user. The adjusted response message is the input, and it is displayed on the user's screen as the output.
[0876] In this way, a system is realized that provides personalized responses according to emotions.
[0877] (Application example 2)
[0878] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0879] User experience is extremely important in modern online shopping systems. Conventional systems provide uniform responses without considering the user's emotional state, which can lead to user dissatisfaction. Furthermore, they fail to provide appropriate information when users inquire, causing confusion and anxiety. To solve these problems and improve the user experience, there was a need to develop a system that can recognize users' emotions in real time and provide responses appropriate to those emotions.
[0880] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes enterprise data normalization means, data preprocessing means for completing missing values and eliminating unnecessary data, classification tree generation means for generating a classification tree from the preprocessed data, prediction means for making predictions using the classification tree based on inquiries from users, response means for sending responses to the users, emotion recognition means for recognizing the user's emotions, and response adjustment means for adjusting responses based on the emotion data. This enables personalized responses that take the user's emotional state into consideration, improving the user experience.
[0881] The "corporate data normalization means" is a means having a function of formatting data obtained from a corporate database into a standard format.
[0882] "Missing value imputation" is the process of filling in missing values in a dataset with a representative value, such as the mean.
[0883] "Data pruning" is the process of cleaning a dataset by removing data that is not necessary for analysis or processing.
[0884] The "data preprocessing means" is a means having a function for performing preprocessing after data collection.
[0885] The "classification tree generation means" is a means having a function of generating a tree-like model from preprocessed data using a classification tree algorithm.
[0886] "User inquiries" refer to questions or information requests made by users to the system.
[0887] The "prediction means" is a means having a function of deriving an optimal prediction result using a classification tree based on a user's query.
[0888] The "response means" is a means having a function for responding to the user with the prediction result obtained by the prediction means.
[0889] The "emotion recognition means" is a means having a function of recognizing the user's emotional state in real time by analyzing the user's facial expression, tone of voice, input text, etc.
[0890] The "response adjustment means" is a means having a function of appropriately adjusting a response to a user based on the emotion data obtained by the emotion recognition means.
[0891] A "data structure" is a form of data that is organized according to specific rules.
[0892] A "representative value" is a value that represents the trend of the entire data set, and is usually the mean or median.
[0893] This invention consists of a series of steps to collect information from a corporate database, normalize and preprocess the data, generate a classification tree model based on the data, make predictions in response to user inquiries, and adjust responses according to the user's emotions.
[0894] First, the server collects the necessary information from the company database and converts it into a data frame. At this stage, missing values are filled in and unnecessary data is removed. Specifically, these tasks are performed using the Python pandas library. Missing values are filled in using representative values such as the mean and median.
[0895] Next, the server uses a classification tree algorithm to generate a classification tree based on the preprocessed data. Here, a machine learning library such as scikit-learn is used to divide the dataset into features and targets, and a classification tree model is constructed.
[0896] When a user makes an inquiry through a device, the device sends the details to the server. The inquiry details include category, stock status, price, rating, etc. The server receives the inquiry, makes the best prediction using an existing classification tree model, and returns the result to the device.
[0897] The device is also equipped with an emotion recognition mechanism that analyzes the user's facial expressions, voice tone, input text, etc. to recognize the user's emotional state in real time. For this purpose, it is expected that an external API such as Google Cloud Vision API will be used. Emotion data is sent to the server, and the server adjusts the response content based on this information. By taking into account the results of emotion recognition, responses can be created that provide more detailed and helpful information if the user is anxious or confused.
[0898] As a concrete example, consider a case where a user asks, "What low-cost electronic devices are in stock?" A device-dependent emotion recognition tool may recognize that the user appears confused. This information is sent to the server, and a prediction result from the classification tree is returned as "Recommendation A." However, by taking the emotion recognition results into account, the server can provide a friendly and reassuring response by adding more detailed information about "Recommendation A."
[0899] In this way, personalized responses that take into account the user's emotional state are realized, which is expected to improve the user experience.
[0900] An example prompt could be, "Create a shopping assistant that recognizes the user's emotions in real time when asking about product availability or price, and provides explanations that correspond to those emotions. For example, if the user seems anxious, provide a polite explanation that reassures them."
[0901] The above is a specific embodiment for carrying out the invention.
[0902] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0903] Step 1:
[0904] The server collects the necessary information from the company database and converts it into a data structure. Specifically, it extracts transaction and product-related information from the database and formats it into a data frame using the pandas library. The input is the raw data from the company database, and the output is a structured data frame.
[0905] Step 2:
[0906] The server performs preprocessing on the data frame, imputing missing values and deleting unnecessary data. Specifically, it uses pandas and SimpleImputer to impute missing values with the mean value and deletes duplicate data and unnecessary columns. The input is a data frame, and the output is a data frame after preprocessing.
[0907] Step 3:
[0908] The server generates a classification tree using scikit-learn's DecisionTreeClassifier based on the preprocessed data. It separates the dataset into features and targets and trains the model. The input is the preprocessed data frame, and the output is a classification tree model.
[0909] Step 4:
[0910] A user makes a query through a terminal, for example, by inputting a question about product availability or price. The input is the user's textual query, and the output is a query request to the server.
[0911] Step 5:
[0912] The terminal sends the user's query to the server. The server analyzes the received query and makes a prediction using a classification tree model. Specifically, the query content is mapped to features, which are then input into the classification tree to obtain a prediction result. The input is the user's query data, and the output is the prediction result.
[0913] Step 6:
[0914] The device recognizes the user's emotional state by analyzing their voice, facial expressions, and text. Specifically, it uses the Google Cloud Vision API to analyze the user's face image and an emotion recognition model trained with TensorFlow / Keras to analyze the voice and text. The input is the user's multimodal emotional data, and the output is the user's emotional state.
[0915] Step 7:
[0916] The server adjusts the response based on the emotion recognition results. Specifically, if negative emotions such as confusion or anxiety are recognized, the server adjusts the response content to generate a detailed and kind response. The input is the emotion recognition results and prediction results, and the output is the adjusted response message.
[0917] Step 8:
[0918] The terminal provides the adjusted response received from the server to the user, for example by displaying a text message or playing it as a voice message. The input is the response message from the server, and the output is the display of the response through the user interface.
[0919] The above are the specific processing steps for carrying out the invention, which will enable personalized responses that take into account the user's emotional state, and is expected to improve the user experience.
[0920] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0921] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0922] 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 the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[0923] [Fourth embodiment]
[0924] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[0925] 7, a 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.
[0926] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0927] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[0928] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0929] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0930] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0931] The control object 443 includes a display device, LEDs in the eyes, and motors for driving 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 emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[0932] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0933] The specific processing program 56 is an example of a "program" according to the technology of the present 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.
[0934] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0935] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. 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 process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0936] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[0937] The present invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on the decision tree. Specifically, it is composed of a data preprocessing unit, a decision tree generation unit, a prediction unit, and a response unit.
[0938] Data Preprocessing
[0939] The server collects the necessary information from the company database and formats it into a data frame. The collected data may contain missing values or unnecessary data. For this reason, the server imputes the missing values, for example, by using the average value. It also improves data accuracy by deleting duplicate data and data unnecessary for analysis.
[0940] Decision tree generation
[0941] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, the server divides the dataset into features and targets, and trains a decision tree classifier to model patterns in the company's data. The generated decision tree is then used for subsequent predictions.
[0942] User inquiries
[0943] The terminal receives inquiries from users in text format, including information about categories, stock status, prices, ratings, etc. The terminal converts the received inquiries into an appropriate format and sends them to the server.
[0944] Prediction and response measures
[0945] The server analyzes the query received from the device and makes a prediction using the generated decision tree. Specifically, it extracts the optimal prediction from the decision tree model based on the features contained in the query. The server then returns the prediction result to the device, which then displays it to the user.
[0946] Specific examples
[0947] For example, a company database might contain the following product data:
[0948] Product categories: Electronic devices, books, clothing
[0949] Stock: 10, 200, 5
[0950] Price: 1000, 500, 3000
[0951] Rating: 4.5, 3.8, 4.9
[0952] Target: Recommended A, Recommended B, Recommended C
[0953] First, the server converts this data into a data frame, imputes missing values, and removes unnecessary data. Next, it generates a decision tree from the preprocessed data. This decision tree provides a model for predicting the optimal product recommendations based on the features of each product.
[0954] When a user sends a query such as "Please tell me electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the device sends this query to the server. The server uses a decision tree to predict the result "Recommendation A" and returns it to the device. The device then displays this result to the user.
[0955] This series of processes allows us to handle corporate data accurately and efficiently while providing appropriate responses to user inquiries, thereby reducing the risk of hallucination and providing highly reliable information.
[0956] The processing flow will be explained below.
[0957] Step 1:
[0958] The server collects the necessary information (e.g., product category, availability, price, rating, etc.) from the company database. The data extracted from the database is converted into a data frame format.
[0959] Step 2:
[0960] The server performs data preprocessing on the data frame, such as imputing missing values with the mean and removing duplicates and unnecessary data, to prepare a dataset suitable for analysis.
[0961] Step 3:
[0962] The server uses a decision tree generation algorithm to generate a decision tree based on the preprocessed data. First, it separates the data frame into features (e.g., category, inventory, price, rating) and targets (e.g., recommended products), and then trains a decision tree classifier. This decision tree model is used for future predictions.
[0963] Step 4:
[0964] The terminal receives a query from the user (e.g., "Which low-cost electronic devices are in stock?"), converts the received query into an appropriate format, and sends it to the server.
[0965] Step 5:
[0966] The server analyzes the inquiry sent from the device and performs predictions using a decision tree model based on the inquiry content. Based on the features specified in the inquiry (e.g., category is electronic equipment, in stock, price is under 1,000 yen, rating is 4.5 or higher), the optimal recommendation result is extracted from the decision tree.
[0967] Step 6:
[0968] The server obtains the prediction results from the decision tree and returns them to the device. For example, if the prediction result is a specific recommended product such as "Recommendation A," the server sends that information to the device.
[0969] Step 7:
[0970] The terminal displays the prediction results received from the server to the user, who can then decide what to do based on the results.
[0971] This series of processing flows enables the server and terminals to work together to efficiently and accurately process corporate data and realize a system that provides specific responses to user inquiries.
[0972] Example 1
[0973] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[0974] Conventional information systems have struggled to efficiently preprocess large amounts of corporate data, generate appropriate predictive models, and respond quickly and accurately to user inquiries. Missing values and unnecessary data can reduce data accuracy, affecting prediction accuracy. Furthermore, automated processes for responding appropriately to diverse user inquiries are lacking.
[0975] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0976] In this invention, the server includes: a data preprocessing means for collecting information from a corporate database and completing missing values and deleting unnecessary data; a decision tree generation means for generating a decision tree from the preprocessed corporate data; a prediction means for executing a prediction using the decision tree based on a user's query; a response means for responding to the user with the prediction result; a terminal for receiving the query, converting it into an appropriate format, and sending it to the server; a server for collecting corporate data and shaping it into a data frame; a server for completing missing values in the data frame and deleting duplicate data and unnecessary data; a means for dividing a dataset into features and targets using a decision tree generation algorithm and training a decision tree classifier; a server for making optimal predictions using the generated decision tree; and a server for generating prediction results based on the generated decision tree model and returning them to the terminal. This makes it possible to improve the accuracy of corporate data while quickly and accurately responding to user queries.
[0977] "Data preprocessing means" refers to a means for formatting data collected from a company database, filling in missing values, and deleting unnecessary data.
[0978] The "decision tree generation means" is a means for generating a decision tree model from preprocessed enterprise data and training a classifier based on the features of the data and the target.
[0979] The "prediction means" is a means for executing a prediction using a decision tree based on a user's inquiry and extracting the optimal result.
[0980] The "response means" is a means for returning the prediction result to the user.
[0981] A "terminal" is a device that receives queries from users, converts them into an appropriate format, and sends them to a server.
[0982] The "server" is a device that performs a series of processes: collecting corporate data, formatting it into a data frame, and generating and predicting decision trees.
[0983] A "decision tree generation algorithm" is a computational method for dividing a dataset into features and targets to create a decision tree model.
[0984] A "data frame" is a two-dimensional data structure with rows and columns, and is a format for efficiently storing and manipulating enterprise data.
[0985] "Missing value imputation" is the process of filling in missing values in a dataset in a specific way.
[0986] "Unnecessary data removal" is the process of removing duplicate data and information unnecessary for analysis from a dataset.
[0987] The present invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on the decision tree. Specifically, it is composed of a data preprocessing unit, a decision tree generation unit, a prediction unit, and a response unit.
[0988] Data Preprocessing
[0989] The server collects the necessary information from the company database and formats it into a data frame. The hardware used includes a high-performance server computer. The software used includes a database management system (e.g., MySQL) and a data preprocessing and analysis tool (e.g., the Python pandas library). Since the collected data may contain missing values or unnecessary data, the server improves data accuracy by interpolating missing values, for example, with the average value, and removing duplicate data and data unnecessary for analysis.
[0990] Decision tree generation
[0991] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, it divides the dataset into features and targets, and trains a decision tree classifier. The software used includes machine learning libraries (e.g., scikit-learn). The generated decision tree is used for subsequent predictions.
[0992] User inquiries
[0993] The terminal receives inquiries from users in text format. For example, a user may send an inquiry via a web form or mobile app such as, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher." The terminal converts the received inquiry into an appropriate format (e.g., JSON) and sends it to the server. Terminals include personal computers and smartphones.
[0994] Prediction and response measures
[0995] The server analyzes the query received from the device and makes a prediction using the generated decision tree. Based on the features contained in the query, the server extracts the optimal prediction from the decision tree model. The server then returns the prediction result to the device, which then displays it to the user.
[0996] Specific examples
[0997] For example, a company database might contain the following product data:
[0998] Product categories: Electronic devices, books, clothing
[0999] Stock: 10, 200, 5
[1000] Price: 1000, 500, 3000
[1001] Rating: 4.5, 3.8, 4.9
[1002] Target: Recommended A, Recommended B, Recommended C
[1003] First, the server converts this data into a data frame, imputes missing values, and removes unnecessary data. Next, it generates a decision tree from the preprocessed data. This decision tree provides a model for predicting the optimal product recommendations based on the features of each product.
[1004] When a user sends a query such as "Please tell me electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the device sends this query to the server. The server uses a decision tree to predict the result "Recommendation A" and returns it to the device. The device then displays this result to the user.
[1005] This series of processes enables accurate and efficient handling of corporate data while providing appropriate responses to user inquiries, thereby reducing the risk of errors and enabling the provision of highly reliable information.
[1006] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1007] Step 1:
[1008] The server collects the necessary information from the company database by issuing a query to the database management system (e.g., MySQL) to retrieve company data (e.g., product category, inventory, price, rating, target).
[1009] Input: Database query
[1010] Output: Retrieved data (e.g., product details)
[1011] Operation: The server connects to the database and executes a query containing the required information.
[1012] Step 2:
[1013] The server formats the collected data and stores it as a data frame. Specifically, it converts the acquired data into a two-dimensional data frame using the pandas library.
[1014] Input: Retrieved data
[1015] Output: Data frame
[1016] Operation: The server reads and formats the data as a pandas DataFrame.
[1017] Step 3:
[1018] The server completes missing values in the data frame and removes unnecessary data. Specifically, it completes missing values with the average value and removes duplicate data and columns unnecessary for analysis.
[1019] Input: DataFrame
[1020] Output: refined data frame
[1021] Operation: The server uses pandas to impute missing values and remove duplicate data and unnecessary columns.
[1022] Step 4:
[1023] The server generates a decision tree model based on the preprocessed data. Specifically, it separates the data into features (e.g., category, price, stock, rating) and targets (e.g., recommended products), and trains a decision tree classifier using a machine learning library (e.g., scikit-learn).
[1024] Input: Preprocessed data frame
[1025] Output: Decision tree model
[1026] Operation: The server splits the data into training data (features and targets) and trains a decision tree classifier.
[1027] Step 5:
[1028] A user can request specific product information from a device. For example, a user can send a query via a web form or mobile app, such as, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher."
[1029] Input: User query (text)
[1030] Output: Reformatted query
[1031] Operation: The device converts the query into an appropriate format (e.g., JSON) and sends it to the server.
[1032] Step 6:
[1033] The server analyzes the query received from the device and makes a prediction using the generated decision tree model. Specifically, it extracts the optimal prediction result from the decision tree model based on the feature values contained in the query.
[1034] Input: Formatted query
[1035] Output: Prediction results (recommended products)
[1036] Operation: The server converts the query content into model input and performs predictions on the decision tree model.
[1037] Step 7:
[1038] The server generates a prediction result and returns it to the terminal, which then displays the received prediction result to the user.
[1039] Input: Prediction result
[1040] Output: Prediction results displayed to the user
[1041] Operation: The server sends the prediction results to the terminal, which displays the results to the user.
[1042] In this way, a series of processing steps allows for efficient handling of enterprise data while providing fast and accurate responses to user inquiries.
[1043] (Application example 1)
[1044] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1045] Conventional corporate data analysis systems have difficulty responding quickly and accurately to complex user inquiries, and lack operability and convenience, especially when used on mobile devices such as smartphones. Furthermore, they lack the reliability and accuracy to recommend optimal products based on users' desired criteria.
[1046] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1047] In this invention, the server includes a data preprocessing means for collecting information from a company database and completing missing values and deleting unnecessary data, a decision tree generation means for generating a decision tree from the preprocessed company data, a prediction means for executing a prediction using the decision tree based on a user's inquiry, a response means for returning the prediction result to the user, an interface means for inputting the user's desired conditions on a smartphone, and a communication means for transmitting the user's desired conditions to the server. This enables the user to easily search for optimal products based on their desired conditions via their smartphone and receive prompt and accurate recommendations.
[1048] A "business database" is a collection of data containing detailed information about or relating to a business, including product information, availability, pricing, reviews, etc.
[1049] "Gathering information" is the process of extracting the necessary data from corporate databases and putting it into an analyzable format.
[1050] "Missing value imputation" refers to predicting or imputing missing values in a dataset using statistical or other rational methods.
[1051] "Data removal" refers to the removal of unnecessary information from a dataset that is meaningless or has a negative impact on analysis or prediction.
[1052] "Data preprocessing means" is a general term for methods and procedures for preparing data for analysis, such as collecting information, filling in missing values, and deleting unnecessary data.
[1053] A "decision tree" is an analytical algorithm created using training data, and is a structure for classification and prediction based on data characteristics.
[1054] "Decision tree generation means" refers to an algorithm or method for generating a decision tree based on collected data.
[1055] A "user inquiry" refers to an act in which a user requests information based on specific conditions or requirements.
[1056] "Prediction" is the process of using a decision tree to predict and determine the optimal outcome for a user's query.
[1057] The "response means" is a function / means for returning and displaying the results obtained by the prediction means to the user.
[1058] A "smartphone" is a mobile device with multiple functions such as telephone, email, and internet connection.
[1059] The "interface means" refers to an operation interface that allows a user to input desired conditions via a smartphone.
[1060] "Communication means" refers to the communication protocol or method for transmitting user conditions and requests from the smartphone to the server.
[1061] The present invention is a system that collects information from a corporate database, formats the data, and provides optimal results based on user inquiries. This system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, an interface means, and a communication means.
[1062] The server collects information from the company database and formats the collected data into a data frame. Because the data may contain missing or unnecessary values, the server imputes the missing values, for example, by using the average value. It also improves the accuracy of the data by removing data that is not necessary for analysis.
[1063] After the preprocessing is complete, the server automatically generates a decision tree using a decision tree generation algorithm. Specifically, the data set is divided into features and targets, and a decision tree classifier is trained to model patterns in the company's data. The generated decision tree is then used for subsequent predictions.
[1064] A user searches for product information through a smartphone application. The user uses an interface to input desired conditions (category, price, stock, rating, etc.). This input information is sent to a server via a communication means. For example, a user might input, "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher."
[1065] The server analyzes the query received from the user and makes the optimal prediction using a decision tree model. Specifically, it extracts the optimal result from the decision tree based on the features contained in the query. The server then returns the prediction result to the user, and the terminal displays it to the user.
[1066] The hardware used includes a high-performance server for data processing and prediction, and a smartphone for accepting user inquiries. The software used is Python and Pandas for data processing, Scikit-learn for decision tree generation, and Flask for communication. This makes it possible to handle corporate data accurately and efficiently while quickly providing optimal responses to user inquiries.
[1067] For example, a user can enter a request into a smartphone app, such as "Please tell me about electronic devices in stock that are priced at 1,000 yen or less and have a rating of 4.5 or higher," and send the request to the server. The server uses a decision tree to make a prediction based on the request and responds to the user with a result such as "The recommended product is XX." This series of processes allows the user to quickly obtain optimal product information based on their desired conditions.
[1068] This system will suggest product information using company data, improving the user experience.
[1069] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1070] Step 1:
[1071] The server collects the necessary information from the company database. The collected data includes product categories, inventory amounts, prices, ratings, etc. This data is formatted as a data frame. The input is the company database, and the output is a data frame.
[1072] Step 2:
[1073] The server then performs imputation of missing values from the reformatted data frame. For example, it imputes missing values with the mean value. In this step, the collected data frame is the input, and the imputed data frame is the output.
[1074] Step 3:
[1075] The server removes unnecessary data from the data frame. This process improves the accuracy of the data. Unnecessary data includes duplicate data and items not needed for analysis. In this step, the imputed data frame is the input, and the data frame with unnecessary data removed is the output.
[1076] Step 4:
[1077] The server generates a decision tree based on the preprocessed data frame. Using a decision tree generation algorithm, the dataset is divided into features and targets, and a decision tree classifier is trained. In this step, the preprocessed data frame is the input, and the decision tree model is the output.
[1078] Step 5:
[1079] A user searches for product information using a smartphone application. The user inputs desired conditions (category, price, stock, rating, etc.) using an interface means. This input information is sent to a server via a communication means. The input is the user's desired conditions, and the output is data sent to the server.
[1080] Step 6:
[1081] The server analyzes the received user query and makes the optimal prediction using a decision tree model. Based on the features contained in the query, the optimal result is extracted from the decision tree. In this step, the query data from the user is the input, and the predicted result is the output.
[1082] Step 7:
[1083] The server returns the prediction result to the user. The terminal receives the result and displays it to the user. In this step, the prediction result is the input, and the result displayed to the user is the output.
[1084] For example, if a user inputs the criteria "Please tell me about electronic devices that are in stock, priced at 1,000 yen or less, and have a rating of 4.5 or higher," the server will use a decision tree model based on the criteria to recommend the most suitable products. The terminal receives the results and displays them to the user.
[1085] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1086] This invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on that decision tree, and combines it with an emotion engine that recognizes the user's emotions. The aim is to provide appropriate responses according to the emotions. Specifically, the system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, and an emotion engine.
[1087] Data Preprocessing
[1088] The server collects the necessary information from the company database and formats it into a data frame. Because the collected data may contain missing or unnecessary values, the server imputes the missing values, for example, by using the average value. It also improves data accuracy by removing duplicate data and data unnecessary for analysis.
[1089] Decision tree generation
[1090] The server automatically generates a decision tree using a decision tree generation algorithm based on the preprocessed data. Specifically, the data set is divided into features and targets, and a decision tree classifier is trained to model patterns in the company's data. The generated decision tree model is used as a means of prediction.
[1091] User inquiries
[1092] The terminal receives inquiries from users, including information about categories, stock status, prices, ratings, etc. It converts the inquiries into an appropriate format and sends them to the server.
[1093] Prediction and response measures
[1094] The server analyzes the query received from the device and makes a prediction using a decision tree model. Specifically, it uses the features corresponding to the query to extract the optimal prediction result from the decision tree. It then returns the prediction result to the device.
[1095] Emotion Engine
[1096] The device is equipped with an emotion engine that analyzes the user's facial expressions, tone of voice, and input text to recognize the user's emotional state (e.g., joy, sadness, anger) in real time.
[1097] Emotional response
[1098] The emotion data detected by the emotion engine is sent to the server, which then adjusts the prediction results based on the emotion data and generates an appropriate response for the user. For example, if the user is confused, the server adjusts the response to provide more polite and detailed information.
[1099] Specific examples
[1100] For example, a company database might contain the following product data:
[1101] Product categories: Electronic devices, books, clothing
[1102] Stock: 10, 200, 5
[1103] Price: 1000, 500, 3000
[1104] Rating: 4.5, 3.8, 4.9
[1105] Target: Recommended A, Recommended B, Recommended C
[1106] The server preprocesses the data and generates a decision tree. When a user asks, "What low-cost electronic devices are in stock?", the device analyzes the user's facial expressions and tone of voice, and the emotion engine recognizes the user's emotional state. For example, if the user appears anxious, the server generates a more friendly and reassuring response.
[1107] The decision tree extracts "Recommendation A" as the prediction result, and taking into account the results of the emotion engine, generates a response that gently explains detailed information about "Recommendation A." This response is displayed to the user via the device.
[1108] This mechanism allows for more personalized responses that take into account the user's emotional state, which is expected to improve the user experience.
[1109] The processing flow will be explained below.
[1110] Step 1:
[1111] The server collects the necessary information (e.g., product category, availability, price, rating, etc.) from the company database. The data extracted from the database is converted into a data frame format.
[1112] Step 2:
[1113] The server performs data preprocessing on the data frame, such as imputing missing values with the mean and removing duplicates and unnecessary data, to prepare a dataset suitable for analysis.
[1114] Step 3:
[1115] The server uses a decision tree generation algorithm to generate a decision tree based on the preprocessed data. It separates the data frame into features (e.g., category, inventory, price, rating) and targets (e.g., recommended products) and trains a decision tree classifier. This decision tree model is used for future predictions.
[1116] Step 4:
[1117] The terminal receives a query from the user (e.g., "Which low-cost electronic devices are in stock?"), converts the received query into an appropriate format, and sends it to the server.
[1118] Step 5:
[1119] The device analyzes the user's facial expressions, tone of voice, and input text, and recognizes the user's emotional state in real time through an emotion engine, which then sends the results to the server.
[1120] Step 6:
[1121] The server analyzes the inquiry content and emotion data sent from the device and performs predictions using a decision tree model. Based on the features specified in the inquiry (e.g., category is electronics, in stock, price is under 1,000 yen, rating is 4.5 or higher), the server extracts the optimal recommendation result from the decision tree.
[1122] Step 7:
[1123] The server adjusts the prediction result based on the results of the emotion engine. For example, if the user is confused, it generates a more polite and detailed response. The adjusted prediction result is sent to the terminal as a response means.
[1124] Step 8:
[1125] The terminal displays the prediction results and responses received from the server to the user, who can then decide what action to take based on the displayed results.
[1126] This series of processing flows enables the server and terminals to work together to efficiently and accurately process corporate data, and to realize a system that provides specific responses to user inquiries that take emotions into consideration.
[1127] Example 2
[1128] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1129] Conventional user response systems provide uniform responses without considering emotions, making it difficult to provide personalized responses that meet user needs. They also face the challenge of taking time to process large amounts of data, making it difficult to provide a quick response. This results in a poor user experience and does not improve service satisfaction.
[1130] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1131] In this invention, the server includes a data preprocessing means that collects information from a corporate database and completes missing values and deletes unnecessary data, a decision tree generation means that generates a decision tree from the preprocessed corporate data, a prediction means that executes a prediction using the decision tree based on a user's inquiry, a response means that returns the prediction result to the user, an emotion engine that recognizes the user's emotional state in real time, and an adjustment means that adjusts the prediction result based on emotion data detected by the emotion engine and generates a response to the user. This enables a personalized and prompt response that reflects the emotion data.
[1132] "Data preprocessing means" refers to the process of collecting information from a company database, completing missing values, deleting duplicate data, and organizing unnecessary data.
[1133] "Decision tree generation means" refers to a function that constructs a model from preprocessed corporate data using a decision tree generation algorithm.
[1134] The "prediction means" refers to a function that executes predictions using a decision tree model based on a user inquiry.
[1135] "Response means" refers to a function that performs processing to respond to the user with the prediction results.
[1136] "Emotion engine" refers to a system that recognizes a user's emotional state in real time from their facial expressions, tone of voice, and input text.
[1137] The "adjustment means" refers to a function that adjusts the prediction results based on the emotion data detected by the emotion engine to generate the optimal response for the user.
[1138] A "data frame" refers to a structure that organizes data collected from a corporate database in a matrix format and preprocesses the primary data.
[1139] "Missing value imputation" refers to the process of filling in missing values in a dataset with an appropriate value, such as the mean.
[1140] This invention is a system that converts corporate data into a decision tree format and responds to user inquiries based on that decision tree, and combines it with an emotion engine that recognizes the user's emotions. The aim is to provide appropriate responses according to the emotions. Specifically, the system is composed of a data preprocessing means, a decision tree generation means, a prediction means, a response means, and an emotion engine.
[1141] First, the server collects the necessary information from the company database and formats it into a data frame. Because the collected data may contain missing or unnecessary values, the server imputes the missing values. For example, it imputes missing values with the average value and removes duplicate data and data unnecessary for analysis to improve data accuracy.
[1142] Next, the server applies a decision tree generation algorithm to the preprocessed data to automatically generate a decision tree. Specifically, the dataset is divided into features and targets, and training is performed using a decision tree classifier (e.g., DecisionTreeClassifier in the Python scikit-learn library). The generated decision tree model is later used as a predictive tool to forecast user queries.
[1143] The user makes a query through the device. For example, the query might include, "Which low-cost electronic devices are in stock?" The device converts the query into an appropriate format and sends it to the server. Specifically, the user's query is converted into JSON format and passed to the server.
[1144] The server analyzes the query received from the terminal and makes a prediction using a decision tree model. Specifically, it uses the features corresponding to the query to extract the optimal prediction result from the decision tree. It then generates the prediction result as a response message and returns it to the terminal.
[1145] The emotion engine is installed in the device and analyzes the user's facial expressions, tone of voice, and input text. This engine recognizes the user's emotional state in real time, determining, for example, joy, sadness, anger, etc. from the user's facial expressions. The analysis results are sent to the server as emotion data.
[1146] The server adjusts the prediction results based on the emotional data and generates an appropriate response for the user. For example, if the user is confused, the server adjusts the response to provide more polite and detailed information. After adjusting the response, it is provided to the user via the terminal.
[1147] As a concrete example, suppose a company database contains the following product data:
[1148] Product categories: Electronic devices, books, clothing
[1149] Stock: 10, 200, 5
[1150] Price: 1000, 500, 3000
[1151] Rating: 4.5, 3.8, 4.9
[1152] Target: Recommended A, Recommended B, Recommended C
[1153] Based on this data, the server performs data preprocessing and generates a decision tree model. When a user asks, "Which low-priced electronic devices are in stock?", the device analyzes the user's facial expressions and tone of voice, and the emotion engine recognizes the user's emotional state. For example, if the user appears anxious, the server generates a more friendly and reassuring response. The decision tree extracts "Recommendation A" as a prediction result and, taking into account the results of the emotion engine, generates a response that gently explains detailed information about "Recommendation A." This response is displayed to the user through the device.
[1154] An example of a prompt is "What low-cost electronic devices are in stock?" A system that receives this prompt can provide a quick and appropriate response while taking into account the user's feelings.
[1155] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1156] Step 1: Data collection and preprocessing
[1157] The server collects the necessary information from the company database and converts it into a data frame. It runs a database query as input and generates a data frame as output. Next, it performs missing value imputation, duplicate data removal, and unnecessary data removal on the collected data. For example, it imputes missing values with the mean value using "df.fillna(df.mean())" and removes duplicate data using "df.drop_duplicates()".
[1158] Step 2: Generate a decision tree
[1159] The server applies a decision tree generation algorithm to the preprocessed data frame. Using the preprocessed data frame as input, a decision tree model is generated as output. Specifically, the dataset is divided into features (e.g., price, rating) and targets (e.g., recommendation A, recommendation B, recommendation C), and the decision tree is trained using "DecisionTreeClassifier().fit(X_train, y_train)".
[1160] Step 3: Receiving a user query
[1161] The terminal receives a query from the user. The input is the user's query (e.g., "Which low-priced electronic devices are in stock?"), and the output is the query content that is received and converted into JSON format. Specifically, the terminal takes data from the form input and converts it into JSON format using "request.form.to_dict()".
[1162] Step 4: Sending the query to the server
[1163] The terminal sends the converted query content to the server. The query content is in JSON format as input and is sent to the server as output.
[1164] Step 5: Analyzing and predicting query content
[1165] The server analyzes the query received from the terminal and makes a prediction using the decision tree model. The query content is in JSON format as input, and the prediction result is generated as output. Specifically, the query content is obtained using "request_data = json.loads(request.get_data())" and the decision tree model's prediction method "clf.predict(features)" is executed.
[1166] Step 6: Send prediction results to your device
[1167] The server returns the prediction result to the device. The prediction result is input, and a response message in JSON format is generated as output and sent to the device.
[1168] Step 7: Emotion analysis using the emotion engine
[1169] The device analyzes the user's facial expressions, tone of voice, and input text using an emotion engine. The input is the user's real-time data (e.g., camera footage, audio, etc.), and the output is the user's recognized emotional state (e.g., joy, sadness, anger). Specifically, "OpenCV" is used for facial recognition, and "Google Cloud Speech-to-Text" is used for voice analysis.
[1170] Step 8: Sending emotion data to the server
[1171] The device sends the analyzed emotion data to the server. The emotion data is input and sent to the server as output.
[1172] Step 9: Adjust the forecast results
[1173] The server adjusts the prediction result based on the received emotion data and generates an appropriate response to the user. The input is the prediction result and emotion data, and the output is an adjusted response message. Specifically, the emotion data is reflected in the response content using the "adjust_response(prediction, emotion)" method.
[1174] Step 10: Send and display the final response to the terminal
[1175] The server finally sends the adjusted response message to the terminal, which displays it to the user. The adjusted response message is the input, and it is displayed on the user's screen as the output.
[1176] In this way, a system is realized that provides personalized responses according to emotions.
[1177] (Application example 2)
[1178] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1179] User experience is extremely important in modern online shopping systems. Conventional systems provide uniform responses without considering the user's emotional state, which can lead to user dissatisfaction. Furthermore, they fail to provide appropriate information when users inquire, causing confusion and anxiety. To solve these problems and improve the user experience, there was a need to develop a system that can recognize users' emotions in real time and provide responses appropriate to those emotions.
[1180] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes enterprise data normalization means, data preprocessing means for completing missing values and eliminating unnecessary data, classification tree generation means for generating a classification tree from the preprocessed data, prediction means for making predictions using the classification tree based on inquiries from users, response means for sending responses to the users, emotion recognition means for recognizing the user's emotions, and response adjustment means for adjusting responses based on the emotion data. This enables personalized responses that take the user's emotional state into consideration, improving the user experience.
[1181] The "corporate data normalization means" is a means having a function of formatting data obtained from a corporate database into a standard format.
[1182] "Missing value imputation" is the process of filling in missing values in a dataset with a representative value, such as the mean.
[1183] "Data pruning" is the process of cleaning a dataset by removing data that is not necessary for analysis or processing.
[1184] The "data preprocessing means" is a means having a function for performing preprocessing after data collection.
[1185] The "classification tree generation means" is a means having a function of generating a tree-like model from preprocessed data using a classification tree algorithm.
[1186] "User inquiries" refer to questions or information requests made by users to the system.
[1187] The "prediction means" is a means having a function of deriving an optimal prediction result using a classification tree based on a user's query.
[1188] The "response means" is a means having a function for responding to the user with the prediction result obtained by the prediction means.
[1189] The "emotion recognition means" is a means having a function of recognizing the user's emotional state in real time by analyzing the user's facial expression, tone of voice, input text, etc.
[1190] The "response adjustment means" is a means having a function of appropriately adjusting a response to a user based on the emotion data obtained by the emotion recognition means.
[1191] A "data structure" is a form of data that is organized according to specific rules.
[1192] A "representative value" is a value that represents the trend of the entire data set, and is usually the mean or median.
[1193] This invention consists of a series of steps to collect information from a corporate database, normalize and preprocess the data, generate a classification tree model based on the data, make predictions in response to user inquiries, and adjust responses according to the user's emotions.
[1194] First, the server collects the necessary information from the company database and converts it into a data frame. At this stage, missing values are filled in and unnecessary data is removed. Specifically, these tasks are performed using the Python pandas library. Missing values are filled in using representative values such as the mean and median.
[1195] Next, the server uses a classification tree algorithm to generate a classification tree based on the preprocessed data. Here, a machine learning library such as scikit-learn is used to divide the dataset into features and targets, and a classification tree model is constructed.
[1196] When a user makes an inquiry through a device, the device sends the details to the server. The inquiry details include category, stock status, price, rating, etc. The server receives the inquiry, makes the best prediction using an existing classification tree model, and returns the result to the device.
[1197] The device is also equipped with an emotion recognition mechanism that analyzes the user's facial expressions, voice tone, input text, etc. to recognize the user's emotional state in real time. For this purpose, it is expected that an external API such as Google Cloud Vision API will be used. Emotion data is sent to the server, and the server adjusts the response content based on this information. By taking into account the results of emotion recognition, responses can be created that provide more detailed and helpful information if the user is anxious or confused.
[1198] As a concrete example, consider a case where a user asks, "What low-cost electronic devices are in stock?" A device-dependent emotion recognition tool may recognize that the user appears confused. This information is sent to the server, and a prediction result from the classification tree is returned as "Recommendation A." However, by taking the emotion recognition results into account, the server can provide a friendly and reassuring response by adding more detailed information about "Recommendation A."
[1199] In this way, personalized responses that take into account the user's emotional state are realized, which is expected to improve the user experience.
[1200] An example prompt could be, "Create a shopping assistant that recognizes the user's emotions in real time when asking about product availability or price, and provides explanations that correspond to those emotions. For example, if the user seems anxious, provide a polite explanation that reassures them."
[1201] The above is a specific embodiment for carrying out the invention.
[1202] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1203] Step 1:
[1204] The server collects the necessary information from the company database and converts it into a data structure. Specifically, it extracts transaction and product-related information from the database and formats it into a data frame using the pandas library. The input is the raw data from the company database, and the output is a structured data frame.
[1205] Step 2:
[1206] The server performs preprocessing on the data frame, imputing missing values and deleting unnecessary data. Specifically, it uses pandas and SimpleImputer to impute missing values with the mean value and deletes duplicate data and unnecessary columns. The input is a data frame, and the output is a data frame after preprocessing.
[1207] Step 3:
[1208] The server generates a classification tree using scikit-learn's DecisionTreeClassifier based on the preprocessed data. It separates the dataset into features and targets and trains the model. The input is the preprocessed data frame, and the output is a classification tree model.
[1209] Step 4:
[1210] A user makes a query through a terminal, for example, by inputting a question about product availability or price. The input is the user's textual query, and the output is a query request to the server.
[1211] Step 5:
[1212] The terminal sends the user's query to the server. The server analyzes the received query and makes a prediction using a classification tree model. Specifically, the query content is mapped to features, which are then input into the classification tree to obtain a prediction result. The input is the user's query data, and the output is the prediction result.
[1213] Step 6:
[1214] The device recognizes the user's emotional state by analyzing their voice, facial expressions, and text. Specifically, it uses the Google Cloud Vision API to analyze the user's face image and an emotion recognition model trained with TensorFlow / Keras to analyze the voice and text. The input is the user's multimodal emotional data, and the output is the user's emotional state.
[1215] Step 7:
[1216] The server adjusts the response based on the emotion recognition results. Specifically, if negative emotions such as confusion or anxiety are recognized, the server adjusts the response content to generate a detailed and kind response. The input is the emotion recognition results and prediction results, and the output is the adjusted response message.
[1217] Step 8:
[1218] The terminal provides the adjusted response received from the server to the user, for example by displaying a text message or playing it as a voice message. The input is the response message from the server, and the output is the display of the response through the user interface.
[1219] The above are the specific processing steps for carrying out the invention, which will enable personalized responses that take into account the user's emotional state, and is expected to improve the user experience.
[1220] 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 control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[1221] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1222] 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 the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1223] The emotion identification model 59 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 an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1224] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1225] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1226] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1227] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1228] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs 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 a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1229] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[1230] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1231] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1232] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1233] 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.
[1234] It is not necessary to store all 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 all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1235] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1236] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with 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). Also, the hardware resource that executes the specific processing may be a single processor.
[1237] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1238] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1239] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1240] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1241] The following is further disclosed regarding the above embodiment.
[1242] (Claim 1)
[1243] a data preprocessing means for collecting information from a company database, completing missing values, and deleting unnecessary data;
[1244] a decision tree generation means for generating a decision tree from preprocessed enterprise data;
[1245] a prediction means for executing a prediction using a decision tree based on a query from a user;
[1246] response means for responding to the user with the prediction result;
[1247] A system including:
[1248] (Claim 2)
[1249] The system according to claim 1, wherein the system performs processing to convert data collected from a corporate database into a data frame.
[1250] (Claim 3)
[1251] The system according to claim 1, wherein the system performs a process of complementing missing values in a data frame with an average value.
[1252] "Example 1"
[1253] (Claim 1)
[1254] a data preprocessing means for collecting information from a company database, completing missing values, and deleting unnecessary data;
[1255] a decision tree generation means for generating a decision tree from preprocessed enterprise data;
[1256] a prediction means for executing a prediction using a decision tree based on a query from a user;
[1257] response means for responding to the user with the prediction result;
[1258] a terminal that receives the query, converts it into an appropriate format, and transmits it to a server;
[1259] A server that collects corporate data and formats it into a data frame;
[1260] A server that completes missing values in the data frame and removes duplicate and unnecessary data.
[1261] A means for splitting a dataset into features and targets using a decision tree generation algorithm and training a decision tree classifier;
[1262] a server that performs optimal predictions using the generated decision tree;
[1263] a server that generates a prediction result based on the generated decision tree model and returns it to the terminal;
[1264] A system including:
[1265] (Claim 2)
[1266] The system according to claim 1, wherein the system performs processing to convert data collected from a corporate database into a data frame.
[1267] (Claim 3)
[1268] The system according to claim 1, wherein the system performs a process of complementing missing values in a data frame with an average value.
[1269] "Application Example 1"
[1270] (Claim 1)
[1271] a data preprocessing means for collecting information from a company database, completing missing values, and deleting unnecessary data;
[1272] a decision tree generation means for generating a decision tree from preprocessed enterprise data;
[1273] a prediction means for executing a prediction using a decision tree based on a query from a user;
[1274] response means for responding to the user with the prediction result;
[1275] an interface means for inputting desired conditions of a user on a smartphone;
[1276] a communication means for transmitting the user's desired conditions to the server;
[1277] A system including:
[1278] (Claim 2)
[1279] The system according to claim 1, wherein the system performs processing to convert data collected from a corporate database into a data frame.
[1280] (Claim 3)
[1281] The system according to claim 1, wherein the system performs a process of complementing missing values in a data frame with an average value.
[1282] "Example 2: Combining Emotion Engines"
[1283] (Claim 1)
[1284] a data preprocessing means for collecting information from a company database, completing missing values, and deleting unnecessary data;
[1285] a decision tree generation means for generating a decision tree from preprocessed enterprise data;
[1286] a prediction means for executing a prediction using a decision tree based on a query from a user;
[1287] response means for responding to the user with the prediction result;
[1288] an emotion engine that recognizes the user's emotional state in real time;
[1289] an adjusting means for adjusting the prediction result based on the emotion data detected by the emotion engine and generating a response to the user;
[1290] A system including:
[1291] (Claim 2)
[1292] The system according to claim 1, wherein the system performs processing to convert data collected from a corporate database into a data frame.
[1293] (Claim 3)
[1294] The system according to claim 1, wherein the system performs a process of complementing missing values in a data frame with an average value.
[1295] "Application example 2 when combining emotion engines"
[1296] (Claim 1)
[1297] Enterprise data normalization measures;
[1298] a data preprocessing means for completing missing values and removing unnecessary data;
[1299] a classification tree generation means for generating a classification tree from the preprocessed data;
[1300] a prediction means for executing a prediction using a classification tree based on a query from a user;
[1301] response means for sending a response to the user;
[1302] emotion recognition means for recognizing an emotion of a user;
[1303] a response adjusting means for adjusting a response based on the emotion data;
[1304] A system including:
[1305] (Claim 2)
[1306] 10. The system of claim 1, further comprising a process for converting the collected data into a data structure.
[1307] (Claim 3)
[1308] The system according to claim 1, further comprising a process for filling missing values in the data structure with representative values. [Explanation of symbols]
[1309] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. a data preprocessing means for collecting information from a company database, completing missing values, and deleting unnecessary data; a decision tree generation means for generating a decision tree from preprocessed enterprise data; a prediction means for executing a prediction using a decision tree based on a query from a user; response means for responding to the user with the prediction result; A system including:
2. The system of claim 1, wherein the system performs processing to convert data collected from a corporate database into a data frame.
3. The system according to claim 1, further comprising a process of interpolating missing values in the data frame with an average value.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A