机器学习基本认识

机器学习基本认识

0. 概述

数据挖掘主要包括数据库、机器学习、统计学三个方面的知识。机器学习主要是数据、模型、评估。模型主要是函数集、损失函数(如何从函数集中找最优的一个函数)、求解过程。

机器学习的应用,应注意具体的场景,基本的假设和数据的情况。

1. 特征工程

1.1 归一化

1.2 类别特征

1.3 组合特征

1.4 不平衡数据

在两类数据的预测时,例如癌症患者诊断,搜索结果等。癌症患者诊断中,希望分类器低的假阴性率,即减少将癌症患者误诊为健康。因为,即使将健康人诊断为癌症(假阳性),也还是可以复查的;而将癌症患者误诊为健康,则会错过治疗时间。搜索结果,则相反,希望分类器将更多的相关结果返回,即更大的召回率。因为,返回结果中包括一些无关结果也是可以接受的,但是相关结果没过出来就不好。当然,无关结果太多也不好。上面的癌症患者和相关结果就是关心的正样本,而且相同的时正样本占比很小。

处理这个问题,可以从数据集、模型、评估,三个方面入手。

模型一般都是假定类平衡分布和相等的错误代价,所以传统分类算法不适合不平衡数据。可以使用组合技术,即集成学习

另个,是阈值移动,例如对于返回概率的模型,从0.5降到0.4,使正样本容易分类。分类器包括:朴素贝叶斯,后向传播类的神经网络。

更改模型的评估指标。在不同的场景,可以更关心某一个指标。

数据集入手,包括:

  • 过抽样:对正样本重复采样,使正样本和负样本的个数相同。
  • 欠抽样:减少负样本的数量,使负样本和正样本的个数相同。

过抽样和欠抽样都改变训练集的分布。过抽样的方法,如SMOTE算法。

  • 阈值移动和组合技术优于过抽样和欠抽样。
  • 对于多分类,没有好的解决方案。

2. 模型评估

2.1 评价指标

2.2 过拟合与欠拟合

2.3 超参数选择

3. 算法

3.1 算法分类

算法的分类方法有很多种。按是否有标签,可以分为有监督和无监督模型。按数据的情况来分类,可以分为分类、关联规则、聚类、回归、离群点检测等。

机器学习算法分类

图 机器学习算法分类

3.2 逻辑回归

3.3 决策树

3.4 支持向量机

3.5 朴素贝叶斯

3.6 KMeans

4. 降维

4.1 主成分分析PCA

4.2 线性判别分析

5. 集成学习

集成学习(ensemble learning, 系综)是用多个分类器的投票来进行分类。分类器,即为基分类器可以是决策树、逻辑回归、支持向量集等前面的算法,但是一般用决策树比较多。

主要思想是将许多简单模型组合起来,共同回答同一个问题,这样得到的结果可能比一个模型的结果更接近真实答案。但是如何将这些模型给的结果组合起来,得到一个结果呢?这就有许多方法了。

主要有bagging, boosting, 随机森林。

5.1 bagging

bagging(装袋)就是将训练数据作为超参数,对训练数据进行有放回的采样,得到子集。然后一个子集训练一个基分类器。最终,基分类器的组合,就是最终的bagging模型。

pasting与bagging不同的是,采样是不放回的。这种模型一般用在在线和大数据集的情形下。

上述两个方法的评价:

  • 与单个分类器相比,准确率会有提升。
  • 对于噪声数据和过拟合的影响,鲁棒性更好。
  • 总的来说,最终结果与直接在原始训练集上训练的单个预测器相比,集成的偏差相近,但是方差更低。
  • 更容易并行化或者扩展。

5.2 Boosting

boosting(提升法)的总体思路是循环训练基分类器,每一次都更关注其前序的”错误“。最终,组合每个分类器的表决,其中每个分类器的投票的权重是其准确率的函数。

其中,前一个分类器的”错误“有多种提升方式。一个是对训练数据中每个数据的权重进行调整;一个是对前一个分类器的残差进行训练学习。

有AdaBoost(自适应提升法,adaptive boosting)和梯度提升。

5.3 随机森林

每个分类器都是一棵决策树,因此分类器的集合就是一个”森林“。

数据集D, 包括F个属性,基分类器为M, 模型个数为k个。

随机森林使用bagging和随机属性选择结合来构建。过程是,在构建第i个分类器\(M_i\)时,随机抽样数据集\(D_i\), 随机选择属性\(F_i\)个,且\(F_i << F\). 这样的随机森林为Forest-RI.

另一种方式为Forest-RC,是使用属性的随机线性组合。在树结点,选择L个原属性,从[-1,1]中随机选择一个数作为系数相加,最终得到\(F_i\)个属性,然后搜索最佳划分。在属性较少时,很有用。

  • 对于错误和离群点更鲁棒
  • 准确率依赖于分类器的个体实力和它们之间的相关性
  • 由于每次划分可以只考虑少量属性,因此适合大型数据库。

5.4 GBDT

6. 深度学习

6.1 分类

6.2 基础

6.3 CNN

6.4 RNN

6.5 强化学习

posted @ 2020-08-28 15:56  mszhai  阅读(478)  评论(0编辑  收藏  举报