基于随机森林的分类与回归外文翻译资料

 2022-11-13 15:40:40

英语原文共 6 页,剩余内容已隐藏,支付完成后下载完整资料


基于随机森林的分类与回归

安迪·利亚和马修·维纳

引言

最近,人们对“系综学习”产生了很大兴趣——这种方法产生了许多分类器并汇总了他们的结果。两个众所周知的方法分别为提升法(参见,例如Shapire等人,1998年)和套袋法分类树(Breiman ,1996 )。在提升法中,连续的树给分数增加了额外的权重,被早期预测者错误地预测。最后,对预测结果进行加权投票。在套袋法中,连续的树木不依赖于早期的树木--每个都是使用数据集自举样本独立构建的。最后,进行简单的多数票预测。

Breiman ( 2001 )提出了随机森林,它给装袋法增加了额外的随机性。除了构造每个树时使用不同的引导样本的数据,随机森林还会改变如何构造分类树或回归树。在标准树中,每个节点都使用所有变量中最好的分割。一个随机森林里,每个节点之间的分割使用是预测随机选择的节点的最好的一个子集。与许多其他分类器(包括判别分析、支持向量机和神经网络)相比,这种有点违反直觉的策略非常适合于每一种形式,并且对过拟合具有很强的反对性(Breiman,,2001)。此外,在这种意义上,它是非常用户友好的,即它只有两个参数(在每个节点的随机子集中的变量的数量和在森林中的树木的数量),并且通常对它们的值不太敏感。

随机森林包提供了一个面向Breiman和Cutler的Fortran程序的R接口(可从http://www.stat.berkeley.edu/users / Breiman /获得)。本文简要介绍了R函数的用法和特性。

算法

随机森林算法(分类和回归)如下:

  1. 从原始数据中提取ntree引导示例。

2.对于每一个引导样本,在每个节点上,创建一个未修剪的分类或回归树,在每个节点上,选择所有的预测对象,而不是选择最优的分割,随机选取mtry个预测者,然后选择最佳的分离变量。(套袋法可以认为是mtry = p时得到的随机森林的特例,即预测因子的数量)

  1. 通过聚合ntree树的预测来预测新的数据(即:大多数选票是用于分类,平均用于回归。)

估计的出错率,基于训练数据,如下:

1.在每个引导迭代,预测数据不是在引导样本(Breiman所说的“out-of-bag”或OOB数据)与引导样品使用树生长。

2.汇总OOB预测。(平均而言,每一个数据点大约有36%的时间是现成的,所以把这些预测汇总起来。)计算错误率,称之为错误率的OOB估计。

我们的经验是,对于错误率的OOB估计是相当准确的,因为已经构造了足够多的树(否则OOB估计会向上倾斜;参见Bylander(2002))。

来自随机森林的额外信息:

随机森林有选择地产生两个附加信息:预测变量的重要性的量度,以及数据的内部结构的量度(不同数据点之间的接近程度)。

变量的重要性 这是一个很难定义的概念,因为一个变量的重要性可能是由于它(可能是复杂的)与其他变量的交互作用。随机森林算法通过观察当(OOB)变量的数据被打乱而其他所有变量都没有改变时,该变量的预测误差会增加多少来估计变量的重要性。在构建随机森林时,需要逐树进行必要的计算。(实际上,在分类码中实现了四种不同的重要程度可变的度量方法。读者可以参考Breiman(2002)的定义。

近邻测度 随机森林产生的邻近矩阵的(i, j)元素是元素i和j落在同一个终端节点上的树的百分比。直觉告诉我们,“相似”的观测应该比不同的观测更频繁地出现在相同的终端节点上。邻近矩阵可以用于识别数据中的结构(见Breiman,2002),也可以用于随机森林中的无监督学习(见下文)。

在R中的应用

随机森林的用户界面与其他分类功能一致,比如nnet(nnet包)和svm()(e1071包)(实际上,我们从这两个函数中借用了一些接口代码。)有一个公式接口,可以通过x参数将预测器指定为矩阵或数据框架,通过y参数将响应指定为向量。如果响应是一个因子,则随机森林进行分类;如果响应是连续的(即不是一个因素),随机森林执行回归。如果响应未指定,随机森林将执行无监督学习(见下文)。目前随机森林并不处理顺序分类响应。请注意,分类预测变量也必须指定为因子(否则它们将被错误地视为连续的)。

随机森林函数返回了一个类'随机森林'的对象。在线文档中提供了此类对象的组件的详细信息。为该类提供的方法包括预测和打印。

一个分类的例子

在MASS4 (Venables and Ripley, 2002)的第12章中使用了法证玻璃数据集来说明各种分类算法。我们用它来展示随机森林是如何工作的:

  • library(randomForest)
  • library(MASS)
  • data(fgl)
  • set.seed(17)
  • fgl.rf lt;- randomForest(type ~ ., data = fgl,

mtry = 2, importance = TRUE,

do.trace = 100)

100: OOB error rate=20.56 200: OOB error rate=21.03 300: OOB error rate=19.63 400: OOB error rate=19.63 500: OOB error rate=19.16

  • print(fgl.rf) Call:

randomForest.formula(formula = type ~ ., data = fgl, mtry = 2, importance = TRUE, do.trace = 100)

Type of random forest: classification Number of trees: 500

No. of variables tried at each split: 2

OOB estimate of error rate: 19.16 Confusion matrix:

WinF WinNF Veh Con Tabl Head class.error

WinF

63

6

1

0

0

0

0.1000000

WinNF

9

62

1

2

2

0

0.1842105

Veh

7

4

6

0

0

0

0.6470588

Con

0

2

0

10

0

1

0.2307692

Tabl

0

2

0

0

7

0

0.2222222

Head

1

2

0

1

0

25

0.1379310

我们可以用ipred包中错误的函数进行10次重复的10倍交叉验证,将随机森林与支持向量机进行比较:

  • library(ipred)
  • set.seed(131)
  • error.RF lt;- numeric(10)
  • for(i in 1:10) error.RF[i] lt;-

errorest(type ~ ., data = fgl,

model = randomForest, mtry = 2)$error

  • summary(error.RF)

Min. 1st Qu. Median Mean 3rd Qu. Max. 0.1869 0.1974 0.2009 0.2009 0.2044 0.2103

  • library(e1071)
  • set.seed(563)
  • error.SVM lt;- numeric(10)
  • for (i in 1:10) error.SVM[i] lt;-

errorest(type ~ ., data = fgl,

model = svm, cost = 10, gamma = 1.5)$error

  • summary(error.SVM)

Min. 1st Qu. Median Mean 3rd Qu. Max. 0.2430 0.2453 0.2523 0.2561 0.2664 0.2710

结果表明,随机森林算法与支持向量机算法相比具有明显的优越性。

我们发现,由随机森林产生的可变重要性度量有时可以用于模型简化(例如,使用“重要”变量构建更简单、更容易解释的模型)。图1显示了基于上面创建的fgl对象的取证玻璃数据集的可变重要性。粗略地说,它是由

  • par(mfrow = c(2, 2))
  • for (i in 1:4)

plot(sort(fgl.rf$importance[,i], dec = TRUE),

type = 'h', main = paste('Measure', i))

我们可以看到测度1最清楚地区分了变量。如果我们再次运行随机森林,从模型中删除Na、K和Fe,错误率仍然低于20%。

Measure 1

10 20 30 40

Measure 2

15

No. of variables tried at each split: 4

Mean of squared residuals: 10.64615

RI Mg Al

Ca

Ba

K Na

Si

Fe

Var explained: 87.39

“ “残差平方均值”计算为:

n

RI

Mg

Ca

Ba Si

Al

Fe

K Na

5

10

MSEOOB = n {yi minus; ycirc; } ,

minus;1 OOB 2

0

0

i

Measure 3

Measure 4

1

where ycirc;OOB is the average of the OOB predictions for the ith observation. The “percent variance ex-

Al Mg RI

Ca

Na K

Si

Ba

Fe

i

plained” is computed as

RI Mg

Ca Al Ba K

Si Na Fe

0.0 0.2 0.4 0.6

0 5 10 15 20 25

y

MSEOOB

1 minus; sigma; 2 ,

circ;

where sigma;circ; 2 is computed with n as divisor (rather than

y

图1

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[18408],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。