處理大量原始資料。機器學習算法期望數據在開始訓練過程之前以某種方式被格式化。為了準備機器學習算法攝取的數據,必須對其進行預處理並將其轉換為正確的格式
導入的包
|
|
測試資料
|
|
二值化
當如果想要將數值轉換成布林值的時候,可以使用這個方法
如果>2.1的話 1 否則 0
|
|
輸出結果
1234 [[ 1. 0. 1.][ 0. 1. 0.][ 1. 0. 0.][ 1. 0. 0.]]
矩陣平均值
去除平均值是機器學習中常用的預處理技術。從我們的特徵向量中去除均值通常是有用的,因此每個特徵都以零為中心。
|
|
輸出結果
123 BEFORE:Mean = [ 3.775 -1.15 -1.3 ]Std deviation = [ 3.12039661 6.36651396 4.0620192 ]
去除均值
|
|
輸出結果
123 AFTER:Mean = [ 1.11022302e-16 0.00000000e+00 2.77555756e-17]Std deviation = [ 1. 1. 1.]
缩放
在特徵向量中,每個特徵的值可以在許多隨機值之間變化。因此,擴展這些特徵變得非常重要,這樣對於機器學習算法來說,這是一個公平的競爭環境。僅僅因為測量的性質
|
|
輸出結果
12345 Min max scaled data:[[ 0.74117647 0.39548023 1. ][ 0. 1. 0. ][ 0.6 0.5819209 0.87234043][ 1. 0. 0.17021277]]
每行被縮放,最大值是1所有其他值是相對於這個值。
正規化
正規化指的是最小絕對偏差,通過確保絕對值之和在每一行中為1來工作。L2 歸一化,指的是最小二乘法,確保平方和為1。
|
|
輸出結果
12345678910 L1 normalized data:[[ 0.45132743 -0.25663717 0.2920354 ][ -0.0794702 0.51655629 -0.40397351][ 0.609375 0.0625 0.328125 ][ 0.33640553 -0.4562212 -0.20737327]]L2 normalized data:[[ 0.75765788 -0.43082507 0.49024922][ -0.12030718 0.78199664 -0.61156148][ 0.87690281 0.08993875 0.47217844][ 0.55734935 -0.75585734 -0.34357152]]