机器学习_总结篇_十大经典算法与算法选择

一、 数据挖掘十大经典算法

最近写了一些机器学习的文档,对应数据挖掘经典算法,列表如下:

1. 聚类K-Means

《机器学习_基于距离的算法KNN与K-Means》

2. 关联Apriori

《机器学习_规则与关联规则模型Apriori、FP-Growth》

3. 最大期望EM

《机器学习_隐马尔可夫模型HMM》

4. 决策树DTree

《机器学习_决策树与信息熵》

5. CART: 分类与回归树

《机器学习_用树回归方法画股票趋势线》

6. 贝叶斯Bayes

《机器学习_统计模型之(一)贝叶斯公式》
《机器学习_统计模型之(二)贝叶斯网络》
《机器学习_统计模型之(三)朴素贝叶斯》

7. 线性回归logistic

《机器学习_最小二乘法,线性回归与逻辑回归》

8. 集成算法adaBoost

《机器学习_集成算法》

9. 支持向量机SVM

《机器学习_SVM支持向量机》

10. PageRank

(没写)

11. 其它(特征工程)

《机器学习_用SVD奇异值分解给数据降维》
《机器学习_用PCA主成分分析给数据降维》

12. 总结

 数据挖掘是人工智能的一个分枝,基本覆盖了大部分机器学习算法。
 有了深度学习之后,这些算法大多被归入浅层学习。至于是选择深度学习还是浅层学习,主要还是要看具体问题。两种学习也是强相关的,像在CNN和RNN的算法中其实也容入了浅层学习的很多想法。而HMM和GBDT看起来和深度学习也很相似。我觉得深度模型更值得借鉴的是它可以在多个层次同时调整。在集成浅层算法时,也可以参考。

二、 浅谈算法选型

 以下是一些个人看法,希望在算法选型时给大家一些启发。

1. 算法的分类

 从开始看第一本讲算法书起,就希望能把算法归类,或者能让算法和问题类型对应起来。但好像并不这么简单。
 《机器学习》(Peter Flach著)把有学习模型分成三类:几何模型,统计模型,逻辑模型。简单地说,几何模型就是计算实例间的距离;统计模型是对已知变量X与未知变量Y之间的依赖关系统计建模;逻辑模型更偏重规则,每一种算法都被可被划入其中一种至几种分类。

 虽然不能完全分开,但是遇到具体问题的时候,三选一总比十选一要容易得多。

2. 微调与重构

 罗曼罗兰说:“大半的人在二十岁或三十岁上就死了。一过这个年龄,他们只变了自己的影子”。这其实挺合理的。当一个基础系统,很多上层都依赖于它时,任何修改都可能导致上层多个系统的崩溃,所以一般系统达到一定规模之后,修改都以查缺补漏为主。一个系统停止更新了,基本也就看到天花板了。
 微调总比重构来得容易,但效果也有限。以ImageNet比赛为例,每一次重大的进步都是因为加入了新结构,而微调和增加算力,效果都不特别特著。
 我们使用现成算法也有这个问题,比如用sklearn库中的算法时,主要是调参,对调用者来说库就是黑盒,没法针对数据的特征做内部的修改,或者在内部嫁接多个算法。用库,你能轻松地赶上大家的水平,但是很难突破。所以有时候,看一个数据挖掘比赛,前十名用的都是同一个算法,大家主要在比调参和特征工程。

3. 有监督、无监督与半监督

 确定有监督、无监督,是选择算法的第一步。这两种情况对应的算法完全不同,不过现在也常把聚类(无监督)放在有监督学习中使用(比如CNN)。
 强化学习是一种半监督学习,一般是根据规则模拟一些场景,用于训练,比如利用左右互博的方式训练下棋,自动驾驶,机器人等等,它可以作为一种有效的数据补充。

4. 精确与启发

 精确模型对所有数据有效,往往用于预测(比如决策树),而启发模型对部分数据有效,往往用于筛选(比如规则模型)。
 具体选择哪种模型,取决于已知数据带有信息量的多少。如果用属性和结果做图,发现大多数数据都是有规律的,就使精确模型。如果大多数都是噪音,只有少量有价值的点(或者是稀疏的),最好能选用启发模型,至少也要先把有序数据和无序数据分开。

5. 单模式与多模式

取得正确结果的路径往往不止一条,就如同决策树中的分枝,从这个角度看,处理复杂问题的时候,逻辑模型是必不可少的。
 对于多模式,像朴素贝叶斯,线性回归这种简单算法就不太适用了,有时候我们会使用集成算法,把几种算法结合在一起。
 处理具体问题的时候,也需要先判断这是单模式问题,还是多模式问题?单模式,可能倾向用几何距离类的算法,多模式可能要考虑逻辑和统计类,集成算法,或者先看看能不能把数据拆分后再做进一步处理。

6. 总结与推理

 模型有时被划分成判别式和生成式,判别式的训练过程一般以总结为主,比如决策树,线性拟合;而生成式中加入了一些推理,比如说关联规则,一阶规则,贝叶斯网络等等。选算法时也要注意,是否需要机器推导。

7. 表面与隐藏

 隐马尔可夫模型和神经网络模型中都有隐藏层的概念,它阐释出内在的关系,这类算法常对应一些比较复杂的问题。

8. 线性与非线性

 线性指量与量之间按比例、成直线的关系,在数学上可以理解为一阶导数为常数的函数;非线性则指不按比例、不成直线的关系,一阶导数不为常数。
 线性模型指一般线性模型,线性混合模型和广义线性模型(先映射成线性模型,再做处理),比如线性拟合,logistic回归,局部加权线性回归,SVM都属于线性类的模型。有的也能拟合曲线,但作用范围有限。
 神经网络的主要优点之一就是能解决非线性问题。
 线性模型和线性变换都是非常基本元素,算法中几乎无处不在。一般线性模型用只能处理简单的问题,主要是和其它算法组合使用。

9. 相关性、组合与分解

 分析属性间的关系对选择算法也很重要,有时能看到属性间有明显的关系,比如图像中每个像素与它上下左右的相邻像素都相关,这时候我们使用神经网络中的卷积来替代全连接。
 实例间也可能存在联系,比如股票中涨跌幅就是两日收盘价计算出来的,相比于收盘价,涨跌幅更具意义。
 另外,还有一些不太明显的关系,可以通过分析特征的相关系数得到,并使用降维减小相关性和减少数据。

10. 连续与离散

 我们拿到的原始数据可能是连续的或是离散的,因为可以相互转换,数据的类型倒不是大问题,不过转换时,也需要注意一些细节。
 比如说连续数据离散化时,需要去考虑切分的方法,像等深、等宽分箱,切分窗口重叠等等,最好能先用直方图分析一下数据的分布。
 离散值转成连续值时也有一些问题,比如把:”男人”,“女人”与“孩子”,映射成0,1,2,那“男人”与“孩子”间的距离更大,这是明显是不合理的,这时候可能需要把一个属性拆成三个。

11. 数据保存

 我们的思维中有多少是真正的思考,有多少是套路呢?如何把习得的套路保存下来,以及重用呢?
 套路可能是决策树规则,可能是神经网络参数,可能是规则列表,又或是典型实例;还有一些学习得来的知识,怎么把它们容入连接成更大的模型?
 对于人来讲,最终得以保存的可能是不可描述的经验和可描述的规则,规则可以是经验总结的,也可以是习得的,可以实例化,又可以加入进一步推导。它所涵盖的可能是全部(树模型),也可能是部分(规则模型),或者是一条主干(线性拟合)加上一些例外(离群点)。

12. 问题类型

 下面看看常见的数据挖掘问题

i. 纯数据的预测问题:
 通过各个特征值预测结果,比较流行使用GDBT和CNN算法。

ii. 关联问题:
 如根据用户的浏览,收藏,购物,给用户推荐,可能用到聚类,关联规则。

iii. 复杂问题
 涉及一些组合问题,比如自动驾驶,机器人,需要处理一些冲突,均衡,常使用神经网络,博弈算法,有时也用到增强学习。

iv. 专业领域的问题
 如图像处理,音频,自然语言处理,地图数据,涉及专业领域的知识,需要分析数据的具体特点以选择算法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,830评论 5 468
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,992评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,875评论 0 331
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,837评论 1 271
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,734评论 5 360
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,091评论 1 277
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,550评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,217评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,368评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,298评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,350评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,027评论 3 315
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,623评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,706评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,940评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,349评论 2 346
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,936评论 2 341