1. sklearn数据集切分
一般在sklearn中可以通过调用train_test_split函数来完成对数据记得切分
from sklearn.model_selection import train_test_split #导入范式
train_test_split? #查阅核心参数
核心参数解释:
test_size:测试集比例,默认0.25
train_size:训练集比例, 默认0.75
shuffle: 默认为True,即打乱参数
random_state:设置随机数种子
stratify:是否需要进行分层切分
2. 数据标准化与归一化
从功能上划分,sklear中的归一化其实是分为标准化(Standardization)和归一化(Normalization)两类。其中,Z-Score标准化和0-1标准化,都属于Standardization的范畴,而在skiearn中Normalization则特指针对单个样本(一行数据)利用其范数进行放缩的过程。不过二者都属于数据预处理范畴,都在sklearn中的Preprocessingdata模块下。
from sklearn import preprocessing
关键参数:axis-> 维度选择,其余可以自行利用之前的 ***?方式进行观察
2.1 Z-score标准化的函数实现
X = np.arange(9).reshape(3,3)
preprocessing.scale(X)
2.2 0-1标准化实现
preprocessing.minmax_scale(X)
2.3 归一化
和标准化不同,sklearn中的归一化特指将单个样本(一行数据)放缩为单位范数(L1范数或者L2范数为单位范数)的过程,该操作常见于核方法或者衡量样本之间相似性的过程中。这些内容此前我们并未进行介绍,但出于为后续内容做铺垫的考虑,此处先介绍关于归一化的相关方法。
preprocessing.normalize(X)
3. 评估器构建
下面将以逻辑回归为例,在鸢尾花数据集上利用逻辑回归进行多分类预测,为大家演示评估器如何使用。
from sklearn.linear_model import LogisticRegression
X,y = load_iris(return_X_y=True)
model = LogisticRegression(max_iter=1000)#实例化
model.fit(X,y)#训练
model.predict(X)[:10]#预测
model.predict_proba(X)[:10]#输出概率
model.score(X,y)#输出得分