{"id":18069589,"url":"https://github.com/riscy/machine_learning_linear_models","last_synced_at":"2025-04-11T23:52:37.416Z","repository":{"id":30529199,"uuid":"34083758","full_name":"riscy/machine_learning_linear_models","owner":"riscy","description":"A demo showcasing linear regression, reduced-rank regression and a linear system identification algorithm for modelling time series -- and when to apply them.","archived":false,"fork":false,"pushed_at":"2023-07-06T21:13:31.000Z","size":36,"stargazers_count":17,"open_issues_count":2,"forks_count":2,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-11T23:52:32.446Z","etag":null,"topics":["linear-model","machine-learning"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/riscy.png","metadata":{"files":{"readme":"README.org","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2015-04-16T22:25:07.000Z","updated_at":"2024-10-08T16:09:42.000Z","dependencies_parsed_at":"2022-09-22T12:52:19.387Z","dependency_job_id":"0dab6250-56de-49e4-966b-570b98faf847","html_url":"https://github.com/riscy/machine_learning_linear_models","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/riscy%2Fmachine_learning_linear_models","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/riscy%2Fmachine_learning_linear_models/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/riscy%2Fmachine_learning_linear_models/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/riscy%2Fmachine_learning_linear_models/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/riscy","download_url":"https://codeload.github.com/riscy/machine_learning_linear_models/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248497852,"owners_count":21113984,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["linear-model","machine-learning"],"created_at":"2024-10-31T08:10:39.945Z","updated_at":"2025-04-11T23:52:37.391Z","avatar_url":"https://github.com/riscy.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"#+TITLE: Machine Learning with Linear Models - a demo\nPython 2.7 and 3+ compatible.\n\n[[file:img/example_results.png]]\n\n* Table of Contents :TOC_4_gh:noexport:\n- [[#description][Description]]\n- [[#usage][Usage]]\n\n* Description\n  This small demo showcases a few simple but different linear models for mapping\n  vectors of observations X to vectors of outcomes Y.  Different assumptions\n  about the data can lead to different levels of performance due to bias error\n  -- sometimes drastically.\n\n  For instance, when the mapping from X to Y is low rank (i.e., an information\n  'bottleneck'), a technique called reduced rank regression\n  (~reduced_rank_regressor.py~) can outperform standard multivariate linear\n  regression (~multivariate_regressor.py~).  When the mapping from X to Y is\n  time dependent and based on an underlying linear dynamical system, applying a\n  system identification technique (~system_identifier.py~) can result in big\n  gains over both.\n\n  My Ph.D. supervisor Dr. Michael Bowling introduced me to RRR; Dr. Tijl De Bie\n  gave a great talk on subspace system identification in 2005 that I modeled my\n  implementation on: http://videolectures.net/slsfs05_bie_slasi/\n\n* Usage\n  Run the demo with:\n\n  #+begin_src bash\n  python demo.py\n  #+end_src\n  \n  You should see some output resembling the following:\n\n  #+begin_src bash\n  Full rank data\n    Multivariate Linear Regression\n      Training error: 15.04019\n      Testing error: 15.2303               \u003c- best!\n    Reduced Rank Regressor (rank = 10)\n      Training error: 26.93426\n      Testing error: 27.08937\n    Linear Dynamical System\n      Training error: 15.1246\n      Testing error: 15.42221\n  Low rank data\n    Multivariate Linear Regression\n      Training error: 14.92995\n      Testing error: 14.98602\n    Reduced Rank Regressor (rank = 10)\n      Training error: 14.95641\n      Testing error: 14.96577              \u003c- best!\n    Linear Dynamical System\n      Training error: 15.13557\n      Testing error: 15.27782\n  Linear system data\n    Multivariate Linear Regression\n      Training error: 109.64736\n      Testing error: 114.02463\n    Reduced Rank Regressor (rank = 10)\n      Training error: 124.58642\n      Testing error: 128.55485\n    Linear Dynamical System\n      Training error: 28.49161\n      Testing error: 29.33846              \u003c- best!\n  #+end_src\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Friscy%2Fmachine_learning_linear_models","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Friscy%2Fmachine_learning_linear_models","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Friscy%2Fmachine_learning_linear_models/lists"}