{"id":17988570,"url":"https://github.com/jswong65/machine_learning_nanodegree","last_synced_at":"2026-04-09T23:03:05.955Z","repository":{"id":114357708,"uuid":"72371316","full_name":"jswong65/Machine_Learning_Nanodegree","owner":"jswong65","description":"Projects of Udacity Machine Learning nanodegree","archived":false,"fork":false,"pushed_at":"2018-03-26T19:17:54.000Z","size":3617,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-09T15:13:21.498Z","etag":null,"topics":["machine-learning","numpy","pandas","python","scikit-learn","scipy"],"latest_commit_sha":null,"homepage":"","language":"HTML","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/jswong65.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":"2016-10-30T19:42:53.000Z","updated_at":"2018-04-06T23:36:15.000Z","dependencies_parsed_at":"2023-04-01T02:03:33.378Z","dependency_job_id":null,"html_url":"https://github.com/jswong65/Machine_Learning_Nanodegree","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jswong65%2FMachine_Learning_Nanodegree","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jswong65%2FMachine_Learning_Nanodegree/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jswong65%2FMachine_Learning_Nanodegree/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jswong65%2FMachine_Learning_Nanodegree/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jswong65","download_url":"https://codeload.github.com/jswong65/Machine_Learning_Nanodegree/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247114853,"owners_count":20886031,"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":["machine-learning","numpy","pandas","python","scikit-learn","scipy"],"created_at":"2024-10-29T19:12:05.936Z","updated_at":"2026-04-09T23:03:05.888Z","avatar_url":"https://github.com/jswong65.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Udacity Machine Learning Nanodegree\n\nProject implementation for Udacity Machine Learning Nanodegree. These projects covers different aspects of machine learning, including **Supervised Learning**, **Unsupervised Learning**, **Reinforcement Learning**, **Model Evaluation \u0026 Validation**, etc. \n\nSeveral python data analytic packages are used for the project implementation. \n* **Numpy**: Performs numerical operations. \n* **Pandas**: Data I/O, manipulation, and visualization.\n* **Matplotlib, seaborn**: Data visualization\n* **scikit-learn**: Builds, trains, and tests machine learning models.\n\nMany datasets used in these projects can be found on [UC Irvine Machine Learning Repository](https://archive.ics.uci.edu/ml/index.php)\n\n| Project                                                                                                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |\n|---------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [titanic_survival_exploratio](https://github.com/jswong65/Machine_Learning_Nano_Degree/tree/master/titanic_survival_exploratio) | **An Intro project to Machine Learning.** Exploring various variables that can be applied to predict the survival rate of Titanic passengers, including socio-economic class, gender, age, fare, etc. The results implies **gender**, **age**, and **socio-economic class** can be the important variables for prediction.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |\n| [boston_housing](https://github.com/jswong65/Machine_Learning_Nano_Degree/tree/master/boston_housing)                           | **Model Evaluation \u0026 Validation.** The goal of this project is Predicting Boston Housing Prices. \u003cul\u003e\u003cli\u003eApply **DecisionTreeRegressor** to predict the housing prices.\u003c/li\u003e \u003cli\u003eEvaluate a model with **R-squared** score, the **learning curve** and the **model complexity curve** - Bias-Variance Trade-Off.\u003c/li\u003e  \u003cli\u003eUse **grid search**,  and **K-fold cross-validation** to find the parameters for optimizing a prediction model.\u003c/li\u003e\u003c/ul\u003e                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |\n| [finding_donors](https://github.com/jswong65/Machine_Learning_Nanodegree/tree/master/finding_donors)                            | **Supervised Learning.** The goal of this project is Finding Donors for Charity. \u003cul\u003e \u003cli\u003eData Preprocessing\u003c/li\u003e \u003cul\u003e \u003cli\u003eLog transformation for skewed continuous variables\u003c/li\u003e \u003cli\u003eData normalization for numerical variables (MinMaxScaler) \u003c/li\u003e \u003cli\u003eOne-hot encoding for categorical variables (pandas.get_dummies)\u003c/li\u003e \u003c/ul\u003e \u003cli\u003eTrain, evaluate, and compare three different classifiers, including **KNeighborsClassifier**, **RandomForestClassifier** (bagging), **GradientBoostingClassifier** (boosting) with both accuracy and F-beta-score.\u003c/li\u003e \u003cli\u003eUse **grid search** and **cross-validation** to find the parameters for model optimization.\u003c/li\u003e \u003cli\u003eUse principal component analysis (PCA) to reduce the dimensions of the data\u003c/li\u003e \u003c/ul\u003e                                                                                                                                                                                                |\n| [customer_segments](https://github.com/jswong65/Machine_Learning_Nano_Degree/tree/master/customer_segments)                     | **Unsupervised Learning**: The goal of this project is Creating Customer Segments.  \u003cul\u003e \u003cli\u003eFeature Exploration\u003c/li\u003e \u003cul\u003e \u003cli\u003eUse **box plot** and **histogram** to examine the distribution of individual variables\u003c/li\u003e \u003cli\u003eLeverage a **matrix of  scatter plot** and  a **heatmap** to study correlation between variables\u003c/li\u003e \u003cli\u003eApply **multiple coordinate** to  investigate relationships between multiple variables\u003c/li\u003e \u003c/ul\u003e \u003cli\u003eData Preprocessing\u003c/li\u003e \u003cul\u003e \u003cli\u003ePerform feature scaling (using natural logarithm) to reduce the skewness of highly skewed data\u003c/li\u003e \u003cli\u003eApply **Tukey's method** to identify the outliers to be removed\u003c/li\u003e \u003c/ul\u003e \u003cli\u003eCompare the **K-means clustering** and **Gaussian mixture model** (GMM) for data clustering.\u003c/li\u003e \u003cli\u003eApply **GMM** to perform data clustering, and leverage **silhouette coefficient** as well as **Bayesian information criterion** (BIC) to choose the number of clusters.\u003c/li\u003e \u003c/ul\u003e |\n| [smartcab](https://github.com/jswong65/Machine_Learning_Nano_Degree/tree/master/smartcab)                                       | **Reinforcement Learning**: The goal of this project is Training a Smartcab to Drive \u003cul\u003e \u003cli\u003eApply **Q-Learning** to teach a cab to drive safely and efficiently in a simulation. \u003c/li\u003e \u003cli\u003eAppropriate features were identified for modeling the Smartcab in the environment (build a state)\u003c/li\u003e \u003cli\u003eRewards and punishments were attached to different outcomes to teach the cab to reach the destination as soon as possible without causing an accident.\u003c/li\u003e  \u003c/ul\u003e                                                                                                                                                       \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjswong65%2Fmachine_learning_nanodegree","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjswong65%2Fmachine_learning_nanodegree","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjswong65%2Fmachine_learning_nanodegree/lists"}