{"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/tsmixer-lightweight-mlp-mixer-model-for","title":"TSMixer: Lightweight MLP-Mixer Model for Multivariate Time Series Forecasting","arxiv_id":"2306.09364","date":"2023-06-14","proceeding":null,"authors":["Vijay Ekambaram","Arindam Jati","Nam Nguyen","Phanwadee Sinthong","Jayant Kalagnanam"],"abstract":"Transformers have gained popularity in time series forecasting for their ability to capture long-sequence interactions. However, their high memory and computing requirements pose a critical bottleneck for long-term forecasting. To address this, we propose TSMixer, a lightweight neural architecture exclusively composed of multi-layer perceptron (MLP) modules for multivariate forecasting and representation learning on patched time series. Inspired by MLP-Mixer's success in computer vision, we adapt it for time series, addressing challenges and introducing validated components for enhanced accuracy. This includes a novel design paradigm of attaching online reconciliation heads to the MLP-Mixer backbone, for explicitly modeling the time-series properties such as hierarchy and channel-correlations. We also propose a novel Hybrid channel modeling and infusion of a simple gating approach to effectively handle noisy channel interactions and generalization across diverse datasets. By incorporating these lightweight components, we significantly enhance the learning capability of simple MLP structures, outperforming complex Transformer models with minimal computing usage. Moreover, TSMixer's modular design enables compatibility with both supervised and masked self-supervised learning methods, making it a promising building block for time-series Foundation Models. TSMixer outperforms state-of-the-art MLP and Transformer models in forecasting by a considerable margin of 8-60%. It also outperforms the latest strong benchmarks of Patch-Transformer models (by 1-2%) with a significant reduction in memory and runtime (2-3X). The source code of our model is officially released as PatchTSMixer in the HuggingFace. Model: https://huggingface.co/docs/transformers/main/en/model_doc/patchtsmixer Examples: https://github.com/ibm/tsfm/#notebooks-links","url_abs":"https://arxiv.org/abs/2306.09364v4","url_pdf":"https://arxiv.org/pdf/2306.09364v4.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":"tsmixer-lightweight-mlp-mixer-model-for","repo_url":"https://github.com/ibm/tsfm","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"multivariate-time-series-forecasting","task_name":"Multivariate Time Series Forecasting"},{"task_slug":"representation-learning","task_name":"Representation Learning"},{"task_slug":"self-supervised-learning","task_name":"Self-Supervised Learning"},{"task_slug":"time-series-1","task_name":"Time Series"},{"task_slug":"time-series-forecasting","task_name":"Time Series Forecasting"}],"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":"average-pooling","method_name":"Average Pooling"},{"method_slug":"bpe","method_name":"BPE"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"global-average-pooling","method_name":"Global Average Pooling"},{"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":"mlp-mixer","method_name":"MLP-Mixer"},{"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/multivariate-time-series-forecasting-on-etth1-1","task":"Multivariate Time Series Forecasting","dataset":"ETTh1 (192) Multivariate","model":"TSMixer","rank_in_archive_order":1,"of":3,"metrics":{"MAE":"0.418","MSE":"0.399"},"uses_additional_data":false},{"leaderboard":"/sota/multivariate-time-series-forecasting-on-etth1-2","task":"Multivariate Time Series Forecasting","dataset":"ETTh1 (336) Multivariate","model":"TSMixer","rank_in_archive_order":2,"of":2,"metrics":{"MSE":"0.421"},"uses_additional_data":false},{"leaderboard":"/sota/multivariate-time-series-forecasting-on-etth1-3","task":"Multivariate Time Series Forecasting","dataset":"ETTh1 (720) Multivariate","model":"TSMixer","rank_in_archive_order":1,"of":1,"metrics":{"MSE":"0.444"},"uses_additional_data":false},{"leaderboard":"/sota/multivariate-time-series-forecasting-on-etth1","task":"Multivariate Time Series Forecasting","dataset":"ETTh1 (96) Multivariate","model":"TSMixer","rank_in_archive_order":1,"of":3,"metrics":{"MAE":"0.398","MSE":"0.368"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-etth1-192-1","task":"Time Series Forecasting","dataset":"ETTh1 (192) Multivariate","model":"TSMixer","rank_in_archive_order":7,"of":17,"metrics":{"MAE":"0.418","MSE":"0.399"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-etth1-336-1","task":"Time Series Forecasting","dataset":"ETTh1 (336) Multivariate","model":"TSMixer","rank_in_archive_order":17,"of":72,"metrics":{"MAE":"0.436","MSE":"0.421"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-etth1-720-1","task":"Time Series Forecasting","dataset":"ETTh1 (720) Multivariate","model":"TSMixer","rank_in_archive_order":8,"of":22,"metrics":{"MAE":"0.467","MSE":"0.444"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-etth1-96-4","task":"Time Series Forecasting","dataset":"ETTh1 (96)","model":"TSMixer","rank_in_archive_order":2,"of":2,"metrics":{"MAE":"0.398","MSE":"0.368"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-etth1-96-1","task":"Time Series Forecasting","dataset":"ETTh1 (96) Multivariate","model":"TSMixer","rank_in_archive_order":8,"of":15,"metrics":{"MAE":"0.398","MSE":"0.368"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-etth2-192-1","task":"Time Series Forecasting","dataset":"ETTh2 (192) Multivariate","model":"TSMixer","rank_in_archive_order":6,"of":16,"metrics":{"MAE":"0.374","MSE":"0.33"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-etth2-336-1","task":"Time Series Forecasting","dataset":"ETTh2 (336) Multivariate","model":"TSMixer","rank_in_archive_order":8,"of":20,"metrics":{"MAE":"0.401","MSE":"0.357"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-etth2-720-1","task":"Time Series Forecasting","dataset":"ETTh2 (720) Multivariate","model":"TSMixer","rank_in_archive_order":8,"of":20,"metrics":{"MAE":"0.436","MSE":"0.395"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-etth2-96-1","task":"Time Series Forecasting","dataset":"ETTh2 (96) Multivariate","model":"TSMixer","rank_in_archive_order":11,"of":16,"metrics":{"MAE":"0.337","MSE":"0.276"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-ettm1-192-1","task":"Time Series Forecasting","dataset":"ETTm1 (192) Multivariate","model":"TSMixer","rank_in_archive_order":6,"of":9,"metrics":{"MAE":"0.369","MSE":"0.333"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-ettm1-336-1","task":"Time Series Forecasting","dataset":"ETTm1 (336) Multivariate","model":"TSMixer","rank_in_archive_order":4,"of":8,"metrics":{"MAE":"0.385","MSE":"0.365"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-ettm1-720-1","task":"Time Series Forecasting","dataset":"ETTm1 (720) Multivariate","model":"TSMixer","rank_in_archive_order":2,"of":8,"metrics":{"MAE":"0.413","MSE":"0.416"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-ettm1-96-1","task":"Time Series Forecasting","dataset":"ETTm1 (96) Multivariate","model":"TSMixer","rank_in_archive_order":6,"of":9,"metrics":{"MAE":"0.346","MSE":"0.291"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-ettm2-192-1","task":"Time Series Forecasting","dataset":"ETTm2 (192) Multivariate","model":"TSMixer","rank_in_archive_order":4,"of":9,"metrics":{"MAE":"0.293","MSE":"0.219"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-ettm2-336-1","task":"Time Series Forecasting","dataset":"ETTm2 (336) Multivariate","model":"TSMixer","rank_in_archive_order":6,"of":8,"metrics":{"MAE":"0.329","MSE":"0.273"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-ettm2-720-1","task":"Time Series Forecasting","dataset":"ETTm2 (720) Multivariate","model":"TSMixer","rank_in_archive_order":4,"of":8,"metrics":{"MAE":"0.38","MSE":"0.358"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-ettm2-96-1","task":"Time Series Forecasting","dataset":"ETTm2 (96) Multivariate","model":"TSMixer","rank_in_archive_order":7,"of":9,"metrics":{"MAE":"0.255","MSE":"0.164"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-electricity-336","task":"Time Series Forecasting","dataset":"Electricity (336)","model":"TSMixer","rank_in_archive_order":2,"of":9,"metrics":{"MSE":"0.158"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-electricity-96","task":"Time Series Forecasting","dataset":"Electricity (96)","model":"TSMixer","rank_in_archive_order":6,"of":11,"metrics":{"MSE":"0.129"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-traffic-192","task":"Time Series Forecasting","dataset":"Traffic (192)","model":"TSMixer","rank_in_archive_order":3,"of":3,"metrics":{"MSE":"0.377"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-traffic-336","task":"Time Series Forecasting","dataset":"Traffic (336)","model":"TSMixer","rank_in_archive_order":1,"of":3,"metrics":{"MSE":"0.385"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-traffic-720","task":"Time Series Forecasting","dataset":"Traffic (720)","model":"TSMixer","rank_in_archive_order":2,"of":3,"metrics":{"MSE":"0.424"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-traffic-96","task":"Time Series Forecasting","dataset":"Traffic (96)","model":"TSMixer","rank_in_archive_order":2,"of":3,"metrics":{"MSE":"0.356"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-weather-192","task":"Time Series Forecasting","dataset":"Weather (192)","model":"TSMixer","rank_in_archive_order":8,"of":13,"metrics":{"MAE":"0.240","MSE":"0.191"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-weather-336","task":"Time Series Forecasting","dataset":"Weather (336)","model":"TSMixer","rank_in_archive_order":7,"of":11,"metrics":{"MAE":"0.279","MSE":"0.243"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-weather-720","task":"Time Series Forecasting","dataset":"Weather (720)","model":"TSMixer","rank_in_archive_order":7,"of":11,"metrics":{"MAE":"0.333","MSE":"0.316"},"uses_additional_data":false},{"leaderboard":"/sota/time-series-forecasting-on-weather-96","task":"Time Series Forecasting","dataset":"Weather (96)","model":"TSMixer","rank_in_archive_order":5,"of":12,"metrics":{"MAE":"0.197","MSE":"0.146"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2306.09364","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2306.09364"}},"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/ibm/tsfm","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":8},"by_repo_kind":{"official":{"samples":8,"ran":0,"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":"8ab6f44b1a7b9d88","entry":"FlowStateFourierBasis","repo":"ibm/tsfm","repo_kind":"official","path":"tsfm_public/models/flowstate/modeling_flowstate.py","file_url":"https://github.com/ibm/tsfm/blob/HEAD/tsfm_public/models/flowstate/modeling_flowstate.py","link_basis":"first_harvest_node","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":"8ab6f44b1a7b9d88"}},{"code_sha256_prefix":"4f39918fb5566fec","entry":"FlowStateLegendreBasis","repo":"ibm/tsfm","repo_kind":"official","path":"tsfm_public/models/flowstate/modeling_flowstate.py","file_url":"https://github.com/ibm/tsfm/blob/HEAD/tsfm_public/models/flowstate/modeling_flowstate.py","link_basis":"first_harvest_node","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":"4f39918fb5566fec"}},{"code_sha256_prefix":"608336716ae5973d","entry":"check_ttm_model_path","repo":"ibm/tsfm","repo_kind":"official","path":"tsfm_public/toolkit/get_model.py","file_url":"https://github.com/ibm/tsfm/blob/HEAD/tsfm_public/toolkit/get_model.py","link_basis":"first_harvest_node","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":"608336716ae5973d"}},{"code_sha256_prefix":"b87432b3e0f45b5e","entry":"count_parameters","repo":"ibm/tsfm","repo_kind":"official","path":"tsfm_public/models/patchtst_fm/tools.py","file_url":"https://github.com/ibm/tsfm/blob/HEAD/tsfm_public/models/patchtst_fm/tools.py","link_basis":"first_harvest_node","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":"b87432b3e0f45b5e"}},{"code_sha256_prefix":"7b4cd0dfad3103f7","entry":"get_autocast_context","repo":"ibm/tsfm","repo_kind":"official","path":"tsfm_public/models/patchtst_fm/modeling_patchtst_fm.py","file_url":"https://github.com/ibm/tsfm/blob/HEAD/tsfm_public/models/patchtst_fm/modeling_patchtst_fm.py","link_basis":"first_harvest_node","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":"7b4cd0dfad3103f7"}},{"code_sha256_prefix":"7a089ba63c0fb94b","entry":"hms_to_seconds","repo":"ibm/tsfm","repo_kind":"official","path":"tsfm_public/models/patchtst_fm/tools.py","file_url":"https://github.com/ibm/tsfm/blob/HEAD/tsfm_public/models/patchtst_fm/tools.py","link_basis":"first_harvest_node","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":"7a089ba63c0fb94b"}},{"code_sha256_prefix":"4066f41e59d91524","entry":"make_attn_mask","repo":"ibm/tsfm","repo_kind":"official","path":"tsfm_public/models/patchtst_fm/basic.py","file_url":"https://github.com/ibm/tsfm/blob/HEAD/tsfm_public/models/patchtst_fm/basic.py","link_basis":"first_harvest_node","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":"4066f41e59d91524"}},{"code_sha256_prefix":"5f504b83e76d1d59","entry":"to_hms","repo":"ibm/tsfm","repo_kind":"official","path":"tsfm_public/models/patchtst_fm/tools.py","file_url":"https://github.com/ibm/tsfm/blob/HEAD/tsfm_public/models/patchtst_fm/tools.py","link_basis":"first_harvest_node","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":"5f504b83e76d1d59"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}