{"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/learnable-dynamic-temporal-pooling-for-time","title":"Learnable Dynamic Temporal Pooling for Time Series Classification","arxiv_id":"2104.02577","date":"2021-04-02","proceeding":null,"authors":["Dongha Lee","Seonghyeon Lee","Hwanjo Yu"],"abstract":"With the increase of available time series data, predicting their class labels has been one of the most important challenges in a wide range of disciplines. Recent studies on time series classification show that convolutional neural networks (CNN) achieved the state-of-the-art performance as a single classifier. In this work, pointing out that the global pooling layer that is usually adopted by existing CNN classifiers discards the temporal information of high-level features, we present a dynamic temporal pooling (DTP) technique that reduces the temporal size of hidden representations by aggregating the features at the segment-level. For the partition of a whole series into multiple segments, we utilize dynamic time warping (DTW) to align each time point in a temporal order with the prototypical features of the segments, which can be optimized simultaneously with the network parameters of CNN classifiers. The DTP layer combined with a fully-connected layer helps to extract further discriminative features considering their temporal position within an input time series. Extensive experiments on both univariate and multivariate time series datasets show that our proposed pooling significantly improves the classification performance.","url_abs":"https://arxiv.org/abs/2104.02577v1","url_pdf":"https://arxiv.org/pdf/2104.02577v1.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":"learnable-dynamic-temporal-pooling-for-time","repo_url":"https://github.com/jihyeonseong/SoM-TP","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"classification-1","task_name":"Classification"},{"task_slug":"dynamic-time-warping","task_name":"Dynamic Time Warping"},{"task_slug":"classification","task_name":"General Classification"},{"task_slug":"time-series-1","task_name":"Time Series"},{"task_slug":"time-series","task_name":"Time Series Analysis"},{"task_slug":"time-series-classification","task_name":"Time Series Classification"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2104.02577","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2104.02577"}},"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/jihyeonseong/SoM-TP","reach":null}],"summary":{"ran":7,"ran_fixture":2,"unverified":4},"by_repo_kind":{"listed":{"samples":13,"ran":9,"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":13,"samples":[{"code_sha256_prefix":"82ae636995787a37","entry":"FCN","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"82ae636995787a37"}},{"code_sha256_prefix":"5c5b7f10fd0bf1e6","entry":"ResNet","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5c5b7f10fd0bf1e6"}},{"code_sha256_prefix":"67ffd117a68c33af","entry":"ResidualBlock","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"67ffd117a68c33af"}},{"code_sha256_prefix":"597dda4795ecc335","entry":"_SoftAlign","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"597dda4795ecc335"}},{"code_sha256_prefix":"94e23f1ee9ab9cec","entry":"_SoftAlignCUDA","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"94e23f1ee9ab9cec"}},{"code_sha256_prefix":"662a92051a1cab2b","entry":"_SoftDTW","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"662a92051a1cab2b"}},{"code_sha256_prefix":"ce5ec9d5a759a884","entry":"_SoftDTWCUDA","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ce5ec9d5a759a884"}},{"code_sha256_prefix":"0257d02309524615","entry":"compute_softdtw","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"0257d02309524615"}},{"code_sha256_prefix":"a31e426876e6db8e","entry":"compute_softdtw_backward","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a31e426876e6db8e"}},{"code_sha256_prefix":"ef6051c979debe47","entry":"SoMTP","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.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":"ef6051c979debe47"}},{"code_sha256_prefix":"1ff76a1cd6440748","entry":"SoftDTW","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.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":"1ff76a1cd6440748"}},{"code_sha256_prefix":"d4fc62c0f8c530aa","entry":"compute_softdtw_backward_cuda","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.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":"d4fc62c0f8c530aa"}},{"code_sha256_prefix":"9cff6b529da179d1","entry":"compute_softdtw_cuda","repo":"jihyeonseong/SoM-TP","repo_kind":"listed","path":"model/SoMTP.py","file_url":"https://github.com/jihyeonseong/SoM-TP/blob/HEAD/model/SoMTP.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":"9cff6b529da179d1"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}