Device and method

The apparatus and method infer user interests and concerns in real time by generating relational information from past dialogues and detecting current topics, enhancing accuracy and efficiency in extracting related topic words.

WO2026100030A1PCT designated stage Publication Date: 2026-05-15NTT DOCOMO INC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
NTT DOCOMO INC
Filing Date
2024-11-08
Publication Date
2026-05-15

AI Technical Summary

Technical Problem

Existing technologies face challenges in inferring user interests and concerns in real time from past and current dialogues.

Method used

An apparatus and method that includes a graph calculation unit to generate relational information based on general knowledge, a topic detection unit to detect current topics, and an extraction unit to acquire related topic words, allowing for real-time inference of user interests and concerns by linking user-specific relational information with current utterances.

Benefits of technology

Enables real-time inference of user interests and concerns by accurately extracting related topic words from past and present conversations, improving accuracy and reducing computational costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024039846_15052026_PF_FP_ABST
    Figure JP2024039846_15052026_PF_FP_ABST
Patent Text Reader

Abstract

The present disclosure provides technology for estimating the interest of a user in real time from past and current dialogues. A device 10 according to one aspect of the present disclosure comprises: a graph calculation unit 13 that generates relationship information indicating a relationship between a plurality of words on the basis of general knowledge, and connects a user to the relationship information on the basis of information relating to the past speech of the user; a topic detection unit 14 that detects information relating to a topic on the basis of information relating to the current speech of the user; and an extraction unit 15 that acquires information relating to an associated topic word indicating an associated topic on the basis of the information relating to the topic and the relationship information, and outputs the information relating to the associated topic word.
Need to check novelty before this filing date? Find Prior Art

Description

Apparatus and Method

[0001] The present invention relates to an apparatus and a method.

[0002] Techniques for extracting user preferences using the user's speech are known. For example, Patent Document 1 discloses a technique for extracting preference information in the process of advancing a dialogue with a user. The technique described in Patent Document 1 determines valid attribute nodes corresponding to the preference information in a pre-constructed knowledge graph after extracting the preference information.

[0003] Patent Document 2 discloses a technique for identifying an entity mentioned in a dialogue between a user and an automatic assistant and identifying a fact of the entity or another entity. The technique described in Patent Document 2 determines a criterion of the user's interest regarding the fact after identifying the fact.

[0004] Japanese Patent Publication No. 2024-508502, Japanese Unexamined Patent Application Publication No. 2024-038294

[0005] Conventionally, it has been difficult to infer the user's interests and concerns in real time from past and current dialogues.

[0006] An object of the present disclosure is to provide a technique for inferring the user's interests and concerns in real time from past and current dialogues.

[0007] An apparatus according to an aspect of the present disclosure includes: a graph calculation unit that generates relationship information indicating relationships between a plurality of words based on general knowledge and connects a user to the relationship information based on information regarding the user's past speech; a topic detection unit that detects information regarding a topic based on information regarding the user's current speech; and an extraction unit that obtains and outputs information regarding related topic words indicating related topics based on the information regarding the topic and the relationship information.

[0008] In one aspect of this disclosure, the user is linked to relational information generated based on general knowledge, based on information about the user's past utterances. This allows for the acquisition of user-specific relational information. Furthermore, topic information is detected based on information about the user's current utterances. Then, information about related topic words is acquired and output based on the topic information and relational information. In other words, information about related topic words is extracted from the current topic and user-specific relational information. This makes it possible to infer the user's interests and concerns in real time from past and present dialogue.

[0009] According to this disclosure, it is possible to infer a user's interests in real time from past and present conversations.

[0010] Figure 1 is a block diagram showing an example of the functional configuration of the device according to the embodiment. Figure 2 is a diagram showing an example of a knowledge graph. Figure 3 is a diagram showing an example of extracting information about a topic. Figure 4 is a diagram showing an example of a subgraph. Figure 5 is a diagram showing an example of information about related topic words. Figure 6 is a diagram showing an example of a prompt. Figure 7 is a flowchart showing an example of the operation of the device according to the embodiment. Figure 8 is a diagram showing an example of the hardware configuration of the device.

[0011] Embodiments of this disclosure will be described with reference to the attached drawings. Where possible, the same parts will be denoted by the same reference numerals, and redundant descriptions will be omitted.

[0012] Figure 1 is a block diagram showing an example of the functional configuration of the device 10 according to the embodiment. The device 10 comprises, as functional elements, an input unit 11, a speech history storage unit 12, a graph calculation unit 13, a topic detection unit 14, an extraction unit 15, and a response generation unit 16.

[0013] The input unit 11 acquires information about user utterances. For example, the input unit 11 acquires information about utterances in real space or virtual space. The utterances may be utterances included in conversations between users. The utterances may be utterances included in conversations between NPCs (Non-Player Characters) and users in virtual space. The utterances may be the user's monologues. The input unit 11 stores the information about the utterances in the utterance history storage unit 12. The input unit 11 outputs the information about the utterances to the topic detection unit 14.

[0014] The speech history storage unit 12 is a non-temporary storage medium or storage device that stores information about utterances. For example, the speech history storage unit 12 stores information about utterances in chronological order as a conversation history. The speech history storage unit 12 may be constructed using at least one database. The speech history storage unit 12 may be a component of the device 10, or it may be located in a computer system separate from the device 10.

[0015] The graph calculation unit 13 generates relational information showing the relationships between multiple words based on general knowledge. The graph calculation unit 13 may acquire text published on a website as general knowledge. For example, the graph calculation unit 13 may acquire text published on Wikipedia, an internet encyclopedia site, as general knowledge.

[0016] Relationship information may also be a knowledge graph that includes multiple entities and relationships that show the relationships between those entities. A knowledge graph is,<subject, predicate, object> The relationships between entities are represented by a set of three.

[0017] The graph calculation unit 13 extracts entities from general knowledge. For example, the graph calculation unit 13 creates structured graph data from general knowledge text. In one example, the graph calculation unit 13 obtains a knowledge graph by graphing general knowledge using the Llama knowledge graph index. In the knowledge graph, entities are represented as nodes, and relationships are represented as edges.

[0018] The graph calculation unit 13 connects the user to relational information based on information about the user's past utterances. For example, the graph calculation unit 13 obtains information about the user's past utterances from the utterance history storage unit 12. The graph calculation unit 13 extracts past topics from the information about past utterances. The graph calculation unit 13 identifies general knowledge nodes corresponding to past topics. The graph calculation unit 13 connects the user's node and the specific general knowledge node with an edge representing the past topic.

[0019] The graph calculation unit 13 vectorizes relational information. For example, the graph calculation unit 13 obtains vector information from a knowledge graph using a GNN (Graph Neural Network). The graph calculation unit 13 may also generate relational information through batch processing and then vectorize it.

[0020] The topic detection unit 14 detects topic-related information based on information about the user's current utterance. Topic-related information may be a word (topic word) that indicates the current topic. In other words, the topic detection unit 14 detects the topic in real time from the content of the utterance. The topic detection unit 14 may also detect topic-related information based on information about recent past and current utterances. The topic detection unit 14 outputs topic-related information to the extraction unit 15.

[0021] For example, the topic detection unit 14 may detect information related to a topic using NER (Named Entity Recognition), a topic model, or a Large Language Model (LLM). NER is a method for identifying named entities such as names of people or places in a text and classifying them into predefined categories. A topic model is a statistical method for analyzing word patterns and automatically identifying hidden topics. The LLM may be built into the device 10 or provided by an external device.

[0022] The extraction unit 15 acquires information about related topic terms that indicate related topics, based on topic information and relational information. For example, the extraction unit 15 acquires information about the current topic and related topic terms that are close to the user.

[0023] The extraction unit 15 may identify nodes in the knowledge graph that are close to the current topic. For example, the extraction unit 15 may obtain a subgraph by narrowing down the knowledge graph based on information about the topic. The subgraph can be said to be a knowledge graph of the range related to the current topic.

[0024] The extraction unit 15 may narrow down the knowledge graph using, for example, Personalized PageRank. PageRank is an algorithm for evaluating the importance of a web page based on the number of backlinks. The extraction unit 15 may also narrow down the knowledge graph based on the transition probability between nodes. Transition probability is the probability that indicates which node is important from the perspective of a given node. The extraction unit 15 may also narrow down the knowledge graph using the node's order or hop count, etc.

[0025] The extraction unit 15 may identify nodes in the knowledge graph that are close to the user. For example, the extraction unit 15 may calculate the degree of relevance between the user's node and other nodes (each node of general knowledge) based on the vector distance in the knowledge graph. The extraction unit 15 may determine that the closer the vector distance, the higher the degree of relevance.

[0026] The extraction unit 15 may obtain information about related topic words based on their relevance. The extraction unit 15 may identify N nodes with a high degree of relevance (N ≥ 1). The extraction unit 15 obtains information about related topic words for the N nodes with a high degree of relevance. The information about related topic words may be node names (entity names). The information about related topic words may also be structural information including nodes and edges.

[0027] The extraction unit 15 outputs information about related topic words. For example, the extraction unit 15 may transmit information about related topic words to another computer device. The extraction unit 15 may display information about related topic words on a display device. The extraction unit 15 may output information about related topic words by voice. The extraction unit 15 may output information about related topic words to the response generation unit 16.

[0028] The response generation unit 16 generates a response based on information about related topic words. For example, the response generation unit 16 generates a prompt based on information about related topic words and inputs the prompt to the LLM. The prompt includes instructions for the LLM. For example, the prompt includes instructions to generate a topic using information about related topic words. The response generation unit 16 generates a response by obtaining a decision result from the LLM corresponding to the prompt.

[0029] The response generation unit 16 outputs a response. The response generation unit 16 may transmit the response to another computer device. The response generation unit 16 may display the response on a display device. The response generation unit 16 may output the response by voice.

[0030] Figure 2 shows an example of knowledge graph G1. Knowledge graph G1 is a knowledge graph that includes general knowledge nodes N1 to N10 and is connected to user A's node U1. For example, information posted on a website as general knowledge may be "Kawasaki Frontale is a club team whose home town is Kawasaki City..." Information about user A's past utterances may be "I live in Kawasaki City."

[0031] In one example, User A's node U1 is connected to node N1, which represents Kawasaki City, via edge E1, which represents "past topics." This relationship represents, for example, that "User A talked about Kawasaki City as a past topic."

[0032] In another example, node N1, which represents Kawasaki City, is connected to node N2, which represents Kawasaki Frontale, via edge E2, which represents "hometown." This relationship expresses, for example, that "Kawasaki City is the hometown of Kawasaki Frontale."

[0033] Figure 3 shows an example of extracting information related to a topic. Figure 3 shows that information related to a topic W is extracted from the conversation history H (information related to utterances). The conversation history H is the history of conversations between user A and an agent (for example, an NPC in a virtual space, or a voice assistant on the user's terminal).

[0034] Conversation history H includes recent past and present utterances. Conversation history H includes the first, second, and third utterances in chronological order. The first utterance is User A's utterance, "I live in Kawasaki City." The second utterance is the agent's utterance, "Oh really? Speaking of Kawasaki City, Kawasaki Frontale is in the running for the championship, so it's exciting!" The third utterance is User A's utterance, "That's right, I went to see a match last week!"

[0035] The topic detection unit 14 detects topic-related information W based on the conversation history H. The topic detection unit 14 may also detect topic-related information W by considering the flow of the first utterance, the second utterance, and the third utterance. Topic-related information W may include, for example, "soccer," "match," and "weekend."

[0036] Figure 4 shows an example of subgraph G2. Figure 4 shows subgraph G2, which is a knowledge graph G1 shown in Figure 2, but with the information related to the topic narrowed down to "soccer." In other words, subgraph G2 can be said to be a knowledge graph covering the scope related to the current topic, soccer.

[0037] Subgraph G2 may be determined based on the transition probability from node N4, which represents soccer. Subgraph G2 includes general knowledge nodes N1-N4, N7, and N9. General knowledge nodes N5, N6, N8, and N10 are excluded from subgraph G2.

[0038] Figure 5 shows an example of information regarding related topic terms. The extraction unit 15 calculates the degree of relevance based on the vector distance between user A's node U1 and each node. In one example, the extraction unit 15 identifies node N2, which represents Kawasaki Frontale, as a node with a high degree of relevance. The extraction unit 15 may also obtain the node name "Kawasaki Frontale" of node N2 as information regarding related topic terms.

[0039] Figure 6 shows an example of prompt P. Figure 6 shows prompt P generated by the response generation unit 16. Prompt P includes user input P1, related topic P2, character settings, behavior, and output format as instructions to the LLM. The information contained in prompt P is not limited to these.

[0040] The user input P1 is information related to speech. For example, the user input P1 may be information related to a speech indicating "I want to go to Hokkaido, but are there any recommended tourist spots?"

[0041] The related topic P2 is information related to related topic words. For example, the related topic P2 may be information related to a related topic word indicating "XX Brewery".

[0042] The LLM outputs the generated response result based on the prompt P. For example, the output may be "If you like Japanese sake, it's a good idea to go to XX Brewery in Hokkaido! There, not only can you taste delicious Japanese sake, but you can also take a tour of the brewing process. It would be great to go with friends and have a fun time!"

[0043] An example of the method of operation by the apparatus 10 will be described while referring to FIG. 7. FIG. 7 is a flowchart showing an example of the operation of the apparatus 10 as a flow M1.

[0044] In step S1, the input unit 11 acquires information related to the user's speech. For example, the input unit 11 acquires information related to speech in at least one of the real space and the virtual space. The speech may be a speech included in a conversation between users. The speech may be a speech included in a conversation between an NPC and a user in the virtual space. The speech may be the user's monologue. The input unit 11 stores the information related to the speech in the speech history storage unit 12. The input unit 11 outputs the information related to the speech to the topic detection unit 14.

[0045] In step S2, the graph calculation unit 13 generates relationship information indicating the relationship between a plurality of words based on general knowledge. The graph calculation unit 13 may acquire the articles published on the website as general knowledge. In one example, the graph calculation unit 13 may acquire the articles published on Wikipedia, which is an Internet encyclopedia website, as general knowledge.

[0046] The relationship information may be a knowledge graph including a plurality of entities and a relation indicating the relationship between the plurality of entities.

[0047] The graph calculation unit 13 extracts entities from general knowledge. For example, the graph calculation unit 13 creates structured graph data from the text of general knowledge. In one example, the graph calculation unit 13 obtains a knowledge graph by graphing general knowledge using the Llama knowledge graph index.

[0048] The graph calculation unit 13 connects the user to the relationship information based on information about the user's past utterances. For example, the graph calculation unit 13 obtains information about the user's past utterances from the utterance history storage unit 12. The graph calculation unit 13 extracts past topics from the information about past utterances. The graph calculation unit 13 connects the user's node and a specific node of general knowledge with an edge called the past topic.

[0049] The graph calculation unit 13 vectorizes the relationship information. For example, the graph calculation unit 13 obtains vector information for the knowledge graph using GNN. The graph calculation unit 13 may generate relationship information by batch processing and vectorize it.

[0050] In step S3, the topic detection unit 14 detects information related to the topic based on information about the user's current utterance. The information related to the topic may be words (topic words) indicating the current topic. That is, the topic detection unit 14 detects the topic from the utterance content in real time. The topic detection unit 14 may detect information related to the topic based on information about the most recent past and current utterances. The topic detection unit 14 outputs the information related to the topic to the extraction unit 15.

[0051] For example, the topic detection unit 14 may detect information related to the topic using NER, a topic model, or an LLM.

[0052] In step S4, the extraction unit 15 obtains information about related topic words indicating related topics based on the information related to the topic and the relationship information. For example, the extraction unit 15 obtains information about the current topic and related topic words close to the user.

[0053] The extraction unit 15 may identify nodes in the knowledge graph that are close to the current topic. For example, the extraction unit 15 may obtain a subgraph by narrowing down the knowledge graph based on information about the topic. The subgraph can be said to be a knowledge graph of the range related to the current topic.

[0054] The extraction unit 15 may narrow down the knowledge graph using, for example, Personalized PageRank. The extraction unit 15 may narrow down the knowledge graph based on the transition probability between nodes. The extraction unit 15 may narrow down the knowledge graph using the node order or hop count, etc.

[0055] The extraction unit 15 may identify nodes in the knowledge graph that are close to the user. For example, the extraction unit 15 may calculate the degree of relevance between the user's node and other nodes (each node of general knowledge) based on the vector distance in the knowledge graph. The extraction unit 15 may determine that the closer the vector distance, the higher the degree of relevance.

[0056] The extraction unit 15 may obtain information about related topic words based on their relevance. The extraction unit 15 may identify N nodes with a high degree of relevance (N ≥ 1). The extraction unit 15 obtains information about related topic words for the N nodes with a high degree of relevance. The information about related topic words may be node names (entity names). The information about related topic words may also be structural information including nodes and edges.

[0057] The extraction unit 15 outputs information about related topic words. For example, the extraction unit 15 may transmit information about related topic words to another computer device. The extraction unit 15 may display information about related topic words on a display device. The extraction unit 15 may output information about related topic words by voice. The extraction unit 15 may output information about related topic words to the response generation unit 16.

[0058] In step S5, the response generation unit 16 generates a response based on information about related topic words. For example, the response generation unit 16 generates a prompt based on information about related topic words and inputs the prompt to the LLM. The prompt includes instructions for the LLM. For example, the prompt includes instructions to generate a topic using information about related topic words. The response generation unit 16 generates a response by obtaining a decision result from the LLM corresponding to the prompt.

[0059] The response generation unit 16 outputs a response. The response generation unit 16 may transmit the response to another computer device. The response generation unit 16 may display the response on a display device. The response generation unit 16 may output the response by voice.

[0060] The processes in steps S1 and S2 may be performed in advance by independent processes. If the relevant information is generated in advance, the process in step S2 may be omitted.

[0061] As described above, the apparatus 10 relating to one aspect of this disclosure includes a graph calculation unit 13 that generates relational information showing the relationships between multiple words based on general knowledge and links the user to relational information based on information about the user's past utterances; a topic detection unit 14 that detects topical information based on information about the user's current utterances; and an extraction unit 15 that acquires related topical words indicating related topics based on topical information and relational information, and outputs related topical words.

[0062] A method relating to one aspect of this disclosure includes the steps of: generating relational information indicating the relationships between multiple words based on general knowledge; linking the user to the relational information based on information about the user's past utterances; detecting topical information based on information about the user's current utterances; and obtaining related topical words indicating related topics based on the topical information and vectorized relational information, and outputting information about related topical words.

[0063] In the apparatus 10 and method relating to one aspect of this disclosure, the user is linked to relational information generated based on general knowledge, based on information about the user's past utterances. This allows for the acquisition of relational information specific to the user. Furthermore, information about the topic is detected based on information about the user's current utterances. Then, information about related topic words is acquired and output based on the topic information and relational information. In other words, information about related topic words is extracted from the current topic and user-specific relational information. This makes it possible to infer the user's interests and concerns in real time from past and present conversations.

[0064] Relational information is a knowledge graph that includes multiple entities and relationships that show the connections between those entities. In this case, information about related topic words is obtained based on a knowledge graph that can represent the connections between various pieces of knowledge. This makes it possible to infer the user's interests from a more multifaceted perspective.

[0065] The extraction unit 15 narrows down the knowledge graph based on information related to the topic. In this case, the knowledge graph is obtained for the range relevant to the current topic. This improves the accuracy of extracting related topic terms. It also reduces the computational cost required to obtain information related to related topic terms.

[0066] The extraction unit 15 calculates the degree of relevance between the user's node and other nodes based on the vector distance of the knowledge graph, and obtains information about related topic words based on the degree of relevance. In this case, information about related topic words is obtained based on the degree of relevance corresponding to the vector distance. This makes it possible to obtain topics that are close to the user (topics that the user is interested in) with high accuracy.

[0067] The topic detection unit 14 extracts topic-related information based on information about the user's most recent past and present utterances. In this case, topic-related information is extracted while considering the context. This improves the accuracy of topic extraction.

[0068] The apparatus and method of the present disclosure may have the following configurations: [1] An apparatus comprising: a graph calculation unit that generates relational information showing the relationships between a plurality of words based on general knowledge and links the user to the relational information based on information about the user's past utterances; a topic detection unit that detects information about a topic based on information about the user's current utterances; and an extraction unit that acquires information about related topic words indicating related topics based on the information about the topic and the relational information, and outputs information about the related topic words. [2] The apparatus according to [1], wherein the relational information is a knowledge graph including a plurality of entities and relations showing the relationships between the plurality of entities. [3] The apparatus according to [2], wherein the extraction unit narrows down the knowledge graph based on the information about the topic. [4] The apparatus according to [3], wherein the extraction unit calculates the degree of relevance between the user's node and other nodes based on the vector distance of the knowledge graph and acquires information about the related topic words based on the degree of relevance. [5] The apparatus according to any one of [1] to [4], wherein the topic detection unit extracts information about the topic based on information about the user's most recent past and present utterances. [6] A method comprising: generating relational information indicating the relationships between multiple words based on general knowledge, and linking the user to the relational information based on information about the user's past utterances; detecting information about a topic based on information about the user's current utterances; and obtaining information about related topic words indicating related topics based on the information about the topic and the vectorized relational information, and outputting information about the related topic words.

[0069] The block diagrams used in the description of the above embodiments show functional units. These functional blocks (components) are realized by any combination of at least one of hardware and software. Furthermore, the method of realizing each functional block is not particularly limited. That is, each functional block may be realized using one device that is physically or logically coupled, or it may be realized using two or more physically or logically separated devices that are directly or indirectly connected (for example, using wired or wireless connections). A functional block may also be realized by combining software with the one or more of the above devices.

[0070] Functions include, but are not limited to, judgment, decision, determination, calculation, calculation, processing, derivation, investigation, exploration, confirmation, reception, transmission, output, access, resolution, selection, selection, establishment, comparison, assumption, expectation, assumption, broadcasting, notifying, communicating, forwarding, configuring, reconfiguring, allocating (mapping), and assigning. For example, a functional block (configuration part) that enables transmission is called a transmitting unit or transmitter. In all cases, as mentioned above, the method of implementation is not particularly limited.

[0071] For example, the apparatus 10 in one embodiment of the present disclosure may function as a computer that performs information processing according to the present disclosure. Figure 8 is a diagram showing an example of the hardware configuration of the apparatus 10 according to one embodiment of the present disclosure. The apparatus 10 described above may be physically configured as a computer device including a processor 1001, memory 1002, storage 1003, communication device 1004, input device 1005, output device 1006, bus 1007, etc.

[0072] In the following explanation, the term "device" can be replaced with "circuit," "device," "unit," etc. The hardware configuration of device 10 may include one or more of the devices shown in the figure, or it may be configured to omit some of the devices.

[0073] Each function in the device 10 is realized by loading predetermined software (programs) onto hardware such as the processor 1001 and memory 1002, which allows the processor 1001 to perform calculations, control communication by the communication device 1004, and control at least one of data reading and writing in the memory 1002 and storage 1003.

[0074] The processor 1001 controls the entire computer, for example, by running an operating system. The processor 1001 may be composed of a central processing unit (CPU) that includes interfaces with peripheral devices, control devices, arithmetic units, registers, etc. For example, each of the functions in the above-described device 10 may be implemented by the processor 1001.

[0075] Furthermore, the processor 1001 reads programs (program code), software modules, data, etc., from at least one of the storage 1003 and the communication device 1004 into the memory 1002 and executes various processes accordingly. The program used is one that causes a computer to execute at least a part of the operations described in the above embodiment. For example, each function in the device 10 may be realized by a control program stored in the memory 1002 and operated on the processor 1001. Although the above-described processes have been executed by one processor 1001, they may be executed simultaneously or sequentially by two or more processors 1001. The processor 1001 may be implemented by one or more chips. The program may also be transmitted from a network via a telecommunications line.

[0076] The memory 1002 is a computer-readable recording medium and may consist of at least one of the following: ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electrically Erasable Programmable ROM), RAM (Random Access Memory), etc. The memory 1002 may also be called a register, cache, main memory, etc. The memory 1002 can store executable programs (program code), software modules, etc., for carrying out information processing according to one embodiment of the present disclosure.

[0077] The storage 1003 is a computer-readable recording medium and may consist of at least one of the following: an optical disc such as a CD-ROM (Compact Disc ROM), a hard disk drive, a flexible disk, a magneto-optical disk (e.g., a compact disc, a digital multipurpose disc, a Blu-ray® disc), a smart card, flash memory (e.g., a card, a stick, a key drive), a floppy® disk, a magnetic strip, etc. The storage 1003 may also be called an auxiliary storage device. The storage medium provided by the device 10 may be, for example, a database, server, or other suitable medium including at least one of the memory 1002 and the storage 1003.

[0078] The communication device 1004 is hardware (transceiver / receiver device) for communicating between computers via at least one of a wired network and a wireless network, and is also referred to as a network device, network controller, network card, communication module, etc.

[0079] The input device 1005 is an input device that accepts input from an external source (e.g., a keyboard, mouse, microphone, switch, button, sensor, etc.). The output device 1006 is an output device that outputs to an external source (e.g., a display, speaker, LED lamp, etc.). The input device 1005 and the output device 1006 may be configured as an integrated unit (e.g., a touch panel).

[0080] Furthermore, each device, such as the processor 1001 and the memory 1002, is connected by a bus 1007 for communicating information. The bus 1007 may be configured using a single bus, or different buses may be configured for each device.

[0081] Furthermore, the device 10 may be configured to include hardware such as a microprocessor, a digital signal processor (DSP), an ASIC (Application Specific Integrated Circuit), a PLD (Programmable Logic Device), and an FPGA (Field Programmable Gate Array), and some or all of each functional block may be realized by such hardware. For example, the processor 1001 may be implemented using at least one of these hardware components.

[0082] The processing procedures, sequences, flowcharts, etc., of each aspect / embodiment described in this disclosure may be reordered, provided they do not contradict each other. For example, the methods described in this disclosure present various step elements using exemplary order and are not limited to the specific order presented.

[0083] Input and output information may be stored in a specific location (e.g., memory) or managed using a management table. Input and output information may be overwritten, updated, or appended to. Output information may be deleted. Input information may be transmitted to other devices.

[0084] The determination may be made by a value represented by one bit (0 or 1), by a boolean value (true or false), or by a numerical comparison (for example, by comparing with a predetermined value).

[0085] Each aspect / embodiment described in this disclosure may be used individually, in combination, or switched between as needed during implementation. Furthermore, notification of specific information (e.g., notification that "X is") is not limited to explicit notification, but may also be implicit (e.g., by not providing such notification).

[0086] Although the present disclosure has been described in detail above, it will be clear to those skilled in the art that the present disclosure is not limited to the embodiments described herein. The present disclosure can be implemented in modified and altered forms without departing from the intent and scope of the present disclosure as defined by the claims. Therefore, the descriptions in the present disclosure are illustrative and not intended to be restrictive in any way.

[0087] Software should be broadly interpreted to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software modules, applications, software applications, software packages, routines, subroutines, objects, executable files, execution threads, procedures, functions, and so on, whether they are called software, firmware, middleware, microcode, hardware description languages, or by any other name.

[0088] Furthermore, software, instructions, information, etc., may be transmitted and received via a transmission medium. For example, if software is transmitted from a website, server, or other remote source using at least one of wired technology (such as coaxial cable, fiber optic cable, twisted pair, or digital subscriber line (DSL)) and wireless technology (such as infrared or microwave), then at least one of these wired and wireless technologies is included in the definition of a transmission medium.

[0089] The terms “system” and “network” as used in this disclosure are interchangeable.

[0090] Furthermore, the information, parameters, etc., described in this disclosure may be expressed using absolute values, relative values ​​from a predetermined value, or corresponding other information.

[0091] As used in this disclosure, the terms “determining” and “determining” may encompass a wide variety of actions. “Determining” may include, for example, judging, calculating, computing, processing, deriving, investigating, looking up, searching, or inquiring (e.g., searching in a table, database, or other data structure), or ascertaining. “Determining” may also include receiving (e.g., receiving information), transmitting (e.g., sending information), inputting, outputting, or accessing (e.g., accessing data in memory). Furthermore, "judgment" and "decision" can include considering something as having been "judged" or "decided" after resolving, selecting, choosing, establishing, comparing, etc. In other words, "judgment" and "decision" can include considering something as having been "judged" or "decided" after some action. Also, "judgment (decision)" can be reinterpreted as "assuming," "expecting," or "considering."

[0092] The terms “connected,” “coupled,” or any variation thereof, mean any direct or indirect connection or coupling between two or more elements, and may include the presence of one or more intermediate elements between two elements that are “connected” or “coupled” with each other. The coupling or connection between elements may be physical, logical, or a combination thereof. For example, “connection” may be reinterpreted as “access.” As used in this disclosure, two elements may be considered to be “connected” or “coupled” with each other using at least one of one or more wires, cables, and printed electrical connections, and, in some non-limiting and non-exclusive examples, electromagnetic energy having wavelengths in the radio frequency domain, microwave domain, and optical (both visible and invisible) domain.

[0093] In this disclosure, the phrase "based on" does not mean "based solely on" unless otherwise specified. In other words, the phrase "based on" means both "based solely on" and "based at least on."

[0094] Any reference to elements using the designations “first,” “second,” etc., as used in this disclosure does not generally limit the quantity or order of those elements. These designations may be used in this disclosure as a convenient way to distinguish between two or more elements. Accordingly, references to the first and second elements do not imply that only two elements may be employed, or that the first element must precede the second element in any way.

[0095] Where the terms “include,” “including,” and variations thereof are used in this disclosure, these terms are intended to be inclusive, as is the term “comprising.” Furthermore, the term “or” as used in this disclosure is not intended to mean exclusive OR.

[0096] In this disclosure, if articles are added through translation, such as a, an, and the in English, this disclosure may include the fact that the noun following these articles is plural.

[0097] In this disclosure, the term "A and B are different" may mean "A and B are different from each other." The term may also mean "A and B are each different from C." Terms such as "separate" and "combine" may be interpreted similarly to "different."

[0098] 10...Device, 11...Input unit, 12...Speech history storage unit, 13...Graph calculation unit, 14...Topic detection unit, 15...Extraction unit, 16...Response generation unit.

Claims

1. A device comprising: a graph calculation unit that generates relational information showing the relationships between multiple words based on general knowledge and links the user to the relational information based on information about the user's past utterances; a topic detection unit that detects information about a topic based on information about the user's current utterances; and an extraction unit that acquires information about related topic words indicating related topics based on the topic information and the relational information, and outputs information about the related topic words.

2. The apparatus according to claim 1, wherein the relational information is a knowledge graph including a plurality of entities and relations indicating the relationships between the plurality of entities.

3. The apparatus according to claim 2, wherein the extraction unit narrows down the knowledge graph based on information relating to the topic.

4. The apparatus according to claim 3, wherein the extraction unit calculates the degree of relevance between the user's node and other nodes based on the vector distance of the knowledge graph, and obtains information about the related topic words based on the degree of relevance.

5. The apparatus according to claim 1, wherein the topic detection unit extracts information relating to the topic based on information relating to the user's most recent past and present utterances.

6. A method comprising: generating relational information indicating the relationships between multiple words based on general knowledge, and linking the user to the relational information based on information about the user's past utterances; detecting topical information based on information about the user's current utterances; and obtaining related topical words indicating related topics based on the topical information and the vectorized relational information, and outputting the related topical words.