机器学习笔记sklearn–转换器与预估器学习笔记
写这儿总不会忘放那儿了吧,那天忘了回来看看
Sklearn库是python用于机器学习的一个库,转化器和估计器框架
转化器:
特征工程在数据清洗好之后,特征工程是将数据转换成可以建模的特征变量,使数据集能够应用于sklearn库中封装的模型。例如数据标准化,文本数据数据化,数据哑变量化(01化)……之后就是划分训练集测试集。
在进入到特征工程时,连接数据集与特征工程的接口称为转换器,
流程:
-
实例化一个转化器(为服务下一步)
transformer=
StandardScaler() 标准化(KNN近邻算法)
DictVectorizer(sparse = False) 字典特征抽取—将离散变量转化成哑变量(决策树)
CountVectorizer() 文本特征抽取—词频统计一类 -
调用transformer
transformer.fit_transform()fit(): 【翻译为:使适应……】训练模型,计算出一些统计特征统计量,均值,方差这些训练集的统计特征,放入转换器中服务transform(),单独用不会返回结果
transform(): 在fit()的基础上进行标准化,降维
fit_transform(): 即上面两个的组合transform(), fit_transform() 两个不能混用,
**transform()常在训练集使用完fit()后,继续使用训练集得到的统计特征,对测试集使用,fit_transform(自己)**就会使用“自己”的数据特征转化(PCA, 标准化……)
估计器:estimator
实现算法的API。我的理解是,用sklearn中的工具进行建模+预测
有两个步骤:
1) 训练集上训练模型(建模)
a. 实例化一个预估器模型(例:estimator=DesionTreeClassifier())
b. 用fit()在训练集中训练模型。estimator.fit(x_train, y_train)
c. 对模型进行评估,选出最好的作为预测新数据的模型使用
2) 用挑好的模型,对新数据进行预测(预测)
3)计算准确率