{"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/phasen-a-phase-and-harmonics-aware-speech","title":"PHASEN: A Phase-and-Harmonics-Aware Speech Enhancement Network","arxiv_id":"1911.04697","date":"2019-11-12","proceeding":null,"authors":["Dacheng Yin","Chong Luo","Zhiwei Xiong","Wenjun Zeng"],"abstract":"Time-frequency (T-F) domain masking is a mainstream approach for single-channel speech enhancement. Recently, focuses have been put to phase prediction in addition to amplitude prediction. In this paper, we propose a phase-and-harmonics-aware deep neural network (DNN), named PHASEN, for this task. Unlike previous methods that directly use a complex ideal ratio mask to supervise the DNN learning, we design a two-stream network, where amplitude stream and phase stream are dedicated to amplitude and phase prediction. We discover that the two streams should communicate with each other, and this is crucial to phase prediction. In addition, we propose frequency transformation blocks to catch long-range correlations along the frequency axis. The visualization shows that the learned transformation matrix spontaneously captures the harmonic correlation, which has been proven to be helpful for T-F spectrogram reconstruction. With these two innovations, PHASEN acquires the ability to handle detailed phase patterns and to utilize harmonic patterns, getting 1.76dB SDR improvement on AVSpeech + AudioSet dataset. It also achieves significant gains over Google's network on this dataset. On Voice Bank + DEMAND dataset, PHASEN outperforms previous methods by a large margin on four metrics.","url_abs":"https://arxiv.org/abs/1911.04697v1","url_pdf":"https://arxiv.org/pdf/1911.04697v1.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":"links_only","authors_date_abstract":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license), from the Kaggle arXiv metadata snapshot of 2026-09-12"},"code_links":[{"paper_slug":"phasen-a-phase-and-harmonics-aware-speech","repo_url":"https://github.com/huyanxin/phasen","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"phasen-a-phase-and-harmonics-aware-speech","repo_url":"https://github.com/IMLHF/PHASEN-PyTorch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null},{"paper_slug":"phasen-a-phase-and-harmonics-aware-speech","repo_url":"https://github.com/IMLHF/PHASEN-TF","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"tf","reach":null}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1911.04697","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1911.04697"}},"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/IMLHF/PHASEN-TF","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/IMLHF/PHASEN-PyTorch","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/huyanxin/phasen","reach":{"status":"ok"}}],"summary":{"ran_draft_wrong":2,"ran_honours":4,"unverified":1},"by_repo_kind":{"listed":{"samples":4,"ran":3,"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":"2c216121262be5e0","entry":"enhance_one_wav","repo":"IMLHF/PHASEN-TF","repo_kind":"listed","path":"nn_se/inference.py","file_url":"https://github.com/IMLHF/PHASEN-TF/blob/HEAD/nn_se/inference.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"2c216121262be5e0"}},{"code_sha256_prefix":"e150bca493a582c4","entry":"l2_norm","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"e150bca493a582c4"}},{"code_sha256_prefix":"535f1842272618e5","entry":"remove_dc","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"535f1842272618e5"}},{"code_sha256_prefix":"45ec14424f37eebc","entry":"round_lists","repo":"IMLHF/PHASEN-TF","repo_kind":"listed","path":"nn_se/_2_train.py","file_url":"https://github.com/IMLHF/PHASEN-TF/blob/HEAD/nn_se/_2_train.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"45ec14424f37eebc"}},{"code_sha256_prefix":"d2210dd1746c323d","entry":"si_snr","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"d2210dd1746c323d"}},{"code_sha256_prefix":"38b2b21858251a72","entry":"unfold_list","repo":"IMLHF/PHASEN-TF","repo_kind":"listed","path":"nn_se/_2_train.py","file_url":"https://github.com/IMLHF/PHASEN-TF/blob/HEAD/nn_se/_2_train.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"38b2b21858251a72"}},{"code_sha256_prefix":"fbf8e30ce54ce347","entry":"train_one_epoch","repo":"IMLHF/PHASEN-PyTorch","repo_kind":"listed","path":"phasen_torch/_2_train.py","file_url":"https://github.com/IMLHF/PHASEN-PyTorch/blob/HEAD/phasen_torch/_2_train.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"fbf8e30ce54ce347"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}