1.特徵預處理概念
通過一些轉換函式將特徵資料轉換為更加適合演算法模型的特徵資料的過程。
2.為什麼要進行歸一化/標準化?
特徵的單位或者大小相差較大,或者說某些特徵的方差比其他的特徵要大出幾個數量級,容易影響(支配)目標結果,使得一些演算法無法學習到其它的特徵。
無量綱化:就是將不同規格的資料轉換到同一規格
3.特徵預處理api
skklearn.preprocessing
3.1 歸一化
作用於每一列,max為一列的最大值,min為一列的最小值,那麼x』』為最終結果,mx,mi分別為指定區間值預設mx為1,mi為0
sklearn.preprocessing.minmaxscaler(feature_range=(0,1)…)
返回值:轉換後的形狀相同的array
示例:
import pandas as pd
from sklearn.preprocessing import minmaxscaler
defminmax_demo()
:'''
歸一化演示
'''data = pd.read_csv(
"dating.txt"
)# 1 例項化乙個轉換器類
transfer = minmaxscale(feature_range=(2
,3))
# 2 呼叫fit_transfrom
data = transfer.fit_transfrom(data)
print
("最小值最大值歸一化處理的結果:"
,data)
return
none
minmax_demo(
)
歸一化總結
3.2 標準化
返回值:轉換後的形狀相同的array
示例:
import pandas as pd
from sklearn.preprocessing import standardscaler
defstand_demo()
:'''
標準化演示
'''data = pd.read_csv(
"dating.txt"
)
transfer = standardscaler(
) data = transfer.fit_transform(data)
print
("標準化結果:"
,data)
print
("每一列特徵的平均值:"
,transfer.mean_)
print
("每列特徵的方差:"
,transfer.var_)
return
none
stand_demo(
)
1.再識k-近鄰演算法api
algorithm:
2.案例
步驟分析:
2.1**
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import standardscaler
from sklearn.neighbors import kneighborsclassifier
# 1.獲取資料集
iris = load_iris(
)# 2.資料的基本處理
x_train,x_test,y_train,y_test = train_test_split(iris.data,iris.target,test_size=
0.2,random_state=22)
# 3.標準化
transfer = standardscaler(
)x_train = transfer.fit_transform(x_train)
x_test = transfer.transform(x_test)
# 4.模型訓練,knn演算法
estimator = kneighborsclassifier(n_neighbors=9)
estimator.fit(x_train,y_train)
# 5.模型評估
# 方案一,對比真實值和**值
y_predict = estimator.predict(x_test)
print
("**值為:"
,y_predict)
print
("真實值和**值的對比:"
,y_predict==y_test)
# 方案二,直接計算準確率
score = estimator.score(x_test,y_test)
print
("準確率為:"
,score)
適合大樣本自動分類
缺點:
類別評分不是規格化
輸出可解釋性不強
對不均衡的樣本不擅長
計算量較大
特徵工程之特徵預處理
概念 特徵預處理是什麼呢?特徵預處理是通過統計方法 數學方法 將資料轉換成演算法要求的資料,所以特徵預處理也叫做資料預處理。下面是幾種資料預處理的方法 1 數值型資料 標準縮放 1 歸一化2 標準化 2 類別型資料 one hot編碼 3 時間類別 時間的劃分 下面介紹歸一化和標準化歸一化 歸一化 ...
特徵工程之特徵預處理
在前面我們分別討論了特徵工程中的特徵選擇與特徵表達,本文我們來討論特徵預處理的相關問題。主要包括特徵的歸一化和標準化,異常特徵樣本清洗與樣本資料不平衡問題的處理。由於標準化和歸一化這兩個詞經常混用,所以本文不再區別標準化和歸一化,而通過具體的標準化和歸一化方法來區別具體的預處理操作。z score標...
特徵工程之特徵預處理
在前面我們分別討論了特徵工程中的特徵選擇與特徵表達,本文我們來討論特徵預處理的相關問題。主要包括特徵的歸一化和標準化,異常特徵樣本清洗與樣本資料不平衡問題的處理。1.特徵的標準化和歸一化 由於標準化和歸一化這兩個詞經常混用,所以本文不再區別標準化和歸一化,而通過具體的標準化和歸一化方法來區別具體的預...