AUTOMATED PREPROCESSING FOR BLACK BOX TRANSLATION
Patent Information
- Authority / Receiving Office
- MX · MX
- Patent Type
- Patents
- Current Assignee / Owner
- NETFLIX INC
- Filing Date
- 2022-02-28
- Publication Date
- 2026-06-12
AI Technical Summary
Black box machine translation systems struggle with translating complex, non-compositional idiomatic phrases, especially in low-resource language pairs, and existing simplification models are limited by domain-specific data availability and operate only at the sentence level, failing to adapt effectively across different domains.
A computer-implemented method for training a sentence preprocessing model that involves determining back translations, generating simplified sentences, and updating model parameters based on these translations to improve translation performance in low-resource language pairs.
The method enhances the translation of complex idiomatic phrases by efficiently generating large-scale parallel corpuses, leading to improved translation performance while preserving the meaning of original sentences.
Smart Images

Figure MX435141B0
Abstract
Description
AUTOMATED PREPROCESSING FOR BLACK BOX TRANSLATION FIELD OF INVENTION The various modalities generally refer to machine translation systems and computer science and, more specifically, to a method for automatic preprocessing for black box translation. BACKGROUND OF THE INVENTION Machine translation systems use various approaches to improve the state and quality of machine translation. Some systems use a sequential transduction approach to map input text sequences in a source language to translated text sequences in a target language. Unsupervised or semi-supervised approaches to machine translation are also gaining popularity and typically leverage bittexts composed of both source and target language text versions during training. During training, many machine translation systems typically rely on the availability of large-scale parallel datasets, which include larger sets of parallel data composed of source text and corresponding translations. Parallel datasets for certain language pairs are readily available, such as those for high-resource language pairs with larger training sets, large-scale parallel datasets, and similar resources. The availability of large-scale parallel datasets for high-resource language pairs has enabled machine translation systems to achieve next-generation performance. However, achieving next-generation translation performance for low-resource language pairs with smaller training sets, limited parallel datasets, and similar resources remains a challenge. A wide range of machine translation applications utilize black-box machine translation systems. Black-box machine translation systems include any machine learning model that has been trained and tuned beforehand. Often, there is limited or no access to model parameters or training data for fine-tuning or improving black-box machine translation systems. As a result, black-box machine translation systems are difficult to adapt, tune to a specific domain, or build upon.Although some black-box machine translation systems provide the option of fine-tuning on domain-specific data under certain conditions, improving the performance of such black-box machine translation systems on domain-specific translation tasks or for low-resource language pairs is difficult and results in suboptimal translation performance. Furthermore, black-box machine translation systems tend to mistranslate complex, non-compositional idiomatic phrases such as sentences containing phrases, idioms, complex words, or similar elements. This problem persists even when black-box machine translation systems are tuned to domain-specific data, such as specific data types (e.g., descriptive text, conversational dialogues, spoken language, or similar), data with similar underlying properties, or similar characteristics. In particular, black-box machine translation systems, like other machine translation systems, are not robust across different data domains and tend to perform poorly when translating text with underlying properties that differ from those used to train the system.The problem is exacerbated when working with low-resource language pairs because the scarcity of data does not allow the machine translation system to infer translations from the thousands of complex phrases and words. To address this problem, some machine translation systems using the aforementioned technique employ simplification models, such as automatic text simplification systems or similar technologies, to simplify complex, non-compositional idiomatic phrases. These simplification models typically transform source texts into their lexically and syntactically simpler variants. However, most simplification models operate only at the sentence level and do not simplify texts at the discourse level. Furthermore, such systems tend to be modular, rule-based, and limited to specific domains or languages. Furthermore, in the context of domain-specific translation, determining which training data are best suited for training simplification models is difficult. In particular, open-source datasets may contain data related to descriptive text, which may not be appropriate for training simplification models for other domains such as conversational dialogues or similar. Collecting large amounts of domain-specific simplification data tends to be prohibitively expensive, thus limiting the options when building simplification models. Consequently, existing simplification models are limited by the availability of parallel simplification bodies and tend to be domain-specific. Therefore, there is a need for techniques to improve the performance of black-box machine translation systems in translating complex, non-compositional idiomatic phrases, especially in the context of low-resource language pairs. Furthermore, there is a need for techniques to efficiently generate parallel bodies for training simplification models to adapt to new domains. BRIEF DESCRIPTION OF THE INVENTION One embodiment of the present invention establishes a computer-implemented method for training a sentence preprocessing model. The method comprises determining, using a machine translation system, a back translation associated with a highly accurate translation of a source sentence in a source language into a target language, wherein the back translation comprises a translation of the highly accurate translation from one or more target languages into the source language; determining, using the sentence preprocessing model, a simplified sentence associated with the source sentence; and updating one or more parameters of the sentence preprocessing model based on the simplified sentence and the back translation. Disclosed techniques allow for the easy adaptation of a simplification model to a new domain by efficiently generating training data that includes large-scale parallel bodies based on backtranslations derived from high-resource language pairs in that domain. The trained simplification model achieves improved performance in simplifying complex, non-compositional idiomatic phrases in low-resource language pairs before translation by black-box machine translation systems, thus resulting in improved translation performance for low-resource language pairs while preserving the meaning of the original sentences. BRIEF DESCRIPTION OF THE FIGURES To clarify the aforementioned characteristics of the various embodiments, a more detailed description of the inventive concepts, briefly summarized above, can be provided by reference to several embodiments, some of which are illustrated in the accompanying drawings. However, it should be noted that the accompanying drawings illustrate only typical embodiments of the inventive concepts and, therefore, should not be considered a limitation of scope in any way, and that other equally effective embodiments exist. Figure 1 is a schematic diagram illustrating a computer system configured to implement one or more aspects of this disclosure. Figure 2 is a more detailed illustration of the training engine and test engine of Figure 1, according to various modalities of this disclosure. Figure 3 is a step-by-step flowchart of the method for a sentence preprocessing procedure executed by the training engine and the test engine of Figure 1, according to various modalities of this disclosure. Figure 4 is a step-by-step flowchart of the method for a sentence translation procedure, according to various modalities of this disclosure. Figure 5 illustrates a network infrastructure used to distribute content to content servers and endpoint devices, in accordance with various modalities of this disclosure. Figure 6 is a block diagram of a content server that can be implemented in conjunction with the network infrastructure of Figure 5, according to various modalities of this disclosure. Figure 7 is a block diagram of a control server that can be implemented in conjunction with the network infrastructure of Figure 5, according to various modalities of this disclosure. Figure 8 is a block diagram of an endpoint device that can be implemented in conjunction with the network infrastructure of Figure 5, according to various modalities of this disclosure. For clarity, identical reference numbers have been used, where applicable, to design identical elements common to various figures. It is understood that features from one modality may be incorporated into other modalities without further mention. DETAILED DESCRIPTION OF THE INVENTION The following description sets out numerous specific details to provide a more complete understanding of the various modalities. However, it will be apparent to a person skilled in the art that the inventive concepts can be practiced without one or more of these specific details. Figure 1 illustrates a computing device 100 configured to implement one or more aspects of this disclosure. As shown, the computing device 100 includes an interconnect (bus) 112 connecting one or more processors 102, an input / output (I / O) device interface 104 coupled to one or more input / output (I / O) devices 108, a memory 116, a storage 114, and a network interface 106. Computing Device 100 includes a desktop computer, laptop computer, smartphone, personal digital assistant (PDA), tablet computer, or any other type of computing device configured to receive input, process data, and optionally display images, and is suitable for practicing one or more modalities. The Computing Device 100 described here is illustrative, and any other technically feasible configurations fall within the scope of this disclosure. Processors 102 include any convenient processor implemented as a central processing unit (CPU), graphics processing unit (GPU), application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), artificial intelligence accelerator (AI), any other type of processor, or a combination of different processors, such as a CPU configured to operate in conjunction with a GPU. In general, processors 102 can be any technically feasible hardware unit with the ability to process data and / or execute software applications. Furthermore, in the context of this disclosure, the computing elements shown in computing device 100 may correspond to a physical computing system (for example, a system in a data center) or may be an instance of virtual computing running within a computing cloud. The I / O device interface 104 enables communication between I / O devices 108 and processors 102. The I / O device interface 104 typically includes the logic necessary to interpret addresses corresponding to I / O devices 108 that are generated by processors 102. The I / O device interface 104 can also be configured to implement a handshaking protocol between processors 102 and I / O devices 108, and / or generate interrupts associated with I / O devices 108. The I / O device interface 104 can be implemented as any CPU, ASIC, FPGA, or any other type of processing unit or technically feasible device. In one configuration, I / O devices 108 include devices capable of providing input, such as a keyboard, mouse, touchscreen, and so on, as well as devices capable of providing output, such as a display device. Additionally, I / O devices 108 may include devices capable of receiving input and providing output, such as a touchscreen, a universal serial bus (USB) port, and so on. I / O devices 108 can be configured to receive various types of input from an end user (for example, a designer) of computing device 100, and also provide various types of output to the end user of computing device 100, such as displayed digital images, videos, or digital text. In some configurations, one or more I / O devices 108 are configured to connect computing device 100 to a network 110. Network 110 includes any technically feasible type of communications network that allows data to be exchanged between computing device 100 and external entities or devices, such as a web server or other networked computing device. For example, network 110 may include a wide area network (WAN), a local area network (LAN), a wireless network (WiFi), and / or the Internet, among others. Memory 116 includes a random access memory (RAM) module, a flash memory unit, or any other type of memory unit or combination thereof. The processors 102, the I / O device interface 104, and the network interface 106 are configured to read data from and write data to memory 116. Memory 116 includes various software programs that can be executed by the processors 102 and application data associated with those software programs, including the training engine. 122 and the test engine 124. The training engine 122 and the test engine 124 are described in further detail below with reference to Figure 2. Storage 114 includes non-volatile storage for applications and data, and may include fixed or removable disk drives, flash memory devices, and CD-ROM, DVD-ROM, Blu-ray, HD-DVD, or other magnetic, optical, or solid-state storage devices. The training engine 122 and the test engine 124 may be stored in storage 114 and loaded into memory 116 when executed. Figure 2 is a more detailed illustration of the training engine 122 and the test engine 124 of Figure 1, according to various modalities of this disclosure. As shown, the training engine 122 includes, without limitation, the black-box machine translation system 210, the automatic preprocessing model 220, the filtering module 230, and / or language data 240. The black-box machine translation system 210 includes any technically feasible machine translation system, natural language processing model, or similar system. In some modalities, the black-box machine translation system 210 includes one or more types of machine translation systems, such as rule-based machine translation systems, hybrid machine translation systems, body-based machine translation systems, statistical machine translation systems, neural machine translation systems, example-based machine translation systems, phrase-based machine translation systems, or similar systems.In some modalities, the 210 black box machine translation system includes recurrent neural networks (RNNs), convolutional neural networks (CNNs), deep neural networks (DNNs), deep convolutional networks (DCNs), deep belief networks (DBNs), restricted Boltzmann machines (RBMs), long-short-term memory units (LSTMs), gated recurrent units (GRUs), generative adversarial networks (GANs), self-organizing maps (SOMs), Transformers, and / or other types of artificial neural networks or artificial neural network components. In some configurations, the 210 black-box machine translation system includes functionality to perform supervised learning, unsupervised learning, semi-supervised learning (e.g., supervised pre-training followed by unsupervised tuning, unsupervised pre-training followed by supervised tuning, or similar), cross-lingual transfer learning (e.g., cross-language model or annotation transfer, cross-lingual sentence integration, or similar), self-supervised learning, or similar. In some configurations, unsupervised learning includes unsupervised feature induction, such as unsupervised dependency analysis, brown clustering, unsupervised POS labeling, word vector methods, or similar.In some modalities, the 210 black-box machine translation system includes any machine learning model that has been trained and tuned beforehand. In other modalities, there is limited or no access to model parameters or training data for tuning or improving the 210 black-box machine translation system. In some configurations, the 210 black-box machine translation system is customized for a specific domain, customized for a combination of domains, adaptable to multiple domains, or similar. Domains include specific types of data (e.g., descriptive text, conversational dialogues, spoken language, or similar), field-specific data (e.g., weather data, medical data, legal data, or similar), with similar underlying properties, or similar. Automatic preprocessing model 220 includes any technically feasible text simplification system, text processing system, or similar. In some modalities, automatic preprocessing model 220 converts source text, such as source sentences 261, back translations 242, or similar, into simplified text, such as preprocessed sentences 243 or similar. In some modalities, the simplified text includes paraphrased text, a lexically simpler variant of the source text, a syntactically simpler variant of the source text, text with simpler sentence structure, text with reduced ambiguity, or similar. In some modalities, automatic preprocessing model 220 is configured to simplify one or more texts at the character level, word level, sentence level, phrase level, speech level, or similar. In some modalities, the automatic preprocessing model 220 includes one or more sequence-to-sequence models, or similar. In some modalities, the automatic preprocessing model 220 includes one or more systems configured to convert one or more sequences (for example, text sequences, word sequences, or similar) from one language, domain, or similar to one or more sequences in another language, domain, or similar. In some modalities, the automatic preprocessing model 220 includes one or more systems configured to perform one or more text processing tasks such as analysis, information retrieval, recapitulation, or similar. In some modalities, the automatic preprocessing model 220 includes any system configured to improve the performance of the black-box machine translation system 210, such as by improving the fluency of the translation output, reducing post-editing technical effort, or similar. In some modalities, the automatic preprocessing model 220 includes recurrent neural networks (RNNs), convolutional neural networks (CNNs), deep neural networks (DNNs), deep convolutional networks (DCNs), deep belief networks (DBNs), restricted Boltzmann machines (RBMs), long-short-term memory units (LSTMs), gated recurrent units (GRUs), generative adversarial networks (GANs), self-organizing maps (SOMs), Transformers, and / or other types of artificial neural networks or components of artificial neural networks.In some modalities, the automatic preprocessing model 220 includes functionality to run supervised learning, unsupervised learning, semi-supervised learning (e.g., supervised pre-training followed by unsupervised tuning, unsupervised pre-training followed by supervised tuning, or similar), cross-lingual transfer learning (e.g., transfer of models or annotations between languages, cross-lingual sentence integrations, or similar), self-supervised learning, or similar. The filtering module 230 includes functionality for evaluating the output of the black-box machine translation system 210, the automatic preprocessing model 220, or similar. In some modalities, the filtering module 230 includes functionality to allow human evaluation of translation quality (for example, functionality to allow a user to rate the quality of each translation on a scale of 1-5, functionality to allow a user to compare the relative quality of translations, functionality to allow a user to choose one or more translations from multiple translations based on an analysis of translation quality, or similar).In some modes, filtering module 230 includes one or more algorithms configured to implement one or more metrics associated with translation quality, such as BLEU (Bilingual Evaluation Surrogate), NIST (National Institute of Standards and Technology), METEOR (Metric for Translation Evaluation with Explicit Ranking), GLEU (Google BLEU), WER (Word Error Rate), ROUGE (Recall-Oriented Surrogate for Background Evaluation), TER (Translation Editing Rate), or similar. In one case, the algorithm is configured to compare a candidate text (e.g., text associated with back translations 242 or similar) with one or more reference texts (e.g., source sentences 261, highly accurate translations 244, or similar). In another case, the algorithm is configured to assign a score associated with overall translation quality or similar.In some modes, the algorithm is configured to assign a score to one or more segments of the candidate text, one or more ngrams (e.g., word sequences in the candidate text, or similar), alignment between one or more sequences in the candidate text and the reference text, or similar. The algorithm then determines a statistical measurement such as mean values, standard deviation, range of values, average values, and / or similar metrics based on the combination of the scores assigned to one or more segments. In some modes, the 230 filtering module includes a user interface that provides interactive functionality for receiving user input such as user ratings of translation quality or similar. In some modalities, the 230 filtering module includes one or more algorithms configured to implement one or more metrics associated with the quality of text simplification, such as SARI (system output vs. references and vs. normal sentence). BLEU (Bilingual Evaluation Substitute), or similar. In one instance, the algorithm is configured to compare a candidate text (e.g., text associated with preprocessed sentences 243 or similar) with one or more reference texts (e.g., source sentences 261, back translations 242, reference simplification data, or similar). In another instance, the algorithm is configured to assign a score associated with the overall quality of the simplification, or similar. In some modalities, the algorithm is configured to assign a score to one or more segments of the candidate text, one or more n-grams (e.g., word sequences in the candidate text, or similar), alignment between one or more sequences in the candidate text and the reference text, or similar.The algorithm then determines a statistical measurement such as mean values, standard deviation, range of values, average values, and / or similar metrics based on the combination of scores assigned to one or more segments. In some versions, the 230 filtering module includes a user interface that provides interactive functionality for receiving user input, such as user ratings of the simplification quality or similar information. Language data 240 includes any data associated with one or more languages. In some modalities, language data is associated with one or more high-resource languages (e.g., a language with large amounts of multi-domain training data, many lexical, semantic, or syntactic resources, or the like), one or more low-resource languages (e.g., a language with limited amounts of multi-domain training data, few lexical, semantic, or syntactic resources, or the like), one or more pairs of high-resource languages, one or more pairs of low-resource languages, or the like. Language data 240 includes, without limitation, back translations 242, preprocessed sentences 243, and highly accurate translations 244. The reverse translations 242 include text obtained by using the black-box machine translation system 210 to translate the highly accurate translations 244 from a target language (e.g., Welsh, Quechua, Swahili, Punjabi, or similar) back to the source language (e.g., English or similar). In some modalities, a reverse translation 242 includes a synthetically generated version of a source sentence 261 derived from translating any translation (e.g., original translation 264) in a target language (e.g., French, Spanish, Portuguese, or similar) back to the source language (e.g., English or similar). In some modalities, a given source sentence 261 may have multiple reverse translations 242 associated with multiple target languages, with each reverse translation derived from a different highly accurate translation in a corresponding target language. Preprocessed sentences 243 include text corresponding to a preprocessed version of source sentences 261 derived from back translations 242. In some modalities, preprocessed sentences 243 include paraphrased text, a lexically simpler variant of the original text, a syntactically simpler variant of the original text, text with a simpler sentence structure, text with reduced ambiguity, or the like corresponding to source sentences 261. In some modalities, preprocessed sentences 243 include multiple simplifications for a given source sentence 261 or the like. Highly accurate translations 244 include any text associated with good-quality translation of source sentences 261, such as professional human translation, or similar. In some modalities, highly accurate translations 244 include text associated with one or more ideal or expected translations of source sentences 261. In some modalities, highly accurate translations 244 include text that meets one or more predetermined threshold criteria based on one or more metrics associated with translation quality, such as BLEU (Bilingual Evaluation Surrogate), NIST (National Institute of Standards and Technology), METEOR (Metric for Translation Evaluation with Explicit Ranking), GLEU (Google BLEU), WER (Word Error Rate), ROUGE (Retrieval-Oriented Surrogate for Background Evaluation), TER (Translation Editing Rate), or similar.In some modalities, highly accurate translations 244 include multiple reference translations for a given source sentence 261 or similar. In some modalities, highly accurate translations 244 include data derived from one or more text datasets or similar. Storage 114 includes, without limitation, source sentences 261, parallel bodies of language pairs 262, and / or original translations 264. Source sentences 261 include any combination of one or more words, phrases, sentences, paragraphs, text sequences, or the like in a source language. In some modalities, source sentences 261 include one or more complex, idiomatic, or non-compositional phrases. In some modalities, source sentences 261 include one or more sentences in one or more domains such as movie subtitles, TV subtitles, descriptive text, conversational dialogue, spoken language, weather data, medical data, legal data, or the like. In some modalities, source sentences 261 include one or more sentences derived from one or more text datasets or the like. Parallel bodies of language pairs 262 include one or more parallel datasets composed of source text and corresponding translations for one or more language pairs. Each language pair includes a source language and a target language. In some modalities, parallel bodies of language pairs 262 include bodies for one or more low-resource language pairs (e.g., English-Hungarian (En-Hu), English-Ukrainian (En-Uk), English-Czech (En-Cs), English-Romanian (En-Ro), English-Bulgarian (En-Bg), English-Hindi (En-Hi), English-Malay (En-Ms), or similar), and one or more high-resource language pairs (e.g., English-Spanish, English-French, English-Italian, English-German, English-Chinese, or similar).A low-resource language includes any language with a limited amount of raw text data available from various domains, limited lexical, semantic, or syntactic resources (e.g., dictionaries, or similar), smaller training sets, sparse parallel data, limited labeled or annotated text, or similar characteristics. A high-resource language includes any language with large amounts of raw text data from various domains, many lexical, semantic, or syntactic resources (e.g., dictionaries, or similar), larger training sets, large parallel datasets, readily available labeled or annotated text, or similar characteristics. In some modalities, parallel bodies of language pairs include data in one or more domains such as film subtitles, television subtitles, descriptive text, conversational dialogue, spoken language, weather data, medical data, legal data, news, or similar characteristics.In some modalities, parallel bodies of language pairs 262 include data derived from one or more text or similar datasets. In some modalities, parallel bodies of language pairs 262 include one or more parallel datasets composed of source sentences 261 and the corresponding simplified version of each source sentence, such as back translations 242, preprocessed sentences 243, or the like. In some modalities, the simplified version of each source sentence includes paraphrased text, a lexically simpler variant of the original text, a syntactically simpler variant of the original text, text with a simpler sentence structure, text with reduced ambiguity, or the like. In some modalities, parallel bodies of language pairs 262 include reference simplification data for a given source sentence 261. Reference simplification data includes any text associated with good-quality simplification of source sentences 261, text associated with ideal or expected simplification of source sentences 261, professional human simplification, or the like.In some modalities, parallel bodies of language pairs 262 include text that meets one or more predetermined threshold criteria based on one or more metrics associated with simplification quality such as SARI (system output vs. references and vs. normal sentence), BLEU (bilingual evaluation surrogate), or similar. Original translations 264 include text obtained by using a black-box machine translation system 210 to translate one or more source sentences 261 from a source language (e.g., English or similar) into one or more target languages (e.g., French, Spanish, Portuguese, or similar). In some modalities, the black-box machine translation system 210 generates, for a given source sentence 261, multiple original translations 264 associated with multiple target languages, with each original translation corresponding to a target language. In operation, during training, the training engine 122 obtains a set of source sentences 261 in a source language for translation into a target language. The black-box machine translation system 210 generates a back translation 242 for each of the highly accurate translations 244 associated with each source sentence in the source sentence set 261. The filtering module 230 filters the set of back translations 242 associated with the source sentence set 261 based on one or more metrics. The automatic preprocessing model 220 generates a preprocessed sentence 243 associated with each source sentence in the source sentence set 261. The training engine 122 determines a loss function based on each preprocessed sentence 243 and the corresponding back translation 242 in the filtered set of back translations.The training engine 122 updates the parameters of the automatic preprocessing model 220 based on the loss function. The training engine 122 determines whether a threshold condition for the loss function has been met. When the threshold condition is met, the training engine 122 filters the set of preprocessed sentences using the filtering module 230, based on one or more metrics. Details regarding this training process are provided below. In various modalities, source sentences 261 include any combination of one or more words, phrases, sentences, paragraphs, text sequences, or the like in one or more domains, such as movie subtitles, TV subtitles, descriptive text, conversational dialogue, spoken language, weather data, medical data, legal data, or the like. In some modalities, source sentences 261 include one or more sentences derived from one or more text datasets, a web-based program, local storage on a computing device 100, natural language generation software, or the like. In some modalities, the training engine 122 selects source sentences 261 in one or more domains or the like. In some modalities, the black-box machine translation system 210 selects the source language based on ease of translation into a target language, similarity to a low-resource language, or the like. As an initial step in the training process, the black-box machine translation system 210 generates a back translation 242 for each highly accurate translation 244 associated with each source sentence in a set of source sentences 261. In some modalities, the black-box machine translation system 210 generates each back translation 242 by translating the highly accurate translations 244 from one or more target languages (e.g., Welsh, Quechua, Swahili, Punjabi, or similar) into a source language (e.g., English or similar). In some modalities, the black-box machine translation system 210 generates multiple back translations 242 by translating multiple highly accurate translations 244 associated with a given source sentence 261.In some modes, the 210 black box machine translation system selects one or more target languages based on ease of translation from the source language, similarity to the low-resource language, or similar. In some modalities, the training engine 122 generates back translations from target dataset Y for i =1 to M to language s provided by T1; T2, TM using the black-box machine translation model MTtt>SC. In the preceding equation, Ϋ represents a dataset for a target language t1, such as highly accurate translations 244; M represents the number of training language pairs; s represents the source language; V; T2, TM represents the back translations from each language in the target language set i to the source language, such as back translations 242; and represents the machine translation model used to translate each sentence from one or more target languages to the source language, such as the black-box machine translation system 210. In some modalities, s1 is fixed for a language, such as English or similar. The filtering module 230 filters the set of reverse translations 242 associated with the set of source sentences 261 based on one or more metrics. In some modes, the filtering module 230 is configured to compare text associated with reverse translations 242 or similar with one or more reference texts (e.g., source sentences 261, highly accurate translations 244, or similar). In some modes, the filtering module 230 compares each of the reverse translations 242 with multiple reference texts or similar. In other cases, the filtering module 230 is configured to assign a score associated with the overall quality of the reverse translations 242 based on one or more metrics associated with translation quality, such as BLEU, NIST, METEOR, GLEU, WER, TER, ROUGE, or similar.In some modes, filter module 230 is configured to assign a score to one or more segments of the back translations 242, one or more n-grams included in the back translations 242 (e.g., word sequences, or similar), alignment between one or more sequences in the back translations 242 and the reference text, or similar. Filter module 230 then determines a statistical measurement such as mean values, standard deviation, range of values, average values, and / or similar based on the combination of the scores assigned to one or more segments. In some modes, filter module 230 filters back translations 242 that do not meet one or more predetermined threshold criteria based on one or more metrics associated with translation quality or similar. In some modes, filter module 230 filters back translations 242 based on length, grammatical rules, or similar.In some versions, the 230 filtering module includes a user interface that provides interactive functionality for receiving user input such as user ratings of translation quality or similar. The automatic preprocessing model 220 generates a preprocessed sentence 243 associated with each source sentence in the source sentence set 261. In some modalities, the automatic preprocessing model 220 preprocesses each of the source sentences 261 and the corresponding back translations 242 to obtain preprocessed sentences 243. In some modalities, the training engine 122 trains a simplification model íapp, such as the automatic preprocessing model 220, on the body υA, {( λ . T1)}. ij-V combined parallel ' . In the equation above, ' represents the data union for the set of languages i =1 to M, such as a union of source sentences 261 and back translations 242, X represents a set of sentences in one or more source languages i, such as the source sentences 261; and T represents the set of reverse translations generated from a set of target languages i, such as reverse translations 242.In some modes, the training engine 122 trains the automatic preprocessing model 220 for one or more source languages associated with a low-resource language pair, a high-resource language pair, or similar. To adjust the automatic preprocessing model 220 during training, the training engine 122 determines a loss function based on the difference between each preprocessed sentence 243 and its corresponding back translation 242 in the filtered set of back translations. In some modalities, the training engine 122 determines a loss function based on the difference between each preprocessed sentence 243 and its corresponding source sentences 261 or similar. In some modalities, the loss function is associated with one or more metrics related to the quality of text simplification, such as SARI or similar. In some modalities, the training engine 122 calculates the gradient of the loss function with respect to the parameters of the neural network comprising the automatic preprocessing model 220 and updates the parameters by taking a step in the opposite direction of the gradient.In one case, the step size is determined by a training rate, which can be a constant rate (e.g., a step size of 0.001, or similar). In one mode, the training engine 122 trains the automatic preprocessing model 220 using one or more hyperparameters. Each hyperparameter defines “higher-level” properties of the automatic preprocessing model 220 rather than internal parameters of the automatic preprocessing model 220 that are updated during the training of the automatic preprocessing model 220 and subsequently used to generate predictions, inferences, scores, and / or other output from the automatic preprocessing model 220.Hyperparameters include a learning rate (e.g., a step size in gradient descent), a convergence parameter that controls the convergence rate in a machine learning model, a model topology (e.g., the number of layers in a neural network or deep learning model), a number of training samples in training data for a machine learning model, a parameter optimization technique (e.g., a formula and / or gradient descent technique used to update parameters of a machine learning model), a data augmentation parameter that applies transformations to features introduced into the automatic preprocessing model, a model type (e.g., neural network, clustering technique, regression model, support vector machine, tree-based model, ensemble model, etc.), or the like.In some modalities, the training engine 122 trains the automatic preprocessing model 220 using hyper-parameters such as number of recurrent units, pre-trained word integrations, dropout rate (e.g., 0.2), size word representations (e.g., 512), feed front layers with inner dimension (e.g., 4096), or similar. The training engine 122 updates the parameters of the automatic preprocessing model 220 based on the loss function. In some modalities, the training engine 122 updates the parameters of the automatic preprocessing model 220 in each training iteration to reduce the value of the cross-entropy loss between the generated preprocessed sentence 243 and the corresponding back translation 242 in the filtered set of back translations. In some modalities, the update is performed by propagating the loss backward through the automatic preprocessing model 220 to adjust model parameters or weights on connections between neurons in the neural network. The training engine 122 determines whether a threshold condition for the loss function has been met. In some modes, the training engine 122 repeats the training process for multiple iterations until a threshold condition is reached. In some modes, the threshold condition is reached when the training process converges. For example, convergence is reached when the cross-entropy loss changes very little or not at all with each iteration of the training process. In other cases, convergence is reached when the mean squared error for the loss function remains constant after a certain number of iterations. In some modes, the threshold condition is a predetermined value or range for the mean squared error associated with the loss function.In some modalities, the threshold condition is a predetermined value or range for the error associated with one or more simplification quality metrics such as SARI, or similar. In some modalities, the threshold condition is a certain number of training process iterations (e.g., 50 epochs, 800 epochs), a predetermined amount of time (e.g., 8 hours, 10 hours, 40 hours), or similar. When the threshold condition has been met, the training engine 122 filters the set of preprocessed sentences using the filtering module 230, based on one or more metrics. In some modalities, the filtering module 230 is configured to compare text associated with preprocessed sentences 243 or similar with one or more reference texts (e.g., source sentences 261, back translations 242, reference simplification data, or similar). In some modalities, the filtering module 230 6 compares each of the preprocessed sentences 243 with multiple reference texts or similar. In other cases, the filtering module 230 is configured to assign a score associated with the overall quality of the preprocessed sentences 243 based on one or more metrics associated with the quality of text simplification, such as SARI, BLEU, or similar. In some modalities, the filtering module 230 is configured to assign a score to one or more segments of the preprocessed sentences 243, one or more n-grams included in the preprocessed sentences 243 (e.g., word sequences, or similar), alignment between one or more sequences in the preprocessed sentences 243 and the reference text, or similar. The filtering module 230 then determines a statistical measurement, such as mean values, standard deviation, range of values, mean values, and / or similar, based on the combination of the scores assigned to one or more segments.In some versions, filter module 230 filters preprocessed sentences 243 that do not meet one or more predetermined threshold criteria based on one or more metrics associated with simplification quality or similar factors. In some versions, filter module 230 filters preprocessed sentences 243 based on length, grammatical rules, or similar factors. In some versions, filter module 230 includes a user interface that provides interactive functionality for receiving user input, such as user ratings of simplification quality or similar factors. Test engine 124 includes the functionality to run the trained automatic preprocessing model 220 issued by the training engine 122. Test engine 124 applies the trained automatic preprocessing model 220 to preprocess one or more sentences before translation through the black-box machine translation system 210. Test engine 124 includes, without limitation, the black-box machine translation system 210, the automatic preprocessing model 220, the filtering module 230, the preprocessed sentences 251, and the translations of preprocessed sentences 252. Preprocessed sentences 251 include text corresponding to a preprocessed version of source sentences 261 generated using the trained automatic preprocessing model 220 emitted by the training engine 122. In some modalities, preprocessed sentences 251 include paraphrased text, a lexically simpler variant of the original text, a syntactically simpler variant of the original text, text with a simpler sentence structure, text with reduced ambiguity, or similar text corresponding to source sentences 261. In some modalities, during training, preprocessed sentences 251 include multiple simplifications for a given source sentence 261 or similar text. Preprocessed sentence translations 252 include text obtained by using the black-box machine translation system 210 to translate preprocessed sentences 251 from a source language (e.g., English, French, Spanish, Portuguese, or similar) into a target language (e.g., Welsh, Quechua, Swahili, Punjabi, or similar). In some modalities, the black-box machine translation system 210 generates, for given preprocessed sentences 251, multiple preprocessed sentence translations 252 associated with multiple target languages, with each preprocessed sentence translation 252 corresponding to a target language. In operation, the test engine 124 obtains a source sentence 261 in a source language for translation into a target language. The trained automatic preprocessing model 220 generates a preprocessed sentence 251 derived from the source sentence 261. The black-box machine translation system 210 generates a translation of the preprocessed sentence into the target language. The test engine 124 updates parallel bodies of language pairs 262 based on the translation of the preprocessed sentence 252. Details regarding this test process are provided below. The test engine 124 obtains, for translation into a target language, a source sentence 261 in a source language. In some modes, a user selects the source sentence 261 from a web-based program, from local storage on the computing device 100, from natural language generation software, or similar. In some modes, the user enters the source sentence 261 using an interactive user interface or similar. In some modes, the user can select a complete sentence, a portion of a sentence, an aggregate of one or more portions from a text document, or similar. The automatic preprocessing model 220 generates a preprocessed sentence 251 derived from the source sentence 261. In some modalities, the test engine 124 preprocesses Y' each source for each pair of test languages j using the trained simplification model, such as the automatic preprocessing model 220, to obtain the preprocessed sentence X¡* where X*=fAPP(X¡). In the equation above, Xi* represents the preprocessed sentence 251; X' represents the source sentence 261; and fAPP represents the automatic preprocessing model 220 for a particular source language. The black-box machine translation system 210 generates a translation of the preprocessed sentence in the target language. In some modalities, the test engine 124 translates the simplified source using the black-box machine translation model for the test language pair, as emphasized in the following equation: YJX= (1) and. / ' In the equation above, X represents a translation of preprocessed sentences 251, such as the translations of preprocessed sentences 252; Xr represents the preprocessed sentence 251; andJ represents the machine translation model used to translate each preprocessed sentence 251 from the source language to the target language, such as the black box machine translation system 210. Test engine 124 updates parallel bodies of language pairs 262 based on the preprocessed sentence translation 252. In some modalities, test engine 124 determines, using filtering module 230, a score associated with the overall quality of the preprocessed sentence translation 252 based on one or more metrics associated with translation quality, such as BLEU, NIST, METEOR, GLEU, WER, TER, ROUGE, or similar. Test engine 124 updates parallel bodies of language pairs 262 based on the preprocessed sentence translation 252 when the score assigned to preprocessed sentences 251 meets one or more predetermined threshold criteria based on one or more metrics associated with translation quality or similar. In some modes, test engine 124 updates parallel bodies of language pairs 262 based on preprocessed sentences 251. In some cases, test engine 124 determines, using filtering module 230, a score associated with the overall quality of preprocessed sentences 251 based on one or more metrics associated with simplification quality, such as SARI, BLEU, or similar. Test engine 124 updates parallel bodies of language pairs 262 based on preprocessed sentences 251 when the score assigned to preprocessed sentences 251 meets one or more predetermined threshold criteria based on one or more metrics associated with simplification quality or similar. Figure 3 is a flowchart of the method steps for a sentence preprocessing procedure executed by the training engine and the test engine of Figure 1, according to various modalities of this disclosure. Although the method steps are described in conjunction with the systems in Figures 1 and 2, those skilled in the art will understand that any system configured to execute the method steps in any order falls within the scope of this disclosure. In step 301, the training engine 122 obtains, for translation into a target language, a set of source sentences 261 in a source language. In various modalities, the source sentences 261 include any combination of one or more words, phrases, sentences, paragraphs, text sequences, or the like in one or more domains such as descriptive text, conversational dialogues, spoken language, weather data, medical data, legal data, or the like. In some modalities, source sentences 261 include one or more sentences derived from one or more text datasets, from a web-based program, from local storage on the computing device 100, from natural language generation software, or the like. In some modalities, the training engine 122 selects 9 source sentences 261 in a user-specified domain, a combination of multiple domains, or similar. In some modalities, the black-box machine translation system 210 selects the source language based on ease of translation into a target language, similarity to a low-resource language, or similar. In step 302, the training engine 122 generates, using the black-box machine translation system 210, a reverse translation 242 for each highly accurate translation 244 associated with each source sentence in the source sentence set 261. In some modalities, the black-box machine translation system 210 generates each reverse translation 242 by translating the highly accurate translations 244 from the target language to the source language (e.g., English or similar). In some modalities, the black-box machine translation system 210 generates multiple reverse translations 242 by translating multiple highly accurate translations 244 associated with a given source sentence 261. In some modalities, the black-box machine translation system 210 generates each reverse translation 242 by translating any translation (e.g., original translations 264) from one or more high-resource target languages or similar. In step 303, the training engine 122 filters, using filtering module 230, the set of back translations 242 associated with the source sentence set 261 based on one or more metrics. In another case, filtering module 230 is configured to assign a score associated with the overall quality of the back translations 242 based on one or more metrics associated with translation quality, such as BLEU, NIST, METEOR, GLEU, WER, TER, ROUGE, or similar. In some modalities, filtering module 230 filters back translations 242 that do not meet one or more predetermined threshold criteria based on one or more metrics associated with translation quality or similar. In some modalities, filtering module 230 filters back translations 242 based on length, grammatical rules, language model score, or similar.In some versions, the 230 filtering module includes a user interface that provides interactive functionality for receiving user input such as user ratings of translation quality or similar. In step 304, the training engine 122 generates, using the automatic preprocessing model 220, a preprocessed sentence 243 associated with each source sentence in the source sentence set 261. In some modalities, the automatic preprocessing model 220 preprocesses each of the source sentences 261 and the corresponding back translations 242 to obtain preprocessed sentences 243. In some modalities, the training engine 122 trains the automatic preprocessing model 220 for one or more source languages associated with a low-resource language pair, a high-resource language pair, or the like. In step 305, the training engine 122 determines a loss function based on the difference between each preprocessed sentence 243 and its corresponding back translation in the filtered set of back translations 242. In some modalities, the training engine 122 determines a loss function based on the difference between each preprocessed sentence 243 and its corresponding source sentences 261 or similar. In some modalities, the loss function is associated with one or more metrics related to the quality of text simplification, such as SARI or similar. In some modalities, the training engine 122 calculates the gradient of the loss function with respect to the parameters of the neural network comprising the automatic preprocessing model 220, and updates the parameters by taking a step in the opposite direction of the gradient. In step 306, the training engine 122 updates the parameters of the automatic preprocessing model based on the loss function. In some modalities, the training engine 122 updates the parameters of the automatic preprocessing model 220 in each training iteration to reduce the mean squared error value for the loss function. In some modalities, the update is performed by propagating the loss backward through the automatic preprocessing model 220 to adjust model parameters or weights on connections between neurons in the neural network. In step 307, the training engine 122 determines whether a threshold condition for the loss function has been met. In some modalities, the threshold condition is met when the training process reaches convergence. In some modalities, the threshold condition is a predetermined value or range for the mean squared error associated with the loss function. In some modalities, the threshold condition is a predetermined value or range for the error associated with one or more simplification quality metrics such as SARI, or similar. In some modalities, the threshold condition is a certain number of training process iterations (e.g., 50 epochs, 800 epochs), a predetermined amount of time (e.g., 8 hours, 10 hours, 40 hours), or similar. When the threshold condition is met, training engine 122 advances the sentence preprocessing procedure to step 308. When the threshold condition has not been met, training engine 122 repeats a portion of the sentence preprocessing procedure starting with step 302. In step 308, the training engine 122 filters the set of preprocessed sentences using filter module 230, based on one or more metrics. In some modalities, filter module 230 filters preprocessed sentences 243 that do not meet one or more predetermined threshold criteria based on one or more metrics associated with simplification quality or similar factors. In some modalities, filter module 230 filters preprocessed sentences 243 based on length, grammatical rules, or similar factors. In some modalities, filter module 230 includes a user interface that 1 provides interactive functionality to receive user input such as user rating of simplification quality or similar. Figure 4 is a flowchart of the method's steps for a sentence translation procedure, according to various modalities of this disclosure. Although the method's steps are described in conjunction with the systems in Figures 1 and 2, those skilled in the art will understand that any system configured to execute the method's steps in any order falls within the scope of this disclosure. In step 401, the test engine 124 retrieves a source sentence 261 in a source language for translation into a target language. In some modalities, a user selects the source sentence 261 from a web-based program, from local storage on the computing device 100, from natural language generation software, or similar. In some modalities, the user enters the source sentence 261 using an interactive user interface or similar. In some modalities, the user can select a complete sentence, a portion of a sentence, an aggregate of one or more portions from a text document, or similar. In step 402, the test engine 124 generates, using the automatic preprocessing model 220, a preprocessed sentence 251 derived from the source sentence 261. In some modalities, the automatic preprocessing model 220 uses the black-box machine translation system 210 to generate a reverse translation 242, and then preprocesses the source sentence 261 and the reverse translation 242 to obtain the preprocessed sentence 251. In step 403, the test engine 124 generates, using the black-box machine translation system 210, a translation of the preprocessed sentence 251 into the target language. In some modalities, the black-box machine translation system 210 translates the preprocessed sentence 251 into multiple preprocessed sentence translations 252 associated with multiple target languages. In optional step 404, test engine 124 updates parallel bodies of language pairs 262 based on the translation of preprocessed sentences 252. In some modalities, test engine 124 determines, using filtering module 230, a score associated with the overall translation quality of preprocessed sentences 252 based on one or more metrics associated with translation quality, such as BLEU, NIST, METEOR, GLEU, WER, TER, ROUGE, or similar. In some modalities, test engine 124 updates parallel bodies of language pairs 262 based on the translation of preprocessed sentences 252 when the score assigned to preprocessed sentences 251 meets one or more predetermined threshold criteria based on one or more metrics associated with translation quality or similar.In some modes, the test engine 124 updates parallel bodies of language pairs 262 by correcting the translation of the original sentence pair using the preprocessed sentence translation 252. In some modes, the test engine 124 updates parallel bodies of language pairs 262 by adding a new sentence pair translation corresponding to the preprocessed sentence translation 252. Figure 5 illustrates a network infrastructure 500 used to distribute content to content servers 510 and endpoint devices 515, according to various embodiments of the invention. As shown, the network infrastructure 500 includes content servers 510, the control server 520, and endpoint devices 515, each of which is connected via a network 505. Each 515 endpoint device communicates with one or more 510 content servers (also referred to as “caches” or “nodes”) over the 505 network to download content, such as text data, graphics data, audio data, video data, and other types of data. The downloadable content, also referred to here as a “file,” is then presented to a user on one or more 515 endpoint devices.In various forms, 515 endpoint devices may include computer systems, set-top boxes, mobile computers, smartphones, tablets, handheld video game systems and consoles, digital video recorders (DVRs), DVD players, connected digital TVs, dedicated media streaming devices (e.g., the Roku® set-top box), and / or any other technically feasible computing platform that has network connectivity and the ability to present content, such as text, images, video, and / or audio content, to a user. Each content server (510) can include a web server, database, and server application (617) configured to communicate with the control server (520) to determine the location and availability of various files that are tracked and managed by the control server (520). Each content server (510) can also communicate with a replenishment source (530) and one or more other content servers (510) to "feed" each content server (510) with copies of various files. Additionally, content servers (510) can respond to file requests received from endpoint devices (515). The files can then be distributed from the content server (510) or through a wider content distribution network.In some configurations, 510 content servers allow users to authenticate (for example, using a username and password) to access files stored on the 510 content servers. Although only a single 520 control server is shown in Figure 5, in various configurations multiple 520 control servers can be implemented to track and manage files. In various forms, the 530 fill source may include an online storage service (e.g., Amazon® Simple Storage Service, Google Cloud Storage®, etc.) in which a catalog of files, including thousands or millions of files, is stored and accessed to populate the 510 content servers. Although only a single 530 popup source is shown in Figure 5, in various configurations multiple 530 popup sources can be implemented to service file requests. Furthermore, as is well understood, any cloud-based services can be included in the architecture of Figure 5 beyond the 530 popup source to the desired or required extent. Figure 6 is a block diagram of a content server 510 that can be implemented in conjunction with the network infrastructure 500 of Figure 5, according to various embodiments of the present invention. As shown, the content server 510 includes, without limitation, a central processing unit (CPU) 604, a system disk 606, an input / output (I / O) device interface 608, a network interface 610, an interconnect 612, and system memory 614. CPU 604 is configured to fetch and execute programming instructions, such as the server application 617, stored in system memory 614. Similarly, CPU 604 is configured to store application data (for example, software libraries) and fetch application data from system memory 614. Interconnect 612 is configured to facilitate the transmission of data, such as programming instructions and application data, between CPU 604, system disk 606, I / O device interface 608, network interface 610, and system memory 614. I / O device interface 608 is configured to receive input data from I / O devices 616 and transmit the input data to CPU 604 via interconnect 612. For example, I / O devices 616 might include one or more buttons, a keyboard, a mouse, and / or other input devices.The I / O device interface 608 is also configured to receive output data from CPU 604 via interconnect 612 and transmit the output data to I / O devices 616. System disk 606 may include one or more hard disk drives, solid-state storage devices, or similar storage devices. System disk 606 is configured to store non-volatile data such as 618 files (for example, audio files, video files, subtitles, application files, software libraries, etc.). 618 files can then be retrieved by one or more 515 endpoint devices over the 505 network. In some configurations, the 610 network interface is configured to operate in compliance with the Ethernet standard. System memory 614 includes a server application 617 configured to service file requests 618 received from endpoint device 515 and other content servers 510. When server application 617 receives a request for a file 618, server application 617 retrieves the corresponding file 618 from system disk 606 and transmits the file 618 to an endpoint device 515 or a content server 510 over the network 505. Figure 7 is a block diagram of a control server 520 that can be implemented in conjunction with the network infrastructure 500 of Figure 5, according to various embodiments of the present invention. As shown, the control server 520 includes, without limitation, a central processing unit (CPU) 704, a system disk 706, an input / output (I / O) device interface 708, a network interface 710, an interconnect 712, and a system memory 714. CPU 704 is configured to fetch and execute programming instructions, such as control application 717, stored in system memory 714. Similarly, CPU 704 is configured to store application data (for example, software libraries) and fetch application data from system memory 714 and a database 718 stored on system disk 706. Interconnect 712 is configured to facilitate data transmission between CPU 704, system disk 706, I / O device interface 708, network interface 710, and system memory 714. I / O device interface 708 is configured to transmit input and output data between I / O devices 716 and CPU 704 via interconnect 712. System disk 706 may include one or more hard disk drives, solid-state storage devices, and the like.System disk 706 is configured to store a database 718 of information associated with content servers 510, fill sources 530, and archives 618. System memory 714 includes a control application 717 configured to access information stored in database 718 and process the information to determine how specific files 618 will be replicated through content servers 510 included in the network infrastructure 500. The control application 717 can also be configured to receive and analyze performance characteristics associated with one or more of the content servers 510 and / or endpoint devices 515. Figure 8 is a block diagram of an endpoint device 515 that can be implemented in conjunction with the network infrastructure 500 of Figure 5, according to various embodiments of the present invention. As shown, the endpoint device 515 may include, without limitation, a CPU 810, a graphics subsystem 812, an I / O device interface 814, a mass storage unit 816, a network interface 818, an interconnect 822, and a memory subsystem 830. In some configurations, CPU 810 is configured to fetch and execute programming instructions stored in memory subsystem 830. Similarly, CPU 810 is configured to store and fetch application data (for example, software libraries) residing in memory subsystem 830. Interconnect 822 is configured to facilitate the transmission of data, such as programming instructions and application data, between CPU 810, graphics subsystem 812, I / O device interface 814, mass storage unit 816, network interface 818, and memory subsystem 830. In some embodiments, the graphics subsystem 812 is configured to generate video data frames and transmit the video data frames to the display device 850. In some embodiments, the graphics subsystem 812 may be integrated on a single integrated circuit, along with the CPU 810. The display device 850 may comprise any technically feasible means of generating an image for display. For example, the display device 850 may be fabricated using liquid crystal display (LCD) technology, cathode ray tube (CRT) technology, and light-emitting diode (LED) display technology. An input / output (I / O) device interface 814 is configured to receive input data from user I / O devices 852 and transmit the input data to the CPU 810 via interconnect 822.For example, user I / O devices 852 may comprise one or more buttons, a keyboard, and a mouse or other pointing device. I / O device interface 814 also includes an audio output unit configured to generate an electrical audio output signal. User I / O devices 852 include a loudspeaker configured to generate an acoustic output in response to the electrical audio output signal. In alternative embodiments, display device 850 may include the loudspeaker. A television is an example of a device known in the art that can display video frames and generate an acoustic output. A mass storage device (816), such as a hard disk drive or flash memory storage unit, is configured to store non-volatile data. A network interface (818) is configured to transmit and receive data packets across the network (505). In some configurations, the network interface (818) is configured to communicate using the widely used Ethernet standard. The network interface (818) is coupled to the CPU (810) via the interconnect (822). In some forms, the memory subsystem 830 includes programming instructions and application data comprising an operating system 832, a user interface 834, and a playback application 836. The operating system 832 executes system management functions such as hardware device management, including the network interface 818, the mass storage unit 816, the I / O device interface 814, and the graphics subsystem 812. The operating system 832 also provides memory and process management models for the user interface 434 and the playback application 836. The user interface 834, as a window-object metaphor, provides a mechanism for user interaction with the endpoint device 515. Those skilled in the art will recognize the various operating systems and user interfaces that are very 6 known in the art and suitable for incorporation into the 515 end-point device. In some modes, the playback application 836 is configured to request and receive content from the content server 510 via the network interface 818. Additionally, the playback application 836 is configured to interpret and present content via the deployment device 850 and / or user I / O devices 852. In short, the training engine 122 obtains, for translation into a target language, a set of source sentences 261 in a source language. The black-box machine translation system 210 generates a back translation 242 for each highly accurate translation 244 associated with each source sentence in the set of source sentences 261. The filtering module 230 filters the set of back translations 242 associated with the set of source sentences 261 based on one or more metrics. The automatic preprocessing model 220 generates a preprocessed sentence 243 associated with each source sentence in the set of source sentences 261. The training engine 122 determines a loss function based on each preprocessed sentence 243 and the corresponding back translation 242 in the filtered set of back translations. The training engine 122 updates parameters of the automatic preprocessing model 220 based on the loss function.The training engine 122 determines whether a threshold condition for the loss function has been met. When the threshold condition has been met, the training engine 122 filters the preprocessed sentence set using the filtering module 230, based on one or more metrics. Test engine 124 obtains, for translation into a target language, a source sentence 261 in a source language. The trained automatic preprocessing model 220 generates a preprocessed sentence 251 derived from the source sentence 261. The black-box machine translation system 210 generates a translation of the preprocessed sentence into the target language. Test engine 124 updates parallel bodies of language pairs 262 based on the translation of preprocessed sentences 252. Disseminated techniques allow for the easy adaptation of a simplification model to a new domain by efficiently generating training data that includes large-scale parallel bodies based on backtranslations derived from high-resource language pairs. The trained simplification model achieves improved performance in simplifying complex, non-compositional idiomatic phrases in low-resource language pairs before translation by black-box machine translation systems, thus resulting in improved translation performance for low-resource language pairs while preserving the meaning of the original sentences. 1. In some embodiments, a computer-implemented method for training a sentence preprocessing model comprises: determining, using a machine translation system, a back translation associated with a highly accurate translation of a source sentence in a source language into a target language, wherein the back translation comprises a translation of the highly accurate translation from one or more target languages into the source language; determining, using the sentence preprocessing model, a simplified sentence associated with the source sentence; and updating one or more parameters of the sentence preprocessing model based on the simplified sentence and the back translation. 2. The computer-implemented method of clause 1, further comprising: determining a loss function based on the simplified sentence and the back translation; and determining, based on the loss function, whether a threshold condition is achieved. 3. The computer-implemented method of clauses 1 or 2, which further comprises: determining, using the machine translation system, a translation of the simplified sentence into the target language. 4. The computer-implemented method of any of clauses 1-3, which further comprises: assigning, based on one or more metrics, a score to the back translation. 5. The computer-implemented method of any of clauses 1-4, wherein one or more metrics include at least one of BLEL), NIST, METEOR, GLEU, WER, TER, or ROUGE. 6. The computer-implemented method of any of clauses 1-5, where the score is based on a comparison between the reverse translation and the highly accurate translation. 7. The computer-implemented method of any of clauses 1-6, which further comprises: assigning, based on one or more metrics, a score to the simplified sentence. 8. The computer-implemented method of any of clauses 1-7, wherein one or more metrics include at least one of: SARI or BLEU. 9. The computer-implemented method of any of clauses 1-8, wherein the score is based on a comparison between the simplified sentence and the reference simplification data. 10. The computer-implemented method of any of clauses 1-9, wherein the target language is selected on the basis of at least one of: ease of translation from the source language, or similarity to a low-resource language. 11. In some embodiments, one or more non-transient, computer-readable media store instructions that, when executed by one or more processors, cause one or more processors to perform the following steps: determine, using a machine translation system, a back translation associated with a highly accurate translation of a source sentence in a source language into a target language, wherein the back translation comprises a translation of the highly accurate translation from one or more target languages into the source language; determine, using the sentence preprocessing model, a simplified sentence associated with the source sentence; and update one or more parameters of the sentence preprocessing model based on the simplified sentence and the back translation. 12. The non-transient computer-readable means of clause 11, which further comprises: determining a loss function based on the simplified sentence and the back translation; and determining, based on the loss function, whether a threshold condition is achieved. 13. The non-transitory computer-readable means or means of clauses 11 or 12, which further comprises: determining, using the machine translation system, a translation of the simplified sentence into the target language. 14. The non-transitory computer-readable means or means of any of clauses 11-13, which further comprises: assigning, on the basis of one or more metrics, a score to the back translation. 15. The non-transient computer-readable medium or media of any of clauses 11-14, wherein one or more metrics include at least one of BLEU, NIST, METEOR, GLEU, WER, TER, or ROUGE. 16. The non-transitory computer-readable means or means of any of clauses 11-15, where the score is based on a comparison between the back translation and the highly accurate translation. 17. The non-transitory computer-readable means or means of any of clauses 11-16, which further comprises: assigning, based on one or more metrics, a score to the simplified sentence. 18. The non-transient computer-readable medium or media of any of clauses 11-17, wherein the metric or metrics include at least one of: SARI or BLEU. 19. The non-transitory computer-readable medium or media of any of clauses 11-18, wherein the target language is selected on the basis of at least one of: ease of translation from the source language, or similarity to a low-resource language. 20. In some embodiments, a system comprises: a memory that stores one or more software applications; and a processor that, when executing one or more software applications, is configured to perform the steps of: determining, using a machine translation system, a reverse translation associated with a highly accurate translation of a source sentence in a source language into a target language, wherein the reverse translation comprises a translation of the highly accurate translation of one or more 9 target languages to the source language; determine, using the sentence preprocessing model, a simplified sentence associated with the source sentence; and update one or more parameters of the sentence preprocessing model based on the simplified sentence and the back translation. The descriptions of the various modalities have been presented for illustrative purposes, but are not intended to be exhaustive or limited to the modalities disclosed. Many modifications and variations will be apparent to those skilled in the technique without departing from the scope and spirit of the modalities described. Aspects of these modalities may be incorporated as a computer program system, method, or product. Accordingly, aspects of this disclosure may take the form of a purely hardware modality, a purely software modality (including firmware, resident software, microcode, etc.), or a modality that combines hardware and software aspects, which may generally be referred to herein as a module, system, or computer. Furthermore, any hardware and / or software technique, process, function, component, engine, module, or system described in this disclosure may be implemented as a circuit or assembly of circuits. Additionally, aspects of this disclosure may take the form of a computer program product embedded in one or more computer-readable media that contain computer-readable program code. Any combination of one or more computer-readable media may be used. A computer-readable medium may be a computer-readable signal medium or a computer-readable storage medium. A computer-readable storage medium may be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination thereof.More specific examples (a non-exhaustive list) of computer-readable storage media would include the following: an electrical connection having one or more wires, a laptop diskette, a hard disk drive, random-access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or Flash Memory), optical fiber, a portable compact disc (CD-ROM), an optical storage disc, an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer-readable storage medium may be any tangible medium capable of containing or storing a program for use by or in connection with an instruction-executing system, apparatus, or device. Aspects of this disclosure were previously described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products in accordance with the disclosure's modalities. It is understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor in a general-purpose computer, a special-purpose computer, or other programmable data-processing apparatus to produce a machine.The instructions, when executed through the computer's processor or other programmable data processing device, enable the implementation of the functions / actions specified in the flowchart and / or block diagram(s). Such processors may be, without limitation, general-purpose processors, special-purpose processors, application-specific processors, or field-programmable gate arrays. The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of various implementations of computer program systems, methods, and products according to the various modalities of this disclosure. In this sense, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions to implement the specified logical functions. It should also be noted that, in some alternative implementations, the functions shown in the block may occur out of the order shown in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending on the functionality involved.It will also be noted that each block in the block diagrams and / or flowchart illustration, and combinations of blocks in the block diagrams and / or flowchart illustration, can be implemented through systems based on special-purpose hardware that perform the specified functions or acts, or combinations of computer instructions and special-purpose hardware. Although the foregoing is directed to modalities of the present disclosure, other modalities as well as additional modalities of disclosure may be contemplated without departing from the basic scope thereof, and the scope thereof is determined by the following claims.
Claims
1. A computer-implemented method for training a sentence preprocessing model, characterized in that it comprises: determining, using a machine translation system, a back translation associated with a highly accurate translation of a source sentence in a source language to a target language, wherein the back translation comprises a translation of the highly accurate translation from one or more target languages to the source language; determining, using the sentence preprocessing model, a simplified sentence associated with the source sentence; and updating one or more parameters of the sentence preprocessing model based on the simplified sentence and the back translation. 2 - The computer-implemented method according to claim 1, characterized in that it further comprises: determining a loss function based on the simplified sentence and the back translation; and determining, based on the loss function, whether a threshold condition is achieved.
3. The computer-implemented method according to claim 1, characterized in that it further comprises: determining, using the machine translation system, a translation of the simplified sentence into the target language. 4 - The computer-implemented method according to claim 1, characterized in that it further comprises: assigning, based on one or more metrics, a score for the reverse translation.
5. The computer-implemented method according to claim 4, characterized in that one or more metrics include at least one of BLEU, NIST, METEOR, GLEU, WER, TER, or ROUGE.
6. The computer-implemented method according to claim 4, characterized in that the score is based on a comparison between the reverse translation and the highly accurate translation.
7. The computer-implemented method according to claim 1, characterized in that it further comprises: assigning, based on one or more metrics, a score to the simplified sentence.
8. The computer-implemented method according to claim 7, characterized in that one or more metrics include at least one of: SARI or BLEU.
9. The computer-implemented method according to claim 7, characterized in that the score is based on a comparison between the simplified sentence and the reference simplification data.
10. The computer-implemented method according to claim 1, characterized in that the target language is selected based on at least one of: ease of translation from the source language, or similarity to a low-resource language.
11. A system, characterized in that it comprises: a memory that stores one or more software applications; and a processor that, when executing one or more software applications, is configured to perform the steps of: determining, using a machine translation system, a reverse translation associated with a highly accurate translation of a source sentence in a source language to a target language, wherein the reverse translation comprises a translation of the highly accurate translation from one or more target languages to the source language; determining, using the sentence preprocessing model, a simplified sentence associated with the source sentence; and updating one or more parameters of the sentence preprocessing model based on the simplified sentence and the reverse translation.