{"id":26830614,"url":"https://github.com/ibrahimm7004/machine-learning-projects","last_synced_at":"2026-04-09T16:36:44.338Z","repository":{"id":278078490,"uuid":"934444604","full_name":"ibrahimm7004/machine-learning-projects","owner":"ibrahimm7004","description":"A collection of my ML projects.","archived":false,"fork":false,"pushed_at":"2025-03-21T19:43:03.000Z","size":6032,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-21T20:30:29.692Z","etag":null,"topics":["ai","artificial-intelligence","data-analysis","data-science","llm","machine-learning","ml","nlp","python","sklearn","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ibrahimm7004.png","metadata":{"files":{"readme":"README.md","changelog":"news-sentiment-analysis/app.py","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-02-17T21:02:40.000Z","updated_at":"2025-03-21T19:43:07.000Z","dependencies_parsed_at":"2025-03-21T20:35:31.990Z","dependency_job_id":null,"html_url":"https://github.com/ibrahimm7004/machine-learning-projects","commit_stats":null,"previous_names":["ibrahimm7004/machine-learning-projects"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibrahimm7004%2Fmachine-learning-projects","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibrahimm7004%2Fmachine-learning-projects/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibrahimm7004%2Fmachine-learning-projects/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ibrahimm7004%2Fmachine-learning-projects/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ibrahimm7004","download_url":"https://codeload.github.com/ibrahimm7004/machine-learning-projects/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246326783,"owners_count":20759439,"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":["ai","artificial-intelligence","data-analysis","data-science","llm","machine-learning","ml","nlp","python","sklearn","tensorflow"],"created_at":"2025-03-30T14:16:38.014Z","updated_at":"2026-04-09T16:36:39.301Z","avatar_url":"https://github.com/ibrahimm7004.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🚀 Machine Learning Projects Repository\n\nThis repository contains a collection of **Machine Learning projects**, covering various domains such as **fraud detection, financial sentiment analysis, and more**. Each project is self-contained, demonstrating a specific ML/AI concept with clear implementations and results.\n\n---\n\n## 🛡️ Credit Card Fraud Detection\n\n#### Overview\n\nThis project implements a **credit card fraud detection system** using **Support Vector Machines (SVM)** and **Principal Component Analysis (PCA)**. The model analyzes financial transactions to classify them as **fraudulent or authentic**, helping mitigate risks in digital financial systems.\n\n#### 🛠️ Technologies Used\n\n- **Machine Learning:** SVM, PCA\n- **Libraries:** Scikit-learn, NumPy, Pandas, Matplotlib\n- **Dataset:** Financial transaction records with fraud labels\n\n#### 🔑 Key Features\n\n- **Dimensionality Reduction:** PCA improves model efficiency.\n- **Fraud Classification:** SVM handles high-dimensional transaction data.\n- **Data Preprocessing:** Balanced dataset using oversampling for better fraud detection.\n\n#### 📊 Hierarchical Fraud Classification\n\nFraudsters are categorized based on their corporate and community level roles.\n\n![Fraudster Hierarchy](fraud-detection/assets/tree.png)\n\n#### 🔍 Principal Component Analysis (PCA)\n\nTo reduce dimensionality, PCA was applied, and the scree plot below shows the eigenvalues of each principal component.\n\n![PCA Scree Plot](fraud-detection/assets/scree-plot-pca.png)\n\n#### ⚡ ML Pipeline\n\nOur pipeline standardizes the data, applies PCA for feature selection, and then uses an **SVM classifier** to predict fraudulent transactions.\n\n![SVM Pipeline](fraud-detection/assets/svm-pipeline.png)\n\n#### 🚀 Results\n\n- **Model Accuracy:** **72.63% (test), 72.93% (train)**\n- **Fraudulent Transactions Identified:** Mainly found in **Transfer \u0026 Cash-Out transactions**.\n- **Dimensionality Reduction Success:** PCA helped optimize performance while retaining fraud detection accuracy.\n\n🔗 **[Full Report \u0026 Code](fraud-detection/)**\n\n---\n\n## 💰 Financial News Sentiment Analysis Application\n\n#### 📌 Overview\n\nThis project implements a **news sentiment analysis application** using the **DistilRoBERTa model fine-tuned for financial news sentiment analysis**, accessible via the **Hugging Face API**. The model classifies financial texts, such as market reports and news articles, into different sentiment categories to help users analyze the market sentiment.\n\n#### 🛠️ Technologies Used\n\n- **Machine Learning:** DistilRoBERTa (fine-tuned for financial sentiment analysis)\n- **Libraries:** Hugging Face Transformers, Flask, PostgreSQL\n- **Deployment:** Flask API, hosted on Heroku\n\n#### 🔑 Key Features\n\n- **Real-Time Sentiment Analysis:** Uses Hugging Face API for instant results.\n- **Financial-Specific Model:** Trained on financial news to improve accuracy in economic contexts.\n- **Web Application Interface:** Built using Flask, allowing users to input text and receive real-time analysis.\n\n#### 🚀 How It Works\n\n1. **User inputs financial text** (e.g., a market report or company earnings statement).\n2. **The text is sent to the Hugging Face API**, which classifies sentiment as **positive, negative, or neutral**.\n3. **The results are displayed** in a user-friendly interface.\n\n#### 📈 Model Used\n\nThe **pretrained model** used for this task:\n🔗 **[DistilRoBERTa fine-tuned for financial sentiment analysis](https://huggingface.co/mrm8488/distilroberta-finetuned-financial-news-sentiment-analysis)**\n\n🔗 **[Full Code \u0026 Implementation](news-sentiment-analysis/)**\n\n---\n\n## 💼 Credit Score Prediction\n\n#### 📌 Overview\n\nThis project develops a **credit scoring model** using various machine learning techniques to predict an individual's creditworthiness based on financial and business data. The model leverages **XGBoost, Random Forest, Neural Networks, and other algorithms** to enhance prediction accuracy.\n\n#### 🛠️ Technologies Used\n\n- **Machine Learning:** XGBoost, Random Forest, Neural Networks, SVM, KNN, Linear Regression\n- **Libraries:** Scikit-learn, Pandas, NumPy, Matplotlib\n- **Data Processing:** One-hot encoding, Label Encoding, StandardScaler for normalization\n\n#### 🔑 Key Features\n\n- **Automated Data Processing:** Handles missing values, categorical data encoding, and numerical transformations.\n- **Multiple Model Evaluation:** Compares various models using **MSE, RMSE, MAE, R-squared, and Adjusted R-squared**.\n- **Optimal Model Selection:** Identifies the most accurate model for credit score prediction.\n\n#### 📈 Results\n\n- **Top Performing Model:** **XGBoost** with the highest **R-squared score of 96.78%**.\n- **Feature Normalization Success:** StandardScaler helped improve model convergence and accuracy.\n- **Regression Task Optimized:** Removed inappropriate evaluation metrics (e.g., F1-Score) since the task is continuous rather than classification-based.\n\nBelow is a comparison table showing the evaluation metrics for different models tested in this project:\n\n![Model Comparison](credit-scoring/assets/models-table.png)\n\nThe table highlights the accuracy of different machine learning models used for credit scoring. **XGBoost** outperforms other models with the **lowest Mean Squared Error (MSE) and Root Mean Squared Error (RMSE)**, indicating its high precision. Random Forest and Neural Network models also show strong performance. On the other hand, K-Nearest Neighbors (KNN) has the **highest error rates**, making it the least suitable for this task.\n\n🔗 **[Full Report \u0026 Code](credit-scoring/)**\n\n---\n\n## 🌾 Crop Recommendation System\n\n#### 📌 Overview\n\nThis project develops a **Crop Recommendation System** using **Machine Learning techniques** to analyze environmental conditions like **temperature, humidity, rainfall, and soil nutrients** and suggest the best crops for cultivation.\n\n#### 🛠️ Technologies Used\n\n- **Machine Learning:** K-Means Clustering, SVM Classification\n- **Libraries:** Scikit-learn, Pandas, NumPy, Matplotlib, Seaborn\n- **Deployment:** Flask API for real-time predictions\n\n#### 🔑 Key Features\n\n- **Exploratory Data Analysis (EDA):**\n\n  - Provides statistical summaries and average environmental requirements for different crops.\n  - Identifies suitable crops for different seasons (Summer, Winter, Rainy).\n\n- **Clustering with K-Means:**\n\n  - Determines optimal clusters using the Elbow Method.\n  - Groups crops based on environmental conditions and soil nutrients.\n\n- **Crop Classification using SVM:**\n\n  - Achieves **97% accuracy** in predicting the best crop based on given environmental conditions.\n\n- **Model Deployment:**\n  - Saves the trained **SVM model** as a joblib file for deployment in a **Flask environment** to make real-time predictions.\n\n#### 🚀 How It Works\n\n1. **Preprocesses the dataset** by standardizing environmental data.\n2. **Applies K-Means clustering** to group similar crops.\n3. **Trains an SVM classifier** to recommend the best crop.\n4. **Deploys the trained model** via a **Flask API** for real-time crop prediction.\n\n#### 📈 Results\n\n- **Clustering Analysis:** Groups crops into different clusters based on environmental conditions.\n- **Classification Model:** SVM model achieves **97% accuracy** in crop prediction.\n- **Deployment:** The model is saved and can be used in a **Flask API** for real-world applications.\n\n🔗 **[Full Code \u0026 Implementation](crop-recommendation-system/)**\n\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibrahimm7004%2Fmachine-learning-projects","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fibrahimm7004%2Fmachine-learning-projects","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fibrahimm7004%2Fmachine-learning-projects/lists"}