{"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/adversarial-representation-learning-for-2","title":"Adversarial representation learning for private speech generation","arxiv_id":"2006.09114","date":"2020-06-16","proceeding":null,"authors":["David Ericsson","Adam Östberg","Edvin Listo Zec","John Martinsson","Olof Mogren"],"abstract":"As more and more data is collected in various settings across organizations, companies, and countries, there has been an increase in the demand of user privacy. Developing privacy preserving methods for data analytics is thus an important area of research. In this work we present a model based on generative adversarial networks (GANs) that learns to obfuscate specific sensitive attributes in speech data. We train a model that learns to hide sensitive information in the data, while preserving the meaning in the utterance. The model is trained in two steps: first to filter sensitive information in the spectrogram domain, and then to generate new and private information independent of the filtered one. The model is based on a U-Net CNN that takes mel-spectrograms as input. A MelGAN is used to invert the spectrograms back to raw audio waveforms. We show that it is possible to hide sensitive information such as gender by generating new data, trained adversarially to maintain utility and realism.","url_abs":"https://arxiv.org/abs/2006.09114v2","url_pdf":"https://arxiv.org/pdf/2006.09114v2.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":"adversarial-representation-learning-for-2","repo_url":"https://github.com/daverics/pcmelgan","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"privacy-preserving","task_name":"Privacy Preserving"},{"task_slug":"representation-learning","task_name":"Representation Learning"}],"methods":[{"method_slug":"1x1-convolution","method_name":"1x1 Convolution"},{"method_slug":"average-pooling","method_name":"Average Pooling"},{"method_slug":"concatenated-skip-connection","method_name":"Concatenated Skip Connection"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"dilated-convolution","method_name":"Dilated Convolution"},{"method_slug":"gan-hinge-loss","method_name":"GAN Hinge Loss"},{"method_slug":"grouped-convolution","method_name":"Grouped Convolution"},{"method_slug":"max-pooling","method_name":"Max Pooling"},{"method_slug":"melgan","method_name":"MelGAN"},{"method_slug":"melgan-residual-block","method_name":"MelGAN Residual Block"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"tanh-activation","method_name":"Tanh Activation"},{"method_slug":"u-net","method_name":"U-Net"},{"method_slug":"weight-normalization","method_name":"Weight Normalization"},{"method_slug":"window-based-discriminator","method_name":"Window-based Discriminator"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2006.09114","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2006.09114"}},"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":"deterministic:regex_extraction","url":"https://github.com/daverics/pcmelgan","reach":null}],"summary":{"ran":1,"ran_draft_wrong":1},"by_repo_kind":{"official":{"samples":2,"ran":2,"repositories":1}},"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":0,"samples":[{"code_sha256_prefix":"3e819417212dbe75","entry":"UNetFilter","repo":"daverics/pcmelgan","repo_kind":"official","path":"networks.py","file_url":"https://github.com/daverics/pcmelgan/blob/HEAD/networks.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3e819417212dbe75"}},{"code_sha256_prefix":"edf785232d1f023d","entry":"double_conv","repo":"daverics/pcmelgan","repo_kind":"official","path":"networks.py","file_url":"https://github.com/daverics/pcmelgan/blob/HEAD/networks.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"edf785232d1f023d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}