{"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/automatic-piano-transcription-with","title":"Automatic Piano Transcription with Hierarchical Frequency-Time Transformer","arxiv_id":"2307.04305","date":"2023-07-10","proceeding":null,"authors":["Keisuke Toyama","Taketo Akama","Yukara Ikemiya","Yuhta Takida","Wei-Hsiang Liao","Yuki Mitsufuji"],"abstract":"Taking long-term spectral and temporal dependencies into account is essential for automatic piano transcription. This is especially helpful when determining the precise onset and offset for each note in the polyphonic piano content. In this case, we may rely on the capability of self-attention mechanism in Transformers to capture these long-term dependencies in the frequency and time axes. In this work, we propose hFT-Transformer, which is an automatic music transcription method that uses a two-level hierarchical frequency-time Transformer architecture. The first hierarchy includes a convolutional block in the time axis, a Transformer encoder in the frequency axis, and a Transformer decoder that converts the dimension in the frequency axis. The output is then fed into the second hierarchy which consists of another Transformer encoder in the time axis. We evaluated our method with the widely used MAPS and MAESTRO v3.0.0 datasets, and it demonstrated state-of-the-art performance on all the F1-scores of the metrics among Frame, Note, Note with Offset, and Note with Offset and Velocity estimations.","url_abs":"https://arxiv.org/abs/2307.04305v1","url_pdf":"https://arxiv.org/pdf/2307.04305v1.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":"automatic-piano-transcription-with","repo_url":"https://github.com/sony/hft-transformer","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"decoder","task_name":"Decoder"},{"task_slug":"music-transcription","task_name":"Music Transcription"}],"methods":[{"method_slug":"absolute-position-encodings","method_name":"Absolute Position Encodings"},{"method_slug":"adam","method_name":"Adam"},{"method_slug":"attention","method_name":"Attention"},{"method_slug":"bpe","method_name":"BPE"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"label-smoothing","method_name":"Label Smoothing"},{"method_slug":"layer-normalization","method_name":"Layer Normalization"},{"method_slug":"linear-layer","method_name":"Linear Layer"},{"method_slug":"multi-head-attention","method_name":"Multi-Head Attention"},{"method_slug":"position-wise-feed-forward-layer","method_name":"Position-Wise Feed-Forward Layer"},{"method_slug":"residual-connection","method_name":"Residual Connection"},{"method_slug":"softmax","method_name":"Softmax"},{"method_slug":"transformer","method_name":"Transformer"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/music-transcription-on-maestro","task":"Music Transcription","dataset":"MAESTRO","model":"hFT-Transformer","rank_in_archive_order":2,"of":9,"metrics":{"Onset F1":"97.44"},"uses_additional_data":false},{"leaderboard":"/sota/music-transcription-on-maps","task":"Music Transcription","dataset":"MAPS","model":"hFT-Transformer","rank_in_archive_order":6,"of":6,"metrics":{"Onset F1":"85.14"},"uses_additional_data":false}],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2307.04305","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2307.04305"}},"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/sony/hft-transformer","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":5},"by_repo_kind":{"official":{"samples":5,"ran":5,"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":"a2469266cfef4dc7","entry":"file_check","repo":"sony/hft-transformer","repo_kind":"official","path":"corpus/make_list_maps.py","file_url":"https://github.com/sony/hft-transformer/blob/HEAD/corpus/make_list_maps.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a2469266cfef4dc7"}},{"code_sha256_prefix":"70858cbea4821dd7","entry":"get_value","repo":"sony/hft-transformer","repo_kind":"official","path":"corpus/make_list_maestro.py","file_url":"https://github.com/sony/hft-transformer/blob/HEAD/corpus/make_list_maestro.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"70858cbea4821dd7"}},{"code_sha256_prefix":"b509214e5ea1b287","entry":"note2freq","repo":"sony/hft-transformer","repo_kind":"official","path":"corpus/conv_note2ref.py","file_url":"https://github.com/sony/hft-transformer/blob/HEAD/corpus/conv_note2ref.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b509214e5ea1b287"}},{"code_sha256_prefix":"40b6bcf6648150ce","entry":"note2label","repo":"sony/hft-transformer","repo_kind":"official","path":"corpus/conv_note2label.py","file_url":"https://github.com/sony/hft-transformer/blob/HEAD/corpus/conv_note2label.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"40b6bcf6648150ce"}},{"code_sha256_prefix":"d908b15e2603d269","entry":"sec2frame","repo":"sony/hft-transformer","repo_kind":"official","path":"corpus/conv_note2ref.py","file_url":"https://github.com/sony/hft-transformer/blob/HEAD/corpus/conv_note2ref.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"d908b15e2603d269"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}