I'm building a NMT model and I have some questions about the preparation of training pairs.
Background: I have a list of sentences that have similar semantic meanings and I would like to make pairs out of them. I have a rule to select a subset of sentences and set them as the targets. The rest of the sentences will be set as sources. Then, what I'm doing right now is to pair each of the source to each of the target. This will generate (n_source * n_target) pairs.
This approach, if we look at the resulting pairs, can match each of the source to multiple targets if there are more than 1 sentence that was set as targets.
Another approach is to only select 1 target within a single cluster, and match the rest of the sentences to this target. This approach will make sure each source is only paired with one unique target.
Question: Ignoring the number of pairs generated in the end, which approach is better for NMT in general? Is it better to have one source to pair to multiple targets given that they are all valid, or is it better to keep a one-to-one relationship?
Any discussions are welcome.