{"id":20590449,"url":"https://github.com/probml/pmtk3","last_synced_at":"2025-06-21T21:35:41.573Z","repository":{"id":12938724,"uuid":"15616593","full_name":"probml/pmtk3","owner":"probml","description":"Probabilistic Modeling Toolkit for Matlab/Octave.","archived":false,"fork":false,"pushed_at":"2021-06-23T15:08:28.000Z","size":272345,"stargazers_count":1551,"open_issues_count":88,"forks_count":792,"subscribers_count":192,"default_branch":"master","last_synced_at":"2025-03-05T09:03:11.417Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HTML","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/probml.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"license.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-01-03T18:37:45.000Z","updated_at":"2025-03-05T01:56:16.000Z","dependencies_parsed_at":"2022-07-15T13:24:29.747Z","dependency_job_id":null,"html_url":"https://github.com/probml/pmtk3","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/probml/pmtk3","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/probml%2Fpmtk3","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/probml%2Fpmtk3/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/probml%2Fpmtk3/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/probml%2Fpmtk3/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/probml","download_url":"https://codeload.github.com/probml/pmtk3/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/probml%2Fpmtk3/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261197748,"owners_count":23123772,"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":[],"created_at":"2024-11-16T07:36:45.668Z","updated_at":"2025-06-21T21:35:36.563Z","avatar_url":"https://github.com/probml.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"**Note: as of 2019, PMTK is no longer supported - use at your own risk.**\nThe new version of my book (which is in progress) now uses the Python code available from\nhttps://github.com/probml/pyprobml/.\n\n\n\n\nPMTK is a collection of Matlab/Octave functions, written by Matt Dunham, Kevin Murphy and\n\u003ca href=\"https://github.com/probml/pmtk3/wiki/contributingAuthors\"\u003evarious other people\u003c/a\u003e. The toolkit is primarily designed to accompany Kevin Murphy's textbook\n\u003ca href=\"http://people.cs.ubc.ca/~murphyk/MLbook\"\u003e\nMachine learning: a probabilistic perspective\u003c/a\u003e, but can also be used independently of this book. The goal is to provide a unified conceptual and software framework encompassing machine learning, graphical models, and Bayesian statistics (hence the logo). (Some methods from frequentist statistics, such as cross validation, are also supported.) Since December 2011, the toolbox is in maintenance mode, meaning that bugs will be fixed, but no new features will be added (at least not by Kevin or Matt).\n\nPMTK supports a large\nvariety of probabilistic models, including\nlinear and logistic regression models (optionally with kernels), SVMs and gaussian processes, directed and undirected\ngraphical models,  various kinds of latent variable models (mixtures, PCA, HMMs, etc) , etc.  Several kinds of prior are supported,\nincluding Gaussian (L2 regularization), Laplace (L1 regularization),\nDirichlet, etc.  Many algorithms are supported, for both\nBayesian inference (including dynamic programming,\nvariational Bayes and MCMC) and MAP/ML estimation (including EM, \nconjugate and projected gradient methods, etc.)\n\nTo get the code, click on the \"Download zip\" button on the right hand side of github, or just clone this repository.\n\n\nPMTK builds on top of several existing packages, available from\n\u003ca href=\"https://github.com/probml/pmtksupport\"\u003epmtksupport\u003c/a\u003e,\nand provides a unified interface to them. In addition, it provides readable \"reference\" implementations of many common machine learning techniques. The vast majority of the code is written in Matlab.\n (For a brief discussion of why we chose Matlab, click \n\u003ca href=\"https://github.com/probml/pmtk3/wiki/WhyMatlab\"\u003ehere\u003c/a\u003e.\nMost of the code also runs on\n\u003ca href=\"https://github.com/ubcmatlabguide/ubcmatlabguide/wiki/Octave\"\u003eOctave\u003c/a\u003e\nan open-source Matlab clone.) However, in a few cases we also provide wrappers to implementations written in C,  for speed reasons. PMTK  has over 67,000 lines.\n\n\n\nAs you can tell by the name, PMTK3 is the third version of PMTK. Older versions are obsolete, but are briefly described\n\u003ca href = \"https://github.com/probml/pmtk3/wiki/pmtkVersions\"\u003ehere\u003c/a\u003e.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprobml%2Fpmtk3","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprobml%2Fpmtk3","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprobml%2Fpmtk3/lists"}