WO2022264404A1 - 翻訳方法、翻訳プログラム及び情報処理装置 - Google Patents

翻訳方法、翻訳プログラム及び情報処理装置 Download PDF

Info

Publication number
WO2022264404A1
WO2022264404A1 PCT/JP2021/023207 JP2021023207W WO2022264404A1 WO 2022264404 A1 WO2022264404 A1 WO 2022264404A1 JP 2021023207 W JP2021023207 W JP 2021023207W WO 2022264404 A1 WO2022264404 A1 WO 2022264404A1
Authority
WO
WIPO (PCT)
Prior art keywords
sentence
partial
sentences
information
translation
Prior art date
Application number
PCT/JP2021/023207
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 PCT/JP2021/023207 priority Critical patent/WO2022264404A1/ja
Priority to JP2023528915A priority patent/JPWO2022264404A1/ja
Publication of WO2022264404A1 publication Critical patent/WO2022264404A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/44Statistical methods, e.g. probability models

Definitions

  • the present invention relates to translation methods and the like.
  • machine translation technology has been developed for translating sentences in a first language into sentences in a second language different from the first language.
  • machine translation using NN is being put into practical use. be.
  • machine translation using NN is referred to as neural machine translation.
  • a learning model is generated by machine learning using learning data that defines the relationship between the information of the sentences in the first language and the information of the sentences in the second language.
  • machine translation of a sentence in a second language is performed by inputting information on a sentence in the first language to be translated into a learning model that has undergone machine learning.
  • each term in the second language will be The order of appearance of the translation result is bad, and the translated text may be difficult to understand.
  • an object of the present invention is to provide a translation method, a translation program, and an information processing device capable of generating an easy-to-understand translated text.
  • the computer executes the following processing.
  • the computer obtains information on a plurality of partial sentences and the order of the plurality of partial sentences included in the sentence to be translated, information on a plurality of partial translated sentences included in the sentence resulting from the translation of the sentence to be translated, and a plurality of partial translations.
  • a translation learning model learned based on the relationship with the order of sentences is stored.
  • the computer receives a new third sentence to be translated, the computer identifies information on a plurality of partial sentences included in the third sentence.
  • the computer sequentially inputs information on the identified partial sentences to the translation learning model, thereby controlling the order of the information on the plurality of partial translated sentences corresponding to the information on the identified partial sentences.
  • FIG. 1 is a diagram for explaining processing in the learning phase of the information processing apparatus according to the first embodiment.
  • FIG. 2 is a diagram for explaining an example of the structure of a target sentence.
  • FIG. 3 is a diagram showing the relationship between Japanese sentences and English sentences.
  • FIG. 4 is a diagram for explaining analysis phase processing of the information processing apparatus according to the first embodiment.
  • FIG. 5 is a functional block diagram showing the configuration of the information processing apparatus according to the first embodiment.
  • FIG. 6 is a diagram showing an example of the data structure of the parallel translation table.
  • FIG. 7 is a diagram showing an example of the data structure of a compressed file table.
  • FIG. 8 is a diagram (1) showing an example of the transposed index table.
  • FIG. 9 is a diagram showing an example of the data structure of a Japanese sentence transposed index.
  • FIG. 10 is a diagram showing an example of the data structure of dictionary information.
  • FIG. 11 is a flow chart showing processing of the learning phase of the information processing apparatus according to the first embodiment.
  • FIG. 12 is a flowchart illustrating analysis phase processing of the information processing apparatus according to the first embodiment.
  • FIG. 13 is a diagram for explaining processing in the learning phase of the information processing apparatus according to the second embodiment.
  • FIG. 14 is a diagram for explaining analysis phase processing of the information processing apparatus according to the second embodiment.
  • FIG. 15 is a diagram illustrating an example of the configuration of an information processing apparatus according to the second embodiment.
  • FIG. 16 is a diagram (2) showing an example of the transposed index table.
  • FIG. 17 is a diagram showing an example of the data structure of an alternative term vector table.
  • FIG. 11 is a flow chart showing processing of the learning phase of the information processing apparatus according to the first embodiment.
  • FIG. 12 is a flowchart illustrating analysis phase processing of the information processing apparatus according to the first embodiment.
  • FIG. 13 is
  • FIG. 18 is a flow chart showing processing of the learning phase of the information processing apparatus according to the second embodiment.
  • FIG. 19 is a flowchart illustrating analysis phase processing of the information processing apparatus according to the second embodiment.
  • FIG. 20 is a diagram illustrating an example of a hardware configuration of a computer that implements functions similar to those of the information processing apparatus of the embodiment.
  • FIG. 1 is a diagram for explaining the processing of the learning phase of the information processing apparatus of the first embodiment.
  • the information processing device performs machine learning of the first learning model 70a using the first learning data 65a.
  • the information processing device also uses the second learning data 65b to perform machine learning of the second learning model 70b.
  • the first learning model 70a and the second learning model 70b correspond to CNN (Convolutional Neural Network), RNN (Recurrent Neural Network), autoencoder, and the like.
  • the first learning data 65a defines the relationship between the vector of the target sentence and the vector of the Japanese term.
  • the target sentence vector corresponds to the input data
  • the Japanese term vector corresponds to the correct label.
  • a sentence in each language such as Japanese and English includes multiple terms, each term includes multiple sentences, and each sentence includes multiple words.
  • FIG. 2 is a diagram for explaining an example of the structure of a target sentence.
  • object sentence 20 includes terms 21 , 22 , 23 , and 24 .
  • Item 21 includes sentences 21a and 21b.
  • Term 22 includes sentences 22a and 22b.
  • Term 23 includes sentences 23a and 23b.
  • Term 24 includes sentences 24a and 24b. Although illustration is omitted, each sentence 21a, 21b, 22a, 22b, 23a, 23b, 24a, 24b includes a plurality of words.
  • the information processing device assigns a vector to each word included in the target sentence 20 and multiplies the vectors of the words included in the sentence to calculate the vector of the sentence.
  • the information processing device calculates the vector of the term by multiplying the vectors of the sentences included in the term.
  • the information processing device calculates the vector of the target sentence 20 by integrating the vectors of the terms included in the target sentence 20 .
  • the vector of the target sentence of the first learning data 65a shown in FIG. For other target sentences, the relationship between the vector of the target sentence and the vector of the Japanese term (a plurality of terms) is registered in the first learning data 65a.
  • the information processing device executes learning by error backpropagation so that the output when the vector of the target sentence is input to the first learning model 70a approaches the vector of each Japanese term.
  • the information processing device repeats the above process based on the relationship between the vector of the target sentence and the vectors of the plurality of Japanese terms included in the first learning data 65a, thereby obtaining the parameters of the first learning model 70a. (perform machine learning).
  • the second learning data 65b defines the relationship between the vector of Japanese term(s) and the vector of English term(s).
  • a vector of Japanese terms (a plurality of Japanese terms) corresponds to input data, and a vector of English terms (a plurality of English terms) corresponds to correct labels.
  • Japanese papers (equivalent to sentences) often have translated English papers, but when comparing Japanese papers and English papers that are parallel translations, the order of the terms is reversed. Sometimes.
  • Fig. 3 is a diagram showing the relationship between Japanese sentences and English sentences.
  • Japanese sentence 30 includes terms 30a, 30b, and 30c.
  • the English sentence 35 includes terms 35a, 35b and 35c.
  • Item 30a starts with a word such as "first,” and describes the content corresponding to "reason 1.”
  • Item 30b starts with a word such as "finally,” and describes the content corresponding to "reason n.”
  • Item 30c describes the content corresponding to the "conclusion”.
  • the English sentence 35 is a translated sentence based on the Japanese sentence 30, but the order of the items has been changed.
  • sentence 35 in English includes terms 35a, 35b, and 35c.
  • Item 35a starts with a word such as "Generally” and describes the content corresponding to "Conclusion”.
  • Item 35b starts with a word such as "Because” and describes the content corresponding to "Reason 1”.
  • Item 35c starts with a word such as "Finally” and describes the content corresponding to "Reason n”.
  • the terms 30a and 35b correspond, the terms 30b and 35c correspond, the terms 30c and 35a correspond, and the Japanese sentence 30 and the English sentence 35
  • the vector of term 30a (reason 1)
  • the vector of term 30b (reason n)
  • the vector of term 30c (conclusion)
  • the vector of term 35a (conclusion)
  • the vector of term 35b (reason 1)
  • the vector of term 30c (reason n)
  • the information processing device performs error backpropagation so that the output when the vectors of the Japanese terms are sequentially input to the second learning model 70b from the top is output in the order of the vectors of the English terms set as the correct labels.
  • Perform learning by The information processing device repeats the above process based on the relationship between the vector of the target sentence and the vectors of the plurality of Japanese terms included in the first learning data 65a, thereby obtaining the parameters of the first learning model 70a. (perform machine learning).
  • FIG. 4 is a diagram for explaining the analysis phase processing of the information processing apparatus of the first embodiment.
  • the information processing device acquires an analysis query 80.
  • the analytical query 80 includes a Japanese sentence to be translated.
  • the information processing device converts the analytical query 80 into a vector "Vob80".
  • the information processing apparatus calculates a sentence vector by multiplying word vectors to calculate a sentence vector, multiplying sentence vectors to calculate a term vector, and calculating a term vector.
  • the vector of the sentence is calculated by multiplying the vector of .
  • the information processing device inputs the vector "Vob80" of the analysis query 80 to the first learning model 70a, so that the vectors "Vsb80-r1", “Vsb80-r2", . . , “Vsb80-rn” and “Vsb80-con” are specified.
  • the term corresponding to the vector "Vsb80-r1" corresponds to the vector of terms corresponding to Reason 1 in the Japanese text.
  • a term corresponding to the vector “Vsb80-rn” corresponds to a vector of terms corresponding to the reason n in the Japanese sentence.
  • the term corresponding to the vector "Vsb80-con” corresponds to the vector of terms corresponding to the conclusion of the Japanese sentence.
  • the information processing device sequentially inputs the vectors of the terms specified using the first learning model 70a to the second learning model 70b, thereby generating the vectors "Vsb90-con”, "Vsb90- r1”, . . . , “Vsb90-rn” are specified in order.
  • the term corresponding to the vector "Vsb90-con” corresponds to the vector of terms corresponding to the conclusion of the English sentence.
  • the term corresponding to the vector "Vsb90-r1” corresponds to the vector of the term corresponding to Reason 1 in the English sentence.
  • a term corresponding to the vector “Vsb90-rn” corresponds to a vector of terms corresponding to the reason n in the English sentence.
  • the information processing device extracts the English sentences corresponding to "Vsb90-con”, “Vsb90-r1”, ..., “Vsb90-rn” from the parallel translation table 141 and outputs them as translations.
  • the information processing apparatus learns the first learning model 70a and the second learning model 70b in advance.
  • the information processing device Upon receiving the analysis query 80, the information processing device inputs the vector of the analysis query 80 to the first learning model 70a, thereby calculating vectors corresponding to a plurality of terms in the Japanese sentence.
  • the information processing device sequentially inputs vectors corresponding to a plurality of terms of the Japanese text to the second learning model 70b, thereby obtaining vectors of the terms of the English text corresponding to the terms of the Japanese text, Calculates multiple vectors whose output order is controlled.
  • the information processing device acquires the term of the English sentence corresponding to the calculated vector from the parallel translation table 141 and outputs it as a translation result. In this way, after adjusting the order of the items in the Japanese sentences to the order of the items in the English sentences specific to English, the translated contents themselves can be translated by using the items included in the parallel translation table 141. can generate
  • FIG. 5 is a functional block diagram showing the configuration of the information processing apparatus according to the first embodiment.
  • this information processing apparatus 100 has a communication section 110 , an input section 120 , a display section 130 , a storage section 140 and a control section 150 .
  • the communication unit 110 is connected to an external device or the like by wire or wirelessly, and transmits and receives information to and from the external device or the like.
  • the communication unit 110 is implemented by a NIC (Network Interface Card) or the like.
  • the communication unit 110 may be connected to a network (not shown).
  • the input unit 120 is an input device that inputs various types of information to the information processing device 100 .
  • the input unit 120 corresponds to a keyboard, mouse, touch panel, or the like.
  • the user may operate the input unit 120 to input an analysis query or the like.
  • the display unit 130 is a display device that displays information output from the control unit 150 .
  • the display unit 130 corresponds to a liquid crystal display, an organic EL (Electro Luminescence) display, a touch panel, or the like. For example, a translation result corresponding to the analysis query is displayed on display unit 130 .
  • the storage unit 140 has a parallel translation table 141, a compressed file table 142, an inverted index table 143, and dictionary information 144.
  • the storage unit 140 also has first learning data 65 a , second learning data 65 b , first learning model 70 a , second learning model 70 b and analysis query 80 .
  • the storage unit 140 is implemented by, for example, a semiconductor memory device such as RAM (Random Access Memory) or flash memory, or a storage device such as a hard disk or optical disk.
  • the bilingual table 141 is a table that holds a plurality of sets of Japanese sentences and English sentences resulting from the Japanese translation.
  • FIG. 6 is a diagram showing an example of the data structure of the parallel translation table. As shown in FIG. 6, the bilingual table 141 has item numbers, Japanese sentences, and English sentences. The item number is the item number of the record of the bilingual table 141 .
  • a Japanese sentence is Japanese text data and has a plurality of terms.
  • An English sentence is English text data and has a plurality of terms.
  • the compressed file table 142 has compressed files of Japanese sentences and compressed files of English sentences.
  • FIG. 7 is a diagram showing an example of the data structure of a compressed file table. As shown in FIG. 7, the compressed file table 142 has a Japanese sentence compressed file 142a and an English sentence compressed file 142b.
  • the compressed Japanese text file 142a is a file in which each word contained in each Japanese text is converted into a code.
  • the compressed English sentence file 142b is a file in which each English word contained in each English sentence is converted into a code.
  • the transposed index table 143 has transposed indexes for Japanese sentences and transposed indexes for English sentences.
  • FIG. 8 is a diagram (1) showing an example of the transposed index table.
  • the transposed index table 143 includes a Japanese text transposed index 143a, an English text transposed index 143b, a Japanese text transposed index 143c, an English text transposed index 143d, a Japanese text transposed index 143e, and an English text transposed index.
  • the Japanese sentence transposed index 143a associates a Japanese sentence vector (hereinafter referred to as a Japanese sentence vector) with an offset indicating the position of the encoded sentence, which is the sentence corresponding to the Japanese sentence vector.
  • the encoded Japanese text is registered in the compressed Japanese text file 142a.
  • An encoded sentence has multiple encoded words, and the offset of the first word of the encoded sentence is the position of the encoded sentence.
  • the offset corresponds to the position from the beginning of the compressed Japanese text file 142a. Assume that the offset of the top word of the compressed Japanese text file 142a is "0".
  • FIG. 9 is a diagram showing an example of the data structure of the Japanese text transposed index.
  • the horizontal axis of the Japanese text transposed index 143a is the axis corresponding to the offset.
  • the horizontal axis of the transposed index 143a is the axis corresponding to the Japanese sentence vector.
  • the Japanese sentence transposed index 143a is indicated by a bitmap of "0" or "1". 0”.
  • the English sentence transposed index 143b associates an English sentence vector (hereinafter referred to as an English sentence vector) with an offset indicating the position of the encoded sentence, which is the sentence corresponding to the English sentence vector.
  • the encoded English text is registered in the compressed English text file 142b.
  • An encoded sentence has multiple encoded words, and the offset of the first word of the encoded sentence is the position of the encoded sentence. The offset corresponds to the position from the beginning of the compressed English text file 142b. Assume that the offset of the top word of the compressed English text file 142b is "0".
  • the English sentence transposition index 143b has a horizontal axis corresponding to the offset and a vertical axis corresponding to the English sentence vector. Illustration of the English sentence transposition index 143b is omitted.
  • the Japanese term transposition index 143c is a vector of terms included in a Japanese sentence (hereinafter referred to as a Japanese term vector) and an offset indicating the position of a term corresponding to the Japanese term vector and encoded. and
  • the encoded Japanese text is registered in the compressed Japanese text file 142a.
  • An encoded term has multiple encoded words, and the offset of the first word of the encoded term is the position of the encoded term. The offset corresponds to the position from the beginning of the compressed Japanese text file 142a.
  • the Japanese term transposed index 143c has a horizontal axis corresponding to the offset and a vertical axis corresponding to the Japanese term vector. Illustration of the Japanese term transposition index 143c is omitted.
  • the English term transposed index 143d associates an English term vector (hereinafter referred to as an English term vector) with an offset indicating the position of the encoded term, which is the term corresponding to the English term vector.
  • the encoded English terms are registered in the compressed English text file 142b.
  • An encoded term has multiple encoded words, and the offset of the first word of the encoded term is the position of the encoded term. The offset corresponds to the position from the beginning of the compressed English text file 142b.
  • the English term transposed index 143d has a horizontal axis corresponding to the offset and a vertical axis corresponding to the English term vector. Illustration of the English term transposed index 143d is omitted.
  • the Japanese sentence transposition index 143e associates a sentence vector included in a Japanese sentence (hereinafter referred to as a Japanese sentence vector) with an offset indicating the position of the encoded sentence corresponding to the Japanese sentence vector.
  • the encoded Japanese text is registered in the compressed Japanese text file 142a.
  • An encoded Japanese sentence has multiple encoded words, and the offset of the first word of the encoded sentence is the position of the encoded sentence. The offset corresponds to the position from the beginning of the compressed Japanese text file 142a.
  • the Japanese sentence transposed index 143e has a horizontal axis corresponding to the offset and a vertical axis corresponding to the Japanese sentence vector. Illustration of the Japanese sentence transposition index 143e is omitted.
  • the English sentence transposition index 143f associates an English sentence vector (hereinafter referred to as an English sentence vector) with an offset indicating the position of the encoded sentence corresponding to the English sentence vector.
  • the encoded English sentences are registered in the compressed English sentence file 142b.
  • An encoded sentence has multiple encoded words, and the offset of the first word of the encoded sentence is the position of the encoded sentence. The offset corresponds to the position from the beginning of the compressed English text file 142b.
  • the English sentence transposition index 143f has a horizontal axis corresponding to the offset and a vertical axis corresponding to the English sentence vector. Illustration of the English sentence transposition index 143f is omitted.
  • the Japanese word transposed index 143g is a word vector included in a Japanese sentence (hereinafter referred to as a Japanese word vector) and an offset indicating the position of an encoded word in a sentence corresponding to the Japanese word vector. and
  • the encoded Japanese text is registered in the compressed Japanese text file 142a.
  • the offset corresponds to the position from the beginning of the compressed Japanese text file 142a.
  • the Japanese word transposed index 143g has a horizontal axis corresponding to the offset and a vertical axis corresponding to the Japanese word vector. Illustration of the Japanese word transposition index 143g is omitted.
  • the English word transposed index 143h associates an English word vector (hereinafter referred to as an English word vector) with an offset indicating the position of the encoded word that is a sentence corresponding to the English word vector.
  • the encoded English words are registered in the compressed English text file 142b.
  • the offset corresponds to the position from the beginning of the compressed English text file 142b.
  • the English word transposed index 143h has a horizontal axis corresponding to the offset and a vertical axis corresponding to the English word vector. Illustration of the English word transposition index 143h is omitted.
  • the dictionary information 144 is dictionary information that defines compression codes corresponding to Japanese words.
  • FIG. 10 is a diagram showing an example of the data structure of dictionary information. As shown in FIG. 10, the dictionary information 144 associates words (Japanese words or English words) with compression codes and vectors. It is assumed that vectors corresponding to compression codes are assigned in advance by Poincare embedding or the like. Note that the compression code vector may be specified based on other conventional techniques.
  • the first learning data 65a corresponds to the first learning data 65a described in FIG.
  • the first learning data 65a defines the relationship between the vector of the target sentence and the vector of the Japanese term.
  • the target sentence vector corresponds to the input data
  • the Japanese term vector corresponds to the correct label.
  • the second learning data 65b corresponds to the second learning data 65b described in FIG.
  • the second learning data 65b defines the relationship between the vector of Japanese term(s) and the vector of English term(s).
  • a vector of Japanese terms (a plurality of Japanese terms) corresponds to input data, and a vector of English terms (a plurality of English terms) corresponds to correct labels.
  • the first learning model 70a is a learning model that undergoes machine learning based on the first learning data 65a.
  • the second learning model 70b is a learning model that undergoes machine learning based on the second learning data 65b.
  • the analysis query 80 is a query specified from the outside.
  • the analysis query 80 is set with a Japanese sentence to be translated.
  • the control unit 150 has a preprocessing unit 151 , a learning unit 152 and a translation unit 153 .
  • the control unit 150 is implemented by, for example, a CPU (Central Processing Unit) or an MPU (Micro Processing Unit). Also, the control unit 150 may be executed by an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array).
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • the preprocessing unit 151 Based on the bilingual table 141 and the dictionary information 144, the preprocessing unit 151 generates the transposed index table 143, the first learning data 65a, and the second learning data 65b in the process of generating the compressed file table 142. An example of the processing of the preprocessing unit 151 will be described below.
  • the preprocessing unit 151 refers to the bilingual table 141 and acquires a set of Japanese text data and English text data from the unselected item number record.
  • the preprocessing unit 151 executes morphological analysis on the text data of Japanese sentences to identify multiple words, full stops, line breaks, etc., and multiple terms included in the text data. Identify sentences. For example, the preprocessing unit 151 identifies a group of words from a line feed to the next line feed in text data of Japanese sentences as a Japanese term. The preprocessing unit 151 identifies a group of words from one period to the next as a Japanese sentence.
  • the preprocessing unit 151 may further use a predetermined conjunction to identify the starting position of the term. For example, conjunctions such as “first”, “finally”, and “that is,” or character strings corresponding to the conjunctions are specified as the starting position of the Japanese clause. The preprocessing unit 151 identifies conjunctions such as “generally”, “because”, and “finally” or character strings corresponding to conjunctions as the start position of the English term.
  • the preprocessing unit 151 identifies the compression code of the word and the vector assigned to the word based on the word of the text data of the Japanese sentence and the dictionary information 144 .
  • the preprocessing unit 151 calculates a Japanese sentence vector of each sentence, a Japanese term vector of each term, and a Japanese sentence vector of the text data (sentence) based on the word vector of the text data of the Japanese sentence.
  • the preprocessing unit 151 also converts the words of the text data of the Japanese sentences into compression codes and registers them in the compressed Japanese sentence file 142a.
  • the preprocessing unit 151 sets the relationship between the Japanese sentence vector and the offset of the Japanese sentence on the compressed Japanese sentence file 142a in the Japanese sentence transposition index 143a.
  • the preprocessing unit 151 sets the relationship between the Japanese term vector and the offset of each term on the compressed Japanese text file 142a in the Japanese term transposition index 143c.
  • the preprocessing unit 151 sets the relationship between the Japanese sentence vector and the offset of each sentence on the compressed Japanese sentence file 142a in the Japanese sentence transposition index 143e.
  • the preprocessing unit 151 sets the relationship between the Japanese word vector and the offset of each sentence in the compressed Japanese sentence file 142a in the Japanese word transposition index 143g.
  • the preprocessing unit 151 registers, in the first learning data 65a, the relationship between the Japanese sentence vector specified from the text data of the Japanese sentence and the multiple Japanese term vectors.
  • the preprocessing unit 151 executes morphological analysis on text data of English sentences to identify a plurality of words, periods, line breaks, etc. Identify the containing sentence. For example, preprocessing unit 151 identifies a group of words from a line feed to the next line feed in text data of an English sentence as an English term. Preprocessing unit 151 identifies a group of words from one period to the next as an English sentence.
  • the preprocessing unit 151 identifies the compression codes of the words and the vectors assigned to the words based on the words of the English text data and the dictionary information 144 .
  • the preprocessing unit 151 calculates an English sentence vector of each sentence, an English term vector of each term, and an English sentence vector of the text data (sentence) based on the word vector of the text data of the English sentence.
  • the preprocessing unit 151 also converts the words of the text data of the English sentences into compressed codes and registers them in the compressed English sentence file 142b.
  • the preprocessing unit 151 sets the relationship between the English sentence vector and the offset of the English sentence on the compressed English sentence file 142b in the English sentence transposed index 143b.
  • the preprocessing unit 151 sets the relationship between the English term vector and the offset of each term on the compressed English text file 142b in the English term permuted index 143d.
  • the preprocessing unit 151 sets the relationship between the English sentence vector and the offset of each sentence in the compressed English sentence file 142b in the English sentence transposed index 143f.
  • the preprocessing unit 151 sets the relationship between the English word vector and the offset of each sentence on the compressed English sentence file 142b in the English word transposed index 143h.
  • the preprocessing unit 151 registers each Japanese term vector specified from the text data of the Japanese sentence in the second learning data 65b in order from the beginning.
  • the preprocessing unit 151 registers each English term vector specified from the text data of the English sentence in the second learning data 65b in order from the beginning.
  • the preprocessing unit 151 repeats the above process based on the text data of the Japanese sentences and the text data of the English sentences of the record of the item number included in the bilingual table 141, thereby obtaining the first learning data 65a. , to generate the second learning data 65b.
  • the preprocessing unit 151 generates the first learning data 65a and the second learning data 65b.
  • the first learning data 65a and the second learning data 65b are received from an external device or the like. and use it.
  • the learning unit 152 performs machine learning of the first learning model 70a based on the first learning data 65a.
  • the learning unit 152 performs machine learning of the second learning model 70b based on the second learning data 65b.
  • the learning unit 152 outputs a vector of each Japanese term (Japanese term vector) when the vector of the target text (Japanese text vector) is input to the first learning model 70a. Perform backpropagation learning to get closer.
  • the learning unit 152 repeats the above process based on the relationship between the vector of the target sentence and the vectors of the plurality of Japanese terms included in the first learning data 65a, thereby obtaining the parameters of the first learning model 70a. (perform machine learning).
  • the learning unit 152 inputs each Japanese term vector (Japanese term vector) to the second learning model 70b in order from the beginning, and outputs each English term set as the correct label. Perform backpropagation learning so that the term vector (English term vector) is output in order.
  • the learning unit 152 repeats the above process based on the relationship between the vector of the target sentence and the vectors of the plurality of Japanese terms included in the first learning data 65a, thereby obtaining the parameters of the first learning model 70a. (perform machine learning).
  • the translation unit 153 When the analysis query 80 is received, the translation unit 153 translates the Japanese sentences included in the analysis query 80 .
  • the translation unit 153 receives the analysis query 80 from the input unit 120 or the communication unit 110 and stores it in the storage unit 140 . An example of the processing of the translation unit 153 will be described below.
  • the translation unit 153 performs morphological analysis on the text data of the Japanese sentences included in the analysis query 80, and divides the text data into a plurality of words.
  • the translation unit 153 identifies the vector of the word based on the word included in the text data and the dictionary information 144 .
  • the translation unit 153 calculates the vector of each sentence by integrating the vector of each word.
  • the translation unit 153 calculates the vector of each term by integrating the vectors of each sentence.
  • the translation unit 153 calculates the vector of the analysis query 80 by accumulating the vectors of each term.
  • the translation unit 153 calculates a plurality of Japanese term vectors included in the Japanese text of the analysis query 80 by inputting the vector of the analysis query 80 into the first learning model 70a.
  • the translation unit 153 inputs the vector “Vob80” of the analysis query 80 to the first learning model 70a, thereby obtaining each Japanese term vector “Vsb80- 1”, “Vsb80-2”, . . . , “Vsb80-n”.
  • the translation unit 153 sequentially calculates English term vectors by sequentially inputting a plurality of Japanese term vectors calculated based on the first learning model 70a to the second learning model 70b. In the example illustrated in FIG. 4, the translation unit 153 sequentially inputs the Japanese term vectors “Vsb80-1”, “Vsb80-2”, . Thus, the English term vectors “Vsb90-1”, “Vsb90-2”, .
  • Translation unit 153 identifies the offset of the encoded term corresponding to each English term vector based on each English term vector identified based on second learning model 70b and English term transposition index 143d. . Based on the specified offset of each term, the translation unit 153 acquires encoded term information (encoded array) from the compressed English text file 142b.
  • the translation unit 153 decodes the encoded item information based on the encoded item information (encoded array) and the dictionary information 144 . For example, the translation unit 153 arranges the decoding result of each English term vector "Vsb90-1", the decoding result of the term “Vsb90-2", ..., the decoding result of the term "Vsb90-n” in this order. By doing so, the information of the translation result is generated. Translation unit 153 causes display unit 130 to display the information of the translation result. Also, the information of the translation result may be transmitted to the external device that is the transmission source of the analysis query 80 .
  • FIG. 11 is a flow chart showing processing of the learning phase of the information processing apparatus according to the first embodiment.
  • the preprocessing unit 151 of the information processing apparatus 100 executes preprocessing based on the bilingual table 141, and converts the compressed file table 142, the transposed index table 143, the first learning data 65a, the second Learning data 65b is generated (step S101).
  • the learning unit 152 of the information processing device 100 executes machine learning of the first learning model 70a based on the first learning data 65a (step S102).
  • the learning unit 152 of the information processing device 100 executes machine learning of the second learning model 70b based on the second learning data 65b (step S103).
  • FIG. 12 is a flowchart showing analysis phase processing of the information processing apparatus according to the first embodiment.
  • the translation unit 153 of the information processing device 100 receives an analysis query 80 and stores it in the storage unit 140 (step S201).
  • the translation unit 153 calculates the vector of the analysis query 80 (step S202).
  • the translation unit 153 calculates a plurality of Japanese term vectors by inputting the vector of the analysis query 80 to the first learning model 70a (step S203).
  • the translation unit 153 sequentially inputs a plurality of Japanese term vectors to the second learning model 70b, and acquires a plurality of English term vectors and their order (step S204).
  • the translation unit 153 identifies the term offset based on the English term vector and the English term transposed index 143d (step S205).
  • the translation unit 153 acquires the code array of each term from the compressed English text file 142b (step S206). The translation unit 153 decodes the code array of each term based on the code array of each term and the dictionary information 144 (step S207).
  • the translation unit 153 generates a translation result by arranging the decoded results in order (step S108).
  • the translation unit 153 outputs the translation result (step S209).
  • the information processing apparatus 100 learns the first learning model 70a and the second learning model 70b in advance.
  • the information processing apparatus 100 inputs the vector of the analysis query 80 to the first learning model 70a, thereby calculating vectors corresponding to a plurality of terms in the Japanese sentence.
  • the information processing apparatus 100 sequentially inputs vectors corresponding to a plurality of terms of the Japanese sentence to the second learning model 70b, thereby obtaining vectors of the terms of the English sentence corresponding to the terms of the Japanese sentence. Calculates a plurality of vectors in which the output order of the vectors of is controlled.
  • the information processing apparatus 100 acquires the term of the English sentence corresponding to the calculated vector from the storage unit 140 and outputs it as a translation result. In this way, after adjusting the order of the items in the Japanese sentences to the order of the items in the English sentences specific to English, the translated contents themselves can be translated by using the items included in the parallel translation table 141. can generate
  • the information processing apparatus 100 sets the relationship between the target sentence vector (Japanese sentence vector) and the Japanese term vector (Japanese term vector) in the first learning model 70a.
  • machine learning was performed, but it is not limited to this.
  • sentence and term vectors of the information processing device 100 may be clustered to group similar Japanese sentence vectors and Japanese sentence vectors.
  • the function that decomposes the target sentence into multiple sections based on machine learning can also be used to convert newspaper editorials, magazine articles, papers, etc.
  • the application can be expanded to decomposition of multiple terms such as
  • Japanese sentence vectors Vob1 and Vob2 belong to the same cluster, and Japanese term vectors (Vsb1-1, Vsb1-2, . . . Vsb1-n) and (Vsb2-1, Vsb2-2, . Vsb2-n) belong to the same cluster.
  • the preprocessing unit 151 may combine the first row record and the second row record of the first learning data 65a into one record. For example, one record may be deleted, or the average vector of vectors belonging to the same cluster may be used as a new vector. By performing clustering to 100,000 or less types by such a method, it is possible to reduce the amount of calculation when performing machine learning on the first learning model 70a.
  • the preprocessing unit 151, the learning unit 152, and the translation unit 153 may use a plurality of vectors belonging to the same cluster as one vector (average vector, etc.) corresponding to the same cluster.
  • the preprocessing unit 151 similarly processes each record of the second learning data 65b, thereby reducing the amount of computation when performing machine learning on the second learning model 70b.
  • the target of clustering is not limited to text character strings, but can be expanded to character strings such as source programs, chemical structural formulas of organic compounds, nucleotide sequences of genomes, and image outline PostScript.
  • FIG. 13 is a diagram for explaining processing in the learning phase of the information processing apparatus according to the second embodiment.
  • the information processing device performs machine learning of the learning model 96 using the learning data 95 .
  • the learning model 96 corresponds to CNN, RNN, and the like.
  • the learning data 95 defines relationships between vectors of terms and vectors of common sentences.
  • a vector of terms indicates a vector of terms included in the target sentence.
  • the description of the terms is the same as the description of the terms described in the first embodiment.
  • a common sentence is a common sentence among a plurality of sentences included in a plurality of terms.
  • a vector of common sentences is a vector of such common sentences.
  • the information processing device executes learning by error backpropagation so that the output when the term vector is input to the learning model 96 approaches the common sentence vector.
  • the information processing device adjusts the parameters of the learning model 96 (performs machine learning) by repeatedly executing the above processing based on the relationship between the vectors of the terms included in the learning data 95 and the vectors of the common sentences. do).
  • FIG. 14 is a diagram for explaining the analysis phase processing of the information processing apparatus of the second embodiment.
  • the information processing device acquires the analysis query 97 .
  • the analytical query 97 includes Japanese terms to be translated.
  • the information processing device receives the analysis query 97, it calculates the vector “Vsb97-1” of the analysis query 97 using the dictionary information.
  • the information processing device inputs the vector “Vsb97-1” to the learning model 96 to calculate the common sentence vector “Vco-1”.
  • the information processing device compares the vector "Vsb97-1" of the analysis query 97 (term) with the vectors of multiple alternative terms contained in the alternative term vector table T1.
  • the alternative term vector table T1 is a table that holds alternative term vectors.
  • the information processing device identifies a vector of similar alternative terms for the vector "Vsb97-1" of the analysis query 97.
  • Vsb1-1 be a vector of alternative terms similar to the vector “Vsb97-1” of analytical query 97 .
  • the vector Vco97-1 output from the learning model 96 is the common sentence vector common to the term of the vector Vsb97-1 and the alternative term of the vector Vsb1-1.
  • the information processing device is a common sentence included in the text data of the term corresponding to the vector “Vsb1-1” of the alternative term, and the vector Vco 97-1 output from the learning model 96 Information on the corresponding common sentence and information on the English translation of the common sentence are output.
  • the information processing apparatus inputs the vector of the analysis query 97 to the learned learning model 96 and calculates the vector of the common sentence corresponding to the term of the analysis query 97 . It also identifies a vector of similar alternative terms based on the vector of analytical queries 97 . As a result, it is possible to calculate a vector of common sentences that are alternative terms that are similar to the terms of the analysis query 97 and that are common between the alternative terms and the terms of the analysis query 97 . By using the calculated common sentence vector, it is possible to extract common sentences of alternative terms similar to the terms of the analysis query 97 and English translations associated with such common sentences.
  • the information processing device may also register the relationship between the vector of the common sentence and the vector of the re-translated sentence in the common sentence/re-translated sentence table 98 .
  • a retranslation vector is calculated by comparing and subtracting the vector of each sentence constituting the alternative term and the vector of the common sentence.
  • FIG. 15 is a diagram showing an example of the configuration of an information processing apparatus according to the second embodiment.
  • the information processing apparatus 200 has a communication section 210, an input section 220, a display section 230, a storage section 240, and a control section 250.
  • FIG. 15 is a diagram showing an example of the configuration of an information processing apparatus according to the second embodiment.
  • the information processing apparatus 200 has a communication section 210, an input section 220, a display section 230, a storage section 240, and a control section 250.
  • FIG. 1 is a diagram showing an example of the configuration of an information processing apparatus according to the second embodiment.
  • the information processing apparatus 200 has a communication section 210, an input section 220, a display section 230, a storage section 240, and a control section 250.
  • FIG. 15 is a diagram showing an example of the configuration of an information processing apparatus according to the second embodiment.
  • the information processing apparatus 200 has a communication section 210, an input section 220, a display section
  • the descriptions of the communication unit 210, the input unit 220, and the display unit 230 are the same as the descriptions of the communication unit 110, the input unit 120, and the display unit 130 described in the first embodiment.
  • the storage unit 240 has a bilingual table 241 , a compressed file table 242 , a transposed index table 243 , dictionary information 244 , learning data 95 , learning models 96 , analysis queries 97 , and a common sentence/retranslation table 98 .
  • the storage unit 240 is realized by, for example, a semiconductor memory device such as a RAM or flash memory, or a storage device such as a hard disk or an optical disk.
  • the bilingual table 241 is a table that holds a plurality of pairs of Japanese sentences and English sentences that are translation results of the Japanese sentences. Other explanations about the translation table 241 are the same as the explanations about the translation table 141 described in the first embodiment.
  • the compressed file table 242 has compressed files of Japanese sentences and compressed files of English sentences. Other explanations regarding the compressed file table 242 are the same as those concerning the compressed file table 142 described in the first embodiment.
  • the transposed index table 243 has transposed indexes for Japanese sentences and transposed indexes for English sentences.
  • FIG. 16 is a diagram (2) showing an example of the transposed index table.
  • the transposed index table 243 includes a Japanese sentence transposed index 243a, an English sentence transposed index 243b, a Japanese sentence transposed index 243c, an English sentence transposed index 243d, a Japanese sentence transposed index 243e, and an English sentence transposed index.
  • Japanese text transposed index 243a English text transposed index 243b, Japanese term transposed index 243c, English term transposed index 243d, Japanese text transposed index 243e, English text transposed index 243f, Japanese word transposed index included in transposed index table 243 243g and the English word transposed index 243h are the same as the explanations of the indexes shown in FIG. 8 of the first embodiment.
  • the dictionary information 244 is dictionary information that defines compression codes corresponding to Japanese words. Other explanations about the dictionary information 244 are the same as the explanations about the dictionary information 144 described in the first embodiment.
  • the alternative term vector table T1 is a table that holds vectors of alternative terms.
  • FIG. 17 is a diagram showing an example of the data structure of an alternative term vector table. As shown in FIG. 17, the alternative term vector table T1 includes a plurality of Japanese term vectors (Japanese term vectors).
  • the learning data 95 corresponds to the learning data 95 described with reference to FIG.
  • the training data 95 defines relationships between vectors of terms and vectors of common sentences.
  • a vector of terms indicates a vector of terms included in the target sentence.
  • the description of the terms is the same as the description of the terms described in the first embodiment.
  • a common sentence is a common sentence among a plurality of sentences included in a plurality of terms.
  • a vector of common sentences is a vector of such common sentences.
  • the learning model 96 is a learning model that undergoes machine learning based on the learning data 95.
  • the analysis query 97 is a query specified from the outside.
  • the analysis query 97 is set with Japanese terms to be translated.
  • the control unit 250 has a preprocessing unit 251 , a learning unit 252 and a translation unit 253 .
  • Control unit 250 is implemented by, for example, a CPU or MPU. Also, the controller 250 may be implemented by an integrated circuit such as an ASIC or FPGA.
  • the preprocessing unit 251 generates the transposed index table 243, the alternative term vector table T1, and the learning data 95 in the process of generating the compressed file table 242 based on the bilingual table 241 and the dictionary information 244. An example of the processing of the preprocessing unit 251 will be described below.
  • the processing by which the preprocessing unit 251 generates the compressed file table 242 and the transposed index table 243 is the same as that of the first embodiment, so description thereof will be omitted.
  • the preprocessing unit 251 When calculating the Japanese term vector and generating the Japanese term transposed index 243c, the preprocessing unit 251 repeatedly executes the process of registering the Japanese term vector in the alternative term vector table T1, thereby obtaining the alternative term vector. Generate a vector table T1. In addition, when the preprocessing unit 251 calculates the vector of the designated alternative term in the case where the alternative term candidate is specified in advance, the preprocessing unit 251 stores the vector of the alternative term in the alternative term vector table T1. You may register.
  • the preprocessing unit 251 accepts specification of Japanese items to be set in the learning data 95 and common sentences included in the Japanese items among the Japanese sentences included in the parallel translation table 241 .
  • the preprocessing unit 251 calculates the Japanese term vector and generates the Japanese term transposed index 243c, and when it calculates the Japanese sentence vector and generates the Japanese sentence transposed index 243e, the Japanese term vector and vectors of common sentences included in the Japanese term are repeatedly executed to register the learning data 95, thereby generating the learning data 95.
  • the learning unit 252 executes machine learning of the learning model 96 based on the learning data 95. As described with reference to FIG. 13, the learning unit 252 executes learning by error backpropagation so that the output when the term vector (Japanese term vector) is input to the learning model 96 approaches the vector of the common sentence. do. The learning unit 252 adjusts the parameters of the learning model 96 (performs machine learning) by repeatedly executing the above processing based on the relationship between the term vector included in the learning data 95 and the common sentence vector. do).
  • the translation unit 253 When the analysis query 97 is received, the translation unit 253 translates the terms included in the analysis query 97 .
  • the translation unit 253 receives the analysis query 97 from the input unit 220 or the communication unit 210 and stores it in the storage unit 240 . An example of the processing of the translation unit 253 will be described below.
  • the translation unit 253 performs morphological analysis on the text data of the Japanese term included in the analysis query 97, and divides the text data into multiple words.
  • the translation unit 253 identifies vectors of words based on the words included in the text data and the dictionary information 244 .
  • the translation unit 253 calculates the vector of each sentence by integrating the vector of each word.
  • the translation unit 253 calculates the vector of the term (analysis query 97) by integrating the vectors of each sentence.
  • the translation unit 253 calculates a vector of common sentences corresponding to the analysis query 97 by inputting the vector of the analysis query 97 into the learning model 96 .
  • the translation unit 253 also compares the vector of the analytical query 97 with the vector of each alternative term included in the alternative term vector table T1 to identify the vector of the alternative term similar to the vector of the analytical query 97.
  • a vector of alternative terms that is similar to the vector of analytical query 97 is referred to as a "similar vector.”
  • the translation unit 253 compares the similarity vector with the Japanese term transposed index 243c to identify the offset of the term of the similarity vector.
  • the translation unit 253 narrows down the offset range of the sentences included in the terms of the similar vector based on the offset of the identified term and the Japanese sentence transposition index 143e, and translates the Japanese sentence vector and the , with vectors of common sentences to identify similar Japanese sentence vectors.
  • a Japanese sentence vector similar to a common sentence vector is referred to as a "similar Japanese sentence vector”.
  • a definition table is set that defines the correspondence between each Japanese sentence vector included in the Japanese sentence transposed index 143e and each English sentence vector included in the English sentence transposed index 143f.
  • the translation unit 253 identifies the English sentence vector corresponding to the similar Japanese sentence vector based on the definition table.
  • an English sentence vector similar to a similar Japanese sentence vector is referred to as a "similar English sentence vector”.
  • the translation unit 253 compares the similar English sentence vector and the English sentence transposed index 243f to identify the sentence offset of the similar English sentence vector.
  • the translation unit 253 acquires encoded English sentence information (encoded array) from the English sentence compressed file in the compressed file table 242 based on the specified offset.
  • the translation unit 253 decodes the encoded sentence information based on the encoded sentence information (encoded array) and the dictionary information 244 to generate translation result information.
  • the translation unit 253 causes the display unit 230 to display the information of the translation result. Also, the information of the translation result may be transmitted to the external device that is the transmission source of the analysis query 97 .
  • FIG. 18 is a flow chart showing processing of the learning phase of the information processing apparatus according to the second embodiment.
  • the preprocessing unit 251 of the information processing device 200 executes preprocessing based on the bilingual table 241 to generate the compressed file table 242, the transposed index table 243, and the learning data 95 (step S301).
  • the learning unit 252 of the information processing device 200 executes machine learning of the learning model 96 based on the learning data 95 (step S302).
  • FIG. 19 is a flowchart showing analysis phase processing of the information processing apparatus according to the second embodiment.
  • the translation unit 253 of the information processing device 200 receives the analysis query 97 and stores it in the storage unit 240 (step S401).
  • the translation unit 253 calculates the vector of the analysis query 97 (step S402).
  • the translation unit 253 inputs the vector of the analysis query 97 to the learning model 96 to calculate the vector of the common sentence (step S403).
  • the translation unit 253 compares the vector of the analysis query 97 with each Japanese term vector in the alternative term vector table T1 to identify similar vectors (step S404). Based on the alternative term vector, the translation unit 253 calculates a similar vector and a retranslated sentence vector, and based on the common sentence vector, the Japanese term transposition index 143c, and the Japanese sentence transposition index 143e, the similar Japanese sentence A vector is identified (step S405).
  • the translation unit 253 identifies a similar English sentence vector corresponding to the similar Japanese sentence vector using the common sentence vector and the re-translated sentence vector (step S406).
  • the translation unit 253 identifies the offset based on the similar English sentence vector and the English sentence transposed index 143f, and acquires the code array of the English sentence from the compressed English sentence file (step S407).
  • the translation unit 253 decodes and converts the code array of each sentence (step S408).
  • the translation unit 253 outputs the translation result (step S409).
  • the information processing apparatus 200 inputs the vector of the analysis query 97 to the learned learning model 96 and calculates the vector of the common sentence corresponding to the terms of the analysis query 97 . It also identifies a vector of similar alternative terms based on the vector of analytical queries 97 . As a result, it is possible to calculate a vector of common sentences that are alternative terms that are similar to the terms of the analysis query 97 and that are common between the alternative terms and the terms of the analysis query 97 . By using the calculated common sentence vector, it is possible to extract common sentences of alternative terms similar to the terms of the analysis query 97 and English translations associated with such common sentences.
  • the information processing device also registers the relationship between the common sentence vector and the re-translated sentence vector in the common sentence/re-translated sentence table 98 .
  • a retranslation vector is calculated by comparing and subtracting the vector of each sentence constituting the alternative term and the vector of the common sentence.
  • FIG. 20 is a diagram illustrating an example of a hardware configuration of a computer that implements functions similar to those of the information processing apparatus of the embodiment.
  • the computer 300 has a CPU 301 that executes various arithmetic processes, an input device 302 that receives data input from the user, and a display 303 .
  • the computer 300 also has a communication device 304 and an interface device 305 for exchanging data with an external device or the like via a wired or wireless network.
  • the computer 300 also has a RAM 306 that temporarily stores various information, and a hard disk device 307 . Each device 301 - 307 is then connected to a bus 308 .
  • the hard disk device 307 has a preprocessing program 307a, a learning program 307b, and a translation program 307c.
  • the CPU 301 reads each program 307 a to 307 c and develops them in the RAM 306 .
  • the preprocessing program 307a functions as a preprocessing process 306a.
  • Learning program 307b functions as learning process 306b.
  • the translation program 307c functions as a translation process 306c.
  • the processing of the preprocessing process 306a corresponds to the processing of the preprocessing unit 151 (251).
  • the processing of the learning process 306b corresponds to the processing of the learning unit 152 (252).
  • the processing of the translation process 306b corresponds to the processing of the translation section 153 (253).
  • each program does not necessarily have to be stored in the hard disk device 307 from the beginning.
  • each program is stored in a “portable physical medium” such as a flexible disk (FD), CD-ROM, DVD, magneto-optical disk, IC card, etc. inserted into the computer 300 .
  • the computer 300 may read and execute each of the programs 307a-307c.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

情報処理装置は、翻訳対象の文章に含まれる複数の部分文章の情報及び複数の部分文章の順序と、翻訳対象の文章の翻訳結果となる文章に含まれる複数の部分翻訳文章の情報及び複数の部分翻訳文章の順序との関係を基に学習された翻訳学習モデルを記憶する。情報処理装置は、新たな翻訳対象の第3文章を受け付けると、第3文章に含まれる複数の部分文章の情報を特定する。情報処理装置は、特定した複数の部分文章の情報を順に、翻訳学習モデルに入力することで、特定した複数の部分文章の情報に対応する、複数の部分翻訳文章の情報の順序を制御する。

Description

翻訳方法、翻訳プログラム及び情報処理装置
 本発明は、翻訳方法等に関する。
 従来、第1言語の文章を、第1言語とは異なる第2言語の文章に翻訳する機械翻訳技術の開発がなされており、たとえば、NN(Neural Network)を用いた機械翻訳が実用化されつつある。以下の説明では、NNを用いた機械翻訳をニューラル機械翻訳と表記する。
 ニューラル機械翻訳では、第1言語の文章の情報と、第2言語の文章の情報との関係を定義した学習データを用いて機械学習した学習モデルを生成する。ニューラル翻訳では、機械学習した学習モデルに、翻訳対象となる第1言語の文章の情報を入力することで、第2言語の文章の機械翻訳を実行する。
 従来のニューラル機械翻訳は、第1言語と第2言語の各文を構成する主語(S)や述語(V)、目的語(O)の出現順序の違いを、単語の分散ベクトルを用いて、並び替えを解決することで、実用化されている。また、現在では、翻訳精度を向上させるため、第1言語の文章を、文単位(あるいは、項単位)に分割して、文をそれぞれ学習モデルに入力し、文の単位で、第2言語の文章に翻訳する場合がある。たとえば、文章は複数の項を含み、各項はそれぞれ、複数の文を含むものとする。
国際公開第2018/003457号 特表2020-528625号公報 特開2019-3552号公報 特開2019-204362号公報
 しかしながら、上述した従来技術では、言語間で考え方の流れが異なり、理解し易い翻訳文章を生成することが難しいという問題がある。
 たとえば、第1言語の文章を複数の項に分割し、ニューラル機械翻訳によって、第2言語の文章の項をそれぞれ機械翻訳すると、言語間で考え方の流れが異なるために、第2言語の各項の翻訳結果の出現順序が悪く、理解し難い翻訳文章となる場合がある。
 1つの側面では、本発明は、理解し易い翻訳文章を生成することができる翻訳方法、翻訳プログラム及び情報処理装置を提供することを目的とする。
 第1の案では、コンピュータに次の処理を実行させる。コンピュータは、翻訳対象の文章に含まれる複数の部分文章の情報及び複数の部分文章の順序と、翻訳対象の文章の翻訳結果となる文章に含まれる複数の部分翻訳文章の情報及び複数の部分翻訳文章の順序との関係を基に学習された翻訳学習モデルを記憶する。コンピュータは、新たな翻訳対象の第3文章を受け付けると、第3文章に含まれる複数の部分文章の情報を特定する。コンピュータは、特定した複数の部分文章の情報を順に、翻訳学習モデルに入力することで、特定した複数の部分文章の情報に対応する、複数の部分翻訳文章の情報の順序を制御する。
 理解し易い翻訳文章を生成することができる。
図1は、本実施例1の情報処理装置の学習フェーズの処理を説明するための図である。 図2は、目的文章の構成の一例を説明するための図である。 図3は、日本語の文章と英語の文章との関係を示す図である。 図4は、本実施例1の情報処理装置の分析フェーズの処理を説明するための図である。 図5は、本実施例1に係る情報処理装置の構成を示す機能ブロック図である。 図6は、対訳テーブルのデータ構造の一例を示す図である。 図7は、圧縮ファイルテーブルのデータ構造の一例を示す図である。 図8は、転置インデックステーブルの一例を示す図(1)である。 図9は、日本語文章転置インデックスのデータ構造の一例を示す図である。 図10は、辞書情報のデータ構造の一例を示す図である。 図11は、本実施例1に係る情報処理装置の学習フェーズの処理を示すフローチャートである。 図12は、本実施例1に係る情報処理装置の分析フェーズの処理を示すフローチャートである。 図13は、本実施例2の情報処理装置の学習フェーズの処理を説明するための図である。 図14は、本実施例2の情報処理装置の分析フェーズの処理を説明するための図である。 図15は、本実施例2に係る情報処理装置の構成の一例を示す図である。 図16は、転置インデックステーブルの一例を示す図(2)である。 図17は、代替項ベクトルテーブルのデータ構造の一例を示す図である。 図18は、本実施例2に係る情報処理装置の学習フェーズの処理を示すフローチャートである。 図19は、本実施例2に係る情報処理装置の分析フェーズの処理を示すフローチャートである。 図20は、実施例の情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
 以下に、本願の開示する翻訳方法、翻訳プログラム及び情報処理装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
 本実施例1に係る情報処理装置の処理の一例について説明する。本実施例1では、日本語の文章を、英語の文章に翻訳する場合について説明するが、これに限定されるものではなく、ある言語の文章を、他言語の文章に翻訳する場合も適用可能である。
 図1は、本実施例1の情報処理装置の学習フェーズの処理を説明するための図である。学習フェーズにおいて、情報処理装置は、第1学習データ65aを用いて、第1学習モデル70aの機械学習を実行する。また、情報処理装置は、第2学習データ65bを用いて、第2学習モデル70bの機械学習を実行する。第1学習モデル70aおよび第2学習モデル70bは、CNN(Convolutional Neural Network)やRNN(Recurrent Neural Network)、オートエンコーダ(Autoencoder)等に対応する。
 第1学習データ65aについて説明する。第1学習データ65aは、目的文章のベクトルと、日本語項のベクトルとの関係を定義する。目的文章のベクトルが入力データに対応し、日本語項のベクトルが正解ラベルに対応する。日本語及び英語等の各言語の文章には、複数の項が含まれ、各項には、複数の文が含まれ、各文には、複数の単語が含まれる。
 図2は、目的文章の構成の一例を説明するための図である。図2に示すように、目的文章20には、項21,22,23,24が含まれる。項21には、文21a,21bが含まれる。項22には、文22a,22bが含まれる。項23には、文23a,23bが含まれる。項24には、文24a,24bが含まれる。図示を省略するが、各文21a,21b,22a,22b,23a,23b,24a,24bには、複数の単語が含まれる。
 たとえば、目的文章が、「理由1」、「理由2」、「理由3」、「結論」に従って記載されているとすれば、項21,22,23,24は、それぞれ、「理由1」、「理由2」、「理由3」、「結論」に対応する内容の項となる。
 情報処理装置は、目的文章20に含まれる各単語にベクトルを割り当て、文に含まれる単語のベクトルを積算することで、文のベクトルを算出する。情報処理装置は、項に含まれる文のベクトルを積算することで、項のベクトルを算出する。情報処理装置は、目的文章20に含まれる項のベクトルを積算することで、目的文章20のベクトルを算出する。
 同一の項に含まれる複数の文のベクトルは緩やかに推移するが、異なる項同士のベクトルは乖離する場合が多い。これは、各項で記載された内容が異なるためである。
 図1に示した第1学習データ65aの目的文章のベクトルは、目的文章20のベクトルに相当し、日本語項のベクトルは、それぞれ、項21,22,23,24のベクトルに相当する。また、その他の目的文章について、目的文章のベクトルと、日本語項(複数の項)のベクトルとの関係が、第1学習データ65aに登録される。
 情報処理装置は、目的文章のベクトルを第1学習モデル70aに入力した際の出力が、各日本語項のベクトルに近づくように、誤差逆伝播による学習を実行する。情報処理装置は、第1学習データ65aに含まれる目的文章のベクトルと、複数の日本語項のベクトルとの関係を基にして、上記処理を繰り返し実行することで、第1学習モデル70aのパラメータを調整する(機械学習を実行する)。
 続いて、第2学習データ65bについて説明する。第2学習データ65bは、日本語項(複数の項)のベクトルと、英語項(複数の項)のベクトルとの関係を定義する。日本語項(複数の日本語項)のベクトルが入力データに対応し、英語項(複数の英語項)のベクトルが正解ラベルに対応する。
 たとえば、日本語の論文(文章に相当)には、翻訳された英語の論文が存在する場合が多いが、対訳関係にある日本語の論文と英語の論文とを比較すると、項の順番が入れ替わる場合がある。
 図3は、日本語の文章と英語の文章との関係を示す図である。たとえば、日本語の文章30には、項30a,30b,30cが含まれる。英語の文章35には、項35a,35b,35cが含まれる。項30aは、「まず、」等の単語から開始され、「理由1」に相当する内容が記載される。項30bは、「最後に、」等の単語から開始され、「理由n」に相当する内容が記載される。項30cは、「結論」に相当する内容が記載される。
 英語の文章35は、日本語の文章30を基に翻訳された文章であるが、項の順番が変更されている。たとえば、英語の文章35には、項35a,35b,35cが含まれる。項35aは、「Generally」等の単語から開始され、「結論」に相当する内容が記載される。項35bは、「Because」等の単語から開始され、「理由1」に相当する内容が記載される。項35cは、「Finally」等の単語から開始され、「理由n」に相当する内容が記載される。
 すなわち、項30aと、項35bとが対応し、項30bと、項35cとが対応し、項30cと、項35aとが対応することを意味し、日本語の文章30と、英語の文章35では、項の順番が入れ替わっている。図1に示した第2学習データ65bでは、項30a(理由1)のベクトル、項30b(理由n)のベクトル、項30c(結論)のベクトルを順番に入力した場合(入力データを入力した場合)に、項35a(結論)のベクトル、項35b(理由1)のベクトル、項30c(理由n)のベクトルを順番に出力されることが、正解ラベルとして設定される。
 情報処理装置は、各日本語項のベクトルを第2学習モデル70bに先頭から順に入力した際の出力が、正解ラベルに設定された各英語項のベクトルの順に出力されるように、誤差逆伝播による学習を実行する。情報処理装置は、第1学習データ65aに含まれる目的文章のベクトルと、複数の日本語項のベクトルとの関係を基にして、上記処理を繰り返し実行することで、第1学習モデル70aのパラメータを調整する(機械学習を実行する)。
 図4は、本実施例1の情報処理装置の分析フェーズの処理を説明するための図である。図4に示すように、情報処理装置は、分析クエリ80を取得する。分析クエリ80は、翻訳対象となる日本語の文章が含まれる。情報処理装置は、分析クエリ80をベクトル「Vob80」に変換する。情報処理装置が文章のベクトルを算出する処理は、図2で説明したように、単語のベクトルを積算して文のベクトルを算出し、文のベクトルを積算して項のベクトルを算出し、項のベクトルを積算して文章のベクトルを算出する。
 情報処理装置は、分析クエリ80をベクトル「Vob80」を第1学習モデル70aに入力することで、分析クエリ80に含まれる目的文章の各項のベクトル「Vsb80-r1」、「Vsb80-r2」、・・・、「Vsb80-rn」、「Vsb80-con」を特定する。
 たとえば、ベクトル「Vsb80-r1」に対応する項は、日本語文章の理由1に相当する項のベクトルに相当する。ベクトル「Vsb80-rn」に対応する項は、日本語文章の理由nに相当する項のベクトルに相当する。ベクトル「Vsb80-con」に対応する項は、日本語文章の結論に相当する項のベクトルに相当する。
 情報処理装置は、第1学習モデル70aを用いて特定した各項のベクトルを、第2学習モデル70bに順に、入力することで、英語文章の各項のベクトル「Vsb90-con」、「Vsb90-r1」、・・・、「Vsb90-rn」を順に特定する。
 たとえば、ベクトル「Vsb90-con」に対応する項は、英語文章の結論に相当する項のベクトルに相当する。ベクトル「Vsb90-r1」に対応する項は、英語文章の理由1に相当する項のベクトルに相当する。ベクトル「Vsb90-rn」に対応する項は、英語文章の理由nに相当する項のベクトルに相当する。
 情報処理装置は、「Vsb90-con」、「Vsb90-r1」、・・・、「Vsb90-rn」に対応する英語文章の項を、対訳テーブル141から抽出し、翻訳文として出力する。
 上記のように、本実施例1に係る情報処理装置は、事前に第1学習モデル70aおよび第2学習モデル70bを学習しておく。情報処理装置は、分析クエリ80を受信すると、分析クエリ80のベクトルを、第1学習モデル70aに入力することで、日本語文章の複数の項に対応するベクトルを算出する。情報処理装置は、日本語文章の複数の項に対応するベクトルを順に、第2学習モデル70bに入力することで、日本語文章の項に対応する英語文章の項のベクトルであって、項のベクトルの出力順が制御された複数のベクトルを算出する。情報処理装置は、算出したベクトルに対応する英語文章の項を、対訳テーブル141から取得し、翻訳結果として出力する。このように、日本語文章の項の順序を、英語固有の英語文章の項の順序に調整した後に、翻訳内容自体は、対訳テーブル141に含まれる項を流用することで、理解し易い翻訳文章を生成するができる。
 次に、本実施例1に係る情報処理装置の構成の一例について説明する。図5は、本実施例1に係る情報処理装置の構成を示す機能ブロック図である。図5に示すように、この情報処理装置100は、通信部110、入力部120、表示部130、記憶部140、制御部150を有する。
 通信部110は、有線又は無線で外部装置等に接続され、外部装置等との間で情報の送受信を行う。たとえば、通信部110は、NIC(Network Interface Card)等によって実現される。通信部110は、図示しないネットワークに接続されていてもよい。
 入力部120は、各種の情報を、情報処理装置100に入力する入力装置である。入力部120は、キーボードやマウス、タッチパネル等に対応する。たとえば、ユーザは、入力部120を操作して、分析クエリ等を入力してもよい。
 表示部130は、制御部150から出力される情報を表示する表示装置である。表示部130は、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ、タッチパネル等に対応する。たとえば、分析クエリに対応する翻訳結果が、表示部130に表示される。
 記憶部140は、対訳テーブル141、圧縮ファイルテーブル142、転置インデックステーブル143、辞書情報144を有する。また、記憶部140は、第1学習データ65a、第2学習データ65b、第1学習モデル70a、第2学習モデル70b、分析クエリ80を有する。記憶部140は、たとえば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
 対訳テーブル141は、日本語文章と、この日本語の翻訳結果となる英語文章との組を複数保持するテーブルである。図6は、対訳テーブルのデータ構造の一例を示す図である。図6に示すように、対訳テーブル141は、項番、日本語文章、英語文章を有する。項番は、対訳テーブル141のレコードの項番である。日本語文章は、日本語のテキストデータであり、複数の項を有する。英語文章は、英語のテキストデータであり、複数の項を有する。
 圧縮ファイルテーブル142は、日本語文章の圧縮ファイルと、英語文章の圧縮ファイルとを有する。図7は、圧縮ファイルテーブルのデータ構造の一例を示す図である。図7に示すように、圧縮ファイルテーブル142は、日本語文章圧縮ファイル142aと、英語文章圧縮ファイル142bとを有する。日本語文章圧縮ファイル142aは、複数の日本語文章で構成され、各日本語文章に含まれる各単語を符号にそれぞれ変換したファイルである。英語文章圧縮ファイル142bは、複数の英語文章で構成され、各英語文章に含まれる各英単語を符号にそれぞれ変換したファイルである。
 転置インデックステーブル143は、日本語文章に関する転置インデックスと、英語文章に関する転置インデックスを有する。図8は、転置インデックステーブルの一例を示す図(1)である。図8に示すように、この転置インデックステーブル143は、日本語文章転置インデックス143a、英語文章転置インデックス143b、日本語項転置インデックス143c、英語項転置インデックス143d、日本語文転置インデックス143e、英語文転置インデックス143f、日本語単語転置インデックス143g、英語単語転置インデックス143hを有する。
 日本語文章転置インデックス143aは、日本語の文章のベクトル(以下、日本語文章ベクトル)と、日本語文章ベクトルに対応する文章であって、符号化された文章の位置を示すオフセットとを対応付ける。符号化された日本語文章は、日本語文章圧縮ファイル142aに登録されている。符号化された文章は、符号化された複数の単語を有し、符号化された文章の先頭の単語のオフセットが、符号化された文章の位置となる。オフセットは、日本語文章圧縮ファイル142aの先頭からの位置に対応する。日本語文章圧縮ファイル142aの先頭の単語のオフセットを「0」とする。
 図9は、日本語文章転置インデックスのデータ構造の一例を示す図(である。図9に示すように、日本語文章転置インデックス143aの横軸は、オフセットに対応する軸である。日本語文章転置インデックス143aの横軸は、日本語文章ベクトルに対応する軸である。日本語文章転置インデックス143aは、「0」または「1」のビットマップで示され、初期状態では全てのビットマップが「0」に設定される。
 たとえば、日本語文章ベクトル「Vob1」の行と、オフセット「7」の列とが交差する部分に「1」が設定されている。このため、日本語文章ベクトル「Vob1」の文章(符号化された文章)の先頭の単語の位置が、日本語文章圧縮ファイル142aの先頭から8番目の位置に存在していることが示される。
 英語文章転置インデックス143bは、英語の文章のベクトル(以下、英語文章ベクトル)と、英語文章ベクトルに対応する文章であって、符号化された文章の位置を示すオフセットとを対応付ける。符号化された英語文章は、英語文章圧縮ファイル142bに登録されている。符号化された文章は、符号化された複数の単語を有し、符号化された文章の先頭の単語のオフセットが、符号化された文章の位置となる。オフセットは、英語文章圧縮ファイル142bの先頭からの位置に対応する。英語文章圧縮ファイル142bの先頭の単語のオフセットを「0」とする。
 英語文章転置インデックス143bは、オフセットに対応する横軸と、英語文章ベクトルに対応する縦軸とを有する。英語文章転置インデックス143bの図示を省略する。
 日本語項転置インデックス143cは、日本語の文章に含まれる項のベクトル(以下、日本語項ベクトル)と、日本語項ベクトルに対応する項であって、符号化された項の位置を示すオフセットとを対応付ける。符号化された日本語文章は、日本語文章圧縮ファイル142aに登録されている。符号化された項は、符号化された複数の単語を有し、符号化された項の先頭の単語のオフセットが、符号化された項の位置となる。オフセットは、日本語文章圧縮ファイル142aの先頭からの位置に対応する。
 日本語項転置インデックス143cは、オフセットに対応する横軸と、日本語項ベクトルに対応する縦軸とを有する。日本語項転置インデックス143cの図示を省略する。
 英語項転置インデックス143dは、英語の項のベクトル(以下、英語項ベクトル)と、英語項ベクトルに対応する項であって、符号化された項の位置を示すオフセットとを対応付ける。符号化された英語項は、英語文章圧縮ファイル142bに登録されている。符号化された項は、符号化された複数の単語を有し、符号化された項の先頭の単語のオフセットが、符号化された項の位置となる。オフセットは、英語文章圧縮ファイル142bの先頭からの位置に対応する。
 英語項転置インデックス143dは、オフセットに対応する横軸と、英語項ベクトルに対応する縦軸とを有する。英語項転置インデックス143dの図示を省略する。
 日本語文転置インデックス143eは、日本語の文章に含まれる文のベクトル(以下、日本語文ベクトル)と、日本語文ベクトルに対応する文であって、符号化された文の位置を示すオフセットとを対応付ける。符号化された日本語文章は、日本語文章圧縮ファイル142aに登録されている。符号化された日本語の文は、符号化された複数の単語を有し、符号化された文の先頭の単語のオフセットが、符号化された文の位置となる。オフセットは、日本語文章圧縮ファイル142aの先頭からの位置に対応する。
 日本語文転置インデックス143eは、オフセットに対応する横軸と、日本語文ベクトルに対応する縦軸とを有する。日本語文転置インデックス143eの図示を省略する。
 英語文転置インデックス143fは、英語の文のベクトル(以下、英語文ベクトル)と、英語文ベクトルに対応する文であって、符号化された文の位置を示すオフセットとを対応付ける。符号化された英語の文は、英語文章圧縮ファイル142bに登録されている。符号化された文は、符号化された複数の単語を有し、符号化された文の先頭の単語のオフセットが、符号化された文の位置となる。オフセットは、英語文章圧縮ファイル142bの先頭からの位置に対応する。
 英語文転置インデックス143fは、オフセットに対応する横軸と、英語文ベクトルに対応する縦軸とを有する。英語文転置インデックス143fの図示を省略する。
 日本語単語転置インデックス143gは、日本語の文章に含まれる単語のベクトル(以下、日本語単語ベクトル)と、日本語単語ベクトルに対応する文であって、符号化された単語の位置を示すオフセットとを対応付ける。符号化された日本語文章は、日本語文章圧縮ファイル142aに登録されている。オフセットは、日本語文章圧縮ファイル142aの先頭からの位置に対応する。
 日本語単語転置インデックス143gは、オフセットに対応する横軸と、日本語単語ベクトルに対応する縦軸とを有する。日本語単語転置インデックス143gの図示を省略する。
 英語単語転置インデックス143hは、英語の単語のベクトル(以下、英語単語ベクトル)と、英語単語ベクトルに対応する文であって、符号化された単語の位置を示すオフセットとを対応付ける。符号化された英語の単語は、英語文章圧縮ファイル142bに登録されている。オフセットは、英語文章圧縮ファイル142bの先頭からの位置に対応する。
 英語単語転置インデックス143hは、オフセットに対応する横軸と、英語単語ベクトルに対応する縦軸とを有する。英語単語転置インデックス143hの図示を省略する。
 辞書情報144は、日本語の単語に対応する圧縮符号を定義する辞書情報である。図10は、辞書情報のデータ構造の一例を示す図である。図10に示すように、辞書情報144は、単語(日本語単語または英単語)と、圧縮符号と、ベクトルとを対応付ける。圧縮符号に対応するベクトルは、事前にポアンカレエンベッディング等によって、割り当てられているものとする。なお、圧縮符号のベクトルは、他の従来技術を基にして特定されてもよい。
 第1学習データ65aは、図1で説明した第1学習データ65aに対応する。第1学習データ65aは、目的文章のベクトルと、日本語項のベクトルとの関係を定義する。目的文章のベクトルが入力データに対応し、日本語項のベクトルが正解ラベルに対応する。
 第2学習データ65bは、図1で説明した第2学習データ65bに対応する。第2学習データ65bは、日本語項(複数の項)のベクトルと、英語項(複数の項)のベクトルとの関係を定義する。日本語項(複数の日本語項)のベクトルが入力データに対応し、英語項(複数の英語項)のベクトルが正解ラベルに対応する。
 第1学習モデル70aは、第1学習データ65aを基にして機械学習される学習モデルである。
 第2学習モデル70bは、第2学習データ65bを基にして機械学習される学習モデルである。
 分析クエリ80は、外部より指定されるクエリである。本実施例1では、分析クエリ80には、翻訳対象となる日本語文章が設定される。
 図5の説明に戻る。制御部150は、前処理部151、学習部152、翻訳部153を有する。制御部150は、たとえば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)により実現される。また、制御部150は、例えばASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実行されてもよい。
 前処理部151は、対訳テーブル141と、辞書情報144とを基にして、圧縮ファイルテーブル142を生成する過程において、転置インデックステーブル143、第1学習データ65a、第2学習データ65bを生成する。以下において、前処理部151の処理の一例について説明する。
 前処理部151は、対訳テーブル141を参照し、未選択の項番のレコードから、日本語文章のテキストデータと、英語文章のテキストデータとの組を取得する。
 前処理部151は、日本語文章のテキストデータに対して、形態素解析を実行することで、複数の単語、句点、改行の等を特定し、テキストデータに含まれる複数の項、項に含まれる文を特定する。たとえば、前処理部151は、日本語文章のテキストデータにおいて、改行から次の改行までの単語の集まりを、日本語の項として特定する。前処理部151は、句点から次の句点までの単語の集まりを、日本語の文として特定する。
 また、前処理部151は、所定の接続詞を更に利用して、項の開始位置を特定してもよい。たとえば、「まず、」、「最後に」、「つまり」のような接続詞あるいは接続詞に相当する文字列を、日本語の項の開始位置として特定する。前処理部151は、「generally」、「because」、「finally」のような接続詞あるいは接続詞に相当する文字列を、英語の項の開始位置として特定する。
 前処理部151は、日本語文章のテキストデータの単語と、辞書情報144とを基にして、単語の圧縮符号および単語に割り当てられたベクトルを特定する。前処理部151は、日本語文章のテキストデータの単語のベクトルを基にして、各文の日本語文ベクトル、各項の日本語項ベクトル、テキストデータ(文章)の日本語文章ベクトルを算出する。また、前処理部151は、日本語文章のテキストデータの単語を圧縮符号に変換し、日本語文章圧縮ファイル142aに登録する。
 前処理部151は、日本語文章ベクトルと、日本語文章圧縮ファイル142a上の日本語文章のオフセットとの関係を、日本語文章転置インデックス143aに設定する。前処理部151は、日本語項ベクトルと、日本語文章圧縮ファイル142a上の各項のオフセットとの関係を、日本語項転置インデックス143cに設定する。前処理部151は、日本語文ベクトルと、日本語文章圧縮ファイル142a上の各文のオフセットとの関係を、日本語文転置インデックス143eに設定する。前処理部151は、日本語単語ベクトルと、日本語文章圧縮ファイル142a上の各文のオフセットとの関係を、日本語単語転置インデックス143gに設定する。
 前処理部151は、日本語文章のテキストデータから特定した、日本語文章ベクトルと、複数の日本語項ベクトルとの関係を、第1学習データ65aに登録する。
 前処理部151は、英語文章のテキストデータに対して、形態素解析を実行することで、複数の単語、句点(ピリオド)、改行の等を特定し、テキストデータに含まれる複数の項、項に含まれる文を特定する。たとえば、前処理部151は、英語文章のテキストデータにおいて、改行から次の改行までの単語の集まりを、英語の項として特定する。前処理部151は、句点から次の句点までの単語の集まりを、英語の文として特定する。
 前処理部151は、英語文章のテキストデータの単語と、辞書情報144とを基にして、単語の圧縮符号および単語に割り当てられたベクトルを特定する。前処理部151は、英語文章のテキストデータの単語のベクトルを基にして、各文の英語文ベクトル、各項の英語項ベクトル、テキストデータ(文章)の英語文章ベクトルを算出する。また、前処理部151は、英語文章のテキストデータの単語を圧縮符号に変換し、英語文章圧縮ファイル142bに登録する。
 前処理部151は、英語文章ベクトルと、英語文章圧縮ファイル142b上の英語文章のオフセットとの関係を、英語文章転置インデックス143bに設定する。前処理部151は、英語項ベクトルと、英語文章圧縮ファイル142b上の各項のオフセットとの関係を、英語項転置インデックス143dに設定する。前処理部151は、英語文ベクトルと、英語文章圧縮ファイル142b上の各文のオフセットとの関係を、英語文転置インデックス143fに設定する。前処理部151は、英語単語ベクトルと、英語文章圧縮ファイル142b上の各文のオフセットとの関係を、英語単語転置インデックス143hに設定する。
 前処理部151は、日本語文章のテキストデータから特定した各日本語項ベクトルを先頭からの順序で、第2学習データ65bに登録する。前処理部151は、英語文章のテキストデータから特定した各英語項ベクトルを先頭からの順序で、第2学習データ65bに登録する。
 前処理部151は、対訳テーブル141に含まれる項番のレコードの日本語文章のテキストデータと、英語文章のテキストデータとを基にして、上記処理を繰り返し実行することで、第1学習データ65a、第2学習データ65bを生成する。本実施例1では、前処理部151が、第1学習データ65a、第2学習データ65bを生成する場合について説明したが、外部装置等から、第1学習データ65a、第2学習データ65bを受信して、利用してもよい。
 学習部152は、第1学習データ65aを基にして、第1学習モデル70aの機械学習を実行する。学習部152は、第2学習データ65bを基にして、第2学習モデル70bの機械学習を実行する。
 学習部152は、図1で説明したように、目的文章のベクトル(日本語文章ベクトル)を第1学習モデル70aに入力した際の出力が、各日本語項のベクトル(日本語項ベクトル)に近づくように、誤差逆伝播による学習を実行する。学習部152は、第1学習データ65aに含まれる目的文章のベクトルと、複数の日本語項のベクトルとの関係を基にして、上記処理を繰り返し実行することで、第1学習モデル70aのパラメータを調整する(機械学習を実行する)。
 学習部152は、図1で説明したように、各日本語項のベクトル(日本語項ベクトル)を第2学習モデル70bに先頭から順に入力した際の出力が、正解ラベルに設定された各英語項のベクトル(英語項ベクトル)の順に出力されるように、誤差逆伝播による学習を実行する。学習部152は、第1学習データ65aに含まれる目的文章のベクトルと、複数の日本語項のベクトルとの関係を基にして、上記処理を繰り返し実行することで、第1学習モデル70aのパラメータを調整する(機械学習を実行する)。
 翻訳部153は、分析クエリ80を受信した場合に、分析クエリ80に含まれる日本語文章の翻訳を実行する。翻訳部153は、入力部120または通信部110から、分析クエリ80を受け付け、記憶部140に記憶する。以下において、翻訳部153の処理の一例について説明する。
 翻訳部153は、分析クエリ80に含まれる日本語文章のテキストデータに対して形態素解析を実行し、テキストデータを複数の単語に分割する。翻訳部153は、テキストデータに含まれる単語と、辞書情報144とを基にして、単語のベクトルを特定する。翻訳部153は、各単語のベクトルを積算することで、各文のベクトルを算出する。翻訳部153は、各文のベクトルを積算することで、各項のベクトルを算出する。翻訳部153は、各項のベクトルを積算することで、分析クエリ80のベクトルを算出する。
 翻訳部153は、分析クエリ80のベクトルを、第1学習モデル70aに入力することで、分析クエリ80の日本語文章のテキストに含まれる複数の日本語項ベクトルを算出する。図4で説明した例では、翻訳部153は、分析クエリ80をベクトル「Vob80」を第1学習モデル70aに入力することで、分析クエリ80に含まれる目的文章の各日本語項ベクトル「Vsb80-1」、「Vsb80-2」、・・・、「Vsb80-n」を特定する。
 翻訳部153は、第1学習モデル70aを基に算出した複数の日本語項ベクトルを第2学習モデル70bに順に入力することで、英語項ベクトルを順に算出する。図4で説明した例では、翻訳部153は、各日本語項ベクトル「Vsb80-1」、「Vsb80-2」、・・・、「Vsb80-n」を順に、第2学習モデル70bに入力することで、英語文章の各英語項ベクトル「Vsb90-1」、「Vsb90-2」、・・・、「Vsb90-n」を順に特定する。
 翻訳部153は、第2学習モデル70bを基に特定した各英語項ベクトルと、英語項転置インデックス143dとを基にして、各英語項ベクトルに対応する符号化された項のオフセットをそれぞれ特定する。翻訳部153は、特定した各項のオフセットを基にして、英語文章圧縮ファイル142bから、符号化された項の情報(符号化配列)を取得する。
 翻訳部153は、符号化された項の情報(符号化配列)と、辞書情報144とを基にして、符号化された項の情報を復号する。たとえば、翻訳部153は、各英語項ベクトル「Vsb90-1」の項の復号結果、「Vsb90-2」の項の復号結果、・・・、「Vsb90-n」の項の復号結果の順に並べることで、翻訳結果の情報を生成する。翻訳部153は、翻訳結果の情報を、表示部130に表示させる。また、翻訳結果の情報を、分析クエリ80の送信元となる外部装置に送信してもよい。
 次に、本実施例1に係る情報処理装置100の処理手順の一例について説明する。図11は、本実施例1に係る情報処理装置の学習フェーズの処理を示すフローチャートである。図11に示すように、情報処理装置100の前処理部151は、対訳テーブル141を基にして、前処理を実行し、圧縮ファイルテーブル142、転置インデックステーブル143、第1学習データ65a、第2学習データ65bを生成する(ステップS101)。
 情報処理装置100の学習部152は、第1学習データ65aを基にして、第1学習モデル70aの機械学習を実行する(ステップS102)。
 情報処理装置100の学習部152は、第2学習データ65bを基にして、第2学習モデル70bの機械学習を実行する(ステップS103)。
 図12は、本実施例1に係る情報処理装置の分析フェーズの処理を示すフローチャートである。図12に示すように、情報処理装置100の翻訳部153は、分析クエリ80を受け付け、記憶部140に記憶する(ステップS201)。
 翻訳部153は、分析クエリ80のベクトルを算出する(ステップS202)。翻訳部153は、分析クエリ80のベクトルを第1学習モデル70aに入力することで、複数の日本語項ベクトルを算出する(ステップS203)。
 翻訳部153は、複数の日本語項ベクトルを順に、第2学習モデル70bに入力し、複数の英語項ベクトルおよびその順序を取得する(ステップS204)。翻訳部153は、英語項ベクトルと英語項転置インデックス143dとを基にして、項のオフセットを特定する(ステップS205)。
 翻訳部153は、項のオフセットを基にして、英語文章圧縮ファイル142bから、各項の符号配列を取得する(ステップS206)。翻訳部153は、各項の符号配列と、辞書情報144とを基にして、各項の符号配列を復号する(ステップS207)。
 翻訳部153は、復号結果を順序に従って並べることで、翻訳結果を生成する(ステップS108)。翻訳部153は、翻訳結果を出力する(ステップS209)。
 次に、本実施例1に係る情報処理装置100の効果について説明する。情報処理装置100は、事前に第1学習モデル70aおよび第2学習モデル70bを学習しておく。情報処理装置100は、分析クエリ80を受信すると、分析クエリ80のベクトルを、第1学習モデル70aに入力することで、日本語文章の複数の項に対応するベクトルを算出する。情報処理装置100は、日本語文章の複数の項に対応するベクトルを順に、第2学習モデル70bに入力することで、日本語文章の項に対応する英語文章の項のベクトルであって、項のベクトルの出力順が制御された複数のベクトルを算出する。情報処理装置100は、算出したベクトルに対応する英語文章の項を、記憶部140から取得し、翻訳結果として出力する。このように、日本語文章の項の順序を、英語固有の英語文章の項の順序に調整した後に、翻訳内容自体は、対訳テーブル141に含まれる項を流用することで、理解し易い翻訳文章を生成するができる。
 ところで、本実施例1に係る情報処理装置100は、第1学習モデル70aに、目的文章のベクトル(日本語文章ベクトル)と、日本語項のベクトル(日本語項ベクトル)との関係を設定して、機械学習を行っていたが、これに限定されるものではない。たとえば、情報処理装置100の文や項のベクトルのクラスタリングを行って、類似する日本語文章ベクトルおよび日本語文ベクトルの組をまとめてもよい。
 また、機械学習をもとに、目的文章を複数の項に分解する機能は、機械翻訳に加え、新聞の社説や雑誌の記事、論文などを、「起」「承」「転」「結」などの複数の項の分解などに、適用拡大することができる。
 図1において、日本語文章ベクトルVob1,Vob2が同一のクラスタに属し、日本語項ベクトル(Vsb1-1、Vsb1-2、・・・Vsb1-n)と(Vsb2-1、Vsb2-2、・・・Vsb2-n)がそれぞれ同一のクラスタに属するものとする。この場合、前処理部151は、第1学習データ65aの1行目のレコードと2行目のレコードとをまとめて1つのレコードとしてもよい。たとえば、一方のレコードを削除してもよいし、同一のクラスタに属するベクトルの平均ベクトルを新たなベクトルとしてもよい。かかる方法で、10万種以下にクラスタリングを行うことで、第1学習モデル70aを機械学習する場合の演算量を削減することが可能となる。たとえば、前処理部151、学習部152、翻訳部153は、同一のクラスタに属する複数のベクトルを、前記同一のクラスタに応じた一つのベクトル(平均ベクトル等)として利用してもよい。
 また、現状のGPUでも演算爆発を回避し、機械学習することが可能となる。前処理部151は、第2学習データ65bの各レコードについても同様に処理を行うことで、第2学習モデル70bを機械学習する場合の演算量を削減することができる。なお、クラスタリングの対象はテキストの文字列だけでなく、ソースプログラムや有機化合物の化学構造式、ゲノムの塩基配列、画像のアウトラインPostScriptなどの文字列に適用拡大することができる。
 次に、本実施例2に係る情報処理装置の処理の一例について説明する。図13は、本実施例2の情報処理装置の学習フェーズの処理を説明するための図である。学習フェーズにおいて、情報処理装置は、学習データ95を用いて、学習モデル96の機械学習を実行する。学習モデル96は、CNNやRNN等に対応する。
 学習データ95について説明する。学習データ95は、項のベクトルと、共通文のベクトルとを関係を定義する。項のベクトルは、目的文章に含まれる項のベクトルを示す。項に関する説明は、実施例1で説明した項の説明と同様である。共通文は、複数の項に含まれる複数の文のうち、共通する文である。共通文のベクトルは、かかる共通文のベクトルである。
 情報処理装置は、項のベクトルを学習モデル96に入力した際の出力が、共通文のベクトルに近づくように、誤差逆伝播による学習を実行する。情報処理装置は、学習データ95に含まれる項のベクトルと、共通文のベクトルとの関係を基にして、上記処理を繰り返し実行することで、学習モデル96のパラメータを調整する(機械学習を実行する)。
 図14は、本実施例2の情報処理装置の分析フェーズの処理を説明するための図である。情報処理装置は、分析クエリ97を取得する。分析クエリ97は、翻訳対象となる日本語の項が含まれる。情報処理装置は、分析クエリ97を受け付けると、辞書情報を用いて、分析クエリ97のベクトル「Vsb97-1」を算出する。情報処理装置は、ベクトル「Vsb97-1」を、学習モデル96に入力することで、共通文のベクトル「Vco-1」を算出する。
 情報処理装置は、分析クエリ97(項)のベクトル「Vsb97-1」と、代替項ベクトルテーブルT1に含まれる複数の代替項のベクトルとを比較する。代替項ベクトルテーブルT1は、代替項のベクトルを保持するテーブルである。
 情報処理装置は、分析クエリ97のベクトル「Vsb97-1」について、類似する代替項のベクトルを特定する。たとえば、分析クエリ97のベクトル「Vsb97-1」と類似する代替項のベクトルを、Vsb1-1とする。そうすると、ベクトルVsb97-1の項と、ベクトルVsb1-1の代替項とで共通する共通文のベクトルが、学習モデル96から出力されるベクトルVco97-1となることがわかる。
 情報処理装置は、分析クエリ97の分析結果として、代替項のベクトル「Vsb1-1」に対応する項のテキストデータに含まれる共通文であって、学習モデル96から出力されるベクトルVco97-1に対応する共通文の情報、および係る共通文の英訳文の情報を出力する。
 上記のように、本実施例2に係る情報処理装置は、学習済みの学習モデル96に分析クエリ97のベクトルを入力し、分析クエリ97の項に対応する共通文のベクトルを算出する。また、分析クエリ97のベクトルを基にして、類似する代替項のベクトルを特定する。これによって、分析クエリ97の項と類似する代替項であって、かかる代替項と分析クエリ97の項とで共通する共通文のベクトルを算出することができる。算出した共通文のベクトルを用いることで、分析クエリ97の項と類似する代替項の共通文や、かかる共通文に関連付けられた英訳文を抽出することができる。
 また、情報処理装置は、共通文のベクトルと再翻訳文のベクトルとの関係を共通文・再翻訳文テーブル98に登録してもよい。代替項を構成する各文のベクトルと共通文のベクトルとを比較し減算することで、再翻訳のベクトルを算出する。上記の共通文のベクトルや、再翻訳文のベクトルを用いることで、機械翻訳の流用や再翻訳、および合成のため、より高精度な再翻訳のベクトルを容易に分析することができる。
 図15は、本実施例2に係る情報処理装置の構成の一例を示す図である。図15に示すように、この情報処理装置200は、通信部210、入力部220、表示部230、記憶部240、制御部250を有する。
 通信部210、入力部220、表示部230に関する説明は、実施例1で説明した通信部110、入力部120、表示部130に関する説明と同様である。
 記憶部240は、対訳テーブル241、圧縮ファイルテーブル242、転置インデックステーブル243、辞書情報244、学習データ95、学習モデル96、分析クエリ97、共通文・再翻訳テーブル98を有する。記憶部240は、たとえば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。
 対訳テーブル241は、日本語文章と、この日本語文章の翻訳結果となる英語文章との組を複数保持するテーブルである。対訳テーブル241に関するその他の説明は、実施例1で説明した対訳テーブル141に関する説明と同様である。
 圧縮ファイルテーブル242は、日本語文章の圧縮ファイルと、英語文章の圧縮ファイルとを有する。圧縮ファイルテーブル242に関するその他の説明は、実施例1で説明した圧縮ファイルテーブル142に関する説明と同様である。
 転置インデックステーブル243は、日本語文章に関する転置インデックスと、英語文章に関する転置インデックスを有する。図16は、転置インデックステーブルの一例を示す図(2)である。図16に示すように、この転置インデックステーブル243は、日本語文章転置インデックス243a、英語文章転置インデックス243b、日本語項転置インデックス243c、英語項転置インデックス243d、日本語文転置インデックス243e、英語文転置インデックス243f、日本語単語転置インデックス243g、英語単語転置インデックス243hを有する。
 転置インデックステーブル243に含まれる日本語文章転置インデックス243a、英語文章転置インデックス243b、日本語項転置インデックス243c、英語項転置インデックス243d、日本語文転置インデックス243e、英語文転置インデックス243f、日本語単語転置インデックス243g、英語単語転置インデックス243hの説明は、実施例1の図8に示した各インデックスの説明と同様である。
 辞書情報244は、日本語の単語に対応する圧縮符号を定義する辞書情報である。辞書情報244に関するその他の説明は、実施例1で説明した辞書情報144に関する説明と同様である。
 代替項ベクトルテーブルT1は、代替可能な項のベクトルを保持するテーブルである。図17は、代替項ベクトルテーブルのデータ構造の一例を示す図である。図17に示すように、代替項ベクトルテーブルT1には、複数の日本語項のベクトル(日本語項ベクトル)が含まれる。
 学習データ95は、図13で説明した学習データ95に対応する。学習データ95は、項のベクトルと、共通文のベクトルとを関係を定義する。項のベクトルは、目的文章に含まれる項のベクトルを示す。項に関する説明は、実施例1で説明した項の説明と同様である。共通文は、複数の項に含まれる複数の文のうち、共通する文である。共通文のベクトルは、かかる共通文のベクトルである。
 学習モデル96は、学習データ95を基にして機械学習される学習モデルである。
 分析クエリ97は、外部より指定されるクエリである。本実施例2では、分析クエリ97には、翻訳対象となる日本語の項が設定される。
 図15の説明に戻る。制御部250は、前処理部251、学習部252、翻訳部253を有する。制御部250は、たとえば、CPUやMPUにより実現される。また、制御部250は、例えばASICやFPGA等の集積回路により実行されてもよい。
 前処理部251は、対訳テーブル241と、辞書情報244とを基にして、圧縮ファイルテーブル242を生成する過程において、転置インデックステーブル243、代替項ベクトルテーブルT1、学習データ95を生成する。以下において、前処理部251の処理の一例について説明する。
 なお、前処理部251が、圧縮ファイルテーブル242、転置インデックステーブル243を生成する処理は、実施例1と同様であるため、説明を省略する。
 前処理部251は、日本語項ベクトルを算出し、日本語項転置インデックス243cを生成する場合に、日本語項ベクトルを、代替項ベクトルテーブルT1に登録する処理を繰り返し実行することで、代替項ベクトルテーブルT1を生成する。なお、前処理部251は、代替項の候補として、事前に指定されている場合には、指定された代替項のベクトルを算出した場合に、かかる代替項のベクトルを、代替項ベクトルテーブルT1に登録してもよい。
 前処理部251が、学習データ95を生成する処理の一例について説明する。前処理部251は、対訳テーブル241に含まれる日本語文章のうち、学習データ95に設定する日本語項と、かかる日本語項に含まれる共通文の指定を受け付けておく。前処理部251は、日本語項ベクトルを算出し、日本語項転置インデックス243cを生成する場合、および、日本語文ベクトルを算出し、日本語文転置インデックス243eを生成する場合に、日本語項のベクトルと、かかる日本語項に含まれる共通文のベクトルとの関係を、学習データ95に登録する処理を繰り返し実行することで、学習データ95を生成する。
 学習部252は、学習データ95を基にして、学習モデル96の機械学習を実行する。学習部252は、図13で説明したように、項のベクトル(日本語項ベクトル)を学習モデル96に入力した際の出力が、共通文のベクトルに近づくように、誤差逆伝播による学習を実行する。学習部252は、学習データ95に含まれる項のベクトルと、共通文のベクトルとの関係を基にして、上記処理を繰り返し実行することで、学習モデル96のパラメータを調整する(機械学習を実行する)。
 翻訳部253は、分析クエリ97を受信した場合に、分析クエリ97に含まれる項の翻訳を実行する。翻訳部253は、入力部220または通信部210から、分析クエリ97を受け付け、記憶部240に記憶する。以下において、翻訳部253の処理の一例について説明する。
 翻訳部253は、分析クエリ97に含まれる日本語の項のテキストデータに対して形態素解析を実行し、テキストデータを複数の単語に分割する。翻訳部253は、テキストデータに含まれる単語と、辞書情報244とを基にして、単語のベクトルを特定する。翻訳部253は、各単語のベクトルを積算することで、各文のベクトルを算出する。翻訳部253は、各文のベクトルを積算することで、項(分析クエリ97)のベクトルを算出する。
 翻訳部253は、分析クエリ97のベクトルを、学習モデル96に入力することで、分析クエリ97に対応する共通文のベクトルを算出する。また、翻訳部253は、分析クエリ97のベクトルと、代替項ベクトルテーブルT1に含まれる各代替項のベクトルとを比較して、分析クエリ97のベクトルに類似する、代替項のベクトルを特定する。以下の説明では、分析クエリ97のベクトルに類似する、代替項のベクトルを「類似ベクトル」と表記する。
 翻訳部253は、類似ベクトルと、日本語項転置インデックス243cとを比較して、類似ベクトルの項のオフセットを特定する。翻訳部253は、特定した項のオフセットと、日本語文転置インデックス143eとを基にして、類似ベクトルの項に含まれる文のオフセットの範囲を絞り込み、絞り込んだオフセットの範囲に含まれる日本語文ベクトルと、共通文のベクトルとを比較して、類似する日本語文ベクトルを特定する。以下の説明では、共通文のベクトルに類似する日本語文ベクトルを「類似日本語文ベクトル」と表記する。
 たとえば、日本語文転置インデックス143eに含まれる各日本語文ベクトルと、英語文転置インデックス143fに含まれる各英語文ベクトルとの対応関係が定義された定義テーブルが設定されているものとする。翻訳部253は、かかる定義テーブルを基にして、類似日本語文ベクトルに対応する英語文ベクトルを特定する。以下の説明では、類似日本語文ベクトルに類似する英語文ベクトルを「類似英語文ベクトル」と表記する。
 翻訳部253は、類似英語文ベクトルと、英語文転置インデックス243fとを比較して、類似英語文ベクトルの文のオフセットを特定する。翻訳部253は、特定したオフセットを基にして、圧縮ファイルテーブル242の英語文章圧縮ファイルから、符号化された英語文の情報(符号化配列)を取得する。
 翻訳部253は、符号化された文の情報(符号化配列)と、辞書情報244とを基にして、符号化された文の情報を復号することで、翻訳結果の情報を生成する。翻訳部253は、翻訳結果の情報を、表示部230に表示させる。また、翻訳結果の情報を、分析クエリ97の送信元となる外部装置に送信してもよい。
 次に、本実施例2に係る情報処理装置200の処理手順の一例について説明する。図18は、本実施例2に係る情報処理装置の学習フェーズの処理を示すフローチャートである。図18に示すように、情報処理装置200の前処理部251は、対訳テーブル241を基にして、前処理を実行し、圧縮ファイルテーブル242、転置インデックステーブル243、学習データ95を生成する(ステップS301)。
 情報処理装置200の学習部252は、学習データ95を基にして、学習モデル96の機械学習を実行する(ステップS302)。
 図19は、本実施例2に係る情報処理装置の分析フェーズの処理を示すフローチャートである。図19に示すように、情報処理装置200の翻訳部253は、分析クエリ97を受け付け、記憶部240に記憶する(ステップS401)。
 翻訳部253は、分析クエリ97のベクトルを算出する(ステップS402)。翻訳部253は、分析クエリ97のベクトルを学習モデル96に入力することで、共通文のベクトルを算出する(ステップS403)。
 翻訳部253は、分析クエリ97のベクトルと、代替項ベクトルテーブルT1の各日本語項ベクトルとを比較して、類似ベクトルを特定する(ステップS404)。翻訳部253は、代替項ベクトルをもとに、類似ベクトルと再翻訳文のベクトルを算出し、共通文のベクトル、日本語項転置インデックス143c、日本語文転置インデックス143eを基にして、類似日本語文ベクトルを特定する(ステップS405)。
 翻訳部253は、共通文のベクトルや再翻訳文のベクトルを用いて、類似日本語文ベクトルに対応する類似英語文ベクトルを特定する(ステップS406)。翻訳部253は、類似英語文ベクトルと、英語文転置インデックス143fとを基にして、オフセットを特定し、英語文章圧縮ファイルから、英語文の符号配列を取得する(ステップS407)。
 翻訳部253は、符号配列と辞書情報244とを基にして、各文の符号配列に対する復号や変換を実行する(ステップS408)。翻訳部253は、翻訳結果を出力する(ステップS409)。
 次に、本実施例2に係る情報処理装置200の効果について説明する。情報処理装置200は、学習済みの学習モデル96に分析クエリ97のベクトルを入力し、分析クエリ97の項に対応する共通文のベクトルを算出する。また、分析クエリ97のベクトルを基にして、類似する代替項のベクトルを特定する。これによって、分析クエリ97の項と類似する代替項であって、かかる代替項と分析クエリ97の項とで共通する共通文のベクトルを算出することができる。算出した共通文のベクトルを用いることで、分析クエリ97の項と類似する代替項の共通文や、かかる共通文に関連付けられた英訳文を抽出することができる。
 また、情報処理装置は、共通文のベクトルと再翻訳文のベクトルとの関係を共通文・再翻訳文テーブル98に登録する。代替項を構成する各文のベクトルと共通文のベクトルとを比較し減算することで、再翻訳のベクトルを算出する。上記の共通文のベクトルや、再翻訳文のベクトルを用いることで、機械翻訳の流用や再翻訳、および合成のため、より高精度な再翻訳のベクトルを容易に分析することができる。
 なお、機械翻訳の流用や再翻訳、および再合成のそれぞれの機能は、複数の項に分解された、新聞の社説や雑誌の記事の編集や、論文の推敲などに、適用拡大することができる。
 次に、上記実施例に示した情報処理装置100(200)と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図20は、実施例の情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
 図20に示すように、コンピュータ300は、各種演算処理を実行するCPU301と、ユーザからのデータの入力を受け付ける入力装置302と、ディスプレイ303とを有する。また、コンピュータ300は、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行う通信装置304と、インタフェース装置305とを有する。また、コンピュータ300は、各種情報を一時記憶するRAM306と、ハードディスク装置307とを有する。そして、各装置301~307は、バス308に接続される。
 ハードディスク装置307は、前処理プログラム307a、学習プログラム307b、翻訳プログラム307cを有する。また、CPU301は、各プログラム307a~307cを読み出してRAM306に展開する。
 前処理プログラム307aは、前処理プロセス306aとして機能する。学習プログラム307bは、学習プロセス306bとして機能する。翻訳プログラム307cは、翻訳プロセス306cとして機能する。
 前処理プロセス306aの処理は、前処理部151(251)の処理に対応する。学習プロセス306bの処理は、学習部152(252)の処理に対応する。翻訳プロセス306bの処理は、翻訳部153(253)の処理に対応する。
 なお、各プログラム307a~307bについては、必ずしも最初からハードディスク装置307に記憶させておかなくても良い。例えば、コンピュータ300に挿入されるフレキシブルディスク(FD)、CD-ROM、DVD、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ300が各プログラム307a~307cを読み出して実行するようにしてもよい。
 100,200  情報処理装置
 110,210  通信部
 120,220  入力部
 130,230  表示部
 140,240  記憶部
 150,250  制御部
 

Claims (18)

  1.  翻訳対象の文章に含まれる複数の部分文章の情報及び前記複数の部分文章の順序と、前記翻訳対象の文章の翻訳結果となる文章に含まれる複数の部分翻訳文章の情報及び前記複数の部分翻訳文章の順序との関係を基に学習された翻訳学習モデルを記憶し、
     新たな翻訳対象の第3文章を受け付けると、前記第3文章に含まれる複数の部分文章の情報を特定し、
     特定した複数の部分文章の情報を順に、前記翻訳学習モデルに入力することで、特定した複数の部分文章の情報に対応する、複数の部分翻訳文章の情報の順序を制御する
     処理をコンピュータが実行することを特徴とする翻訳方法。
  2.  前記特定する処理は、翻訳対象の文章の情報と、複数の部分文章の情報との関係を基に学習された分割学習モデルに、前記新たな翻訳対象の文章の情報を入力することで、前記新たな翻訳対象の文章に含まれる複数の部分文章の情報を特定することを特徴とする請求項1に記載の翻訳方法。
  3.  前記翻訳対象の文章に含まれる接続詞を基にして、前記複数の部分文章の開始位置を特定する処理を更に実行することを特徴とする請求項1に記載の翻訳方法。
  4.  前記部分文章の情報および前記部分翻訳文章の情報はベクトルであり、前記制御する処理は、複数の部分文章のベクトルを順に、前記翻訳学習モデルに入力することで、特定した複数の部分文章のベクトルに対応する、複数の部分翻訳文章のベクトルの順序を制御することを特徴とする請求項1に記載の翻訳方法。
  5.  前記部分文章の情報および前記部分翻訳文章に対応する複数のベクトルをクラスタリングすることで、所定数以下のクラスタに分類し、同一のクラスタに属する複数のベクトルを、前記同一のクラスタに応じた一つのベクトルとして利用する処理を更に実行することを特徴とする請求項4に記載の翻訳方法。
  6.  目的文章を構成する複数の部分文章のベクトルと、翻訳候補となる翻訳部分文章のうち、共通する文ベクトルを示す共通文のベクトルとの関係を定義した学習データを基にして、学習モデルの機械学習を実行し、
     部分文章を受け付けた場合、前記部分文章のベクトルを前記学習モデルに入力することで、前記翻訳部分文章に対応する共通文のベクトルを算出する
     処理を実行させることを特徴とする翻訳方法。
  7.  前記部分文章のベクトルと、翻訳候補となる翻訳部分文章のうち、前記共通文のベクトルとを基にして、前記部分文章と、検索した翻訳部分文章の翻訳文とで異なる部分を示す際翻訳文のベクトルを算出する処理を更に実行することを特徴とする請求項6に記載の翻訳方法。
  8.  翻訳対象の文章に含まれる複数の部分文章の情報及び複数の部分文章の順序と、翻訳対象の文章の翻訳結果となる文章に含まれる複数の部分翻訳文章の情報及び複数の部分翻訳文章の順序との関係を基に学習された翻訳学習モデルを記憶し、
     新たな翻訳対象の第3文章を受け付けると、第3文章を部分文章に分解し部分文章の順序を得て、前記学習モデルに入力することで、第3文章の部分翻訳文章とその順序を得て、第3文章の翻訳文章を出力する
     処理をコンピュータが実行することを特徴とする翻訳方法。
  9.  翻訳対象の文章に含まれる複数の部分文章の情報及び前記複数の部分文章の順序と、前記翻訳対象の文章の翻訳結果となる文章に含まれる複数の部分翻訳文章の情報及び前記複数の部分翻訳文章の順序との関係を基に学習された翻訳学習モデルを記憶し、
     新たな翻訳対象の第3文章を受け付けると、前記第3文章に含まれる複数の部分文章の情報を特定し、
     特定した複数の部分文章の情報を順に、前記翻訳学習モデルに入力することで、特定した複数の部分文章の情報に対応する、複数の部分翻訳文章の情報の順序を制御する
     処理をコンピュータが実行させることを特徴とする翻訳プログラム。
  10.  前記特定する処理は、翻訳対象の文章の情報と、複数の部分文章の情報との関係を基に学習された分割学習モデルに、前記新たな翻訳対象の文章の情報を入力することで、前記新たな翻訳対象の文章に含まれる複数の部分文章の情報を特定することを特徴とする請求項9に記載の翻訳プログラム。
  11.  前記翻訳対象の文章に含まれる接続詞を基にして、前記複数の部分文章の開始位置を特定する処理を更に実行することを特徴とする請求項9に記載の翻訳プログラム。
  12.  前記部分文章の情報および前記部分翻訳文章の情報はベクトルであり、前記制御する処理は、複数の部分文章のベクトルを順に、前記翻訳学習モデルに入力することで、特定した複数の部分文章のベクトルに対応する、複数の部分翻訳文章のベクトルの順序を制御することを特徴とする請求項9に記載の翻訳プログラム。
  13.  前記部分文章の情報および前記部分翻訳文章に対応する複数のベクトルをクラスタリングすることで、所定数以下のクラスタに分類し、同一のクラスタに属する複数のベクトルを、前記同一のクラスタに応じた一つのベクトルとして利用する処理を更に実行することを特徴とする請求項12に記載の翻訳プログラム。
  14.  翻訳対象の文章に含まれる複数の部分文章の情報及び前記複数の部分文章の順序と、前記翻訳対象の文章の翻訳結果となる文章に含まれる複数の部分翻訳文章の情報及び前記複数の部分翻訳文章の順序との関係を基に学習された翻訳学習モデルを記憶する記憶部と、
     新たな翻訳対象の第3文章を受け付けると、前記第3文章に含まれる複数の部分文章の情報を特定し、特定した複数の部分文章の情報を順に、前記翻訳学習モデルに入力することで、特定した複数の部分文章の情報に対応する、複数の部分翻訳文章の情報の順序を制御する翻訳部と、
     を有することを特徴とする情報処理装置。
  15.  前記翻訳部は、翻訳対象の文章の情報と、複数の部分文章の情報との関係を基に学習された分割学習モデルに、前記新たな翻訳対象の文章の情報を入力することで、前記新たな翻訳対象の文章に含まれる複数の部分文章の情報を特定することを特徴とする請求項14に記載の情報処理装置。
  16.  前記翻訳対象の文章に含まれる接続詞を基にして、前記複数の部分文章の開始位置を特定する前処理部を更に有することを特徴とする請求項14に記載の情報処理装置。
  17.  前記部分文章の情報および前記部分翻訳文章の情報はベクトルであり、前記翻訳部は、複数の部分文章のベクトルを順に、前記翻訳学習モデルに入力することで、特定した複数の部分文章のベクトルに対応する、複数の部分翻訳文章のベクトルの順序を制御することを特徴とする請求項14に記載の情報処理装置。
  18.  前記部分文章の情報および前記部分翻訳文章に対応する複数のベクトルをクラスタリングすることで、所定数以下のクラスタに分類する前処理部を更に有し、前記翻訳部は、同一のクラスタに属する複数のベクトルを、前記同一のクラスタに応じた一つのベクトルとして利用することを特徴とする請求項17に記載の情報処理装置。
PCT/JP2021/023207 2021-06-18 2021-06-18 翻訳方法、翻訳プログラム及び情報処理装置 WO2022264404A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2021/023207 WO2022264404A1 (ja) 2021-06-18 2021-06-18 翻訳方法、翻訳プログラム及び情報処理装置
JP2023528915A JPWO2022264404A1 (ja) 2021-06-18 2021-06-18

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/023207 WO2022264404A1 (ja) 2021-06-18 2021-06-18 翻訳方法、翻訳プログラム及び情報処理装置

Publications (1)

Publication Number Publication Date
WO2022264404A1 true WO2022264404A1 (ja) 2022-12-22

Family

ID=84526992

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/023207 WO2022264404A1 (ja) 2021-06-18 2021-06-18 翻訳方法、翻訳プログラム及び情報処理装置

Country Status (2)

Country Link
JP (1) JPWO2022264404A1 (ja)
WO (1) WO2022264404A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005025474A (ja) * 2003-07-01 2005-01-27 Advanced Telecommunication Research Institute International 機械翻訳装置、コンピュータプログラム及びコンピュータ
JP2007317000A (ja) * 2006-05-26 2007-12-06 Nippon Telegr & Teleph Corp <Ntt> 機械翻訳装置、その方法およびプログラム
JP2017142758A (ja) * 2016-02-12 2017-08-17 日本電信電話株式会社 単語並べ替え学習方法、単語並べ替え方法、装置、及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005025474A (ja) * 2003-07-01 2005-01-27 Advanced Telecommunication Research Institute International 機械翻訳装置、コンピュータプログラム及びコンピュータ
JP2007317000A (ja) * 2006-05-26 2007-12-06 Nippon Telegr & Teleph Corp <Ntt> 機械翻訳装置、その方法およびプログラム
JP2017142758A (ja) * 2016-02-12 2017-08-17 日本電信電話株式会社 単語並べ替え学習方法、単語並べ替え方法、装置、及びプログラム

Also Published As

Publication number Publication date
JPWO2022264404A1 (ja) 2022-12-22

Similar Documents

Publication Publication Date Title
Torfi et al. Natural language processing advancements by deep learning: A survey
Kim et al. A neural named entity recognition and multi-type normalization tool for biomedical text mining
Ravichandiran Getting Started with Google BERT: Build and train state-of-the-art natural language processing models using BERT
CN109145294B (zh) 文本实体识别方法及装置、电子设备、存储介质
CN111581229B (zh) Sql语句的生成方法、装置、计算机设备及存储介质
Reijnders et al. Summary visualizations of gene ontology terms with GO-Figure!
Hrabovskyi et al. Development of information visualization methods for use in multimedia applications
Taskar et al. Max-margin parsing
CN103970798B (zh) 数据的搜索和匹配
US11176462B1 (en) System and method for prediction of protein-ligand interactions and their bioactivity
CN110895559B (zh) 模型训练、文本处理方法、装置以及设备
Polunin et al. JACOBI4 software for multivariate analysis of biological data
CN111666766A (zh) 数据处理方法、装置和设备
CN114528845A (zh) 异常日志的分析方法、装置及电子设备
JP2022052716A (ja) 非構造化文書からのセマンティックデータの照会
CN113836271A (zh) 自然语言处理的方法和产品
Wang et al. Syntax-directed hybrid attention network for aspect-level sentiment analysis
Zanibbi et al. Math search for the masses: Multimodal search interfaces and appearance-based retrieval
WO2020149959A1 (en) Conversion of natural language query
WO2022264404A1 (ja) 翻訳方法、翻訳プログラム及び情報処理装置
ZAHIDI et al. Comparative study of the most useful Arabic-supporting natural language processing and deep learning libraries
Dash et al. A clinical named entity recognition model using pretrained word embedding and deep neural networks
Andrabi et al. A Comprehensive Study of Machine Translation Tools and Evaluation Metrics
Dickerson et al. Creating Metabolic Network Models using Text Mining and Expert Knowledge.
JP2019061522A (ja) 文書推薦システム、文書推薦方法および文書推薦プログラム

Legal Events

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

Ref document number: 21946079

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023528915

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE