{"id":21403971,"url":"https://github.com/zara5961/deep-learning-challenge","last_synced_at":"2026-04-20T19:03:53.950Z","repository":{"id":263732699,"uuid":"889210874","full_name":"zara5961/deep-learning-challenge","owner":"zara5961","description":"This project focuses on building and optimizing a deep learning neural network to predict the success of applicants funded by Alphabet Soup Charity.","archived":false,"fork":false,"pushed_at":"2024-11-20T05:57:38.000Z","size":3282,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-23T03:29:50.440Z","etag":null,"topics":["deep-machine-learning","deep-neural-networks","python","skicit-learn","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/zara5961.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2024-11-15T20:34:48.000Z","updated_at":"2024-11-20T06:00:10.000Z","dependencies_parsed_at":"2024-11-20T06:39:52.625Z","dependency_job_id":null,"html_url":"https://github.com/zara5961/deep-learning-challenge","commit_stats":null,"previous_names":["zara5961/deep-learning-challenge"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zara5961%2Fdeep-learning-challenge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zara5961%2Fdeep-learning-challenge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zara5961%2Fdeep-learning-challenge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zara5961%2Fdeep-learning-challenge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zara5961","download_url":"https://codeload.github.com/zara5961/deep-learning-challenge/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243901131,"owners_count":20366251,"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":["deep-machine-learning","deep-neural-networks","python","skicit-learn","tensorflow"],"created_at":"2024-11-22T16:11:17.857Z","updated_at":"2025-11-10T01:03:31.913Z","avatar_url":"https://github.com/zara5961.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Alphabet Soup Charity - Deep Learning Model\n![Project](Images/deep-learning.jpg)\n## Overview of the Analysis\nThe purpose of this analysis is to build a binary classifier using a deep learning neural network. This model predicts the success of applicants funded by Alphabet Soup, helping the organization select applicants with the highest likelihood of success in their ventures.\n\n![Project](Images/artificial.jpeg)\n\nI worked on developing a *Neural Network model*\n\n### Data Preprocessing\n- **Target Variable**:\n  - `IS_SUCCESSFUL`\n\n- **Features**: \n  - `APPLICATION_TYPE`\n  - `AFFILIATION`\n  - `CLASSIFICATION`\n  - `USE_CASE`\n  - `ORGANIZATION`\n  - `STATUS`\n  - `INCOME_AMT`\n  - `SPECIAL_CONSIDERATIONS`\n  - `ASK_AMT`\n\n- **Removed (Dropped) Variables**: \n  - `EIN`: Identification column not relevant to predictions.\n  - `NAME`: Identification column that may introduce noise without adding predictive value.\n- **Handling Categorical Data**: Categorical variables with more than 10 unique values were grouped into an \"Other\" category. and One-hot encoding was applied to categorical features to convert them into numeric\nformat.\n- **Scaling the Features**: StandardScaler was used to normalize numerical data to ensure consistency and improve model convergence.\n- **Data Splitting**: The dataset was split into training (80%) and testing (20%) sets using train_test_split.\n\n### Compiling, Training, and Evaluating the Model\n- **Model Structure**:\n  - **Neurons**: Initial configurations used between 30 and 200 neurons per layer.\n  - **Hidden Layers**: Multiple attempts with 2-5 layers to balance complexity and training efficiency.\n  - **Activation Functions**: `relu` for hidden layers and `sigmoid` for the output layer (binary classification).\n![Project](Images/pro.jpg)\n\n- **Performance**:\n  - Initial attempts achieved ~73% accuracy.\n  - Various techniques were used to optimize performance, including:\n    - Adjusting neurons and layers.\n    - Using dropout and batch normalization.\n    - Adjusting learning rate and adding callbacks.\n\n\n![Project](Images/Before-and-After.jpg)\n### Optimization Steps\nTo achieve a target accuracy of 75%, the following optimizations were attempted:\n1. **Data Adjustments**:\n   - Encoding categorical variables with `pd.get_dummies()`.\n   - Combining rare categorical values into \"Other\".\n   - Scaling features using `StandardScaler()`.\n\n2. **Model Adjustments**:\n   - Increased the number of neurons in hidden layers.\n   - Added more hidden layers for greater learning capacity.\n   - Experimented with different activation functions (`relu`, `tanh`).\n\n3. **Training Adjustments**:\n   - Increased the number of epochs.\n   - Used EarlyStopping and ModelCheckpoint callbacks to improve training efficiency.\n\n### Final Model\n- **Accuracy**: Despite extensive optimization, the highest accuracy achieved was ~73%.\nThen I had to try different approach that is focused on identifying and handling low-frequency categories in a dataset:\n* *Replacing with \"Other\"*: Consolidate rare categories into a single \"Other\" category.\n* *Dropping*: Remove the data associated with these rare categories (only if justified).\n* *Encoding Separately*: Treat them differently in downstream processing.\n\n### Questions\n- Which features were used as inputs?\nCategorical features as application type, organization type, special considerations were utilized, transformed into numerical data using one-hot encoding.\n\n- What was the target variable?\nThe target variable was *IS_SUCCESSFUL*, which represents whether the charity was successful.\n\n- What methods were used to preprocess the data?\nThe data was prepared by removing non-essential columns, applying one-hot encoding for categorical variables, scaling numerical features with StandardScaler, and splitting the dataset into training and testing subsets.\n\n- How was the model structured?\nThe model was a neural network with first one hidden layer then increased by 5 comprising 30 and 200 neurons, using ReLU activation for hidden layers and a Sigmoid function for the output layer.\n\n- What were the model’s performance metrics?\nThe optimized model achieved an accuracy of 72%-73% and showed a reduced loss value, starting from 0.577 and improving during the optimization process.\n\n- How was the model optimized?\nOptimization included:\n* Modifying the architecture by experimenting with layers and neurons.\n* Tuning hyperparameters like learning rate and increasing training epochs.\n* Incorporating early stopping to mitigate overfitting.\n\n### Summary\n- The deep learning model performed well but did not achieve the target accuracy of 75%, by adding hidden layers.\n- Recommendation:\n  - Perform feature importance analysis to focus on the most predictive variables.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzara5961%2Fdeep-learning-challenge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzara5961%2Fdeep-learning-challenge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzara5961%2Fdeep-learning-challenge/lists"}