[百日馬拉松] 機器學習-資料清理

機器學習路線圖

最近參加了機器學習 百日馬拉松的活動,單純記錄下這100天python機器學習中每日覺得最有收穫的地方,如果有想參加這活動的朋友,真心推薦參加!

此次機器學習-百日馬拉松的相關代碼放置於:https://github.com/hsuanchi/ML-100-days

機器學習相關延伸閱讀:

ㄧ. 損失函數 MSE & MAE:

機器學習大部分的算法都有希望最佳化損失函數 (損失函數 = y表示實際值 – ŷ表示預測值)
1.回歸常用的損失函數:
* 均方誤差(Mean square error,MSE)
* 平均絕對值誤差(Mean absolute error,MAE)
2.分類問題常用的損失函數:
* 交叉熵(cross-entropy)

二. iloc & loc:

iloc[列,欄] 應用於數字
df.iloc[行index,列index]
loc[列,欄] 應用於文字
df.loc[行index,[column name]]

三. Random數值:

# array轉成dataframe

# dataframe轉成array

四. One Hot Encoder:

分類器不好處理屬性資料的問題,所以需要One Hot Encoder將特徵值轉用數字表示,機器學習效率會高很多
參考文件:Label Encoder vs. One Hot Encoder in Machine Learning

五. 正規化(Normalization) :

python ml 100days - 正規化
python ml 100days – 正規化

六. 變數離散化:

  1. 等寬劃分:按照相同寬度將資料分成幾等份。缺點是受到異常值的影響比較⼤。
  2. 等頻劃分:將資料分成幾等份,每等份資料裡⾯的個數是⼀樣的。
  3. 聚類劃分:使⽤聚類演算法將資料聚成幾類,每⼀個類為⼀個劃分。

七. 經驗累積分佈函:

可以看到AMT_REQ_CREDIT_BUREAU_YEAR 這個欄位的最大值離平均與中位數很遠,但在plt.hist實無法顯示數量較少的區間。所以使用ECDF(經驗累積分佈函)來顯示,可以很明顯地觀察出10~25的分佈情況。

延伸閱讀:探索資料-ECDF

python ml 100days - ecdf
python ml 100days – ecdf

ECDF取log

  1. 縮小數據的絕對值,方便計算
  2. 取log後,可以將乘法轉換為加法計算
  3. 取log可以將大於中位數的值按一定比例縮小,讓數據更趨近於正態python ml 100days - ecdf+logpython ml 100days – ecdf+log

八. 核密度估计(kernel density estimation):

  1. KDE可以模擬真實的概率分佈曲線,並得到相對直方圖平滑而漂亮的結果
    • 在數據點處為波峰
    • 曲線下方面積為1
  2. ‘kernel’ 是一個函數,用來提供權重让我们举个例子,假设我们现在想买房,钱不够要找亲戚朋友借,我们用一个数组来表示 5 个亲戚的财产状况: [8, 2, 5, 6, 4]。我们是中间这个数 5。“核”可以类比 成朋友圈, 但不同的亲戚朋友亲疏有别,在借钱的时候,关系好的朋友出力多,关系不好的朋友出力少,于是我们可以用权重来表示。 总共能借到的钱是: 80.1 + 20.4 + 5 + 60.3 + 40.2 = 9.2。
  1. 參考資料:

python ml 100days - kde
python ml 100days – kde

python ml 100days - distplot
python ml 100days – distplot

python ml 100days - distplot
python ml 100days – distplot

九. plt.subplot :

python ml 100days - subplot
python ml 100days – subplot

十. heatmap :

python ml 100days - heatmap
python ml 100days – heatmap

十一. df.boxplot :

python ml 100days - boxplot
python ml 100days – boxplot

十二. plt.scatter :

python ml 100days - scatter
python ml 100days – scatter

十三. df.plot:

延伸閱讀:

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *