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

scikit-learn 初探

闲话

这两天装了个Ubuntu双系统,结果作死在弄系统分区的时候不小心把win10的系统分区格式化了。搞得win10也不能用了,重装系统也不行,只能选择先用Ubuntu。一开始接触这个系统确实不友好,安装任何东西都是命令行,但是很有feel,渐渐喜欢上这个系统了,流畅、简洁,关键是不能打撸啊撸了,可以安心学习啦,哈哈。装个软件需要这样,这还是比较幸运的,一般情况下都不能一次安装好,还需要额外安装依赖环境。

桌面长这样,其实一开始就是被这个桌面惊艳到了,绝对符合我个人的审美,比win10好看不要太多,有种mac即视感哈。先用着吧,也没其他办法了。

scikit-learn是什么

细心的看客应该记得在之前的文章看到过这个,没错,是Python环境下的一个快速实现机器学习算法的库。这个库将机器学习算法都包装好了,只需要几行代码调用就可以完成算法的实现。我个人感觉就相当于keras在深度学习框架中的地位。

我们就以最近邻算法(Knn)为例。复习下Knn: 最邻近方法的原理是找到与新点最近的距离最接近的预定数量的训练样本,并从这些中预测标签。样本数可以是用户定义的常数(k-最近邻学习),或者基于点的局部密度(基于半径的邻居学习)而变化。一般来说,距离可以是 metric measure :标准欧氏距离是最常见的选择。基于邻居的方法被称为非泛化机器学习方法,因为它们简单地 “remember” 其所有训练数据(可能被转换成诸如Ball TreeKD Tree的快速索引结构)。作为非参数方法,在决策边界非常不规则的分类情况下,通常是成功的。

找到2组数据最近邻

KD Tree使用二叉树根据数据维度来平分参数空间。可以直接使用 含有algorithm=’auto’的模组。 algorithm=’auto’ 自动为您选择最优算法

leaf size对KD Tree 的影响:

对于小样本暴力搜索是比基于数的搜索更有效的方法. 这一事实在 ball 树和 KD 树中被解释为在叶节点内部切换到蛮力搜索. 该开关的级别可以使用参数 来指定。

一个大或小的 可能会导致次优查询成本. 当 接近 1 时, 遍历节点所涉及的开销大大减慢了查询时间. 当 ,接近训练集的大小,查询变得本质上是暴力的. 这些之间的一个很好的妥协是 , 这是该参数的默认值.

再比如在最近质心分类上(质心指的就是一堆数据的“中心”,类似与均值):

这次先分享到,以Knn算法为例子。用Ubuntu系统还不熟练,效率不高。

对于scikit-learn的学习,应以官方文档为主,主要是了解函数中每个参数对应在机器学习算法中的意义。这才是最重要的!

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

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券