在进行决策树时采用训练集与验证集之比为95:5,最大深度为1, 这样的汽车模型哪个牌子好好吗?

8决策树_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
上传于||暂无简介
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩2页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢求解神经网络做十字交叉验证k=10,这种方法到底是得到十个模型还是一个模型。?
比如七三分训练集和验证集,先对0?6训练用训练好的模型对7?9验证。然后做交叉,对1?7训练的时候是新生成一个random的模型还是用上一次训练过的模型?在网上查发现貌似两种说法都有是怎么会儿事儿?
按投票排序
交叉验证的每个fold是一个不同的模型。选定最优参数后,再用所有的数据训练一个新的模型,测试用。你看到的交叉验证有时似乎并不是对每个fold重新训练模型,是因为有的模型支持增量式地增加或减少训练数据。不同fold的训练数据之间往往重叠很大,在一个fold的模型的基础上增减训练数据可以快速地得到下一个fold的模型。
先回顾一下流程:选取模型参数→导入训练数据→建模→用测试数据验证模型效果。然后说下我对交叉验证是这么理解的:当我们仅仅把数据分成训练和验证数据,(先不考虑测试),一直都用这套数据来训练,最后调好了参数,得到一个最优的模型。这个模型可能因为巧合或者他刚好对验证的数据有良好的拟合(其实就是过拟合),而表现出很优的性能的时候,这一组参数不一定是好的。所以我们需要通过设定k折交叉验证,反复轮流迭代,对这一组设定好的参数分别得到10个模型,虽然说是10个模型,但是因为他们的参数是一样的,只是训练和验证的数据集不同,我们仍然认为这10个模型是一匹的!所以我们可以取这10个模型的验证误差平均值来表示这组参数得到的模型的效果。这样子,既解决了巧合下这组参数可能表现的很优良,也解决了因为特定数据集导致的过拟合,简直完美!
把数据分为 10份。1,2,3,4,5,6,7,8,9,10。然后 那1~9做训练,第10个做测试。然后2~10 做训练,第1个做测试。然后3~10+1做训练,第2个做测试。以此类推
推荐lz看一下我的文章:交叉验证(Cross Validation),有的时候也称作循环估计(Rotation Estimation),是一种统计学上将数据样本切割成较小子集的实用方法,该理论是由Seymour Geisser提出的。在模式识别(Pattern Recognition)和机器学习(Machine Learning)的相关研究中,经常会将整个数据集合分成两个部分,分别是训练集合和测试集合。假设X是集合全体,A是全集X的非空真子集,那么非空集合X\A则是集合A在全集X中的补集。于是可以先在A上面做训练和分析,而集合X\A则用来做测试和验证。一开始的集合A被称作训练集,而它的补集X\A被称作验证集或者测试集。这里有一个重要的观点就是:只有训练集才可以使用在模型的训练之中,而测试集必须在模型训练完成之后才被用来评估模型的误差。HoldOut检验(Hold-Out Method)这个方法是将原始的数据集合X随机分成两个集合A和X\A,其中A作为训练集,X\A作为测试集。先使用训练集训练模型,然后利用测试集验证模型的效果,记录最后的分类准确率作为Hold-Out下该模型的性能指标。比方说,处理时间序列模型是否准确的时候,把整个数据集合分成前后两部分,前部分占比70%,后部分占比30%。前部分来进行时间序列模型的训练,后部分用来测试改时间序列的准确性。其准确性可以用MAE,MAPE之类的统计指标来衡量。综上所述,该方法的好处就是处理起来简单,只需要把原始数据分成两个部分即可。但是从严格意义上来说,Hold-Out检验并不算是交叉检验(Cross Validation),因为该方法没有达到交叉检验的思想,而且最后验证准确性的高低和原始数组的分类有很大的关系,所以该方法得到的结果在某些场景中并不具备特别大的说服力。在Hold-Out检验不够有说服力的情形下,有人提出了交叉验证这一个重要思想。交叉检验的常见形式假设有一个未知模型有一个或者多个未知的参数,并且有一个训练集。操作的过程就是对该模型的参数进行调整,使得该模型能够最大的反映训练集的特征。如果模型因为训练集过小或者参数不合适而产生过度拟合的情况,测试集的测试效果就可以得到验证。交叉验证是一种能够预测模型拟合性能的有效方法。彻底的交叉验证(Exhaustive Cross Validation)彻底的交叉验证方法指的是遍历全集X的所有非空真子集A。换句话说也就是把A当作训练集,X\A是测试集。如果X中有n个元素,那么非空真子集A的选择方法则是2^{n}-2,这个方法的时间复杂度是指数级别的。留P验证(Leave-p-out Cross Validation)留p验证(LpO CV)指的是使用全集X中的p个元素作为测试集,然后剩下的n-p个元素作为训练集。根据数学上的定理可以得到,p个元素的选择方法有n!/((n-p)!p!)个,其中n!表示n的阶乘。在这个意义下,留p验证的时间复杂度也是非常高的。当p=1的时候,留1验证(Leave-one-out Cross Validation)的复杂度恰好是n。不彻底的交叉验证(Non-exhaustive Cross Validation)不彻底的交叉验证不需要考虑全集X的所有划分情况,这种方法是留p验证的一个近似验证算法。k-fold交叉验证(K-fold Cross Validation)在k-fold交叉验证中,全集X被随机的划分成k个同等大小的集合A1,...,Ak,并且|A1|=...=|Ak|。这里的|Ai|指的是集合Ai的元素个数,也就是集合的势。这个时候需要遍历i从1到k,把X\Ai当作训练集合,Ai当作测试集合。根据模型的测试统计,可以得到Ai集合中测试错误的结果数量ni。如果全集X的势是n的话,可以得到该模型的错误率是E=(ni求和)/n.为了提高模型的精确度,可以将k-fold交叉验证的上述步骤重复t次,每一次都是随机划分全集X。在t次测试中,会得到t个模型的错误率E1,...,Et。令e=(Ei求和)/t。这样该模型的错误率就是e。注释:一般来说,k=10的情况使用得最多。当k=2的时候,也就是最简单的k-fold交叉验证,2-fold交叉验证。这个时候X是A1和A2的并集,首先A1当训练集并且A2当测试集,然后A2当训练集并且A1当测试集。2-fold交叉验证的好处就是训练集和测试集的势都非常大,每个数据要么在训练集中,要么在测试集中。当k=n的时候,也就是n-fold交叉验证。这个时候就是上面所说的留一验证(Leave-one-out Cross Validation)。综上所述,交叉验证(Cross Validation)的好处是可以从有限的数据中获得尽可能多的有效信息,从而可以从多个角度去学习样本,避免陷入局部的极值。在这个过程中,无论是训练样本还是测试样本都得到了尽可能多的学习。一般模型的选择过程:在了解了交叉验证的方法之后,可以来介绍一般模型的选择过程。通过采用不同的输入训练样本,来决定机器学习算法中包含的各个参数值,称作模型选择。下面伪代码表示了模型选择的一般流程。在这个算法中,最重要的就是第三个步骤中的误差评价。 (1)准备候选的q个模型:M1,...,Mq。 (2)对每个模型M1,...,Mq求解它的学习结果。 (3)对每个学习结果的误差e1,...,eq进行计算。这里可以使用上面所说的k-fold交叉验证方法。 (4)选择误差e1,...,eq最小的模型作为最终的模型。.........................................................
欢迎大家关注我的公众账号(长按图片,识别二维码即可添加关注)
已有帐号?
无法登录?
社交帐号登录决策树_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
上传于||文档简介
&&基​于​数​据​库​的​数​据​挖​掘​技​术​―​―​决​策​树
阅读已结束,如果下载本文需要使用2下载券
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩19页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢决策树学习
决策树学习
决策树学习附件:编写:Sunstone
Zhang (Aug, 2001)来源:
决策树决策树是实例(表示为特征向量)的分类器。结点测试特征,边表示特征的每个值,叶结点对应分类。可
表示任意析取和合取范式,从而表示任意离散函数和离散特征可将实例分到多个分类(≥2)可以重写为规则,用析取范式(DNF)形式red
^ circle -& positivered ^ circle -& Ablue -& B; red ^
square -& Bgreen -& C; red ^ triangle -& C
决策树学习实例用(属性-值)对表示。离散值处理简单,连续值可以划分区间。输出可以是离散的
分类,也可以是实数(回归树)。能有效处理大量数据可处理噪声数据(分类噪声,属性噪声)属性值缺失,亦可处理
基本决策树算法训练数据批处理,自顶向下递归构造决策树DTree(examples,
attributes)If 所有样本属于同一分类,返回标号为该分类的叶结点Else if
属性值为空,返回标号为最普遍分类的叶结点Else 选取一个属性,A,作为根结点&For A的每一个可能的值vi&
&令examplesi为具有A=vi的样本子集& &从根结点出发增加分支(A=vi)& &如果examplesi为空& &
&则创建标号为最普遍分类的叶结点& & &否则递归创建子树——调用DTree(examplesi,attributes-{A})
根属性的选取决策树要尽可能小寻找一组数据对应的最小决策树是NP-hard的简单递
归算法是贪婪启发式搜索,无法保证最优子集应尽可能“纯”,从而易于成为叶结点最常用的启发规则是基于信息增益(Information
熵(Entropy)一组样本S对于二元分类的熵(混淆度)为:其中p+和
p-为S中的正例、反例所占比例若所有样本属于同一分类,则熵为0(定义0log0=0)若样本平均分布(p+=p-=0.5),则熵最
大(=1)可把熵视为对样本集分类进行编码所需的平均二进制位数,采用哈夫曼编码压缩,越普遍的分类编码越短对于多分类问题(假设有c个
分类),则熵的推广定义:其中pi为属于分类i的样本在S中所占比例
信息增益属性的信息增益是按该属性分割后熵的消减期望值:其中Sv是S中属性A值为v的子集例
子:big, red, circle : +small, red, circle : +small, red,
square : -big, blue, circle : -
决策树归纳中的假设空间决策树可以表示任何离散函数,归纳就是在此空间内的搜索创建与数据一致
的单一离散假设,所以无法提供置信度或构造有用的查询爬山式搜索存在局部最优问题。它可以保证找到符合任何无噪声数据集的树,但未必是最小的批
量学习。每项决策需要一次数据集扫描,可提前结束学习以减少噪声影响
决策树学习中的误区树的深度应尽量小。但贪婪搜索可能无法找到最小树,顶层结点可能不是高区分度的
计算复杂度最坏情况是构造出一棵完全树,每条路径都测试了所有特征各层i要对剩下的|A|-i
个属性计算最佳分割一般来说,性能与属性个数成线性关系
决策树研究的历史;s:Hunt的完全搜索决策树方法(CLS)对概念学习建模1970
后期:Quinlan发明用信息增益作为启发策略的ID3方法,从样本中学习构造专家系统同时,Breiman和Friedman开发的
CART(分类与回归树)方法类似于ID3;s:对噪声、连续属性、数据缺失、改善分割条件等进行研究1993:Quinlan
的改进决策树归纳包(C4.5),目前被普遍采用
过度拟合和修剪通过学习训练数据来构造分类树,可能无法达到最好的一般化性能,因为&-
噪声数据的影响&- 某些决策仅基于少量数据,与客观事实不符合一个假设H被称为对于训练数据是过度拟合的,指的是如果存在另一个假设
H’,在训练集上H的误差比H‘小,但在测试集上H’的误差比H小
过度拟合与噪声分类或属性噪声都会导致过度拟合增加噪声实例&&medium,
green, circle&, +&(实际为-)噪声也会直接导致样本的冲突(相同描述,不同分类)。应将叶结点标号为主要的分
类&&big, red, circle&, -& (实际上为+)若属性不完备且不足以判别分类时,也可能导致样本的
避免过度拟合的方法需要修剪时的两个基本方法预修剪:支持度不够则停止树的增长后修
剪:置信度不够则修剪掉该分支子树是否需要修剪的判别方法:交叉检验:保留部分训练数据用于验证统计测试:通过训练集的统计来判
别最小描述长度(MDL):判别该假设的复杂度是否比记忆例外情况的复杂度更高
减小误差的修剪一种后修剪,交叉验证的方法将训练数据分割为两个集合:“生长”和“验证”用
“生长”数据构建一棵完全树Until 验证数据集合上的精度降低do: &For each 树中非叶结点n&
&临时修剪掉n下子树,用标号为主要分类的叶子代替& &在验证集上计算该树的精度 &修剪掉那些对精度影响最大的分支当训练集很小时,
可能会严重损害分类精度最好能给定合适的结点数,达到最佳折中
连续属性用分区方法,将连续值映射为离散值结点分裂,以获得最大信息增益达到最大信息
增益的单阈值分裂算法For each 连续特征 Ai&根据Ai的值对样本排序&For each
序列中的每对Xi,Xi+1& &If Xi和Xi+1的分类不同& & &将Xi和Xi+1的中点作为可能的阈值进行检验,即例
如:长度(L): 10 &15 &21 &28 &32 &40 &50 &(已排序)& & &分类: & &- & + & + & - &
+ & + & -检查阈值:L&12.5, L&24.5, L&30, L&45
替代属性选取启发策略(增益比率)信息增益缺点:偏爱那些有大量值的属性,产生很多小而纯的子集,如病
人ID、姓名、日期等要降低这些情况下的增益首先计算与分类无关属性的信息量,即该属性的熵其中Si为S中具有属性A第i个值的子集。某
属性按值分割样本越平均,则SplitInfo越大增益比率利用SplitInfo来避免选择这些属性
增益比率细述 然而,当|Si|=|S|时SplitInfo可能很小甚至为0,从而导致信息比率过大
甚至溢出C4.5对此进行了改进,它计算每个特征的信息增益,对于超过平均增益的特征,再进一步根据增益比率来选取特征
缺失的属性值属性值可能未完全给出一种解决方法是根据已有样本属性值的先验概率来对样本计算属
性值分布百分比在训练时,缺失的属性会按照其分布百分比逐个计算。例如,给定一个缺失了颜色属性值的正例,它将被视为0.6个red正
例、0.2个blue正例和0.2个green正例。
测试时的值缺失若属性值未给出,则设定为??(通配符),然后多路径到达叶结点,最后计算分类结果的各
分类权重例如,&big,??,circle&将得到0.6个正例,0.2+0.2=0.4个反例&big,red,??&
将得到0.2个正例,0.5+0.3=0.8个反例&big,??,??&将得到0.6x0.2=0.12个正
例,0.2+0.2+0.3+0.18=0.88个反例
属性开销有些领域中,某些属性比其它属性更容易获取其值(例如病人的体温比其胆固醇水平更容易得到)尽
可能采用那些低开销的属性来分类在信息增益中增加属性开销是有效的:在不降低精度的同时降低了平均开销
递增式的决策树归纳ID4和ID5可以递增更新已有的树ID4有时会丢弃某些实例,不保证和历
史训练样本一致ID5则保证和ID3的决策相同ID4速度快,但精度降低ID5速度较快且精度不变
决策树中的重复部分决策树比DNF更复杂,因为它常常存在重复部分范式必须分解为析取范式,导致了重复
子树的出现解决:使用复杂特征或决策图构造性归纳:原子特征的逻辑组合或算术组合
边缘算法决策树构造性归纳的叠代算法边缘算法(总是沿着树的边缘走)Until
没有新的特征被创建或到达限定值do &使用当前的所有特征从训练集构造决策树&从边缘末端(正例)两个特征的联合来创建新特征&将
这些新特征加入现有特征集中,同时扩展每个样本的描述以包含所有新特征
边缘示例多重模型学习概念的多重候选定义最终决策是基于多个学习模型的(加权)投票
装袋(Bagging)用训练集的不同样本来训练同一个学习者,来创建多重模型
(Breiman,1996)给定训练集大小为n,通过从原始数据取样(用替换方法),创建m个不同的训练集(大小为n)用简单的投票方
法来合并这m个模型可用于任何学习方法减少了不稳定学习算法的一般化错误,即当训练数据轻微改动时会导致决策结果剧烈变动的那些学习方法
引导(Boosting)另一个生成多重模型的方法——重复更改同一个学习算法的数据对弱学习
算法(假设的精度只要超过1/2即可)能保证性能的改进对样本加权,每次叠代产生一个新的假设,对那些导致最终假设精度变差的样本重新加权基
本算法给所有样本赋予一个初始权重For i from 1 to T do&从加权的样本中学习一个假设hi&减小那
些与hi一致的样本的权重在测试时,每个假设会得到一个加权的投票(与训练数据上的精度成比例)
引导算法For D中的每个样本,令其权重wi=1/|D|For t from 1 to T
do&从加权样本中学习一个假设ht&计算ht的误差εt,作为被错误分类样本的总权重&If εt &0.5
then 终止,else 继续&令βt= εt/(1- εt)&将ht正确分类出的样本的权重乘以βt&权重归一化以保证总
和为1在测试时,每个假设ht获得投票的权重为log(1/ βt),票数最多的假设作为最终决策
多重模型的实验结果多决策树模型应用范围更广也更准确引导算法性能比装袋算法好引导算
法偶尔也会降低性能
发表评论:
TA的最新馆藏[转]&[转]&[转]&[转]&[转]&[转]&

我要回帖

更多关于 汽车模型哪个牌子好 的文章

 

随机推荐