1 / 10
文档名称:

随机森林实验报告.docx

格式:docx   大小:42KB   页数:10页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

随机森林实验报告.docx

上传人:mazhuangzi1 2022/5/29 文件大小:42 KB

下载得到文件列表

随机森林实验报告.docx

文档介绍

文档介绍:随机森林实验报告
实验目的
实现随机森林模型并测试。
实验问题
Kaggle 第二次作业 Non-linear classification
算法分析与设计
一•算法设计背景:
,决策树又对属性进行了打乱抽样,抽样数为25, 即每次分割只在25个属性中寻找最合适的值。并且对于每个选取的属性,我们进行了行采 样。即如果这个属性所拥有的属性值数大于30,我们选取其中30个作为分割候选,如果小 于30,则全部纳入分割候选。
代码详解
1•训练集/测试集的读入
中定义了:
#ceW -drnrirti 柑记品中於亍段总政
#defiM Vai^setNum 6239//100
1&&D//1CC
试祟釣记靜斂
#dtefine typesNum 26/Z26
^ctefine rodesNum 2OO//2W
训练集记录列数numparametres (ID (1) +参数数量(617) +输出(1) = 619) 训练集记录条数transetNum
测试集记录条数testsetNum
分类类型数typesNum
,我们声明了全局变量
double trainJn[trainsetN□ml[numparsmetres - 2]; //ijl綺偿輸入 doubltrail Out ftrainsetNur ][11;
i doubl& te5tln[te5tsum][」rp日rame:i■申-2]: // ...
doubl e testOutlt'jstse'tN u m |; //测试集输出
J int trainlD[i r nin^i Num]; 〃训窺154行记录的ID ”这沖看实彌况苛肓做雄
L intteitlDliesUetNumL "训试空毎-行记录的ID
trainIn用于装载训练集输入,trainOut用于装载训练集的输出(这里trainOut是二维数组是 出于模型如果泛化,那么输出值不一定只有一个的情况,在本次实验中并未派上什么真正用 场,可以将trainOut看作一个普通一维数组)。trainlD用于装载训练集中每一行的第一列ID 号。testIn,testID则对应测试集的输入和ID号。这里注意,没有testOut的原因是测试集的 结果理论上应该是不存在的。
然后通过自己编写的读入函数
readData("trairi-csv"f ");
读入测试集合训练集,这个函数将分别装载我们在前面提到的trainIn、trainOut、trainID、 testIn、testID。这个函数使用的fstream逐行读入的方法,这里不做详述。
训练集输出转化为对应的26维01数组transformOut[typesNum] ,我们定义了分类类别数typesNum: 在 中,我们定义了全局变量 transformOut[typesNum]
int transformOut[trainsetNuin][1ypesNum + 1] = {Q};〃 类别数
这里的transformOut是用于储存将train