Welcome to the Machine Learning Lab repository for CS4172. This repository is organized for the Machine Learning Lab course, including assignments, datasets, and lecture notes that provide an in-depth understanding of the fundamental concepts and practical applications in machine learning. Each assignment is designed to give hands-on experience with key machine learning algorithms and their implementation.
- Assignment01: Hands-on with Linear Regression and exploratory data analysis (EDA).
- Assignment02: Implementation of Logistic Regression for binary classification tasks.
- Assignment03: Decision Trees and Random Forests for supervised learning tasks.
- Assignment04: SVMs (Support Vector Machines) and kernel functions for complex data.
- Assignment05: Implementation of Clustering algorithms using K-Means for unsupervised learning tasks.
- Lecture Notes: Detailed notes on machine learning concepts, algorithms, and techniques.
To get started with the Machine Learning Lab repository, follow these steps:
git clone https://github.com/RP2025/Machine-Learning-Lab-CS4172.git
cd Machine-Learning-Lab-CS4172
Ensure you have Python 3.8 or above installed. Then, use the requirements.txt
to install the necessary Python packages:
pip install -r requirements.txt
The assignments rely on the following libraries:
numpy
pandas
matplotlib
scikit-learn
seaborn
These libraries can be easily installed using the pip install -r requirements.txt
command.
Each assignment is designed to give you a hands-on experience of implementing various machine learning algorithms:
- Assignment01: Linear Regression and basic exploratory data analysis (EDA). The goal is to explore the relationship between variables and implement linear regression models.
- Assignment02: Logistic Regression for classification problems. This assignment focuses on binary classification and model evaluation using logistic regression.
- Assignment03: Decision Trees and Random Forests. Here, we implement and explore decision trees and ensemble methods such as random forests for improved performance.
- Assignment04: Support Vector Machines (SVMs) and exploring kernel functions. Learn how SVMs can be used for complex data classification.
- Assignment05: Clustering using the K-Means algorithm. This assignment covers unsupervised learning where you will apply clustering techniques to group data based on similarities.
- Lecture Notes: The
Lecture Notes
folder contains class notes, lectures, and additional materials covering key machine learning concepts and algorithms. - Datasets: The
Datasets
folder contains real-world datasets used for building machine learning models and performing analysis in the assignments.
Contributions are welcome! If you'd like to contribute to the repository, feel free to fork it, create a branch, and submit a pull request with your changes. Contributions could include adding new assignments, improving code quality, or updating documentation.
This repository is licensed under the MIT License. For more details, see the LICENSE
file in the repository.
For any queries, feedback, or collaboration opportunities, connect with me:
- GitHub: RP2025
- LinkedIn: Raksha Pahariya