Program, information processing device, method, and system
The program enhances dependency analysis accuracy by preprocessing sentences, restoring case particles, and determining modifying clauses using connection information, addressing the limitations of existing techniques.
Patent Information
- Application Number
- JP2025141253
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2024-09-18
- Filing Date
- 2025-08-27
- Publication Date
- 2026-01-28
- Estimated Expiration
- 2045-08-27
AI Technical Summary
Existing dependency analysis techniques, such as those described in Patent Document 1, do not provide sufficient accuracy in determining the dependencies between elements in a sentence.
A program that executes on a computer to receive and preprocess a sentence, restore case particles using case frames, determine modifying clauses, and specify modifiers based on connection information, including a determination step to identify whether case particles are included in the sentence, and classify phrases as subjects or topics.
Improves the accuracy of dependency analysis by accurately identifying modifying clauses and their relationships within sentences.
Smart Images

Figure 0007807852000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a program, an information processing device, a method, and a system. [Background technology]
[0002] Research into technologies related to dependency analysis of text has been ongoing for some time. For example, Patent Document 1 discloses a technology for setting dependencies between elements in a predicate phrase list based on dependencies between document components estimated from the document structure. The predicate phrase list is a list created by dividing a document converted into a word string format into predicate phrases and using the predicate phrases as elements. The technology disclosed in Patent Document 1 analyzes syntactic dependency structures during the process of creating the predicate phrase list. This analysis is performed, for example, by dependency analysis using case frames. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Publication No. 10-207891 Summary of the Invention [Problem to be solved by the invention]
[0004] However, the technique disclosed in Patent Document 1 does not provide sufficient accuracy in dependency analysis.
[0005] An object of the present disclosure is to improve the accuracy of dependency analysis. [Means for solving the problem]
[0006] In order to solve the above-mentioned problems, a program according to one aspect of the present disclosure is a program to be executed by a computer including a processor and a memory. The program causes the processor to execute the following steps: a receiving step of receiving an input of a sentence; a preprocessing step of dividing the input sentence into a plurality of phrases; a restoration step of restoring case particles for the sentence divided into the plurality of phrases using a case frame; a determination step of determining, from the divided plurality of phrases based on the restored case particles, a phrase that modifies a predicate in the sentence as a modifying clause; a specifying step of specifying a modifier of the predicate based on the property of the determined modifying clause; and a presentation step of presenting information about the specified modifier; the determining step includes determining whether the case particles are included in the sentence after the restoration. The method includes a first step of extracting a part of speech or a group of parts of speech that serves to connect clauses from among the subordinate clauses contained in the sentence; a second step of determining whether the extracted part of speech or group of parts of speech can be connected to at least one of the subject and the topic contained in the sentence after the case particles have been restored, based on connection information of the extracted part of speech or group of parts of speech; and a third step of determining at least one of the subject and the topic as a modifying clause depending on the determination result, wherein the connection information has a data structure that associates, for each part of speech or group of parts of speech, whether it can be connected to at least one of the subject and the topic, with the content of the constraints regarding the connection. [Effects of the Invention]
[0007] According to the present disclosure, the accuracy of dependency analysis can be improved. [Brief explanation of the drawings]
[0008] [Figure 1] 1 is a block diagram showing an example of the overall configuration of a system 1. FIG. [Figure 2] 2 is a block diagram showing an example of the configuration of a terminal device 10 shown in FIG. 1. FIG. [Figure 3] 2 is a block diagram showing an example of the configuration of a server 20 shown in FIG. 1. FIG. [Figure 4] 4 is a diagram showing the data structure of a case frame table 2022 shown in FIG. 3. FIG. [Figure 5]10 is a flowchart showing an example of the operation of the server 20 when executing a dependency analysis. [Figure 6] 10 is a schematic diagram showing an example of a display screen of a display 141 when analysis information is presented. FIG. [Figure 7] FIG. 2 is a block diagram showing the basic hardware configuration of a computer 90. DETAILED DESCRIPTION OF THE INVENTION
[0009] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In all drawings describing the embodiments, common components are designated by the same reference numerals, and repeated explanations will be omitted. Note that the following embodiments do not unduly limit the content of the present disclosure described in the claims. Furthermore, not all components shown in the embodiments are necessarily essential components of the present disclosure. Furthermore, each drawing is a schematic diagram and is not necessarily a precise illustration.
[0010] [1. Overview] The system according to this embodiment addresses a situation where, for example, a case particle is overwritten by a linking particle, making it unclear which predicate phrase a predicate phrase modifies. In the system according to this embodiment, a server uploads a sentence input to a terminal device. The system according to this embodiment divides the sentence uploaded to the server into multiple phrases. The system according to this embodiment restores the case particle for each of the multiple separated phrases using a case frame. The system according to this embodiment determines a modifier clause from among the multiple phrases based on the restored case particle. In this specification, a "modifier clause" refers to a phrase consisting of one or more phrases that modify a predicate. The system according to this embodiment determines the modifier of the predicate based on the properties of the determined modifier clause and presents information about the modifier clause to the user.
[0011] In the process of determining the above-mentioned modifier clause, the system of this embodiment executes the following processes: extracting a part of speech or a group of parts of speech that serves to connect clauses from the subordinate clauses contained in the sentence after the case particles have been restored; determining whether the extracted part of speech or group of parts of speech can be connected to at least one of the subject and topic contained in the sentence after the case particles have been restored, based on the connection information of the extracted part of speech or group of parts of speech; and determining at least one of the subject and topic as a modifier clause depending on the determination result.
[0012] There are no particular limitations on the content and type of text that can be processed by the system of this embodiment; for example, texts found in reports, papers, manuals, letters, etc., as well as texts found in novels, papers, essays, poems, tanka, etc., are also included.
[0013] [2. Overall system configuration] Fig. 1 is a block diagram showing an example of the overall configuration of a system 1. The system 1 shown in Fig. 1 includes, for example, a terminal device 10 and a server 20. The terminal device 10 and the server 20 are connected for communication via, for example, a network 80.
[0014] 1 shows an example in which the system 1 includes one terminal device 10, but the system 1 may include two or more terminal devices 10. Furthermore, in this embodiment, a collection of multiple information processing devices may be configured as one server 20. The way in which multiple functions required to realize the server 20 according to this embodiment are allocated to one or multiple pieces of hardware can be determined appropriately depending on the processing capacity of each piece of hardware and / or the specifications required for the server 20.
[0015] The terminal device 10 shown in FIG. 1 is, for example, an information processing device operated by a user who uses a dependency analysis service. The dependency analysis service is a service that analyzes the structure of a sentence by identifying the dependency relationships between each word or phrase in the sentence, and is provided by, for example, a server 20. The terminal device 10 is realized by, for example, a mobile terminal such as a smartphone or a tablet. In this embodiment, the terminal device 10 is assumed to be a smartphone. The terminal device 10 may also be realized by, for example, a desktop personal computer (PC), a laptop PC, or the like.
[0016] The terminal device 10 includes a communication IF (Interface) 12, an input device 13, an output device 14, a memory 15, a storage 16, and a processor 19. The input device 13 is a device for receiving input operations from a user (for example, a touch panel, a touch pad, a pointing device such as a mouse, a keyboard, etc.). The output device 14 is a device for presenting information to a user (a display, a speaker, etc.). In this embodiment, the terminal device 10 is assumed to include a touch panel in which the input device 13 and the output device 14 are integrated.
[0017] The server 20 is, for example, an information processing device that deploys a dependency analysis service, and is realized by a computer connected to a network 80. As shown in Fig. 1, the server 20 includes a communication IF 22, an input / output IF 23, a memory 25, a storage 26, and a processor 29. The input / output IF 23 functions as an input device for receiving input operations from a user, and as an interface for an output device for outputting information to the user.
[0018] Each information processing device that makes up the system 1 is configured by a computer 90 (see FIG. 7) equipped with an arithmetic unit and a storage device. The basic hardware configuration of the computer and the basic functional configuration of the computer realized by the hardware configuration will be described later. For each of the terminal device 10 and the server 20, descriptions that overlap with the basic hardware configuration and basic functional configuration of the computer that will be described later will be omitted.
[0019] <2.1 Terminal device configuration> Fig. 2 is a block diagram showing an example of the configuration of the terminal device 10 shown in Fig. 1. As shown in Fig. 2, the terminal device 10 includes a communication unit 120, an input device 13, an output device 14, a storage unit 180, and a control unit 190. The blocks included in the terminal device 10 are electrically connected by, for example, a bus. The terminal device 10 may also include an audio processing unit, a microphone, a speaker, a camera, a position information sensor, or a combination of at least two of these.
[0020] The communication unit 120 performs processing such as modulation and demodulation for the terminal device 10 to communicate with an external device. The communication unit 120 performs transmission processing on a signal generated by the control unit 190 and transmits the signal to the outside (for example, the server 20). The communication unit 120 performs reception processing on a signal received from the outside and outputs the signal to the control unit 190.
[0021] The input device 13 is a device for a user operating the terminal device 10 to input instructions or information. The input device 13 is realized, for example, by a touch-sensitive device 131 that inputs instructions by touching the operation surface. If the terminal device 10 is a PC or the like, the input device 13 may be realized by a reader, keyboard, mouse, or the like. The input device 13 converts instructions input by the user into electrical signals and outputs them to the control unit 190. The input device 13 may include, for example, a receiving port that receives electrical signals input from an external input device.
[0022] The output device 14 is a device for presenting information to a user operating the terminal device 10. The output device 14 is realized, for example, by a display 141. The display 141 displays various information according to the control of the control unit 190. The display 141 is realized, for example, by an LCD (Liquid Crystal Display) or an organic EL (Electro-Luminescence) display.
[0023] 1, and stores data and programs used by the terminal device 10. The programs include applications such as a web browser application.
[0024] The control unit 190 is realized by the processor 19 reading a program stored in the storage unit 180 and executing instructions included in the program. The control unit 190 controls the operation of the terminal device 10. The control unit 190 performs the functions of an operation reception unit 191, a transmission / reception unit 192, and a presentation control unit 193 by operating in accordance with the program.
[0025] The operation reception unit 191 performs processing for receiving instructions or information input from the input device 13. Specifically, the operation reception unit 191 receives instructions or information input from the touch-sensitive device 131. The transmission / reception unit 192 performs processing for the terminal device 10 to transmit and receive data to and from an external device such as the server 20 in accordance with a communication protocol. Specifically, the transmission / reception unit 192 transmits instructions or information input by the user to the server 20. The transmission / reception unit 192 receives information transmitted from the server 20. The presentation control unit 193 controls the output device 14 to present various pieces of information transmitted from the server 20 to the user.
[0026] <2.2 Server configuration> Fig. 3 is a block diagram showing an example of the functional configuration of the server 20 shown in Fig. 1. As shown in Fig. 3, the server 20 performs the functions of a communication unit 201, a storage unit 202, and a control unit 203.
[0027] The communication unit 201 performs processing for the server 20 to communicate with external devices. The storage unit 202 is realized by, for example, the memory 25 and storage 26 shown in FIG. 1 , and stores data and programs used by the server 20. The programs include applications such as a web browser application. The storage unit 202 stores, for example, an app 2021 and a case frame table 2022.
[0028] The application 2021 is an application for managing the use of the dependency analysis service by the user. The application 2021 runs, for example, in the background of other applications installed on the server 20, and monitors the processes executed by the user. The user can access the application 2021 in the server 20 using a web browser application installed on the terminal device 10.
[0029] The server 20 may, for example, grasp / manage the usage status of the app 2021 and execute a predetermined analysis process. The app 2021 may, for example, be installed in the terminal device 10 and stored in the storage unit 180. In this case, the app 2021 may, for example, be installed as an extended function of word processing software installed in the terminal device 10.
[0030] The case frame table 2022 is a table that stores information about case frames. Details of the case frame table 2022 will be described later.
[0031] The tables stored in the storage unit 202 are not limited to these. Furthermore, the case frame table 2022 does not have to be stored in the storage unit 202. For example, the case frame table 2022 may be stored in a server related to a service for sharing information about case frames among multiple users.
[0032] The control unit 203 is realized by the processor 29 reading a program stored in the storage unit 202 and executing instructions included in the program. The program read by the control unit 203 from the storage unit 202 includes a programming language such as JavaScript (registered trademark) that is executed on a web browser application stored in the terminal device 10. The control unit 203 operates in accordance with the program to fulfill the functions of a reception control module 2031, a transmission control module 2032, a preprocessing module 2033, an analysis processing module 2034, and a presentation control module 2035.
[0033] The reception control module 2031 controls the process by which the server 20 receives signals from external devices in accordance with a communication protocol. The transmission control module 2032 controls the process by which the server 20 transmits signals to external devices in accordance with a communication protocol. The preprocessing module 2033 executes preprocessing to divide a sentence input accepted by the server 20 into multiple phrases. The preprocessing will be described in detail later.
[0034] The analysis processing module 2034 restores case particles using case frames for a sentence divided into multiple phrases by the preprocessing module 2033. A case frame organizes predicates and arguments related to the predicates according to the usage of the predicates. An argument is a noun accompanied by a case particle that indicates a syntactic role for the predicate. In other words, a case frame compiles information such as the fact that the predicate "teach (verb)" takes case particles such as "ni" or "o" and the predicate "taberu (verb)" takes case particles such as "o". In this embodiment, the case frame is embodied as a case frame table 2022 (case frame dictionary).
[0035] Based on the restored case particles, the analysis processing module 2034 determines, as a modifier clause, a clause that modifies a predicate in the sentence from among the multiple clauses separated by the preprocessing module 2033. Based on the properties of the determined modifier clause, the analysis processing module 2034 identifies the modifier of the predicate in the sentence. Details of each process executed by the analysis processing module 2034 will be described later.
[0036] The presentation control module 2035 controls the process of presenting various information to the user. For example, the presentation control module 2035 presents to the user information (analysis information, described later) relating to the dependency of the predicate identified by the analysis processing module 2034.
[0037] [3 Data Structure] 4 is a diagram showing the data structure of tables stored in the server 20. Note that the data structure in FIG. 4 is merely an example and does not exclude data not shown in the figure. Furthermore, data listed in the same table may be stored in separate storage areas in the storage unit 202.
[0038] Fig. 4 is a diagram showing the data structure of the case frame table 2022. The case frame table 2022 shown in Fig. 4 is a case frame dictionary serving as a "collection of examples centered on verbs" that describes the relationship between predicates such as verbs and arguments. The case frame table 2022 shown in Fig. 4 is a table that uses a case frame ID as a key and has columns for terms, case particles, and examples.
[0039] The item "Case Frame ID" is an item that stores an identifier for identifying a case frame in a match. The item "Term" is an item that stores specific examples of predicates. In the example of FIG. 4, the item "Term" stores verbs as specific examples of predicates, but the item "Term" may also store at least one of adjectives, adjectival verbs, or combinations of nouns and auxiliary verbs as specific examples of predicates. The item "Case Particle" is an item that stores some or all of the case particles that a specific example of a predicate can take. The item "Example" is an item that stores, for an argument that is related to a specific example of a predicate, some or all of the specific examples of nouns that make up the argument.
[0040] 4 shows only a portion of the information stored in the case frame table 2022 for the sake of simplicity. In reality, the case frame table 2022 stores a plurality of terms not shown, as well as case particles and examples associated with each of the plurality of terms. The contents of the case frame table 2022 may be updated as appropriate, for example, by an administrator of the server 20.
[0041] [4 actions] An example of the operation of the server 20 when executing dependency analysis will be described below. Fig. 5 is a flowchart showing an example of the operation of the server 20 when executing dependency analysis.
[0042] In step S11 shown in FIG. 5, the server 20 accepts input of a sentence (receiving step).
[0043] Specifically, for example, the operation acceptance unit 191 accepts a text input operation by the user and transmits text information indicating the input text to the transmission / reception unit 192. The transmission / reception unit 192 transmits the text information received from the operation acceptance unit 191 to the server 20, for example. The reception control module 2031 receives text information transmitted from the terminal device 10, for example. This allows the server 20 to accept text input by the user. The reception control module 2031 transmits the text information received from the terminal device 10 to the pre-processing module 2033, for example.
[0044] Note that the server 20 may accept input of text by the user, for example, by the reception control module 2031 receiving text information stored in advance in the storage unit 180. In this case, the operation reception unit 191 may, for example, accept a transmission request for text information from the user and transmit it to the transmission / reception unit 192. The transmission / reception unit 192 that has received the transmission request may, for example, read out the text information from the storage unit 180 and transmit it to the server 20. The text information in this case may, for example, be text data of the text or scanned data of a document on which the text is written.
[0045] In step S12, the server 20 executes preprocessing to divide the input sentence into a plurality of phrases (preprocessing step).
[0046] Specifically, for example, the preprocessing module 2033 breaks down a sentence indicated by the sentence information into words (morphological analysis). For example, if the sentence is "I eat curry," the preprocessing module 2033 breaks down this sentence into "I / eat / curry / ."
[0047] Here, for example, if a sentence includes a supplementary sentence and parentheses surrounding the supplementary sentence, the preprocessing module 2033 separates the supplementary sentence and the parentheses from the sentence. A supplementary sentence is a supplementary explanation or note for a certain matter. Parentheses surrounding a supplementary sentence are usually parentheses, but this is not limited to this case; any type of parentheses surrounding a supplementary sentence will be separated. For example, if the sentence is "I saw a lion (a large carnivorous mammal that lives in the African continent and parts of India) at the zoo," the preprocessing module 2033 separates "(a large carnivorous mammal that lives in the African continent and parts of India)" from the sentence.
[0048] On the other hand, in the case of sentences other than supplementary sentences and parentheses surrounding the sentences, the preprocessing module 2033 does not separate them from the sentence. For example, if the sentence is "He said hello to me," the preprocessing module 2033 does not separate "hello" from the sentence.
[0049] The preprocessing module 2033 performs preprocessing on the sentence after separating the supplementary sentences and parentheses, for example. For example, if the sentence is "I saw a lion (a large carnivorous mammal that lives in the African continent and parts of India) at the zoo," the preprocessing module 2033 decomposes the sentence after separating the supplementary sentences and parentheses, "I saw a lion at the zoo," into "I saw a lion at the zoo."
[0050] The preprocessing module 2033 also performs the preprocessing of step S12 on the supplementary sentence separated from the sentence. For example, if the sentence is "I saw a lion (a large carnivorous mammal that lives in the African continent and parts of India) at the zoo," the preprocessing module 2033 also decomposes the separated supplementary sentence "It is a large carnivorous mammal that lives in the African continent and parts of India" into "It is a large carnivorous mammal that lives in parts of the African continent and India," and then performs the preprocessing of S12.
[0051] Note that the process of separating supplementary sentences and parentheses, and the preprocessing of supplementary sentences separated from sentences are not essential. However, by having the preprocessing module 2033 perform these processes, the accuracy of dependency analysis is further improved. Furthermore, the order of the process of dividing sentences into words, the process of separating supplementary sentences and parentheses, and the preprocessing of supplementary sentences separated from sentences can be changed as desired. Alternatively, the preprocessing module 2033 may perform these three processes simultaneously.
[0052] Next, the preprocessing module 2033 identifies predicates from, for example, the decomposed sentence. In this embodiment, if the decomposed sentence contains multiple predicates, the preprocessing module 2033 identifies all of the multiple predicates. For example, if the decomposed sentence is "I / ga / bought / a / car / to / ride," the preprocessing module 2033 identifies "bought (verb and auxiliary verb)" and "ride (verb)" from this sentence as predicates. Note that, as described above, predicates are formed from verbs, adjectives, adjectival verbs, or combinations of a noun, a particle, and an auxiliary verb.
[0053] Next, the preprocessing module 2033 groups the decomposed multiple words into phrases, for example, using particles in the sentence as clues. For example, if the decomposed sentence is "I / wa / taberu / curry / ", it is grouped into multiple phrases such as "I / taberu / curry / ". Here, if there is a part in the sentence where nouns are consecutive, the preprocessing module 2033 determines whether the part is a phrase or whether the part can be divided into multiple phrases. For example, in the case of "yakiniku set meal" (grilled meat set meal), the preprocessing module 2033 determines that it is a phrase, and in the case of "last year set meal" (last year set meal), the preprocessing module 2033 determines that it can be divided into two phrases, "last year / set meal".
[0054] The order of the process of identifying a predicate from the decomposed sentence and the process of grouping the decomposed words into phrases can be reversed. Alternatively, the preprocessing module 2033 may execute these two processes simultaneously.
[0055] By executing the above series of processes, the preprocessing module 2033 performs preprocessing on the input text. The preprocessing module 2033 transmits, for example, preprocessed text information indicating the text after preprocessing to the analysis processing module 2034.
[0056] It is not essential that the preprocessing module 2033 executes preprocessing. For example, the server 20 may input a sentence received as input to an AI model, and the AI model may output a sentence divided into multiple phrases. In this case, the AI model is, for example, a trained model that executes natural language processing, and may be a machine learning model or a generative AI model.
[0057] In step S13, the server 20 restores the case particles for the sentence divided into multiple phrases using the case frames (restoration step).
[0058] Specifically, for example, the analysis processing module 2034 determines whether or not a case particle has been deleted by a conjunction particle for each of a plurality of phrases included in the preprocessed sentence information received from the preprocessing module 2033. If it is determined that a case particle has been deleted by a conjunction particle, the analysis processing module 2034 refers to the case frame table 2022 and restores the case particle that was deleted by the conjunction particle.
[0059] For example, if the multiple phrases included in the preprocessed sentence information are "I / curry / taberu," the analysis processing module 2034 determines that the case particle taken by the noun "I" in the phrase "I" has been deleted by the linking particle "wa." In this case, the analysis processing module 2034, for example, refers to the case frame table 2022 and overwrites the case particle that matches the noun "I" among the case particles that the predicate "taberu" can take with the linking particle "wa." In other words, since "wo" has already been used among the case particles that the predicate "taberu" can take, the analysis processing module 2034 overwrites the remaining case particle "ga" with the linking particle "wa." In this way, the analysis processing module 2034 restores the case particle that was deleted by the linking particle.
[0060] Furthermore, for example, the analysis processing module 2034 determines whether or not a case particle has been omitted for each of a plurality of phrases included in the preprocessed sentence information received from the preprocessing module 2033. If it is determined that a case particle has been omitted, the analysis processing module 2034 refers to the case frame table 2022 and restores the omitted case particle.
[0061] For example, if the preprocessed sentence information includes multiple phrases "I / I went to Kyoto," the analysis processing module 2034 determines that the case particle taken by the noun "I" in the phrase "I" has been omitted. In this case, the analysis processing module 2034, for example, refers to the case frame table 2022 and adds a case particle that matches the noun "I" from among the case particles that the predicate "I went" can take. In other words, since "ni" has already been used among the case particles that the predicate "I went" can take, the analysis processing module 2034 adds the remaining case particle "ga" after the noun "I." In this way, the analysis processing module 2034 restores the omitted case particle.
[0062] In step S14, the server 20 determines, based on the restored case particles and connection information, from among the divided multiple phrases, a phrase that modifies a predicate in the sentence as a modifying phrase (determining step).
[0063] Conjunction information systematically describes the syntactic constraints of parts of speech or parts of speech groups (hereinafter sometimes referred to as "connective elements") that connect phrases, and indicates whether a connective element can be connected to at least one of the subject and topic in a sentence. In this specification, "parts of speech or parts of speech groups that connect phrases" specifically refers to the elements that make up the predicate of a subordinate clause, excluding the central semantic parts such as verbs, nouns, adjectives, or adjectival verbs that are positioned at the beginning of the predicate. In addition, in this specification, "parts of speech or parts of speech groups that connect phrases" is a concept that encompasses single parts of speech such as "nagara" (conjunction particles) and "ga" (conjunction particles) included in a subordinate clause, as well as parts of speech groups consisting of multiple parts of speech such as "no toki" (a combination of the particle "no" and the noun "toki").
[0064] For example, the conjunction particle "nagara" (meaning "while") indicates that it cannot be connected to either the subject or the topic. Also, for example, the combination of the particle "no" and the noun "toki" (when the subject is not connected) indicates that it cannot be connected to the topic but can be connected to the subject. Furthermore, the conjunction particle "ga" (ga) indicates that it can be connected to either the subject or the topic.
[0065] Such connection information is information that is predefined for various connection elements based on general linguistic knowledge. Specifically, the connection information has a data structure in a table format that includes, for example, the following items: Item 1 "Connective elements": Parts of speech or groups of parts of speech that have a connective function, such as the conjunctive particles "nagara," "no de," and "ga," as well as "no toki," which includes a formal noun. Item 2 "Conjunction Constraint Type": Indicates the object to which the constraint applies. "Subject Conjunction", "Topic Conjunction", etc. Item 3 "Connection Possible / Invalid": Indicates whether or not connection with the target indicated by the connection restriction type is possible. "Possible", "Not Possible", "Conditional", etc. Item 4 "Constraints": Describe the specific conditions and properties of the conjunction. For example, describe a linguistic constraint such as "it must be identical to the subject of the predicate of the main clause."
[0066] For example, the connection information for the connective element "while" has a data structure in which the connection constraint type "subject connection" is linked with the connection possibility "not possible" and the constraint content "the subject must not be the direct dependent," and a data structure in which the connection constraint type "subject connection" is linked with the connection possibility "not possible" and the constraint content "requires that the subject be the same as the subject of the predicate of the main clause."Furthermore, for example, the connection information for the connective information "when" has a data structure in which the connection possibility "possible" is linked with the connection constraint type "subject connection," and a data structure in which the connection possibility "not possible" is linked with the connection constraint type "subject connection."Furthermore, the connection information for the connective information "ga" has a data structure in which the connection possibility "possible" is linked with the connection constraint type "subject connection," and a data structure in which the connection possibility "possible" is linked with the connection constraint type "subject connection."
[0067] In this embodiment, the connection information is stored in a database (not shown) as a data structure that defines constraints on connections with subjects and topics for each connection element. The database is stored, for example, in the storage unit 202. The server 20 searches this database according to connection elements that appear in a sentence, reads out the corresponding connection constraints, and uses them for analysis.
[0068] The connection information may be information indicating the type of connection between parts of speech or groups of parts of speech, such as sequential connection, adversative connection, juxtaposition / addition, contrast / selection, explanation / supplement, conversion, etc. By using such connection information, the accuracy of dependency analysis can be further improved.
[0069] Specifically, for example, the analysis processing module 2034 classifies the function of each of the divided multiple phrases. Here, the functions of phrases are classified into five types: subject, predicate, modifier, object, and independent word. For example, if the sentence after restoring the case particles is "Last week, while I was eating lunch with my friend, my cell phone rang," the analysis processing module 2034 classifies "Last week," as an adverbial clause (a modifier of a verb), "lunch," as a modifier, "while eating," as a predicate, and "I" as a subject, etc.
[0070] Next, the analysis processing module 2034 determines the phrases that modify the predicates in the sentence based on, for example, the classification results of the functions of the phrases, the case frame, and the connection information, and sets them as modifying clauses.
[0071] Specifically, while analyzing the sentence after restoring the case particles, the analysis processing module 2034 first extracts a part of speech or a group of parts of speech (e.g., "nagara" or "toki") that serves to connect phrases from the end of the predicate of the subordinate clause (first step). Next, the analysis processing module 2034 determines whether the extracted part of speech or group of parts of speech is connectable to at least one of the subject and topic included in the sentence after restoring the case particles, based on the connection information read from the database (second step). Then, the analysis processing module 2034 determines at least one of the subject and topic as a modifier clause according to the determination result (third step). The analysis processing module 2034 performs this process of determining a modifier clause for each phrase from the end of the sentence to the beginning, as follows:
[0072] That is, the analysis processing module 2034 first sets the last phrase of the sentence (including a part of speech or a group of parts of speech) as a candidate predicate to which the subordinate clause belongs. Then, the analysis processing module 2034 determines whether the phrase to be processed can depend (modify) the candidate predicate to which the subordinate clause belongs, while going back through the phrases one by one toward the beginning. If the phrase to be processed is a predicate, the analysis processing module 2034 switches the candidate predicate to the predicate to which the subordinate clause belongs. More specifically, if the phrase to be processed is a predicate that constitutes a subordinate clause, the analysis processing module 2034 determines the candidate predicate to which the subordinate clause can depend, based on the connection information contained in the conjunctive element (conjunction particle, formal noun, etc.) at the end of the subordinate clause. If the phrase being processed is a subject or topic (a first subject or topic located closer to the beginning of the sentence than the part of speech or part of speech group) and the connection information determines that the predicate of the dependency candidate cannot be connected to the subject or topic, the analysis processing module 2034 returns the current dependency candidate predicate to the previous dependency candidate predicate. The analysis processing module 2034 then determines the phrase being processed (subject or topic) as a modifier clause of the returned predicate. If the phrase being processed is a subject or topic and the connection information determines that the predicate of the dependency candidate can be connected to the subject or topic, and if it determines that no subject or topic (a second subject or second topic) exists closer to the beginning of the sentence than the phrase being processed, the analysis processing module 2034 determines the phrase being processed (subject or topic) as a modifier clause of the current dependency candidate predicate.
[0073] By repeating this process up to the beginning of the sentence, the analysis processing module 2034 can more accurately determine which predicate each clause modifies (i.e., the modifier clause). This series of processes does not depend on a specific connection element, but can be performed generically for a variety of sentences by referencing the database described above and applying the connection constraints defined there. Some specific examples are given below.
[0074] For example, if the sentence after classifying the functions of the phrases is "I saw from afar that my brother was laughing a little as he fell," the analysis processing module 2034 first determines the final predicate "saw" as a candidate predicate to which it depends. Next, the analysis processing module 2034 goes back to the phrase "from afar" which is one phrase earlier than "saw." Because "from afar" is a phrase other than a predicate, the analysis processing module 2034 determines "from afar" as a modifier clause of "saw." Next, the analysis processing module 2034 similarly determines the phrase "things" which is one phrase earlier than "from afar" as a modifier clause of "saw." Next, because the phrase earlier than "things" is the predicate "was laughing," the analysis processing module 2034 switches the candidate predicate to this predicate "was laughing." Next, the phrase "soku" (a little) immediately before "waraiteta" is a phrase other than a predicate, so the analysis processing module 2034 determines "soku" as a modifier of "waraiteta". Next, the phrase "torabinagara" (while falling) immediately before "soku" is a predicate, so the candidate predicate for the target of the modification is switched to this predicate "torabinagara".
[0075] Here, the analysis processing module 2034 extracts the conjunction particle "nagara" (while continuing) and reads out from the database connection information indicating that it "cannot be connected to a subject." The connection information for "nagara" includes information requiring that the subject of the predicate it connects to be the same as the subject of the predicate of the candidate predicate. Based on this information, the subject (older brother) of "falling" and the subject of "wataritei" (laughing) are determined. Due to the constraints indicated by the connection information, "falling" (while continuing), the current candidate predicate, is determined not to be the candidate predicate of the phrase "aniki ga" (older brother), but to serve as a modifier for the subsequent predicate "wataritei" (laughing). Based on this determination result, the analysis processing module 2034 excludes "falling" (while continuing) from the candidate predicates and returns it to the previous candidate predicate "wataritei" (laughing). The analysis processing module 2034 then determines "aniki ga" (older brother) as a modifier clause for the predicate "wataritei". Finally, the analysis processing module 2034 reads from the database connection information indicating that "the subject 'I' cannot be connected to the subordinate clause predicate 'I was laughing'," and based on that connection information, excludes 'I was laughing' from the candidate dependencies of 'I'. Then, the analysis processing module 2034 returns the candidate dependencies to 'I saw', the predicate of the main clause, and sets 'I' as a modifier clause of 'I saw'.
[0076] For example, if the sentence after classifying the functions of the phrases is "I was laughing when my brother fell," the noun "toki" in the phrase "when he fell" cannot be connected to the phrase "I am (the subject)" by its nature. Therefore, based on the connection information indicating that it cannot be connected to the subject, the analysis processing module 2034 determines that the predicate "when he fell" is modified by the phrase "my brother," and treats the phrase "my brother" as a modifying clause.
[0077] For example, if the sentence after classifying the functions of the phrases is "Grandpa mowed the lawn, but Grandma went to do the laundry," the combination "tagata" of the auxiliary verb "ta" and the conjunction particle "ga" in the phrase "shitaga," by its very nature, can be connected to the phrase "Grandpa is (theme)." Therefore, based on the connection information of "tagata" indicating that it can be connected to the theme, the analysis processing module 2034 determines that the predicate "shita" is modified by the phrase "Grandpa is," and classifies the phrase "Grandpa is" as a modifying clause.
[0078] For example, if the sentence at the stage of receiving input is "I watch TV while eating curry," the analysis processing module 2034 will determine the predicate "watch" first, which is located at the end of the two predicates "eat" and "watch." The analysis processing module 2034 will also determine the modifier clause from the perspective of whether it is a clause connectable to the predicate.
[0079] That is, when the sentence at the stage of receiving the input is "I watch TV while eating curry," the analysis processing module 2034 refers to the case frame table 2022, confirms that the predicate "miru" takes the case particle "o," and recognizes that the phrase "television o" can be connected to the predicate "miru." Then, because the phrase "tabe nakara" (while eating), which is located one phrase closer to the beginning of the phrase "television o," is a predicate, the analysis processing module 2034 temporarily suspends the decision on the predicate "miru."
[0080] Next, the analysis processing module 2034 refers to the case frame table 2022, confirms that the predicate "taberunagara" takes the case particle "o," and recognizes that the phrase "curry o" can be connected to the predicate "taberunagara." Then, information is obtained that, due to the nature of the conjunction particle "nagare" in the predicate "taberunagara," the predicate "taberunagara" cannot be connected to the phrase "I am (theme)." Based on this information, the analysis processing module 2034 determines the phrase "curry o" to be a modifier clause of the predicate "taberunagara."
[0081] Next, since the phrase "I am" is the subject and cannot be connected to "while eating," the analysis processing module 2034 changes the connection back to "see." Furthermore, the case particle "ga" is restored by the analysis processing module 2034 from the connecting particle "wa" in the phrase. The analysis processing module 2034 refers to the case frame table 2022 and confirms that the predicate "see" takes the case particle "ga," and recognizes that the phrase "I am" can be connected to the predicate "see." As a result, the analysis processing module 2034 determines the phrase "I am" and the phrase "watching television" as modifier clauses of the predicate "see."
[0082] In step S15, the server 20 identifies the destination of the predicate modified by the determined modifier clause based on the nature of the modifier clause (identification step).
[0083] Specifically, for example, the analysis processing module 2034 identifies the related party based on the following (1) to (4) and transmits the analysis information to the presentation control module 2035. The analysis information is information relating to the related party identified by the analysis processing module 2034. (1) When a sentence contains multiple predicates, the analysis processing module 2034 identifies which clause (dependency destination) a predicate other than the predicate of the main clause depends on. (2) When the last clause of a phrase of a predicate modified by a modifier clause is a noun, the analysis processing module 2034 identifies the noun as the subject of the predicate modified by the modifier clause. For example, when the sentence after determining the modifier clause is "I will ride in the car I bought," the last clause of the phrase of the predicate "bought" modified by the modifier clause "I" is the noun "car," so the analysis processing module 2034 identifies the subject of the predicate "bought" as the noun "car." (3) When the last clause of a phrase containing a predicate modified by a modifier clause is a quotation particle such as "to" or "tte," the analysis processing module 2034 recognizes the combination of the modifier clause and the predicate modified by the modifier clause as a quoted phrase. The analysis processing module 2034 then identifies the quotation particle as the target of the predicate modified by the modifier clause. For example, if the sentence after determining the modifier clause is "I said, 'I'm tired,'" the analysis processing module 2034 recognizes "I'm tired" as a quoted phrase because the last clause of the phrase containing the predicate "tired," which is modified by the modifier clause "watashi ga," is the quotation particle "to." The analysis processing module 2034 then identifies the quotation particle "to" as the target of the predicate "tired." (4) If the subordinate clause is neither a noun nor a quotation particle, the analysis processing module 2034 determines that the subordinate clause modifies the entire main clause that follows, and identifies the entire main clause as the subordinate clause. For example, in the sentence "Grandpa went to mow the lawn, but Grandma went to the river to do the laundry," the subordinate clause "Grandpa went to mow the lawn, but," which includes the predicate "went," is neither a noun nor a quotation particle, so the analysis processing module 2034 determines that the subordinate clause modifies the entire main clause "Grandma went to the river to do the laundry."
[0084] If the preprocessing module 2033 also performs preprocessing on the supplemental sentence separated from the text, the analysis processing module 2034 performs the processes from step S13 to step S15 on the supplemental sentence.
[0085] In step S16, the server 20 presents the analysis information (presentation step).
[0086] Specifically, for example, the presentation control module 2035 transmits the analysis information received from the analysis processing module 2034 to the terminal device 10. The presentation control module 2035 controls, for example, the transmission / reception unit 192 and the presentation control unit 193 to display the analysis information on the display screen of the display 141. In this way, the server 20 presents the analysis information to the user.
[0087] The content of the analysis information presented to the user is not particularly limited as long as it is information about the dependency of a predicate modified by a modifier clause. For example, the analysis information may present only the identified dependency in a list format regarding the dependency identification results by the analysis processing module 2034, or may present the identified dependency in a format that allows it to be distinguished from other parts of the entire sentence. Furthermore, for example, the analysis information may present each processing step up to the identification of the dependency by the analysis processing module 2034 while showing the entire sentence.
[0088] An example of the display screen of the display 141 when the analysis information is presented will be described below with reference to Fig. 6. Fig. 6 is a schematic diagram showing an example of the display screen of the display 141 when the analysis information is presented.
[0089] In the example shown in Fig. 6, analysis information 1411 is displayed on the display screen of the display 141. Specifically, for example, the entire sentence (hereinafter referred to as the original sentence) input by the server 20 is displayed in a display field 1412 for the original sentence. In Fig. 6, "Last week, while I was having lunch with a friend (restaurant name: ☆☆ Ramen), I also let my cell phone ring." is displayed in the display field 1412 as the original sentence. Also, for example, a display field 1413 for the revision proposal displays a revised sentence of the original sentence after the analysis processing module 2034 has restored the case particles. In Fig. 6, "Last week, while I was having lunch with a friend (restaurant name: ☆☆ Ramen), I also let my cell phone ring." is displayed in the display field 1413 as the revised sentence. Also, each of the restored case particles "ni," "ga," and "wo" is displayed in bold and underlined. Furthermore, for example, the display column 1414 of the dependency of the predicate displays the dependency identified by the analysis processing module 2034 and the predicate modifying the dependency. In Fig. 6, "Last week, I made my cell phone ring" is displayed as the dependency, and "While I was eating" is displayed as the predicate modifying the dependency in the display column 1414.
[0090] In the example shown in Fig. 6, case particles have been restored in three places in the original sentence, and so three correction content display columns are displayed on the display screen of display 141. That is, correction content display column 1415 displays that the case particle was omitted in the phrase "last week" and that the case particle "ni" has been restored. Correction content display column 1417 displays that the case particle was overwritten by the link particle "ha" in the phrase "I am" and that the case particle "ga" has been restored. Correction content display column 1419 displays that the case particle was overwritten by the link particle "mo" in the phrase "ketai mo" and that the case particle "wo" has been restored.
[0091] Also, a confirmation button 1416 for confirming the correction content of the original text is displayed within display field 1415, a confirmation button 1418 is displayed within display field 1417, and a confirmation button 1420 is displayed within display field 1419. In FIG. 6, for example, when the operation accepting unit 191 accepts a tap operation on the confirmation button 1416, the presentation control module 2035 controls the presentation control unit 193 to confirm the restoration of the case particle "ni." Also, for example, when the operation accepting unit 191 accepts a tap operation on the confirmation button 1418, the presentation control module 2035 controls the presentation control unit 193 to confirm the restoration of the case particle "ga." Also, for example, when the operation accepting unit 191 accepts a tap operation on the confirmation button 1420, the presentation control module 2035 controls the presentation control unit 193 to confirm the restoration of the case particle "wo."
[0092] 6 is merely an example. Various variations are possible regarding the display content and display mode of the analysis information 1411 on the display screen of the display 141.
[0093] [5 Summary] As described above, in this embodiment, the operation receiving unit 191 receives a sentence input operation by the user and transmits the sentence information to the server 20 via the transmitting / receiving unit 192. The reception control module 2031 receives the sentence information transmitted from the terminal device 10. The preprocessing module 2033 performs preprocessing to divide the sentence indicated by the sentence information into multiple phrases. The analysis processing module 2034 restores case particles for the sentence divided into multiple phrases by the preprocessing module 2033 by referring to the case frame table 2022. The analysis processing module 2034 determines a modifier clause from among the multiple divided phrases based on the restored case particles and connection information. The analysis processing module 2034 identifies the modifier clause of the predicate based on the properties of the determined modifier clause. The presentation control module 2035 presents the analysis information to the user.
[0094] This prevents, for example, the omission of a case particle or the overwriting of a particle with a dependency particle, making it unclear which predicate a phrase modifies. This makes it possible to clearly identify the modifying relationship between a phrase and a predicate, thereby improving the accuracy of dependency analysis. Furthermore, by presenting the analysis information, users can grasp various information about the predicate to which the phrase depends. This increases the user's options for using the analysis results of dependency analysis.
[0095] [6. Modifications] In this embodiment, an example has been described in which the server 20 determines a modifier clause solely based on a rule base. However, for example, if the server 20 cannot determine a modifier clause based on a rule base, the server 20 may determine the modifier clause by using another method in combination. Specifically, for example, if the server 20 cannot determine a modifier clause based on the restored case particle, the server 20 may determine the modifier clause by probabilistic judgment using a case frame.
[0096] More specifically, for example, when the analysis processing module 2034 cannot determine the modifier clause based on the restored case particle, it may determine the modifier clause by a known probabilistic judgment while referring to the case frame table 2022. Various known probabilistic judgments are conceivable, and for example, probabilistic judgments using Cabocha, a known open source, or KNP, a known analysis system, may be employed.
[0097] For example, when the sentence to be analyzed by the analysis processing module 2034 is "I also ate curry," both case particles are overwritten by the connecting particles "wa" and "mo." In this case, since it is impossible to restore the case particles based on a rule such as in this embodiment, the analysis processing module 2034 may restore the two case particles using probabilistic judgment.
[0098] By using this type of probabilistic judgment in combination, dependency analysis can be performed reliably even in cases where multiple case particles have been deleted or where the dependency structure is complex and difficult to read.
[0099] Note that the method used in conjunction with the rule-based method when the modifier clause cannot be determined is not limited to the above-mentioned probabilistic determination. For example, the server 20 may use an AI model instead of the probabilistic determination. Specifically, for example, the analysis processing module 2034 may input a sentence for which the modifier clause cannot be determined based on the restored case particle to an AI model, and cause the AI model to output a sentence in which the modifier clause has been determined. In this case, the AI model is, for example, a trained model that performs natural language processing, and may be a machine learning model or a generative AI model.
[0100] [7 Basic Computer Hardware Configuration] 7 is a block diagram showing the basic hardware configuration of a computer 90. The computer 90 includes at least a processor 901, a main memory device 902, an auxiliary memory device 903, and a communication IF 991 (interface), which are electrically connected to one another by a communication bus.
[0101] The processor 901 is hardware for executing an instruction set written in a program, and is composed of an arithmetic unit, registers, peripheral circuits, and the like.
[0102] The main storage device 902 is for temporarily storing programs, data to be processed by the programs, etc. For example, it is a volatile memory such as a DRAM (Dynamic Random Access Memory).
[0103] The auxiliary storage device 903 is a storage device for saving data and programs, such as a flash memory, a hard disk drive (HDD), a magneto-optical disk, a CD-ROM, a DVD-ROM, or a semiconductor memory.
[0104] The communication IF 991 is an interface for inputting and outputting signals for communicating with other computers via a network using wired or wireless communication standards.
[0105] The network is composed of the Internet, a LAN, various mobile communication systems constructed by wireless base stations, etc. For example, the network includes 3G, 4G, and 5G mobile communication systems, LTE (Long Term Evolution), and wireless networks (e.g., Wi-Fi (registered trademark)) that can connect to the Internet via a predetermined access point. In the case of a wireless connection, communication protocols include, for example, Z-Wave (registered trademark), ZigBee (registered trademark), and Bluetooth (registered trademark). In the case of a wired connection, the network also includes a direct connection using a USB (Universal Serial Bus) cable, etc.
[0106] It should be noted that the computer 90 can be virtually realized by distributing all or part of each hardware configuration across multiple computers 90 and interconnecting them via a network. In this way, the computer 90 is a concept that includes not only a computer 90 housed in a single housing or case, but also a virtualized computer system.
[0107] [8 Basic Functional Configuration of Computer 90] The following describes the functional configuration of a computer realized by the basic hardware configuration (FIG. 7) of the computer 90. The computer includes at least the functional units of a control unit, a storage unit, and a communication unit.
[0108] The functional units of the computer 90 can also be realized by distributing all or part of the functional units among multiple computers 90 interconnected via a network. The computer 90 is a concept that includes not only a single computer 90 but also a virtualized computer system.
[0109] The control unit is realized by the processor 901 reading out various programs stored in the auxiliary storage device 903, expanding them in the main storage device 902, and executing processing in accordance with the programs. The control unit can realize functional units that perform various types of information processing depending on the type of program. In this way, the computer is realized as an information processing device that performs information processing.
[0110] The storage unit is realized by a main storage device 902 and an auxiliary storage device 903. The storage unit stores data, various programs, and various databases. Furthermore, the processor 901 can allocate a storage area corresponding to the storage unit in the main storage device 902 or the auxiliary storage device 903 in accordance with the programs. Furthermore, the control unit can cause the processor 901 to execute processes for adding, updating, and deleting data stored in the storage unit in accordance with the various programs.
[0111] A database refers to a relational database, which manages data sets called masters and tables in a tabular format structurally defined by rows and columns, by relating them to each other. In a database, a table is called a table, a master, a column in a table is called a column, and a row in a table is called a record. In a relational database, relationships between tables and masters can be set and associated.
[0112] Typically, each table and each master has a column set as a primary key to uniquely identify a record, but setting a primary key to a column is not essential. The control unit can cause the processor 901 to add, delete, or update records in specific tables and masters stored in the storage unit according to various programs.
[0113] Furthermore, by storing data, various programs, and various databases in the storage unit, it can be considered that the information processing device and information processing system according to the present disclosure have been manufactured.
[0114] Note that the databases and masters in this disclosure may include any data structure in which information is structurally defined (such as a list, dictionary, associative array, or object). The data structure also includes data that can be considered as a data structure by combining data with functions, classes, methods, etc. written in any programming language.
[0115] The communication unit is realized by the communication IF 991. The communication unit realizes a function of communicating with other computers 90 via a network. The communication unit can receive information transmitted from other computers 90 and input the information to the control unit. The control unit can cause the processor 901 to execute information processing on the received information in accordance with various programs. In addition, the communication unit can transmit information output from the control unit to other computers 90.
[0116] Furthermore, the above-described configurations, functions, processing units, processing means, etc. may be partially or entirely implemented in hardware, for example, by designing them as integrated circuits. The present invention can also be realized by software program code that implements the functions of the embodiments. In this case, a storage medium on which the program code is recorded is provided to a computer, and a processor included in the computer reads the program code stored in the storage medium. In this case, the program code itself read from the storage medium implements the functions of the above-described embodiments, and the program code itself and the storage medium on which it is stored constitute the present invention. Examples of storage media for providing such program code include flexible disks, CD-ROMs, DVD-ROMs, hard disks, SSDs, optical disks, magneto-optical disks, CD-Rs, magnetic tape, non-volatile memory cards, and ROMs.
[0117] Furthermore, the program code that realizes the functions described in this embodiment can be implemented in a wide range of program or script languages, such as assembler, C / C++, perl, Shell, PHP, and Java (registered trademark).
[0118] Furthermore, the program code of the software that realizes the functions of the embodiments may be distributed via a network and stored in a storage means such as a computer's hard disk or memory, or in a storage medium such as a CD-RW or CD-R, and the processor of the computer may read and execute the program code stored in the storage means or the storage medium.
[0119] The functions performed by the components described herein may be implemented in circuitry or processing circuitry, including general-purpose processors, application-specific processors, integrated circuits, ASICs (Application Specific Integrated Circuits), a CPU (a Central Processing Unit), conventional circuits, and / or combinations thereof, programmed to perform the described functions. A processor includes transistors and other circuits and is considered to be circuitry or processing circuitry. A processor may also be a programmed processor that executes programs stored in a memory.
[0120] In this specification, a circuitry, unit, or means is hardware that is programmed to realize or performs the described functions, which may be any hardware disclosed herein or any hardware known to be programmed to realize or perform the described functions.
[0121] If the hardware is a processor considered to be a type of circuitry, the circuitry, means, or unit is a combination of the hardware and the software used to configure the hardware and / or processor.
[0122] Although several embodiments of the present disclosure have been described above, these embodiments can be embodied in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and modifications are intended to be included in the scope of the inventions and their equivalents as defined in the claims, as well as in the scope and spirit of the inventions.
[0123] [9. Appendix] The matters explained in the above embodiment and each modification will be supplemented below.
[0124] <Appendix 1> A program to be executed by a computer having a processor and a memory, the program causing the processor to execute a receiving step of receiving an input of a sentence, a preprocessing step of dividing the inputted sentence into a plurality of phrases, a restoration step of restoring case particles for the sentence divided into a plurality of phrases using a case frame, a determination step of determining, from the divided plurality of phrases based on the restored case particles, a phrase that modifies a predicate in the sentence as a modifying clause, a specification step of specifying a modifier of the predicate based on the property of the determined modifier clause, and a presentation step of presenting information on the specified modifier, The program includes a first step of extracting a part of speech or a group of parts of speech that serves to connect clauses from among subordinate clauses contained in the sentence after the case particles have been restored; a second step of determining whether the extracted part of speech or group of parts of speech can be connected to at least one of the subject and topic contained in the sentence after the case particles have been restored based on connection information of the extracted part of speech or group of parts of speech; and a third step of determining at least one of the subject and topic as a modifying clause depending on the determination result, wherein the connection information has a data structure that associates, for each part of speech or group of parts of speech, whether it can be connected to at least one of the subject and topic and the contents of the constraints regarding the connection.
[0125] <Appendix 2> In the determination step, if the modifying clause cannot be determined based on the restored case particle, the program determines the modifying clause by probabilistic judgment using a case frame (Appendix 1).
[0126] <Appendix 3> In the third step, the process of determining a modifier clause is executed from the end of the sentence to the beginning, and if the determination result shows that the part of speech or group of parts of speech contained in the subordinate clause or parallel clause cannot be connected to the first subject or first theme that is located earlier than that part of speech or group of parts of speech, the candidate destination of that part of speech or group of parts of speech is returned to the predicate that was the previous candidate destination, and the first subject or first theme is determined to be the modifier clause of the returned predicate; if the determination result shows that the part of speech or group of parts of speech contained in the subordinate clause or parallel clause can be connected to the first subject or first theme and that there is no second subject or second theme earlier than the first subject or first theme, the first subject or first theme is determined to be the modifier clause.
[0127] <Appendix 4> A program described in any one of (Appendix 1) to (Appendix 3), in which, in a preprocessing step, if the input sentence includes a supplementary sentence and parentheses surrounding the supplementary sentence, the supplementary sentence and parentheses are separated from the sentence.
[0128] <Appendix 5> A program described in (Appendix 4) in which, in a preprocessing step, supplementary sentences separated from the input sentence are divided into multiple phrases.
[0129] <Appendix 6> A program according to any one of (Appendix 1) to (Appendix 5), wherein in the restoration step, the case particle is restored if it has been deleted by a connecting particle.
[0130] <Appendix 7> A program according to any one of (Appendix 1) to (Appendix 6), wherein in the restoration step, the case particle is restored if it is omitted.
[0131] <Appendix 8> An information processing device comprising a control unit and a storage unit, wherein the control unit executes all steps in the program according to any one of (Supplementary Note 1) to (Supplementary Note 7).
[0132] <Appendix 9> A method executed by a computer having a processor and a memory, wherein the processor executes all steps in the program described in any one of (Appendix 1) to (Appendix 7).
[0133] <Appendix 10>
[0134] A system comprising one or more processors that execute all steps in the program described in any one of (Appendix 1) to (Appendix 7). [Explanation of symbols]
[0135] 1. System 10...Terminal device 120…Communications Department 13...Input device 131...Touch-sensitive devices 14...Output device 141...Display 15...Memory 16…Storage 19...Processor 20...Server 22...Communication IF 23...Input / output IF 25…Memory 26…Storage 29...Processor
Claims
1. A program to be executed by a computer having a processor and a memory, The program causes the processor to: a receiving step for receiving input of a sentence; a preprocessing step of dividing the input sentence into a plurality of phrases; a restoration step of restoring case particles using a case frame for the sentence divided into the plurality of phrases; a determining step of determining, from the plurality of separated phrases, a phrase that modifies a predicate in the sentence as a modifying phrase based on the restored case particle; a step of identifying a destination of the predicate based on the determined nature of the modifier clause; a presentation step of presenting information about the identified person involved; Execute The determining step a first step of extracting parts of speech or groups of parts of speech that serve to connect clauses from subordinate clauses included in the sentence after the case particles have been restored; a second step of determining whether the extracted part of speech or the group of parts of speech is connectable with at least one of the subject and topic included in the sentence after the case particle is restored, based on the connection information of the extracted part of speech or the group of parts of speech; a third step of determining at least one of the subject and the topic as the modifying clause according to the determination result, The connection information is a program having a data structure that associates, for each of the parts of speech or the groups of parts of speech, whether or not a part can be connected to at least one of the subject and the topic, with the contents of the restrictions regarding the connection.
2. 2. The program according to claim 1, wherein, in the determination step, if the modifying clause cannot be determined based on the restored case particle, the modifying clause is determined by a probabilistic judgment using the case frame.
3. In the third step, performing the process of determining the modifying clause from the end of the sentence to the beginning; If the determination result is that the part of speech or the group of parts of speech included in the subordinate clause cannot be connected to a first subject or first theme located at the beginning side of the part of speech or the group of parts of speech, return the candidate destination of the part of speech or the group of parts of speech to the predicate that was the previous candidate destination, and determine the first subject or the first theme as a modifying clause of the returned predicate; 2. The program of claim 1, wherein if the part of speech or group of parts of speech included in the subordinate clause can be connected to the first subject or the first theme, and if the determination result is that there is no second subject or second theme located closer to the beginning than the first subject or the first theme, the program determines the first subject or the first theme as the modifying clause.
4. 2. The program according to claim 1, wherein, in the preprocessing step, if the input sentence includes a supplementary sentence and parentheses surrounding the supplementary sentence, the supplementary sentence and the parentheses are separated from the sentence.
5. 5. The program according to claim 4, wherein in the preprocessing step, the supplemental sentence separated from the input sentence is divided into a plurality of phrases.
6. 2. The program according to claim 1, wherein in the restoring step, the case particle is restored when the case particle is deleted by a connecting particle.
7. 2. The program according to claim 1, wherein in the restoring step, the case particle is restored when the case particle is omitted.
8. 8. An information processing apparatus comprising: a control unit; and a storage unit, wherein the control unit executes all steps of the program according to claim 1.
9. A method implemented on a computer having a processor and a memory, wherein the processor executes all the steps of the program of any one of claims 1 to 7.
10. A system comprising one or more processors that execute all the steps in the program according to any one of claims 1 to 7.
Citation Information
Patent Citations
Language processor
JP1988213068A
Japanese processing system
JP1996221418A
Document search system
JP2004133564A
Natural language processing system
JP2005108054A
Language analysis device and program
JP2011008312A
Cited By
Programs, information processing devices, methods, and systems
JP7896945B1