Mini Project

主題:Pima Indians Diabetes Database Classification

專題連結:Data Mining mini project

內容說明:

完成 Kaggle Competition: Diabetes Classification 並撰寫一份詳細報告,對資料集特徵進行說明與分析,以及解釋實做方式與結果。

實做摘要:

首先,我在報告中對資料集 Pima Indians Diabetes 進行了完整的特徵說明與分類,並做了初步的缺失值檢查。

接著,我對特徵進行了異常值分析處理、計算了各特徵的 Person Correlation Coefficient 以進行關聯性分析、並使用了 StandardScaler 來將特徵的數值標準化。

最後,我使用 Scikit-learn 中的 Logistic Regression 進行分類實做,並觀察 Confusion Matrix 與計算 Precision、Recall、F1 Score、以及各特徵的回歸係數,以進行結果分析。

另外,報告中使用了數張 Matplotlib 圖表進行了資料的視覺化分析。

技術:

  • Python3:主要使用語言。
  • Scikit-learn:資料分析與機器學習套件。
  • Matplotlib:圖表繪製。
  • Classification:使用了 Logistic Regression 作為分類方法。

Final Project

主題:K-Means Clustering and hit song science

專題連結:Data Mining Final Project

內容說明:

  1. 實做 K-Means Clustering 類別,包含不同的算法策略,並對其進行效能分析。接著,

  2. 對資料集 Hit song science 進行分群分析,並撰寫一份完整的分析報告。

實做摘要:

我參照 Scikit-learn 的 K-Means 類別界面實做了一個完整的 K-Means 類別,以及一個用以回傳結果的資料類別,其包含了數種可調參數、兩種初始化中心算法 randomkmeans++、兩種迭代算法 lloydelkan、以及,我還額外實做了平行處理的方法。

然後,我對 K-Means 進行了不同算法組合的性能分析,並使用此類別對資料集 Hit song science 進行了完整的分群分析。

技術:

  • Python3:主要使用語言。
  • Scikit-learn:資料分析與機器學習套件。
  • Matplotlib:圖表繪製。
  • Clustering:K-Means 分群分析。
  • multiprocessing:在算法中額外進行了平行處理。