Natural language generation device, natural language generation method and program
The natural language generation device supports decision tree analysis in CRM by generating intuitive explanations and recommended actions through user-selected node analysis and AI-driven natural language outputs.
Patent Information
- Application Number
- JP2024089370
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-31
- Publication Date
- 2025-12-11
AI Technical Summary
Existing decision tree analysis in CRM is difficult for humans to understand, and determining a course of action based on these results is challenging.
A natural language generation device that includes a control unit, memory unit, and display unit, which generates a decision tree, stores node values, allows user selection of nodes, and uses AI to provide natural language explanations of analysis results and recommended actions.
Enhances the understanding and utilization of decision tree analysis results by providing intuitive natural language explanations and recommended actions.
Smart Images

Figure 2025181403000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a natural language generation device, a natural language generation method, and a program. [Background technology]
[0002] Customer relationship management (CRM) is known as a tool that companies use to strengthen relationships with their customers and improve business efficiency. CRM manages and analyzes CRM data, such as customer information, behavioral history, and communication history, and is used in various departments, including sales and marketing and customer service.
[0003] In CRM, CRM data is sometimes analyzed using decision trees. In analysis using decision trees, a decision tree model is constructed that divides collected CRM data based on conditions, and the predictive model is adjusted by training the decision tree model using the CRM data as training data. The adjusted predictive model is used to predict win / loss, etc. for new CRM data, and a course of action is decided based on the prediction results.
[0004] The problem with such analysis using decision trees is that it is difficult for people to understand the analysis results.
[0005] A technology for generating a table that allows humans to understand the classification rules of a decision tree is disclosed in Patent Document 1. Patent Document 1 describes a method for obtaining a decision tree generated based on data consisting of a target variable and explanatory variables, obtaining rules for classifying data based on information on leaf nodes in the obtained decision tree, and integrating the obtained classification rules to generate an integrated rule. [Prior art documents] [Patent documents]
[0006] [Patent Document 1] Japanese Patent Application Publication No. 2019-82783 Summary of the Invention [Problem to be solved by the invention]
[0007] In Patent Document 1, a table of classification rules for a decision tree is generated. However, with the technology of Patent Document 1, it is not possible to intuitively understand the analysis results of the decision tree from the generated table of classification rules. Furthermore, with the technology of Patent Document 1, it is difficult to determine a course of action after understanding the analysis results of the decision tree from the generated table of classification rules.
[0008] Therefore, an object of the present invention is to provide a technique that can support the utilization of analysis results using decision trees. [Means for solving the problem]
[0009] In order to solve the above problems, one representative natural language generation device of the present invention is a natural language generation device equipped with a control unit, a memory unit, and a display unit, in which the control unit generates a decision tree consisting of multiple nodes obtained by dividing data based on one or more features, stores the node values of the nodes in the memory unit, accepts a user's selection of any node from the generated decision tree, creates a question sentence that the generation AI generates as natural language an explanation of the analysis results of the selected node based on the node value of the node stored in the memory unit, provides the question sentence to the generation AI to generate natural language, and displays the natural language on the display unit. [Effects of the Invention]
[0010] According to the present invention, it is possible to support the utilization of analysis results using a decision tree.
[0011] Problems, configurations, and effects other than those described above will become apparent from the following description of the embodiments. [Brief explanation of the drawings]
[0012] [Figure 1] 1 is a block diagram showing an example of a functional configuration of a natural language generation device according to an embodiment of the present invention; [Figure 2]1 is a block diagram showing an example of the hardware configuration of a computer to which a natural language generation device according to an embodiment of the present invention is applied. [Figure 3] FIG. 10 is a diagram illustrating an example of array data of feature amounts stored in a feature amount identification unit. [Figure 4] FIG. 10 is a diagram illustrating an example of a data table of node values stored in a node storage unit. [Figure 5] 1 is a flowchart illustrating an example of a natural language generation process executed by the natural language generation device of the present embodiment. [Figure 6] FIG. 10 is a diagram showing an example of an analysis result display screen displayed by a screen unit. [Figure 7] FIG. 10 is a diagram illustrating the creation of a question sentence by a language generation unit. DETAILED DESCRIPTION OF THE INVENTION
[0013] Hereinafter, an embodiment will be described with reference to the drawings. [Example]
[0014] FIG. 1 is a block diagram showing an example of the functional configuration of a natural language generation device according to this embodiment.
[0015] The natural language generation device 100 includes a data preparation unit 101, a data input unit 102, a decision tree generation unit 103, a decision tree output unit 104, a screen unit 105, a feature identification unit 106, a node storage unit 107, and a language generation unit 108. The natural language generation device 100 is also interconnected with a generation AI 110 via a network.
[0016] The data preparation unit 101 collects CRM data such as customer information, behavior history, and communication history.
[0017] The data input unit 102 acquires CRM data from the data preparation unit 101 and performs preprocessing on the CRM data to improve the accuracy of the decision tree. The preprocessing includes, for example, correcting or removing missing data, removing outliers, normalization, etc. The data input unit 102 also accepts the selection of one or more feature amounts from the CRM data that will serve as division criteria for the decision tree.
[0018] The feature identification unit 106 assigns a feature ID for identifying each feature to the feature selected by the user via the data input unit 102, and stores the result as sequence data in the storage device 203 (described later in FIG. 2). Details of the sequence data will be described later in FIG. 3.
[0019] The decision tree generation unit 103 constructs a decision tree model that divides CRM data based on the feature amounts selected by the data input unit 102. The decision tree generation unit 103 also trains the constructed decision tree model using the CRM data of the feature amounts selected by the data input unit 102 as training data, and generates a decision tree by adjusting the prediction model.
[0020] The node storage unit 107 stores the node values of each node of the decision tree generated by the decision tree generation unit 103 in the storage device 203 (described later in FIG. 2). Here, each node of the decision tree is assigned a node number. Details of the node values will be described later in FIG. 4.
[0021] The decision tree output unit 104 outputs the decision tree generated by the decision tree generation unit 103 to the screen unit 105 and the language generation unit 108 as an image.
[0022] The screen unit 105 displays an image of the decision tree output by the decision tree output unit 104 on an analysis result display screen of the output unit 206 (described later in FIG. 2). When the user selects a node and usage scene that they wish to refer to on the analysis result display screen, the screen unit 105 passes the node number of the node and the usage scene as arguments to the language generation unit 108. Details of the analysis result display screen will be described later in FIG. 6.
[0023] The language generation unit 108 reads the node value of each node from the node storage unit 107, and creates a question to be given to a generation AI (Artificial Intelligence) 110 using the node ID and usage scenario passed from the screen unit 105 and the image of the decision tree acquired from the decision tree output unit 104 as arguments. The language generation unit 108 also gives the created question to the generation AI 110 and causes it to generate natural language that answers the question, thereby generating an explanation of the analysis results of the selected node and a course of action corresponding to the usage scenario recommended from the analysis results in natural language, and outputs the natural language to the screen unit 105.
[0024] The generation AI 110 is an AI that generates natural language using a large-scale language model (LLM). The large-scale language model may be, for example, a cloud service such as GPT-3.5 or GPT-4, or an open-source model such as Llama2.
[0025] The screen unit 105 displays the natural language output by the language generation unit 108 on an analysis result display screen.
[0026] FIG. 2 is a block diagram showing an example of the hardware configuration of a computer to which the natural language generation device of this embodiment is applied.
[0027] 1 shows an example of the hardware configuration of a computer 200 on which the functional units shown in Fig. 1 operate. The computer 200 is a server or computer configured by interconnecting a CPU (Central Processing Unit) 201, a memory 202, a storage device 203, a communication unit 204, an input unit 205, and an output unit 206 via a bus 207.
[0028] The CPU 201 (control unit) is a central processing unit, and implements necessary functions by executing programs stored in the memory 202 (or storage device 203).
[0029] The memory 202 is a main storage device used when the CPU 201 executes processing, and is configured with a volatile storage element such as a RAM (Random Access Memory).
[0030] The storage device 203 (storage unit) is an auxiliary storage device for storing input data provided to the CPU 201 and output data output from the CPU 201, and is composed of a non-volatile storage element such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive).
[0031] The communication unit 204 is an interface used by the computer 200 to communicate with external devices, and is configured by a NIC (Network Interface Card) etc. The communication unit 204 is connected to a network (e.g., the Internet) and communicates with external devices via the network.
[0032] The input unit 205 is an interface that accepts input from a user (operator), and is configured with a keyboard, a touch panel, a card reader, a voice input device, or the like.
[0033] The output unit 206 (display unit) is an interface that outputs data to the operator, and is composed of a display, a speaker, a printer, or the like.
[0034] The bus 207 is an internal communication path of the computer 200 .
[0035] In this embodiment, the natural language generation device 100 can realize each process described below by having a CPU 201 execute a program on one or more computers 200 having a hardware configuration such as that shown in FIG.
[0036] FIG. 3 is a diagram showing an example of feature sequence data stored in the feature identification unit 106. As shown in FIG.
[0037] The feature identification unit 106 assigns a feature ID 301 for identifying the feature to the feature selected by the user, and stores the feature in the array data 300. The feature is a data item used when generating a decision tree for CRM data.
[0038] The sequence data 300 stores a feature 302 selected by the user and a feature ID 301 that identifies the feature 302. In Fig. 3, for example, the feature with the feature ID "1" is "age."
[0039] FIG. 4 is a diagram showing an example of a data table of node values stored in the node storage unit 107. As shown in FIG.
[0040] The data table 400 has records each including an ID 401, a node ID 402, a parent node ID 403, a feature amount 404, a value 405 of the feature amount, and a classification result 406 of the decision tree.
[0041] The ID 401 is an ID that identifies each record.
[0042] The node ID 402 is an ID that identifies each node of the decision tree generated by the decision tree generating unit 103 .
[0043] The parent node ID 403 is the node ID of the node (parent node) located directly above the node (child node). If the node is at the top of the decision tree, the parent node ID 403 is "NULL."
[0044] The feature 404 is the feature ID of the feature used to divide the node. For example, with reference to the array data in Fig. 3, the feature with feature ID "1" is "age".
[0045] Feature value 405 is the value of the feature that is the basis for dividing the node. In Fig. 4, for example, if feature 404 is "1" and feature value 405 is "<=30", the node is divided based on whether the age is 30 or less. If the node is not divided, feature 404 and feature value 405 are "NULL".
[0046] The node values of the data table 400 are used by the generation AI 110 to generate natural language based on a decision tree.
[0047] 5 is a flowchart showing an example of a natural language generation process executed by the natural language generation device 100 of this embodiment. This process is realized by the CPU 201 executing a program stored in the memory 202 (or the storage device 203).
[0048] First, the data input unit 102 acquires CRM data such as customer information, purchase data, and communication history from the data preparation unit 101 (step S501).
[0049] Next, the data input unit 102 performs preprocessing on the CRM data, such as correcting missing data, removing outliers, and normalizing, in order to improve the accuracy of the decision tree (step S502).
[0050] Next, the data input unit 102 receives a user's selection of one or more feature quantities from the CRM data that will be used as division criteria for the decision tree (step S503).
[0051] The feature identification unit 106 assigns a feature ID for identifying each feature to the feature selected by the user via the data input unit 102, and stores the result as sequence data 300 in the storage device 203 (step S504).
[0052] The decision tree generation unit 103 generates a decision tree (step S505). The decision tree is generated by constructing a decision tree model that divides CRM data based on the feature amounts selected by the data input unit 102. Next, the decision tree generation unit 103 trains the constructed decision tree model using the CRM data of the feature amounts selected by the data input unit 102 as training data, and adjusts the prediction model to generate a trained decision tree. The decision tree output unit 104 passes the decision tree generated by the decision tree generation unit 103 to the screen unit 105 and the language generation unit 108 as an image.
[0053] Next, the node storage unit 107 stores the node value of each node of the decision tree generated by the decision tree generation unit 103 (step S506). Here, a node number is assigned to each node of the decision tree.
[0054] The screen unit 105 displays the image of the decision tree output by the decision tree output unit 104 on the analysis result display screen of the output unit 206 of the natural language generation device 100 (step S507).
[0055] Here, the analysis result display screen displayed by the screen unit 105 will be described with reference to FIG.
[0056] FIG. 6 is a diagram showing an example of an analysis result display screen displayed by the screen unit 105. As shown in FIG.
[0057] The analysis result display screen 600 has a decision tree display section 601 , a usage scene selection section 602 , and a natural language display section 603 .
[0058] The decision tree display unit 601 displays the decision tree output by the decision tree output unit 104 as an image. The user selects a node for which an explanation is desired from the image of the decision tree displayed on the decision tree display unit 601. Specifically, the user selects the node by moving the cursor 604 to the node position using, for example, a mouse and clicking the node. The language generation unit 108 outputs an explanation of the selected node in natural language based on the analysis result of the decision tree.
[0059] The usage scenario selection unit 602 displays candidate usage scenarios such as sales, marketing, and customer support, and the user selects one from the displayed usage scenarios. The language generation unit 108 outputs, in natural language, a course of action that corresponds to the selected usage scenario recommended from the analysis result of the decision tree, based on the analysis result of the decision tree.
[0060] The possible usage scenarios shown in FIG. 6 are just examples, and can be changed as appropriate depending on the type of data to be analyzed using the decision tree, the purpose, etc.
[0061] The natural language display section 603 displays the natural language output by the language generation section 108 based on the node selected in the decision tree display section 601 and the usage scene selected in the usage scene selection section 602 .
[0062] 5, when a node and a usage scenario are selected on the analysis result display screen 600 (YES in step S508), the screen unit 105 passes the node ID of the node and the usage scenario as arguments to the language generation unit 108. The language generation unit 108 reads the node value of each node from the node storage unit 107, and creates a question to be given to the generation AI 110 using the node ID and usage scenario passed from the screen unit 105 and the image of the decision tree acquired from the decision tree output unit 104 as arguments (step S509).
[0063] Here, question generation by the language generation unit 108 will be described with reference to FIG.
[0064] FIG. 7 is a diagram for explaining how the language generation unit 108 creates a question sentence.
[0065] The following rules are applied to the question sentences given to the generation AI 110.
[0066] If the arguments are A (node ID), B (decision tree image), and C (usage scenario), the language generation unit 108 creates a question such as, "Present the analysis results related to A of B. Furthermore, present a course of action based on C."
[0067] The language generation unit 108 creates a question by, for example, storing a template of a question sentence such as the one described above in the storage device 203 and transcribing the node ID, decision tree image, and usage scenario into this template.
[0068] By providing the question created in this way to the generation AI 110, the generation AI 110 can output in natural language an explanation of the analysis results related to the decision tree node selected by the user, and a course of action recommended based on the analysis results according to the usage scenario.
[0069] The question template shown in FIG. 7 is an example, and can be modified as appropriate depending on the type of data to be analyzed using the decision tree, the purpose, etc.
[0070] Returning to FIG. 6, the language generation unit 108 provides the generated question to the generation AI 110, which then generates a natural language answer to the question by referring to the data table 400, thereby generating an explanation of the analysis results of the node to be referenced and a course of action appropriate to the usage scenario in natural language, and outputs this to the screen unit 105 (step S510).
[0071] Next, returning to step S507, the screen unit 105 displays the natural language generated in step S510 in the natural language display area 603 of the analysis result display screen 600 in FIG. 6 (step S511).
[0072] According to this embodiment, the node values of each node in the decision tree are saved, and a question is created that causes the generation AI 110 to output the analysis results of the node selected by the user in natural language, thereby making it easier to understand the analysis results using the decision tree.
[0073] In addition, based on the analysis results of the decision tree, a question is created that causes the generation AI 110 to output in natural language a course of action that corresponds to the usage scenario selected by the user and that is recommended from the analysis results of the decision tree, thereby supporting the utilization of the analysis results of the decision tree.
[0074] Furthermore, the user can select a node from the image of the decision tree displayed on the analysis result display screen 600 and select a usage scenario from the candidate usage scenarios displayed on the analysis result display screen 600, so that the natural language desired by the user can be displayed with simple operations.
[0075] In this embodiment, an analysis of CRM data using a decision tree has been described as an example, but the present invention is not limited to this and can be applied to the analysis of data using a decision tree.
[0076] Furthermore, the present invention is not limited to the above-described embodiment, and includes various modifications. For example, the above-described embodiment has been described in detail to clearly explain the present invention, and the present invention is not necessarily limited to an embodiment having all of the described configurations. [Explanation of symbols]
[0077] 100:Natural language generator 101: Data Preparation Department 102: Data input section 103: Decision tree generation section 104: Decision tree output unit 105:Screen section 106: Feature identification unit 107: Node storage unit 108:Language generation section 110: Generation AI
Claims
1. A natural language generation device including a control unit, a storage unit, and a display unit, The control unit generating a decision tree consisting of a plurality of nodes that divides the data based on one or more features; storing a node value of the node in the storage unit; Accepting a user's selection of any node from the generated decision tree; A question sentence is created to cause a generation AI to generate an explanation of the analysis result of the selected node in natural language based on the node value of the node stored in the storage unit; The question sentence is given to the generation AI to generate natural language; A natural language generation device that displays the natural language on the display unit.
2. 2. The natural language generation device according to claim 1, The control unit Accept the user's selection of usage scenario, A natural language generation device that creates a question sentence that causes the generation AI to generate a course of action corresponding to the selected usage scenario assumed from the analysis results of the selected node as natural language based on the node value of the node stored in the memory unit.
3. 3. The natural language generation device according to claim 2, The storage unit A template of the question sentence is provided; The control unit a natural language generation device that creates the question by transcribing the selected node, the image of the decision tree, and the selected usage scenario into the template;
4. 3. The natural language generation device according to claim 2, The control unit displaying the generated decision tree as an image on the display unit; A natural language generation device that accepts the user's selection of any node from the decision tree displayed on the display unit.
5. 3. The natural language generation device according to claim 2, displaying the usage scene candidates on the display unit; A natural language generation device that accepts the selection of one of the usage scene candidates displayed on the display unit.
6. 3. The natural language generation device according to claim 2, A natural language generation device in which the node value of the node is data including the feature that divides the node and the value of the feature, or the classification result of the node.
7. 3. The natural language generation device according to claim 2, The control unit accepting a user selection of one or more of the feature quantities; The natural language generation device assigns an ID to the feature quantity to identify the feature quantity and stores the feature quantity in the storage unit.
8. A natural language generation program for a natural language generation device including a control unit, a storage unit, and a display unit, The control unit A decision tree consisting of multiple nodes is generated by dividing the data based on features. storing a node value of the node in the storage unit; Accepting a user's selection of any node from the generated decision tree; A question sentence is created to cause a generation AI to generate an explanation of the analysis result of the selected node in natural language based on the node value of the node stored in the storage unit; The question sentence is given to the generation AI to generate natural language; A natural language generation method for a natural language generation device that displays the natural language on the display unit.
9. A program for a natural language generation device including a control unit, a storage unit, and a display unit, A decision tree consisting of multiple nodes is generated by dividing the data based on features. storing a node value of the node in the storage unit; Accepting a user's selection of any node from the generated decision tree; A question sentence is created to cause a generation AI to generate an explanation of the analysis result of the selected node in natural language based on the node value of the node stored in the storage unit; The question sentence is given to the generation AI to generate natural language; A program that causes the control unit to display the natural language on the display unit.
Citation Information
Patent Citations
Information processing apparatus, information processing method, and program
JP2019082783A