歸一化數值


1. 為什么要歸一化?

表示一個事物有不同的維度{即:屬性},每個屬性的取值范圍不同,導致計算時此屬性占用的權重不同。

如:

兩個人的屬性對比
屬性 A-person B-persion
身高 1.75 1.81
年齡 41 26
收入 40000 10000

 

 

 

 

 

計算兩個人的差異:

diff = (A.身高-B.身高)2 +  (A.年齡-B.年齡)+  (A.收入-B.收入)

      = (1.75-1.81)2 +  (41-26)+ (40000-10000)

      = 0.0036 + 225 + 900000000

距離 = diff1/2 = 30000.00375

問題來了,看這些屬性,發現收入占用的權重太高,身高和年齡占用的權重相對較低,怎么弱化收入占用的權重呢?

我們把身高,年齡和收入這些屬性映射到一個單位區間(0,1)中。

圖中,根據梯形的特點可以得到如下公式

 

(1 - 0) / (max - min) = (歸一化值 - 0) / (屬性值 - min)

 

所以,歸一化值 =  (屬性值 - min) / (max - min) 

 

假如3個屬性最大和最小值如下:

 
屬性 最大值 最小值
身高 1.2 2.1
年齡 101 16
收入 100000 500

 



 

 

經過歸一化操作后:

  A-person B-person
身高歸一化值

 = (1.75-1.2)/(2.1-1.2) 

 = 0.55 / 0.9

 = 0.61

 = (1.81-1.2)/(2.1-1.2) 

 = 0.61 / 0.9

 = 0.678

年齡歸一化值

 = (41-16)/(101-16) 

 = 25 / 85

 = 0.294

= (26-16)/(101-16) 

 = 20 / 85

 = 0.235

收入歸一化值

= (40000-500)/(100000-500) 

 = 39500 / 99500

 = 0.397

= (10000-500)/(100000-500) 

 = 19500 / 99500

 = 0.196

 

 

 

 

 

 

 

 

 

 

 

 

 

使用歸一化值計算兩個人的差異:

diff = (A.身高歸一化值-B.身高歸一化值)2 +  (A.年齡歸一化值-B.年齡歸一化值)+  (A.收入歸一化值-B.收入歸一化值)

      = (0.61-0.678)2 +  (0.294-0.235)+ (0.397-0.196)

      = 0.004624 + 0.003481 + 0.040401

計算的值可以看出,3個屬性占用的權重在一個數量級上,每個屬性都不會獨大。

距離 = diff1/2 = 0.2202

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM