Pseudo pair data generation method, sequence data conversion model acquisition method, sequence data conversion processing device, and program

The method addresses the challenge of limited bilingual data in neural machine translation by generating pseudo-pair data from single-language data, facilitating high-quality machine translation without requiring extensive resources.

JP7663174B2Active Publication Date: 2025-04-16NAT INST OF INFORMATION & COMM TECH
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2021011573
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-01-28
Publication Date
2025-04-16
Estimated Expiration
2041-01-28

AI Technical Summary

Technical Problem

Existing neural machine translation systems struggle with achieving high-quality machine translation when faced with small-scale bidirectional data, requiring large amounts of bilingual data that are costly and time-consuming to obtain.

Method used

A method for generating pseudo-pair data by training a language model on single-language data, using a base conversion model to convert single data into pseudo-pair data, allowing for the creation of a large-scale pseudo-pair data set from a small data set.

Benefits of technology

Enables high-quality machine translation in target fields with limited bilingual data by automatically generating pseudo-pair data, reducing the need for extensive human and financial resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007663174000001
    Figure 0007663174000001
  • Figure 0007663174000002
    Figure 0007663174000002
  • Figure 0007663174000003
    Figure 0007663174000003
Patent Text Reader

Abstract

To embody a technology, by which the technology is generalized, a large-scale pseudo-parallel corpus data set satisfying prescribed application requirements is obtained from small-scale data sets which are data sets without parallel corpus data and satisfy the application requirements, and sequence data conversion processing satisfying the application requirements is realized.SOLUTION: A sequence data conversion processing system 1000 is configured to: automatically generate a large volume of pseudo-parallel corpus data satisfying application requirements from small-scale data sets satisfying the application requirements; and obtain a sequence data conversion model which appropriately executes sequence data conversion processing satisfying the application requirements. Then, in the sequence data conversion processing system 1000, the obtained sequence data conversion model performs the sequence data conversion processing, thereby, enabling the sequence data conversion processing for obtaining the data satisfying the application requirements to be executed in a highly-accurate manner.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a technique for sequence data conversion processing (for example, neural machine translation processing). [Background technology]

[0002] Neural machine translation (NMT) is a machine translation technology that uses a multi-layer neural network. A neural machine translation system consists of a neural network (encoder) that converts each word and entire sentence of the source language into a vector or tensor, and a neural network (decoder) that generates a sequence of words in the target language from the obtained vector or tensor, and learns a model of the neural network (optimizes parameters) based on bilingual data. The translation performance that can be achieved by a neural machine translation system is highly dependent on the size of the bilingual data for a given source language, target language, and target field. A large amount of bilingual data is required to build a practical neural machine translation system (at least hundreds of thousands of bilingual data are required, depending on the language pair and field). If only a small amount of bilingual data exists, it is difficult to achieve high-quality machine translation processing in a neural machine translation system.

[0003] When bilingual data exists for the language pair that is the subject of the desired machine translation (target language pair) and the same language pair in another field (a field other than the field that is the subject of machine translation), or when bilingual data exists for a different language pair in the same field, it may be possible to realize machine translation in the target field using such bilingual data by using machine translation field application technology or multilingual machine translation technology.

[0004] Furthermore, technologies are being developed that utilize monolingual data, which, unlike bilingual data, is inexpensive and available in large quantities (see, for example, Non-Patent Documents 1 and 2). [Prior art documents] [Non-patent literature]

[0005] [Non-Patent Document 1] Nicola Ueffing, Gholamreza Haffari, and Anoop Sarkar (2007). Transductive Learning for Statistical Machine Translation. In Proceedings of the 45th Annual Meeting of the Association for Computational. [Non-Patent Document 2] Rico Sennrich, Barry Haddow, and Alexandra Birch (2016). Improving Neural Machine Translation with Monolingual Data. In Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (ACL), pp. 86-96. Summary of the Invention [Problem to be solved by the invention]

[0006] However, all of the above technologies are premised on the existence of bilingual data of several thousand sentences in the target language pair and the target domain, and if this premise does not hold, the machine translation system realized by the above technologies cannot achieve high machine translation performance. Also, in order to create the bilingual data of several thousand sentences in the target language pair and the target domain required by the above technologies, a non-negligible amount of human and financial costs are required.

[0007] As such, when adapting a neural machine translation system to a new field, a certain amount of bilingual data in the field (target field) that the neural machine translation system targets is required, and if such bilingual data is not available, it is difficult to improve the performance of the machine translation.

[0008] In view of the above problems, the present invention aims to realize a technology that automatically generates pseudo-parallel data in a target field (a field targeted for machine translation) from small-scale monolingual data in the target field, and appropriately executes machine translation in the target field. It also aims to generalize the technology, obtain a large-scale pseudo-paired data set that satisfies the application conditions from a small-scale data set (a data set that is not paired data) that satisfies certain application requirements, and realize sequence data conversion processing that satisfies the application conditions. [Means for solving the problem]

[0009] A first invention for solving the above problems is a method for generating pseudo paired data (pseudo bilingual data generation method) used for acquiring a sequence data conversion model, which is a model for executing sequence data conversion processing for converting a first data sequence into a second data sequence or a second data sequence into a first data sequence, that satisfies a predetermined application condition. The method includes a pseudo single data generation step (note that "single data" refers to data that includes only one of the first data sequence and the second data sequence), a base conversion model acquisition step, and a pseudo paired data acquisition step.

[0010] The pseudo-single data generation step involves training a language model to perform a process of generating single data of one of the first data series and the second data series using a first data set, which is a data set of a first size that satisfies the application conditions, and a second data set, which is a data set of a second size that is larger than the first size and does not satisfy the application conditions, to obtain a trained language model for the single data generation process, and performing a single data generation process using the obtained trained language model to generate single data.

[0011] The base transformation model acquisition step acquires a trained transformation model of the base transformation model by learning a base transformation model that converts the first data series into the second data series or the second data series into the first data series using a paired data set, which is a data set that pairs data of a first data series with data of a second data series.

[0012] The pseudo paired data acquisition step uses a trained transformation model of the base transformation model to perform sequence data conversion processing on the single data generated in the pseudo single data generation step to acquire pseudo-converted data of the single data, and acquires data paired with the single data and the pseudo-converted data of the single data as pseudo paired data.

[0013] In this pseudo paired data generation method, a language model that executes a process of generating single data of one of the first data sequence and the second data sequence is trained using a first data set, which is a data set of a first scale that satisfies the application conditions, to obtain a trained language model for the single data generation process, and single data is generated by performing the single data generation process using the trained language model. In this pseudo paired data generation method, pseudo-converted data of the single data is obtained by performing a sequence data conversion process on the single data generated in the pseudo single data generation step using the trained conversion model of the base conversion model acquired in the base conversion model acquisition step, and data paired with the single data and the pseudo-converted data of the single data is obtained as pseudo paired data.

[0014] Therefore, in this pseudo pair data generation method, even if there is only a small data set that satisfies the application conditions, a large amount of pseudo pair data that satisfies the application conditions can be obtained by the above process.

[0015] In other words, this pseudo-parallel data generating method can automatically generate a large amount of pseudo-parallel data that satisfies the application conditions.

[0016] A second aspect of the present invention is a method for acquiring a sequence data conversion model that is a model for executing sequence data conversion processing for converting a first data sequence into a second data sequence or a second data sequence into a first data sequence and that satisfies a predetermined application condition (sequence data conversion model acquisition method), which includes a pseudo single data generating step, a base conversion model acquiring step, a pseudo pair data acquiring step, and a sequence data conversion model acquiring step.

[0017] The pseudo-single data generation step involves training a language model to perform a process of generating single data of one of the first data series and the second data series using a first data set, which is a data set of a first size that satisfies the application conditions, and a second data set, which is a data set of a second size that is larger than the first size and does not satisfy the application conditions, to obtain a trained language model for the single data generation process, and performing a single data generation process using the obtained trained language model to generate single data.

[0018] The base transformation model acquisition step acquires a trained transformation model of the base transformation model by learning a base transformation model that converts the first data series into the second data series or the second data series into the first data series using a paired data set, which is a data set that pairs data of a first data series with data of a second data series.

[0019] The pseudo paired data acquisition step uses a trained transformation model of the base transformation model to perform sequence data conversion processing on the single data generated in the pseudo single data generation step to acquire pseudo-converted data of the single data, and acquires data paired with the single data and the pseudo-converted data of the single data as pseudo paired data.

[0020] The sequence data conversion model acquisition step acquires a trained model of the sequence data conversion model by training a sequence data conversion model that converts the first data sequence into a second data sequence or the second data sequence into the first data sequence, using the paired data set and the pseudo paired data acquired in the pseudo paired data acquisition step.

[0021] In this sequence data conversion model acquisition method, a language model that executes a process of generating single data of one of the first data sequence and the second data sequence is trained using a first data set that is a data set of a first scale that satisfies an application condition to acquire a trained language model for the single data generation process, and single data is generated by performing the single data generation process using the trained language model. In this sequence data conversion model acquisition method, pseudo-converted data of the single data is acquired by executing the sequence data conversion process on the single data generated in the pseudo single data generation step using the trained conversion model of the base conversion model acquired in the base conversion model acquisition step, and data paired with the single data and the pseudo-converted data of the single data is acquired as pseudo paired data.

[0022] Then, in this sequence data conversion model acquisition method, a sequence data conversion model that converts a first data sequence into a second data sequence or a second data sequence into the first data sequence is trained using the paired data and the pseudo paired data acquired in the pseudo paired data acquisition step, thereby acquiring a trained model of the sequence data conversion model.

[0023] Therefore, in this method for obtaining a sequence data conversion model, even if only a small-scale data set that satisfies the application conditions exists, the above process can obtain a trained model of the sequence data conversion model that obtains data that satisfies the application conditions. Then, by performing sequence data conversion processing using the trained model of the sequence data conversion model, data that satisfies the application conditions (e.g., machine translation processing data) can be obtained with high accuracy.

[0024] In other words, this method for obtaining a sequence data conversion model can automatically generate a large amount of pseudo-parallel data that satisfies the application conditions from a small-scale data set that satisfies the application conditions, and obtain a sequence data conversion model that appropriately executes sequence data conversion processing that satisfies the application conditions. Then, by performing sequence data conversion processing using the obtained sequence data conversion model, it is possible to execute sequence data conversion processing (e.g., machine translation processing) that obtains data that satisfies the application conditions with high accuracy.

[0025] A third invention is the second invention, in which the application condition is that the language data to be processed belongs to a target field that is a target field of the pseudo-pair data; The first data set is a monolingual data set in the target domain; The second data set is a monolingual data set from a domain other than the domain to which the data is to be applied; the first data sequence is a data sequence in a first language; the second data series is a data series in a second language other than the first language; The sequence data conversion process is a process for converting sequence data (for example, a machine translation process).

[0026] As a result, in the sequence data transformation model acquisition method, a sequence data transformation model that realizes a process of converting sequence data (for example, a machine translation process) can be acquired as the sequence data transformation process.

[0027] A fourth invention is the second invention, in which the application condition is that the language data to be processed is data to identify a speaker, the data being data to identify a speaker; the first data set is a data set of monolingual data annotated with speaker identification data; the second data set is a data set of monolingual data with no speaker identification data attached; the first data sequence is a data sequence in a first language; the second data series is a data series in a second language other than the first language; The sequence data conversion process is a process for converting sequence data (for example, a machine translation process).

[0028] This makes it possible to realize sequence data conversion processing (e.g., machine translation processing (e.g., machine translation processing that can obtain translation results that reflect the characteristics of an individual's expression)) adapted to speaker identification data (e.g., a personal identifier) ​​in the sequence data conversion model acquisition method.

[0029] A fifth aspect of the present invention is a sequence data conversion processing device (e.g., a machine translation processing device) that performs sequence data conversion processing (e.g., a machine translation processing device) using a trained model of a sequence data conversion model acquired by the sequence data conversion model acquisition method of any one of the second to fourth aspects of the present invention.

[0030] This makes it possible to realize a sequence data conversion processing device (e.g., a machine translation processing device) that performs sequence data conversion processing (e.g., a machine translation processing device) using a trained model of the sequence data conversion model acquired by the sequence data conversion model acquisition method of any one of the second to fourth inventions.

[0031] A sixth aspect of the present invention is a program for causing a computer to execute the method according to any one of the first to fourth aspects of the present invention.

[0032] This makes it possible to realize a program for causing a computer to execute the method according to any one of the first to fourth aspects of the present invention. Effect of the Invention

[0033] According to the present invention, it is possible to realize a technology that automatically generates pseudo-parallel data in a target field (a field targeted for machine translation) from small-scale monolingual data in the target field, and appropriately executes machine translation in the target field. Furthermore, it is possible to realize a technology that generalizes the technology, obtains a large-scale pseudo-parallel data set that satisfies a given application condition from a small-scale data set that satisfies the application requirements, and realizes sequence data conversion processing that satisfies the application conditions. [Brief description of the drawings]

[0034] [Figure 1] FIG. 1 is a schematic diagram of a sequence data conversion processing system 1000 according to a first embodiment (in the case of a system that executes machine translation processing in a specialized field (field of application)). [Diagram 2] FIG. 1 is a schematic configuration diagram of a pseudo monolingual data generation unit 1 of a sequence data conversion processing system 1000 according to a first embodiment. [Diagram 3] FIG. 2 is a schematic configuration diagram of a pseudo-translation data generating unit 2 of the sequence data conversion processing system 1000 according to the first embodiment. [Figure 4] FIG. 2 is a schematic configuration diagram of a machine translation unit 3 of the sequence data conversion processing system 1000 according to the first embodiment. [Diagram 5] 4 is a flowchart of the process executed by the sequence data conversion processing system 1000. [Figure 6] FIG. 4 is a diagram for explaining a pre-learning process. [Figure 7] FIG. 13 is a diagram for explaining field adaptation processing. [Figure 8] FIG. 4 is a diagram for explaining a pseudo monolingual data generation process. [Figure 9] FIG. 4 is a diagram for explaining the learning process of a base machine translation model. [Figure 10] FIG. 4 is a diagram for explaining the pseudo-parallel translation data generation process. [Figure 11] FIG. 1 is a diagram for explaining a learning process of a machine translation model. [Figure 12] FIG. 1 is a diagram for explaining a learning process of a machine translation model. [Figure 13] FIG. 1 is a diagram for explaining a machine translation process. [Figure 14] FIG. 13 is a schematic diagram of a sequence data conversion processing system 2000 according to a second embodiment (in the case of a system that executes a machine translation process capable of personalization adaptation). [Figure 15] FIG. 13 is a schematic diagram showing the configuration of a pseudo monolingual data generation unit 1B of the sequence data conversion processing system 2000 according to the second embodiment. [Figure 16] FIG. 13 is a schematic configuration diagram of a pseudo-parallel data generating unit 2B of the sequence data conversion processing system 2000 according to the second embodiment. [Figure 17] FIG. 13 is a schematic configuration diagram of a machine translation unit 3B of the sequence data conversion processing system 2000 according to the second embodiment. [Figure 18] 13 is a flowchart of the process executed by the sequence data conversion processing system 2000. [Figure 19] FIG. 4 is a diagram for explaining a language model learning process. [Figure 20] FIG. 13 is a diagram for explaining a personalized adaptation process. [Figure 21] FIG. 4 is a diagram for explaining a pseudo monolingual data generation process. [Figure 22] FIG. 4 is a diagram for explaining the learning process of a base machine translation model. [Diagram 23] FIG. 4 is a diagram for explaining the pseudo-parallel translation data generation process. [Figure 24] FIG. 1 is a diagram for explaining a learning process of a machine translation model. [Diagram 25] FIG. 1 is a diagram for explaining a learning process of a machine translation model. [Figure 26] FIG. 1 is a diagram for explaining a machine translation process. [Figure 27] A diagram showing the CPU bus configuration. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0035] [First embodiment] The first embodiment will be described below with reference to the drawings.

[0036] <1.1: Configuration of sequence data conversion processing system (machine translation processing system)> FIG. 1 is a schematic diagram of a sequence data conversion processing system 1000 according to the first embodiment (in the case of a system that executes machine translation processing in a specialized field (target field)).

[0037] FIG. 2 is a schematic diagram of the pseudo monolingual data generation unit 1 of the sequence data conversion processing system 1000 according to the first embodiment.

[0038] FIG. 3 is a schematic diagram of the pseudo-translation data generating unit 2 of the sequence data conversion processing system 1000 according to the first embodiment.

[0039] FIG. 4 is a schematic diagram of the machine translation unit 3 of the sequence data conversion processing system 1000 according to the first embodiment.

[0040] In this embodiment, a case (one example) of executing machine translation processing in a special field (target field) will be described as the sequence data conversion processing system 1000. Specifically, a case will be described in which the sequence data conversion processing system 1000 (machine translation processing system) is realized that executes machine translation processing from a first language (e.g., Japanese) to a second language (e.g., English) in the target field with high accuracy when there is no large-scale bilingual data in the target field.

[0041] In the following description, the field to which the pseudo-translation data generated by the sequence data conversion processing system 1000 is applied is referred to as the application field, and fields other than the application field are referred to as other fields.

[0042] As shown in FIG. 1, the sequence data conversion processing system 1000 includes a first monolingual data storage unit DB1_m, a second monolingual data storage unit DB2_m, a pseudo-monolingual data generation unit 1, a pseudo-monolingual data storage unit DB3_m, a bilingual data storage unit DB4_p, a pseudo-bilingual data generation unit 2, a pseudo-bilingual data storage unit DB5_p, and a machine translation unit 3.

[0043] The first monolingual data storage unit DB1_m is a storage unit that stores monolingual data of a field (other field) other than the application field of one language (e.g., second language) that is the subject of machine translation processing. The first monolingual data storage unit DB1_m is realized by, for example, a database. Moreover, it is preferable that the number (number of items) of monolingual data stored in the first monolingual data storage unit DB1 is large (it is preferable that large-scale monolingual data (other field) is stored and retained).

[0044] The second monolingual data storage unit DB2_m is a storage unit that stores monolingual data of a field other than the application field of one language (the same language as the language stored in the first monolingual data storage unit DB1_m) that is the subject of machine translation processing. The second monolingual data storage unit DB2_m is realized by, for example, a database.

[0045] The pseudo-monolingual data generation unit 1 has a learnable model (e.g., a neural network language model (NLM: Neural Language Model)) and performs pre-learning using monolingual data of other fields in one of the languages ​​(e.g., a second language) to be subjected to machine translation processing, which is stored in the first monolingual data storage unit DB1_m, to obtain a pre-trained model.

[0046] Furthermore, the pseudo-monolingual data generation unit 1 performs a learning process (a learning process to adapt to the target field) on the pre-trained model using monolingual data of the target field of one of the languages ​​to be subjected to machine translation processing (the same language as the language stored in the first monolingual data storage unit DB1_m) stored in the second monolingual data storage unit DB2_m, and obtains a trained model.

[0047] Furthermore, the pseudo-monolingual data generation unit 1 uses the trained model acquired as described above (the trained model acquired by pre-training and training processing adapted to the target field) to perform pseudo-monolingual data generation processing for one language to be subjected to machine translation processing (the same language as the language stored in the first monolingual data storage unit DB1_m and the second monolingual data storage unit DB2_m) to acquire monolingual data for the target field. Note that the monolingual data for the target field acquired by the pseudo-monolingual data generation processing is not generated by humans, and therefore this data is referred to as pseudo-monolingual data for the target field.

[0048] The pseudo-monolingual data generating unit 1 outputs the pseudo-monolingual data of the application field acquired as described above to the pseudo-monolingual data storage unit DB3_m.

[0049] As shown in FIG. 2, the pseudo-monolingual data generation unit 1 includes a data input interface 11, an input data acquisition unit 12, a language model 13, a selector SEL11, and an output data evaluation unit .

[0050] The data input interface 11 receives as input the data output from the first monolingual data storage unit DB1_m (hereinafter referred to as data Di1.En(general)), the data output from the second monolingual data storage unit DB2_m (hereinafter referred to as data Di2.En(special)), and a control signal CTL1 output from a control unit (not shown) that controls the sequence data conversion processing system 1000. In accordance with the control signal CTL1, the data input interface 11 selects one of the data Di1.En(general) output from the first monolingual data storage unit DB1_m and the data Di2.En(special) output from the second monolingual data storage unit DB2_m, and outputs the selected data to the input data acquisition unit 12 as data D11.

[0051] The input data acquisition unit 12 receives the data D11 and a control signal CTL2 output from the control unit.

[0052] (1) When the control signal CTL2 instructs to perform pre-learning (when performing pre-learning), the input data acquisition unit 12 generates data (pre-learning data) to be input to the language model 13 from the data D11, outputs the generated data to the language model 13 as data D12, and also generates correct answer data for pre-learning from the data D11, and outputs the generated correct answer data to the output data evaluation unit 14 as correct answer data D11_correct.

[0053] (2) Furthermore, when the control signal CTL2 instructs the input data acquisition unit 12 to execute a learning process adapted to the target field (when executing a learning process adapted to the target field), the input data acquisition unit 12 generates data to be input to the language model 13 (learning data to be adapted to the target field) from the data D11, outputs the generated data to the language model 13 as data D12, and also generates correct answer data for learning to be adapted to the target field from the data D11, and outputs the generated correct answer data to the output data evaluation unit 14 as correct answer data D11_correct.

[0054] (3) Furthermore, when the control signal CTL2 instructs to execute a prediction process (a process using a trained model), the input data acquisition unit 12 does not input anything to the language model 13.

[0055] Language model 13 is a learnable model (a model in which a trained model is constructed by optimizing parameters through data-based learning) and is a model for performing pre-learning and learning processes to adapt to the target field (e.g., a language model using a neural network).

[0056] During learning (when performing pre-learning and when performing learning processing to adapt to the target field), the language model 13 learns to treat input data as a token sequence and output correct output data (the input data itself (e.g., a token following the token sequence that is the input data)). For example, when performing learning processing using the sentence "I have a cat.", the language model 13 performs learning processing so as to output the following correct output data when the input data shown below is input. (1st time) Input data: "", Correct output data: "I" (2nd time) Input data: "I", correct output data: "have" (3rd time) Input data: "I have", Correct output data: "a" (4th time) Input data: "I have a", Correct output data: "cat" (5th time) Input data: "I have a cat", Correct answer output data: "." Furthermore, during prediction, the language model 13 sets the input data to "none" and outputs a token sequence of an arbitrary length as output data. During prediction, the language model 13 outputs output data as follows, for example. (1st time) Input data: "" (none), Output data: "(token 1)" (2nd time) Input data: "(token 1)", Output data: "(token 2)" (3rd time) Input data: "(token 1) (token 2)", Output data: "(token 3)" ... In this manner, the language model 13 outputs a token sequence of any length during prediction.

[0057] During learning (when performing pre-learning and when performing learning processing to adapt to the destination field) (when a control signal CTL3 instructing to perform learning to adapt to the destination field is input), the language model 13 outputs data including processing result data obtained by processing input data D12 by the language model 13 to the selector SEL11 as data D13.

[0058] Furthermore, during prediction, the language model 13 generates a token sequence of an arbitrary length with the input data being "none", and outputs data including the generated token sequence to the selector SEL11 as data D13.

[0059] Furthermore, the language model 13 receives an update parameter update1(θ1) output from the output data evaluation unit 14, and updates the parameters of the language model (for example, a neural network model) based on the update parameter update1(θ1).

[0060] Furthermore, the language model 13 performs a prediction process in a state where pre-learning and learning processes adapted to the target field are completed and optimal parameters are set (trained model). That is, when a control signal CTL3 instructing to execute a prediction process is input, the language model 13 executes the prediction process and generates pseudo monolingual data D13. Then, the language model 13 outputs the generated data D13 to the selector SEL11.

[0061] The selector SEL11 receives data D13 output from the language model 13 and a selection signal sel1 output from the control unit. In accordance with the selection signal sel1, the selector SEL11 outputs data D13 to the output data evaluation unit 14 as data D14, or outputs data D13 to the pseudo monolingual data storage unit DB3_m as data Do1.En(special).

[0062] The output data evaluation unit 14 receives the correct data D11_correct output from the input data acquisition unit 12 and the data D14 output from the selector SEL11. The output data evaluation unit 14 evaluates the loss (e.g., error) between the data D14 and the correct data D11_correct, for example, by a loss function, and generates an update parameter update1(θ1) for updating the parameters of the language model of the language model 13 based on the evaluation result. Then, the output data evaluation unit 14 outputs the generated update parameter update1(θ1) to the language model 13.

[0063] The pseudo-monolingual data storage unit DB3_m receives as input the pseudo-monolingual data in the application field generated by the pseudo-monolingual data generation unit 1 and stores the data. In addition, the pseudo-monolingual data storage unit DB3_m reads out data stored in the pseudo-monolingual data storage unit DB3_m in accordance with a data read command from the pseudo-parallel data generation unit 2, and outputs the read out data to the pseudo-parallel data generation unit 2.

[0064] The bilingual data storage unit DB4_p is a storage unit that stores bilingual data of other fields (data in a first language paired with data in a second language that is data obtained by translating the data in the first language into the second language). The bilingual data storage unit DB4_p is realized by, for example, a database.

[0065] The pseudo-translation data generation unit 2 is equipped with a trainable model (e.g., a machine translation model using a neural network) and performs training using the bilingual data stored in the bilingual data storage unit DB4_p to obtain a trained model (referred to as a "trained base conversion model").

[0066] In addition, the pseudo-parallel data generation unit 2 performs a pseudo-parallel data generation process on the pseudo-parallel data stored in the pseudo-monolingual data storage unit DB3_m using the trained base conversion model obtained as described above, and obtains pseudo-parallel data for the target field.

[0067] The pseudo-parallel data generating unit 2 outputs the pseudo-parallel data of the application target field acquired as described above to the pseudo-parallel data storage unit DB5_p.

[0068] As shown in FIG. 3, the pseudo-parallel data generating unit 2 includes a data input interface 21, an input data acquiring unit 22, a machine translation model 23, a selector SEL21, an output data evaluating unit 24, and an output data acquiring unit 25.

[0069] The data input interface 21 inputs the pseudo-monolingual data output from the pseudo-monolingual data storage unit DB3_m (hereinafter referred to as data Di22.En(special)), the bilingual data output from the bilingual data storage unit DB4_p (hereinafter referred to as data Di21.En-Ja(general)), and a control signal CTL21 output from a control unit (not shown) that controls the sequence data conversion processing system 1000. In accordance with the control signal CTL21, the data input interface 21 selects either the data Di22.En(special) output from the pseudo-monolingual data storage unit DB3_m or the bilingual data Di21.En-Ja(general) output from the bilingual data storage unit DB4_p, and outputs the selected data to the input data acquisition unit 22 as data D21.

[0070] The input data acquisition unit 22 receives the data D21 and a control signal CTL22 output from the control unit.

[0071] (1) When the control signal CTL22 instructs to execute learning of the machine translation model 23 (base machine translation model) (when the base machine translation model is being learned), the input data acquisition unit 22 generates data (learning input data) to be input to the machine translation model 23 from data D21 (in this case, the data input interface 21 performs processing so that D21 = Di21.En-Ja (general)), outputs the generated data to the machine translation model 23 as data D22, and also generates correct answer data for learning from the data D21 (= Di21.En-Ja (general)), and outputs the generated correct answer data to the output data evaluation unit 24 as correct answer data D21_correct.

[0072] (2) Furthermore, when the control signal CTL22 instructs the input data acquisition unit 22 to execute prediction processing (machine translation processing) (when executing prediction processing (machine translation processing) using a learned model of the base machine translation model), the input data acquisition unit 22 outputs data D21 (in this case, the data input interface 21 performs processing so that D21 = Di22.En(special)) as data D22 to the machine translation model 23 and the output data acquisition unit 25.

[0073] The machine translation model 23 is a trainable model (a model in which a trained model is constructed by optimizing parameters through data-based training) and is a model for training machine translation (for example, a machine translation model using a neural network). The machine translation model 23 receives data D22 output from the input data acquisition unit 22 and acquires output data D23. The machine translation model 23 then outputs the data D23 to the selector SEL21.

[0074] Furthermore, the machine translation model 23 receives the update parameter update2(θ2) output from the output data evaluation unit 24, and updates the parameters of the machine translation model (for example, a neural network model) based on the update parameter update2(θ2).

[0075] The selector SEL21 receives data D23 output from the machine translation model 23 and a selection signal sel21 output from the control unit. In accordance with the selection signal sel21, the selector SEL21 outputs the data D23 to the output data evaluation unit 24 as data D24, or outputs the data D23 to the output data acquisition unit 25 as data Do.Ja(special).

[0076] The output data evaluation unit 24 receives the correct data D21_correct output from the input data acquisition unit 22 and the data D24 output from the selector SEL21. The output data evaluation unit 24 evaluates the loss (e.g., error) between the data D24 and the correct data D21_correct, for example, by a loss function, and generates an update parameter update2(θ2) for updating the parameter of the machine translation model 23 based on the evaluation result. Then, the output data evaluation unit 24 outputs the generated update parameter update2(θ2) to the machine translation model 23.

[0077] The output data acquisition unit 25 receives data D22 (=Do.En(special)) output from the input data acquisition unit 22 and data Do.Ja(special) output from the selector SEL21. Here, data Do.Ja(special) is machine translation result data of data D22.

[0078] The output data acquisition unit 25 acquires bilingual data pairing data D22 (=Do.En(special)) with data Do.Ja(special), and outputs the acquired bilingual data to the pseudo-bilingual data storage unit DB5_p as pseudo-bilingual data Do2.En-Ja(special).

[0079] The pseudo-parallel data storage unit DB5_p receives as input the pseudo-parallel data Do2.En-Ja(special) for the application field generated by the pseudo-parallel data generation unit 2, and stores the data. In addition, the pseudo-parallel data storage unit DB5_p reads out data stored in the pseudo-parallel data storage unit DB5_p in accordance with a data read command from the machine translation unit 3, and outputs the read out data to the machine translation unit 3.

[0080] The machine translation unit 3 is equipped with a trainable model (e.g., a machine translation model using a neural network) and performs training using (1) the bilingual data stored in the bilingual data storage unit DB4_p and (2) the pseudo-bilingual data stored in the pseudo-bilingual data storage unit DB5_p to obtain a trained model.

[0081] Furthermore, the machine translation unit 3 performs machine translation processing using the trained model (machine translation model) acquired as described above.

[0082] As shown in FIG. 4, the machine translation unit 3 includes a data input interface 31, an input data acquisition unit 32, a machine translation model 33, a selector SEL31, and an output data evaluation unit .

[0083] The data input interface 31 inputs the bilingual data output from the bilingual data storage unit DB4_p (hereinafter referred to as data Di31.En-Ja(general)), the pseudo-bilingual data output from the pseudo-bilingual data storage unit DB5_p (hereinafter referred to as data Di32.En-Ja(special)), the source language data of the machine translation (hereinafter referred to as data Din.Ja), and a control signal CTL31 output from a control unit (not shown) that controls the sequence data conversion processing system 1000. The data input interface 31 selects one of the bilingual data Di31.En-Ja(general) output from the bilingual data storage unit DB4_p, the pseudo-bilingual data Di32.En-Ja(special) output from the pseudo-bilingual data storage unit DB5_p, and the source language data Din.Ja of the machine translation in accordance with the control signal CTL31, and outputs the selected data to the input data acquisition unit 32 as data D31.

[0084] The input data acquisition unit 32 receives data D31 and a control signal CTL32 output from the control unit.

[0085] (1) When the control signal CTL32 instructs to train the machine translation model 33 using the bilingual data Di31.En-Ja(general) (when training the machine translation model using the bilingual data Di31.En-Ja(general)), the input data acquisition unit 32 generates data (learning input data) to be input to the machine translation model 33 from data D31 (in this case, the data input interface 31 performs processing so that D31 = Di31.En-Ja(general)), outputs the generated data to the machine translation model 33 as data D32, and also generates correct answer data for training from the data D31 (=Di31.En-Ja(general)), and outputs the generated correct answer data to the output data evaluation unit 34 as correct answer data D31_correct.

[0086] (2) When the control signal CTL32 instructs to train the machine translation model 33 using the pseudo-parallel data Di32.En-Ja(special) (when training the machine translation model using the pseudo-parallel data Di32.En-Ja(special)), the input data acquisition unit 32 generates data to be input to the machine translation model 33 (learning input data) from data D31 (in this case, the data input interface 31 performs processing so that D31 = Di32.En-Ja(special)), outputs the generated data to the machine translation model 33 as data D32, and also generates correct answer data for training from the data D31 (= Di32.En-Ja(special)), and outputs the generated correct answer data to the output data evaluation unit 34 as correct answer data D31_correct.

[0087] (3) Furthermore, when the control signal CTL32 instructs the input data acquisition unit 32 to execute a prediction process (machine translation process) (when executing a prediction process (machine translation process) using the learned model of the machine translation model 33), the input data acquisition unit 32 outputs data D31 (in this case, the data input interface 31 performs processing so that D31 = Din.En) to the machine translation model 33 as data D32.

[0088] The machine translation model 33 is a trainable model, and is a model for learning machine translation (for example, a machine translation model using a neural network). The machine translation model 33 receives data D32 output from the input data acquisition unit 32 and acquires output data D33. The machine translation model 33 then outputs the data D33 to the selector SEL31.

[0089] Furthermore, the machine translation model 33 receives the update parameter update3(θ3) output from the output data evaluation unit 34, and updates the parameters of the machine translation model (for example, a neural network model) based on the update parameter update3(θ3).

[0090] The selector SEL31 receives data D33 output from the machine translation model 33 and a selection signal sel31 output from the control unit. In accordance with the selection signal sel31, the selector SEL31 outputs the data D33 to the output data evaluation unit 34 as data D34, or outputs the data D33 as data Dout.En.

[0091] The output data evaluation unit 34 receives the correct data D31_correct output from the input data acquisition unit 32 and the data D34 output from the selector SEL31. The output data evaluation unit 34 evaluates the loss (e.g., error) between the data D34 and the correct data D31_correct using, for example, a loss function, and generates an update parameter update3(θ3) for updating the parameter of the machine translation model 33 based on the evaluation result. The output data evaluation unit 34 then outputs the generated update parameter update3(θ3) to the machine translation model 33.

[0092] <1.2: Operation of sequence data conversion processing system (machine translation processing system)> The operation of the sequence data conversion processing system 1000 configured as above will now be described.

[0093] FIG. 5 is a flowchart of the process executed by the sequence data conversion processing system 1000.

[0094] FIG. 6 is a diagram for explaining the pre-learning process of the language model.

[0095] FIG. 7 is a diagram for explaining the domain adaptation process of the language model.

[0096] FIG. 8 is a diagram for explaining the pseudo monolingual data generation process.

[0097] FIG. 9 is a diagram for explaining the learning process of the base machine translation model.

[0098] FIG. 10 is a diagram for explaining the pseudo-parallel translation data generation process.

[0099] 11 and 12 are diagrams for explaining the learning process of the machine translation model.

[0100] FIG. 13 is a diagram for explaining the machine translation process.

[0101] The operation of the sequence data conversion processing system 1000 will be described below with reference to the flowchart in FIG.

[0102] (Step S11): In step S11, a pre-training process of a language model is executed. Specifically, in the pseudo monolingual data generating unit 1 of the sequence data conversion processing system 1000, pre-training of the language model 13 is performed using large-scale monolingual data of a second language (e.g., English) in a different field stored in the first monolingual data storage unit DB1_m.

[0103] As shown in FIG. 6, monolingual data in a second language in another field stored in a first monolingual data storage unit DB1_m is input to a data input interface 11 of the pseudo-monlingual data generation unit 1 as data Di1.En(general).

[0104] The data input interface 11 outputs the data Di1.En (general) as data D11 to the input data acquisition unit 12 in accordance with the control signal CTL1. Note that in step S11, the control signal CTL1 generated by the control unit is a signal for controlling the data from the first monolingual data storage unit DB1_m to be output to the input data acquisition unit 12.

[0105] The input data acquisition unit 12 generates data to be input to the language model 13 (pre-learning data) from the data D11 in accordance with the control signal CTL2 instructing to execute pre-learning, and outputs the generated data as data D12 to the language model 13. Specifically, the input data acquisition unit 12 sets the token sequence acquired from the data D11 as the data to be input to the language model 13 (pre-learning data).

[0106] Furthermore, the input data acquiring unit 12 generates pre-learning correct answer data from the data D11, and outputs the generated correct answer data as correct answer data D11_correct to the output data evaluating unit 14. Specifically, the input data acquiring unit 12 sets a token following the generated data (pre-learning data) to be input to the language model 13 as correct answer data D11_correct.

[0107] In accordance with a control signal CTL3 instructing to perform pre-learning (when performing pre-learning), the language model 13 inputs data D12 (a token sequence acquired from data D11) output from the input data acquisition unit 12, processes the data D12 using the language model 13, and outputs data including the processed result data to the selector SEL11 as data D13.

[0108] The control unit generates a selection signal sel1 that instructs the output data evaluation unit 14 to output the data D13 as data D14.

[0109] The selector SEL11 outputs the data D13 to the output data evaluation unit 14 as data D14 in accordance with the selection signal sel1 generated as described above.

[0110] The output data evaluation unit 14 receives the correct data D11_correct output from the input data acquisition unit 12 and the data D14 output from the selector SEL11. The output data evaluation unit 14 evaluates the loss (e.g., error) between the data D14 and the correct data D11_correct, for example, by a loss function, and generates an update parameter update1(θ1) for updating the parameters of the language model of the language model 13 based on the evaluation result. Then, the output data evaluation unit 14 outputs the generated update parameter update1(θ1) to the language model 13.

[0111] Then, the language model 13 receives the update parameter update1(θ1) output from the output data evaluation unit 14, and updates the parameters of the language model (for example, a neural network model) based on the update parameter update1(θ1).

[0112] When the output data evaluation unit 14 determines that the above process satisfies the following condition (learning process termination condition), it determines that the pre-learning process of the language model 13 has ended. (1) The loss (eg, error) between the data D14 and the correct answer data D11_correct is within a predetermined range. (2) Even if the parameters of the language model 13 are updated, the amount of change in loss (for example, error) between the data D14 and the correct answer data D11_correct is less than or equal to a predetermined value.

[0113] Then, the language model 13 in which the parameters (optimum parameters) are set when the above-mentioned end condition of the learning process is satisfied is set as the learned language model of the pre-learning process.

[0114] As the language model 13, for example, the model (GPT-2) disclosed in the following document A may be adopted. (Reference A): Alec Radford, Jeffrey Wu, Rewon Child, David Luan, Dario Amodei, and IIya Sutskever (2019). Language Models are Unsupervised Multitask Learners (Step S12): In step S12, a domain adaptation process of the language model is performed. Specifically, in the pseudo monolingual data generation unit 1 of the sequence data conversion processing system 1000, the domain adaptation process of the language model 13 is performed using monolingual data of a second language (e.g., English) of a small-scale adaptation domain stored in the second monolingual data storage unit DB2_m.

[0115] In step S12, the language model 13 is initialized to a state in which the parameters acquired in step S11 (pre-learning process) (optimal parameters obtained by the pre-learning process) are set, and then the domain adaptation process of the language model is performed.

[0116] As shown in FIG. 7, monolingual data in the second language of the application field stored in the second monolingual data storage unit DB2_m is input to the data input interface 11 of the pseudo-monolingual data generation unit 1 as data Di2.En(special).

[0117] The data input interface 11 outputs the data Di2.En(special) as data D11 to the input data acquisition unit 12 in accordance with the control signal CTL1. Note that the control signal CTL1 generated by the control unit in step S12 is a signal for controlling the data from the second monolingual data storage unit DB2_m to be output to the input data acquisition unit 12.

[0118] The input data acquisition unit 12 generates data to be input to the language model 13 (learning data for the field adaptation processing) from the data D11 in accordance with the control signal CTL2 instructing to execute the field adaptation processing, and outputs the generated data as data D12 to the language model 13. Specifically, the input data acquisition unit 12 sets the token sequence acquired from the data D11 as the data to be input to the language model 13 (learning data for the field adaptation processing).

[0119] Furthermore, the input data acquisition unit 12 generates correct answer data for learning of the field adaptation process from the data D11, and outputs the generated correct answer data as correct answer data D11_correct to the output data evaluation unit 14. Specifically, the input data acquisition unit 12 sets a token following the data generated to be input to the language model 13 (learning data for the field adaptation process) as correct answer data D11_correct.

[0120] In accordance with a control signal CTL3 instructing to execute learning of field adaptation processing (when executing learning of field adaptation processing), the language model 13 inputs data D12 (a token sequence acquired from data D11) output from the input data acquisition unit 12, processes the data D12 using the language model 13, and outputs data including the processing result data to the selector SEL11 as data D13.

[0121] The control unit generates a selection signal sel1 that instructs the output data evaluation unit 14 to output the data D13 as data D14.

[0122] The selector SEL11 outputs the data D13 to the output data evaluation unit 14 as data D14 in accordance with the selection signal sel1 generated as described above.

[0123] The output data evaluation unit 14 receives the correct data D11_correct output from the input data acquisition unit 12 and the data D14 output from the selector SEL11. The output data evaluation unit 14 evaluates the loss (e.g., error) between the data D14 and the correct data D11_correct, for example, by a loss function, and generates an update parameter update1(θ1) for updating the parameters of the language model of the language model 13 based on the evaluation result. Then, the output data evaluation unit 14 outputs the generated update parameter update1(θ1) to the language model 13.

[0124] Then, the language model 13 receives the update parameter update1(θ1) output from the output data evaluation unit 14, and updates the parameters of the language model (for example, a neural network model) based on the update parameter update1(θ1).

[0125] When the output data evaluation unit 14 determines that the above process satisfies the following condition (learning process termination condition), it determines that the learning process of the domain adaptation process of the language model 13 has ended. (1) The loss (eg, error) between the data D14 and the correct answer data D11_correct is within a predetermined range. (2) Even if the parameters of the language model 13 are updated, the amount of change in loss (for example, error) between the data D14 and the correct answer data D11_correct is less than or equal to a predetermined value.

[0126] Then, the language model 13 in which the parameters (optimum parameters) are set when the above-mentioned termination condition for the learning process is satisfied is set as the learned language model for the learning process of the domain adaptation process.

[0127] (Step S13): In step S13, a pseudo-monolingual data generation process is executed using the trained language model (see FIG. 8). Specifically, in the pseudo-monolingual data generation unit 1 of the sequence data conversion processing system 1000, a control signal CTL3 is generated to instruct the control unit to execute a prediction process, and the control signal CTL3 is input to the trained language model 13.

[0128] The trained language model 13 generates a token sequence of any length with the input data set as "none" in accordance with the control signal CTL3, and outputs the generated token sequence to the selector SEL11 as data D13. It is assumed here that the trained language model 13 generates a token sequence of any length that constitutes a sentence in a second language (e.g., English).

[0129] The control unit generates a selection signal sel1 which instructs the data D13 to be output to the pseudo monolingual data storage unit DB3_m as data Do1.En(special).

[0130] The selector SEL11 outputs the data D13 to the pseudo monolingual data storage unit DB3_m as data Do1.En(special) in accordance with the selection signal sel1 generated as described above.

[0131] By repeatedly executing the above process, a large amount of pseudo-monolingual data (pseudo-monolingual data in the second language of the application target field) can be generated and stored in the pseudo-monolingual data storage unit DB3_m.

[0132] (Step S21): In step S21, a learning process of the base machine translation model is executed. Specifically, in the pseudo-parallel data generating unit 2 of the sequence data conversion processing system 1000, a learning process of the machine translation model 23 (base machine translation model) is executed using large-scale parallel translation data that pairs data of a first language (e.g., Japanese) in a different field with data of a corresponding second language (e.g., English) stored in the parallel translation data storage unit DB4_p.

[0133] As shown in FIG. 9, the bilingual data in the first language and the second language stored in the bilingual data storage unit DB4_p is input to the data input interface 21 of the pseudo-bilingual data generating unit 2 as data Di21.En-Ja(general).

[0134] The data input interface 21 outputs the data Di21.En-Ja (general) as data D21 to the input data acquisition unit 12 in accordance with the control signal CTL21. Note that in step S21, the control signal CTL21 generated by the control unit is a signal for controlling the data from the bilingual data storage unit DB4_p to be output to the input data acquisition unit 22.

[0135] The input data acquisition unit 22 generates data (machine translation learning input data) to be input to the machine translation model 23 from the data D21 in accordance with the control signal CTL22 instructing to execute the learning process of the base machine translation model, outputs the generated data as data D22 to the machine translation model 23, and generates correct answer data for the learning process of the machine translation from the data D21, and outputs the generated correct answer data as correct answer data D21_correct to the output data evaluation unit 14. Here, the data to be input to the machine translation model 23 (machine translation learning input data) is data of a second language (e.g., English) included in the bilingual data Di21.En-Ja(general), and the correct answer data D21_correct is data of a first language (e.g., Japanese) included in the bilingual data Di21.En-Ja(general) (data paired with the data of the second language).

[0136] Data D22 output from the input data acquisition unit 22 is input to the machine translation model 23 and processed by the machine translation model 23. Data processed by the machine translation model 23 (output data from the machine translation model 23) is output to the selector SEL121 as data D23.

[0137] The control unit generates a selection signal sel21 that instructs the output data evaluation unit 24 to output the data D23 as data D24.

[0138] The selector SEL21 outputs the data D23 to the output data evaluation unit 24 as data D24 in accordance with the selection signal sel21 generated as described above.

[0139] The output data evaluation unit 24 receives the correct data D21_correct output from the input data acquisition unit 22 and the data D24 output from the selector SEL21. The output data evaluation unit 24 evaluates the loss (e.g., error) between the data D24 and the correct data D21_correct, for example, by a loss function, and generates an update parameter update2(θ2) for updating the parameter of the machine translation model 23 based on the evaluation result. Then, the output data evaluation unit 24 outputs the generated update parameter update2(θ2) to the machine translation model 23.

[0140] Then, the machine translation model 23 receives the update parameter update2(θ2) output from the output data evaluation unit 24, and updates the parameters of the machine translation model 23 (for example, a neural network model) based on the update parameter update2(θ2).

[0141] When the output data evaluation unit 24 determines that the above process satisfies the following condition (condition for ending the learning process), it determines that the learning process of the machine translation model 23 has ended. (1) The loss (for example, error) between the data D24 and the correct answer data D21_correct is within a predetermined range. (2) Even if the parameters of the machine translation model 23 are updated, the amount of change in loss (eg, error) between the data D24 and the correct answer data D21_correct is less than or equal to a predetermined value.

[0142] Then, the machine translation model 23 in which the parameters (optimum parameters) are set when the above-mentioned condition for terminating the learning process is satisfied is regarded as a trained machine translation model in the machine translation learning process.

[0143] (Step S22): In step S22, a pseudo-bilingual data generation process is executed using the base machine translation model. Specifically, in the pseudo-bilingual data generation unit 2 of the sequence data conversion processing system 1000, a machine translation process (machine translation process from the second language (e.g., English) to the first language (e.g., Japanese)) is performed using the trained base machine translation model on the pseudo-monolingual data Di22.En(special) in the second language of the application destination field input from the pseudo-monolingual data storage unit DB3_m to obtain machine translation result data Do.Ja(special) corresponding to the pseudo-monolingual data Di22.En(special) in the second language of the application destination field, and the pseudo-monolingual data Di22.En(special) and the obtained machine translation result data Do.Ja(special) are paired to generate pseudo-bilingual data in the application destination field.

[0144] As shown in FIG. 10, pseudo-monolingual data Di22.En(special) in the second language of the application target field is input to a data input interface 21 of the pseudo-parallel data generating unit 2 from the pseudo-monolingual data storage unit DB3_m.

[0145] The data input interface 21 outputs the data Di22.En(special) as data D21 to the input data acquisition unit 22 in accordance with the control signal CTL21. Note that in step S22, the control signal CTL21 generated by the control unit is a signal for controlling the pseudo-monolingual data Di22.En(special) input from the pseudo-monolingual data storage unit DB3_m to be output to the input data acquisition unit 22.

[0146] The input data acquisition unit 22 outputs the data D21 (=Di22.En(special)) to the machine translation model 23 and the output data acquisition unit 25 as data D22 in accordance with the control signal CTL22 instructing to execute machine translation processing.

[0147] The data D22 output from the input data acquisition unit 22 is input to the machine translation model 23 and processed by the machine translation model 23.

[0148] The data processed by the machine translation model 23 (output data from the machine translation model 23) is output to the selector SEL21 as data D23.

[0149] The control unit generates a selection signal sel21 that instructs the output data acquisition unit 25 to output the data D23 as data Do.Ja(special).

[0150] The selector SEL21 outputs the data D23 to the output data acquisition unit 25 as data Do.Ja(special) in accordance with the selection signal sel21 generated as described above.

[0151] The output data acquisition unit 25 inputs the data D22 output from the input data acquisition unit 22 and the data Do.Ja(special) output from the selector SEL21. Then, the output data acquisition unit 25 generates pseudo-translation data Do2.En-Ja(special) by pairing the data D22 with the data Do.Ja(special) that is the machine translation result of the data D22. Then, the output data acquisition unit 25 outputs the generated pseudo-translation data Do2.En-Ja(special) to the pseudo-translation data storage unit DB5_p.

[0152] Then, by performing the above processing on the large amount of data stored in the pseudo-monolingual data storage unit DB3_m, a large amount of pseudo-parallel data can be generated, and by storing the pseudo-parallel data in the pseudo-parallel data storage unit DB5_p, a large amount of pseudo-parallel data in the target field can be obtained.

[0153] (Step S31): In step S31, a learning process of the machine translation model is executed. Specifically, in the machine translation unit 3 of the sequence data conversion processing system 1000, a learning process of the machine translation model 33 is executed using bilingual data that pairs large-scale data of a second language (e.g., English) in another field stored in the bilingual data storage unit DB4_p with data of the corresponding first language (e.g., Japanese). Furthermore, in the machine translation unit 3, a learning process of the machine translation model 33 is executed using pseudo-bilingual data that pairs large-scale data of a second language (e.g., English) in the application field stored in the pseudo-bilingual data storage unit DB5_p with data of the corresponding first language (e.g., Japanese).

[0154] As shown in FIG. 11, the bilingual data of the first language and the second language stored in the bilingual data storage unit DB4_p is input to the data input interface 31 of the machine translation unit 3 as data Di31.En-Ja(general).

[0155] The data input interface 31 outputs the data Di31.En-Ja (general) as data D31 to the input data acquisition unit 32 in accordance with the control signal CTL31. Note that the control signal CTL31 generated by the control unit in step S31 is a signal for controlling the data from the bilingual data storage unit DB4_p to be output to the input data acquisition unit 32.

[0156] The input data acquisition unit 32 generates data (machine translation learning input data) to be input to the machine translation model 33 from the data D31 in accordance with the control signal CTL32 instructing to execute the learning process of the machine translation model, outputs the generated data as data D32 to the machine translation model 33, and generates correct answer data for the learning process of the machine translation from the data D31, and outputs the generated correct answer data as correct answer data D31_correct to the output data evaluation unit 34. Here, the input data (machine translation learning input data) is data of a first language (e.g., Japanese) included in the bilingual data Di31.En-Ja(general), and the correct answer data D31_correct is data of a second language (e.g., English) included in the bilingual data Di31.En-Ja(general) (data paired with the data of the first language).

[0157] Data D32 output from the input data acquisition unit 32 is input to the machine translation model 33 and processed by the machine translation model 33. Data processed by the machine translation model 33 (output data from the machine translation model 33) is output to the selector SEL31 as data D33.

[0158] The control unit generates a selection signal sel31 that instructs the output data evaluation unit 34 to output the data D33 as data D34.

[0159] The selector SEL31 outputs the data D33 to the output data evaluation unit 34 as data D34 in accordance with the selection signal sel31 generated as described above.

[0160] The output data evaluation unit 34 receives the correct data D31_correct output from the input data acquisition unit 32 and the data D34 output from the selector SEL31. The output data evaluation unit 34 evaluates the loss (e.g., error) between the data D34 and the correct data D31_correct using, for example, a loss function, and generates an update parameter update3(θ3) for updating the parameter of the machine translation model 33 based on the evaluation result. The output data evaluation unit 34 then outputs the generated update parameter update3(θ3) to the machine translation model 33.

[0161] Then, the machine translation model 33 receives the update parameter update3 (θ3) output from the output data evaluation unit 34, and updates the parameters of the machine translation model 33 (for example, a neural network model) based on the update parameter update3 (θ3).

[0162] When the output data evaluation unit 34 determines that the above process satisfies the following condition (condition for ending the learning process), it determines that the learning process of the machine translation model 33 has ended. (1) The loss (for example, error) between the data D34 and the correct answer data D31_correct is within a predetermined range. (2) Even if the parameters of the machine translation model 33 are updated, the amount of change in loss (eg, error) between the data D34 and the correct answer data D31_correct is less than or equal to a predetermined value.

[0163] Then, machine translation model 33 in which parameters (optimum parameters) are set when the above-mentioned condition for terminating the learning process is satisfied is regarded as a trained machine translation model in the machine translation learning process.

[0164] Furthermore, the data in the pseudo-parallel data storage unit DB5_p is used to train (fine-tune) the machine translation model 33 for the trained machine translation model acquired above. Specifically, the following process is executed.

[0165] As shown in FIG. 12, pseudo-parallel data in the first language and the second language stored in the pseudo-parallel data storage unit DB5_p is input to the data input interface 31 of the machine translation unit 3 as data Di32.En-Ja(special).

[0166] The data input interface 31 outputs the data Di32.En-Ja(special) as data D31 to the input data acquisition unit 32 in accordance with the control signal CTL31. Note that the control signal CTL31 generated by the control unit in step S31 is a signal for controlling the data from the pseudo-translation data storage unit DB5_p to be output to the input data acquisition unit 32.

[0167] The input data acquisition unit 32 generates data (machine translation learning input data) to be input to the machine translation model 33 from the data D31 in accordance with the control signal CTL32 instructing to execute a learning process of the machine translation model, outputs the generated data as data D32 to the machine translation model 33, and generates correct answer data for the learning process of the machine translation from the data D31, and outputs the generated correct answer data as correct answer data D31_correct to the output data evaluation unit 34. Here, the input data (machine translation learning input data) is data of a first language (e.g., Japanese) included in the pseudo-translation data Di32.En-Ja(special), and the correct answer data D31_correct is data of a second language (e.g., English) included in the pseudo-translation data Di32.En-Ja(special) (data paired with the data of the first language).

[0168] Data D32 output from the input data acquisition unit 32 is input to the machine translation model 33 and processed by the machine translation model 33. Data processed by the machine translation model 33 (output data from the machine translation model 33) is output to the selector SEL31 as data D33.

[0169] The control unit generates a selection signal sel31 that instructs the output data evaluation unit 34 to output the data D33 as data D34.

[0170] The selector SEL31 outputs the data D33 to the output data evaluation unit 34 as data D34 in accordance with the selection signal sel31 generated as described above.

[0171] The output data evaluation unit 34 receives the correct data D31_correct output from the input data acquisition unit 32 and the data D34 output from the selector SEL31. The output data evaluation unit 34 evaluates the loss (e.g., error) between the data D34 and the correct data D31_correct using, for example, a loss function, and generates an update parameter update3(θ3) for updating the parameter of the machine translation model 33 based on the evaluation result. The output data evaluation unit 34 then outputs the generated update parameter update3(θ3) to the machine translation model 33.

[0172] Then, the machine translation model 33 receives the update parameter update3 (θ3) output from the output data evaluation unit 34, and updates the parameters of the machine translation model 33 (for example, a neural network model) based on the update parameter update3 (θ3).

[0173] When the output data evaluation unit 34 determines that the above process satisfies the following condition (condition for ending the learning process), it determines that the learning process of the machine translation model 33 has ended. (1) The loss (for example, error) between the data D34 and the correct answer data D31_correct is within a predetermined range. (2) Even if the parameters of the machine translation model 33 are updated, the amount of change in loss (eg, error) between the data D34 and the correct answer data D31_correct is less than or equal to a predetermined value.

[0174] Then, machine translation model 33 in which parameters (optimum parameters) are set when the above-mentioned condition for terminating the learning process is satisfied is regarded as a trained machine translation model in the machine translation learning process.

[0175] This makes it possible to obtain a trained model trained on the bilingual data in the bilingual data storage unit DB4_p, and further a trained model (machine translation model) trained on the pseudo-bilingual data in the pseudo-bilingual data storage unit DB5_p.

[0176] The trained machine translation model 33 obtained in this manner can appropriately machine translate first language data in another field into second language data, and can also appropriately machine translate first language data in the field to which it is applied into second language data.

[0177] In the above, the learning process of the machine translation model 33 is described as being performed by first training using the bilingual data in the bilingual data storage unit DB4_p, and then training (fine-tuning) using the pseudo-bilingual data in the pseudo-bilingual data storage unit DB5_p. However, the following method may also be adopted as the training process for the machine translation model 33. (1) Data Mixing: Data (mixed bilingual data) obtained by mixing the bilingual data in the bilingual data storage unit DB4_p and the pseudo-bilingual data in the pseudo-bilingual data storage unit DB5_p may be created, and the data (mixed bilingual data) may be used to perform the learning process of the machine translation model 33. In this case, data may be created to which a tag indicating whether it is bilingual data or pseudo-bilingual data is added, and the data may be used to perform the learning process of the machine translation model 33. In order to ensure performance in both the other field and the application field, the mixing ratio of the bilingual data in the bilingual data storage unit DB4_p and the pseudo-bilingual data in the pseudo-bilingual data storage unit DB5_p may be adjusted by oversampling or undersampling one of the data. (2) Data Mixture Fine-Tuning Method (Part 1) After training using the bilingual data in the bilingual data storage unit DB4_p, the training process of the machine translation model 33 may be performed using data obtained by mixing the pseudo-bilingual data in the pseudo-bilingual data storage unit DB5_p and the bilingual data in the bilingual data storage unit DB4_p. In this case, too, data may be created to which a tag indicating whether it is bilingual data or pseudo-bilingual data is added, and the training process of the machine translation model 33 may be performed using this data. In order to ensure performance in both the other field and the application field, the mixing ratio of the bilingual data in the bilingual data storage unit DB4_p and the pseudo-bilingual data in the pseudo-bilingual data storage unit DB5_p may be adjusted by oversampling or undersampling one of the data. (3) Pseudo-parallel data advance fine-tuning method After learning using the pseudo-parallel data in the pseudo-parallel data storage unit DB5_p, the machine translation model 33 may be trained using the parallel data in the parallel data storage unit DB4_p. (4) Data Mixture Fine-Tuning Method (Part 2) After training using the pseudo-parallel data in the pseudo-parallel data storage unit DB5_p, the training process of the machine translation model 33 may be performed using data obtained by mixing the pseudo-parallel data in the pseudo-parallel data storage unit DB5_p and the parallel data in the parallel data storage unit DB4_p. In this case, too, data may be created to which a tag indicating whether it is parallel data or pseudo-parallel data is added, and the training process of the machine translation model 33 may be performed using this data. In order to ensure performance in both the other field and the application field, the mixing ratio of the parallel data in the pseudo-parallel data storage unit DB4_p and the pseudo-parallel data in the pseudo-parallel data storage unit DB5_p may be adjusted by oversampling or undersampling one of the data.

[0178] (Step S32): In step S32, machine translation processing is performed using the machine translation model acquired in step S31. Specifically, in the machine translation unit 3 of the sequence data conversion processing system 1000, a machine translation process (machine translation process from the first language to the second language) is performed on the data Din.Ja in the first language input from the outside using the trained machine translation model, thereby acquiring data Dout.En in the second language corresponding to the input data Din.Ja in the first language.

[0179] As shown in FIG. 13, data Din.Ja in the first language is input to a data input interface 31 of the machine translation unit 3 from outside.

[0180] The data input interface 31 outputs the data Din.Ja to the input data acquisition unit 32 as data D31 in accordance with the control signal CTL31. Note that in step S32, the control signal CTL31 generated by the control unit is a signal for controlling the data Din.Ja in the first language input from outside to be output to the input data acquisition unit 32.

[0181] The input data acquisition unit 32 outputs the data D31 (=Din.Ja) to the machine translation model 33 as data D32 in accordance with the control signal CTL32 instructing to execute a machine translation process.

[0182] Data D32 output from the input data acquisition unit 32 is input to the machine translation model 33 and processed by the machine translation model 33 (machine translated from the first language to the second language).

[0183] The data processed by the machine translation model 33 (output data from the machine translation model 33) is output to the selector SEL31 as data D33.

[0184] The control unit generates a selection signal sel31 that indicates that the data D33 is to be output to the outside as data Dout.En.

[0185] The selector SEL31 outputs the data D33 to the outside as the data Dout.En in accordance with the selection signal sel31 generated as described above.

[0186] The machine translation model 33 is a model that can appropriately machine translate data in a first language of another field into data in a second language of another field, and can machine translate data in a first language of the target field into data in a second language of the target field (a model that has been trained to do so in step S31).

[0187] Therefore, by processing as described above, the sequence data conversion processing system 1000 can properly machine translate data in a first language of another field into data in a second language of another field, and can machine translate data in a first language of the target field into data in a second language of the target field.

[0188] As described above, in the sequence data conversion processing system 1000, a pre-learning process of a language model is performed using a large amount of monolingual data from other domains stored in the first monolingual data storage unit DB1_m, and further, a domain adaptation process of the language model is performed using monolingual data from the destination domain stored in the second monolingual data storage unit DB2_m, thereby acquiring a language model capable of generating pseudo-monolingual data for the destination domain.

[0189] The sequence data conversion processing system 1000 uses the language model to generate pseudo-monolingual data for the target field, and then uses a base machine translation model trained on bilingual data from another field to machine translate the pseudo-monolingual data for the target field generated as described above, thereby obtaining pseudo-bilingual data for the target field.

[0190] In the sequence data conversion processing system 1000, a machine translation model is trained using the bilingual data of another field and the pseudo bilingual data obtained above, and machine translation processing is performed using the trained machine translation model, thereby enabling accurate machine translation processing in the target field.

[0191] In other words, the sequence data conversion processing system 1000 can automatically generate pseudo-parallel data for a target field (a field that is the target of machine translation) using small-scale monolingual data in the target field, and can appropriately perform machine translation in the target field.

[0192] In the above description, the source language of the machine translation processing in the machine translation unit 3 is the first language (e.g., Japanese) and the target language is the second language (e.g., English). However, the sequence data conversion processing system 1000 may be constructed with the source language being the second language (e.g., English) and the target language being the first language (e.g., Japanese).

[0193] [Second embodiment] The second embodiment will be described below with reference to the drawings. Note that the same parts as those in the above-mentioned embodiment are given the same reference numerals and detailed description will be omitted.

[0194] <2.1: Configuration of sequence data conversion processing system (personalized adaptive machine translation processing system)> Figure 14 shows the 2 FIG. 2 is a schematic diagram of a sequence data conversion processing system 2000 according to an embodiment (in the case of a system that executes a machine translation process capable of personalization adaptation).

[0195] In this embodiment, a case (one example) where a machine translation process capable of personalization is performed as the sequence data conversion processing system 2000 will be described. Specifically, in the case where bilingual data reflecting the expression characteristics of a specific individual and large-scale bilingual data does not exist, a case where a sequence data conversion processing system 2000 (personalized machine translation processing system) that performs machine translation processing from a first language (e.g., French) to a second language (e.g., English) with high accuracy while reflecting the expression characteristics of a specific individual will be described. Note that in this embodiment, pseudo monolingual data and pseudo bilingual data are created using monolingual data to which a personal identifier speakerID, which is a tag for identifying an individual, is added, and machine translation processing is performed using the data to which the personal identifier speakerID is added.

[0196] As shown in FIG. 14, the sequence data conversion processing system 2000 includes a first monolingual data storage unit DB1_m, a speaker-information-attached monolingual data storage unit DB21_m, a pseudo-monolingual data generation unit 1B, a pseudo-monolingual data storage unit DB22_m, a bilingual data storage unit DB23_p, a pseudo-bilingual data generation unit 2B, a pseudo-bilingual data storage unit DB24_p, and a machine translation unit 3B.

[0197] The first monolingual data storage unit DB1_m has the same configuration and functions as the first monolingual data storage unit DB1_m in the first embodiment.

[0198] The speaker-information-attached monolingual data storage unit DB21_m is a storage unit that stores data in one language (e.g., a second language) to be subjected to machine translation processing, to which speaker information that identifies an individual (speaker) is attached. The speaker-information-attached monolingual data storage unit DB21_m is realized, for example, by a database.

[0199] The pseudo-monolingual data generation unit 1B has a learnable model (e.g., a language model based on a neural network) and performs pre-learning using monolingual data of one of the languages ​​to be subjected to machine translation processing (the same language as the language stored in the monolingual data storage unit DB21_m with speaker information) stored in the first monolingual data storage unit DB1_m to obtain a pre-trained model.

[0200] Furthermore, the pseudo-monolingual data generation unit 1B performs a learning process (learning process for personalization adaptation) on the pre-trained model using monolingual data with speaker information of one of the languages ​​(e.g., a second language) to be subjected to the machine translation process, which is stored in the monolingual data with speaker information storage unit DB21_m, to obtain a trained model.

[0201] Furthermore, the pseudo-monolingual data generation unit 1B uses the trained language model acquired as described above to perform a pseudo-monolingual data generation process based on an arbitrary input personal identifier speakerID, and acquires personalized and adapted monolingual data. Note that the personalized and adapted monolingual data acquired by the pseudo-monolingual data generation process is not generated by a human being, and therefore this data is called pseudo-monolingual data.

[0202] The pseudo-monolingual data generating unit 1B outputs the thus acquired personalized pseudo-monolingual data to the pseudo-monolingual data storage unit DB22_m.

[0203] As shown in FIG. 15, the pseudo monolingual data generation unit 1B includes a data input interface 11B, an input data acquisition unit 12B, a language model 13B, a selector SEL11, and an output data evaluation unit .

[0204] The data input interface 11B inputs data output from the first monolingual data storage unit DB1_m (hereinafter referred to as Di1.En(general)), data output from the speaker information-attached monolingual data storage unit DB21_m (hereinafter referred to as data Di2.En(speakerID)), a personal identifier speakerID input from the outside, and a control signal CTL1A output from a control unit (not shown) that controls the sequence data conversion processing system 1000. In accordance with the control signal CTL1A, the data input interface 11B inputs any one of data D1.En(general) output from the first monolingual data storage unit DB1_m, data Di1.En(speakerID) output from the speaker information-attached monolingual data storage unit DB21_m, and a personal identifier speakerID input from the outside, and outputs the input data to the input data acquisition unit 12 as data D11.

[0205] The input data acquisition unit 12 receives the data D11 and a control signal CTL2 output from the control unit.

[0206] (1) When the control signal CTL2 instructs to perform pre-learning (when performing pre-learning), the input data acquisition unit 12B generates data (pre-learning data) to be input to the language model 13B from the data D11, outputs the generated data to the language model 13B as data D12, and also generates correct answer data for pre-learning from the data D11, and outputs the generated correct answer data to the output data evaluation unit 14 as correct answer data D11_correct.

[0207] (2) Furthermore, when the control signal CTL2 instructs to execute a learning process for personalization adaptation, the input data acquisition unit 12 generates data to be input to the language model 13B (learning data for personalization adaptation) from the data D11 and outputs the generated data to the language model 13B as data D12, and also generates correct answer data for learning for personalization adaptation from the data D11 and outputs the generated correct answer data as correct answer data D11_correct to the output data evaluation unit 14. In this case, it is assumed that the data D11 has a personal identifier speakerID added to the beginning of the token sequence.

[0208] (3) Furthermore, when the control signal CTL2 instructs to execute a prediction process (a process using a trained model), the input data acquisition unit 12B outputs the data D11 (=speaker ID) to the language model 13B.

[0209] The language model 13B is a learnable model, and is a model for performing a learning process for personalized adaptation (for example, a language model using a neural network).

[0210] During learning (when performing pre-learning), language model 13B learns to treat input data as a token sequence and to output correct output data (the input data itself (e.g., a token following the token sequence that is the input data)). For example, when performing learning processing using the sentence "I have a cat.", language model 13B performs learning processing so as to output the following correct output data when the input data shown below is input. (1st time) Input data: "", Correct output data: "I" (2nd time) Input data: "I", correct output data: "have" (3rd time) Input data: "I have", Correct output data: "a" (4th time) Input data: "I have a", Correct output data: "cat" (5th time) Input data: "I have a cat", Correct answer output data: "." During learning (when learning for personalization adaptation is performed), language model 13B learns to treat input data as a token sequence with a personal identifier speakerID added to the beginning, and to output correct output data (the input data itself (e.g., the token following the token sequence that is the input data)). For example, when performing learning processing using the sentence "I have a cat.", language model 13B performs learning processing so as to output the following correct output data when the input data shown below is input. (1st time) Input data: "", Correct output data: "(speakerID)" (2nd time) Input data: "(speakerID)", correct output data: "I" (3rd time) Input data: "(speakerID) I", correct output data: "have" (4th time) Input data: "(speakerID) I have", Correct output data: "a" (5th time) Input data: "(speakerID) I have a", Correct output data: "cat" (6th time) Input data: "(speakerID) I have a cat", Correct answer output data: "." Furthermore, during prediction, the language model 13B takes "(speakerID)" (personal identifier speakerID) as input data and outputs a token sequence of any length as output data. During prediction, the language model 13 outputs output data, for example, as follows: (1st time) Input data: "(speakerID)", Output data: "(token 1)" (2nd time) Input data: "(speakerID) (token 1)", Output data: "(token 2)" (3rd time) Input data: "(speakerID) (token 1) (token 2)", Output data: "(token 3)" ... As described above, the language model 13B outputs a token sequence of any length during prediction.

[0211] During learning (when pre-learning is performed and when a learning process for personalization adaptation is performed) (when pre-learning is performed and when a control signal CTL3 instructing to perform learning for personalization adaptation is input), the language model 13B outputs data including processing result data obtained by processing the input data D12 by the language model 13 to the selector SEL11 as data D13.

[0212] Furthermore, during prediction, the language model 13B generates a token sequence of any length using input data as "(speakerID)" (personal identifier speakerID) and outputs data including the generated token sequence to the selector SEL11 as data D13.

[0213] In addition, the language model 13B uses the update parameter update1B(θ 1B ) and enter the update parameter update1B(θ 1B ), update the parameters of a language model (e.g., a neural network model).

[0214] Furthermore, the language model 13B performs a prediction process when the learning process is completed and optimal parameters are set (trained model). That is, when a control signal CTL3 instructing to execute a prediction process is input, the language model 13B executes a prediction process based on the input data D12 (personal identifier speakerID) and generates personalized and adapted monolingual data D13 (pseudo monolingual data D13). Then, the language model 13B outputs the generated data D13 to the selector SEL11.

[0215] The selector SEL11 receives data D13 output from the language model 13B and a selection signal sel1 output from the control unit. In accordance with the selection signal sel1, the selector SEL11 outputs data D13 to the output data evaluation unit 14 as data D14, or outputs data D13 to the pseudo monolingual data storage unit DB22_m as data Do1.En(speakerID).

[0216] The output data evaluation unit 14 receives the correct data D11_correct output from the input data acquisition unit 12 and the data D14 output from the selector SEL11. The output data evaluation unit 14 evaluates the loss (e.g., error) between the data D14 and the correct data D11_correct using, for example, a loss function, and selects an update parameter update1B(θ 1B Then, the output data evaluation unit 14 generates the update parameter update1B(θ 1B ) to the language model 13B.

[0217] The pseudo-monolingual data storage unit DB22_m receives the pseudo-monolingual data generated by the pseudo-monolingual data generation unit 1B and stores the data. In addition, the pseudo-monolingual data storage unit DB22_m reads out data stored in the pseudo-monolingual data storage unit DB22_m in accordance with a data read command from the pseudo-parallel data generation unit 2B, and outputs the read out data to the pseudo-parallel data generation unit 2B.

[0218] The bilingual data storage unit DB23_p is a storage unit that stores bilingual data (data in a first language paired with data in a second language that is data obtained by translating the data in the first language into the second language). The bilingual data storage unit DB23_p is realized by, for example, a database.

[0219] The pseudo-translation data generation unit 2B is equipped with a trainable model (for example, a machine translation model using a neural network) and performs training using the bilingual data stored in the bilingual data storage unit DB23_p to obtain a trained model (referred to as a "trained base conversion model").

[0220] In addition, the pseudo-parallel data generation unit 2B performs a pseudo-parallel data generation process on the pseudo-parallel data stored in the pseudo-monolingual data storage unit DB22_m using the trained base conversion model acquired as described above, thereby acquiring pseudo-parallel data.

[0221] The pseudo-parallel data generating unit 2B outputs the pseudo-parallel data acquired as described above to the pseudo-parallel data storage unit DB24_p.

[0222] The pseudo-translation data generating unit 2B includes a data input interface 21, an input data acquiring unit 22, a machine translation model 23B, a selector SEL21, an output data evaluating unit 24, and an output data acquiring unit 25, as shown in FIG.

[0223] The data input interface 21 inputs the pseudo-monolingual data (hereinafter referred to as data Di22.En(speakerID)) output from the pseudo-monolingual data storage unit DB22_m, the bilingual data (hereinafter referred to as data Di21.En-Fr) output from the bilingual data storage unit DB23_p, and a control signal CTL21 output from a control unit (not shown) that controls the sequence data conversion processing system 2000. In accordance with the control signal CTL21, the data input interface 21 selects either the data Di22.En(speakerID) (pseudo-monolingual data with a personal identifier speakerID added to the beginning) output from the pseudo-monolingual data storage unit DB22_m or the bilingual data Di21.En-Fr output from the bilingual data storage unit DB23_p, and outputs the selected data to the input data acquisition unit 22 as data D21.

[0224] The input data acquisition unit 22 receives the data D21 and a control signal CTL22 output from the control unit.

[0225] (1) When the control signal CTL22 instructs to execute learning of the machine translation model 23B (base machine translation model) (when the base machine translation model is being learned), the input data acquisition unit 22 generates data (learning input data) to be input to the machine translation model 23B from data D21 (in this case, the data input interface 21 performs processing so that D21 = Di21.En-Fr) and outputs the generated data to the machine translation model 23B as data D22, and also generates correct answer data for learning from the data D21 (= Di21.En-Fr) and outputs the generated correct answer data to the output data evaluation unit 24 as correct answer data D21_correct.

[0226] (2) Furthermore, when the control signal CTL22 instructs the input data acquisition unit 22 to execute prediction processing (machine translation processing) (when executing prediction processing (machine translation processing) using a learned model of the base machine translation model), the input data acquisition unit 22 outputs data D21 (in this case, the data input interface 21 performs processing so that D21 = Di22.En (speakerID)) as data D22 to the machine translation model 23B and the output data acquisition unit 25.

[0227] The machine translation model 23B is a trainable model, and is a model for learning machine translation (for example, a machine translation model using a neural network). The machine translation model 23B inputs data D22 output from the input data acquisition unit 22, and acquires output data D23. Then, the machine translation model 23B outputs the data D23 to the selector SEL21.

[0228] In addition, the machine translation model 23B uses the update parameter update2B(θ 2B ) and input the update parameter update2B(θ 2B ), update the parameters of a machine translation model (e.g., a neural network model) based on the result.

[0229] The selector SEL21 receives data D23 output from the machine translation model 23B and a selection signal sel21 output from the control unit. In accordance with the selection signal sel21, the selector SEL21 outputs data D23 to the output data evaluation unit 24 as data D24, or outputs data D23 to the output data acquisition unit 25 as data Do.Fr.

[0230] The output data evaluation unit 24 receives the correct data D21_correct output from the input data acquisition unit 22 and the data D24 output from the selector SEL21. The output data evaluation unit 24 evaluates the loss (e.g., error) between the data D24 and the correct data D21_correct using, for example, a loss function, and selects an update parameter update2B(θ 2B Then, the output data evaluation unit 24 generates the update parameter update2B(θ 2B ) is output to machine translation model 23B.

[0231] The output data acquisition unit 25 receives data D22 (=Do.En) output from the input data acquisition unit 22 and data Do.Fr output from the selector SEL21. Here, data Do.Fr is machine translation result data of data D22, and data D22 is represented as Do.En.

[0232] The output data acquisition unit 25 extracts three pieces of data, (1) the personal identifier speakerID, (2) data in the second language, and (3) data in the first language (translation result data of the data in the second language), from data D22 (=Do.En) (data with the personal identifier speakerID added to the beginning) and data Do.Fr, acquires bilingual data by combining the three extracted pieces of data into a set, and outputs the acquired bilingual data to the pseudo-bilingual data storage unit DB24_p as pseudo-bilingual data Do2.En-Fr(speakerID).

[0233] The pseudo-parallel data storage unit DB24_p receives the pseudo-parallel data Do2.En-Fr(speakerID) generated by the pseudo-parallel data generation unit 2B and stores the data. In addition, the pseudo-parallel data storage unit DB24_p reads out data stored in the pseudo-parallel data storage unit DB24_p in response to a data read command from the machine translation unit 3B, and outputs the read out data to the machine translation unit 3B.

[0234] The machine translation unit 3B has a trainable model (e.g., a machine translation model using a neural network) and performs training using (1) the bilingual data stored in the bilingual data storage unit DB23_p and (2) the pseudo-bilingual data stored in the pseudo-bilingual data storage unit DB24_p to obtain a trained model.

[0235] Furthermore, the machine translation unit 3B performs machine translation processing using the trained model (machine translation model) acquired as described above.

[0236] As shown in FIG. 17, the machine translation unit 3A includes a data input interface 31B, an input data acquisition unit 32B, a machine translation model 33B, a selector SEL31, and an output data evaluation unit .

[0237] The data input interface 31B inputs the bilingual data output from the bilingual data storage unit DB23_p (hereinafter referred to as data Di31.En-Fr), the pseudo-bilingual data output from the pseudo-bilingual data storage unit DB24_p (hereinafter referred to as data Di32.En-Fr(speakerID)), the source language data of the machine translation with the personal identifier speakerID added to the beginning (hereinafter referred to as data Din.Fr(speakerID)), and a control signal CTL31 output from a control unit (not shown) that controls the sequence data conversion processing system 2000. In accordance with the control signal CTL31, the data input interface 31B selects one from among the bilingual data Di31.En-Fr output from the bilingual data storage unit DB23_p, the pseudo-bilingual data Di32.En-Fr(speakerID) output from the pseudo-bilingual data storage unit DB24_p, and the machine translation source language data Din.Fr(speakerID), and outputs the selected data to the input data acquisition unit 32B as data D31.

[0238] The input data acquisition unit 32B receives the data D31 and a control signal CTL32 output from the control unit.

[0239] (1) When the control signal CTL32 instructs to train the machine translation model 33B using the bilingual data Di31.En-Fr (when training the machine translation model using the bilingual data Di31.En-Fr), the input data acquisition unit 32B generates data (learning input data) to be input to the machine translation model 33B from data D31 (in this case, the data input interface 31 performs processing so that D31 = Di31.En-Fr) and outputs the generated data to the machine translation model 33B as data D32. It also generates correct answer data for learning from data D31 (= Di31.En-Fr) and outputs the generated correct answer data to the output data evaluation unit 34 as correct answer data D31_correct.

[0240] (2) When the control signal CTL32 instructs the input data acquisition unit 32B to train the machine translation model 33B using the pseudo-translation data Di32.En-Fr(speakerID) (when the machine translation model is trained using the pseudo-translation data Di32.En-Fr(speakerID)), the input data acquisition unit 32B generates data (learning input data) to be input to the machine translation model 33B from data D31 (in this case, the data input interface 31 performs processing so that D31 = Di32.En-Fr(speakerID)), outputs the generated data to the machine translation model 33B as data D32, and also generates correct answer data for training from the data D31 (= Di32.En-Fr(speakerID)), and outputs the generated correct answer data to the output data evaluation unit 34 as correct answer data D31_correct.

[0241] (3) Furthermore, when the control signal CTL32 instructs to execute prediction processing (machine translation processing) (when executing prediction processing (machine translation processing) using the learned model of the machine translation model 33B), the input data acquisition unit 32B outputs data D31 (in this case, the data input interface 31 performs processing so that D31 = Din.Fr (speakerID)) to the machine translation model 33B as data D32.

[0242] The machine translation model 33B is a trainable model, and is a model for learning machine translation (for example, a machine translation model using a neural network). The machine translation model 33B inputs data D32 output from the input data acquisition unit 32B and acquires output data D33. The machine translation model 33B then outputs the data D33 to the selector SEL31.

[0243] In addition, the machine translation model 33B uses the update parameter update3B(θ 3B ) and input the update parameter update3B(θ 3B ), update the parameters of a machine translation model (e.g., a neural network model) based on the result.

[0244] The selector SEL31 receives data D33 output from the machine translation model 33B and a selection signal sel31 output from the control unit. In accordance with the selection signal sel31, the selector SEL31 outputs the data D33 to the output data evaluation unit 34 as data D34, or outputs the data D33 as data Dout.En.

[0245] The output data evaluation unit 34 receives the correct answer data D31_correct output from the input data acquisition unit 32B and the data D34 output from the selector SEL31. The output data evaluation unit 34 evaluates the loss (e.g., error) between the data D34 and the correct answer data D31_correct using, for example, a loss function, and determines an update parameter update3B(θ 3B Then, the output data evaluation unit 34 generates the update parameter update3B(θ 3B ) is output to machine translation model 33B.

[0246] <2.2: Operation of sequence data conversion processing system (personalized adaptive machine translation processing system)> The operation of the sequence data conversion processing system 2000 configured as above will now be described.

[0247] FIG. 18 is a flowchart of the process executed by the sequence data conversion processing system 2000.

[0248] FIG. 19 is a diagram for explaining the pre-learning process of the language model.

[0249] FIG. 20 is a diagram for explaining the learning process for personalized adaptation of a language model.

[0250] FIG. 21 is a diagram for explaining the pseudo monolingual data generation process.

[0251] FIG. 22 is a diagram for explaining the learning process of the base machine translation model.

[0252] FIG. 23 is a diagram for explaining the pseudo-parallel translation data generation process.

[0253] 24 and 25 are diagrams for explaining the learning process of the machine translation model.

[0254] FIG. 26 is a diagram for explaining the machine translation process.

[0255] The operation of the sequence data conversion processing system 1000 will be described below with reference to the flowchart in FIG.

[0256] (Step S311): In step S311, a pre-training process of a language model is executed. Specifically, in the pseudo monolingual data generating unit 1B of the sequence data conversion processing system 2000, a language model 13B is pre-trained by using monolingual data of one language (e.g., a second language) to be subjected to large-scale machine translation stored in the first monolingual data storage unit DB1_m.

[0257] As shown in FIG. 19, monolingual data in the second language stored in the first monolingual data storage unit DB1_m is input as data Di1.En(general) to a data input interface 11B of the pseudo-monolingual data generation unit 1B.

[0258] In accordance with the control signal CTL1A, the data input interface 11B outputs the data Di1.En (general) as data D11 to the input data acquisition unit 12. Note that in step S311, the control signal CTL1A generated by the control unit is a signal for controlling the data from the first monolingual data storage unit DB1_m to be output to the input data acquisition unit 12B.

[0259] The input data acquisition unit 12B generates data to be input to the language model 13B (pre-learning data) from the data D11 in accordance with the control signal CTL2 instructing to execute pre-learning, and outputs the generated data to the language model 13B as data D12. Specifically, the input data acquisition unit 12B sets the token sequence acquired from the data D11 as the data to be input to the language model 13B (pre-learning data).

[0260] Furthermore, the input data acquiring unit 12B generates pre-learning correct answer data from the data D11, and outputs the generated correct answer data as correct answer data D11_correct to the output data evaluating unit 14. Specifically, the input data acquiring unit 12 sets a token following the generated data (pre-learning data) to be input to the language model 13B as correct answer data D11_correct.

[0261] In accordance with a control signal CTL3 instructing to perform pre-learning (when performing pre-learning), the language model 13B inputs data D12 (a token sequence acquired from data D11) output from the input data acquisition unit 12B, processes the data D12 using the language model 13B, and outputs data including the processed result data to the selector SEL11 as data D13.

[0262] The control unit generates a selection signal sel1 that instructs the output data evaluation unit 14 to output the data D13 as data D14.

[0263] The selector SEL11 outputs the data D13 to the output data evaluation unit 14 as data D14 in accordance with the selection signal sel1 generated as described above.

[0264] The output data evaluation unit 14 receives the correct data D11_correct output from the input data acquisition unit 12B and the data D14 output from the selector SEL11. The output data evaluation unit 14 evaluates the loss (e.g., error) between the data D14 and the correct data D11_correct using, for example, a loss function, and determines an update parameter update1B(θ 1B Then, the output data evaluation unit 14 generates the update parameter update1B(θ 1B ) to the language model 13B.

[0265] The language model 13B uses the update parameter update1B(θ 1B ) and enter the update parameter update1B(θ 1B ), update the parameters of a language model (e.g., a neural network model).

[0266] When the output data evaluation unit 14 determines that the above process satisfies the following condition (learning process termination condition), it determines that the pre-learning process of the language model 13B has ended. (1) The loss (eg, error) between the data D14 and the correct answer data D11_correct is within a predetermined range. (2) Even if the parameters of the language model 13B are updated, the amount of change in loss (for example, error) between the data D14 and the correct answer data D11_correct is less than or equal to a predetermined value.

[0267] Then, the language model 13B in which the parameters (optimum parameters) are set when the above-mentioned end condition of the learning process is satisfied is set as the learned language model in the pre-learning process.

[0268] As the language model 13B, for example, the model (GPT-2) disclosed in Document A may be adopted.

[0269] (Step S312): In step S312, a personalized adaptation process of the language model is executed. Specifically, in the pseudo monolingual data generating unit 1B of the sequence data conversion processing system 2000, a learning process for personalized adaptation of the language model 13B is executed using small-scale monolingual data of a second language (e.g., English) stored in the speaker-information-attached monolingual data storage unit DB21_m.

[0270] As shown in Figure 20, monolingual data in the first language (a token sequence preceded by a personal identifier speakerID) stored in the monolingual data storage unit DB3_m and memory unit DB21_m with speaker information is input to the data input interface 11B of the pseudo-monolingual data generation unit 1B as data Di1.En(speakerID) (a token sequence preceded by a personal identifier speakerID).

[0271] The data input interface 11B outputs the data Di2.En(speakerID) to the input data acquisition unit 12B as data D11 in accordance with the control signal CTL1A. Note that the control signal CTL1A generated by the control unit in step S312 is a signal for controlling the reading of the monolingual data of the first language stored in the speaker information-attached monolingual data storage unit DB21_m and inputting the monolingual data to the data input interface 11B.

[0272] The input data acquisition unit 12B generates data to be input to the language model 13B (learning data for personalization adaptation) from the data D11 in accordance with the control signal CTL2 instructing to execute a learning process for personalization adaptation, and outputs the generated data to the language model 13B as data D12. Specifically, the input data acquisition unit 12B sets the token sequence acquired from the data D11 and preceded by the personal identifier speakerID as the data to be input to the language model 13B (learning data for personalization adaptation).

[0273] Furthermore, the input data acquiring unit 12B generates correct answer data for a learning process for personal adaptation of a language model from the data D11, and outputs the generated correct answer data as correct answer data D11_correct to the output data evaluating unit 14. Specifically, the input data acquiring unit 12B sets a token following the data generated to be input to the language model 13B (learning data for personal adaptation) as correct answer data D11_correct.

[0274] In accordance with the control signal CTL3 instructing to perform learning for personalization adaptation (when learning for personalization adaptation is performed), the language model 13B inputs data D12 (a token sequence acquired from data D11 and preceded by a personal identifier speakerID) output from the input data acquisition unit 12B, processes the data D12 using the language model 13B, and outputs data including the processed data to the selector SEL11 as data D13.

[0275] The control unit generates a selection signal sel1 that instructs the output data evaluation unit 14 to output the data D13 as data D14.

[0276] The selector SEL11 outputs the data D13 to the output data evaluation unit 14 as data D14 in accordance with the selection signal sel1 generated as described above.

[0277] The output data evaluation unit 14 receives the correct data D11_correct output from the input data acquisition unit 12B and the data D14 output from the selector SEL11. The output data evaluation unit 14 evaluates the loss (e.g., error) between the data D14 and the correct data D11_correct using, for example, a loss function, and determines an update parameter update1B(θ 1B Then, the output data evaluation unit 14 generates the update parameter update1B(θ 1B ) to the language model 13B.

[0278] The language model 13B uses the update parameter update1B(θ 1B ) and enter the update parameter update1B(θ 1B ), update the parameters of a language model (e.g., a neural network model).

[0279] When the output data evaluation unit 14 determines that the above process satisfies the following condition (learning process termination condition), it determines that the learning process of the language model 13B has ended. (1) The loss (eg, error) between the data D14 and the correct answer data D11_correct is within a predetermined range. (2) Even if the parameters of the language model 13B are updated, the amount of change in loss (for example, error) between the data D14 and the correct answer data D11_correct is less than or equal to a predetermined value.

[0280] Then, the language model 13B in which the parameters (optimum parameters) are set when the above-mentioned end condition of the learning process is satisfied is set as the trained model of the language model learning process (trained language model).

[0281] (Step S313): In step S313, pseudo-monolingual data generation processing is executed using the trained language model (see FIG. 21). Specifically, in the pseudo-monolingual data generation unit 1B of the sequence data conversion processing system 2000, a control signal CTL1A instructing the control unit to input data from outside is generated, and the control signal CTL1A is output to the data input interface 11B.

[0282] The data input interface 11B inputs the personal identifier speakerID from the outside in accordance with the control signal CTL1A, and outputs it to the input data acquisition unit 12B as data D11. Note that here, the personal identifier speakerID input from the outside is assumed to be an arbitrary personal identifier speakerID.

[0283] The input data acquisition unit 12B outputs the input data D11 including the individual identifier speakerID as data D12 to the trained language model 13B in accordance with the control signal CTL2.

[0284] The trained language model 13B generates a token sequence of any length based on the personal identifier speakerID input as data D12 (the input data is "(speakerID)" (personal identifier speakerID)) in accordance with a control signal CTL3 that instructs the control unit to execute a prediction process, and outputs the generated token sequence to the selector SEL11 as data D13. Note that it is assumed here that the trained language model 13B generates tokens of any length that constitute sentences in a second language (e.g., English).

[0285] The control unit generates a selection signal sel1 that indicates that the data D13 is to be output to the pseudo monolingual data storage unit DB22_m as data Do1.En(speakerID).

[0286] The selector SEL11 outputs the data D13 to the pseudo monolingual data storage unit DB22_m as data Do1.En(speakerID) in accordance with the selection signal sel1 generated as described above.

[0287] Then, by repeatedly executing the above process, a large amount of pseudo-monolingual data Do1.En(speakerID) (pseudo-monolingual data in a second language with a personal identifier speakerID at the beginning (a token sequence in a second language with a personal identifier speakerID at the beginning) can be generated, and the generated pseudo-monolingual data Do1.En(speakerID) can be stored in the pseudo-monolingual data storage unit DB22_m.

[0288] (Step S321): In step S321, a learning process of the base machine translation model is executed. Specifically, in the pseudo-parallel data generating unit 2B of the sequence data conversion processing system 2000, a learning process of the machine translation model 23B (base machine translation model) is executed using large-scale parallel translation data that pairs data of a first language (e.g., French) and the corresponding data of a second language (e.g., English) stored in the parallel translation data storage unit DB23_p.

[0289] As shown in FIG. 22, the bilingual data in the first language and the second language stored in the bilingual data storage unit DB23_p is input as data Di21.En-Fr to the data input interface 21 of the pseudo bilingual data generating unit 2B.

[0290] The data input interface 21 outputs the data Di21.En-Fr as data D21 to the input data acquisition unit 12 in accordance with the control signal CTL21. Note that the control signal CTL21 generated by the control unit in step S321 is a signal for controlling the data from the bilingual data storage unit DB23_p to be output to the input data acquisition unit 22.

[0291] In accordance with a control signal CTL22 instructing to execute a learning process of the base machine translation model, the input data acquisition unit 22 generates data to be input to the machine translation model 23B (input data for machine translation learning) from the data D21 and outputs the generated data to the machine translation model 23B as data D22, and also generates correct answer data for the machine translation learning process from the data D21 and outputs the generated correct answer data to the output data evaluation unit 14 as correct answer data D21_correct.

[0292] Here, the data input to the machine translation model 23B (machine translation learning input data) is data in a second language (e.g., English) contained in the bilingual data Di21.En-Fr, and the correct answer data D21_correct is data in a first language (e.g., French) contained in the bilingual data Di21.En-Fr (data that is paired with the data in the second language).

[0293] In addition, (1) when the data Di21.En-Fr includes only data in a second language (e.g., English) and data in a first language (e.g., French), the input data acquisition unit 22 determines that the data D22 is the data in the second language (e.g., English) included in the data Di21.En-Fr, and that the correct data D21_correct is the data in the first language (e.g., French) included in the data Di21.En-Fr. (2) When data Di21.En-Fr includes data in a second language (e.g., English), data in a first language (e.g., French), and a personal identifier speakerID, the input data acquisition unit 22 defines data D22 as data in which the personal identifier speakerID included in data Di21.En-Fr is added to the beginning of the data in the second language (e.g., English) included in data Di21.En-Fr, and defines correct data D21_correct as data in the first language (e.g., French) included in data Di21.En-Fr.

[0294] Data D22 output from input data acquisition unit 22 is input to and processed by machine translation model 23B. Data processed by machine translation model 23B (output data from machine translation model 23B) is output to selector SEL121 as data D23.

[0295] The control unit generates a selection signal sel21 that instructs the output data evaluation unit 24 to output the data D23 as data D24.

[0296] The selector SEL21 outputs the data D23 to the output data evaluation unit 24 as data D24 in accordance with the selection signal sel21 generated as described above.

[0297] The output data evaluation unit 24 receives the correct data D21_correct output from the input data acquisition unit 22 and the data D24 output from the selector SEL21. The output data evaluation unit 24 evaluates the loss (e.g., error) between the data D24 and the correct data D21_correct using, for example, a loss function, and determines an update parameter update2B(θ 2B Then, the output data evaluation unit 24 generates the update parameter update2B(θ 2B ) is output to machine translation model 23B.

[0298] The machine translation model 23B uses the update parameter update2B(θ 2B ) and input the update parameter update2B(θ 2B ), the parameters of the machine translation model 23B (e.g., a neural network model) are updated based on the result.

[0299] When the output data evaluation unit 24 determines that the above process satisfies the following condition (learning process end condition), it determines that the learning process of the machine translation model 23B has ended. (1) The loss (for example, error) between the data D24 and the correct answer data D21_correct is within a predetermined range. (2) Even if the parameters of the machine translation model 23B are updated, the amount of change in loss (eg, error) between the data D24 and the correct answer data D21_correct is less than or equal to a predetermined value.

[0300] Then, machine translation model 23B in which parameters (optimum parameters) are set when the above-mentioned condition for terminating the learning process is satisfied is set as a trained machine translation model in the machine translation learning process.

[0301] (Step S322): In step S322, a pseudo-bilingual data generation process is executed using the base machine translation model. Specifically, in the pseudo-bilingual data generation unit 2B of the sequence data conversion processing system 2000, a machine translation process (machine translation process from the second language to the first language) is performed using the trained base machine translation model on the pseudo-monolingual data Di22.En(speakerID) in the first language (a token sequence with a personal identifier speakerID at the beginning) input from the pseudo-monolingual data storage unit DB22_m to obtain machine translation result data Do.Fr corresponding to the pseudo-monolingual data Di22.En(speakerID) in the second language, and the pseudo-monolingual data Di22.En(speakerID) is paired with the obtained machine translation result data Do.Fr to generate pseudo-bilingual data.

[0302] As shown in FIG. 23, pseudo-monolingual data Di22.En(speakerID) in the second language (pseudo-monolingual data in the second language with the personal identifier speakerID added to the beginning) is input from the pseudo-monolingual data storage unit DB22_m to the data input interface 21 of the pseudo-translation data generation unit 2B.

[0303] The data input interface 21 outputs the data Di22.En(speakerID) as data D21 to the input data acquiring unit 22 in accordance with the control signal CTL21. Note that in step S322, the control signal CTL21 generated by the control unit is a signal for controlling the pseudo-monolingual data Di22.En(speakerID) input from the pseudo-monolingual data storage unit DB22_m to be output to the input data acquiring unit 22.

[0304] The input data acquisition unit 22 outputs the data D21 (=Di22.En(speakerID)) to the machine translation model 23B and the output data acquisition unit 25 as data D22 in accordance with the control signal CTL22 instructing to execute a machine translation process.

[0305] Data D22 output from input data acquisition unit 22 is input to machine translation model 23B and processed by machine translation model 23B.

[0306] The data processed by the machine translation model 23B (output data from the machine translation model 23B) is output to the selector SEL21 as data D23.

[0307] The control unit generates a selection signal sel21 that instructs the output data acquisition unit 25 to output the data D23 as data Do.Fr.

[0308] The selector SEL21 outputs the data D23 to the output data acquisition unit 25 as the data Do.Fr in accordance with the selection signal sel21 generated as described above.

[0309] The output data acquisition unit 25 inputs data D22 (=Do.En) (data in a second language (e.g., English) with a personal identifier speakerID added to the beginning) output from the input data acquisition unit 22 and data Do.Fr (data in a first language (e.g., French)) output from the selector SEL21. The output data acquisition unit 25 then extracts three pieces of data, namely (1) the personal identifier speakerID, (2) the second language data, and (3) the first language data (data resulting from the translation of the second language data), from data D22 (=Do.En) (data in a second language (e.g., English) with a personal identifier speakerID added to the beginning) and data Do.Fr (data in a first language (e.g., French)) which is data resulting from the machine translation of the second language data included in data D22, and generates pseudo-translation data Do2.En-Fr by combining the three pieces of extracted data into one set. Then, the output data acquisition unit 25 outputs the generated pseudo-parallel data Do2.En-Fr to the pseudo-parallel data storage unit DB24_p.

[0310] Then, by performing the above processing on the large amount of data stored in the pseudo-monolingual data storage unit DB22_m, a large amount of pseudo-translation data (pseudo-translation data assigned a personal identifier speakerID) can be generated, and by storing the pseudo-translation data in the pseudo-translation data storage unit DB24_p, a large amount of pseudo-translation data can be obtained.

[0311] (Step S331): In step S331, a learning process of the machine translation model is executed. Specifically, in the machine translation unit 3B of the sequence data conversion processing system 2000, a learning process of the machine translation model 33B is executed using large-scale bilingual data that pairs data of a first language (e.g., French) and the corresponding data of a second language (e.g., English) stored in the bilingual data storage unit DB23_p.

[0312] When the data stored in the bilingual data storage unit DB23_p includes data of a second language (e.g., English), data of a first language (e.g., French), and a personal identifier speakerID, the machine translation unit 3B of the sequence data conversion processing system 2000 performs a learning process for the machine translation model 33B using bilingual data that is a set of three items: data of the second language (e.g., English), data of the first language (e.g., French), and a personal identifier speakerID.

[0313] Furthermore, in the machine translation unit 3B, a learning process is performed for the machine translation model 33B using data that is a set of three items: data in a first language (e.g., French) stored in the pseudo-translation data storage unit DB24_p, data in a corresponding second language (e.g., English), and a personal identifier speakerID.

[0314] As shown in FIG. 24, the bilingual data of the first language and the second language stored in the bilingual data storage unit DB23_p is input to a data input interface 31B of the machine translation unit 3B as data Di31.En-Fr.

[0315] Data input interface 31B outputs data Di31.En-Fr as data D31 to input data acquisition unit 32B in accordance with control signal CTL31. Note that in step S331, control signal CTL31 generated by the control unit is a signal for controlling data from bilingual data storage unit DB23_p to be output to input data acquisition unit 32B.

[0316] The input data acquisition unit 32B generates data (machine translation learning input data) to be input to the machine translation model 33B from the data D31 in accordance with the control signal CTL32 instructing to execute a learning process of the machine translation model, outputs the generated data as data D32 to the machine translation model 33B, and generates correct answer data for the learning process of the machine translation from the data D31, and outputs the generated correct answer data as correct answer data D31_correct to the output data evaluation unit 34. Here, the data to be input to the machine translation model 33B (machine translation learning input data) is data of a first language (e.g., French) included in the bilingual data Di31.En-Fr, and the correct answer data D31_correct is data of a second language (e.g., English) included in the bilingual data Di31.En-Fr (data paired with the data of the first language).

[0317] In addition, when the data Di31.En-Fr includes data in a second language (e.g., English), data in a first language (e.g., French), and a personal identifier speakerID, the input data acquisition unit 32B defines data D32 as data in which the personal identifier speakerID included in the data Di31.En-Fr is added to the beginning of the data in the first language (e.g., French) included in the data Di31.En-Fr, and defines correct data D31_correct as the data in the second language (e.g., English) included in the data Di31.En-Fr.

[0318] Data D32 output from input data acquisition unit 32B is input to and processed by machine translation model 33B. Data processed by machine translation model 33B (output data from machine translation model 33B) is output to selector SEL31 as data D33.

[0319] The control unit generates a selection signal sel31 that instructs the output data evaluation unit 34 to output the data D33 as data D34.

[0320] The selector SEL31 outputs the data D33 to the output data evaluation unit 34 as data D34 in accordance with the selection signal sel31 generated as described above.

[0321] The output data evaluation unit 34 receives the correct answer data D31_correct output from the input data acquisition unit 32B and the data D34 output from the selector SEL31. The output data evaluation unit 34 evaluates the loss (e.g., error) between the data D34 and the correct answer data D31_correct using, for example, a loss function, and determines an update parameter update3B(θ 3B Then, the output data evaluation unit 34 generates the update parameter update3B(θ 3B ) is output to machine translation model 33B.

[0322] The machine translation model 33B uses the update parameter update3B(θ 3B ) and input the update parameter update3B(θ 3B ), the parameters of the machine translation model 33B (e.g., a neural network model) are updated based on the result.

[0323] When the output data evaluation unit 34 determines that the above process satisfies the following condition (learning process end condition), it determines that the learning process of the machine translation model 33B has ended. (1) The loss (for example, error) between the data D34 and the correct answer data D31_correct is within a predetermined range. (2) Even if the parameters of the machine translation model 33B are updated, the amount of change in loss (for example, error) between the data D34 and the correct answer data D31_correct is less than or equal to a predetermined value.

[0324] Then, machine translation model 33B in which parameters (optimum parameters) are set when the above-mentioned condition for terminating the learning process is satisfied is set as a trained machine translation model in the machine translation learning process.

[0325] Furthermore, the machine translation model 33B is trained (fine-tuned) for the trained machine translation model acquired above using data in the pseudo-parallel data storage unit DB24_p. Specifically, the following process is executed.

[0326] 25, pseudo-translation data, which is a set of three data items, (1) a personal identifier speakerID, (2) second language data, and (3) first language data (translation result data of the second language data) stored in the pseudo-translation data storage unit DB24_p, is input as data Di32.En-Fr(speakerID) to a data input interface 31B of a machine translation unit 3B. Specifically, the pseudo-translation data Di32.En-Fr(speakerID), which is a set of a personal identifier speakerID, a token sequence in the first language, and a token sequence in the second language, is input to the data input interface 31B.

[0327] The data input interface 31B outputs the data Di32.En-Fr(speakerID) as data D31 to the input data acquisition unit 32B in accordance with the control signal CTL31. Note that the control signal CTL31 generated by the control unit in step S331 is a signal for controlling the data from the pseudo-translation data storage unit DB24_p to be output to the input data acquisition unit 32B.

[0328] In accordance with a control signal CTL32 instructing to execute a learning process using a machine translation model, the input data acquisition unit 32B generates data to be input to the machine translation model 33B (input data for machine translation learning) from the data D31 and outputs the generated data to the machine translation model 33B as data D32, and also generates correct answer data for the machine translation learning process from the data D31 and outputs the generated correct answer data to the output data evaluation unit 34 as correct answer data D31_correct. Here, the data input to the machine translation model 33B (machine translation learning input data) is 1) data (token sequence) in a first language (e.g., French) included in the pseudo-translation data Di32.En-Fr(speakerID) with the personal identifier speakerID added to the beginning, and the correct data D31_correct is data (token sequence) in a second language (e.g., English) included in the pseudo-translation data Di32.En-Fr(speakerID) (data (token sequence) paired with the above-mentioned first language data (token sequence)).

[0329] Data D32 output from input data acquisition unit 32B is input to and processed by machine translation model 33B. Data processed by machine translation model 33B (output data from machine translation model 33B) is output to selector SEL31 as data D33.

[0330] The control unit generates a selection signal sel31 that instructs the output data evaluation unit 34 to output the data D33 as data D34.

[0331] The selector SEL31 outputs the data D33 to the output data evaluation unit 34 as data D34 in accordance with the selection signal sel31 generated as described above.

[0332] The output data evaluation unit 34 receives the correct answer data D31_correct output from the input data acquisition unit 32B and the data D34 output from the selector SEL31. The output data evaluation unit 34 evaluates the loss (e.g., error) between the data D34 and the correct answer data D31_correct using, for example, a loss function, and determines an update parameter update3B(θ 3B Then, the output data evaluation unit 34 generates the update parameter update3B(θ 3B ) is output to machine translation model 33B.

[0333] The machine translation model 33B uses the update parameter update3B(θ 3B ) and input the update parameter update3B(θ 3B ), the parameters of the machine translation model 33B (e.g., a neural network model) are updated based on the result.

[0334] When the output data evaluation unit 34 determines that the above process satisfies the following condition (learning process end condition), it determines that the learning process of the machine translation model 33B has ended. (1) The loss (for example, error) between the data D34 and the correct answer data D31_correct is within a predetermined range. (2) Even if the parameters of the machine translation model 33B are updated, the amount of change in loss (for example, error) between the data D34 and the correct answer data D31_correct is less than or equal to a predetermined value.

[0335] Then, machine translation model 33B in which parameters (optimum parameters) are set when the above-mentioned condition for terminating the learning process is satisfied is set as a trained machine translation model in the machine translation learning process.

[0336] This makes it possible to obtain a trained model trained on the bilingual data in the bilingual data storage unit DB23_p, and further a trained model (machine translation model) trained on the pseudo-bilingual data in the pseudo-bilingual data storage unit DB24_p.

[0337] The trained machine translation model 33B thus acquired can appropriately machine translate first language data into second language data, and can appropriately machine translate first language data into second language data while adapting for personalization.

[0338] In the above, the learning process for machine translation model 33B is described as being performed by first training using the bilingual data in bilingual data storage unit DB23_p, and then training (fine-tuning) using the pseudo-bilingual data in pseudo-bilingual data storage unit DB24_p. However, the following method may also be adopted as the training process for machine translation model 33B. (1) Data Mixing: Data (mixed bilingual data) obtained by mixing the bilingual data in the bilingual data storage unit DB23_p and the pseudo-bilingual data in the pseudo-bilingual data storage unit DB24_p may be created, and the data (mixed bilingual data) may be used to perform the learning process of the machine translation model 33B. In this case, data may be created to which a tag indicating whether it is bilingual data or pseudo-bilingual data is added, and the data may be used to perform the learning process of the machine translation model 33B. In order to ensure performance both in the presence and absence of speaker information, the mixing ratio of the bilingual data in the bilingual data storage unit DB23_p and the pseudo-bilingual data in the pseudo-bilingual data storage unit DB24_p may be adjusted by oversampling or undersampling one of the data. (2) Data Mixture Fine-Tuning Method (Part 1) After learning using the bilingual data in the bilingual data storage unit DB23_p, the machine translation model 33B may be trained using data obtained by mixing the pseudo-bilingual data in the pseudo-bilingual data storage unit DB24_p and the bilingual data in the bilingual data storage unit DB23_p. In this case, too, data may be created to which a tag indicating whether it is bilingual data or pseudo-bilingual data is added, and the machine translation model 33B may be trained using this data. In order to ensure performance both in the presence and absence of speaker information, the mixture ratio of the bilingual data in the bilingual data storage unit DB23_p and the pseudo-bilingual data in the pseudo-bilingual data storage unit DB24_p may be adjusted by oversampling or undersampling one of the data. (3) Pseudo-parallel data advance fine-tuning method After learning using the pseudo-parallel data in the pseudo-parallel data storage unit DB24_p, the machine translation model 33B may be trained using the parallel data in the parallel data storage unit DB23_p. (4) Data Mixture Fine-Tuning Method (Part 2) After training using the pseudo-parallel data in the pseudo-parallel data storage unit DB24_p, the training process of the machine translation model 33B may be performed using data obtained by mixing the pseudo-parallel data in the pseudo-parallel data storage unit DB24_p and the parallel data in the parallel data storage unit DB23_p. In this case, too, data may be created to which a tag indicating whether it is parallel data or pseudo-parallel data is added, and the training process of the machine translation model 33B may be performed using this data. In order to ensure performance both in the presence and absence of speaker information, the mixing ratio of the parallel data in the pseudo-parallel data storage unit DB23_p and the pseudo-parallel data in the pseudo-parallel data storage unit DB24_p may be adjusted by oversampling or undersampling one of the data.

[0339] (Step S332): In step S332, machine translation processing is performed using the machine translation model acquired in step S331. Specifically, the machine translation unit 3B of the sequence data conversion processing system 2000 performs machine translation processing (machine translation processing from the first language (e.g., French) to the second language (e.g., English)) on the first language data Din.Fr(speakerID) (first language data to which the personal identifier speakerID is assigned (token sequence to which the personal identifier speakerID is assigned at the beginning)) input from the outside using the trained machine translation model 33B, thereby acquiring second language data Do.En corresponding to the input first language data Din.Fr(speakerID).

[0340] As shown in FIG. 26, data Din.Fr(speakerID) in the first language is input from outside to a data input interface 31B of a machine translation unit 3B.

[0341] The data input interface 31B outputs the data Din.Fr(speakerID) to the input data acquisition unit 32B as data D31 in accordance with the control signal CTL31. Note that the control signal CTL31 generated by the control unit in step S332 is a signal for controlling the data Din.Fr(speakerID) in the first language input from outside to be output to the input data acquisition unit 32B.

[0342] The input data acquisition unit 32B outputs the data D31 (=Din.Fr(speakerID)) as data D32 to the machine translation model 33B in accordance with the control signal CTL32 instructing to execute a machine translation process.

[0343] Data D32 output from input data acquisition unit 32B is input to machine translation model 33B and processed by machine translation model 33B (machine translated from the first language to the second language).

[0344] The data processed by the machine translation model 33B (output data from the machine translation model 33B) is output to the selector SEL31 as data D33.

[0345] The control unit generates a selection signal sel31 that indicates that the data D33 is to be output to the outside as data Dout.En.

[0346] The selector SEL31 outputs the data D33 to the outside as the data Dout.En in accordance with the selection signal sel31 generated as described above.

[0347] Machine translation model 33B is a model that can appropriately machine translate data in a first language into data in a second language, and can machine translate data in the first language into data in the second language while personalizing and adapting the data (a model that has been trained to do so in step S331).

[0348] Therefore, by performing the above-described processing, the sequence data conversion processing system 2000 can appropriately machine translate data in a first language into data in a second language, and can machine translate data in the first language into data in the second language while personalizing the translation.

[0349] As described above, in the sequence data conversion processing system 2000, a pre-learning process of a language model is performed using the large-scale monolingual data stored in the first monolingual data storage unit DB1_m, and further, a personalized adaptation process of the language model (adaptation process that reflects the expression characteristics of a specific individual) is performed using the monolingual data stored in the speaker information-attached monolingual data storage unit DB21_m, thereby acquiring a language model that can generate personalized and adapted pseudo-monolingual data.

[0350] The sequence data conversion processing system 2000 then uses the language model to generate personalized, adapted pseudo-monolingual data, and further uses a base machine translation model trained on general bilingual data to machine translate the generated personalized, adapted pseudo-monolingual data, thereby obtaining personalized, adapted pseudo-bilingual data.

[0351] In the sequence data conversion processing system 2000, a machine translation model is trained using general bilingual data and the pseudo bilingual data obtained above, and machine translation processing is performed using the trained machine translation model, thereby enabling accurate machine translation processing while performing personalized adaptation.

[0352] In other words, in the sequence data conversion processing system 2000, personalized and adapted pseudo-parallel data is automatically generated using personalized and adapted small-scale monolingual data, and machine translation processing is performed using a trained machine translation model trained using the pseudo-parallel data, thereby making it possible to appropriately execute personalized machine translation processing (machine translation processing that can obtain translation results that reflect the characteristics of an individual's expression).

[0353] In the above description, the source language of the machine translation processing in the machine translation unit 3B is a first language (e.g., French) and the target language is a second language (e.g., English). However, the sequence data conversion processing system 2000 may be configured with the source language being the second language and the target language being the first language.

[0354] In the above description, the bilingual data storage unit DB23_p is a storage unit that stores bilingual data without speaker information, but the present invention is not limited to this. For example, in the sequence data conversion processing system 2000, when the bilingual data stored in the bilingual data storage unit DB23_p is data with speaker information, the speaker information may be used to perform a learning process for the machine translation model 23B and the machine translation model 33B. In this case, the sequence data conversion processing system 2000 may perform a machine translation process using the trained machine translation model 23B and the trained machine translation model 33B acquired by the learning process.

[0355] [Other embodiments] In the sequence data conversion processing systems 1000 and 2000 described in the above embodiments, each block may be individually implemented as a single chip using a semiconductor device such as an LSI, or some or all of the blocks may be included in a single chip.

[0356] Although we refer to it as LSI here, depending on the level of integration, it may also be called IC, system LSI, super LSI, or ultra LSI.

[0357] The method of integration is not limited to LSI, but may be realized by a dedicated circuit or a general-purpose processor. It is also possible to use a field programmable gate array (FPGA) that can be programmed after LSI manufacturing, or a reconfigurable processor that can reconfigure the connections and settings of circuit cells inside the LSI.

[0358] In addition, a part or all of the processing of each functional block in each of the above embodiments may be realized by a program. And a part or all of the processing of each functional block in each of the above embodiments is performed by a central processing unit (CPU) in a computer. Also, the programs for performing each processing are stored in a storage device such as a hard disk or ROM, and are executed in the ROM or by being read into the RAM.

[0359] Each process in the above embodiment may be realized by hardware, or may be realized by software (including cases where it is realized together with an OS (operating system), middleware, or a predetermined library).Furthermore, it may be realized by a mixed process of software and hardware.

[0360] For example, when each functional unit of the above embodiment is realized by software, each functional unit may be realized by software processing using the hardware configuration shown in FIG. 27 (e.g., a CPU (which may be a GPU), a ROM, a RAM, an input unit, an output unit, a communication unit, a memory unit (e.g., a memory unit realized by an HDD, SSD, etc.), an external media drive, etc., connected via a bus).

[0361] Furthermore, when each functional unit of the above embodiment is realized by software, the software may be realized using a single computer having the hardware configuration shown in FIG. 27, or may be realized by distributed processing using multiple computers.

[0362] Furthermore, the order of execution of the processing methods in the above-described embodiments is not necessarily limited to that described in the above-described embodiments, and the order of execution can be changed without departing from the gist of the invention.

[0363] The scope of the present invention includes a computer program for causing a computer to execute the above-mentioned method, and a computer-readable recording medium having the program recorded thereon. Examples of computer-readable recording media include flexible disks, hard disks, CD-ROMs, MOs, DVDs, DVD-ROMs, DVD-RAMs, large-capacity DVDs, next-generation DVDs, and semiconductor memories.

[0364] The computer program is not limited to one recorded on the recording medium, but may be one transmitted via a telecommunications line, a wireless or wired communication line, a network such as the Internet, or the like.

[0365] In the description of this specification and the claims, "optimization" refers to bringing the system into the best state, and a parameter for "optimizing" a system (model) refers to a parameter when the value of the objective function of the system is the optimal value. The "optimum value" is a maximum value when the system is in a better state as the value of the objective function of the system increases, and is a minimum value when the system is in a better state as the value of the objective function of the system decreases. The "optimum value" may also be an extreme value. The "optimum value" may also be one that allows for a predetermined error (measurement error, quantization error, etc.), and may be a value included in a predetermined range (a range that can be considered to have converged sufficiently).

[0366] The specific configuration of the present invention is not limited to the above-described embodiment, and various changes and modifications are possible without departing from the gist of the invention. [Explanation of symbols]

[0367] 1000, 2000 Series data conversion processing system 1000 1, 1B Pseudo monolingual data generation section 2, 2B Pseudo-parallel data generation section 3, 3B Machine Translation Department DB1_m First monolingual data storage unit DB2_m Second monolingual data storage unit DB3_m, DB22_m pseudo monolingual data storage DB4_p, DB23_p bilingual data storage DB5_p, DB24_p Pseudo-parallel data storage unit DB21_m Parallel translation data storage with speaker information

Claims

1. A method for generating pseudo-paired data used to obtain a sequence data conversion model which is a model for executing a sequence data conversion process for converting a first data sequence into a second data sequence or converting the second data sequence into the first data sequence, the method being executed by a computer, and which satisfies a predetermined application condition, the method comprising: A language model learning process is a process of training a language model that is a neural network model that executes a process of generating independent data of one of the first data sequence and the second data sequence using a first data set that is a data set of a first scale that satisfies the application condition and a second data set that is a data set of a second scale that does not satisfy the application condition and is larger than the first scale, using the computer, the process comprising: (1) acquiring from the second data set first input data that is data to be input to the language model from acquired data and first correct answer data that is data of a token following the first input data, acquiring a loss between first output data that is output data from the language model when the first input data is input to the language model and the first correct answer data, and calculating a loss of the language model based on the acquired loss. and (2) a pseudo-single data generation step of performing a single data generation process, which is a process of acquiring, from the first data set, second input data, which is data to be input to the language model from the acquired data, and second supervised data, which is data of a token following the second input data, acquiring a loss between the second output data, which is data output from the language model when the second input data is input to the language model, and the second supervised data, and updating parameters of the language model based on the acquired loss, thereby acquiring a trained language model for the single data generation process, and acquiring data output from the trained language model when there is no input to the acquired trained language model as pseudo-single data. a base conversion model acquisition step of acquiring a learned conversion model of the base conversion model by learning a base conversion model that converts the first data series into the second data series or converts the second data series into the first data series using a paired data set that is a data set in which data of the first data series and data of the second data series are paired, using the computer; a pseudo paired data acquisition step of acquiring pseudo-converted data of the single data by performing a sequence data conversion process on the pseudo single data acquired in the pseudo single data generation step using the computer and a trained conversion model of the base conversion model, and acquiring data in which the pseudo single data and the pseudo-converted data of the pseudo single data are paired as pseudo paired data; A pseudo pair data generating method comprising:

2. A method for obtaining a sequence data conversion model which is a model for executing a sequence data conversion process for converting a first data sequence into a second data sequence or converting the second data sequence into the first data sequence and which satisfies a predetermined application condition, the method comprising: A language model learning process is a process of using the computer to learn a language model that is a neural network model that executes a process of generating independent data of one of the first data sequence and the second data sequence using a first data set that is a data set of a first size that satisfies the application condition and a second data set that is a data set of a second size that is larger than the first size and does not satisfy the application condition, the process comprising: (1) acquiring from the second data set first input data that is data to be input to the language model from acquired data and first correct answer data that is data of a token following the first input data, acquiring a loss between first output data that is output data from the language model when the first input data is input to the language model and the first correct answer data, and updating parameters of the language model based on the acquired loss; and (2) a pseudo-single data generation step of generating the single data by performing a single data generation process using a process for acquiring second input data, which is data to be input to the language model from the acquired data, and second supervised data, which is data of a token following the second input data, from the first data set, acquiring a loss between the second output data, which is output data from the language model when the second input data is input to the language model, and the second supervised data, and updating parameters of the language model based on the acquired loss to perform a learning process for the language model, thereby acquiring a trained language model for a single data generation process, and acquiring data output from the trained language model when the input of the acquired trained language model is omitted as pseudo-single data. a base conversion model acquisition step of acquiring a learned conversion model of the base conversion model by learning a base conversion model that converts the first data series into the second data series or converts the second data series into the first data series using a paired data set that is a data set in which data of the first data series and data of the second data series are paired, using the computer; a pseudo paired data acquisition step of acquiring pseudo-converted data of the single data by performing a sequence data conversion process on the pseudo single data acquired in the pseudo single data generation step using the computer and a trained conversion model of the base conversion model, and acquiring data in which the pseudo single data and the pseudo-converted data of the pseudo single data are paired as pseudo paired data; a sequence data conversion model acquisition step of acquiring a trained model of the sequence data conversion model by learning a sequence data conversion model that converts the first data sequence into the second data sequence or the second data sequence into the first data sequence using the paired data set and the pseudo paired data acquired in the pseudo paired data acquisition step, using the computer; A method for acquiring a sequence data transformation model comprising:

3. the application condition is that the processing target is language data belonging to a target field, which is a field targeted by the pseudo-pair data; The first data set is a monolingual data set in the target field; the second data set is a data set of monolingual data in a domain other than the domain of application; the first data sequence is a data sequence in a first language; the second data sequence is a data sequence in a second language other than the first language, The sequence data conversion process is a process of converting sequence data. The method for acquiring a sequence data transformation model according to claim 2 .

4. the application condition is that the language data to be processed is data to which speaker identification data, which is data to identify a speaker, is added; the first data set is a data set of monolingual data appended with the speaker identification data; the second data set is a data set of monolingual data not annotated with the speaker identification data; the first data sequence is a data sequence in a first language; the second data sequence is a data sequence in a second language other than the first language, The sequence data conversion process is a process of converting sequence data. The method for acquiring a sequence data transformation model according to claim 2 .

5. A sequence data conversion processing device that performs sequence data conversion processing using a trained model of the sequence data conversion model acquired by the sequence data conversion model acquisition method according to any one of claims 2 to 4.

6. A program for causing a computer to execute the method according to any one of claims 1 to 4.

Citation Information

Patent Citations

  • Method to select learning text for language model, method to learn language model by using the same learning text, and computer and computer program for executing the methods

    JP2016024759A

  • Pseudo parallel translation data generation device, machine translation processing device, and pseudo parallel translation data generation method

    JP2019153023A

  • Information processing device, information processing method, and program

    JP2020035019A

  • Parallel Forward and Backward Propagation

    US20190188569A1

  • Model learning device, method therefor, and program

    WO2018051841A1