1. 程式人生 > >機器學習-6(歸一化數值計算介紹)

機器學習-6(歸一化數值計算介紹)

  特徵值太多了,但是每個特徵值有大有小,你怎麼去權衡50KG重和臂長1M以及投籃命中率百分之30呢?

這個時候就需要我們去加一個係數了,這個特別像權重,你要保證的就是:

x0+x1+x2+.....+xn=m

d1*x0+d2*x1+.....+dn*xn=1

即   x0/m+x1/m+x2/m+....xn/m=1

即每個數乘以1/m,這個d1,d2,....dn就被我們非常完美的變成了一個1/m了,是不是特別的方便了

還有一種換算方法是下面這個樣子的:

          也就是newValue = (oldValue-min)/(max-min)

也就是每一列的最大特徵值為max,最小特徵值為min 通過舊值來獲取在0-1之間的新值

在這裡簡單驗證一下為什麼會是在0-1之間

new = (old-min)/(max-min)

        = 1 - (max-old)/(max-min)

       因為 old>=min  

       所以 0<=(max-old)/(max-min)<=1

 所以0<=newValue<=1               

看不懂的同學就不要繼續學習下去了。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

下一章再介紹如何運用到我們的演算法中去