WO2010113691A1 - 言語解析装置、方法、及びプログラム - Google Patents

言語解析装置、方法、及びプログラム Download PDF

Info

Publication number
WO2010113691A1
WO2010113691A1 PCT/JP2010/054920 JP2010054920W WO2010113691A1 WO 2010113691 A1 WO2010113691 A1 WO 2010113691A1 JP 2010054920 W JP2010054920 W JP 2010054920W WO 2010113691 A1 WO2010113691 A1 WO 2010113691A1
Authority
WO
WIPO (PCT)
Prior art keywords
division
candidate
point
unit
dividing
Prior art date
Application number
PCT/JP2010/054920
Other languages
English (en)
French (fr)
Inventor
安藤 真一
定政 邦彦
Original Assignee
日本電気株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to EP10758465.8A priority Critical patent/EP2416256A4/en
Priority to JP2011507101A priority patent/JP5464209B2/ja
Priority to US13/256,697 priority patent/US8977539B2/en
Priority to CN201080014350.3A priority patent/CN102369524B/zh
Publication of WO2010113691A1 publication Critical patent/WO2010113691A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates

Definitions

  • the present invention relates to a method for performing language analysis such as syntax analysis on a natural language, and more particularly to a language analysis apparatus, a language analysis method, and a language analysis program for efficiently performing language analysis processing while dividing a long sentence.
  • a language analyzer such as a syntax analyzer performs an analysis process by dividing an input character string into words and examining the relationship between words for each word combination. Accordingly, an increase in the length of the input sentence means that the number of word combinations to be considered increases dramatically.
  • Patent Document 1 when a machine translation processing time exceeds a predetermined time, a sentence inputted by applying a predetermined division rule is divided, and a machine is divided into individual division units. A method for performing a translation process is disclosed.
  • Patent Document 2 proposes a method of dividing an input sentence into more appropriate units by storing division rules together with the number of adaptive words and sequentially adapting them in descending order of the number of adaptive words.
  • the division rule includes a division rule that divides by paying attention to a linguistic expression that becomes a relatively rough break, and a division rule that divides by paying attention to a linguistic expression that becomes a relatively fine break.
  • the former division rule can be analyzed correctly even if each division unit divided by the division points obtained by applying the division rule is directly subjected to analysis processing.
  • division points are not always obtained from all input sentences, and even if division points are obtained, each division unit is There is a problem that it may not be sufficiently short.
  • Patent Document 2 The division method described in Patent Document 2 is an attempt to solve the above-described problem by storing the division rule together with the number of adaptive words and applying the division rule in descending order of the number of adaptive words.
  • it is difficult to set the appropriate number of adaptive words for each division rule, and the division unit becomes too short when it is necessary to apply a division rule with a small number of adaptive words.
  • the division unit cannot be analyzed correctly and the analysis accuracy is lowered.
  • An object of the present invention is to provide a language analysis apparatus and a language analysis method that can divide a long sentence into processing units of an appropriate length according to the maximum input length that can be accepted by the analysis processing.
  • the language analysis apparatus causes a problem when a division rule divided into levels according to the risk of causing a problem in analysis accuracy by application and a character string longer than a predetermined maximum input length are input.
  • Division point candidate generation means for generating division point candidates for the input character string by applying division rules in order from the division rules with the least risk, and division obtained by the division point candidates obtained by the division point candidate generation means
  • Division point adjustment that selects a combination of division points from division point candidates obtained by division rules at the same level so that individual division units do not exceed the maximum input length when the unit candidate is shorter than the maximum input length
  • a dividing means for dividing the input character string at the dividing points determined by the dividing point adjusting means.
  • the division rule divided according to the risk of causing a problem in the analysis accuracy by application causes a problem.
  • a division point candidate generation step for generating a division point candidate for the input character string by applying the division rules in order from the least dangerous level, and a division unit candidate obtained by the division point candidate obtained in the division point candidate generation step A division point adjustment step of selecting a combination of division points from among division point candidates obtained by division rules of the same level so that each division unit does not exceed the maximum input length when A dividing step of dividing the input character string at the dividing point determined by the dividing point adjusting step.
  • the language analysis program is a language analysis program that operates on a computer and performs language analysis processing.
  • a character string longer than a predetermined maximum input length is input to the computer, analysis is performed by application.
  • Split point candidate generation that generates split point candidates for the input character string by applying the split rules that are leveled according to the risk of causing a problem in accuracy, in order from the split rules that have a low risk of causing a problem
  • the division rule of the same level is used so that each division unit does not exceed the maximum input length.
  • Division point adjustment processing for selecting a combination of division points from the obtained division point candidates, and division points determined by the division point adjustment processing Division processing of dividing the input character string, to execute.
  • a long sentence when a maximum input length that can be accepted by the analysis process is set, a long sentence can be divided into processing units of an appropriate length according to the maximum input length.
  • the reason is to adjust the dividing point so that each division unit has the maximum length less than the maximum input length while sequentially applying the division rules divided into levels according to the risk of causing problems in analysis accuracy. It is.
  • a language analysis apparatus includes an input device 1 such as a keyboard and a mouse, a data processing device 2 that operates under program control, and a storage device 3 that stores information. And an output device 4 such as a display device or a printing device.
  • the storage device 3 includes a division rule storage unit 31.
  • the division rule storage unit 31 stores a division rule for identifying a portion that can be a division point by being applied to the input character string.
  • the division rule storage unit 31 stores the individual division rules in at least two or more levels according to the degree of risk of causing a problem in the analysis accuracy due to the application of the division rules.
  • each division rule compares the results of linguistic analysis for individual division units obtained by applying the division rule with the results of linguistic analysis without dividing the input character string.
  • “No danger” high level
  • “Low risk” medium level
  • the data are stored by being divided into levels such as “high risk” (low level).
  • the data processing device 2 includes a division point candidate generation unit 21, a division point adjustment unit 22, and a division unit 23.
  • the division point candidate generation unit 21 sets the division rules stored in the division rule storage unit 31 in the order of low risk of causing a problem. By reading and applying the division rule, division point candidates are generated in the input character string.
  • the candidate for a dividing point means a portion that can be a recognized dividing point in the input character string.
  • the maximum input length means the maximum length of the input character string that is allowed. Note that the maximum input length is a value determined according to the processing time required for language analysis and the allowable amount for the amount of memory used. For example, the maximum input length may be defined by the number of characters or the number of morphemes included in the input character string. Is possible.
  • the division point adjustment unit 22 receives the division point candidates generated by the division point candidate generation unit 21, and sequentially checks individual division unit candidates obtained by dividing the input character string by the division point candidates. Decide whether to adopt point candidates as division points.
  • the division point adjusting means 22 determines a division point by selecting necessary division point candidates so that all individual division units finally obtained do not exceed the maximum input length.
  • the dividing unit 23 receives the dividing point determined by the dividing point adjusting unit 22 and generates a division unit by dividing the input character string at the dividing point.
  • the dividing point candidate generation means 21 of the data processing device 2 When receiving the input character string from the input device 1, the dividing point candidate generation means 21 of the data processing device 2 first calculates the length of the input character string and compares it with the maximum input length given in advance. It is determined whether the length of the character string is greater than or equal to the maximum input length (step A1).
  • the input from the input device 1 may be a simple character string, but more preferably includes attribute information of each morpheme such as a morpheme, a prototype, and a part of speech constituting the character string.
  • step A1 If the length of the input character string is smaller than the maximum input length in step A1, all processing is terminated because it is not necessary to divide.
  • the input character string is set as a division target (step A2).
  • step A3 the level of the division rule is initialized and set to the level with the lowest risk (high level) (step A3).
  • the division point candidate generation means 21 starts the division point generation process for the character string set as the division target by using the division rule at the set level (step A4). This division point generation process will be described later.
  • the dividing unit 23 divides the character string to be divided based on the dividing points obtained by the dividing point generation process of the dividing point candidate generating unit 21 (step A5).
  • the division point candidate generation means 21 acquires a division rule at the set level from the division rule storage unit 31, and generates a division point candidate by applying it to the character string set as the division target (step B1).
  • the division rule level is lowered by one level (step B2 and step B3), and a new level division rule is used. Then, try to generate the dividing point candidates again. That is, the division point candidate is generated using a division rule whose risk level is one level lower (having a higher risk than the initial division rule).
  • the set division point candidate is delivered to the division point adjusting means 22.
  • the division point adjustment unit 22 When the division point adjustment unit 22 receives the division point candidate set by the division point candidate generation unit 21, the division point adjustment unit 22 divides the input character string into division unit candidates using the division point candidates (step B4).
  • the division point adjusting means 22 selects one division unit candidate that has not been checked from the obtained division unit candidates (step B5).
  • a method for selecting a division unit candidate for example, a method of selecting in order from an unchecked division unit candidate closest to the head among division unit candidates obtained from the current division target can be used.
  • a method of selecting in order from the unchecked division unit candidate closest to the end, or a method of selecting in order from the shortest unchecked division unit candidate may be used.
  • the division point adjusting means 22 checks whether or not a division unit candidate that has not been checked in step B4 has been selected (step B6).
  • step B4 If an unchecked division unit candidate cannot be selected in step B4, check processing has already been completed for all division unit candidates, and the division point candidates remaining without being deleted at that time are divided points. And the obtained division point is output and the process is terminated (step B7).
  • the division point adjusting means 22 calculates the length of the selected division unit candidate, compares it with a predetermined maximum input length, and calculates the division unit. It is determined whether the candidate length is greater than or equal to the maximum input length (step B8).
  • the division point adjustment unit 22 sets the division unit candidate as a new division target (step B9). ), The level of the division rule is further lowered by one level (step B10).
  • the division point adjusting unit 22 hands over the processing to the division point candidate generating unit 21 and generates a division point candidate for the division unit candidate using this new level of division rule (step B11).
  • the dividing point adjustment unit 22 returns to Step B5 and continues the process.
  • step B8 If it is determined in step B8 that the length of the selected division unit candidate is smaller than the maximum input length, the division point adjusting unit 22 determines a new division unit candidate adjacent to the selected division unit candidate. Is obtained from the current division target (step B12).
  • the division point adjusting means 22 checks whether or not adjacent division unit candidates have been acquired (step B13), and if they cannot be acquired, returns to step B5 and continues the processing.
  • the division point adjusting unit 22 calculates the sum of the length of the selected division unit candidate and the acquired length of the adjacent division unit candidate, and determines in advance. By comparing with the obtained maximum input length, it is determined whether or not the sum of the lengths is not less than the maximum input length (step B14).
  • step B14 If it is determined that the sum of the lengths calculated in step B14 is greater than or equal to the maximum input length, the dividing point adjustment unit 22 determines that the selected division unit candidate is already checked, and returns to step B5. To continue processing.
  • the division point adjusting unit 22 divides the selected division unit candidate and the acquired adjacent division unit candidate.
  • the point candidate is deleted (step B15).
  • a division unit obtained by connecting the selected division unit candidate and the obtained two division unit candidates of the adjacent division unit candidates is set as a new process target (step B16), and the process returns to step B12 and continues.
  • the division rules that are divided into levels according to the risk of causing a problem in analysis accuracy are sequentially applied, so that the length of each division unit does not become too small within the range of the maximum input length or less. It is configured to adjust the dividing point. For this reason, when the maximum input length that can be accepted by the analysis processing is set, the long sentence can be divided into processing units of an appropriate length according to the maximum input length.
  • each division unit is within the range of the maximum input length or less.
  • the dividing point is adjusted so that the length does not become too small. For this reason, it is not necessary to give strict priority information such as the lower limit of the number of words to which the classification rule is applied, and the division rule can be created relatively easily.
  • the second embodiment of the present invention includes an input device 1, a data processing device 6, a storage device 3, and an output device 4, similarly to the first embodiment of the present invention.
  • the language analysis program 5 is read into the data processing device 6 to control the operation of the data processing device 6, and generates a division rule storage unit 32 in the storage device 3.
  • the data processing device 6 executes the same processing as the processing by the data processing device 2 in the first embodiment under the control of the language analysis program 5.
  • the data processing device 6 has a hardware configuration as shown in FIG.
  • the data processing device 2 can be realized by a hardware configuration similar to that of a general computer device, and is a main memory such as a CPU (Central Processing Unit) 61 and a RAM (Random Access Memory).
  • the main storage unit 62 used for the data work area and the temporary data save area, the input device 1, the output device 4, and the input / output interface unit 63 for transmitting and receiving data, and the above components
  • a system bus 64 connected to each other is provided.
  • the storage device 3 is, for example, a ROM (Read Only Memory), a hard disk device including a non-volatile memory such as a magnetic disk and a semiconductor memory.
  • the data processing device 6 implements its operation in hardware by mounting circuit components that are hardware components such as LSI (Large Scale Integration) incorporating the language analysis program 5 described above.
  • LSI Large Scale Integration
  • the language analysis program 5 can be stored in the storage device 3, loaded into the main storage unit 62, and executed by the CPU 61 to be realized in software.
  • Example 1 of the present invention will be described with reference to the drawings. This example corresponds to the first embodiment of the present invention.
  • This embodiment includes a keyboard as the input device 1, a personal computer as the data processing device 2, a magnetic disk recording device as the storage device 3, and a display as the output device 4.
  • the personal computer has a central processing unit (CPU) that executes the functions of the dividing point candidate generating unit 21, the dividing point adjusting unit 22, and the dividing unit 23.
  • the magnetic disk storage device also includes a division rule storage unit. A storage area functioning as 31 is secured.
  • FIG. 5 schematically shows the division rules stored in the division rule storage unit 31 in a tabular form, and each row represents an individual division rule.
  • the first “level” column stores information on the level indicating the degree of risk of causing a problem in the analysis accuracy due to the application of the division rule.
  • the next “Division point recognition pattern” column stores the pattern information for certifying the division point, and the last “Division point” column is divided at a position relative to the division point recognition pattern. Stores information representing the location that is recognized as a point.
  • the division rule in the first row of the table of FIG. 5 is a “level 1” division rule that has the lowest risk of causing a problem in analysis accuracy due to its application.
  • This division rule of “level 1” indicates that if there is a phrase “.” As a division point recognition pattern in the input character string, it can be recognized as a division point immediately after the phrase “.”. Yes.
  • the division rule in the second row of the table of FIG. 5 is a “level 2” division rule that has a relatively low risk of causing a problem in analysis accuracy due to its application.
  • this “level 2” division rule when there is a pattern in which the connection particle “ga” and the punctuation mark “,” are adjacent in that order as the division point recognition pattern in the input character string, the division is performed immediately after that pattern. It is shown that it can be recognized as a point.
  • level 3 and 4 division rules are described in the third and subsequent rows of the table of FIG. The level of the division rule is highest in level 1, and lower in the order of level 2, level 3, and level 4.
  • the dividing point candidate generation unit 21 receives the input sentence and calculates the length thereof. To do. As a result, the division point candidate generation unit 21 detects that the length of the input sentence is “300” and is equal to or greater than the maximum input length “100”, and sets the input sentence as a division target. Further, the division rule level is initialized and set to the highest “level 1”, and division point generation processing is executed.
  • the division point candidate generation unit 21 first acquires a “level 1” division rule from the division rule storage unit 31 and applies it to the entire input sentence shown in FIG.
  • the division point candidate generation means 21 detects the phrase “.” In the division target, and sets the division point candidate behind it.
  • the dividing point adjusting unit 22 receives the dividing point candidate set by the dividing point candidate generating unit 21, and divides the input sentence to be divided into division unit candidates. This state is shown in FIG.
  • the division point adjusting means 22 selects one unprocessed division unit candidate from the division target.
  • a selection method of unchecked division unit candidates a method of selecting in order from an unchecked division unit candidate closest to the head among division unit candidates is adopted.
  • the division unit candidate “ ⁇ ⁇ ⁇ ” of the first length “60” in FIG. 6B) is selected. Further, the division point adjusting means 22 calculates the length of the division unit candidate, and determines that the obtained division unit candidate length “60” is smaller than the maximum input length “100”.
  • the division point adjusting unit 22 performs the division unit candidate “ ⁇ ⁇ ⁇ ” adjacent to the division unit candidate “ ⁇ ⁇ ⁇ ” currently selected from among the division targets. To get "".
  • the currently selected division unit candidate “ ⁇ ⁇ ⁇ ” is determined as processed, and the division point adjusting means 22 determines the next unprocessed
  • the division unit candidate “ ⁇ ⁇ ⁇ , ⁇ ⁇ , and ⁇ ” is selected as a new processing target.
  • the division point adjustment unit 22 sets the division unit candidate as a division target and sets the division rule level to 1.
  • the division point generation process is recursively called as “level 2” below.
  • the division point candidate generation unit 21 acquires the “level 2” division rule shown in FIG. 5 from the division rule storage unit 31, and is the second division unit of FIG. Apply to candidates.
  • the division point candidate generation means 21 detects a pattern in which the connection particle “NO” and the reading “,” in the division target are consecutive, and sets a division point candidate behind it. This state is shown in FIG.
  • the division point adjusting means 22 further determines the division unit candidate “ ⁇ ⁇ ⁇ ” (length “80”) whose length is smaller than the maximum input length as processed in the same manner as described above. After that, the division point adjusting means 22 targets the division unit candidate “ ⁇ ⁇ , ⁇ , and ⁇ ” (length “160”) whose length is greater than or equal to the maximum input length as a divide target.
  • the division point generation processing is recursively called again with the rule level set to “level 3” one level below.
  • the division point candidate generation unit 21 acquires the “level 3” division rule from the division rule storage unit 31 and applies it to the third division unit candidate in FIG. .
  • the dividing point candidate generation means 21 detects two patterns in which the verb continuous use “shi” and the reading “,” in the division target are consecutive, and sets a dividing point candidate behind each of them. This state is shown in d) of FIG.
  • the dividing point adjusting unit 22 first selects the first division unit candidate “ ⁇ ⁇ ,” (length “50”) as an unprocessed division unit candidate, and the length “50” is the maximum input. It is determined that the length is smaller than “100”.
  • the division point adjusting means 22 acquires the second division unit candidate “ ⁇ ⁇ ,” which is adjacent to the first division unit candidate “ ⁇ ⁇ ,” currently selected from within the division target.
  • the dividing point adjusting means 22 calculates the sum of the lengths of these two division unit candidates, and determines that the sum “80” of the lengths is smaller than the maximum input length 100.
  • the division point adjusting means 22 deletes the division point candidate between the two division unit candidates, and connects the two division unit candidates in units of “ ⁇ ⁇ , ⁇ ⁇ ,” (length “ 80 ”) as a new processing target. This state is shown in e) of FIG.
  • the division point adjusting unit 22 acquires the next adjacent division unit candidate “More to ...” (length “80”), and the sum of the lengths to be processed is “160”, which is the maximum. Since the input length is “100” or more, the division unit candidate “ ⁇ ⁇ , ⁇ ⁇ ,” (length “80”) is confirmed as processed, and the next unprocessed division unit candidate “further” is added. . ”(Length“ 80 ”) is selected as a new processing target.
  • this division unit candidate has a length smaller than the maximum input length “100” and there is no adjacent unprocessed division unit candidate, the division point adjustment means 22 determines the obtained division point candidate. And generate split points.
  • the division point adjusting means 22 returns the processing recursively, but since there are no unprocessed division unit candidates, the division point candidates obtained are successively determined and division points are generated.
  • the dividing means 23 divides the input sentence at the obtained dividing point, and “ ⁇ ”, “ ⁇ ”, “ ⁇ , ⁇ ,” “more ⁇ ”. . ”Is output.
  • the language analysis apparatus of the present invention analyzes a document described in a first language and outputs a syntax structure of each sentence, or a document described in a first language (a certain language) as a second. It can be applied to a use such as a machine translation device that translates into another language (another language).

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Abstract

 解析処理が受け入れ可能な最大入力長が与えられた場合に長文を前記最大入力長に応じた適切な長さの処理単位に分割することができない。 言語解析装置は、適用によって解析精度に問題を生じる危険性に応じてレベル分けされた分割規則と、予め定められた最大入力長より長い文字列が入力された場合に、問題の生じる危険性の少ないレベルの分割規則から順に分割規則を適用することによって入力文字列に対する分割点候補を生成する分割点候補生成手段21と、分割点候補生成手段21で得られた分割点候補によって得られる分割単位候補が最大入力長より短い場合に、個々の分割単位が最大入力長を超えないように、同一レベルの分割規則によって得られた分割点候補の中から分割点の組み合わせを選択する分割点調整手段22と、分割点調整手段によって決定された分割点で入力文字列を分割する分割手段23とを含む。

Description

[規則37.2に基づきISAが決定した発明の名称] 言語解析装置、方法、及びプログラム
 本発明は、自然言語に対して構文解析等の言語解析を行なう方法に関し、特に、長文を分割しつつ効率的に言語解析処理を行なう言語解析装置、言語解析方法及び言語解析プログラムに関する。
 一般に構文解析等の言語解析では、入力された文字列を文単位に分割し、各々の文単位に解析処理を施す方法が取られている。しかし、例えば特許出願の明細書等に見られるような、1文の長さが非常に長い文を解析する場合には、単純な文単位での解析処理では問題が生じる場合がある。
 通常、構文解析等の言語解析装置は、入力された文字列を単語単位に分割し、その単語の組み合わせの各々について単語間の関係を調べることによって解析処理を行なう。従って、入力文の長さが長くなるということは、考慮すべき単語の組み合わせ数が飛躍的に増加することを意味する。
 このように、非常に長い文を解析する場合には、大量の単語の組み合わせを計算する必要が生じるため、解析時間が長くなる、あるいは解析処理に大量のメモリ容量が必要になるといった問題が生じることになる。
 また、考慮すべき単語の組み合わせが増えるということは、解釈の可能性が増えることにもなるため、解析誤りも多くなる傾向にある。そこで、長文が入力された場合には解析処理に先立って、入力文を分割する方法が種々提案されている。
 例えば、特許文献1には、機械翻訳処理の時間が予め指定された一定時間を超える場合に、予め与えられた分割規則を適用して入力された文を分割し、個々の分割単位毎に機械翻訳処理を実行する方法が開示されている。
 さらに、特許文献2には、分割規則を適応単語数と共に記憶し、適応単語数の大きい順に順次適応することで、より適切な単位に入力文を分割する方法が提案されている。
特開昭61-255468号公報 特許第003173514号
 上述した構文解析等の言語解析における入力文の分割方法の問題について述べる。
 まず、解析処理が受け入れ可能な最大入力長が与えられた場合に、長文を当該最大入力長に応じて適切な長さの処理単位に分割することができない点である。
 分割規則には、比較的大まかな区切りとなる言語表現に注目して分割する分割規則と、比較的細かな区切りとなる言語表現に着目して分割する分割規則が存在する。一般に、前者の分割規則は、それを適用して得られた分割点で分割した各々の分割単位はそのまま解析処理を行なっても正しく解析することができる。しかし、その反面、比較的少ない特定の言語表現に着目した規則であるため、全ての入力文から必ず分割点が得られるとは限らず、また分割点が得られたとしても各々の分割単位が充分に短くならない場合があるという問題点がある。
 また、後者の分割規則は、比較的頻繁に使われる言語表現に着目して分割点を得るため、比較的多くの文で分割点を得ることができ、また得られた分割単位が充分に短くなる可能性が高い。しかし、その反面、個々の分割単位が短くなりすぎるために各々の分割単位が正しく解析できなくなり解析精度が落ちるという問題点がある。
 特許文献2に記載の分割方法は、分割規則を適応単語数と共に記憶し、適応単語数の多い順に分割規則を適用することで前述の問題を解決しようと試みたものである。しかし、個々の分割規則に対して適切な適応単語数を設定することが難しく、また適応単語数の少ない分割規則を適用せざるを得ない段階に至ると分割単位が短くなりすぎて、やはり各々の分割単位が正しく解析できなくなり解析精度が落ちるという問題点がある。
(発明の目的)
 本発明の目的は、解析処理が受け入れ可能な最大入力長に応じて、長文を適切な長さの処理単位に分割することができる言語解析装置、言語解析方法を提供することにある。
 本発明による言語解析装置は、適用によって解析精度に問題を生じる危険性に応じてレベル分けされた分割規則と、予め定められた最大入力長より長い文字列が入力された場合に、問題の生じる危険性の少ないレベルの分割規則から順に分割規則を適用することによって入力文字列に対する分割点候補を生成する分割点候補生成手段と、分割点候補生成手段で得られた分割点候補によって得られる分割単位候補が最大入力長より短い場合に、個々の分割単位が最大入力長を超えないように、同一レベルの分割規則によって得られた分割点候補の中から分割点の組み合わせを選択する分割点調整手段と、分割点調整手段によって決定された分割点で入力文字列を分割する分割手段とを含む。
 本発明による言語解析方法は、予め定められた最大入力長より長い文字列が入力された場合に、適用によって解析精度に問題を生じる危険性に応じてレベル分けされた分割規則を、問題の生じる危険性の少ないレベルの分割規則から順に適用することによって、入力文字列に対する分割点候補を生成する分割点候補生成ステップと、分割点候補生成ステップで得られた分割点候補によって得られる分割単位候補が最大入力長より短い場合に、個々の分割単位が最大入力長を超えないように、同一レベルの分割規則によって得られた分割点候補の中から分割点の組み合わせを選択する分割点調整ステップと、分割点調整ステップによって決定された分割点で入力文字列を分割する分割ステップとを含む。
 本発明による言語解析プログラムは、コンピュータ上で動作し、言語解析処理を行なう言語解析プログラムであって、コンピュータに、予め定められた最大入力長より長い文字列が入力された場合に、適用によって解析精度に問題を生じる危険性に応じてレベル分けされた分割規則を、問題の生じる危険性の少ないレベルの分割規則から順に適用することによって、入力文字列に対する分割点候補を生成する分割点候補生成処理と、分割点候補生成処理で得られた分割点候補によって得られる分割単位候補が最大入力長より短い場合に、個々の分割単位が最大入力長を超えないように、同一レベルの分割規則によって得られた分割点候補の中から分割点の組み合わせを選択する分割点調整処理と、分割点調整処理によって決定された分割点で入力文字列を分割する分割処理を、実行させる。
 本発明によれば、解析処理が受け入れ可能な最大入力長が設定された場合に、その最大入力長に応じて長文を適切な長さの処理単位に分割することができる。
 その理由は、解析精度に問題を生じる危険性に応じてレベル分けされた分割規則を順次適用しつつ、個々の分割単位が最大入力長以下の最大の長さとなるように分割点を調整するためである。
本発明の第1の実施の形態による言語解析装置の構成を示すブロック図である。 本発明の第1の実施の形態による言語解析装置における動作を示すフローチャートである。 本発明の第1の実施の形態による言語解析装置における動作を示すフローチャートである。 本発明の第2の実施の形態による言語解析装置の構成を示すブロック図である。 本発明の第1の実施の形態に対応する実施例1における分割規則記憶部のデータ構造例を示す図である。 本発明の第1の実施の形態に対応する実施例1における動作の具体例を示す画面例である。 本発明の第1の実施の形態による言語解析装置のデータ処理装置のハードウェア構成例を示すブロック図である。
(第1の実施の形態)
 次に、本発明の第1の実施の形態について図面を参照して詳細に説明する。
 図1を参照すると、本発明の第1の実施の形態による言語解析装置は、キーボードやマウス等の入力装置1と、プログラム制御により動作するデータ処理装置2と、情報を記憶する記憶装置3と、ディスプレイ装置や印刷装置等の出力装置4とを含む。
 記憶装置3は、分割規則記憶部31を備えている。分割規則記憶部31は、入力された文字列に適用することで分割点となりうる箇所を認定するための分割規則を格納する。
 ここで、分割規則記憶部31には、個々の分割規則を、その分割規則の適用によって解析精度に問題を生じる危険性の程度に応じて、少なくとも2つ以上のレベルに分けて格納する。
 例えば、個々の分割規則は、その分割規則を適用することで得られる個々の分割単位に対して言語解析を行なった結果と、入力文字列を分割せずに言語解析を行なった結果とを比べた場合に、各々の分割単位に対応する解析結果が原理的に変化しない場合には「危険性なし」(高レベル)、変化する可能性が低い場合には「危険性小」(中レベル)、変化する可能性が高い場合には「危険性大」(低レベル)といったレベルに分けられて格納される。
 データ処理装置2は、分割点候補生成手段21と、分割点調整手段22と、分割手段23とを含む。
 分割点候補生成手段21は、処理対象として入力された文字列が予め定められた最大入力長より長い場合に、分割規則記憶部31に格納されている分割規則を問題の生じる危険性の低い順に読み出し、その分割規則を適用することによってその入力文字列中に分割点候補を生成する。
 ここで分割点候補とは、入力文字列中に認定された分割点となりうる箇所を意味する。また最大入力長は、許容される入力文字列の最大長を意味する。なお、最大入力長は、言語解析に要する処理時間や使用メモリ量に対する許容量に応じて決定される値であり、例えば、入力文字列に含まれる文字の数や形態素の数で定義することが可能である。
 分割点調整手段22は、分割点候補生成手段21で生成された分割点候補を受け取り、入力文字列を当該分割点候補で分割して得られる個々の分割単位候補を順次チェックしつつ、当該分割点候補を分割点として採用するかどうかを決定する。
 分割点調整手段22は、特に最終的に得られる個々の分割単位の全てが最大入力長を超えないように、必要な分割点候補を選択することで分割点を決定する。
 分割手段23は、分割点調整手段22で決定された分割点を受け取り、入力文字列を当該分割点で分割することによって分割単位を生成する。
(実施の形態による動作)
 次に、図1及び図2のフローチャートを参照して、本実施の形態の動作について詳細に説明する。
 データ処理装置2の分割点候補生成手段21は、入力装置1から入力文字列を受け取ると、まず当該入力文字列の長さを計算し、予め与えられた最大入力長と比較することで、入力文字列の長さが最大入力長以上かどうかを判定する(ステップA1)。ここで、入力装置1からの入力は単純な文字列でもよいが、より好適には当該文字列を構成する形態素や原型、品詞といった各々の形態素の属性情報を含んでいることが望ましい。
 ステップA1で入力文字列の長さが最大入力長よりも小さい場合には、分割する必要がないため全ての処理を終了する。
 また、入力文字列の長さが最大入力長以上である場合には、当該入力文字列を分割対象に設定する(ステップA2)。
 次に、分割規則のレベルを初期化し、最も危険性の小さいレベル(高レベル)に設定する(ステップA3)。
 分割点候補生成手段21は、分割対象と設定した文字列について、設定されたレベルの分割規則を用いて分割点生成処理を開始する(ステップA4)。この分割点生成処理については後述する。
 さらに、分割手段23は、分割点候補生成手段21の分割点生成処理によって得られた分割点に基づいて分割対象の文字列を分割する(ステップA5)。
 次に、分割点候補生成手段21と分割点調整手段22による分割点生成処理について、図3のフローチャートを参照して詳細に説明する。
 分割点候補生成手段21は、設定されたレベルの分割規則を分割規則記憶部31から取得し、分割対象として設定した文字列に適用することで分割点候補を生成する(ステップB1)。
 ここで、当該分割規則を適用しても分割対象から分割点候補が得られなかった場合には、分割規則のレベルを1レベル下げ(ステップB2とステップB3)、新たなレベルの分割規則を用いて再度分割点候補の生成を試みる。すなわち、危険性のレベルが1レベル低い(初期の分割規則より危険性の大きい)分割規則を用いて分割点候補の生成を行う。
 なお、図3には図示しないが、分割規則のレベルを下げることができない場合にはその分割点生成処理を終了する。
 図3のステップB1において分割点候補が設定された場合は、設定された分割点候補を分割点調整手段22に引き渡す。
 分割点調整手段22は、分割点候補生成手段21が設定した分割点候補を受け取ると、入力文字列を当該分割点候補で分割単位候補に分割する(ステップB4)。
 そして、分割点調整手段22は、得られた分割単位候補の中から、チェック処理を行なっていない分割単位候補を1つ選択する(ステップB5)。
 ここで、分割単位候補の選択方法としては、例えば、現在の分割対象から得られた分割単位候補の中の最も先頭に近い未チェックの分割単位候補から順番に選択する方法を用いることができる。また、最も末尾に近い未チェックの分割単位候補から順番に選択する方法や、最も短い未チェックの分割単位候補から順番に選択する方法を用いてもよい。
 次に、分割点調整手段22は、ステップB4においてチェックを行なっていない分割単位候補が選択できたか否かを調べる(ステップB6)。
 ステップB4において未チェックの分割単位候補が選択できない場合には、既に全ての分割単位候補に対してチェック処理を完了しているため、その時点で削除されずに残っている分割点候補を分割点として採用し、得られた分割点を出力して処理を終了する(ステップB7)。
 また、ステップB6において未チェックの分割単位候補が選択できた場合、分割点調整手段22は、選択された分割単位候補の長さを計算し、予め定められた最大入力長と比較し、分割単位候補の長さが最大入力長以上であるかどうかを判定する(ステップB8)。
 ここで、ステップB8において選択された分割単位候補の長さが最大入力長以上であると判定された場合、分割点調整手段22は、当該分割単位候補を新たな分割対象に設定し(ステップB9)、分割規則のレベルをさらに1レベル下げる(ステップB10)。
 次に、分割点調整手段22は、分割点候補生成手段21に処理を引き渡し、この新たなレベルの分割規則を用いて当該分割単位候補に対する分割点候補の生成を行なう(ステップB11)。
 その後、分割点候補生成手段21から処理が戻ると、分割点調整手段22は、ステップB5に戻って処理を継続する。
 また、ステップB8において、選択された分割単位候補の長さが最大入力長より小さいと判定された場合には、分割点調整手段22は、選択された分割単位候補に隣接する新たな分割単位候補を現在の分割対象内から取得する(ステップB12)。
 次に、分割点調整手段22は、隣接する分割単位候補が取得できたか否かを調べ(ステップB13)、取得できない場合はステップB5に戻り、処理を継続する。
 また、隣接する分割単位候補が取得できた場合には、分割点調整手段22は、選択された分割単位候補の長さと取得された隣接する分割単位候補の長さの和を計算し、予め定められた最大入力長と比較することで、長さの和が最大入力長以上であるかどうかを判定する(ステップB14)。
 ここで、ステップB14において計算された長さの和が最大入力長以上であると判定された場合、分割点調整手段22は、選択中の分割単位候補をチェック済みとして確定し、ステップB5に戻って処理を継続する。
 また、ステップB14において計算された長さの和が最大入力長より小さいと判定された場合には、分割点調整手段22は、選択した分割単位候補と取得した隣接する分割単位候補の間の分割点候補を削除する(ステップB15)。次いで、選択した分割単位候補と取得した隣接する分割単位候補の2つの分割単位候補を繋ぎ合わせた分割単位を新たな処理対象として設定し(ステップB16)、ステップB12に戻って処理を継続する。
(第1の実施の形態による効果)
 次に、本実施の形態の効果について説明する。
 本実施の形態では、解析精度に問題を生じる危険性に応じてレベル分けされた分割規則を順次適用しつつ、個々の分割単位が最大入力長以下の範囲で長さが小さくなりすぎないように分割点を調整するように構成されている。このため、解析処理が受け入れ可能な最大入力長が設定された場合に、その最大入力長に応じて長文を適切な長さの処理単位に分割することができる。
 また、本実施の形態では、個々の分割規則には解析精度に問題を生じる危険性に応じたレベルという大まかな分類規則を設定することにより、個々の分割単位が前記最大入力長以下の範囲で長さが小さくなりすぎないように分割点を調整するように構成されている。このため、個々の分類規則に対してそれを適用すべき単語数の下限といった厳格な優先順位情報を付与する必要がなく、比較的容易に分割規則を作成することができる。
(第2の実施の形態)
 次に、本発明の第2の実施の形態について図面を参照して詳細に説明する。
 図4を参照すると、本発明の第2の実施の形態は、本発明の第1の実施の形態と同様に、入力装置1、データ処理装置6、記憶装置3、出力装置4を備える。
 言語解析用プログラム5は、データ処理装置6に読み込まれデータ処理装置6の動作を制御し、記憶装置3に分割規則記憶部32を生成する。
 また、データ処理装置6は、言語解析用プログラム5の制御により第1の実施の形態におけるデータ処理装置2による処理と同様の処理を実行する。
 データ処理装置6は、図7に示すようなハードウェア構成を有している。
 図7を参照すると、データ処理装置2は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができ、CPU(Central Processing Unit)61、RAM(Random Access Memory)等のメインメモリであり、データの作業領域やデータの一時退避領域に用いられる主記憶部62、入力装置1、出力装置4及び記憶装置3と接続してデータの送受信を行う入出力インタフェース部63、上記各構成要素を相互に接続するシステムバス64を備えている。記憶装置3は、例えば、ROM(Read
Only Memory)、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置等で実現される。
 本実施の形態によるデータ処理装置6は、上述した言語解析用プログラム5を組み込んだ、LSI(Large Scale Integration)等のハードウェア部品である回路部品を実装することにより、その動作をハードウェア的に実現することは勿論として、言語解析用プログラム5を、記憶装置3に格納し、そのプログラムを主記憶部62にロードしてCPU61で実行することにより、ソフトウェア的に実現することも可能である。
 次に、本発明の実施例1について図面を参照して説明する。本実施例は、本発明の第1の実施の形態に対応するものである。
 本実施例は、入力装置1としてキーボードを、データ処理装置2としてパーソナルコンピュータを、記憶装置3として磁気ディスク記録装置を、出力装置4としてディスプレイを備えている。
 パーソナルコンピュータは、分割点候補生成手段21、分割点調整手段22、分割手段23の機能を実行する中央演算部(CPU)を有しており、また、磁気ディスク記憶装置には、分割規則記憶部31として機能する記憶領域が確保されている。
 ここで、分割規則記憶部31には、図5に示すような分割規則が格納されている場合を考える。図5は、分割規則記憶部31に格納される分割規則を模式的に表形式で表したものであり、各行が個々の分割規則を表している。
 図5において、最初の「レベル」の列には、その分割規則の適用によって解析精度に問題を生じる危険性の程度を示すレベルの情報が格納されている。次の「分割点認定パタン」の列には、分割点を認定するためのパタンの情報が格納されており、最後の「分割点」の列には、分割点認定パタンとの相対位置で分割点と認定される場所を表す情報が格納されている。
 例えば、図5の表の1行目の分割規則は、この分割規則がその適用によって解析精度に問題を生じる危険性が最も小さい「レベル1」の分割規則である。この「レベル1」の分割規則においては、入力文字列中に分割点認定パタンとして句点「。」がある場合に、その句点(パタン)「。」の直後を分割点として認定できることが示されている。
 また、図5の表の2行目の分割規則は、この分割規則がその適用によって解析精度に問題を生じる危険性が比較的小さい「レベル2」の分割規則である。この「レベル2」の分割規則においては、入力文字列中に分割点認定パタンとして接続助詞「が」と読点「、」がその順に隣接しているパタンがある場合に、そのパタンの直後を分割点として認定できることが示されている。同様に、図5の表の3行目以下に、レベル3、4の分割規則が記述されている。分割規則のレベルは、レベル1が最も高く、レベル2、レベル3、レベル4の順に低くなる。
 以下では、最大入力長が「100」に設定されているものとする。そして、入力文字列として、図6のa)に示す長さが300の入力文「~~~する。~~~するので、~~し、~~し、さらに~~する。」が入力され、図5に示す分割規則を用いた場合の動作例について説明する。
 入力装置1であるキーボード等からデータ処理装置2としてのパーソナルコンピュータに、図6のa)の入力文が入力されると、分割点候補生成手段21が、入力文を受け付けてその長さを計算する。その結果、分割点候補生成手段21は、入力文の長さが「300」であり、最大入力長「100」以上であることを検出して、その入力文を分割対象として設定する。さらに、分割規則のレベルを初期化して最も高い「レベル1」に設定し、分割点生成処理を実行する。
 分割点生成処理において、分割点候補生成手段21は、まず「レベル1」の分割規則を分割規則記憶部31から取得し、分割対象である図6のa)に示す入力文全体に適用する。ここで、分割点候補生成手段21は、分割対象中の句点「。」を検出し、その後ろに分割点候補を設定する。
 次に、分割点調整手段22は、分割点候補生成手段21が設定した分割点候補を受け取り、分割対象である入力文を分割単位候補に分割する。その状態を、図6のb)に示す。
 そして、分割点調整手段22は、分割対象内から未処理の分割単位候補を1つ選択する。ここでは、未チェックの分割単位候補の選択方法として、分割単位候補の中の最も先頭に近い未チェックの分割単位候補から順番に選択する方法を採用するものとする。
 すると、まず図6のb)の最初の長さ「60」の分割単位候補「~~~する。」が選択される。さらに、分割点調整手段22は、その分割単位候補の長さを計算し、得られた分割単位候補の長さ「60」が最大入力長「100」よりも小さいことを判定する。
 そこで、分割点調整手段22は、分割対象内から現在選択されている分割単位候補「~~~する。」に隣接する分割単位候補「~~~するので、~~し、~~し、さらに~~する。」を取得する。
 この2つの長さの和を計算すると「300」であるため、現在選択中の分割単位候補「~~~する。」を処理済として確定し、分割点調整手段22は、次の未処理の分割単位候補「~~~するので、~~し、~~し、さらに~~する。」を新たな処理対象として選択する。
 すると、この分割単位候補は長さが「240」であり、最大入力長「100」以上であるため、分割点調整手段22は、この分割単位候補を分割対象とし、また分割規則のレベルを1つ下の「レベル2」として分割点生成処理を再帰的に呼び出す。
 分割点候補生成手段21は、上記と同様に、図5に示す「レベル2」の分割規則を分割規則記憶部31から取得し、分割対象である、図6のb)の2番目の分割単位候補に適用する。
 ここで、分割点候補生成手段21は、分割対象中の接続助詞「ので」と読点「、」が連続するパタンを検出し、その後ろに分割点候補を設定する。その状態を、図6のc)に示す。
 そして、分割点調整手段22は、さらに上記と同様にして、長さが最大入力長より小さい分割単位候補「~~~するので、」(長さ「80」)を処理済として確定する。その後、分割点調整手段22は、長さが最大入力長以上の分割単位候補「~~し、~~し、さらに~~する。」(長さ「160」)を分割対象とし、また、分割規則のレベルを1つ下の「レベル3」として再度、分割点生成処理を再帰的に呼び出す。
 分割点候補生成手段21は、上記と同様に、「レベル3」の分割規則を分割規則記憶部31から取得し、分割対象である、図6のc)の3番目の分割単位候補に適用する。ここで、分割点候補生成手段21は、分割対象中の動詞連用中止形の「し」と読点「、」が連続するパタンを2箇所検出し、その各々の後ろに分割点候補を設定する。その状態を、図6のd)に示す。
 次に、分割点調整手段22は、未処理の分割単位候補としてまず1番目の分割単位候補「~~し、」(長さ「50」)を選択し、その長さ「50」が最大入力長「100」よりも小さいことを判定する。
 そして、分割点調整手段22は、分割対象内から現在選択されている1番目の分割単位候補「~~し、」に隣接する2番目の分割単位候補「~~し、」を取得する。
 さらに、分割点調整手段22は、この2つの分割単位候補の長さの和を計算し、その長さの和「80」が最大入力長100よりも小さいことを判定する。
 そこで、分割点調整手段22は、この2つの分割単位候補の間の分割点候補を削除し、2つの分割単位候補を繋ぎ合わせた「~~し、~~し、」の単位(長さ「80」)を新たな処理対象とする。その状態を、図6のe)に示す。
 そして、分割点調整手段22は、次の隣接する分割単位候補「さらに~~する。」(長さ「80」)を取得するが、処理対象との長さの和が「160」となり、最大入力長「100」以上となるため、分割単位候補「~~し、~~し、」(長さ「80」)を処理済として確定し、次の未処理の分割単位候補「さらに~~する。」(長さ「80」)を新たな処理対象として選択する。
 しかし、この分割単位候補は、その長さが最大入力長「100」より小さく、かつ、隣接する未処理の分割単位候補が存在しないため、分割点調整手段22は得られた分割点候補を確定し分割点を生成する。
 さらに分割点調整手段22は、再帰的に処理を戻すが既に未処理の分割単位候補が存在しないため得られた分割点候補を次々に確定し分割点を生成する。
 最後に、分割手段23は、得られた分割点で入力文を分割し、「~~~する。」「~~~するので、」「~~し、~~し、」「さらに~~する。」の4つの分割単位を出力する。
 以上好ましい実施の形態と実施例をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態及び実施例に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
 この出願は、2009年3月30日に出願された日本出願特願2009-081431を基礎とする優先権を主張し、その開示の全てをここに取り込む。
 本発明の言語解析装置は、第1の言語で記述された文書を解析して各文の構文構造を出力する構文解析装置や、第1の言語(ある言語)で記述された文書を第2の言語(別の言語)に翻訳する機械翻訳装置といった用途に適用することができる。

Claims (15)

  1.  適用によって解析精度に問題を生じる危険性に応じてレベル分けされた分割規則と、
     予め定められた最大入力長より長い文字列が入力された場合に、問題の生じる危険性の少ないレベルの分割規則から順に前記分割規則を適用することによって入力文字列に対する分割点候補を生成する分割点候補生成手段と、
     前記分割点候補生成手段で生成した分割点候補によって前記文字列を分割して得られる分割単位候補の長さが前記最大入力長より短い場合に、個々の分割単位が前記最大入力長を超えないように、同一レベルの分割規則によって得られた分割点候補の中から分割点の組み合わせを選択する分割点調整手段と、
     前記分割点調整手段によって決定された分割点で入力文字列を分割する分割手段と、
     を備えることを特徴とする言語解析装置。
  2.  前記分割点調整手段が、前記分割単位候補の長さが前記最大入力長を超えると判定すると、前記分割点候補生成手段は、前回の分割規則より低いレベルの分割規則を適用して前記分割単位候補に対する新たな分割点候補を生成することを特徴とする請求項1に記載の言語解析装置。
  3.  前記分割点調整手段が、分割単位候補の先頭から順に隣接する分割単位候補の長さの和を計算し、前記長さの和が前記最大入力長を超えない場合に、当該隣接する分割単位候補の間の分割点候補を分割点として選択しないことを特徴とする請求項1又は請求項2に記載の言語解析装置。
  4.  前記分割点調整手段が、分割単位候補の末尾から順に隣接する分割単位候補の長さの和を計算し、前記長さの和が前記最大入力長を超えない場合に、当該隣接する分割単位候補の間の分割点候補を分割点として選択しないことを特徴とする請求項1又は請求項2に記載の言語解析装置。
  5.  前記分割点調整手段が、分割単位候補の中で短い分割単位候補から順に隣接する分割単位候補の長さの和を計算し、前記長さの和が前記最大入力長を超えない場合に、当該隣接する分割単位候補の間の分割点候補を分割点として選択しないことを特徴とする請求項1又は請求項2に記載の言語解析装置。
  6.  予め定められた最大入力長より長い文字列が入力された場合に、適用によって解析精度に問題を生じる危険性に応じてレベル分けされた分割規則を、問題の生じる危険性の少ないレベルの分割規則から順に適用することによって、入力文字列に対する分割点候補を生成する分割点候補生成ステップと、
     前記分割点候補生成ステップで生成した分割点候補によって前記文字列を分割して得られる分割単位候補の長さが前記最大入力長より短い場合に、個々の分割単位が前記最大入力長を超えないように、同一レベルの分割規則によって得られた分割点候補の中から分割点の組み合わせを選択する分割点調整ステップと、
     前記分割点調整ステップによって決定された分割点で入力文字列を分割する分割ステップとを含むことを特徴とする言語解析方法。
  7.  前記分割点調整ステップで、前記分割単位候補の長さが前記最大入力長を超えると判定すると、前記分割点候補生成ステップにおいて、前回の分割規則より低いレベルの分割規則を適用して前記分割単位候補に対する新たな分割点候補を生成することを特徴とする請求項6に記載の言語解析方法。
  8.  前記分割点調整ステップにおいて、分割単位候補の先頭から順に隣接する分割単位候補の長さの和を計算し、前記長さの和が前記最大入力長を超えない場合に当該隣接する分割単位候補の間の分割点候補を分割点として選択しないことを特徴とする請求項6又は請求項7に記載の言語解析方法。
  9.  前記分割点調整ステップにおいて、分割単位候補の末尾から順に隣接する分割単位候補の長さの和を計算し、前記長さの和が前記最大入力長を超えない場合に当該隣接する分割単位候補の間の分割点候補を分割点として選択しないことを特徴とする請求項6又は請求項7に記載の言語解析方法。
  10.  前記分割点調整ステップにおいて、分割単位候補の中で短い分割単位候補から順に隣接する分割単位候補の長さの和を計算し、前記長さの和が前記最大入力長を超えない場合に当該隣接する分割単位候補の間の分割点候補を分割点として選択しないことを特徴とする請求項6又は請求項7に記載の言語解析方法。
  11.  コンピュータ上で動作し、言語解析処理を行なう言語解析プログラムであって、
     コンピュータに、
     予め定められた最大入力長より長い文字列が入力された場合に、適用によって解析精度に問題を生じる危険性に応じてレベル分けされた分割規則を、問題の生じる危険性の少ないレベルの分割規則から順に適用することによって、入力文字列に対する分割点候補を生成する分割点候補生成処理と、
     前記分割点候補生成処理で生成した分割点候補によって前記文字列を分割して得られる分割単位候補の長さが前記最大入力長より短い場合に、個々の分割単位が前記最大入力長を超えないように、同一レベルの分割規則によって得られた分割点候補の中から分割点の組み合わせを選択する分割点調整処理と、
     前記分割点調整処理によって決定された分割点で入力文字列を分割する分割処理を、実行させることを特徴とする言語解析プログラム。
  12.  前記分割点調整処理で、前記分割単位候補の長さが前記最大入力長を超えると判定すると、前記分割点候補生成処理において、前回の分割規則より低いレベルの分割規則を適用して前記分割単位候補に対する新たな分割点候補を生成することを特徴とする請求項11に記載の言語解析プログラム。
  13.  前記分割点調整処理において、分割単位候補の先頭から順に隣接する分割単位候補の長さの和を計算し、前記長さの和が前記最大入力長を超えない場合に当該隣接する分割単位候補の間の分割点候補を分割点として選択しないことを特徴とする請求項11又は請求項12に記載の言語解析プログラム。
  14.  前記分割点調整処理において、分割単位候補の末尾から順に隣接する分割単位候補の長さの和を計算し、前記長さの和が前記最大入力長を超えない場合に当該隣接する分割単位候補の間の分割点候補を分割点として選択しないことを特徴とする請求項11又は請求項12に記載の言語解析プログラム。
  15.  前記分割点調整処理において、分割単位候補の中で短い分割単位候補から順に隣接する分割単位候補の長さの和を計算し、前記長さの和が前記最大入力長を超えない場合に当該隣接する分割単位候補の間の分割点候補を分割点として選択しないことを特徴とする請求項11又は請求項12に記載の言語解析プログラム。
PCT/JP2010/054920 2009-03-30 2010-03-23 言語解析装置、方法、及びプログラム WO2010113691A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP10758465.8A EP2416256A4 (en) 2009-03-30 2010-03-23 Language analysis device, method, and program
JP2011507101A JP5464209B2 (ja) 2009-03-30 2010-03-23 言語解析装置、方法、及びプログラム
US13/256,697 US8977539B2 (en) 2009-03-30 2010-03-23 Language analysis apparatus, language analysis method, and language analysis program
CN201080014350.3A CN102369524B (zh) 2009-03-30 2010-03-23 语言分析装置和语言分析方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2009-081431 2009-03-30
JP2009081431 2009-03-30

Publications (1)

Publication Number Publication Date
WO2010113691A1 true WO2010113691A1 (ja) 2010-10-07

Family

ID=42827986

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2010/054920 WO2010113691A1 (ja) 2009-03-30 2010-03-23 言語解析装置、方法、及びプログラム

Country Status (5)

Country Link
US (1) US8977539B2 (ja)
EP (1) EP2416256A4 (ja)
JP (1) JP5464209B2 (ja)
CN (1) CN102369524B (ja)
WO (1) WO2010113691A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111680493A (zh) * 2020-08-12 2020-09-18 江西风向标教育科技有限公司 英语文本分析方法、装置、可读存储介质及计算机设备

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10755183B1 (en) * 2016-01-28 2020-08-25 Evernote Corporation Building training data and similarity relations for semantic space
WO2018146864A1 (ja) * 2017-02-07 2018-08-16 パナソニックIpマネジメント株式会社 翻訳装置および翻訳方法
CN112085585A (zh) * 2020-08-03 2020-12-15 北京贝壳时代网络科技有限公司 一种信用风险等级评估方法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61255468A (ja) 1985-05-08 1986-11-13 Toshiba Corp 機械翻訳処理装置
JPH0512329A (ja) * 1991-07-05 1993-01-22 Canon Inc 機械翻訳方式
JPH08190563A (ja) * 1995-01-12 1996-07-23 Sharp Corp 機械翻訳装置
JPH08235180A (ja) * 1995-02-27 1996-09-13 Sharp Corp 機械翻訳装置
JP3173514B2 (ja) 1991-08-28 2001-06-04 松下電器産業株式会社 機械翻訳機
JP2002117019A (ja) * 2000-10-02 2002-04-19 Hewlett Packard Co <Hp> 意味的まとまりに基づいて文書を分割する装置および方法
JP2005284723A (ja) * 2004-03-30 2005-10-13 Fuji Xerox Co Ltd 自然言語処理システム及び自然言語処理方法、並びにコンピュータ・プログラム
JP2009081431A (ja) 2007-09-03 2009-04-16 Ulvac Japan Ltd 半導体装置の製造方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01234975A (ja) * 1988-03-11 1989-09-20 Internatl Business Mach Corp <Ibm> 日本語文章分割装置
US5369574A (en) 1990-08-01 1994-11-29 Canon Kabushiki Kaisha Sentence generating system
US6651039B1 (en) * 1995-08-08 2003-11-18 Matsushita Electric Industrial Co., Ltd. Mechanical translation apparatus and method
CN100424685C (zh) * 2005-09-08 2008-10-08 中国科学院自动化研究所 一种基于标点处理的层次化汉语长句句法分析方法及装置
US20100111498A1 (en) * 2006-09-27 2010-05-06 Koninklijke Philips Electronics N.V. Method of creating a summary
CN100543727C (zh) * 2006-12-21 2009-09-23 中国科学院计算技术研究所 一种融合了句型模板和统计机器翻译技术的翻译方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61255468A (ja) 1985-05-08 1986-11-13 Toshiba Corp 機械翻訳処理装置
JPH0512329A (ja) * 1991-07-05 1993-01-22 Canon Inc 機械翻訳方式
JP3173514B2 (ja) 1991-08-28 2001-06-04 松下電器産業株式会社 機械翻訳機
JPH08190563A (ja) * 1995-01-12 1996-07-23 Sharp Corp 機械翻訳装置
JPH08235180A (ja) * 1995-02-27 1996-09-13 Sharp Corp 機械翻訳装置
JP2002117019A (ja) * 2000-10-02 2002-04-19 Hewlett Packard Co <Hp> 意味的まとまりに基づいて文書を分割する装置および方法
JP2005284723A (ja) * 2004-03-30 2005-10-13 Fuji Xerox Co Ltd 自然言語処理システム及び自然言語処理方法、並びにコンピュータ・プログラム
JP2009081431A (ja) 2007-09-03 2009-04-16 Ulvac Japan Ltd 半導体装置の製造方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2416256A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111680493A (zh) * 2020-08-12 2020-09-18 江西风向标教育科技有限公司 英语文本分析方法、装置、可读存储介质及计算机设备

Also Published As

Publication number Publication date
CN102369524B (zh) 2014-08-13
EP2416256A1 (en) 2012-02-08
JP5464209B2 (ja) 2014-04-09
US20120016664A1 (en) 2012-01-19
JPWO2010113691A1 (ja) 2012-10-11
EP2416256A4 (en) 2017-09-20
CN102369524A (zh) 2012-03-07
US8977539B2 (en) 2015-03-10

Similar Documents

Publication Publication Date Title
US8788266B2 (en) Language model creation device, language model creation method, and computer-readable storage medium
JP6493866B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US8612206B2 (en) Transliterating semitic languages including diacritics
JP5377889B2 (ja) 言語処理装置およびプログラム
US8126714B2 (en) Voice search device
US7761301B2 (en) Prosodic control rule generation method and apparatus, and speech synthesis method and apparatus
JP4769031B2 (ja) 言語モデルを作成する方法、かな漢字変換方法、その装置、コンピュータプログラムおよびコンピュータ読み取り可能な記憶媒体
US9110871B2 (en) Correcting a document character size based on the average value of each character size
US9767193B2 (en) Generation apparatus and method
JP2007206975A (ja) 言語情報変換装置及びその方法
US8650034B2 (en) Speech processing device, speech processing method, and computer program product for speech processing
JP5464209B2 (ja) 言語解析装置、方法、及びプログラム
JP5625827B2 (ja) 形態素解析装置、音声合成装置、形態素解析方法及び形態素解析プログラム
US20060265220A1 (en) Grapheme to phoneme alignment method and relative rule-set generating system
JPWO2015166606A1 (ja) 自然言語処理システム、自然言語処理方法、および自然言語処理プログラム
CN114239589A (zh) 语义理解模型的鲁棒性评估方法、装置及计算机设备
JP5097802B2 (ja) ローマ字変換を用いる日本語自動推薦システムおよび方法
JP7068962B2 (ja) 対話方法、対話システム及びプログラム
JP4055638B2 (ja) 文書処理装置
CN113378561A (zh) 词语预测模板生成方法及装置
KR102284903B1 (ko) 입력 시퀀스 생성 방법 및 장치
JP2009176148A (ja) 未知語判定システム、方法及びプログラム
WO2021166231A1 (ja) シナリオ生成装置、シナリオ生成方法、及びコンピュータ読み取り可能な記録媒体
Golcher A stable statistical constant specific for human language texts
JP6472466B2 (ja) 文体変換装置、方法、及びプログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080014350.3

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10758465

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011507101

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 13256697

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2010758465

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE