数据挖掘
文章平均质量分 83
a_step_further
这个作者很懒,什么都没留下…
展开
-
专题练习-决策树
前言本篇结合周志华老师的《机器学习》一书第4章习题,用python实践其中几个题目,为大家提供学习及实践中的参考。题目我们尝试将上述4道题结合起来,从简单到复杂来进行实践。这里提到的数据集表4.3,已经整理好,放到了本人github项目空间 https://github.com/aaronlou/DataScienceProject/blob/master/Data/waterm...原创 2020-04-23 07:47:17 · 773 阅读 · 0 评论 -
图上的机器学习系列-聊聊GraphSAGE
前言本篇结合《Inductive Representation Learning on Large Graphs》来聊聊GraphSAGE。这是一种已经在工业界得到广泛采纳的图神经网络方法,具有较好的分布式实施特性,推荐大家关注。方法定义GraphSAGE是Graph SAmple and aggreGatE的简称,可以猜想该方法在抽样与聚合上一定有其独到之处。其更正式的定义如下(...原创 2020-04-13 00:04:55 · 1046 阅读 · 0 评论 -
专题练习:K折交叉验证 VS 留一法
前言欢迎关注本人公众号本篇结合周志华老师《机器学习》第3章习题而讲。做为入门项目,我们推荐使用Python来进行编码实践,有需求了解更多其它机器学习生态的同学,可以在公众号后面留言,也可以加入数据科学实战QQ交流群:250695418。好了,来做习题吧西瓜书《机器学习》p69页第3.4题:选择两个UCI数据集,比较10折交叉验证和留一法所估计出的对率回归的错误率。...原创 2020-04-11 20:35:17 · 1278 阅读 · 0 评论 -
专题练习:对率回归(逻辑回归)的编程实践
前言欢迎关注本人公众号:本篇结合周志华老师《机器学习》第3章习题而讲。对率回归,其实就是logistic regression,也即业界常说的逻辑回归,但后者这个译法并不好,周老师将之译为了对率回归,没有屈服于现有的“劣币”译法,体现了教育者的独立精神,点赞!关于logistic回归的知识,还可以参考本公众号历史文章《上手机器学习系列-第3篇-聊聊逻辑回归》,共分上、中、下三...原创 2020-04-11 20:28:52 · 496 阅读 · 0 评论 -
图上的机器学习系列-聊聊DeepWalk
前言本篇着重结合论文《DeepWalk: Online Learning of Social Representations》来聊,过程中尽量把一些概念和方法展开多讨论一下。DeepWalk是干啥的我们来想这样一件事:机器学习是咋工作的?需要输入一堆特征变量对吧?无论是离散型还是连续型,但都是欧式空间中的数学表达,总归是可以用很多数学工具来分析的。但一个社交网络的图结构呢?每一个点该...原创 2020-04-05 00:30:03 · 643 阅读 · 1 评论 -
图上的机器学习-第0篇-问题描述与学习建议
从本篇开始,我们将一起开启图上的机器学习篇章。我们这里所说的“图”,是指图论这个领域的概念,而非图像。为什么要开启本系列随着当前GNN(图神经网络)在学术圈、工业界的同时爆发,未来3年左右,图上(或称复杂网络、关系数据)的机器学习、深度学习一定会呈现高度繁荣的局面,笔者建议对图论、图计算、机器学习这些领域感兴趣的朋友一定要密切关注该交叉领域的技术创新及应用发展。现实中越来越多的数据...原创 2020-03-30 16:53:27 · 308 阅读 · 0 评论 -
上手机器学习系列-第7篇(下)-CatBoost论文阅读笔记
前言在第7篇(上),我们介绍了CatBoost的代码实践,本篇来一起读一下算法原创论文《CatBoost: unbiased boosting with categorical features》,以期加深对于CatBoost的理解。论文中心思想笔者提炼了一下论文的核心逻辑如下图所示:所以最核心的是要理解论文提出的排序原则到底是咋回事。内容导读CatBo...原创 2020-03-24 18:14:01 · 739 阅读 · 0 评论 -
上手机器学习系列-第6篇(下)-LightGBM原理篇
前言前面的文章分享过了LightGBM的实践编码,本篇让我们一起来读一下算法论文《LightGBM: A Highly Efficient Gradient Boosting Decision Tree》,从原理层面上去深入一层。推荐大家在读论文的同时,参考LightGBM官网材料([https://lightgbm.readthedocs.io/en/latest/Features.html...原创 2020-03-20 15:08:59 · 393 阅读 · 1 评论 -
上手机器学习系列-第5篇(下)-XGBoost原理
本篇中我们结合XGBoost的论文《XGBoost: A Scalable Tree Boosting System》来理解一下该算法的原理。这是一篇写自2016年的论文,当时已经有大量的竞赛、工作实践开始采用XGBoost。作者在论文中将XGBoost称为Scalable,正是基于它的高性能特点,据论文讲,根据当时的评估,在单机上的运行速度对比中,XGBoost较业内其它算法快了至少10倍以上...原创 2020-03-19 10:17:57 · 257 阅读 · 0 评论 -
上手机器学习系列-第7篇(上)-CatBoost编码
前言本篇继续我们的集成算法学习之旅。这次带来的是一家俄罗斯搜索引擎公司推出的集成学习算法:Catboost(官网[https://catboost.ai/])。名字中的cat代表着categorical,就是说它可以直接处理类别型的特征变量,而无须进行one-hot-encoding处理,这还真是相比于其它算法包的一个优点。此外,官方宣传的卖点还包括:简化的调参(默认的参数即可实现高质量的预测)...原创 2020-03-15 20:03:27 · 1773 阅读 · 0 评论 -
上手机器学习系列-第6篇(上)-LightGBM编码
LightGBM相比于XGBoost,LightGBM官网的文档、Github写得都不敢让人恭维(缺少细节、案例语焉不详)。因此本篇从实际使用角度来介绍用法,就显得更有意义了。安装LightGBM号称的速度快不是没有成本的,它底层依赖了一些并行处理的库文件,因此在安装的时候会遇到各种问题。笔者已经单独写了一篇短文分享,详见本人CSDN博客《Mac环境下安装LightGBM的苦难记》。假设你...原创 2020-03-14 20:57:29 · 833 阅读 · 0 评论 -
Mac环境下安装LightGBM的苦难记
正常情况下,我们安装一个python的package,只要执行pip install <package_name>即可,但在安装该软件的过程中,即使成功执行了上面的pip命令,在import 的时候,很可能会遇到这样的报错(在MAC的环境下,windows下不知道是否会出现同样问题):Library not loaded: /usr/local/opt/libomp/lib/...原创 2020-03-14 08:20:07 · 1003 阅读 · 1 评论 -
上手机器学习系列-第5篇(中)-XGBoost+Scala/Spark
书接上回在上篇中,我们介绍了XGBoost的原生接口使用方法,以及sklearn版本的接口。本篇我们再结合Scala/Spark来聊聊,以体现XGBoost在工程上的易用性。Spark是基于Scala原生语言开发的一个分布式迭代计算平台,其中MLLib模块包括了很多机器学习算法包(但比起Sklearn来肯定还是少的)。Scala 是一门面向对象+函数式JVM语言,需要编译后才能执行,但...原创 2020-03-13 09:54:08 · 1830 阅读 · 2 评论 -
上手机器学习系列-第5篇(上)-XGBoost
引言在第4篇中我们简要介绍了GBDT的使用方法,本篇来聊一种进阶的GBDT-XGBoost,这是一款极其优秀的算法解决方案,项目官方网站:https://xgboost.readthedocs.io/en/latest/。XGBoost本身最大的优势就在于它在工程上做了大量的工作,使得该算法可以广泛应用到不同的生态中(python、spark、C++等)。Python + XGBoost对...原创 2020-03-12 21:39:07 · 505 阅读 · 0 评论 -
上手机器学习系列-第4篇-聊聊GBDT
前言本期我们来聊GBDT,这是一种被广泛使用的集成学习方法。当今在kaggle竞赛中被广泛使用的XGBoost、LightGBM正是以它为基础。因此掌握好该基础算法的原理与编码技巧还是有必要的。我们知道,集成学习大致可分为Bagging、Boosting两种方法,其对于集成中每个单独学习器的训练过程如下简图所示:GBDT顾名思义,也是一种Boosting方法。我们不妨再把它的名字拆开说一下...原创 2020-03-11 17:27:09 · 220 阅读 · 0 评论 -
上手机器学习系列-第3篇(下)-聊聊logistic回归
书接上回在之前的上、中篇,我们分别聊了logistic回归的基本思想、sklearn中的实验方法,本篇中我们一起读一下sklearn中logistic的源代码,一窥其究竟,进一步加深我们对该方法的理解。代码地址Github中sklearn的地址为:https://github.com/scikit-learn/scikit-learn,在下属子录中,依次去找sklearn -> lin...原创 2020-03-09 20:46:59 · 287 阅读 · 0 评论 -
上手机器学习系列-第3篇(中)-聊聊logistic回归
书接上回在第3篇(上)中,笔者介绍了自己对于logistic回归是咋来的这一问题的思考。本文中篇让我们一起实战一下。用Python中的机器学习大杀器Scikit-learn来跑一个小任务。未来在下篇中,我们还会继续带领大家通读一遍sklearn的logistic回归源代码。数据来源本小节我们直接使用scikit-learn中自带的二分类数据集,通过以下方式可以导入:from sklearn...原创 2020-03-09 00:05:10 · 282 阅读 · 0 评论 -
上手机器学习系列-第3篇(上)-聊聊logistic回归
前言本系列关注于动手学习实践机器学习知识,往期文章可到公众号首页点击查看历史文章。本期我们来聊聊logistic回归,该方法简单优雅且兼具实用性,当前在企业界实际工作中仍有大量使用,因此对于初学者是一个比较好的上手练习。logistic回归是咋来的首先要说明一点,“逻辑回归” 这个翻译是非常差劲的一个翻译词汇(没办法,历史上有太多这种先入为主、劣币驱逐良币的案例了),从后面的讨论我们就会...原创 2020-03-07 17:41:49 · 281 阅读 · 0 评论 -
上手机器学习系列-第2篇-工具&学习资料准备篇
上手机器学习系列-第2篇-工具&学习资料准备篇工欲善其事,必先利其器。既然机器学习是一门实践性科学,那么过程中就非常重视动手能力了。本期为大家推荐一些相关的软件工具、学习资源,以期在正式开始编码之前让大家做好相应的准备工作。因为可以选择的平台与工具太多,反而是一种信息干扰,这里笔者结合多年行业工作经验为大家遴选出一些比较好的资料,以节约朋友们的自我探索时间。1. 编程环境现如今支持机...原创 2020-03-05 07:53:26 · 239 阅读 · 0 评论 -
上手机器学习系列-第1篇-聊聊机器学习的正确打开姿势
前言机器学习是一个充满乐趣的领域,也是一门动手性比较强的学科。就像掌握一类乐器一样,懂得乐理肯定是必要的,但反复练习,多动手实践,才能学好这门手艺。现在讲机器学习算法理论的材料已经很多了,而本系列突出以下特点:注重代码实践,把机器学习的概念动手实现出来;注重介绍大数据生态内与机器学习相关的技术,使得入门者可以了解在企业实际工作中相关岗位上都有哪些工作需要去做;注重资源推荐,很多知识点是需...原创 2020-03-05 07:43:30 · 175 阅读 · 0 评论 -
基于hanLP的中文分词详解-MapReduce实现&自定义词典文件
用mapreduce实现中文分词原创 2015-12-16 22:29:06 · 27070 阅读 · 7 评论 -
python scikit learn 文本分类
#!/usr/bin/env python#coding:utf-8import jiebafrom sklearn.feature_extraction.text import HashingVectorizerimport sysimport randomfrom sklearn.naive_bayes import GaussianNBfrom sklearn.naive_b原创 2015-12-05 22:00:51 · 1371 阅读 · 0 评论