数据预处理及训练结果评估

数据预处理及训练结果评估

归一化(标准化)

1
2
3
4
#库名
from sklearn import preprocessing
#使用方法
X_scaled = preprocessing.scale(X)

K折验证

1
2
3
4
5
from sklearn.model_selection import train_test_split
X, y = np.arange(10).reshape((5, 2)), range(5)
X_train, X_test, y_train, y_test = train_test_split(
X, y, test_size=0.125, random_state=0) # 8折验证

准确率、召回率等

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
from sklearn.metrics import precision_score
print(precision_score(y_test,y_predict,average='micro'))
#其中,average可选(常用):
'''
宏平均(Macro-averaging),是先对每一个类统计指标值,然后在对所有类求算术平均值。
微平均(Micro-averaging),是对数据集中的每一个实例不分类别进行统计建立全局混淆矩阵,然后计算相应指标。
'micro':
计算准确率
'macro':
计算每个标签的准确率
'weighted':
根据每个标签出现的数量按权重计算其准确率
'binary':
* 计算二分类的准确率(预测为1的准确率)
* 在召回率中,则计算预测为1的占总数的百分比
'''

召回率

1
2
3
from sklearn.metrics import recall_score
recall_score(y_true, y_pred, average='micro')
# average和上一个类似

f1-score

1
2
f1score(y_true, y_pred, average='micro')
# average和上一个类似

准确率(sklearn训练)

1
print(clf.score(x_train, y_train))

PCA降维

1
2
3
4
5
6
7
8
9
10
11
import sklearn.decomposition.pca as PCA
#PCA降维
mypca=PCA.PCA(n_components=2)
x_test_de=mypca.fit_transform(x_test)
'''
其中
explained_variance_:方差值
explained_variance_ratio_:方差占比
singular_values_:分解得到的奇异值(不是奇异向量)
inverse_transform(X):按降维操作逆向升维
'''