|
4 | 4 | <meta charset="UTF-8" /> |
5 | 5 | <meta name="viewport" content="width=device-width, initial-scale=1.0" /> |
6 | 6 | <title>ML-Scope Home</title> |
| 7 | + <link rel="icon" type="image/x-icon" href="aida-logo.jpeg" /> |
7 | 8 | <style> |
8 | 9 | .card { |
9 | 10 | width: 300px; |
|
181 | 182 |
|
182 | 183 | <div class="container"> |
183 | 184 | <h1>MLScope</h1> |
184 | | - <center> |
| 185 | + <!-- <center> |
185 | 186 | <a target="_blank" href="https://docs.google.com/forms/d/e/1FAIpQLSck7eG6F1RsH0-7QVPGXyCJuOr6mOzMNpCN6yvKCSB8WsSaQA/viewform?usp=preview" |
186 | 187 | ><button class="btn">Challenge 1 Submission</button></a |
187 | 188 | > |
188 | | - </center> |
| 189 | + </center> --> |
189 | 190 | <div id="content"></div> |
190 | 191 | </div> |
191 | 192 | <!-- <center> |
@@ -513,6 +514,127 @@ <h4>Useful Package Documentation:</h4> |
513 | 514 | </ol> |
514 | 515 | `, |
515 | 516 | }, |
| 517 | + { |
| 518 | + project: 2, |
| 519 | + title: "Heart Disease Binary Classifier", |
| 520 | + content: ` |
| 521 | + <p>In this comprehensive project, you'll build an advanced heart disease prediction system using classification algorithms. The goal is to accurately predict the presence of heart disease while understanding key risk factors, developing interpretable models, and creating an interactive system that could potentially aid medical professionals.</p> |
| 522 | +
|
| 523 | +<p><strong>Primary Dataset:</strong> <a href="https://www.kaggle.com/datasets/johnsmith88/heart-disease-dataset" target="_blank" rel="noopener noreferrer">Heart Disease Classifier Dataset</a></p> |
| 524 | +<p>The dataset contains heart data attributes from four medical databases (Cleveland, Hungary, Switzerland, Long Beach). It has 1026 rows and 15 columns, covering features like age, sex, chest pain type, blood pressure, among others. The target column is the target variable, where 1 = heart disease and 0 = no heart disease.</p> |
| 525 | +
|
| 526 | +<p><strong>Supplementary Datasets (optional):</strong></p> |
| 527 | +<ul> |
| 528 | + <li><a href="https://www.kaggle.com/datasets/fedesoriano/heart-failure-prediction" target="_blank" rel="noopener noreferrer">Heart Failure Prediction Dataset</a></li> |
| 529 | + <li><a href="https://www.kaggle.com/datasets/sulianova/cardiovascular-disease-dataset" target="_blank" rel="noopener noreferrer">Cardiovascular Disease Dataset</a></li> |
| 530 | + <li><a href="https://www.cdc.gov/nchs/fastats/heart-disease.htm" target="_blank" rel="noopener noreferrer">CDC Heart Disease Statistics</a></li> |
| 531 | +</ul> |
| 532 | +
|
| 533 | +<h4>Project Components (% of points):</h4> |
| 534 | +<h5>1. Data Preparation & Analysis (25%)</h5> |
| 535 | +<ul> |
| 536 | + <li>Clean and preprocess the dataset</li> |
| 537 | + <li>Handle missing values and outliers using medical domain knowledge</li> |
| 538 | + <li>Feature engineering (optional): |
| 539 | + <ul> |
| 540 | + <li>Create new features (BMI, combined risk factors)</li> |
| 541 | + <li>Develop risk index scores</li> |
| 542 | + <li>Normalize/standardize features appropriately</li> |
| 543 | + </ul> |
| 544 | + </li> |
| 545 | + <li>Perform exploratory data analysis with medical context</li> |
| 546 | + <li>Analyze feature correlations</li> |
| 547 | + <li>Apply feature selection methods</li> |
| 548 | + <li>Address class imbalance if present (SMOTE, class weights) (optional)</li> |
| 549 | +</ul> |
| 550 | +
|
| 551 | +<h5>2. Model Development (45%)</h5> |
| 552 | +<ul> |
| 553 | + <li>Options for implementing models: |
| 554 | + <ul> |
| 555 | + <li>Logistic Regression (baseline with regularization)</li> |
| 556 | + <li>Decision Trees</li> |
| 557 | + <li>Random Fores</li> |
| 558 | + <li>Support Vector Machines</li> |
| 559 | + <li>Gradient Boosting (XGBoost/LightGBM)</li> |
| 560 | + <li>Neural Networks</li> |
| 561 | + </ul> |
| 562 | + </li> |
| 563 | + <li>Cross-validation strategy (stratified k-fold)</li> |
| 564 | + <li>Hyperparameter optimization using grid/random/Bayesian search (optional)</li> |
| 565 | + <li>ROC curve analysis and optimal threshold selectionn (optional)</li> |
| 566 | + <li>Evaluation metrics other than accuracy (sensitivity, specificity, F1-score)</li> |
| 567 | +</ul> |
| 568 | +
|
| 569 | +<h5>3. Clinical Relevance (20%)</h5> |
| 570 | +<ul> |
| 571 | + <li>Analyze model performance across different demographic groups</li> |
| 572 | + <li>Create visualizations showing how feature values impact risk</li> |
| 573 | + <li>Analyze false positives and false negatives from a clinical perspective</li> |
| 574 | + <li><h5>*Note: This part is subjective - visualize data, patient profiles, make some cool graphs!, etc.</h5></li> |
| 575 | +</ul> |
| 576 | +
|
| 577 | +<h5>4. Advanced Implementation (10%) (optional)</h5> |
| 578 | +<ul> |
| 579 | + <li>Develop a simple web application for model deployment</li> |
| 580 | + <li>Add confidence intervals for predictions</li> |
| 581 | + <li>Compare model performance with published medical studies</li> |
| 582 | +</ul> |
| 583 | +
|
| 584 | +<h4>Useful Libraries:</h4> |
| 585 | +<pre><code> |
| 586 | +import pandas as pd |
| 587 | +import numpy as np |
| 588 | +import matplotlib.pyplot as plt |
| 589 | +import seaborn as sns |
| 590 | +from sklearn.model_selection import train_test_split, cross_val_score, GridSearchCV |
| 591 | +from sklearn.preprocessing import StandardScaler, OneHotEncoder |
| 592 | +from sklearn.linear_model import LogisticRegression |
| 593 | +from sklearn.ensemble import RandomForestClassifier, GradientBoostingClassifier |
| 594 | +from sklearn.svm import SVC |
| 595 | +from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, roc_auc_score, confusion_matrix, classification_report |
| 596 | +import xgboost as xgb |
| 597 | +import shap |
| 598 | +import plotly.express as px |
| 599 | +</code></pre> |
| 600 | +
|
| 601 | +<h4>Skills:</h4> |
| 602 | +<h5>Required Skills</h5> |
| 603 | +<ul> |
| 604 | + <li>Python programming</li> |
| 605 | + <li>Data cleaning and preprocessing</li> |
| 606 | + <li>Statistical analysis</li> |
| 607 | + <li>Machine learning fundamentals</li> |
| 608 | + <li>Classification algorithms</li> |
| 609 | + <li>Model evaluation techniques</li> |
| 610 | +</ul> |
| 611 | +
|
| 612 | +<h5>Advanced Skills (Bonus)</h5> |
| 613 | +<ul> |
| 614 | + <li>Advanced classification models</li> |
| 615 | + <li>Model interpretability techniques (eg. Identify what 3 features that lead to the classification decision)</li> |
| 616 | + <li>Healthcare analytics</li> |
| 617 | + <li>Deep learning for tabular data</li> |
| 618 | + <li>Web application development (Flask/Streamlit)</li> |
| 619 | + <li>Fairness and bias analysis in healthcare models</li> |
| 620 | + <li>Deployment strategies for healthcare applications</li> |
| 621 | + <li>Feature importance visualization</li> |
| 622 | +</ul> |
| 623 | +
|
| 624 | +<h4>Useful Package Documentation:</h4> |
| 625 | +<ol> |
| 626 | + <li><strong>NumPy</strong> (for numerical computations): <a href="https://numpy.org/doc/" target="_blank" rel="noopener noreferrer">NumPy Documentation</a></li> |
| 627 | + <li><strong>pandas</strong> (for data manipulation): <a href="https://pandas.pydata.org/docs/" target="_blank" rel="noopener noreferrer">pandas Documentation</a></li> |
| 628 | + <li><strong>scikit-learn</strong> (for model training and evaluation): <a href="https://scikit-learn.org/stable/documentation.html" target="_blank" rel="noopener noreferrer">scikit-learn Documentation</a></li> |
| 629 | + <li><strong>matplotlib</strong> (for data visualization): <a href="https://matplotlib.org/stable/contents.html" target="_blank" rel="noopener noreferrer">matplotlib Documentation</a></li> |
| 630 | + <li><strong>XGBoost</strong> (for gradient boosting): <a href="https://xgboost.readthedocs.io/" target="_blank" rel="noopener noreferrer">XGBoost Documentation</a></li> |
| 631 | + <li><strong>SHAP</strong> (for model interpretability): <a href="https://shap.readthedocs.io/" target="_blank" rel="noopener noreferrer">SHAP Documentation</a></li> |
| 632 | + <li><strong>Streamlit</strong> (for creating dashboards): <a href="https://docs.streamlit.io/" target="_blank" rel="noopener noreferrer">Streamlit Documentation</a></li> |
| 633 | + <li><strong>Plotly</strong> (for interactive visualizations): <a href="https://plotly.com/python/" target="_blank" rel="noopener noreferrer">Plotly Documentation</a></li> |
| 634 | + <li><strong>Flask</strong> (for web applications): <a href="https://flask.palletsprojects.com/" target="_blank" rel="noopener noreferrer">Flask Documentation</a></li> |
| 635 | +</ol> |
| 636 | + `, |
| 637 | + }, |
516 | 638 | ]; |
517 | 639 | const solutionsData = []; |
518 | 640 |
|
|
0 commit comments