Comments (7)
Hi,
For everything we report in the paper, we never explicitly train a language model (we never use --lm_before
or --lm_after
). What we meant in the paper is that by using the denoising auto-encoder loss, we are "sort of" training the language model part of the decoder.
For instance, if an input sentence is "this restaurant is really good", and that the noise (word dropout / word shuffling) transforms it to: "this restaurant really good". Then the decoder will learn to reconstruct "this restaurant is really good" given the missing word in the noisy sentence. To do so, the decoder has to learn something about the target language, and to learn to output fluent sentences. This is what we meant by training the language model.
from unsupervisedmt.
Hi,
Thanks for the prompt response. I get the point that the denoising autoencoder acts like an LM. But shouldn't the denoising autoencoder be pre-trained first before being used in back-translation?
from unsupervisedmt.
You can do that. At the beginning, the back-translation is kind of useless because the generated translations are very bad. We tried to have a schedule to disable the back-translation initially, but this didn't make any difference on the final performance.
from unsupervisedmt.
Thanks for the reply. Appreciate it.
from unsupervisedmt.
Hi @glample ,
My task is mn-zh translation,and when I run the task on unsupervised NMT, the result just is bleu_mn_zh_test -> 0.270000 and bleu_zh_mn_test -> 1.850000 after 20 epochs, I think maybe the Language model is not good, if I pre-trained the LM, how should I use it to the unsupervised NMT?
Thanks for your time.
from unsupervisedmt.
Hi,
I would recommend having a look at https://github.com/facebookresearch/XLM/ , XLM provides efficient framework for language model pretraining / unsupervised MT, and works much better than the code in this repo.
from unsupervisedmt.
Thanks for the reply. @glample
from unsupervisedmt.
Related Issues (20)
- why MemoryError
- Why codes file is empty.? HOT 4
- for different language, where to make change?
- How to train NMT + PBSMT ?
- UnboundLocalError: local variable 'n_words' referenced before assignment
- About number of shared layers
- RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [torch.cuda.FloatTensor [14, 32, 1536]], which is output 0 of AddBackward0, is at version 2; expected version 1 instead. Hint: enable anomaly detection to find the operation that failed to compute its gradient, with torch.autograd.set_detect_anomaly(True). HOT 1
- How to run PBSMT +NMT ?
- transformer multihead attention scaling layer error
- Setting the random seed does not result in same outputs across runs
- I have trouble when run get_data_enfr.sh
- How can I modify the code to train may own dataset on specific language?
- Low utilization rate of cuda HOT 1
- How to train the vector of phrases
- Low BLEU on PBSMT HOT 3
- bpe_end issue
- Getting raise EOFError() while executing Linux Command through Netmiko
- How i can run MUSE alignment in .sh
- How to train the model without para_dataset
- Error in runny bash command. HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from unsupervisedmt.