首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python 数据挖掘入门与实践:第二章

点击下方,边听边看

估计器:用于分类、聚类、和回归分析;

转换器:用于数据预处理和数据转换;

流水线:组合数据挖掘流程,便于再次使用;

Scikit-learn的估计器主要包括以下两个函数:

1,fit():训练算法,设置内部参数;该函数接受训练集极其类别两个参数;

2,predict():参数为测试集,预测测试集类别,并返回一个包含测试集各条数据类别的数组;

欧氏距离:即真实距离;

曼哈顿距离:为两个特征在标准坐标系中绝对轴距之和,不使用平方距离;即为横向和纵向距离之和,即为街区距离;

余弦距离:特征向量夹角的余弦值;忽略特征向量的长度;

电离层数据:链接:https://pan.baidu.com/s/1rtaFvom6LE1RUOhG3aN3xw

密码:l548

合理的算法应是:

1,将整个大数据集分为几个部分;

2,对于每一部分执行以下操作:

将其中一部分作为当前测试集,用剩余部分训练算法,在当前测试集上测试算法;

3,记录每次得分及平均得分;

4, 在上述过程中,每条数据只能在测试集中出现一次,以减少运气成分;

sklearn中的cross validation模块,最主要的函数是如下函数:

cross_val_score :调用形式是cross_val_score(estimator, x, y=None,scoring=None, cv=None, n_jobs=1, verbose=0, fit_params=None, pre_dispatch='2*n_jobs');返回值就是对于每次不同的的划分raw data时,在test data上得到的分类的准确率。参数解释:estimator:是不同的分类器,可以是任何的分类器。比如支持向量机分类器:estimator = svm.SVC(kernel='linear', C=1);

cv:代表不同的crossvalidation的方法。如果cv是一个int值,并且如果提供了raw target参数,那么就代表使用StratifiedKFold分类方式;如果cv是一个int值,并且没有提供raw target参数,那么就代表使用KFold分类方式;也可以给定它一个CV迭代策略生成器,指定不同的CV方法;scoring:默认None,准确率的算法,可以通过score_func参数指定;如果不指定的话,是用estimator默认自带的准确率算法;选择最具区分度的特征、创建新特征等都属于预处理的范畴;

Sklearn的预处理工具叫做转换器,它接受原始数据集,返回转换后的数据集,除了处理数值型特征,转换器还可以用来抽取特征;

代码截图如下:

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180314G1T1BX00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券