WO2025134331A1 - 自然言語処理装置 - Google Patents
自然言語処理装置 Download PDFInfo
- Publication number
- WO2025134331A1 WO2025134331A1 PCT/JP2023/046002 JP2023046002W WO2025134331A1 WO 2025134331 A1 WO2025134331 A1 WO 2025134331A1 JP 2023046002 W JP2023046002 W JP 2023046002W WO 2025134331 A1 WO2025134331 A1 WO 2025134331A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- level
- level document
- document
- chapter
- documents
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
Definitions
- one possible method is to use machine learning to match sentences in the document (see, for example, non-patent documents 1 and 2).
- a natural language processing device includes a teacher data generation unit and an inference unit.
- the teacher data generation unit generates teacher data that indicates the correspondence between each of the chapters, sections, and terms included in a higher-level document and a lower-level document.
- the inference unit acquires the chapters and sections of a first higher-level document that includes a term as a search condition, and searches the lower-level document in the order of the chapter, section, and term of the first higher-level document according to the reference relationship between the lower-level documents based on a machine learning model generated using the teacher data, and outputs the lower-level document that corresponds to the term of the first higher-level document.
- This invention provides a natural language processing device that can search for lower-level documents that meet requirements taking into account the context of the chapters, sections, and paragraphs of the higher-level document in which the requirements are stated.
- FIG. 1 is a block diagram showing a functional configuration of a natural language processing apparatus according to an embodiment.
- FIG. 2 is a diagram showing an example of chapters, sections, and paragraphs in a higher-level document or a lower-level document according to the embodiment.
- FIG. 3 is a flowchart showing natural language processing in the natural language processing apparatus according to the embodiment.
- FIG. 4 is a flowchart showing a process of generating teacher data in the teacher data generating unit according to the embodiment.
- FIG. 5 is a diagram showing the process of generating teacher data according to the embodiment.
- FIG. 6 is a diagram showing a matrix indicating the correspondence between chapters of a higher-level document and lower-level documents according to the embodiment.
- FIG. 1 is a block diagram showing a functional configuration of a natural language processing apparatus according to an embodiment.
- FIG. 2 is a diagram showing an example of chapters, sections, and paragraphs in a higher-level document or a lower-level document according to the embodiment.
- FIG. 3 is a
- Fig. 1 is a block diagram showing the functional configuration of the natural language processing apparatus 10.
- the natural language processing device 10 of the embodiment is a device that searches for and extracts lower-level documents that correspond to (or match) requirements in a higher-level document while taking into account the context of the chapter, section, and paragraph of the higher-level document in which the requirements are written.
- a parent document is, for example, a document that lists multiple requirements.
- a child document is, for example, a document that lists the means to satisfy each of the requirements listed in a parent document.
- a higher-level document or a lower-level document includes at least one of a chapter, a section, and a clause.
- a chapter includes one or more sections.
- a section includes one or more clauses.
- a chapter represents a large division into which the entire text contained in a higher-level document or a lower-level document is divided.
- a section represents a division into which a chapter is divided.
- a clause represents a smaller division into which a section is divided.
- a "chapter" represents a sentence or meaning contained in a chapter
- a "section” represents a sentence or meaning contained in a section
- a "clause” represents a sentence or meaning contained in a clause.
- FIG. 2 is a diagram showing an example of chapters, sections, and terms in a higher-level document or a lower-level document.
- Higher-level document 20 or lower-level document 21 includes chapter 1 and chapter 2.
- Chapter 1 includes sections 1, 2, and 3.
- Section 1 includes terms 1, 2, and 3.
- Section 2 includes terms 1 and 2.
- Section 3 includes term 1.
- Chapter 2 includes sections 1 and 2.
- Section 1 includes terms 1 and 2.
- Section 2 includes term 1. Note that the structure and number of chapters, sections, and terms in higher-level documents and lower-level documents are not limited to those described above.
- the natural language processing device 10 includes a teacher data generation unit 11, a pre-learning generation unit 12, and an inference unit 13.
- the natural language processing device 10 further includes teacher data 14 as data, and an implication learning model 15 as a machine learning model (or a deep learning model).
- a plurality of higher-level documents 20 and a plurality of lower-level documents 21 are input to the teacher data generating unit 11 as input data.
- the teacher data generating unit 11 generates teacher data 14 using the plurality of higher-level documents 20 and the plurality of lower-level documents 21.
- the teacher data generating unit 11 determines the correspondence between each of the chapters, sections, and paragraphs included in the higher-level document 20 and the lower-level document 21, and generates a label indicating whether or not a correspondence exists. That is, the teacher data generating unit 11 determines the implication relationship between each of the chapters, sections, and paragraphs of the higher-level document 20 and the lower-level document 21, and generates a label indicating whether or not an implication relationship exists.
- the teacher data generating unit 11 generates a label indicating whether or not an implication relationship exists between each of the sentences (or sentence meanings) described in each of the chapters, sections, and paragraphs included in the higher-level document 20 and the sentences (or sentence meanings) described in the lower-level document 21.
- An implication relationship is established when, for example, if a chapter in higher-level document 20 is true, then lower-level document 21 is also true, and it is determined that an implication relationship exists between the chapter in higher-level document 20 and lower-level document 21.
- the pre-learning generation unit 12 uses a machine learning algorithm that uses as input the teacher data 14 generated by the teacher data generation unit 11 to learn the entailment relationships between each of the chapters, sections, and terms of the higher-level document 20 and the lower-level document 21, and generates an entailment relationship learning model 15 for determining the entailment relationships.
- the entailment relationship learning model 15 is a model that infers whether each of the chapters, sections, and terms of the higher-level document entails the lower-level document, and learns to make inferences.
- the inference unit 13 acquires information on the chapters and sections of the higher-level document that includes the requirement item (or clause), and extracts lower-level documents 21 that are implicated by the chapters, sections, and requirement items, in the order of chapters, sections, and requirement items, based on the implication learning model 15.
- the inference unit 13 also generates reference relationships between the multiple lower-level documents 21, in other words, sets links between the multiple lower-level documents 21, according to the implication learning model 15 or other natural language processing models.
- the inference unit 13 searches for the lower-level documents 21 in the order of chapters, sections, and requirement items of the higher-level document that includes the requirement item as a search condition (or search key), and narrows down the lower-level documents 21 according to the reference relationships between the lower-level documents 21, thereby extracting lower-level documents that correspond to (or match) the requirement items.
- the inference unit 13 then outputs inference result data 16 that includes the extracted lower-level documents.
- Fig. 3 is a flowchart showing the natural language processing executed by the natural language processing apparatus 10.
- the teacher data generation unit 11 receives multiple higher-level documents 20 and multiple lower-level documents 21 (S1).
- the teacher data generation unit 11 generates teacher data 14 using the received upper-level document 20 and lower-level document 21 (S2). The process of generating teacher data 14 will be described in detail later.
- the pre-learning generation unit 12 generates an implication relationship learning model 15 using the teacher data 14 generated by the teacher data generation unit 11 (S3).
- the inference unit 13 searches for lower-level documents that correspond to the requirement items based on the chapters, sections, and requirement items of the higher-level document that contain the requirement items as search conditions, the implication learning model 15, and the reference relationships between the lower-level documents, and outputs inference result data 16 that contains the lower-level documents extracted by the search (S4).
- the process of generating the inference result data 16 will be described in detail later.
- Fig. 4 is a flowchart showing the generation process of teacher data 14 in the teacher data generating unit 11.
- Fig. 5 is a diagram showing the state of the generation process of teacher data 14.
- Figs. 6, 7, and 8 show teacher data generated by the teacher data generating unit 11.
- Fig. 6 shows a matrix (or a table) showing the correspondence between the chapters of a higher-level document and the lower-level documents.
- Fig. 7 shows a matrix (or a table) showing the correspondence between the sections of a higher-level document and the lower-level documents.
- Fig. 6 shows a matrix (or a table) showing the correspondence between the chapters of a higher-level document and the lower-level documents.
- Fig. 7 shows a matrix (or a table) showing the correspondence between the sections of a higher-level document and the lower-level documents.
- the teacher data generation unit 11 associates the lower-level documents 21_1 to 21_n with each of the chapters, sections, and paragraphs of the higher-level documents 20_1 to 20_m. That is, the teacher data generation unit 11 generates labels indicating the respective correspondences between the chapters, sections, and paragraphs of the higher-level documents 20_1 to 20_m and the lower-level documents 21_1 to 21_n. In other words, it generates labels indicating whether or not an implication relationship exists between the chapters, sections, and paragraphs of the higher-level documents 20_1 to 20_m and the lower-level documents 21_1 to 21_n.
- the teacher data generation unit 11 associates the chapters of the higher-level documents 20_1 to 20_m with the lower-level documents 21_1 to 21_n (S11).
- a label is generated indicating whether the chapter of the higher-level document and the lower-level document correspond to each other.
- a sentence (or meaning of the sentence) in the chapter of the higher-level document implies a sentence (or meaning of the sentence) in the lower-level document
- a label is generated indicating that an implication relationship exists between the chapter of the higher-level document and the lower-level document.
- a label is generated indicating that an implication relationship does not exist between the chapter of the higher-level document and the lower-level document.
- the teacher data generation unit 11 determines whether chapter 1 of the higher-level document 20_1 and the lower-level document 21_2 correspond to each other. In other words, it determines whether chapter 1 of the higher-level document 20_1 implies the lower-level document 21_2. As shown in FIG. 6, if chapter 1 of the higher-level document 20_1 implies the lower-level document 21_2, the teacher data generation unit 11 generates a label 1 indicating that chapter 1 of the higher-level document 20_1 and the lower-level document 21_2 correspond to each other. If chapter 1 of the higher-level document 20_1 does not imply the lower-level document 21_2, it generates a label 0 indicating that chapter 1 of the higher-level document 20_1 and the lower-level document 21_2 do not correspond to each other.
- the teacher data generating unit 11 judges whether or not there is a correspondence between chapter 1 of the higher-level document 20_1 and each of the lower-level documents 21_3 to 21_n. In other words, it judges whether or not chapter 1 of the higher-level document 20_1 implies each of the lower-level documents 21_3 to 21_n. As shown in FIG. 6, when chapter 1 of the higher-level document 20_1 implies each of the lower-level documents 21_3 to 21_n, the teacher data generating unit 11 generates a label 1 indicating that chapter 1 of the higher-level document 20_1 and each of the lower-level documents 21_3 to 21_n are in a corresponding relationship.
- the teacher data generation unit 11 determines whether or not there is a correspondence between each of chapters 3 and onward of higher-level document 20_1 and each of lower-level documents 21_1 to 21_n. If each of chapters 3 and onward of higher-level document 20_1 implies each of lower-level documents 21_1 to 21_n, the teacher data generation unit 11 generates a label 1 for each of them. If each of chapters 3 and onward of higher-level document 20_1 does not imply each of lower-level documents 21_1 to 21_n, the teacher data generation unit 11 generates a label 0 for each of them.
- the teacher data generation unit 11 determines whether there is a correspondence between each of the chapters of the higher-level document 20_2 and each of the lower-level documents 21_1 to 21_n. If each of the chapters of the higher-level document 20_2 implies each of the lower-level documents 21_1 to 21_n, the teacher data generation unit 11 generates a label 1 for each of them. If each of the chapters of the higher-level document 20_2 does not imply each of the lower-level documents 21_1 to 21_n, the teacher data generation unit 11 generates a label 0 for each of them.
- the teacher data generation unit 11 determines whether each of the chapters of the higher-level documents 20_3 to 20_m corresponds to each of the lower-level documents 21_1 to 21_n, and generates a label 1 or a label 0, respectively.
- the teacher data generation unit 11 associates the nodes of the higher-level documents 20_1 to 20_m with the lower-level documents 21_1 to 21_n as shown in Figures 4 and 5 (S12).
- a label is generated indicating whether the node of the higher-level document and the lower-level document correspond to each other.
- a sentence (or meaning of the sentence) written in the node of the higher-level document implies a sentence (or meaning of the sentence) written in the lower-level document
- a label is generated indicating that an implication relationship exists between the node of the higher-level document and the lower-level document.
- the teacher data generation unit 11 determines whether or not there is a correspondence between section 1 of the higher-level document 20_1, chapter 1 and the lower-level document 21_1. In other words, it determines whether or not section 1 of the higher-level document 20_1, chapter 1 implies the lower-level document 21_1. As shown in FIG. 7, if section 1 of the higher-level document 20_1, chapter 1 implies the lower-level document 21_1, the teacher data generation unit 11 generates a label 1 indicating that there is a correspondence between section 1 of the higher-level document 20_1, chapter 1 and the lower-level document 21_1.
- section 1 of the higher-level document 20_1, chapter 1 does not imply the lower-level document 21_1, it generates a label 0 indicating that there is no correspondence between section 1 of the higher-level document 20_1, chapter 1 and the lower-level document 21_1.
- the teacher data generation unit 11 determines whether or not there is a correspondence between section 1 of the higher-level document 20_1, chapter 1 and the lower-level document 21_2. In other words, it determines whether or not section 1 of the higher-level document 20_1, chapter 1 implies the lower-level document 21_2. As shown in FIG. 7, if section 1 of the higher-level document 20_1, chapter 1 implies the lower-level document 21_2, the teacher data generation unit 11 generates a label 1 indicating that there is a correspondence between section 1 of the higher-level document 20_1, chapter 1 and the lower-level document 21_2.
- section 1 of the higher-level document 20_1, chapter 1 does not imply the lower-level document 21_2, it generates a label 0 indicating that there is no correspondence between section 1 of the higher-level document 20_1, chapter 1 and the lower-level document 21_2.
- the teacher data generating unit 11 determines whether or not there is a correspondence between section 1 of the higher-level document 20_1, chapter 1 and each of the lower-level documents 21_3 to 21_n. In other words, it determines whether or not section 1 of the higher-level document 20_1, chapter 1, implies each of the lower-level documents 21_3 to 21_n. As shown in FIG. 7, if section 1 of the higher-level document 20_1, chapter 1, implies each of the lower-level documents 21_3 to 21_n, the teacher data generating unit 11 generates a label 1 indicating that there is a correspondence between section 1 of the higher-level document 20_1, chapter 1 and each of the lower-level documents 21_3 to 21_n.
- section 2 of the higher-level document 20_1, chapter 1 does not imply each of the lower-level documents 21_1 to 21_n, it generates a label 0 indicating that there is no correspondence between section 2 of the higher-level document 20_1, chapter 1 and each of the lower-level documents 21_1 to 21_n.
- the teacher data generation unit 11 determines whether there is a correspondence between each of the sections in higher-level document 20_1, chapter 2 and each of the lower-level documents 21_1 to 21_n. If each of the sections in higher-level document 20_1, chapter 2 implies each of the lower-level documents 21_1 to 21_n, the teacher data generation unit 11 generates a label 1 for each of them. If each of the sections in higher-level document 20_1, chapter 2 does not imply each of the lower-level documents 21_1 to 21_n, the teacher data generation unit 11 generates a label 0 for each of them.
- the teacher data generating unit 11 judges whether or not there is a correspondence between Item 1 in the higher-level document 20_1, Chapter 1, Section 1 and the lower-level document 21_1. In other words, it judges whether or not Item 1 in the higher-level document 20_1, Chapter 1, Section 1 implies the lower-level document 21_1. As shown in FIG. 8, if Item 1 in the higher-level document 20_1, Chapter 1, Section 1 implies the lower-level document 21_1, the teacher data generating unit 11 generates a label 1 indicating that there is a correspondence between Item 1 in the higher-level document 20_1, Chapter 1, Section 1 and the lower-level document 21_1.
- the teacher data generating unit 11 judges whether or not there is a correspondence between Item 1 of the higher-level document 20_1, Chapter 1, Section 1 and each of the lower-level documents 21_3 to 21_n. In other words, it judges whether or not Item 1 of the higher-level document 20_1, Chapter 1, Section 1 implies each of the lower-level documents 21_3 to 21_n. As shown in FIG. 8, when Item 1 of the higher-level document 20_1, Chapter 1, Section 1 implies each of the lower-level documents 21_3 to 21_n, the teacher data generating unit 11 generates a label 1 indicating that there is a correspondence between Item 1 of the higher-level document 20_1, Chapter 1, Section 1 and each of the lower-level documents 21_3 to 21_n.
- the teacher data generating unit 11 judges whether or not there is a correspondence between the term 2 in the higher-level document 20_1, Chapter 1, Section 1 and each of the lower-level documents 21_1 to 21_n. In other words, it judges whether or not the term 2 in the higher-level document 20_1, Chapter 1, Section 1 implies each of the lower-level documents 21_1 to 21_n. As shown in FIG. 8, when the term 2 in the higher-level document 20_1, Chapter 1, Section 1 implies each of the lower-level documents 21_1 to 21_n, the teacher data generating unit 11 generates a label 1 indicating that there is a correspondence between the term 2 in the higher-level document 20_1, Chapter 1, Section 1 and each of the lower-level documents 21_1 to 21_n.
- the teacher data generation unit 11 If each of the higher-level document 20_1, Chapter 1, Section 1, Item 3 onwards does not imply each of the lower-level documents 21_1 to 21_n, the teacher data generation unit 11 generates a label 0 for each of the higher-level document 20_1, Chapter 1, Section 1, Item 3 onwards.
- Figure 9 is a flowchart showing the generation process of the inference result data 16 in the inference unit 13.
- Figure 10 is a diagram showing the generation process of the inference result data 16. It is assumed that the higher-level document 20a includes a chapter A, which includes a section B, which includes a requirement item (or a clause) C. The process of obtaining requirement item C as a search condition (or a search key) and extracting a lower-level document corresponding to requirement item C will be described below.
- the inference unit 13 obtains section B of the higher-level document 20a that contains requirement item C. Furthermore, the inference unit 13 extracts lower-level document 21b that is implied by the obtained section B from among the lower-level documents referenced by the lower-level document 21a extracted in step S21, in other words, from among the lower-level documents that have links set to the lower-level document 21a (S22). In other words, the inference unit 13 extracts lower-level document 21b that is associated with section B of the higher-level document 20a that contains requirement item C.
- the inference unit 13 extracts the sub-document 21c implied by requirement item C from among the sub-documents referenced by the sub-document 21b extracted in step S22, in other words, from among the sub-documents linked to the sub-document 21b (S23). That is, the inference unit 13 extracts the sub-document 21c associated with requirement item C. Then, the inference unit 13 outputs inference result data 16 including the extracted sub-document 21c. This completes the process of generating inference result data 16 (inference process) by the inference unit 13.
- chapter A of the higher-level document 20a containing requirement item C is obtained, and the lower-level document 21a implied by the obtained chapter A is extracted.
- section B of the higher-level document 20a containing requirement item C is obtained, and the lower-level document 21a implied by the obtained section B is extracted.
- this is not limited to this. It is also possible to first obtain chapter A and section B of the higher-level document 20a containing requirement item C, extract the lower-level document 21a implied by the obtained chapter A, and then extract the lower-level document 21b implied by the obtained section B.
- FIG. 11 is a diagram showing the generation process of the inference result data 16 from another perspective.
- the higher-level document 20a includes condition 1, which includes condition 2 and condition 3.
- Condition 2 includes requirement 1
- condition 3 includes requirement 2.
- Condition 1 corresponds to chapter A of the higher-level document 20a
- condition 2 corresponds to section B
- requirement 1 corresponds to requirement item C
- Condition 3 corresponds to another section
- requirement 2 corresponds to another requirement item.
- the inference unit 13 acquires condition 1 of the higher-level document 20a that contains requirement 1, and extracts the lower-level document 21a that is implied by the acquired condition 1. In other words, the inference unit 13 extracts the lower-level document 21a that is associated with condition 1 of the higher-level document 20a that contains requirement 1.
- the inference unit 13 obtains condition 2 of the higher-level document 20a, which includes requirement 1. Furthermore, the inference unit 13 extracts lower-level document 21b that is implied by the obtained condition 2 from among the lower-level documents referenced by the obtained lower-level document 21a, in other words, from among the lower-level documents that are linked to the lower-level document 21a. In other words, the inference unit 13 extracts lower-level document 21b that is associated with condition 2 of the higher-level document 20a, which includes requirement 1.
- the inference unit 13 extracts the sub-document 21c implied by requirement 1 from among the sub-documents referenced by the extracted sub-document 21b, in other words, from among the sub-documents linked to the sub-document 21b. That is, the inference unit 13 extracts the sub-document 21c associated with requirement 1. Then, the inference unit 13 outputs inference result data 16 including the extracted sub-document 21c. This completes the process of generating inference result data 16 (inference process) by the inference unit 13.
- the lower-level documents are searched for in the order of chapter, section, and paragraph of the higher-level document in which requirement item C (or requirement 1) is described, and the lower-level documents that meet requirement item C are extracted and output.
- the natural language processing device 10 i.e., a computer 30
- the natural language processing device 10 has a processor 31, a read only memory (ROM) 32, a random access memory (RAM) 33, an auxiliary storage device 34, and an input/output interface 35.
- the processor 31, ROM 32, RAM 33, auxiliary storage device 34, and input/output interface 35 are electrically connected to one another via a bus 36, and are capable of exchanging data and signals with one another via the bus 36.
- the processor 31 is composed of a general-purpose hardware processor including, for example, a CPU (Central Processing Unit) and a GPU (Graphical Processing Unit).
- the processor 31 controls the ROM 32, the RAM 33, the auxiliary storage device 34, and the input/output interface 35 as a whole.
- the ROM 32 is a non-volatile memory that constitutes part of the main storage device.
- the ROM 32 non-temporarily stores a startup program required when starting up the natural language processing device 10.
- the natural language processing device 10 starts up when the processor 31 executes a program in the ROM 32.
- the ROM 32 is composed of, for example, an EPROM (Erasable Programmable Read Only Memory), and stores various settings at startup in addition to the startup program.
- RAM 33 is a volatile memory that constitutes part of the main storage device. RAM 33 temporarily stores the programs necessary for the processing of processor 31 and the data necessary for executing the programs. Processor 31 executes the programs in RAM 33 to calculate the data in RAM 33 and store the results of the calculation in RAM 33.
- the auxiliary storage device 34 is composed of non-volatile memory such as a HDD (Hard Disk Drive) or SSD (Solid State Drive).
- the auxiliary storage device 34 non-temporarily stores the programs executed by the processor 31 and the data required to execute the programs.
- the processor 31 loads the programs and data in the auxiliary storage device 34 into the RAM 33 and executes the programs to perform various functions.
- the input/output interface 35 is connected to an external input device 41, an output device 42, etc., and enables input of information from the input device 41 and output of information to the output device 42.
- the input/output interface 35 may be a wired interface or a wireless interface.
- the wired interface includes a port to which a device is connected, etc.
- the wireless interface includes Bluetooth (registered trademark), WiFi (registered trademark), etc.
- the input device 41 may include a keyboard, a mouse, a touch panel, a receiving device, a disk drive, etc.
- the input device 41 is not limited to these and may include any other input device.
- the output device 42 may include a display, a transmitting device, a disk drive, etc.
- the output device 42 is not limited to these and may include any other output device.
- the input device 41 and the output device 42 may be configured as an input/output device 43 having the functions of both the input device 41 and the output device 42.
- Input data such as data relating to higher-level documents and lower-level documents, and data on the requirements of higher-level documents to be searched, is input to the teacher data generation unit 11 or the inference unit 13 via the input device 41.
- the program non-temporarily stored in the auxiliary storage device 34 is provided to the computer 30, for example, via a recording medium 44 on which the program is non-temporarily recorded and which can be read by the computer 30.
- a recording medium 44 is called a non-temporary computer-readable recording medium.
- Non-temporary computer-readable recording media include disks such as flexible disks, optical disks (CD-ROM, CD-R, DVD-ROM, DVD-R, etc.), magneto-optical disks (MO, etc.), and semiconductor memories.
- the program non-temporarily stored in the auxiliary storage device 34 is read into the auxiliary storage device 34 via the disk drive (input device 41) and the input/output interface 35 if the recording medium 44 is a disk, or via a port (input/output interface 35) if the recording medium 44 is a semiconductor memory, and is non-temporarily stored therein.
- the program may also be stored in a server on the network, downloaded from the server, and non-temporarily stored in the auxiliary storage device 34.
- the processor 31 executes the program in the ROM 32, and loads and starts the OS in the RAM 33. Under the control of the OS, the processor 31 monitors input instructions and connections to external devices. The processor 31 also sets a program area and a data area in the RAM 33 under the control of the OS. In response to an input instruction to start the natural language processing device 10, the processor 31 loads the natural language processing program from the auxiliary storage device 34 into the program area of the RAM 33, and loads data required for executing the natural language processing program from the auxiliary storage device 34 into the data area of the RAM 33. The processor 31 calculates the data in the data area according to the natural language processing program, and writes the calculation results into the data area.
- the inference unit 13 obtains information on the chapters and sections of the higher-level document, including the requirement items as search conditions, and searches and narrows down the lower-level documents in the order of chapters, sections, and requirement items of the higher-level document according to the reference relationship between the lower-level documents based on the implication relationship learning model 15 generated using the teacher data 14. This makes it possible to output a lower-level document corresponding to a requirement item that takes into account the context of the chapters, sections, and requirement items of the higher-level document that include the requirement item.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Document Processing Apparatus (AREA)
Abstract
自然言語処理装置は、教師データ生成部と、推論部とを備える。教師データ生成部は、上位文書に含まれる章、節、及び項の各々と下位文書との対応関係を表す教師データを生成する。推論部は、検索条件としての項を含む第1上位文書の章及び節を取得し、前記教師データを用いて生成された機械学習モデルに基づいて、前記下位文書間の参照関係に従い前記第1上位文書の前記章、前記節、及び前記項の順で前記下位文書に対する検索を行い、前記第1上位文書の前記項に対応する下位文書を出力する。
Description
この発明は、自然言語処理装置に関する。
複数の要件が記載された上位文書と、上位文書に記載された個々の要件を満たすための手段が記載された下位文書があるとき、上位文書に書かれた要件に対して、その要件を満たすための手段が書かれた下位文書の個所との対応関係を確認することとなる。
Jacob Devlin Ming-Wei Chang Kenton Lee Kristina Toutanova: "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding", Proceedings of NAACL HLT 2019, pages 4171-4186
Pretrained Japanese BERT models released / 日本語 BERT モデル公開インターネット<URL:https://www.nlp.ecei.tohoku.ac.jp/newsrelease/3284/>
上位文書に記載された要件に対応する箇所を下位文書から探す場合、文書中の文と文の対応づけを行う機械学習(例えば、非特許文献1、2参照)を用いる方法が考えられる。
しかし、機械学習を用いる場合、その教師データの作成において上位文書と下位文書との間に含意関係のラベル付けを行う際に、項目(あるいは、項)ごとの対応関係をラベル付けしていたために、章、節の文脈を考慮することができないという課題がある。
この発明は、上記事情に着目してなされたもので、その目的は、要件が記載された上位文書の章、節、及び項の文脈を考慮した要件を満たす下位文書の検索を行うことが可能な自然言語処理装置を提供することである。
この発明に係る一態様の自然言語処理装置は、教師データ生成部と、推論部とを備える。教師データ生成部は、上位文書に含まれる章、節、及び項の各々と下位文書との対応関係を表す教師データを生成する。推論部は、検索条件としての項を含む第1上位文書の章及び節を取得し、前記教師データを用いて生成された機械学習モデルに基づいて、前記下位文書間の参照関係に従い前記第1上位文書の前記章、前記節、及び前記項の順で前記下位文書に対する検索を行い、前記第1上位文書の前記項に対応する下位文書を出力する。
この発明によれば、要件が記載された上位文書の章、節、及び項の文脈を考慮した要件を満たす下位文書の検索を行うことが可能な自然言語処理装置が提供できる。
以下、図面を参照してこの発明に係る実施形態について説明する。以下の説明において、同一の機能及び構成を有する構成要素については、共通する参照符号を付す。
1. 実施形態の機能構成
図1を参照して、実施形態の自然言語処理装置10の機能構成について説明する。図1は、自然言語処理装置10の機能構成を示すブロック図である。
図1を参照して、実施形態の自然言語処理装置10の機能構成について説明する。図1は、自然言語処理装置10の機能構成を示すブロック図である。
実施形態の自然言語処理装置10は、上位文書の要件項目に対応(あるいは、適合)する下位文書を検索する際、要件項目が記載された上位文書の章、節、及び項の文脈を考慮しつつ下位文書を検索し抽出する装置である。
ここで、上位文書、下位文書、章、節、及び項について説明しておく。上位文書は、例えば、複数の要件が記載された文書である。下位文書は、例えば、上位文書に記載された個々の要件を満たすための手段が記載された文書である。
上位文書あるいは下位文書は、章、節、及び項の少なくともいずれか1つを含む。章は1つ以上の節を含む。節は1つ以上の項を含む。例えば、章は、上位文書あるいは下位文書に記載された文章全体をいくつかに分けた大きな区分を表す。節は、章をいくつかに分けた区分を表す。さらに、項は、節をいくつかに分けた小さな区分を表す。この明細書に記載される「章」は章が含む文あるいは文意を表し、「節」は節が含む文あるいは文意を表し、「項」は項が含む文あるいは文意を表すものとする。
図2を参照して、上位文書あるいは下位文書における章、節、及び項の構成の一例について説明する。図2は、上位文書あるいは下位文書における章、節、及び項の一例を示す図である。上位文書20あるいは下位文書21は、章1及び章2を含む。章1は、節1、節2、及び節3を含む。節1は、項1、項2、及び項3を含む。節2は、項1及び項2を含む。節3は項1を含む。章2は、節1及び節2を含む。節1は、項1及び項2を含む。節2は項1を含む。なお、上位文書及び下位文書における章、節、及び項の構成及び数は上記に限るものではない。
図1に示すように、自然言語処理装置10は、教師データ生成部11、事前学習生成部12、及び推論部13を備える。自然言語処理装置10は、さらに、データとして教師データ14、及び機械学習モデル(あるいは、深層学習モデル)として含意関係学習モデル15を備える。
教師データ生成部11には、入力データとして、複数の上位文書20と複数の下位文書21が入力される。教師データ生成部11は、複数の上位文書20と複数の下位文書21とを用いて、教師データ14を生成する。教師データ生成部11は、上位文書20に含まれる章、節、及び項の各々と下位文書21との間の対応関係を判定し、対応関係の有無を示すラベルを生成する。すなわち、教師データ生成部11は、上位文書20の章、節、及び項の各々と下位文書21との間の含意関係を判定し、含意関係が成り立つか否かを示すラベルを生成する。具体的には、教師データ生成部11は、上位文書20に含まれる章、節、及び項の各々に記載された文(あるいは、文意)毎に、下位文書21に記載された文(あるいは、文意)との間にそれぞれ含意関係が成り立つか否かを示すラベルを生成する。含意関係が成り立つとは、例えば、上位文書20の章が真であるなら下位文書21も真であるとき、上位文書20の章と下位文書21との間に含意関係が成り立つと判定される。
事前学習生成部12は、教師データ生成部11により生成された教師データ14を入力とする機械学習アルゴリズムによって、上位文書20の章、節、及び項の各々と下位文書21との含意関係を学習し、含意関係を判定するための含意関係学習モデル15を生成する。含意関係学習モデル15は、上位文書の章、節、及び項の各々が下位文書を含意するか否かを推論すると共に、推論することを学習するモデルである。
推論部13は、要件項目(あるいは、項)を含む上位文書の章及び節の情報を取得し、含意関係学習モデル15に基づいて、章、節、及び要件項目の順に、章、節、及び要件項目の各々が含意する下位文書21を抽出する。推論部13は、また含意関係学習モデル15あるいは他の自然言語処理モデルに従って、複数の下位文書21間の参照関係を生成する、言い換えると複数の下位文書21間にリンクを設定する。推論部13は、検索条件(あるいは、検索キー)としての要件項目を含む上位文書の章、節、及び要件項目の順に下位文書21を検索するとともに、下位文書21間の参照関係に従って下位文書21を絞り込むことにより、要件項目に対応(あるいは、適合)する下位文書を抽出する。そして、推論部13は、抽出された下位文書を含む推論結果データ16を出力する。
事前学習生成部12が用いる機械学習アルゴリズム及び推論部13が用いる自然言語処理モデルには、例えば、非特許文献1や非特許文献2に記載されたBERT(Bidirectional Encoder Representations from Transformers)が適用可能である。
2.実施形態の動作
図3を参照して、実施形態の自然言語処理装置10の動作について説明する。図3は、自然言語処理装置10が実行する自然言語処理を示すフローチャートである。
図3を参照して、実施形態の自然言語処理装置10の動作について説明する。図3は、自然言語処理装置10が実行する自然言語処理を示すフローチャートである。
先ず、教師データ生成部11は、複数の上位文書20及び複数の下位文書21を受け取る(S1)。
次に、教師データ生成部11は、受け取った上位文書20及び下位文書21を用いて、教師データ14を生成する(S2)。教師データ14の生成処理については後で詳述する。
次に、事前学習生成部12は、教師データ生成部11により生成された教師データ14を用いて、含意関係学習モデル15を生成する(S3)。
次に、推論部13は、検索条件としての要件項目を含む上位文書の章、節、及び要件項目、含意関係学習モデル15、並びに下位文書間の参照関係に基づいて、要件項目に対応する下位文書を検索し、検索により抽出された下位文書を含む推論結果データ16を出力する(S4)。推論結果データ16の生成処理については後で詳述する。
2.1 教師データの生成処理
次に、図4~図8を参照して、教師データ生成部11が実行する教師データ14の生成処理について説明する。図4は、教師データ生成部11における教師データ14の生成処理を示すフローチャートである。図5は、教師データ14の生成処理の様子を示す図である。図6、図7、及び図8は、教師データ生成部11によって生成される教師データを示す。詳述すると、図6は、上位文書の章と下位文書との間の対応関係を表すマトリクス(あるいは、テーブル)を示す。図7は、上位文書の節と下位文書との間の対応関係を表すマトリクス(あるいは、テーブル)を示す。さらに、図8は、上位文書の項と下位文書との間の対応関係を表すマトリクス(あるいは、テーブル)を示す。ここでは、複数の上位文書20_1、20_2、20_3、…、20_mと、複数の下位文書21_1、21_2、21_3、…、21_nが用意されているものとする。m、nは2以上の整数である。
次に、図4~図8を参照して、教師データ生成部11が実行する教師データ14の生成処理について説明する。図4は、教師データ生成部11における教師データ14の生成処理を示すフローチャートである。図5は、教師データ14の生成処理の様子を示す図である。図6、図7、及び図8は、教師データ生成部11によって生成される教師データを示す。詳述すると、図6は、上位文書の章と下位文書との間の対応関係を表すマトリクス(あるいは、テーブル)を示す。図7は、上位文書の節と下位文書との間の対応関係を表すマトリクス(あるいは、テーブル)を示す。さらに、図8は、上位文書の項と下位文書との間の対応関係を表すマトリクス(あるいは、テーブル)を示す。ここでは、複数の上位文書20_1、20_2、20_3、…、20_mと、複数の下位文書21_1、21_2、21_3、…、21_nが用意されているものとする。m、nは2以上の整数である。
前述したように、教師データ生成部11は、上位文書20_1~20_mの章、節、及び項の各々に対して、下位文書21_1~21_nをそれぞれ対応付ける。すなわち、教師データ生成部11は、上位文書20_1~20_mの章、節、及び項の各々と下位文書21_1~21_nとの間のそれぞれの対応関係を示すラベルを生成する。言い換えると、上位文書20_1~20_mの章、節、及び項の各々と下位文書21_1~21_nとの間にそれぞれ含意関係が成り立つか否かを示すラベルを生成する。
先ず、教師データ生成部11は、図4及び図5に示すように、上位文書20_1~20_mの章と下位文書21_1~21_nとを対応付ける(S11)。上位文書の章が下位文書を含意するか否かによって、上位文書の章と下位文書とが対応関係に有るか否かを示すラベルを生成する。すなわち、上位文書の章に記載された文(あるいは、文意)が、下位文書に記載された文(あるいは、文意)を含意する場合、上位文書の章と下位文書との間に含意関係が成り立つことを示すラベルを生成する。逆に、上位文書の章に記載された文が、下位文書に記載された文を含意しない場合、上位文書の章と下位文書との間に含意関係が成り立たないことを示すラベルを生成する。
具体的には、教師データ生成部11は、上位文書20_1の章1と下位文書21_1とが対応関係に有るか否かを判定する。すなわち、上位文書20_1の章1が下位文書21_1を含意するか否かを判定する。図6に示すように、教師データ生成部11は、上位文書20_1の章1が下位文書21_1を含意する場合、上位文書20_1の章1と下位文書21_1とが対応関係に有ることを示すラベル1を生成する。上位文書20_1の章1が下位文書21_1を含意しない場合、上位文書20_1の章1と下位文書21_1とが対応関係に無いことを示すラベル0を生成する。
次に、教師データ生成部11は、上位文書20_1の章1と下位文書21_2とが対応関係に有るか否かを判定する。すなわち、上位文書20_1の章1が下位文書21_2を含意するか否かを判定する。図6に示すように、教師データ生成部11は、上位文書20_1の章1が下位文書21_2を含意する場合、上位文書20_1の章1と下位文書21_2とが対応関係に有ることを示すラベル1を生成する。上位文書20_1の章1が下位文書21_2を含意しない場合、上位文書20_1の章1と下位文書21_2とが対応関係に無いことを示すラベル0を生成する。
同様に、教師データ生成部11は、上位文書20_1の章1と下位文書21_3~21_nの各々とが対応関係に有るか否かを判定する。すなわち、上位文書20_1の章1が下位文書21_3~21_nの各々を含意するか否かを判定する。図6に示すように、教師データ生成部11は、上位文書20_1の章1が下位文書21_3~21_nの各々を含意する場合、上位文書20_1の章1と下位文書21_3~21_nの各々とが対応関係に有ることを示すラベル1を生成する。上位文書20_1の章1が下位文書21_3~21_nの各々を含意しない場合、上位文書20_1の章1と下位文書21_3~21_nの各々とが対応関係に無いことを示すラベル0を生成する。
以下同様に、教師データ生成部11は、上位文書20_1の章2と下位文書21_1~21_nの各々とが対応関係に有るか否かを判定する。すなわち、上位文書20_1の章2が下位文書21_1~21_nの各々を含意するか否かを判定する。図6に示すように、教師データ生成部11は、上位文書20_1の章2が下位文書21_1~21_nの各々を含意する場合、上位文書20_1の章2と下位文書21_1~21_nの各々とが対応関係に有ることを示すラベル1を生成する。上位文書20_1の章2が下位文書21_1~21_nの各々を含意しない場合、上位文書20_1の章2と下位文書21_1~21_nの各々とが対応関係に無いことを示すラベル0を生成する。
上位文書20_1の章3以降の各々と下位文書21_1~21_nの各々とについても上述と同様である。教師データ生成部11は、上位文書20_1の章3以降の各々と下位文書21_1~21_nの各々とが対応関係に有るか否かを判定する。教師データ生成部11は、上位文書20_1の章3以降の各々が下位文書21_1~21_nの各々を含意する場合、ラベル1をそれぞれ生成する。上位文書20_1の章3以降の各々が下位文書21_1~21_nの各々をそれぞれ含意しない場合、ラベル0をそれぞれ生成する。
上位文書20_2の章の各々と下位文書21_1~21_nの各々とについても上述と同様である。教師データ生成部11は、上位文書20_2の章の各々と下位文書21_1~21_nの各々とが対応関係に有るか否かを判定する。教師データ生成部11は、上位文書20_2の章の各々が下位文書21_1~21_nの各々を含意する場合、ラベル1をそれぞれ生成する。上位文書20_2の章の各々が下位文書21_1~21_nの各々を含意しない場合、ラベル0をそれぞれ生成する。
上位文書20_3~20_mの章の各々と下位文書21_1~21_nの各々とについても上述と同様である。教師データ生成部11は、上位文書20_3~20_mの章の各々と下位文書21_1~21_nの各々とが対応関係に有るか否かを判定し、ラベル1あるいはラベル0をそれぞれ生成する。
次に、教師データ生成部11は、図4及び図5に示すように、上位文書20_1~20_mの節と下位文書21_1~21_nとを対応付ける(S12)。上位文書の節が下位文書を含意するか否かによって、上位文書の節と下位文書とが対応関係に有るか否かを示すラベルを生成する。すなわち、上位文書の節に記載された文(あるいは、文意)が、下位文書に記載された文(あるいは、文意)を含意する場合、上位文書の節と下位文書との間に含意関係が成り立つことを示すラベルを生成する。逆に、上位文書の節に記載された文が、下位文書に記載された文を含意しない場合、上位文書の節と下位文書との間に含意関係が成り立たないことを示すラベルを生成する。
具体的には、教師データ生成部11は、上位文書20_1章1の節1と下位文書21_1とが対応関係に有るか否かを判定する。すなわち、上位文書20_1章1の節1が下位文書21_1を含意するか否かを判定する。図7に示すように、教師データ生成部11は、上位文書20_1章1の節1が下位文書21_1を含意する場合、上位文書20_1章1の節1と下位文書21_1とが対応関係に有ることを示すラベル1を生成する。上位文書20_1章1の節1が下位文書21_1を含意しない場合、上位文書20_1章1の節1と下位文書21_1とが対応関係に無いことを示すラベル0を生成する。
次に、教師データ生成部11は、上位文書20_1章1の節1と下位文書21_2とが対応関係に有るか否かを判定する。すなわち、上位文書20_1章1の節1が下位文書21_2を含意するか否かを判定する。図7に示すように、教師データ生成部11は、上位文書20_1章1の節1が下位文書21_2を含意する場合、上位文書20_1章1の節1と下位文書21_2とが対応関係に有ることを示すラベル1を生成する。上位文書20_1章1の節1が下位文書21_2を含意しない場合、上位文書20_1章1の節1と下位文書21_2とが対応関係に無いことを示すラベル0を生成する。
同様に、教師データ生成部11は、上位文書20_1章1の節1と下位文書21_3~21_nの各々とが対応関係に有るか否かを判定する。すなわち、上位文書20_1章1の節1が下位文書21_3~21_nの各々を含意するか否かを判定する。図7に示すように、教師データ生成部11は、上位文書20_1章1の節1が下位文書21_3~21_nの各々を含意する場合、上位文書20_1章1の節1と下位文書21_3~21_nの各々とが対応関係に有ることを示すラベル1を生成する。上位文書20_1章1の節1が下位文書21_3~21_nの各々を含意しない場合、上位文書20_1章1の節1と下位文書21_3~21_nの各々とが対応関係に無いことを示すラベル0を生成する。
以下同様に、教師データ生成部11は、上位文書20_1章1の節2と下位文書21_1~21_nの各々とが対応関係に有るか否かを判定する。すなわち、上位文書20_1章1の節2が下位文書21_1~21_nの各々を含意するか否かを判定する。図7に示すように、教師データ生成部11は、上位文書20_1章1の節2が下位文書21_1~21_nの各々を含意する場合、上位文書20_1章1の節2と下位文書21_1~21_nの各々とが対応関係に有ることを示すラベル1を生成する。上位文書20_1章1の節2が下位文書21_1~21_nの各々を含意しない場合、上位文書20_1章1の節2と下位文書21_1~21_nの各々とが対応関係に無いことを示すラベル0を生成する。
上位文書20_1章1の節3以降の各々と下位文書21_1~21_nの各々とについても上述と同様である。教師データ生成部11は、上位文書20_1章1の節3以降の各々と下位文書21_1~21_nの各々とが対応関係に有るか否かを判定する。教師データ生成部11は、上位文書20_1章1の節3以降の各々が下位文書21_1~21_nの各々を含意する場合、ラベル1をそれぞれ生成する。上位文書20_1章1の節3以降の各々が下位文書21_1~21_nの各々をそれぞれ含意しない場合、ラベル0をそれぞれ生成する。
上位文書20_1章2の節の各々と下位文書21_1~21_nの各々とについても上述と同様である。教師データ生成部11は、上位文書20_1章2の節の各々と下位文書21_1~21_nの各々とが対応関係に有るか否かを判定する。教師データ生成部11は、上位文書20_1章2の節の各々が下位文書21_1~21_nの各々を含意する場合、ラベル1をそれぞれ生成する。上位文書20_1章2の節の各々が下位文書21_1~21_nの各々を含意しない場合、ラベル0をそれぞれ生成する。
上位文書20_1~20_mのその他の節の各々と下位文書21_1~21_nの各々とについても上述と同様であり、記載を省略する。
次に、教師データ生成部11は、図4及び図5に示すように、上位文書20_1~20_mの項と下位文書21_1~21_nとを対応付ける(S13)。上位文書の項が下位文書を含意するか否かによって、上位文書の項と下位文書とが対応関係に有るか否かを示すラベルを生成する。すなわち、上位文書の項に記載された文(あるいは、文意)が、下位文書に記載された文(あるいは、文意)を含意する場合、上位文書の項と下位文書との間に含意関係が成り立つことを示すラベルを生成する。逆に、上位文書の項に記載された文が、下位文書に記載された文を含意しない場合、上位文書の項と下位文書との間に含意関係が成り立たないことを示すラベルを生成する。
具体的には、教師データ生成部11は、上位文書20_1章1節1の項1と下位文書21_1とが対応関係に有るか否かを判定する。すなわち、上位文書20_1章1節1の項1が下位文書21_1を含意するか否かを判定する。図8に示すように、教師データ生成部11は、上位文書20_1章1節1の項1が下位文書21_1を含意する場合、上位文書20_1章1節1の項1と下位文書21_1とが対応関係に有ることを示すラベル1を生成する。上位文書20_1章1節1の項1が下位文書21_1を含意しない場合、上位文書20_1章1節1の項1と下位文書21_1とが対応関係に無いことを示すラベル0を生成する。
次に、教師データ生成部11は、上位文書20_1章1節1の項1と下位文書21_2とが対応関係に有るか否かを判定する。すなわち、上位文書20_1章1節1の項1が下位文書21_2を含意するか否かを判定する。図8に示すように、教師データ生成部11は、上位文書20_1章1節1の項1が下位文書21_2を含意する場合、上位文書20_1章1節1の項1と下位文書21_2とが対応関係に有ることを示すラベル1を生成する。上位文書20_1章1節1の項1が下位文書21_2を含意しない場合、上位文書20_1章1節1の項1と下位文書21_2とが対応関係に無いことを示すラベル0を生成する。
同様に、教師データ生成部11は、上位文書20_1章1節1の項1と下位文書21_3~21_nの各々とが対応関係に有るか否かを判定する。すなわち、上位文書20_1章1節1の項1が下位文書21_3~21_nの各々を含意するか否かを判定する。図8に示すように、教師データ生成部11は、上位文書20_1章1節1の項1が下位文書21_3~21_nの各々を含意する場合、上位文書20_1章1節1の項1と下位文書21_3~21_nの各々とが対応関係に有ることを示すラベル1を生成する。上位文書20_1章1節1の項1が下位文書21_3~21_nの各々を含意しない場合、上位文書20_1章1節1の項1と下位文書21_3~21_nの各々とが対応関係に無いことを示すラベル0を生成する。
以下同様に、教師データ生成部11は、上位文書20_1章1節1の項2と下位文書21_1~21_nの各々とが対応関係に有るか否かを判定する。すなわち、上位文書20_1章1節1の項2が下位文書21_1~21_nの各々を含意するか否かを判定する。図8に示すように、教師データ生成部11は、上位文書20_1章1節1の項2が下位文書21_1~21_nの各々を含意する場合、上位文書20_1章1節1の項2と下位文書21_1~21_nの各々とが対応関係に有ることを示すラベル1を生成する。上位文書20_1章1節1の項2が下位文書21_1~21_nの各々を含意しない場合、上位文書20_1章1節1の項2と下位文書21_1~21_nの各々とが対応関係に無いことを示すラベル0を生成する。
上位文書20_1章1節1の項3以降の各々と下位文書21_1~21_nの各々とについても上述と同様である。教師データ生成部11は、上位文書20_1章1節1の項3以降の各々と下位文書21_1~21_nの各々とが対応関係に有るか否かを判定する。教師データ生成部11は、上位文書20_1章1節1の項3以降の各々が下位文書21_1~21_nの各々を含意する場合、ラベル1をそれぞれ生成する。上位文書20_1章1節1の項3以降の各々が下位文書21_1~21_nの各々をそれぞれ含意しない場合、ラベル0をそれぞれ生成する。
上位文書20_1~20_mのその他の項の各々と下位文書21_1~21_nの各々とについても上述と同様であり、記載を省略する。
2.2 推論結果データの生成処理
次に、図9~図10を参照して、推論部13が実行する推論結果データ16の生成処理(推論処理)について説明する。図9は、推論部13における推論結果データ16の生成処理を示すフローチャートである。図10は、推論結果データ16の生成処理の様子を示す図である。なお、上位文書20aは章Aを含み、章Aは節Bを含み、節Bは要件項目(あるいは、項)Cを含むものとする。以下に、検索条件(あるいは、検索キー)としての要件項目Cを取得し、要件項目Cに対応する下位文書を抽出する場合の処理を説明する。
次に、図9~図10を参照して、推論部13が実行する推論結果データ16の生成処理(推論処理)について説明する。図9は、推論部13における推論結果データ16の生成処理を示すフローチャートである。図10は、推論結果データ16の生成処理の様子を示す図である。なお、上位文書20aは章Aを含み、章Aは節Bを含み、節Bは要件項目(あるいは、項)Cを含むものとする。以下に、検索条件(あるいは、検索キー)としての要件項目Cを取得し、要件項目Cに対応する下位文書を抽出する場合の処理を説明する。
先ず、推論部13は、図9及び図10に示すように、要件項目Cを含む上位文書20aの章Aを取得し、取得した章Aが含意する下位文書21aを抽出する(S21)。すなわち、推論部13は、要件項目Cを含む上位文書20aの章Aに対応付けられた下位文書21aを抽出する。
次に、推論部13は、要件項目Cを含む上位文書20aの節Bを取得する。さらに、推論部13は、ステップS21で抽出された下位文書21aから参照される下位文書の中から、言い換えると、下位文書21aにリンクが設定された下位文書の中から、取得した節Bが含意する下位文書21bを抽出する(S22)。すなわち、推論部13は、要件項目Cを含む上位文書20aの節Bに対応付けられた下位文書21bを抽出する。
次に、推論部13は、ステップS22で抽出された下位文書21bから参照される下位文書の中から、言い換えると、下位文書21bにリンクが設定された下位文書の中から、要件項目Cが含意する下位文書21cを抽出する(S23)。すなわち、推論部13は、要件項目Cに対応付けられた下位文書21cを抽出する。そして、推論部13は、抽出された下位文書21cを含む推論結果データ16を出力する。以上により、推論部13による推論結果データ16の生成処理(推論処理)が終了する。
なお、上述した推論結果データ16の生成処理では、要件項目Cを含む上位文書20aの章Aを取得し、取得した章Aが含意する下位文書21aを抽出し、続いて、要件項目Cを含む上位文書20aの節Bを取得し、取得した節Bが含意する下位文書21aを抽出したが、これに限るわけではない。先に、要件項目Cを含む上位文書20aの章A及び節Bを取得し、取得した章Aが含意する下位文書21aを抽出し、続いて、取得した節Bが含意する下位文書21bを抽出するようにしてもよい。
次に、図11を参照して、推論部13が実行する推論結果データ16の生成処理(推論処理)について説明する。図11は、推論結果データ16の生成処理の様子を別の視点から示す図である。なお、上位文書20aは条件1を含み、条件1は条件2及び条件3を含む。条件2は要件1を含み、条件3は要件2を含む。また、条件1は上位文書20aの章Aに相当し、条件2は節Bに相当し、要件1は要件項目Cに相当する。条件3は他の節に相当し、要件2は他の要件項目に相当する。以下に、検索条件としての要件1を含む上位文書20aの条件1から、要件1に対応する下位文書を抽出する場合の処理を説明する。
先ず、推論部13は、図11に示すように、要件1を含む上位文書20aの条件1を取得し、取得した条件1が含意する下位文書21aを抽出する。すなわち、推論部13は、要件1を含む上位文書20aの条件1に対応付けられた下位文書21aを抽出する。
次に、推論部13は、要件1を含む上位文書20aの条件2を取得する。さらに、推論部13は、取得した下位文書21aから参照される下位文書の中から、言い換えると、下位文書21aにリンクが設定された下位文書の中から、取得した条件2が含意する下位文書21bを抽出する。すなわち、推論部13は、要件1を含む上位文書20aの条件2に対応付けられた下位文書21bを抽出する。
次に、推論部13は、抽出された下位文書21bから参照される下位文書の中から、言い換えると、下位文書21bにリンクが設定された下位文書の中から、要件1が含意する下位文書21cを抽出する。すなわち、推論部13は、要件1に対応付けられた下位文書21cを抽出する。そして、推論部13は、抽出された下位文書21cを含む推論結果データ16を出力する。以上により、推論部13による推論結果データ16の生成処理(推論処理)が終了する。
以上述べたように実施形態では、要件項目C(あるいは、要件1)が記載された上位文書の章、節、及び項の順に下位文書が検索され、要件項目Cに適合する下位文書が抽出され出力される。
3.実施形態のハードウェア構成
次に、図12を参照して、実施形態の自然言語処理装置10のハードウェア構成について説明する。ここでは、自然言語処理装置10が、コンピュータ30で構成される例について説明する。
次に、図12を参照して、実施形態の自然言語処理装置10のハードウェア構成について説明する。ここでは、自然言語処理装置10が、コンピュータ30で構成される例について説明する。
図12は、自然言語処理装置10のハードウェア構成の一例を示す図である。自然言語処理装置10(即ち、コンピュータ30)は、プロセッサ31、ROM(Read Only Memory)32、RAM(Random Access Memory)33、補助記憶装置34、及び入出力インタフェース35を有する。
プロセッサ31とROM32とRAM33と補助記憶装置34と入出力インタフェース35は、バス36を介して互いに電気的に接続されており、バス36を介して互いにデータ及び信号のやり取りが可能である。
プロセッサ31とROM32とRAM33と補助記憶装置34と入出力インタフェース35は、バス36を介して互いに電気的に接続されており、バス36を介して互いにデータ及び信号のやり取りが可能である。
プロセッサ31は、例えば、CPU(Central Processing Unit)やGPU(Graphical Processing Unit)等を含む汎用ハードウェアプロセッサで構成される。プロセッサ31は、ROM32、RAM33、補助記憶装置34、及び入出力インタフェース35の全体を制御する。
ROM32は、主記憶装置の一部を構成する不揮発性メモリである。ROM32は、自然言語処理装置10の起動時に必要な起動プログラムを非一時的に記憶している。自然言語処理装置10は、プロセッサ31がROM32内のプログラムを実行することにより起動する。ROM32は、例えば、EPROM(Erasable Programmable Read Only Memory)で構成され、起動プログラムに加えて、起動時の諸設定を記憶している。
RAM33は、主記憶装置の一部を構成する揮発性メモリである。RAM33は、プロセッサ31の処理に必要なプログラムとプログラムの実行に必要なデータを一時的に記憶する。プロセッサ31は、RAM33内のプログラムを実行することにより、RAM33内のデータを演算し、演算結果をRAM33に記憶させる。
補助記憶装置34は、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の不揮発性メモリで構成される。補助記憶装置34は、プロセッサ31が実行するプログラムとプログラムの実行に必要なデータを非一時的に記憶している。プロセッサ31は、補助記憶装置34内のプログラムとデータをRAM33内に読み込み、プログラムを実行することにより各種機能を実行する。
入出力インタフェース35は、外部の入力装置41や出力装置42等と接続され、入力装置41からの情報の入力、出力装置42への情報の出力を可能にする。例えば、入出力インタフェース35は、有線のインタフェースであっても、無線のインタフェースであってもよい。有線のインタフェースは、装置が接続されるポート等を含む。無線のインタフェースは、Bluetooth(登録商標)、WiFi(登録商標)等を含む。
入力装置41は、キーボード、マウス、タッチパネル、受信装置、ディスクドライブ等を含み得る。入力装置41は、これに限らず、他の任意の入力機器を含み得る。出力装置42は、ディスプレイ、送信装置、ディスクドライブ等を含み得る。出力装置42は、これに限らず、他の任意の出力機器を含み得る。入力装置41と出力装置42は、両者の機能を有する入出力装置43で構成されてもよい。
入力装置41は、キーボード、マウス、タッチパネル、受信装置、ディスクドライブ等を含み得る。入力装置41は、これに限らず、他の任意の入力機器を含み得る。出力装置42は、ディスプレイ、送信装置、ディスクドライブ等を含み得る。出力装置42は、これに限らず、他の任意の出力機器を含み得る。入力装置41と出力装置42は、両者の機能を有する入出力装置43で構成されてもよい。
入力データ、例えば、上位文書及び下位文書に関するデータ、及び検索対象としての上位文書の要件項目等のデータは、入力装置41を介して、教師データ生成部11、あるいは推論部13に入力される。
補助記憶装置34に非一時的に記憶されるプログラムは、例えば、プログラムを非一時的に記録したコンピュータ30で読み取り可能な記録媒体44を介して、コンピュータ30に提供される。そのような記録媒体44は、非一時的コンピュータ読取可能記録媒体と呼ばれる。非一時的コンピュータ読取可能記録媒体は、フレキシブルディスク、光ディスク(CD-ROM、CD-R、DVD-ROM、DVD-R等)、光磁気ディスク(MO等)等のディスクや、半導体メモリ等を含む。
補助記憶装置34に非一時的に記憶されるプログラムは、記録媒体44がディスクである場合には、入力装置41であるディスクドライブと入出力インタフェース35を介して、記録媒体44が半導体メモリある場合には、入出力インタフェース35であるポートを介して、補助記憶装置34に読み込まれ非一時的に記憶される。また、プログラムは、ネットワーク上のサーバに格納されており、サーバからダウンロードされ、補助記憶装置34に非一時的に記憶されてもよい。
プロセッサ31は、コンピュータ30の起動時に、ROM32内のプログラムを実行し、RAM33内にOSを読み込み起動する。プロセッサ31は、OSによる制御の下、指示入力や外部機器の接続等を監視する。また、プロセッサ31は、OSによる制御の下、RAM33内にプログラムエリアとデータエリアを設定する。プロセッサ31は、自然言語処理装置10の起動の指示入力に対して、補助記憶装置34から自然言語処理プログラムをRAM33のプログラムエリアに読み込むとともに、自然言語処理プログラムの実行に必要なデータを補助記憶装置34からRAM33のデータエリアに読み込む。プロセッサ31は、自然言語処理プログラムに従ってデータエリアのデータを演算し、演算結果をデータエリアに書き込む。このような動作によって、プロセッサ31とRAM33と補助記憶装置34と入出力インタフェース35とバス36は共働して、自然言語処理装置10の構成要素、すなわち教師データ生成部11、事前学習生成部12、及び推論部13の少なくとも一部の機能を実行する。
4.実施形態の効果等
この発明に係る実施形態によれば、要件が記載された上位文書の章、節、及び項の文脈を考慮した要件を満たす下位文書の検索を行うことが可能な自然言語処理装置が提供できる。
この発明に係る実施形態によれば、要件が記載された上位文書の章、節、及び項の文脈を考慮した要件を満たす下位文書の検索を行うことが可能な自然言語処理装置が提供できる。
実施形態の構成では、教師データ生成部11により、上位文書の章と下位文書との対応関係を示すラベル生成、上位文書の節と下位文書との対応関係を示すラベル生成、及び上位文書の項と下位文書との対応関係を示すラベル生成が実行されて、教師データ14が生成される。次に、事前学習生成部12により、教師データ14を入力データとして、機械学習モデル(例えば、BERT)を用いて、上位文書の章、節、及び項の各々と下位文書との間の含意関係を判定するための含意関係学習モデル15が生成される。そして、推論部13により、検索条件としての要件項目を含む上位文書の章及び節の情報を取得し、教師データ14を用いて生成された含意関係学習モデル15に基づいて、下位文書間の参照関係に従い上位文書の章、節、及び要件項目の順で前記下位文書を検索し絞り込む。これにより、要件項目を含む上位文書の章、節、及び要件項目の文脈を考慮した要件項目に対応する下位文書が出力できる。
言い換えると、実施形態の構成では、上位文書の章、節、及び項の各々と下位文書との対応関係を示すラベルを付与した教師データ14を作成し、上位文書の章、節、及び項の各々と下位文書との対応づけを推論する含意関係学習モデル15を生成する。推論時には、探索したい上位文書の要件項目を含む章と節の情報を取得し、下位文書間の参照関係を考慮しつつ章、節、及び要件項目の順に下位文書を検索し絞り込む。これにより、章、節、及び要件項目の文脈を考慮した要件項目を満たす下位文書の検索が可能である。
上記実施形態で説明した機能ブロックは、ハードウェア、コンピュータソフトウェアのいずれかまたは両者を組み合わせたものとして実現することができる。機能ブロックが上述の例のように区別されていることは必須ではない。例えば、一部の機能が例示の機能ブロックとは別の機能ブロックによって実行されてもよい。さらに、例示の機能ブロックがさらに細かい機能サブブロックに分割されていてもよい。また、上記実施形態で説明したフローチャートは、その処理の順番を可能な限り入れ替えることができる。
なお、この発明は上記実施形態に限定されるものではない。例えば、この発明の要旨を逸脱しない範囲で種々変形して実施可能である。
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
10…自然言語処理装置
11…教師データ生成部
12…事前学習生成部
13…推論部
14…教師データ
15…含意関係学習モデル
16…推論結果データ
20…上位文書
20a…上位文書
21…下位文書
21a…下位文書
21b…下位文書
21c…下位文書
30…コンピュータ
31…プロセッサ
32…ROM
33…RAM
34…補助記憶装置
35…入出力インタフェース
36…バス
41…入力装置
42…出力装置
43…入出力装置
44…記録媒体。
11…教師データ生成部
12…事前学習生成部
13…推論部
14…教師データ
15…含意関係学習モデル
16…推論結果データ
20…上位文書
20a…上位文書
21…下位文書
21a…下位文書
21b…下位文書
21c…下位文書
30…コンピュータ
31…プロセッサ
32…ROM
33…RAM
34…補助記憶装置
35…入出力インタフェース
36…バス
41…入力装置
42…出力装置
43…入出力装置
44…記録媒体。
Claims (4)
- 上位文書に含まれる章、節、及び項の各々と下位文書との対応関係を表す教師データを生成する教師データ生成部と、
検索条件としての項を含む第1上位文書の章及び節を取得し、前記教師データを用いて生成された機械学習モデルに基づいて、前記下位文書間の参照関係に従い前記第1上位文書の前記章、前記節、及び前記項の順で前記下位文書に対する検索を行い、前記第1上位文書の前記項に対応する下位文書を出力する推論部と、
を備える自然言語処理装置。 - 前記教師データ生成部は、前記教師データとして、
前記上位文書の章と前記下位文書との間の含意関係を表すマトリクスと、前記上位文書の節と前記下位文書との間の含意関係を表すマトリクスと、前記上位文書の項と前記下位文書との間の含意関係を表すマトリクスと、を生成する、
請求項1に記載の自然言語処理装置。 - 前記推論部は、
前記下位文書の中から、前記第1上位文書の前記章が含意する第1下位文書を抽出し、
前記第1下位文書から参照される下位文書の中から、前記第1上位文書の前記節が含意する第2下位文書を抽出し、
前記第2下位文書から参照される下位文書の中から、前記第1上位文書の前記項が含意する第3下位文書を抽出し、抽出された前記第3下位文書を出力する、
請求項1に記載の自然言語処理装置。 - 前記機械学習モデルとして、前記教師データを用いて前記上位文書の章、節、及び項の各々と前記下位文書との間の含意関係を判定するための含意関係学習モデルを生成する事前学習生成部をさらに備える、
請求項1に記載の自然言語処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2023/046002 WO2025134331A1 (ja) | 2023-12-21 | 2023-12-21 | 自然言語処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2023/046002 WO2025134331A1 (ja) | 2023-12-21 | 2023-12-21 | 自然言語処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025134331A1 true WO2025134331A1 (ja) | 2025-06-26 |
Family
ID=96137985
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2023/046002 Pending WO2025134331A1 (ja) | 2023-12-21 | 2023-12-21 | 自然言語処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2025134331A1 (ja) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015219799A (ja) * | 2014-05-20 | 2015-12-07 | 株式会社日立ハイテクノロジーズ | 文書の類似度判定方法 |
| WO2017149711A1 (ja) * | 2016-03-02 | 2017-09-08 | 株式会社日立製作所 | 文書管理装置および文書管理方法 |
-
2023
- 2023-12-21 WO PCT/JP2023/046002 patent/WO2025134331A1/ja active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015219799A (ja) * | 2014-05-20 | 2015-12-07 | 株式会社日立ハイテクノロジーズ | 文書の類似度判定方法 |
| WO2017149711A1 (ja) * | 2016-03-02 | 2017-09-08 | 株式会社日立製作所 | 文書管理装置および文書管理方法 |
Non-Patent Citations (1)
| Title |
|---|
| KOUKI NAKANISHI, KIMIO TSUCHIKAWA, HARUO OISHI, TOMOKO SHIBATA: "Application Evaluation of Natural Language Processing Technology BERT to Internal Control Documents Related to Information Systems", IEICE TECHNICAL REPORT, ICM, vol. 122, no. 442 (ICM2022-62), 11 May 2023 (2023-05-11), JP, pages 111 - 116, XP009563619 * |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10942958B2 (en) | User interface for a query answering system | |
| JP5939588B2 (ja) | 関連ノードを探索する方法、並びに、そのコンピュータ、及びコンピュータ・プログラム | |
| AU2018253637B2 (en) | Interactive tutorial integration | |
| CN110442877B (zh) | 使用机器人规划作为平行语言语料库 | |
| JP2018045537A (ja) | 検索プログラム、検索装置および検索方法 | |
| KR102920082B1 (ko) | 문서 요약 방법 및 문서 요약 장치 | |
| JP7295463B2 (ja) | 業務フロー作成支援装置、業務フロー作成支援方法、および、業務フロー作成支援プログラム | |
| WO2022107328A1 (ja) | 機械学習プログラム、機械学習方法および自然言語処理装置 | |
| JP7247593B2 (ja) | 生成装置、ソフトウェアロボットシステム、生成方法及び生成プログラム | |
| JP3788956B2 (ja) | 構造化文書表示方法、構造化文書表示装置及びプログラム | |
| JP2009015395A (ja) | 辞書構築支援装置および辞書構築支援プログラム | |
| JP2019057095A (ja) | 文章生成装置、モデル生成装置、校正装置及びコンピュータプログラム | |
| Tanwar et al. | An effective reasoning algorithm for question answering system | |
| JP2025021221A (ja) | 学習材生成システム、学習材生成方法、及び学習材生成プログラム | |
| JP5998779B2 (ja) | 検索装置、検索方法、及びプログラム | |
| JP7366316B2 (ja) | 学習装置、推論装置、プログラム、学習方法及び推論方法 | |
| JP2024164619A (ja) | ソースコード検索システム及びソースコード検索方法 | |
| JP2024079138A (ja) | 発想支援システム及び方法 | |
| CN118568508A (zh) | 文本匹配方法和文本匹配装置 | |
| JP2018055224A (ja) | データ生成装置、方法、及びプログラム | |
| JP4435144B2 (ja) | データ検索システム及びプログラム | |
| WO2025134333A1 (ja) | 自然言語処理装置 | |
| Morris et al. | Welsh automatic text summarisation | |
| JP5980143B2 (ja) | ポーズ付与モデル生成装置、ポーズ付与モデル生成方法、ポーズ付与装置、ポーズ付与方法、プログラム | |
| JP2010230838A (ja) | デジタル教材作成支援装置,デジタル教材作成支援プログラム,デジタル教材提示装置,デジタル教材提示プログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23962251 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2025564746 Country of ref document: JP Kind code of ref document: A |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2025564746 Country of ref document: JP |