Text graph creation device
The text graph creation device addresses the challenge of providing direct answers by structuring information in a form understandable by computers, enabling accurate representation and response to user queries.
Patent Information
- Application Number
- JP2025116907
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2025-07-10
- Publication Date
- 2026-01-20
- Estimated Expiration
- 2045-07-10
AI Technical Summary
Existing question and answer systems struggle to provide direct answers to user queries when multiple answers are long, as users find it tedious to check through lengthy responses, necessitating a data structure that accurately represents information in a form understandable by computers.
A text graph creation device that divides sentences into units, analyzes word dependencies, converts words and phrases into vectors, and connects nodes based on similarity to create a sentence graph that accurately represents information.
Enables the creation of a text graph that accurately expresses user queries in a form understandable by computers, facilitating the provision of direct answers to user questions.
Smart Images

Figure 0007802318000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a text graph creation device that creates a text graph, which is a data structure that represents text information, and a question and answer system that uses the text graph created by the text graph creation device to present search results that match a user's search query. [Background technology]
[0002] Organizations of a certain size, such as corporations and public institutions, have help desk departments that handle inquiries from internal employees and staff, as well as external customers and residents. Help desks often accumulate frequently asked questions (FAQ) data that compiles past inquiries and answers. Hereinafter, data including questions and answers, such as FAQ data, will be referred to as "QA data." In recent years, generative AI (artificial intelligence) has also been used to generate QA data from internal documents of organizations.
[0003] The applicants have already developed the question and answer system described in Patent Document 1 in order to present appropriate answers from Q&A data to new questions. The question and answer system of Patent Document 1 can accurately present answers in the order that is thought to be the content desired by the user. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] Patent No. 6770283 Summary of the Invention [Problem to be solved by the invention]
[0005] However, when the multiple answers presented are long, some users find it tedious to check them. Such users want a direct answer to their question. In order for a computer to estimate a direct answer to a user's question, it needs a data structure that accurately represents the information in each Q&A data set, including the user's question, in a form that the computer can understand.
[0006] The present invention has been made in view of the above-mentioned problems, and its object is to provide a text graph creation device that can create a text graph that accurately expresses information about each QA data item, including what the user wants to know, in a form that can be understood by a computer. of The purpose is to provide. [Means for solving the problem]
[0007] To achieve the aforementioned objectives Book The invention includes a division unit that divides a document containing one or more sentences into sentence units, a division unit that analyzes dependencies between words in the sentences and divides them into triples, each triple being a set of one predicate phrase and two noun phrases, and 1 predicate phrase and One noun phrase a conversion unit that converts the descriptive words and the noun phrases contained in the triples and the fragments into vectors, respectively; and a sentence graph creation unit that uses the noun phrases as nodes, connects the nodes based on the similarity between the vectors, and creates a sentence graph, which is a data structure that represents information about the sentence.
[0008] In the first aspect of the present invention, the group creating unit creates a first element. predicate phrase Depends on noun phrase The second element is a pre-descriptive phrase, and the third element is a related phrase of the noun phrase. triple and, First element of predicate phrase Depends on noun phrase , Second element The pre-descriptive phrase, Third elementis a related phrase of the previous descriptive phrase triple and, First element of predicate phrase Related words of, Second element The pre-descriptive phrase, Third element is a related phrase of the previous descriptive phrase triple and may be created.
[0009] Further, the group creation unit in the first invention First element of predicate phrase Depends on noun phrase , Second element is a pre-descriptive phrase Fragment and, First element of Related words of predicate words , Second element The above predicate phrase Let's say Fragment and may be created.
[0010] In addition, in the first invention, when the first element or the third element is a core word included in a noun phrase, the group creation unit may replace the first element or the third element with the noun phrase including the core word.
[0011] Furthermore, the sentence graph creation unit in the first invention may connect the nodes related to the vectors whose similarity has a value equal to or greater than a predetermined threshold, treat one of the triples or fragments as a first set and the other triple or fragment as a second set, and connect the node related to the noun phrase of the first set to the node related to the noun phrase of the second set when the similarity between the noun phrase of the first set and the antecedent descriptive phrase of the second set has a value equal to or greater than a predetermined threshold, and connect the node related to the noun phrase of the first set to the node related to the noun phrase of the second set when the similarity between the antecedent descriptive phrase of the first set and the noun phrase of the second set has a value equal to or greater than a predetermined threshold. [Effects of the Invention]
[0013] According to the present invention, a text graph creation device can create a text graph that accurately expresses information about each QA data item, including what the user wants to know, in a form that can be understood by a computer. of We can provide it. [Brief explanation of the drawings]
[0014] [Figure 1] Overview of the question-answering system [Figure 2] Block diagram showing the functions of the question-answering system [Figure 3] An example of QA data [Figure 4] A diagram showing an example of a text graph [Figure 5] Flowchart showing the processing flow of the question and answer system [Figure 6] A diagram explaining the user search query reception process by the reception unit. [Figure 7] FIG. 10 is a diagram illustrating the process of creating an estimated search query by the estimation unit. [Figure 8] FIG. 10 is a diagram illustrating a process for determining extraction keywords performed by an extraction unit. [Figure 9] A flowchart showing the flow of an extraction data set creation process performed by an extraction unit. [Figure 10] A diagram explaining the answer-format sentence creation process by the estimation unit. [Figure 11] FIG. 10 is a diagram illustrating a classification keyword determination process performed by a classification unit. [Figure 12] A flowchart showing the flow of a first extracted data set classification process performed by a classification unit. [Figure 13] FIG. 10 is a diagram illustrating a detection result creation process performed by a result creation unit. [Figure 14] A diagram showing an example of a search result sentence [Figure 15] A diagram showing an overview of a text graph creation device [Figure 16] Block diagram showing the functions of the text graph creation device [Figure 17] A diagram showing an example of part-of-speech tags and dependency labels. [Figure 18] Flowchart showing the process flow of the text graph creation device [Figure 19] 10 is a flowchart showing the flow of a group creation process performed by a group creation unit. [Figure 20] A diagram showing an example of the result of dependency analysis [Figure 21] Diagram showing an example of triples and fragments DETAILED DESCRIPTION OF THE INVENTION
[0015] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The following describes in detail embodiments of the present invention with reference to the accompanying drawings. A first embodiment will be described as a question and answer system, and a second embodiment will be described as a text graph creation device.
[0016] First Embodiment Fig. 1 is a diagram showing an overview of a question and answering system. As shown in Fig. 1, the question and answering system 1 is composed of a server 2, a user terminal 3 connected to the server 2 via a network 5, and a first LLM (Large Language Models) server 4a and a second LLM server 4b connected to the server 2 via the network 5. The network 5 is, for example, the Internet.
[0017] The server 2 is a general-purpose information processing device, such as a physical server located in a data center or a virtual server provided by a cloud service provider. The server 2 has a processor 21, a memory 22, a storage device 23, an output device 24, an input device 25, and a communication device 26, which are connected via a bus 27. The processor 21 is a CPU (Central Processing Unit) or the like, and reads a computer program stored in advance in the storage device 23 or the like into the memory 22 and sequentially executes a plurality of instructions. The memory 22 is a volatile memory such as a semiconductor memory, and is a storage device to and from which the processor 21 can directly read and write data.
[0018] The storage device 23 is a non-transitory storage medium readable by an information processing device, such as a hard disk drive, solid state drive, or USB (Universal Serial Bus) memory, and stores computer programs and data. The output device 24 is a liquid crystal display, an organic EL display, a speaker, or the like, and outputs data according to instructions from the processor 21. The input device 25 is a mouse, keyboard, touch panel, microphone, or the like, and receives instructions from a user and inputs data. The communication device 26 is a wireless LAN (Local Area Network) device, a wired LAN cable, or the like, and transmits and receives data to and from other information processing devices wirelessly or via a wire.
[0019] Like the server 2, the user terminal 3 is a general-purpose information processing device, such as a notebook PC (short for "personal computer"), desktop PC, smartphone, or tablet terminal. The user terminal 3 has a processor 31, memory 32, storage device 33, output device 34, input device 35, and communication device 36, which are connected via a bus 37. The processor 31 to bus 37 of the user terminal 3 are similar to the processor 21 to bus 27 of the server 2, and therefore detailed description thereof will be omitted.
[0020] The first LLM server 4a and the second LLM server 4b are servers equipped with large-scale language models used in the field of natural language processing. Large-scale language models are language models constructed by learning large amounts of data using deep learning. The first LLM server 4a and the second LLM server 4b are generative AI (artificial intelligence) servers that generate response sentences in response to instruction sentences (hereinafter referred to as "prompts"), such as ChatGPT (OpenAI), Gemini (Google), Claude (Anthropique), and Copilot (Microsoft). Hereinafter, the first LLM server 4a is referred to as a generative AI server capable of executing complex tasks with high accuracy, and the second LLM server 4b is referred to as a generative AI server with high processing speed and low usage fees.
[0021] 2 is a block diagram showing the functions of the question and answering system 1. The server 2 has the functions of the storage unit 41, estimation unit 43, extraction unit 44, classification unit 45, and result creation unit 46 of the question and answering system 1. The user terminal 3 has the functions of the reception unit 42 and presentation unit 47 of the question and answering system 1.
[0022] The storage unit 41 stores Q&A data including pairs of question sentences and answer sentences. The storage unit 41 also stores a sentence graph, which is a data structure that represents sentence information related to the Q&A data. A sentence graph is a graph structure that represents "entities" such as people, places, and things and the relationships between them, and has a one-to-one correspondence with the Q&A data.
[0023] The reception unit 42 receives input of a user search query from a user. The reception unit 42 may receive the user search query by text input or by voice input. In the case of voice input, the reception unit 42 converts the voice data into text data (character data) using a known voice recognition technology.
[0024] The estimation unit 43 estimates the information desired by the user from the user search statement and creates an estimated search statement. The estimation unit 43 also estimates the format of an answer to the estimated search statement, leaving blank any items that require fact-checking, and creates an answer-style sentence. The answer-style sentence is a sentence in the format of an answer to the estimated search statement, leaving blank any items that require fact-checking, such as the amount, name, and regulations.
[0025] The extraction unit 44 refers to the storage unit 41, extracts Q&A data based on at least the estimated search query, and creates an extracted dataset. A dataset means a collection of one or more data of the same type. The extracted dataset is a collection of one or more extracted Q&A data.
[0026] The classification unit 45 refers to the memory unit 41 as necessary and classifies the extracted datasets created by the extraction unit 44 into at least either answer candidate datasets that are likely to contain an answer to the estimated search query, or related datasets other than the answer candidate datasets.
[0027] The result creation unit 46 references the storage unit 41 as necessary and creates search result sentences for the estimated search query based on at least a part of the answer candidate data set. The search result sentences contain answers to the questions the user wants to know.
[0028] The presentation unit 47 presents the search result sentences created by the result creation unit 46 to the user. The presentation unit 47 may output the search result sentences as text or as audio. In the case of audio output, the presentation unit 47 converts text data (character data) into audio data using a known voice synthesis technique.
[0029] In the above description, the server 2 includes the memory unit 41, the estimation unit 43, the extraction unit 44, the classification unit 45, and the result creation unit 46, and the user terminal 3 includes the reception unit 42 and the presentation unit 47. However, this is not limited to this. For example, the server 2 may include only the memory unit 41, and the user terminal 3 may include the reception unit 42, the estimation unit 43, the extraction unit 44, the classification unit 45, the result creation unit 46, and the presentation unit 47. Furthermore, the question and answering system 1 may be a standalone system in which the functions of the server 2 and the user terminal 3 are implemented in a single unit. Furthermore, the question and answering system 1 may include the large-scale language model in the server 2, and not include the first LLM server 4a and the second LLM server 4b.
[0030] Fig. 3 is a diagram showing an example of QA data. The QA data 50 is data on frequently asked questions (FAQ) in a given organization or field, or data created from given information using generative AI technology. As shown in Fig. 3, the QA data 50 includes the following items: an identification number 51, a title 52, a question 53, an answer 54, and tag information 55.
[0031] The identification number 51 is a number that uniquely identifies the QA data 50. The title 52 is text data that indicates an overview of the QA data 50. The question 53 is text data that indicates the content of the question. The answer 54 is text data that indicates the content of the answer to the question 53. The tag information 55 is information that serves as a mark for organizing the QA data 50, and is a type of metadata or attribute information.
[0032] The question and answer pairs included in the QA data 50 are not limited to a one-to-one relationship, but may also have a many-to-many relationship. The QA data 50 with the identification number 51 of "1" includes three sentences in the question 53 and five sentences in the answer 54. The tag information 55 includes keywords related to the title 52, the question 53, or the answer 54.
[0033] 4 is a diagram showing an example of a sentence graph. The sentence graph 56 is created based on the QA data 50. There is a one-to-one relationship between the QA data 50 and the sentence graph 56. The sentence graph 56 uses "entities" such as people, places, and things as nodes, and the relationships between the nodes are expressed by a graph structure.
[0034] A typical knowledge graph uses not only nodes but also edges that represent the relationships between the nodes. For example, in the case of the sentence "Tokyo is the capital of Japan," in a typical knowledge graph, [Tokyo] and [Japan] are nodes, and [Capital City] is an edge that represents the relationship between these nodes. On the other hand, the sentence graph 56 in this embodiment only has information about the connections between nodes, and does not have information about edges that represent the relationship between nodes. A method for creating the sentence graph 56 will be described later in the second embodiment.
[0035] 5 is a flowchart showing the processing flow of the question and answer system. As shown in Fig. 5, the accepting unit 42 of the user terminal 3 accepts an input of a user search query from a user (step S1), and transmits the user search query to the server 2 (step S2).
[0036] 6 is a diagram illustrating the user search query reception process performed by the reception unit. The reception unit 42 of the user terminal 3 displays a user search query reception screen 60 on the output device 24, such as a liquid crystal display. The user search query reception screen 60 has a text box 61 for inputting a user search query and a question button 62 for instructing the start of a search. When the user uses the input device 25 to input a user search query in the text box 61 and presses the question button 62, the reception unit 42 of the user terminal 3 transmits the text data entered in the text box 61 to the server 2 as a user search query 63.
[0037] In the example of Figure 6, text data of "How to get a Shinkansen ticket" is entered in a text box 61. This text data is sent to the server 2 as a user search statement 63. The user search statement 63 may be one or more words, as in the example of Figure 6, or may be a sentence. The user search statement 63 in Figure 6 is "How to get a Shinkansen ticket."
[0038] Next, when the estimation unit 43 of the server 2 receives the user search statement 63 from the user terminal 3 (step S3), it estimates the information desired by the user and creates an estimated search statement (step S4).
[0039] 7 is a diagram illustrating the process of creating an estimated search statement by the estimation unit. The estimation unit 43 of the server 2 sends a prompt 71 to the first LLM server 4a (large-scale language model) to instruct it to estimate information desired by the user from the user search statement 63. The estimation unit 43 of the server 2 then receives a response statement 72 from the first LLM server 4a (large-scale language model) in response to the prompt 71, and creates an estimated search statement 73 from the response statement 72.
[0040] Prompt 71 in Figure 7 instructs the system to predict up to three things the user wants to know from user search statement 63 (= search statement entered by the user). The estimated search statements 73 in Figure 7 are, first, "How to purchase a Shinkansen ticket," second, "Procedure for reserving a Shinkansen ticket," and third, "Things to note when purchasing a Shinkansen ticket."
[0041] Next, the extraction unit 44 of the server 2 determines extraction keywords (=keywords for extracting the QA data 50) from the estimated search query 73 created in step S4 (step S5).
[0042] 8 is a diagram illustrating the extraction keyword determination process performed by the extraction unit. The extraction unit 44 of the server 2 sends a prompt 74 to the second LLM server 4b (large-scale language model) to instruct it to extract keywords from an estimated search statement 73. The extraction unit 44 of the server 2 then receives a response statement 75 from the second LLM server 4b (large-scale language model) in response to the prompt 74, and determines extraction keywords 76 from the response statement 75. The extraction keywords 76 are included in the response statement 75.
[0043] The prompt 74 in Figure 8 instructs the user to consider what keywords to use to gather information from the estimated search statement 73 (= what the user wants to know, estimated from the search statement entered by the user). The extraction keywords 76 in Figure 8 are the first sentence "How to purchase Shinkansen tickets," the second sentence "Procedure for reserving Shinkansen tickets," and the third sentence "Points to note when purchasing Shinkansen tickets."
[0044] Next, the extraction unit 44 of the server 2 extracts the QA data 50 from the storage unit 41 based on the extraction keywords determined in step S5, and creates an extracted data set (step S6).
[0045] 9 is a flowchart showing the flow of an extracted dataset creation process by the extraction unit. The extraction unit 44 of the server 2 extracts the first two keywords from the user search statement 63 (step S21). In the user search statement 63 of FIG. 6, the first two keywords are "Shinkansen" (bullet train) and "ticket."
[0046] Next, the extraction unit 44 searches the tag information 55 of the QA data 50 stored in the storage unit 41 using the following search condition A, and creates the search results as data set A (step S22). <Search criteria A> Meet one of the following two conditions: (A1) The tag information has cos similarity with both of the two keywords extracted from the user search sentence, and is equal to or greater than a threshold value. (A2) The tag information includes both of the two keywords extracted from the user search sentence.
[0047] Cosine similarity is a measure of the similarity between two vectors, and is the cosine value of the angle between the two vectors. Cosine similarity is calculated by dividing the inner product of two vectors by the magnitudes of the two vectors, and is a value normalized to the range of -1 to 1. The extraction unit 44 converts two keywords and tag information 55 extracted from a user search query into distributed representations (vectors) using a known document embedding model (e.g., SBERT, etc.), and calculates cosine similarity. The same applies to the calculation of cosine similarity below.
[0048] Next, the extraction unit 44 searches the tag information 55 of the QA data 50 stored in the storage unit 41 using the following search condition B, and creates the search results as data set B (step S23). <Search condition B> Meet one of the following two conditions: (B1) The tag information has a cos similarity with only one of the two keywords extracted from the user search sentence that is equal to or greater than a threshold value. (B2) The tag information includes only one of two keywords extracted from the user search sentence.
[0049] Next, the extraction unit 44 selects the first two keywords from the extraction keywords 76 (step S24). If the extraction keywords 76 include three sentences as in Fig. 8, the first two keywords are extracted for each sentence. In the case of the extraction keywords 76 in Fig. 8, the first two keywords for all three sentences are "Shinkansen" (bullet train) and "ticket."
[0050] Next, the extraction unit 44 searches the tag information 55 of the QA data 50 stored in the storage unit 41 using the following search criteria C, and creates the search results as dataset C (step S25). If the extraction keywords 76 include multiple sentences, the extraction unit 44 repeats the search as many times as the number of sentences included in the extraction keywords 76, combines all the search results, and creates the dataset C. <Search condition C> Meet one of the following two conditions: (C1) The tag information has cos similarity with both of the two keywords selected from the extraction keywords that is equal to or greater than a threshold value. (C2) The tag information includes both of two keywords selected from the extraction keywords.
[0051] Next, the extraction unit 44 searches the tag information 55 of the QA data 50 stored in the storage unit 41 using the following search criteria D, and creates the search results as a dataset D (step S26). If the extraction keywords 76 include multiple sentences, the extraction unit 44 repeats the search as many times as the number of sentences included in the extraction keywords 76, combines all the search results, and creates the dataset D. <Search condition D> Meet one of the following two conditions: (D1) The tag information has a cos similarity with only one of two keywords selected from the extraction keywords that is equal to or greater than a threshold value. (D2) The tag information includes only one of two keywords selected from the extraction keywords.
[0052] Next, the extraction unit 44 combines the data sets A and C into one to create a first extracted data set (step S27), and also combines the data sets B and D into one to create a second extracted data set (step S27).
[0053] The first extracted dataset is extracted using "both of the two keywords" of search condition A and search condition C, i.e., an AND condition. On the other hand, the second extracted dataset is extracted using "only one of the two keywords" of search condition B and search condition D, i.e., an OR condition. Therefore, it is considered that the first extracted dataset is more likely to include Q&A data 50 having information that the user wants to know than the second extracted dataset.
[0054] In the above description, the extraction unit 44 extracted the QA data 50 based on both the user search sentence 63 and the estimated search sentence 73 (extraction keywords 76), but the QA data 50 may be extracted based on only the estimated search sentence 73.
[0055] Returning to the explanation of Fig. 5, the estimation unit 43 of the server 2 next estimates the format of a response that leaves blank the contents that need to be confirmed for the estimated search statement 73, and creates a response-format sentence (step S7).
[0056] 10 is a diagram illustrating the process of creating an answer-format sentence by the estimation unit. The estimation unit 43 of the server 2 sends a prompt 81 to the first LLM server 4a (large-scale language model) instructing it to estimate the format of an answer by leaving blank any content that needs to be fact-checked for the estimated search statement 73. The extraction unit 44 of the server 2 then receives a response sentence 82 from the first LLM server 4a (large-scale language model) in response to the prompt 81, and creates an answer-format sentence 83 from the response sentence 82.
[0057] Prompt 81 in Figure 10 instructs the user to predict up to three possible answer formats for estimated search statement 73, with the contents requiring fact-checking left blank. More specifically, prompt 81 in Figure 10 instructs the user to substitute "[---]", i.e., leave the contents requiring fact-checking blank, among the answer formats for estimated search statement 73. Answer format sentences 83 in Figure 10 are: first, "Shinkansen tickets can be purchased at [---]," second, "Shinkansen ticket reservations can be made from [---]," and third, "Shinkansen tickets can be purchased from [---] days in advance."
[0058] Next, the classification unit 45 of the server 2 determines classification keywords from the reply-format sentence 83 created in step S7 (step S8).
[0059] 11 is a diagram illustrating the classification keyword determination process performed by the classification unit. The classification unit 45 of the server 2 sends a prompt 84 to the second LLM server 4b (large-scale language model) to instruct it to extract keywords from a response-form sentence 83. The classification unit 45 of the server 2 then receives a response sentence 85 from the second LLM server 4b (large-scale language model) in response to the prompt 84, and determines classification keywords 86 from the response sentence 85. The classification keywords 86 are included in the response sentence 85.
[0060] The prompt 84 in Figure 11 instructs the user to think about what keywords to use to gather information from the answer-style sentence 83 (= expressions expected to be included in the FAQ). The classification keywords 86 in Figure 11 are "Shinkansen ticket purchase" for the first sentence, "Shinkansen ticket reservation" for the second sentence, and "Shinkansen ticket available for purchase" for the third sentence.
[0061] Next, the classification unit 45 of the server 2 classifies the first extracted dataset into answer candidate datasets and related datasets based on the classification keywords 86 and sentence graph 56 determined in step S8 (step S9).
[0062] 12 is a flowchart showing the flow of the first extracted dataset classification process by the classification unit. The classification unit 45 of the server 2 sets the variable of the classification keyword 86 to k (k=1, 2, . . . , m) and assigns 1 to k (step S31). The variable k identifies each sentence included in the classification keyword 86. In the case of the classification keyword 86 in FIG. 11, m=3.
[0063] Next, the classification unit 45 classifies the Q&A data 50 included in the first extracted data set into one of the following two types: answer candidates and related information (step S32). <Answer candidates> Both of the following conditions are met: (E1) All keywords [i] (i = 1, 2, . . . , n) included in the classification keyword [k] have a cos similarity with any node in the sentence graph that corresponds one-to-one to the QA data that is greater than or equal to a threshold. (E2) Similarity score s is ranked 1st to 3rd. <Related Information> Q&A data other than answer candidates
[0064] In (E1), "all keywords [i] (i = 1, 2, ..., n) included in classification keyword [k]" means, in the case of the first sentence of classification keyword 86 in Figure 11 (= classification keyword [1]), the three keywords (n = 3) are keyword [1] = "Shinkansen", keyword [2] = "ticket", and keyword [3] = "purchase".
[0065] (E1) "Any node in the sentence graph 56 that corresponds one-to-one to the QA data 50" means, in the case of the sentence graph 56 in Figure 4, the 35 sentences attached to each node (point), such as "Private," "In use," and "For business use."
[0066] For example, in the case of the first sentence of the classification keyword 86 in Fig. 11, the classification unit 45 calculates the cosine similarity between each of the keywords [i], "Bullet train," "ticket," and "purchase," and all nodes in the sentence graph 56 that correspond one-to-one to the QA data 50. Then, the classification unit 45 stores the maximum value of the cosine similarity for each keyword [i] in the memory 22 or the storage device 23. If the maximum value of the cosine similarity for all keywords [i] is equal to or greater than a threshold, the classification unit 45 determines that the QA data 50 satisfies the condition (E1).
[0067] The similarity score s in (E2) is defined as follows: If the number of keywords is n (n is a natural number greater than or equal to 2), the keyword variable is i (i = 1, 2, . . . , n), the distance of the shortest path between keyword [i] and keyword [i+1] (the distance between adjacent nodes is 1) is p(i), the maximum cosine similarity of each keyword [i] is c(i), and the set of c(i) is C, then the similarity score s is defined by the following formula.
[0068]
number
[0069] For example, in the case of the first sentence of classification keyword 86 in Fig. 11, the distance p(1) of the shortest path between keyword [1] = "Shinkansen" and keyword [2] = "ticket" is p(1) = 2, with reference to Fig. 4. Also, the distance p(2) of the shortest path between keyword [2] = "ticket" and keyword [3] = "purchase" is p(2) = 1, with reference to Fig. 4.
[0070] Next, the classification unit 45 assigns k+1 to the variable k of the classification keyword 86 (step S34), and checks whether the value of the variable k after the assignment is equal to or less than m (= the number of sentences of the classification keyword 86) (step S34). If the value of the variable k is equal to or less than m (Yes in step S34), the classification unit 45 repeats from step S32, and if the value of the variable k is greater than m (No in step S34), the classification unit 45 proceeds to step S35.
[0071] Next, the classification unit 45 combines all the QA data 50 classified as answer candidates to create an answer candidate data set (step S35). The classification unit 45 also combines all the QA data 50 classified as related information to create a related information data set (step S36).
[0072] Returning to the description of Fig. 5, the result creating unit 46 then sorts the QA data 50 included in the answer candidate dataset, the related information dataset, and the second extracted dataset for each dataset (step S10).
[0073] The result creation unit 46 sorts the QA data 50 for each dataset in descending order of values based on the cosine similarity between the three, i.e., the user search statement 63, the estimated search statement 73, and the answer-format sentence 83, and the QA data 50 included in the answer candidate dataset, the related information dataset, and the second extracted dataset. For one QA data 50, the result creation unit 46 calculates the cosine similarity for one user search statement 63, one estimated search statement 73, and three answer-format sentences 83. Therefore, five cosine similarities are calculated for one QA data 50. For example, the result creation unit 46 sets the maximum value, simple sum, weighted sum, product, etc. of the five cosine similarities as a value based on the cosine similarity, and sorts the QA data 50 in descending order of these values.
[0074] Furthermore, the result creation unit 46 may sort the QA data 50 for each dataset in descending order of a value based on the cosine similarity between any one or two of the user search statements 63, the estimated search statements 73, and the answer-format sentences 83 and the QA data 50 included in the answer candidate dataset, the related information dataset, and the second extracted dataset. That is, the result creation unit 46 sorts the QA data 50 included in the answer candidate dataset, the related information dataset, and the second extracted dataset based on at least one of the user search statements 63, the estimated search statements 73, and the answer-format sentences 83.
[0075] Next, the result creation unit 46 of the server 2 creates a search result sentence for the estimated search sentence 73 based on the answer candidate dataset, the related information dataset, and the second extracted dataset (step S11).
[0076] 13 is a diagram illustrating the detection result creation process performed by the result creation unit. The result creation unit 46 of the server 2 sends a prompt 87 to the first LLM server 4a (large-scale language model) instructing it to provide an answer to the estimated search statement 73 using at least a part of the answer candidate dataset as reference information. The result creation unit 46 of the server 2 then receives a response statement 88 from the first LLM server 4a (large-scale language model) in response to the prompt 87, and creates a search result statement from the response statement 88.
[0077] The prompt 87 in Figure 13 instructs the system to provide an appropriate answer based on the estimated search statement 73 (= what the user wants to know) and reference information (= the top three Q&A data 50 from the answer candidate dataset, related information dataset, and second extracted dataset). The response statement 88 in Figure 13 begins with "The method for purchasing Shinkansen tickets can be summarized as follows" and includes answer content divided into five items. The five items are "1. Please purchase using a corporate card," "2. The following purchase options are available:," "3. Points to note:," "4. When paying:," and "5. If reservation changes occur frequently:." These five items are thought to be what the user wants to know.
[0078] FIG. 14 is a diagram showing an example of a search result sentence. The result creation unit 46 of the server 2 creates a search result sentence 89 including the content of a response sentence 88 and the alignment results of the answer candidate dataset, the related information dataset, and the second extracted dataset. In FIG. 14, range 91 represents the content of the response sentence 88, range 92 represents the alignment results of the answer candidate dataset, range 93 represents the alignment results of the related information dataset, and range 94 represents the alignment results of the second extracted dataset. When the user clicks [···] in range 92, range 93, or range 94 using the input device 25, the title 52, question sentence 53, and answer sentence 54 of the Q&A data 50 are displayed.
[0079] Next, the result creation unit 46 of the server 2 transmits the search result sentence 89 created in step S11 to the user terminal 3 (step S12). Upon receiving the search result sentence 89 from the server 2 (step S13), the user terminal 3 presents the search result sentence 89 to the user (step S14).
[0080] As described above, the question and answering system 1 includes a storage unit 41 that stores Q&A data including pairs of question and answer sentences, a receiving unit 42 that receives a user search query from a user, an estimation unit 43 that estimates the information the user desires from the user search query and creates an estimated search query, and also estimates the format of an answer that leaves blank fields for content that needs to be fact-checked for the estimated search query and creates an answer-format sentence, an extraction unit 44 that extracts Q&A data based on at least the estimated search query and creates an extracted dataset, a classification unit 45 that classifies the extracted dataset into either an answer candidate dataset that is likely to contain at least an answer to the estimated search query or a related dataset other than the answer candidate dataset, a result creation unit 46 that creates search result sentences for the estimated search query based on at least a portion of the answer candidate dataset, and a presentation unit 47 that presents the search result sentences to the user. This allows the question and answering system 1 to present search result sentences that include direct answers to the user's questions.
[0081] The estimation unit 43 sends a first prompt to the large-scale language model instructing it to estimate information desired by the user from the user search query, receives a first response sentence from the large-scale language model in response to the first prompt, and creates an estimated search query from the first response sentence. The estimation unit 43 also sends a second prompt to the large-scale language model instructing it to estimate an answer format for the estimated search query, leaving fields for items that require fact-checking blank, receives a second response sentence from the large-scale language model in response to the second prompt, and creates the answer-format sentence from the second response sentence. This makes it possible to estimate what the user wants to know and the format of the answer to that item. In particular, because the answer format is estimated to leave fields for items that require fact-checking blank, it is possible to avoid the inclusion of incorrect information.
[0082] The result creation unit 46 also sends a third prompt to the large-scale language model instructing it to provide an answer to the estimated search query using at least a part of the answer candidate dataset as reference information, receives a third response sentence from the large-scale language model in response to the third prompt, and creates a search result sentence from the third response sentence. This allows the search result sentence to be created based on Q&A data that is likely to include an answer to the estimated result of what the user wants to know.
[0083] The storage unit 41 also stores a sentence graph of the QA data. The extraction unit 44 sends a fourth prompt to the large-scale language model instructing it to extract keywords from the estimated search sentence, receives a fourth response sentence from the large-scale language model in response to the fourth prompt, searches the QA data using first search criteria based on the extraction keywords included in the fourth response sentence, and creates a first extracted dataset from the search results. The classification unit 45 sends a fifth prompt to the large-scale language model instructing it to extract keywords from answer-style sentences, receives a fifth response sentence from the large-scale language model in response to the fifth prompt, and classifies the first extracted dataset into an answer candidate dataset and a related dataset based on the classification keywords and sentence graph included in the fifth response sentence. This enables accurate classification of the answer candidate dataset and the related dataset.
[0084] The extraction unit 44 also searches for Q&A data using second search criteria based on the extraction keywords included in the fourth response sentence, and creates a second extracted dataset from the search results. The result creation unit 46 includes some of the Q&A data included in the answer candidate dataset, the related dataset, and the second extracted dataset in the reference information for the third prompt. This makes it possible to create search result sentences that include alternative answers, even if the answer candidate dataset alone cannot create search result sentences that include sufficient answers.
[0085] Second Embodiment FIG. 15 is a diagram showing an overview of a text graph creation device. Like the server 2 in the first embodiment, the text graph creation device 10 is a general-purpose information processing device, such as a physical server located in a data center, a virtual server provided by a cloud service provider, a notebook PC, or a desktop PC. The text graph creation device 10 has a processor 11, a memory 12, a storage device 13, an output device 14, an input device 15, and a communication device 16, which are connected via a bus 17. The processor 11 to the bus 17 of the text graph creation device 10 are similar to the processor 11 to the bus 17 of the server 2, and therefore a detailed description thereof will be omitted. Note that the server 2 may function as the text graph creation device 10.
[0086] 16 is a block diagram showing the functions of a sentence graph creation device 10. The sentence graph creation device 10 has the functions of a division unit 6, a set creation unit 7, a conversion unit 8, and a sentence graph creation unit 9. The sentence graph creation device 10 inputs sentences corresponding to the question sentence 53 and the answer sentence 54 of the QA data 50 illustrated in FIG. 3, and outputs a sentence graph 56 illustrated in FIG. 4.
[0087] The processing by the sentence graph creation device 10 in the second embodiment is executed before the processing by the question and answering system 1 in the first embodiment. Part of the processing by the sentence graph creation device 10 is executed using an open-source Japanese natural language processing library. The natural language processing library is, for example, "GiNZA" (https: / / megagonlabs.github.io / ginza / , retrieved July 2, 2025).
[0088] FIG. 17 is a diagram showing examples of part-of-speech tags and dependency labels. The part-of-speech tag 100 is a part-of-speech tag defined by Universal Dependencies. The dependency label 101 is a label indicating the dependency relationship between words. The sentence graph creation device 10 analyzes the dependency of a sentence using "GiNZA" and assigns a part-of-speech tag 100 and a dependency label 101 to each word. More specifically, the sentence graph creation device 10 assigns a part-of-speech tag 100 to each word and assigns a directional dependency label 101 between two words to which the part-of-speech tag 100 is assigned. Since words other than the root of a sentence depend on one other word, the entire sentence has a tree structure. On the other hand, the word assigned to the root of a sentence is the only word in the sentence that does not depend on other words. In the following description, the sentence graph creation device 10 is described as using the part-of-speech tag 100 and dependency label 101 shown in FIG. 17.
[0089] Returning to the explanation of Fig. 16, the dividing unit 6 divides a text containing one or more sentences into sentence units. A "sentence" is a group of one or more words, and is generally separated by a period "." A "text" is something that contains one or more sentences.
[0090] The pair creation unit 7 analyzes dependencies between words in a sentence and creates pairs of multiple words. More specifically, the pair creation unit 7 creates triples, which are pairs of one predicate phrase and two noun phrases, and fragments, which are pairs of one predicate phrase and one noun phrase.
[0091] Predicate phrases are predicates, phrases that function like predicates, and the like, and include at least words and phrases whose dependency label 101 is the root of a sentence and words and phrases whose part-of-speech tag 100 is a verb. Also, predicate phrases may include some or all of words and phrases whose dependency label 101 is a conjunction (cop), a complement (ccomp), an adverbial clause modifier (advcl), etc., or may include other words and phrases.
[0092] Noun-like phrases are nouns and phrases that function like nouns, and include at least words whose dependency label 101 is a subject noun (nsubj) and words whose dependency label 101 is a noun modifier (nmod). Furthermore, noun-like phrases may include some or all of words and phrases such as words whose dependency label 101 is an object (obj), an oblique noun (obl), and an adverbial modifier (advmod), as well as noun chunks, which are groups of two or more words that function like a noun, or may include other words and phrases. Note that some words and phrases may be considered both predicate phrases and noun-like phrases.
[0093] The conversion unit 8 converts the predicate phrases and noun phrases contained in the triples and fragments into vectors. The ja-ginza model of GiNZA v4 and v5 uses chiVe as a dataset of word vectors. chiVe is a static dataset of word vectors consisting of 300 dimensions. The conversion unit 8 may also perform vectorization using a SentenceBERT model (SBERT) or the like.
[0094] The sentence graph creation unit 9 creates a sentence graph, which is a data structure that represents sentence information, by connecting nodes based on the similarity between vectors, with noun-like words and phrases as nodes. The sentence graph creation unit 9 uses, for example, cosine similarity as the similarity between vectors.
[0095] Fig. 18 is a flowchart showing the processing flow of the sentence graph creation device. In the flowchart of Fig. 18, the sentence graph creation device 10 creates a single sentence graph 56 for each single QA data 50, extracts tag information 55 of the QA data 50, and vectorizes each sentence included in the question sentence 53 and answer sentence 54 of the QA data 50.
[0096] As shown in FIG. 18, the division unit 6 of the sentence graph creation device 10 inputs a sentence to be processed and divides the input sentence into sentence units (step S41). In the case of the QA data 50 of FIG. 3, the question sentence 53 and the answer sentence 54 are the sentences to be processed. The division unit 6 searches for periods from the question sentence 53 and the answer sentence 54 and identifies a sentence for each period. Since the question sentence 53 of FIG. 4 does not have a period, the division unit 6 identifies one sentence from the question sentence 53. Furthermore, since the answer sentence 54 of FIG. 4 has five periods, the division unit 6 identifies five sentences from the answer sentence 54. Note that the division unit 6 may treat the question mark "?" included in the question sentence 53 of FIG. 4 as a period and identify three sentences from the question sentence 53. The identified sentences are stored in the memory 12 as array data.
[0097] Next, the set creation unit 7 of the sentence graph creation device 10 sets the first sentence of the array data as the processing target (step S42), and stores the pair of the noun phrase and its core word included in the processing target sentence in the memory 12 (step S43). A noun phrase is a group of two or more words that functions the same as a noun in a sentence. Also, a core word is the word that has the most important meaning in a noun phrase. For example, in the case of the sentence "I ate the most popular ramen at the restaurant," the set creation unit 7 stores the pair of the noun phrase "most popular" and the core word "popular" in the memory 12. The pair of the noun phrase and its core word is used to reinforce information in the processing of step S46, which will be described later.
[0098] Next, the set creation unit 7 extracts noun-like phrases and predicate phrases from the sentence to be processed and stores them in the memory 12 as tag information 55 of the QA data 50 (step S44). The set creation unit 7 extracts relative clauses such as "desu, masu" (I am), "da, katta" (I did, I bought), attributive modifier clauses, complement clauses such as "to think, say, dekiru" (I think, say, I can), adverbial clauses such as "so, ifra" (because, when), verbs, etc. In addition, the set creation unit 7 may also supplement the tense of the predicate, for example, by changing "yomi" (to read) to "yomi ta" (I was reading), as tag information 55.
[0099] As described above in the first embodiment, the tag information 55 is used as a search keyword for the QA data 50. The set creation unit 7 extracts noun-like phrases and predicate-like phrases, which are important phrases included in the QA data 50, as the tag information 55, thereby improving the search accuracy for the QA data 50.
[0100] Next, the conversion unit 8 converts the sentence to be processed into a vector, associates it with the sentence to be processed, and stores it in the memory 12 (step S45). The vector corresponding to the sentence to be processed is used in the extraction data set creation process by the extraction unit 44 shown in FIG. 9 of the first embodiment.
[0101] Next, the set creating unit 7 creates sets (triples and fragments) made up of a plurality of words and phrases (step S46).
[0102] 19 is a flowchart showing the flow of the pair creation process by the pair creation unit 7. As shown in FIG. 19, the pair creation unit 7 of the sentence graph creation device 10 analyzes the dependency of the sentence to be processed and assigns a part-of-speech tag 100 and a dependency relationship label 101 to each word (step S61).
[0103] FIG. 20 is a diagram showing an example of a dependency analysis result. Dependency analysis result 102 is the result of analyzing the dependency of the sentence "Please purchase with the corporate card." The word "corporate card" with line number "0" has a part-of-speech tag 100 of "NOUN" (noun), a dependency label 101 of "obl" (oblique noun), and the line number of the dependent word is "3." In other words, the word "corporate card" depends on the word "purchase." Furthermore, the word "purchase" with line number "3" has a part-of-speech tag 100 of "VERB" (verb), a dependency label 101 of "ROOT" (sentence root), and the line number of the dependent word is "3." In other words, the word "purchase" does not depend on any other words.
[0104] Returning to the explanation of Fig. 19, the set creation unit 7 then creates a triple in which the first element is a noun phrase that depends on the predicate phrase, the second element is the predicate phrase, and the third element is a related phrase of the noun phrase related to the first element (step S62).
[0105] In the example of Figure 20, the "noun phrase dependent on a predicate phrase" of the first element is the word "corporate card." The word "corporate card" is a noun phrase because its dependency label 101 is "obl" (oblique noun). Also, the line number of the dependent word of the word "corporate card" is "3," so it is dependent on the word "purchase." Also, the word "purchase" is a predicate phrase because its dependency label 101 is "ROOT" (root of the sentence).
[0106] The "related phrases of the noun phrase related to the first element" of the third element are all noun modifiers related to the noun phrase related to the first element. For example, in the sentence "A student wearing a green hat is walking," the group creation unit 7 creates two triples: [student, walking, green] and [student, walking, hat]. Also, in the sentence "Meeting with a musician friend," the group creation unit 7 creates a triple: [friend, meeting, musician].
[0107] Next, the set creation unit 7 creates a triple in which the first element is a noun phrase that depends on the predicate phrase, the second element is the predicate phrase, and the third element is a related phrase of the predicate phrase related to the second element (step S63).
[0108] A related phrase of a predicate phrase is a phrase that serves as the object of the predicate phrase or a phrase related to an action, such as an object (obj), an oblique complement (obl), a noun modifier (nmod), or an adverbial clause modifier (advcl). For example, in the sentence "read a book," the grouping unit 7 determines the object "book" as a related phrase of the predicate phrase "read." In the sentence "eat in the park," the grouping unit 7 determines the oblique complement "park" as a related phrase of the predicate phrase "eat." In the sentence "it's on the desk," the grouping unit 7 determines the noun modifier "desk" as a related phrase of the predicate phrase "there." In the sentence "listen while running," the grouping unit 7 determines the adverbial clause modifier "run" as a related phrase of the predicate phrase "listen."
[0109] For example, for the sentence "I read a book," the set creation unit 7 creates a triple: [I, read, book]. Note that if the same triple has already been created, the set creation unit 7 will not create that triple again. The same applies to fragments, which will be described later. In terms of the identity of triples and fragments, the order of the first and third elements does not matter. For example, [I, read, book] and [book, read, I] are the same triple, and [book, read,] and [, read, book] are the same fragment.
[0110] Next, the set creation unit 7 creates a triple in which the first element is a related phrase of the predicate phrase related to the second element, the second element is a predicate phrase, and the third element is a related phrase of the predicate phrase related to the second element (step S64). For example, in the case of the sentence "eat lunch at the park," the set creation unit 7 creates a triple: [park, eat, meal].
[0111] Next, the set creation unit 7 creates a fragment in which the first element is a noun phrase that depends on the predicate phrase, and the second element is the predicate phrase (step S65). For example, in the case of the sentence "A man sings," the set creation unit 7 creates a fragment [man, sing,].
[0112] Next, the set creation unit 7 creates a fragment in which the second element is a predicate phrase and the third element is a related phrase of the predicate phrase related to the second element (step S66). For example, in the case of the sentence "meet in the park," the set creation unit 7 creates a fragment [, meet, park].
[0113] Next, if the first element or the third element is a core word, the set creation unit 7 replaces the first element or the third element with a noun phrase including the core word (step S67). To determine whether the first element or the third element is a core word, the set creation unit 7 uses the pair of the noun phrase and its core word stored in the above-mentioned step S43. If the first element or the third element matches a core word stored in memory 12, the set creation unit 7 replaces the first element or the third element with the noun phrase stored in memory 12 as a pair of the core word.
[0114] For example, in the case of the sentence "I ate the most popular ramen at the restaurant," the set creation unit 7 stores the noun phrase "most popular" and the core word "popular" as a pair in the memory 12 in step S43. Furthermore, the set creation unit 7 creates a triple [ramen, ate, popular] in step S62. Then, the set creation unit 7 confirms that the third element "popular" matches the core word stored in the memory 12, and replaces the third element with "most popular."
[0115] Fig. 21 is a diagram showing an example of triples and fragments. Fig. 21 visualizes a portion of triples 103a and 103b and fragments 104a and 104b created from the QA data 50 of Fig. 3. Triple 103a is a set of [purchase, less than, once], triple 103b is a set of [describe, attach, as], fragment 104a is a set of [receipt, photographed], and fragment 104b is a set of [, not required, receipt attached].
[0116] Hereinafter, triples will be collectively referred to as "triples 103," and fragments will be collectively referred to as "fragment 104." Some triples, such as triple 103a and fragment 104a, share elements with other triples 103 and fragment 104, while others, such as triple 103b and fragment 104b, are independent and do not share elements with other triples 103 and fragment 104.
[0117] 19, the sentence graph creation device 10 creates triples 103 and fragments 104 under various conditions, so that the sentence graph 56 that is finally created incorporates a wide range of information from the original sentence (=QA data 50). This method is particularly effective when the amount of sentences that form the source of the sentence graph 56 is small, such as when one sentence graph 56 is created for each QA data 50, as in this embodiment.
[0118] Returning to the explanation of Figure 18, the set creation unit 7 checks whether all sentences have been processed (step S47). If not (No in step S47), the set creation unit 7 sets the next sentence as the processing target (step S48) and repeats from step S43. If processing has been completed (Yes in step S47), the conversion unit 8 converts the noun-like phrases and predicate phrases included in the set (triple 103 and fragment 104) into vectors (step S49). For example, in the case of triple 103 [student, walk, green], the conversion unit 8 converts each of "student," "walk," and "green" into a vector, creating a total of three vectors.
[0119] Next, the sentence graph creation unit 9 treats noun-like words and phrases as nodes, connects the nodes based on the similarity between the vectors, and creates a sentence graph 56 (step S50). The sentence graph creation unit 9 connects the nodes in two ways.
[0120] In the first method, the sentence graph creation unit 9 connects nodes associated with vectors whose similarity is equal to or greater than a predetermined threshold. By the first method, noun-like phrases with similar meanings are connected in the sentence graph 56.
[0121] In the second method, the sentence graph creation unit 9 sets one triple 103 or fragment 104 as a first set, and the other triple 103 or fragment 104 as a second set. Then, if the similarity between the noun phrases in the first set and the predicate phrases in the second set is equal to or greater than a predetermined threshold, the sentence graph creation unit 9 connects the node related to the noun phrases in the first set to the node related to the noun phrases in the second set. Also, if the similarity between the predicate phrases in the first set and the noun phrases in the second set is equal to or greater than a predetermined threshold, the sentence graph creation unit 9 connects the node related to the noun phrases in the first set to the node related to the noun phrases in the second set.
[0122] For example, if the first set is a triple 103 of [student, walk, hat] and the second set is a triple 103 of [me, meet, friend], the sentence graph creation unit 9 calculates the similarity between [student] and [meet], [hat] and "meet", [walk] and [me], and [walk] and [friend]. Then, if the similarity between [student] and [meet] is equal to or greater than a predetermined threshold, the sentence graph creation unit 9 connects the nodes of [student] and [me], and [student] and [friend].
[0123] By the second method, even if noun phrases have a similarity value below a predetermined threshold, if a noun phrase in one set has a similar meaning to a predicate phrase in the other set, they are connected in the sentence graph 56. Therefore, the number of connections between nodes increases, and a sentence graph 56 is created that reflects the information of the original sentence (=QA data 50) in a multidimensional manner.
[0124] The sentence graph creation unit 9 executes the process of step S50 for all pairs of triples 103 and fragments 104 created by the set creation unit 7. Then, the sentence graph creation unit 9 stores the contents of the noun phrases (= nodes) and the connection information between the noun phrases (= nodes) as a sentence graph 56, but does not store the contents of the predicate phrases as the sentence graph 56.
[0125] Next, the sentence graph creation unit 9 transmits the tag information 55 of the QA data 50 in step S44, the sentence-unit vector in step S45, and the sentence graph 56 data in step S50 to the server 2 (step S51). The server 2 stores the data received from the sentence graph creation device 10 in the storage device 23.
[0126] As described above, the sentence graph creation device 10 includes a division unit 6 that divides a sentence containing one or more sentences into sentence units; a set creation unit 7 that analyzes dependencies between words in the sentence and creates triples 103, which are pairs of one predicate phrase and two noun phrases, and fragments 104, which are pairs of one predicate phrase and one noun phrase; a conversion unit 8 that converts the predicate phrases and noun phrases included in the triples 103 and fragments 104 into vectors; and a sentence graph creation unit 9 that creates a sentence graph, which is a data structure that represents information about a sentence, by connecting the nodes based on the similarity between the vectors, using noun phrases as nodes. The sentence graph creation device 10 can create a sentence graph that accurately represents information about each QA data 50, including what the user wants to know, in a form that can be understood by a computer. In particular, the sentence graph creation device 10 can create a sentence graph 56 that incorporates a wide range of information from the original sentence and reflects the information of the original sentence in a multidimensional manner, even when the amount of original sentence is small.
[0127] In the above explanation, the original text of the text graph 56 is the QA data 50, but the original text is not limited to the QA data 50. The text graph creation device 10 can create a useful text graph 56 when the amount of original text is small, regardless of the content of the original text.
[0128] While the preferred embodiments of the question and answer system and text graph creation device according to the present invention have been described above with reference to the accompanying drawings, the present invention is not limited to these examples. It is clear that those skilled in the art can conceive of various modifications and alterations within the scope of the technical ideas disclosed herein, and it is understood that these modifications and alterations also fall within the technical scope of the present invention. [Explanation of symbols]
[0129] 1. Question and answer system 2...Server 3...User terminal 4a………First LLM server (large-scale language model) 4b………Second LLM server (large-scale language model) 5. Network 6……Divided part 7. Group Creation Department 8...Conversion section 9...Text graph creation section 10. Text graph creation device 41……Storage section 42...Reception 43……Estimation part 44……Extraction part 45……Classification section 46...Results Creation Section 47……Presentation part 100...Part of speech tag 101...Dependency label 102...Dependency analysis result 103, 103a, 103b... Triple 104, 104a, 104b...Fragments
Claims
1. a division unit that divides a document including one or more sentences into sentence units; a set creation unit that analyzes dependencies between words in the sentence and creates triples, which are sets of one predicate phrase and two noun phrases, and fragments, which are sets of one predicate phrase and one noun phrase; a conversion unit that converts the descriptive phrases and the noun phrases included in the triples and the fragments into vectors, respectively; a sentence graph creation unit that creates a sentence graph, which is a data structure that represents information of the sentence, by treating the noun-like phrases as nodes and connecting the nodes based on the similarity between the vectors; A text graph creation device comprising:
2. The set creation unit a triple whose first element is a noun phrase dependent on a predicate phrase, whose second element is a predicate phrase, and whose third element is a related phrase of the noun phrase; a triple whose first element is a noun phrase dependent on a predicate phrase, whose second element is a predicate phrase, and whose third element is a related phrase of the predicate phrase; a triple whose first element is a relative phrase of a predicate phrase, whose second element is a predicate phrase, and whose third element is a relative phrase of the predicate phrase; Create 2. The text graph creation device according to claim 1.
3. The set creation unit a fragment whose first element is a noun phrase dependent on a predicate phrase and whose second element is a predicate phrase; a fragment whose first element is a predicate-related phrase and whose second element is a predicate-descriptive phrase; 3. The text graph creation device according to claim 2, wherein the text graph creation device creates a text graph.
4. When the first element or the third element is a core word included in a noun phrase, the set creation unit replaces the first element or the third element with the noun phrase including the core word.
4. The text graph creating device according to claim 3.
5. The sentence graph creation unit connecting the nodes related to the vectors having a similarity value equal to or greater than a predetermined threshold value; One of the triples or the fragments is designated as a first set, and the other of the triples or the fragments is designated as a second set. If the similarity between the noun phrase of the first set and the antecedent descriptive phrase of the second set is equal to or greater than a predetermined threshold, the node related to the noun phrase of the first set is connected to the node related to the noun phrase of the second set. If the similarity between the antecedent descriptive phrase of the first set and the noun phrase of the second set is equal to or greater than a predetermined threshold, the node related to the noun phrase of the first set is connected to the node related to the noun phrase of the second set.
2. The text graph creation device according to claim 1.
Citation Information
Patent Citations
Method and device for predicting emotion derived behaviors
CN118520108A
Question answering program using large amounts of comment sentences, server and method
JP2014112316A
Information Retrieval System, Information Retrieval Method, Information Retrieval Program, Knowledge Graph Generation System, Knowledge Graph Generation Method, and Knowledge Graph Generation Program
JP7686328B1
Method and system for generating a document representation
US20100228693A1
System and method for updating knowledge graph
US20210117402A1