{"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/lt-ocf-learnable-time-ode-based-collaborative","title":"LT-OCF: Learnable-Time ODE-based Collaborative Filtering","arxiv_id":"2108.06208","date":"2021-08-08","proceeding":null,"authors":["Jeongwhan Choi","Jinsung Jeon","Noseong Park"],"abstract":"Collaborative filtering (CF) is a long-standing problem of recommender systems. Many novel methods have been proposed, ranging from classical matrix factorization to recent graph convolutional network-based approaches. After recent fierce debates, researchers started to focus on linear graph convolutional networks (GCNs) with a layer combination, which show state-of-the-art accuracy in many datasets. In this work, we extend them based on neural ordinary differential equations (NODEs), because the linear GCN concept can be interpreted as a differential equation, and present the method of Learnable-Time ODE-based Collaborative Filtering (LT-OCF). The main novelty in our method is that after redesigning linear GCNs on top of the NODE regime, i) we learn the optimal architecture rather than relying on manually designed ones, ii) we learn smooth ODE solutions that are considered suitable for CF, and iii) we test with various ODE solvers that internally build a diverse set of neural network connections. We also present a novel training method specialized to our method. In our experiments with three benchmark datasets, Gowalla, Yelp2018, and Amazon-Book, our method consistently shows better accuracy than existing methods, e.g., a recall of 0.0411 by LightGCN vs. 0.0442 by LT-OCF and an NDCG of 0.0315 by LightGCN vs. 0.0341 by LT-OCF in Amazon-Book. One more important discovery in our experiments that is worth mentioning is that our best accuracy was achieved by dense connections rather than linear connections.","url_abs":"https://arxiv.org/abs/2108.06208v3","url_pdf":"https://arxiv.org/pdf/2108.06208v3.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":"lt-ocf-learnable-time-ode-based-collaborative","repo_url":"https://github.com/jeongwhanchoi/lt-ocf","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"lt-ocf-learnable-time-ode-based-collaborative","repo_url":"https://github.com/jeongwhanchoi/LT-OCF-Tutorial","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"collaborative-filtering","task_name":"Collaborative Filtering"},{"task_slug":"recommendation-systems","task_name":"Recommendation Systems"}],"methods":[{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"gcn","method_name":"GCN"},{"method_slug":"graph-convolutional-networks","method_name":"Graph Convolutional Networks"},{"method_slug":"lightgcn","method_name":"LightGCN"},{"method_slug":"node","method_name":"NODE"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/collaborative-filtering-on-amazon-book","task":"Collaborative Filtering","dataset":"Amazon-Book","model":"LT-OCF","rank_in_archive_order":5,"of":6,"metrics":{"NDCG@20":"0.0341","Recall@20":"0.0442"},"uses_additional_data":false},{"leaderboard":"/sota/collaborative-filtering-on-gowalla","task":"Collaborative Filtering","dataset":"Gowalla","model":"LT-OCF","rank_in_archive_order":5,"of":11,"metrics":{"NDCG@20":"0.1574","Recall@20":"0.1875"},"uses_additional_data":false},{"leaderboard":"/sota/collaborative-filtering-on-yelp2018","task":"Collaborative Filtering","dataset":"Yelp2018","model":"LT-OCF","rank_in_archive_order":8,"of":9,"metrics":{"NDCG@20":"0.0549","Recall@20":"0.0671"},"uses_additional_data":false},{"leaderboard":"/sota/recommendation-systems-on-amazon-book","task":"Recommendation Systems","dataset":"Amazon-Book","model":"LT-OCF","rank_in_archive_order":11,"of":16,"metrics":{"Recall@20":"0.0442","nDCG@20":"0.0341"},"uses_additional_data":false},{"leaderboard":"/sota/recommendation-systems-on-amazon-book-1","task":"Recommendation Systems","dataset":"Amazon-book","model":"LT-OCF","rank_in_archive_order":1,"of":1,"metrics":{"Recall@20":"0.1875"},"uses_additional_data":false},{"leaderboard":"/sota/recommendation-systems-on-gowalla","task":"Recommendation Systems","dataset":"Gowalla","model":"LT-OCF","rank_in_archive_order":7,"of":13,"metrics":{"Recall@20":"0.1875","nDCG@20":"0.1574"},"uses_additional_data":false},{"leaderboard":"/sota/recommendation-systems-on-yelp2018","task":"Recommendation Systems","dataset":"Yelp2018","model":"LT-OCF","rank_in_archive_order":8,"of":11,"metrics":{"NDCG@20":"0.0549","Recall@20":"0.0671"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2108.06208","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2108.06208"}},"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/jeongwhanchoi/LT-OCF-Tutorial","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jeongwhanchoi/lt-ocf","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":3},"by_repo_kind":{"official":{"samples":3,"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":"2dfabddb9d505b1f","entry":"ODETime","repo":"jeongwhanchoi/lt-ocf","repo_kind":"official","path":"code/odeblock.py","file_url":"https://github.com/jeongwhanchoi/lt-ocf/blob/HEAD/code/odeblock.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2dfabddb9d505b1f"}},{"code_sha256_prefix":"ed616ccb4c8ee067","entry":"ODETimeSetter","repo":"jeongwhanchoi/lt-ocf","repo_kind":"official","path":"code/odeblock.py","file_url":"https://github.com/jeongwhanchoi/lt-ocf/blob/HEAD/code/odeblock.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ed616ccb4c8ee067"}},{"code_sha256_prefix":"9cfb5a9817873431","entry":"ODETimeSplitter","repo":"jeongwhanchoi/lt-ocf","repo_kind":"official","path":"code/odeblock.py","file_url":"https://github.com/jeongwhanchoi/lt-ocf/blob/HEAD/code/odeblock.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"9cfb5a9817873431"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}