{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/learning-to-speak-fluently-in-a-foreign","title":"Learning to Speak Fluently in a Foreign Language: Multilingual Speech Synthesis and Cross-Language Voice Cloning","arxiv_id":"1907.04448","date":"2019-07-09","proceeding":null,"authors":["Yu Zhang","Ron J. Weiss","Heiga Zen","Yonghui Wu","Zhifeng Chen","RJ Skerry-Ryan","Ye Jia","Andrew Rosenberg","Bhuvana Ramabhadran"],"abstract":"We present a multispeaker, multilingual text-to-speech (TTS) synthesis model based on Tacotron that is able to produce high quality speech in multiple languages. Moreover, the model is able to transfer voices across languages, e.g. synthesize fluent Spanish speech using an English speaker's voice, without training on any bilingual or parallel examples. Such transfer works across distantly related languages, e.g. English and Mandarin. Critical to achieving this result are: 1. using a phonemic input representation to encourage sharing of model capacity across languages, and 2. incorporating an adversarial loss term to encourage the model to disentangle its representation of speaker identity (which is perfectly correlated with language in the training data) from the speech content. Further scaling up the model by training on multiple speakers of each language, and incorporating an autoencoding input to help stabilize attention during training, results in a model which can be used to consistently synthesize intelligible speech for training speakers in all languages seen during training, and in native or foreign accents.","url_abs":"https://arxiv.org/abs/1907.04448v2","url_pdf":"https://arxiv.org/pdf/1907.04448v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"learning-to-speak-fluently-in-a-foreign","repo_url":"https://github.com/Jeevesh8/Cross-Lingual-Voice-Cloning","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"paper_slug":"learning-to-speak-fluently-in-a-foreign","repo_url":"https://github.com/PaddlePaddle/DeepSpeech","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"paddle","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"learning-to-speak-fluently-in-a-foreign","repo_url":"https://github.com/PaddlePaddle/PaddleSpeech","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"paddle","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"learning-to-speak-fluently-in-a-foreign","repo_url":"https://github.com/jackaduma/CycleGAN-VC2","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"speech-synthesis","task_name":"Speech Synthesis"},{"task_slug":"text-to-speech","task_name":"Text to Speech"},{"task_slug":"voice-cloning","task_name":"Voice Cloning"},{"task_slug":"text-to-speech-1","task_name":"text-to-speech"}],"methods":[{"method_slug":"batch-normalization","method_name":"Batch Normalization"},{"method_slug":"bigru","method_name":"BiGRU"},{"method_slug":"cbhg","method_name":"CBHG"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"gru","method_name":"GRU"},{"method_slug":"griffin-lim-algorithm","method_name":"Griffin-Lim Algorithm"},{"method_slug":"highway-layer","method_name":"Highway Layer"},{"method_slug":"highway-network","method_name":"Highway Network"},{"method_slug":"max-pooling","method_name":"Max Pooling"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"residual-gru","method_name":"Residual GRU"},{"method_slug":"sigmoid-activation","method_name":"Sigmoid Activation"},{"method_slug":"tacotron","method_name":"Tacotron"},{"method_slug":"tanh-activation","method_name":"Tanh Activation"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1907.04448","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1907.04448"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jackaduma/CycleGAN-VC2","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/PaddlePaddle/PaddleSpeech","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/PaddlePaddle/DeepSpeech","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Jeevesh8/Cross-Lingual-Voice-Cloning","reach":{"status":"ok","spdx":"BSD-3-Clause"}}],"summary":{"ran_draft_wrong":2,"unverified":7},"by_repo_kind":{"listed":{"samples":9,"ran":2,"repositories":2}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":7,"samples":[{"code_sha256_prefix":"83e2c862f7374ac7","entry":"dynamic_range_compression","repo":"Jeevesh8/Cross-Lingual-Voice-Cloning","repo_kind":"listed","path":"audio_processing.py","file_url":"https://github.com/Jeevesh8/Cross-Lingual-Voice-Cloning/blob/HEAD/audio_processing.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"BSD-3-Clause","inline_ok":false,"mcp_get_code":{"code_sha256":"83e2c862f7374ac7"}},{"code_sha256_prefix":"9f9ec26d4cdfdf7d","entry":"griffin_lim","repo":"Jeevesh8/Cross-Lingual-Voice-Cloning","repo_kind":"listed","path":"audio_processing.py","file_url":"https://github.com/Jeevesh8/Cross-Lingual-Voice-Cloning/blob/HEAD/audio_processing.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":false,"mcp_get_code":{"code_sha256":"9f9ec26d4cdfdf7d"}},{"code_sha256_prefix":"46c1836d242e90f0","entry":"DER","repo":"PaddlePaddle/DeepSpeech","repo_kind":"listed","path":"utils/DER.py","file_url":"https://github.com/PaddlePaddle/DeepSpeech/blob/HEAD/utils/DER.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"46c1836d242e90f0"}},{"code_sha256_prefix":"f7bf9f0265e33cf0","entry":"apply_gradient_allreduce","repo":"Jeevesh8/Cross-Lingual-Voice-Cloning","repo_kind":"listed","path":"distributed.py","file_url":"https://github.com/Jeevesh8/Cross-Lingual-Voice-Cloning/blob/HEAD/distributed.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":false,"mcp_get_code":{"code_sha256":"f7bf9f0265e33cf0"}},{"code_sha256_prefix":"63cd61beeb29c53c","entry":"grad_reverse","repo":"Jeevesh8/Cross-Lingual-Voice-Cloning","repo_kind":"listed","path":"gradient_reversal.py","file_url":"https://github.com/Jeevesh8/Cross-Lingual-Voice-Cloning/blob/HEAD/gradient_reversal.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":false,"mcp_get_code":{"code_sha256":"63cd61beeb29c53c"}},{"code_sha256_prefix":"3d89a23ee4d0b639","entry":"plot_alignment_to_numpy","repo":"Jeevesh8/Cross-Lingual-Voice-Cloning","repo_kind":"listed","path":"plotting_utils.py","file_url":"https://github.com/Jeevesh8/Cross-Lingual-Voice-Cloning/blob/HEAD/plotting_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":false,"mcp_get_code":{"code_sha256":"3d89a23ee4d0b639"}},{"code_sha256_prefix":"2545971684f8134d","entry":"plot_spectrogram_to_numpy","repo":"Jeevesh8/Cross-Lingual-Voice-Cloning","repo_kind":"listed","path":"plotting_utils.py","file_url":"https://github.com/Jeevesh8/Cross-Lingual-Voice-Cloning/blob/HEAD/plotting_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":false,"mcp_get_code":{"code_sha256":"2545971684f8134d"}},{"code_sha256_prefix":"370f5007edfb630b","entry":"rectify","repo":"PaddlePaddle/DeepSpeech","repo_kind":"listed","path":"utils/DER.py","file_url":"https://github.com/PaddlePaddle/DeepSpeech/blob/HEAD/utils/DER.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"370f5007edfb630b"}},{"code_sha256_prefix":"29d749e3e95fa41d","entry":"save_figure_to_numpy","repo":"Jeevesh8/Cross-Lingual-Voice-Cloning","repo_kind":"listed","path":"plotting_utils.py","file_url":"https://github.com/Jeevesh8/Cross-Lingual-Voice-Cloning/blob/HEAD/plotting_utils.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":false,"mcp_get_code":{"code_sha256":"29d749e3e95fa41d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}