Skip to content

Machine learning resources (Jupyter notebooks mostly). Originally code to complement the "EECE 5644: Introduction to Machine Learning and Pattern Recognition" course taught at Northeastern University.

License

mazrk7/machine_learning_resources

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Machine Learning Resources

Machine learning resources primarily in the form of Jupyter notebooks. This repository was originally developed to complement the "EECE 5644: Introduction to Machine Learning and Pattern Recognition" course taught at Northeastern University over the Summer 2022 semesters. You can find some of the lectures publicly available at this webpage.

Please contact Mark Zolotas about any questions concerning the repository.

Directory Layout

  • data to hold any datasets used by models in the codebase, which is purposefully not Git tracked to avoid a large repository.
  • docs have question sheets for any course assignments, adapted from the previous professor's (Deniz Erdogmus) original homeworks.
  • matlab for Matlab code that replicates some of the Python implementations.
  • models to store trained models for re-use during inference.
  • notebooks consists of Jupyter Notebook files that walk through examples with both mathematical formulation and programming implementation.
  • scripts are example Python programs that test the functionality provided by the modules library. These examples are less complete than the Notebooks.

Getting Started

You can "clone" this Git repository into your workspace, by running the following command:

git clone https://github.com/mazrk7/machine_learning_resources.git

If you wish to "pull" any updates I make to this repository over time, run:

git pull origin main

Look through this Git Basics if you would like further guidance.

I make use of Jupyter Notebooks for many of the in-class demonstrations. This is basically a Python web interface that allows me to combine written formulas/notes with code and run it in a sequential fashion. My environment is set up using Anaconda, which I highly recommend for hosting applications like Jupyter within your Python environment.

Ofcourse, you can also look through the Notebooks without running the code. Or you can directly import the code aspects into whatever Python IDE is of your preference. I usually recommend these two:

Both are great so take your pick!

Lastly, my Python environment can be installed directly using pip as follows:

pip install -r requirements.txt

Or by creating a Conda environment from my provided yaml file:

conda env create -f environment.yaml

Please note that these environments were generated for the Python 3.11.5 release and may require dependency consolidation if you use another Python version.

Setting up interactive plots in jupyter ipympl enables the interactive features of matplotlib in the Jupyter notebook. Instructions are in its official repo.

Further Reading

Many of the code and examples presented in this repository take inspiration from Kevin Murphy's "Probabilistic Machine Learning: An Introduction" and "PML: Advanced Topics" books. I highly recommend these books for further reading.

About

Machine learning resources (Jupyter notebooks mostly). Originally code to complement the "EECE 5644: Introduction to Machine Learning and Pattern Recognition" course taught at Northeastern University.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages