This repository contains a series of machine learning assignments that explore various aspects and techniques of ML. Each assignment focuses on different algorithms and real-world applications, demonstrating the versatility and power of machine learning across different domains.
- Spam Detection Using Support Vector Machine (SVM)
- Heart Disease Prediction
- Linear Regression Analysis on World Happiness Report Data
- Iris Species Prediction and Clustering
- Goal: Classify text messages as spam or ham
- Techniques: Text preprocessing, TF-IDF vectorization, SVM
- Key Findings:
- High accuracy on test data
- Potential overfitting issues addressed
- Simplified model training process for better performance
- Goal: Predict heart disease presence from patient data
- Techniques: Data cleaning, feature engineering, logistic regression, decision tree, random forest, voting classifiers
- Performance:
- Random Forest achieved highest accuracy (88.04%)
- All models showed good discrimination ability (ROC AUC 0.86-0.94)
- Goal: Predict country happiness scores based on socio-economic factors
- Techniques: Data cleaning, correlation analysis, linear regression
- Performance:
- R-squared value of 0.83
- MSE of 0.19, indicating good predictive power
- Goal: Predict iris flower species and perform clustering
- Techniques: Random Forest classification, KMeans clustering, PCA visualization
- Performance:
- Random Forest achieved 98% cross-validation accuracy
- KMeans clustering revealed 3 distinct clusters aligning with species
- Clone this repository:
git clone https://github.com/mmalloul/Machine-Learning.git- Install the required dependencies:
pip install -r requirements.txtEach Jupyter notebook (.ipynb file) contains a self-contained analysis. To run a notebook:
- Start Jupyter Lab or Jupyter Notebook:
jupyter labor
jupyter notebook- Navigate to the desired notebook and run the cells in order.
See requirements.txt for a list of required Python packages.
This project showcases the application of various machine learning techniques across different domains, ensuring high-quality AI implementations and demonstrating their practical utility in solving real-world problems. From text classification to regression analysis and clustering, these assignments cover a wide range of ML applications.
- Explore more advanced techniques like deep learning for complex datasets
- Implement ensemble methods to potentially boost performance
- Investigate interpretability techniques for better model understanding
- Expand datasets or incorporate additional features for improved predictions
- Mohammed Malloul - Linkedin