- 阿啵呲嘚
-
基本思想在于每次分裂节点时选取一个特征使得划分后得到的数据集尽可能纯。
信息增益 = 未划分数据集的信息熵 - 划分后子数据集的信息熵的数学期望值。
事件 的信息量 ,信息熵就是信息量的期望值,记作 ,即 。
假设未划分数据集中共有 类,划分为了 份,则
按照信息增益来选择特征时总是会倾向于选择分支多的特征属性,这样子能够使得划分后每个子集的信息熵最小。比如,给每一个数据添加一个独一无二的id值特征,则按照id值进行分类是获得信息增益最大的。这样子,每个子集的信息熵为0,但是这样的分类毫无任何意义,无任何泛化能力。为了克服信息增益的弱泛化能力的缺陷,引入了分裂信息,即
可以看出来,数据分得越多,分裂信息也就越大。那么,
为防止 趋于0,有时需要在分母上添加一个平滑函数。分母由 变为 ,即加上了所有可能的分裂信息的均值。
直观的说,基尼系数表示的是随机从节点中抽取两个样本,其对应的类别不一样的概率。
遍历完所有属性、新划分的数据集中只有一个类别。
random forest是decision tree的bagging,并且在bagging的基础上更进一步。其核心思想就是双随机过程,随机有放回样本采样(行采样)和随机无放回特征采样(列采样)。列采样又分为全局列采样,即采后建树;局部列采样,每次节点分裂时采样。
特征选择的目标有两个,一是找到与因变量高度相关的特征变量;二是选出数目较少的特征变量并且能够充分预测因变量的结果。
"boosting"意为通过将一些表现一般,可能仅仅略好于随机猜测的模型通过特定方法进行组合后来获得一个表现较好的模型。
"adaptive"意为在训练过程中,每个新的模型都会基于前一个模型的表现结果进行调整。
如果 在 下表现得不好,那么返回的 就不会是 ,便可以认为 和 不同。
因此,构建 使得在 下 的表现近似于随机猜,即
即 。
因此,分正确的 ,分错误的 。
记 在 下的分类错误率为 ,即
定义缩放因子 ,即
那么,
可解释为放大错误点,缩小正确点。
因此,AdaBoost算法流程总结如下:
可以看出来,AdaBoost采用的是指数损失函数。每一次迭代更新模型的过程可以看成是求使得
最小的 和 ,进行推导后可以发现 为AdaBoost中的 , 为对应的 。
Gradient Boosting与base model为决策树的结合即为GBDT模型。由于决策树是非线性的,并且随着深度的加深,非线性越来越强,基于决策树的GBDT也是非线性的。
AdaBoost是Gradient Boosting的一个特例,或者说Gradient Boosting是对AdaBoost进行了推广。
Gradient Boosting抽象地说,模型的训练过程是对于任意可导目标函数的优化过程。通过反复地选择一个指向负梯度方向的函数。该算法可以被看做是在函数空间里对目标函数进行了优化。Gradient Boosting在每一次模型迭代中求解使得 最小的 和 作为对应的 和 。
和AdaBoost一样,Gradient Boosting也是重复选择一个表现一般的模型,并且每次都基于先前模型的表现进行调整。不同的是,AdaBoost是通过提升错分数据点的权重来定位模型的不足而Gradient Boosting是通过计算梯度来定位模型的不足。因此,相比AdaBoost,Gradient Boosting可以使用更多种类的目标函数。
因此,Gradient Boosting算法流程总结如下:
有一组数据 和一个基础模型 ,想最小化 和真实值 之间的二次代价函数。 ,称 为关于 的残差,可以训练一个回归树 来拟合 ,这样就得到了一个更好的模型 ,重复这一个过程,最终得到了一个让人满意的模型。
这里使用回归树去拟合残差,其实就是用回归树去拟合负梯度。当loss不为square loss时,残差不一定等于负梯度!我们实际上是在通过梯度下降法对模型参数进行更新,这样理解的好处在于我们可以将这个算法推广到其他的损失函数上去。回归不一定适用平方代价,平方代价的优点在于便于理解和实现,缺点在于对于异常值的鲁棒性较差。有时候会选择其他的代价函数,如absolute loss,即 或者huber loss,即
梯度下降法的思想使得我们可以非常轻易地改用不同的损失函数设计Gradient Boosting算法。另外在使用某些其他损失函数时,残差比起负梯度更容易受到异常值的影响。
随机森林和GBDT都属于集成算法,base model都是决策树。
随机森林是决策树的bagging。
bagging通过重复对原训练数据集上进行有放回地采样生成的数据集用base model进行训练多次,然后,对于分类求众数,对于回归求平均作为最终结果。
可并行。
随机森林希望单个决策树偏差小、方差大,这样通过 个决策树的叠加可以减少方差,达到较好的结果。 越大,泛化能力越好。
随机森林里的树可以是分类树也可以是回归树。
GBDT是决策树的boosting。
boosting通过在原训练数据集变化的版本上进行base model的训练,当前base model的训练是基于上一个base model的表现的,然后线性组合起这些base model。
是串行。
GBDT希望单个决策树能力只要好于随机即可,这样通过boosting后就可以降低偏差,达到较好的表现。
树越多,GBDT越可能过拟合。
GBDT的核心在于累加所有树的结果作为最终结果,而分类树的结果显然是没办法累加的,所以GBDT中的树都是回归树,不是分类树。
什么是决策树
决策树学习是机器学习方法中的一种。这种方法将习得的训练集函数表示成树结构,通过它来近似离散值的目标函数。这种树结构是一种有向树,它以训练集的一个属性作节点,这个属性所对应的一个值作边。决策树一般都是自上而下的来生成的。每个决策或事件(即自然状态)都可能引出两个或多个事件,导致不同的结果,把这种决策分支画成图形很像一棵树的枝干,故称决策树。选择分割的方法有好几种,但是目的都是一致的:对目标类尝试进行最佳的分割。从根到叶子节点都有一条路径,这条路径就是一条“规则”。决策树可以是二叉的,也可以是多叉的。对每个节点的衡量:1) 通过该节点的记录数2) 如果是叶子节点的话,分类的路径3) 对叶子节点正确分类的比例。有些规则的效果可以比其他的一些规则要好。决策树对于常规统计方法的优缺点优点:1) 可以生成可以理解的规则。2) 计算量相对来说不是很大。3)可以处理连续和种类字段。4)决策树可以清晰的显示哪些字段比较重要缺点:1) 对连续性的字段比较难预测。2) 对有时间顺序的数据,需要很多预处理的工作。3) 当类别太多时,错误可能就会增加的比较快。4) 一般的算法分类的时候,只是根据一个字段来分类。2023-06-11 09:41:012
决策树基本概念及算法优缺点
分类决策树模型是一种描述对实例进行分类的树形结构. 决策树由结点和有向边组成. 结点有两种类型: 内部结点和叶节点. 内部节点表示一个特征或属性, 叶节点表示一个类. 决策树(Decision Tree),又称为判定树, 是一种以树结构(包括二叉树和多叉树)形式表达的预测分析模型. 分类树--对离散变量做决策树 回归树--对连续变量做决策树 优点: (1)速度快: 计算量相对较小, 且容易转化成分类规则. 只要沿着树根向下一直走到叶, 沿途的分裂条件就能够唯一确定一条分类的谓词. (2)准确性高: 挖掘出来的分类规则准确性高, 便于理解, 决策树可以清晰的显示哪些字段比较重要, 即可以生成可以理解的规则. (3)可以处理连续和种类字段 (4)不需要任何领域知识和参数假设 (5)适合高维数据 缺点: (1)对于各类别样本数量不一致的数据, 信息增益偏向于那些更多数值的特征 (2)容易过拟合 (3)忽略属性之间的相关性 若一事假有k种结果, 对应概率为 , 则此事件发生后所得到的信息量I为: 给定包含关于某个目标概念的正反样例的样例集S, 那么S相对这个布尔型分类的熵为: 其中 代表正样例, 代表反样例 假设随机变量(X,Y), 其联合分布概率为P(X=xi,Y=yi)=Pij, i=1,2,...,n;j=1,2,..,m 则条件熵H(Y|X)表示在已知随机变量X的条件下随机变量Y的不确定性, 其定义为X在给定条件下Y的条件概率分布的熵对X的数学期望 在Hunt算法中, 通过递归的方式建立决策树. 使用信息增益, 选择 最高信息增益 的属性作为当前节点的测试属性 ID3( Examples,Target_attribute,Attributes ) Examples 即训练样例集. Target_attribute 是这棵树要预测的目标属性. Attributes 是除目标属性外供学习到的决策树测试的属性列表. 返回能正确分类给定 Examples 的决策树. class sklearn.tree.DecisionTreeClassifier(criterion="gini", splitter="best", max_depth=None, min_samples_split=2, min_samples_leaf=1, min_weight_fraction_leaf=0.0, max_features=None, random_state=None, max_leaf_nodes=None, min_impurity_decrease=0.0, min_impurity_split=None, class_weight=None, presort=False) 限制决策树层数为4的DecisionTreeClassifier实例 This plot compares the decision surfaces learned by a dcision tree classifier(first column), by a random forest classifier(second column), by an extra-trees classifier(third column) and by an AdaBoost classifier(fouth column). Output: A comparison of a several classifiers in scikit-learn on synthetic datasets. The point of this examples is to illustrate the nature of decision boundaries of different classifiers. Particularly in high-dimensional spaces, data can more easily be separated linearly and the simplicity of classifiers such as naive Bayes and linear SVMs might lead to better generalization than is achieved by other classifiers. This example fits an AdaBoost decisin stump on a non-linearly separable classification dataset composed of two "Gaussian quantiles" clusters and plots the decision boundary and decision scores. Output:2023-06-11 09:41:171
什么是决策树?为什么要用决策树?
"机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。从数据产生决策树的机器学习技术叫做决策树学习, 通俗说就是决策树。一个决策树包含三种类型的节点:决策节点:通常用矩形框来表示机会节点:通常用圆圈来表示终结点:通常用三角形来表示决策树学习也是资料探勘中一个普通的方法。在这里,每个决策树都表述了一种树型结构,它由它的分支来对该类型的对象依靠属性进行分类。每个决策树可以依靠对源数据库的分割进行数据测试。这个过程可以递归式的对树进行修剪。 当不能再进行分割或一个单独的类可以被应用于某一分支时,递归过程就完成了。另外,随机森林分类器将许多决策树结合起来以提升分类的正确率。决策树同时也可以依靠计算条件概率来构造。决策树如果依靠数学的计算方法可以取得更加理想的效果。 数据库已如下所示: (x, y) = (x1, x2, x3…, xk, y)相关的变量 Y 表示我们尝试去理解,分类或者更一般化的结果。 其他的变量x1, x2, x3 等则是帮助我们达到目的的变量。"2023-06-11 09:41:251
我国工程项目风险管理进展的研究?
工程项目建设过程是一个周期长、投资多、技术要求高、系统复杂的生产消费过程,在该过程中,未确知因素、随机因素和模糊因素大量存在,并不断变化,由此而造成的风险直接威胁工程项目的顺利实施和成功。现在,我国工程项目普遍存在投资失控现象,产生这种现象的原因有管理不善和手段落后的原因,更主要的是对影响和制约工程项目的风险因素估计不足,导致在工程项目建设中由风险引起大量的损失。对工程项目的风险加以认识、判断、评价和控制成为一项迫切的任务。近些年,我国有些科研人员对风险管理方法作过一些探讨,但事物总是不断发展变化的,新的方法不断出现,风险管理也日趋完善。对近几年的国内有关风险管理的研究进行回顾,有利于我们总结经验,使我们更好地服务现代化建设。1、工程项目风险管理的基本概念、产生和发展1.1工程风险的定义、特点及分类文献曾对风险的定义作过系统的分析,认为现在比较一致的看法是:风险是一个系统造成失败的可能性和由这种失败而导致的损失或后果。用数学公式可以表示为:R=f(P,C)其中,R表示风险,P表示不利事件发生的概率,C表示该事件发生的后果。工程风险管理专家对工程项目的风险定义为:工程项目风险是所有影响工程项目目标实现的不确定因素的集合。工程项目的风险有以下特点:(1)风险存在的客观性和普遍性。作为损失发生的不确定性,风险是不以人的意志为转换的客观实在,而且在项目的全生命周期内,风险是无处不在、无时没有的。只能降低风险发生的概率和减少风险造成的损失,而不能从根本上完全消除风险;(2)风险的影响常常不是局部的,某一段时间或某一个方面的,而是全局的。例如,反常的气候条件造成工程的停滞,会影响整个后期计划,影响后期所有参加者的工作;(3)不同的主体对同样风险的承受能力是不同的。人们的承受能力受收益的大小、投入的大小、项目活动的主体的地位和拥有的资源有关;(4)工程项目的风险一般是很大的,其变化是复杂的。工程项目的设计与建设是一个既有确定因素,又含有随机因素、模糊因素和未确知因素的复杂系统,风险的性质、造成的后果在工程建设中极有可能发生变化。对风险进行分类的目的,乃是为了分别研究对这些不同类别的风险所应采取的对策[3].按风险发生的形态分类可分为静态风险和动态风险;按风险的潜在损失形态可将风险分为财产风险、人身风险和责任风险;按风险事故的后果可将风险分为纯粹和投机风险;按风险波及的范围可将风险分为特定风险和基本风险;按损失产生的原因分为自然风险和人力风险;按风险能否处理可将风险分为可管理风险和不可管理风险等。1.2风险管理的定义、产生和发展工程项目风险管理就是对工程项目活动中涉及到的风险进行识别、评估并制定相应的政策,以最少的成本,最大限度地避免或减少风险事件所造成的实际效益与预期效益的偏离,安全地实现工程项目的总目标。人类历史上早期风险问题的研究可追溯到公元十四世纪中叶,当时欧洲地中海沿岸各港口的海上保险揭开了人类探索风险的序幕。十九世纪,法国的经营管理理论创始人法约尔第一次把面临风险的管理列为企业管理的重要职能之一。1931年美国管理协会保险部最先倡导风险管理,并开始研究风险管理及保险问题。1932年成立的纽约经纪人协会标志着风险管理的兴起。1953年8月13日的美国通用汽车公司的自动变速装置发生大火,导致该公司蒙受了高达5000万美元的损失,这场大火震动了美国企业界和学术界,成为风险管理科学发展的契机。到了上个世纪60年代,一门新的管理科学———风险管理在美国正式形成,从此风险管理在西方资本主义国家得到了迅猛的发展。在各国风险管理研究中,美国的风险管理起步最早,理论研究与应用范围很广,拥有这方面大量的人才。与美国相比英国的风险管理研究有自己的特色,C。B。Chapman教授在文献[7]中提出了“风险工程”的概念,该框架模型的构建弥补了单一过程的风险分析技术的不足,使得在较高层次上大规模地应用风险分析领域的研究成果成为可能。英国除了有自己的成熟理论外,许多学者还注意把风险分析的研究成果应用到大型的工程项目当中。英美两国在风险研究方面各有所长,且具有很强的互补性,代表了该学科的两个主流。法国的研究也有自己的特色,其模式是经营管理型的风险管理研究。而德国是从风险管理政策的角度来研究的。我国的风险管理研究是从上个世纪80年代开始,同时被应用到项目管理之中。在过去的计划经济体制下,原材料的价格由国家控制,国家是唯一的投资主体,企业没有独立的经济效益,风险由国家承担。只是在近几年来,随着社会主义市场经济体制的完善,对风险管理的研究已经在学术界成为了一个热点,在大型工程项目的实践中,也取得了较为明显的效果。2、项目风险管理的内容和程序风险管理的全过程如下:2.1风险识别对各种风险因素和可能发生的风险事件进行分析,是风险管理的首要步骤。项目风险识别要回答下列问题:项目中存在哪些潜在的风险因素?这些因素会引起什么风险,这些风险造成的后果有多大?忽视、缩小或夸大项目风险的范围、种类和造成的后果都会造成不必要的损失。风险识别的常用方法有:(1)专家调查法专家调查法包括专家个人判断法、智暴法和德尔菲法等。该类方法主要利用各领域专家的专业理论和丰富的实践经验,找出各种潜在的风险并对后果做出分析和估计。德尔菲法起源于上世纪40年代末,最初由美国兰德公司首先使用。使用该方法的程序是:首先选定与该项目有关的专家,并与这些适当数量的专家建立直接的函询关系,通过函询收集专家意见,然后加以综合整理,再反馈给各位专家,再次征询意见。这样反复多次,逐步使专家的意见趋于一致,作为最后识别的根据。德尔菲法应用领域很广,一般用该方法得出的结果也较好。(2)故障树分析法(分解法)该方法利用图解的形式,将大的故障分解成各种小的故障,或对引起故障的各种原因进行分析。譬如,将项目投资风险分为市场风险、政策调整风险、资源风险、技术风险等。该方法经常用于直接经验较少的风险辨识,通过对投资风险层层分解,可使项目管理者对投资风险因素有全面的认识,在此基础上,对风险大的因素进行针对性的管理。不足之处是应用于大系统时容易产生遗漏和错误。(3)情景分析法一种能够分析引起风险的关键因素及其影响程度的方法。它可以采用图表或曲线等形式来描述当影响项目的某种因素作各种变化时,整个项目情况的变化及其后果,供人们进行比较研究。风险识别中应注意以下的问题:识别的风险是否全面(可靠性问题)?满足辨识要求的数据、资料和实验结果所需多少费用(费用问题)?调查的结果有多大的置信度(偏差问题)?2.2风险评估与分析风险评估与分析就是衡量风险对项目实现既定目标的影响及其程度。常用的方法有:(1)调查和专家打分法首先将工程项目所有风险列出,设计风险调查表,然后利用专家经验,对各风险因素的重要性进行评估,再综合成整个项目风险。(2)蒙特卡洛模拟方法又称统计实验法或随机模拟法。该法是一种通过对随机变量的统计试验、随机模拟求解数学、物理、工程技术问题近似解的数学方法,其特点是用数学方法在计算机上模拟实际概率过程,然后加以统计处理。该方法是西方国家常用的项目风险分析方法,也是当今风险分析的主要工具之一。(3)决策树法做风险决策时常采用的一种方法。这种方法通常求出所有变量所有可能变化组合下的NPV或IRR值,再画出其概率分布图。这种方法的计算规模随变量个数及变化情况多少成指数变化,并且要求有足够有效的数据作基础。现在该方法已有很多改进。杨宁等在文献中提出了一种随机决策树的概念,将效用函数理论应用于随机决策树,该方法可以处理不但有状态转移而且在某种状态转移前逗留一段时间的风险决策问题。黄冬梅等在文献中将决策树在模糊环境下进行了推广,提出了模糊决策树的概念,并对决策树与模糊决策树的异同进行了比较分析,这种方法为在不确定(模糊)环境下达到不精确知识的获取提供了一种思路。杨辉在文献中提出了一种用新的极值,点禁忌搜索构造分类问题的全局优化决策树的算法,该算法可用于不可微分的目标函数,用于构造具有固定结构的多变量决策树,将多变量决策树表示成析取线性不等式集合。全局树优化就是使析取线性不等式中的分类误差最小化。(4)影响图法该方法由美国Howard教授等人提出的一种表征决策分析的网络图形,它是概率估计和决策分析的图形表性,是将贝叶斯条件概率定理应用于图论的成果,是复杂的不确定性决策问题的一种新颖有效的图形表征语言,数学概念完整,关于概率估计、备选方案、决策者偏好和信息状态说明完备,具有决策树不可比拟的优点[17].影响图的最大优点是:①能直观表示随机变量间的相互关系;②计算规模随着不确定因素个数呈线性增长。石晓军等在文献中提出了一种基于影响图的分析方法,构造了一个较为一般的项目风险分析的影响图模型;提出了项目风险超额报酬率的概念;给出了影响图因果概率推理的一个具体的解析支持算法。1992年,Shenoy在深入分析影响图表示及求解方法的基础上,提出了贝叶斯决策问题表示和求解的一种新方法———评价基础系统,这一新方法是影响图决策技术的推广。就贝叶斯决策问题,Shenoy的比较分析表明,它比决策树和影响图方法更具魅力。冯俊文在对这一方法的基础上,进行了系统的归纳和整理,并讨论了这一方法的优缺点和不足,指出了可能的推广及应用.(5)随机网络法又称图示评审技术(GraphiealEvaluationandReviewTechnique),简称GERT。在GERT中,不仅活动的各参数(如时间、费用等)具有随机性,而且允许活动的实现也具有随机性。宋善德在文献[20]中分析了使用传统方法绘制网络图存在的不足,给出了新的结点布局、连线和交互调整算法。在输出方面,给出了箭线图的自动生成算法、网络的布局优化与自动绘制算法。高杰在文献[21]中和文献[22]中分别介绍了一种根据普通紧后工序表和一种普通紧前工序表绘制箭线式网络图的方法。这两种方法都是根据工序表绘制工程项目最优或较优箭线式网络图。王海超等在文献]中就双代号施工网络计划优化管理问题,研究了次关键路线上非关键工序的寻求方法,给出了图上计算和解析表达的求解过程,方便了网络计划的优化和管理。黄德才等在文献中提出了一种同异反网络计划方法,在推广同异反联系数概念和给出主关键路线、次关键路线、再次关键路线的基础上,提出了这种工期预测方法。李林等在文献中借助网络图,提出了一种估算项目工期的方法,该方法可以方便地判断各风险因素所起的作用大小。吴唤群等在文献中在假设已知工程的各种情况下,提出了在要求所增加的总的费用最小的情况下,对网络计划进行调整,将某些工作的持续时间适当地缩短,使整个工程的工期提前的一种方法。刘永淞等在文献中建立了不同连接方式的搭接施工网络计划关联矩阵,阐述了利用关联矩阵中行列与元素间的关系计算网络计划的方法。(6)模糊分析法所谓模糊就是边界不清晰,外延不明确,以模糊集合代替原来分明的集合。工程中存在着大量的模糊因素,对这些因素进行模糊评价,可以增加评价结果的可靠性和科学性。王洪刚等在文献中基于模糊理论和指数平滑预测相结合的方法,给出了以预测单方造价为基础的投标工程单方造价快报算法。常云涛等在文献中引入具有模糊时间参数的模糊网络,并应用模糊数学原理进行分析,并结合工程的实际情况,对相应理论进行了修正。胡劲松等在文献中针对模糊网络关键路线问题,基于模糊网络流模型,提出了确定模糊网络关键路线的参数线性规划方法,得到了模糊网络关键路线的更全面的结果。1.3风险对策的制定风险的辨识、评估完成后,要根据具体的情况采取对策,以减少损失,增加收益。一般来说,风险管理技术分为两大类:控制性技术和财务性技术。控制性技术主要作用是避免、消除和减少风险事故发生的机会,限制已发生的损失继续扩大,包括风险回避和损失控制。在工程项目中,风险和收益总是并存的,它们是矛盾和对立的统一体,没有脱离风险的纯利润,也不可能存在无利润的纯风险,因此风险回避是一种消极的办法,在实践中应尽量少用,只有当风险发生机会的概率很高,并且造成的损失很大时,可以考虑采用风险回避。损失控制包括预防措施与减少风险的方法,损失控制是一种积极的做法,其局限性是要么在技术上难以达到,要么技术上可行但不经济。财务技术包括风险转嫁和风险自留。转移风险指采取各种方式将风险转移出去。保险转嫁是财务技术中最核心的部分,风险管理技术起源于保险。将发生概率不大,但损失却难以承受的风险,转移给保险人是一种最常见、最有效的方式。风险自留是一种自行承担工程事故损失发生后的财务后果的方式。风险防范与控制的方法策略很多,但必须根据工程项目的具体情况来正确选择使用,才能取得较好的效果。2.4实施与后评估正确决策之后,具体的实施十分重要。在执行过程中,应对实施情况进行监控,及时反馈并在必要时调整风险管理对策。最后应对实施的效果及差异进行评估。3实现项目管理的现代化随着计算机技术、网络技术的快速发展和计算机的普及,建立管理信息系统,用计算机来管理工程项目的信息越来越显示出它的优越性。对于具有参与方地域分布广、专业分类得杂、信息量大特点的大型工程项目而言,项目的信息沟通和协调特别重要,决策者需要提供及时、有效的项目信息,而各参与方也需要迅速地了解各自的进度,同时管理信息系统还可以减少项目信息沟通和传递的费用。利用Internet技术,建立项目风险管理计算机系统,这一系统应包括以下系统:(1)信息管理子系统。在该子系统中储有项目内外部与项目有关的科技、经济、市场和社会方面的各种信息;具有对信息进行分类、整理、统计和辨伪的功能,系统中的信息可以随时更新。(2)风险评估子系统。主要对项目风险因素发生概率、发生时间、持续优化、造成的后果、可控程度做出估计。(3)风险对策子系统。它可以针对项目的实际情况提出相应的风险处理决策,供决策者参考使用。此外,采用计算机模拟辅助工程风险分析可以有效地解决复杂工程投资分析所带来的大规模信息处理问题,给风险分析与投资决策带来了新的突破。阮连法等提出了计算机模拟辅助投资风险分析的一般原理与方法,建立了投资风险分析的模型.4、结束语近十几年来,人们在工程项目管理中提出了全面风险管理的概念,全面风险管理使用系统的、动态的方法进行风险控制,以减少工程项目中的不确定性,不仅是对工程项目全过程的风险管理,而且是对全部风险的、全方位的管理,采取全面的组织措施的管理。综上所述,项目风险管理方法已有了较大的发展,能基本满足对项目风险大致了解的要求。但在以下方面,仍需全面和系统地研究。为规避、防范和控制风险,需对风险进行度量,它既是风险控制的基础,也是风险控制的重要组成内容。风险管理定量化是重要的研究方向之一。文献[39]通过层次解析过程和决策树分析构建了风险管理的一种定量方法。文献中运用层次分析法和模糊数学的集值统计原理分别进行指标权数确定和专家打分的数学处理建立的定量评估模型也值得借鉴。风险与收益之间存在不可调和的矛盾,理智决策者对工程项目投资决策的意愿是选取收益相对高,风险相对小的项目。也就是要求工程项目投资的经济效果风险收益最好。那么如何在给定的条件下,即收益、风险一定的条件下确定工程项目投资的最优经济效果,以及在最优经济效果的条件下,如何确定工程项目的收益和风险也是一种很好的研究思路.目前在工程项目管理领域强调严格执行项目监理制、法人负责制、招投标制、合同管理制和投资风险约束机制等;强调工程项目必须严格执行建设程序,确保工程质量,减少风险损失,提高投资效益,以取得令人满意的结果。因此,完善工程项目风险管理模式,加强政策环境研究,将会对降低工程项目风险,减少损失,增加风险控制的有效性具有一定的促进作用。风险评价的目的在于为风险决策提供依据;风险控制的目的在于借助各种方法,以最小投资谋取最大保障的管理活动,使风险减少到最低程度,从而为最佳工程效益服务,提高工程管理的效率,减少风险损失。近几年,我国工程项目风险管理有了很大的进步,但随着国民经济的发展,工程建设也越来越多,市场风险也越来越大,对工程项目建设进行风险控制和管理,使技术与经济相结合,更有效地控制工程项目投资、工期和质量。确保工程项目投资决策的正确性与科学性,对实现工程投资决策的全局优化与总体设计和总体经营思想,对合理利用有限的人力、财力和物力,对保证国民经济长期、持续、稳定协调地发展,对降低工程成本、提高工程效益具有十分重要的理论意义和现实意义。更多关于工程/服务/采购类的标书代写制作,提升中标率,您可以点击底部官网客服免费咨询:https://bid.lcyff.com/#/?source=bdzd2023-06-11 09:41:431
什么是决策树
决策树是数学、计算机科学与管理学中经常使用的工具。决策论中 (如风险管理),决策树(Decision tree)由一个决策图和可能的结果(包括资源成本和风险)组成, 用来创建到达目标的规划。决策树建立并用来辅助决策,是一种特殊的树结构。决策树是一个利用像树一样的图形或决策模型的决策支持工具,包括随机事件结果,资源代价和实用性。它是一个算法显示的方法。决策树经常在运筹学中使用,特别是在决策分析中,它帮助确定一个能最可能达到目标的策略。如果在实际中,决策不得不在没有完备知识的情况下被在线采用,一个决策树应该平行概率模型作为最佳的选择模型或在线选择模型算法。决策树的另一个使用是作为计算条件概率的描述性手段。 决策树提供了一种展示类似在什么条件下会得到什么值这类规则的方法。比如,在贷款申请中,要对申请的风险大小做出判断,图是为了解决这个问题而建立的一棵决策树,从中我们可以看到决策树的基本组成部分:决策节点、分支和叶子。 决策树中最上面的节点称为根节点,是整个决策树的开始。本例中根节点是“收入>¥40,000”,对此问题的不同回答产生了“是”和“否”两个分支。 决策树的每个节点子节点的个数与决策树在用的算法有关。如CART算法得到的决策树每个节点有两个分支,这种树称为二叉树。允许节点含有多于两个子节点的树称为多叉树。决策树的内部节点(非树叶节点)表示在一个属性上的测试。 每个分支要么是一个新的决策节点,要么是树的结尾,称为叶子。在沿着决策树从上到下遍历的过程中,在每个节点都会遇到一个问题,对每个节点上问题的不同回答导致不同的分支,最后会到达一个叶子节点。这个过程就是利用决策树进行分类的过程,利用几个变量(每个变量对应一个问题)来判断所属的类别(最后每个叶子会对应一个类别)。例如, 假如负责借贷的银行官员利用上面这棵决策树来决定支持哪些贷款和拒绝哪些贷款,那么他就可以用贷款申请表来运行这棵决策树,用决策树来判断风险的大小。“年收入>¥40,00”和“高负债”的用户被认为是“高风险”,同时“收入5年”的申请,则被认为“低风险”而建议贷款给他/她。 数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测(就像上面的银行官员用他来预测贷款风险)。常用的算法有CHAID、 CART、ID3、C4.5、 Quest 和C5.0。 建立决策树的过程,即树的生长过程是不断的把数据进行切分的过程,每次切分对应一个问题,也对应着一个节点。对每个切分都要求分成的组之间的“差异”最大。 对决策树算法的研究开发主要以国外为主, 现有的涉及决策树算法的软件有SEE5、Weka、spss等,在国内也有不少人开展了对决策树算法的构建及应用研究,如中国测绘科学研究院在原有C5.0算法的基础上进行了算法重构,将其用于地表覆盖遥感影像分类中。2023-06-11 09:41:541
什么是决策树?有什么优势?
决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。Entropy = 系统的凌乱程度,使用算法ID3, C4.5和C5.0生成树算法使用熵。这一度量是基于信息学理论中熵的概念。决策树是一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。分类树(决策树)是一种十分常用的分类方法。他是一种监管学习,所谓监管学习就是给定一堆样本,每个样本都有一组属性和一个类别,这些类别是事先确定的,那么通过学习得到一个分类器,这个分类器能够对新出现的对象给出正确的分类。这样的机器学习就被称之为监督学习。机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。从数据产生决策树的机器学习技术叫做决策树学习, 通俗说就是决策树。一个决策树包含三种类型的节点:决策节点:通常用矩形框来表示机会节点:通常用圆圈来表示终结点:通常用三角形来表示决策树学习也是资料探勘中一个普通的方法。在这里,每个决策树都表述了一种树型结构,它由它的分支来对该类型的对象依靠属性进行分类。每个决策树可以依靠对源数据库的分割进行数据测试。这个过程可以递归式的对树进行修剪。 当不能再进行分割或一个单独的类可以被应用于某一分支时,递归过程就完成了。另外,随机森林分类器将许多决策树结合起来以提升分类的正确率。决策树同时也可以依靠计算条件概率来构造。决策树如果依靠数学的计算方法可以取得更加理想的效果。 数据库已如下所示: (x, y) = (x1, x2, x3…, xk, y)相关的变量 Y 表示我们尝试去理解,分类或者更一般化的结果。 其他的变量x1, x2, x3 等则是帮助我们达到目的的变量。2023-06-11 09:42:071
决策树(Decision Tree)
u2003u2003决策树(Decision Tree)是一种基本的分类与回归方法,其模型呈树状结构,在分类问题中,表示基于特征对实例进行分类的过程。本质上,决策树模型就是一个定义在特征空间与类空间上的条件概率分布。决策树学习通常包括三个步骤: 特征选择 、 决策树的生成 和 决策树的修剪 。 u2003u2003分类决策树模型是一种描述对实例进行分类的树形结构,决策树由节点(node)和有向边(directed edge)组成。节点有两种类型:内部节点(internal node)和叶节点(leaf node)。内部节点表示一个特征或属性,叶节点表示一个类。 u2003u2003利用决策树进行分类,从根节点开始,对实例的某一特征进行测试,根据测试结果将实例分配到其子节点;这时,每一个子节点对应着该特征的一个取值。如此递归地对实例进行测试并分配,直至达到叶节点。最后将实例分到叶节点的类中。 u2003u2003决策树是给定特征条件下类的条件概率分布,这一条件概率分布定义在特征区间的一个划分(partiton)上。将特征空间划分为互不相交的单元(cell)或区域(region),并在每个单元定义一个类的概率分布就构成了一个条件概率分布。决策树的一条路径对应划分中的一个单元,决策树所表示的条件概率分布由各个单元给定条件下类的条件概率分布组成。假设X为表示特征的随机变量,Y为表示类的随机变量,那么这个条件概率分布可以表示成P(Y|X)。X取值于给定划分下单元的集合,Y取值于类的集合,各叶节点(单元)上的条件概率往往偏向于某一个类,即属于某一类的概率较大,决策树分类时将该节点的实例分到条件概率大的那一类去。也就以为着决策树学习的过程其实也就是由数据集估计条件概率模型的过程,这些基于特征区间划分的类的条件概率模型由无穷多个,在进行选择时,不仅要考虑模型的拟合能力还要考虑其泛化能力。 u2003u2003为了使模型兼顾模型的拟合和泛化能力,决策树学习使用正则化的极大似然函数来作为损失函数,以最小化损失函数为目标,寻找最优的模型。显然从所有可能的决策树中选取最优决策树是NP完全问题,所以在实际中通常采用启发式的方法,近似求解这一最优化问题: 通过递归的选择最优特征,根据该特征对训练数据进行划分直到使得各个子数据集有一个最好的分类,最终生成特征树 。当然,这样得到的决策树实际上是次最优(sub-optimal)的。进一步的,由于决策树的算法特性,为了防止模型过拟合,需要对已生成的决策树自下而上进行剪枝,将树变得更简单,提升模型的泛化能力。具体来说,就是去掉过于细分的叶节点,使其退回到父节点,甚至更高的节点,然后将父节点或更高的节点改为新的叶节点。如果数据集的特征较多,也可以在进行决策树学习之前,对数据集进行特征筛选。 u2003u2003由于决策树是一个条件概率分布,所以深浅不同的决策树对应着不同复杂度的概率模型,决策树的生成对应模型的局部选择,决策树的剪枝对应着模型的全局选择。 u2003u2003 熵(Entropy) 的概念最早起源于物理学,最初物理学家用这个概念度量一个热力学系统的无序程度。在1948年, 克劳德·艾尔伍德·香农 将热力学的熵,引入到 信息论 ,因此它又被称为 香农熵 。在信息论中,熵是对不确定性的量度,在一条信息的熵越高则能传输越多的信息,反之,则意味着传输的信息越少。 u2003u2003如果有一枚理想的硬币,其出现正面和反面的机会相等,则抛硬币事件的熵等于其能够达到的最大值。我们无法知道下一个硬币抛掷的结果是什么,因此每一次抛硬币都是不可预测的。因此,使用一枚正常硬币进行若干次抛掷,这个事件的熵是一 比特 ,因为结果不外乎两个——正面或者反面,可以表示为 0, 1 编码,而且两个结果彼此之间相互独立。若进行 n 次 独立实验 ,则熵为 n ,因为可以用长度为 n 的比特流表示。但是如果一枚硬币的两面完全相同,那个这个系列抛硬币事件的熵等于零,因为 结果能被准确预测 。现实世界里,我们收集到的数据的熵介于上面两种情况之间。 u2003u2003另一个稍微复杂的例子是假设一个 随机变量 X ,取三种可能值 ,概率分别为 ,那么编码平均比特长度是: 。其熵为 。因此<u>熵实际是对随机变量的比特量和顺次发生概率相乘再总和的</u> 数学期望 。 u2003u2003依据玻尔兹曼H定理,香农把随机变量X的熵 定义为: u2003u2003其中 是随机变量X的信息量,当随机变量取自有限样本时,熵可以表示为: u2003u2003若 ,则定义 。 u2003u2003同理可以定义条件熵 : u2003u2003很容易看出,条件熵(conditional entropy) 就是X给定条件下Y的条件概率分布的熵对X的数学期望。当熵和条件熵中的概率有极大似然估计得到时,所对应的熵和条件熵分别称为检验熵(empirical entropy)和经验条件熵(empirical conditional entropy). u2003u2003熵越大,随机变量的不确定性就越大,从定义可以验证: u2003u2003当底数 时,熵的单位是 ;当 时,熵的单位是 ;而当 时,熵的单位是 . u2003u2003如英语有26个字母,假如每个字母在文章中出现的次数平均的话,每个字母的信息量 为: u2003u2003同理常用汉字2500有个,假设每个汉字在文章中出现的次数平均的话,每个汉字的信息量 为: u2003u2003事实上每个字母和汉字在文章中出现的次数并不平均,少见字母和罕见汉字具有相对较高的信息量,显然,由期望的定义,熵是整个消息系统的平均消息量。 u2003u2003熵可以用来表示数据集的不确定性,熵越大,则数据集的不确定性越大。因此使用 划分前后数据集熵的差值 量度使用当前特征对于数据集进行划分的效果(类似于深度学习的代价函数)。对于待划分的数据集 ,其划分前的数据集的熵 是一定的,但是划分之后的熵 是不定的, 越小说明使用此特征划分得到的子集的不确定性越小(也就是纯度越高)。因此 越大,说明使用当前特征划分数据集 时,纯度上升的更快。而我们在构建最优的决策树的时候总希望能更快速到达纯度更高的数据子集,这一点可以参考优化算法中的梯度下降算法,每一步沿着负梯度方法最小化损失函数的原因就是负梯度方向是函数值减小最快的方向。同理:在决策树构建的过程中我们总是希望集合往最快到达纯度更高的子集合方向发展,因此我们总是选择使得信息增益最大的特征来划分当前数据集 。 u2003u2003显然这种划分方式是存在弊端的,按信息增益准则的划分方式,当数据集的某个特征B取值较多时,依此特征进行划分更容易得到纯度更高的数据子集,使得 偏小,信息增益会偏大,最终导致信息增益偏向取值较多的特征。 u2003u2003设 是 个数据样本的集合,假定类别属性具有 个不同的值: ,设 是类 中的样本数。对于一个给定样本,它的信息熵为: u2003u2003其中, 是任意样本属于 的概率,一般可以用 估计。 u2003u2003设一个属性A具有 个不同的值 ,利用属性A将集合 划分为 个子集 ,其中 包含了集合 中属性 取 值的样本。若选择属性A为测试属性,则这些子集就是从集合 的节点生长出来的新的叶节点。设 是子集 中类别为 的样本数,则根据属性A划分样本的信息熵为: u2003u2003其中 , 是子集 中类别为 的样本的概率。最后,用属性A划分样本子集 后所得的 信息增益(Gain) 为: u2003u2003即,<u>属性A的信息增益=划分前数据的熵-按属性A划分后数据子集的熵</u>。 信息增益(information gain)又称为互信息(matual information)表示得知特征X的信息而使得类Y的信息的不确定性减少的程度 。信息增益显然 越小, 的值越大,说明选择测试属性A对于分类提供的信息越多,选择A之后对分类的不确定程度越小。 u2003u2003经典算法 ID3 使用的信息增益特征选择准则会使得划分更偏相遇取值更多的特征,为了避免这种情况。ID3的提出者 J.Ross Quinlan 提出了 C4.5 ,它在ID3的基础上将特征选择准则由 信息增益 改为了 信息增益率 。在信息增益的基础之上乘上一个惩罚参数。特征个数较多时,惩罚参数较小;特征个数较少时,惩罚参数较大(类似于正则化)。这个惩罚参数就是 分裂信息度量 的倒数 。 u2003u2003不同于 ID3 和 C4.5 , CART 使用基尼不纯度来作为特征选择准则。基尼不纯度也叫基尼指数 , 表示在样本集合中一个随机选中的样本被分错的概率 则<u>基尼指数(基尼不纯度)= 样本被选中的概率 * 样本被分错的概率</u>。Gini指数越小表示集合中被选中的样本被分错的概率越小,也就是说集合的纯度越高,反之,集合越不纯。 样本集合的基尼指数: 样本集合 有m个类别, 表示第 个类别的样本数量,则 的Gini指数为: 基于某个特征划分样本集合S之后的基尼指数: u2003u2003CART是一个二叉树,也就是当使用某个特征划分样本集合后,得到两个集合:a.等于给定的特征值的样本集合 ;b.不等于给定特征值的样本集合 。实质上是对拥有多个取值的特征的二值处理。 对于上述的每一种划分,都可以计算出基于划分特=某个特征值将样本集合划分为两个子集的纯度: 因而对于一个具有多个取值(超过2个)的特征,需要计算以每个取值为划分点,对样本集合划分后子集的纯度 ( 表示特征 的可能取值)然后从所有的划分可能 中找出Gini指数最小的划分,这个划分的划分点,就是使用特征 对样本集合 进行划分的最佳划分点。 参考文献 : 决策树--信息增益,信息增益比,Geni指数的理解 【机器学习】深入理解--信息熵(Information Entropy) 统计学习方法 (李航) u2003u2003为了便于理解,利用以下数据集分别使用三种方法进行分类: u2003u2003在进行具体分析之前,考虑到收入是数值类型,要使用决策树算法,需要先对该属性进行离散化。 u2003u2003在机器学习算法中,一些分类算法(ID3、Apriori等)要求数据是分类属性形式,因此在处理分类问题时经常需要将一些连续属性变换为分类属性。一般来说,连续属性的离散化都是通过在数据集的值域内设定若干个离散的划分点,将值域划分为若干区间,然后用不同的符号或整数数值代表落在每个子区间中的数据值。所以,离散化最核心的两个问题是:如何确定分类数以及如何将连续属性映射到这些分类值。常用的离散化方法有 等宽法 , 等频法 以及 一维聚类法 等。 在实际使用时往往使用Pandas的 cut() 函数实现等宽离散化: u2003u2003可以看到与手工计算的离散化结果相同,需要注意的是,<u> 等宽法对于离群点比较敏感,倾向于不均匀地把属性值分布到各个区间,导致某些区间数据较多,某些区间数据很少,这显然不利用决策模型的建立。 </u> 使用四个分位数作为边界点,对区间进行划分: <u> 等频率离散化虽然避免了等宽离散化的数据分布不均匀的问题,却可能将相同的数据值分到不同的区间以满足每个区间具有相同数量的属性取值的要求。 </u> 使用一维聚类的离散化方法后得到数据集为: u2003u2003在本次实例中选择使用基于聚类的离散化方法后得到的数据集进行指标计算。为了预测客户能否偿还债务,使用A(拥有房产)、B(婚姻情况)、C(年收入)等属性来进行数据集的划分最终构建决策树。 单身 : 离婚 : 已婚 : 显然,由B属性取值"已婚"划分得到的子数据集属于同一个叶节点,无法再进行分类。 接下来,对由B属性取值"单身"划分得到的子数据集 再进行最优特征选择: 1)计算数据集 总的信息熵,其中4个数据中,能否偿还债务为"是"数据有3,"否"数据有1,则总的信息熵: 2)对于A(拥有房产)属性,其属性值有"是"和"否"两种。其中,在A为"是"的前提下,能否偿还债务为"是"的有1、"否"的有0;在A为"否"的前提下,能否偿还债务为"是"的有2、为"否"的有1,则A属性的信息熵为: 3)对于B(婚姻情况)属性,由于已被确定,在这个数据子集信息熵为0 4)对于C(年收入)属性,其属性值有"中等输入"、"低收入"两种。在C为"中等收入"的前提下,能否偿还作为为"是"的有1,为"否"的有0;在C为"低收入"的前提下,能否偿还作为为"是"的有2,为"否"的有1;则C属性的信息熵为: 5)最后分别计算两个属性的信息增益值: 信息增益值相同,说明以两个属性对数据子集进行划分后决策树的纯度上升是相同的,此时任选其一成为叶节点即可。 同理,对数据子集 进行最优特征选择,发现信息熵为0: 整理得到最终的决策树:2023-06-11 09:42:261
决策树总结
参考链接: https://www.cnblogs.com/yonghao/p/5061873.html 树:由节点和边两种元素组成。 父节点、子节点是相对的,子节点由父节点根据某一规则分裂而来。 根节点:没有父节点的节点,初始分裂节点。 叶子节点:没有子节点的节点。 决策树: 利用树形结构进行决策,每一个非叶子节点是一个判断条件,每一个叶子节点是结论。从根节点开始,经过多次判断得出结论。 每次选择一个属性进行判断(如何选择?),如果不能得出结论,继续选择其他属性进行判断,知道能够肯定地判断出用户类型或者上述属性都已使用完毕。 在决策树的过程中,三个问题最为关键: 贪婪思想:选择可以得到最有分裂结果的属性进行分裂。每一次分裂之后孩子节点的数据尽量“纯”。 信息增益 信息增益率 信息增益作为选择分裂的条件有一个不可避免的缺点:倾向选择分支比较多的属性进行分裂。(为什么?) 表示分列前后的数据复杂度和分裂节点数据复杂度的变化值: Gain表示节点复杂度,Gain越大复杂度越高。 信息增益大 ,分裂后复杂度减小得多, 分类效果明显 。 复杂度的两种计算方式: 熵和基尼指数,主要区别在于,熵达到峰值的过程要相对慢一些。因此,熵对于混乱集合的判罚要更重一些。 a)熵Entropy 取值范围:[0,1] 熵大,混乱程度高,纯度低。v.v. pi表示第i类的数量占比。Entropy也记为H(X)。 二分类中:如果两类数量相同,纯度最低,熵为1 。如果全部数据都属于一个类,及诶单纯度最高,熵为0 。 pi<1, 由上图可知,pi log(pi)为负值,故熵为pi log(pi)的和乘以-1。 条件熵: 随机变量X在给定条件下随机变量Y的条件熵。 X给定条件下Y的条件干率分布的熵对X的数学期望,在机器学习中为选定某个特征后的熵,公式如下: b)基尼指数 Gini Index 取值范围:[0,1] 是一种不等性度量 总体内包含的类别越杂乱,gini指数越大,数据越不纯。 pi依旧为第i类的数量占比 使用信息增益作为选择分裂的条件倾向选择分支比较多的属性进行分裂。 为了解决这个问题,引入了信息增益率这个概念。信息增益率是在信息增益的基础上除以分裂节点数据量的信息增益。 InstrinsicInfo:分裂子节点数据量的信息增益 m:子节点数量 ni:第i个子节点的数据量 N:父节点数据量 离散型属性:按照属性值进行分裂,每一种属性值对应一个分裂节点。 连续性属性:按照该属性进行排序,并分为若干区间,每个区间对应一个节点。(区间大小如何选择?) 1)最小节点数 当街点数据量小于一个指定的数据量时,不继续分裂。 原因: 分类树:输出具体的类别 回归树:输出确定的数值 构建方法主要有三种: 预剪枝(Pre-Pruning) 后剪枝(Post-Pruning)2023-06-11 09:42:441
决策树(Decision Tree)
决策树是一种非参数有监督的机器学习方法,可以用于解决回归问题和分类问题。通过学习已有的数据,计算得出一系列推断规则来预测目标变量的值,并用类似流程图的形式进行展示。决策树模型可以进行可视化,具有很强的可解释性,算法容易理解,以决策树为基础的各种集成算法在很多领域都有广泛的应用。 熵的概念最早起源于物理学,用于度量一个热力学系统的无序程度。在信息论里面,信息熵代表着一个事件或一个变量等所含有的信息量。 在信息世界,熵越高,则能传输越多的信息,熵越低,则意味着传输的信息越少。 发生概率低的事件比发生概率高的事件具有更大的不确定性,需要更多的信息去描述他们,信息熵更高。 我们可以用计算事件发生的概率来计算事件的信息,又称“香农信息”( Shannon Information )。一个离散事件x的信息可以表示为: h(x) = -log(p(x)) p() 代表事件x发生的概率, log() 为以二为底的对数函数,即一个事件的信息量就是这个事件发生的概率的负对数。选择以二为底的对数函数代表计算信息的单位是二进制。因为概率p(x)小于1,所以负号就保证了信息熵永远不为负数。当事件的概率为1时,也就是当某事件百分之百发生时,信息为0。 熵( entropy ),又称“香农熵”( Shannon entropy ),表示一个随机变量的分布所需要的平均比特数。一个随机变量的信息熵可以表示为: H(x) = -sum(each k in K p(k)log(p(k))) K表示变量x所可能具有的所有状态(所有事件),将发生特定事件的概率和该事件的信息相乘,最后加和,即可得到该变量的信息熵。可以理解为,信息熵就是平均而言发生一个事件我们得到的信息量大小。所以数学上,信息熵其实是事件信息量的期望。 当组成该随机变量的一个事件的概率为1时信息熵最小,为0, 即该事件必然发生。当组成该随机变量的所有事件发生的概率相等时,信息熵最大,即完全不能判断那一个事件更容易发生,不确定性最大。 当一个事件主导时,比如偏态分布( Skewed Probability Distribution ),不确定性减小,信息熵较低(low entropy);当所有事件发生概率相同时,比如均衡分布( Balanced Probability Distribution ),不确定性极大,信息熵较高(high entropy)。 由以上的香农信息公式可知,信息熵主要有三条性质: - 单调性 。发生概率越高的事件,其所携带的信息熵越低。比如一个真理的不确定性是极低的,那么它所携带的信息熵就极低。 - 非负性 。信息熵不能为负。单纯从逻辑层面理解,如果得知了某个信息后,却增加了不确定性,这也是不合逻辑的。 - 可加性 。即多随机事件同时发生存在的总不确定性的量度是可以表示为各事件不确定性的量度的和。 若两事件A和B同时发生,两个事件相互独立。 p(X=A,Y=B) = p(X = A)*p(Y=B) , 那么信息熵为 H(A,B) = H(A) + H(B) 。但若两事件不相互独立,那么 H(A,B) = H(A) + H(B) - I(A,B) 。其中 I(A,B) 是互信息( mutual information,MI ),即一个随机变量包含另一个随机变量信息量的度量。即已知X的情况下,Y的分布是否会改变。 可以理解为,两个随机变量的互信息度量了两个变量间相互依赖的程度。X 和 Y的互信息可以表示为: I(X;Y) = H(X) - H(X|Y) H(X)是X的信息熵,H(X|Y)是已知Y的情况下,X的信息熵。结果的单位是比特。 简单来说,互信息的性质为: - I(X;Y)>=0 互信息永远不可能为负 - H(X) - H(X|Y) = I(X;Y) = I (Y;X) = H(Y) - H(Y|X) 互信息是对称的 -当X,Y独立的时候, I(X;Y) = 0 互信息值越大,两变量相关性越强。 -当X,Y知道一个就能推断另一个的时候, I(X;Y) = H(Y) = H(X) 在数据科学中,互信息常用于特征筛选。在通信系统中互信息也应用广泛。在一个点到点的通信系统中,发送信号为X,通过信道后,接收端接收到的信号为Y,那么信息通过信道传递的信息量就是互信息 I(X,Y) 。根据这个概念,香农推导出信道容量(即临界通信传输速率的值)。 信息增益( Information Gain )是用来按照一定规则划分数据集后,衡量信息熵减少量的指数。 那数据集的信息熵又是怎么计算的呢?比如一个常见的0,1二分类问题,我们可以计算它的熵为: Entropy = -(p(0) * log(P(0)) + p(1) * log(P(1))) 当该数据集为50/50的数据集时,它的信息熵是最大的(1bit)。而10/90的数据集将会大大减少结果的不确定性,减小数据集的信息熵(约为0.469bit)。 这样来说,信息熵可以用来表示数据集的纯度( purity )。信息熵为0就表示该数据集只含有一个类别,纯度最高。而较高的信息熵则代表较为平衡的数据集和较低的纯度。 信息增益是提供了一种可以使用信息熵计算数据集经过一定的规则(比如决策树中的一系列规则)进行数据集分割后信息熵的变化的方法。 IG(S,a) = H(S) - H(S|a) 其中,H(s) 是原数据集S的信息熵(在做任何改变之前),H(S|a)是经过变量a的一定分割规则。所以信息增益描述的是数据集S变换后所节省的比特数。 信息增益可以用做决策树的分枝判断方法。比如最常用CART树( Classification and Regression Tree )中的分枝方法,只要在python中设置参数 criterion 为 “entropy” 即可。 信息增益也可以用作建模前的特征筛选。在这种场景下,信息增益和互信息表达的含义相同,会被用来计算两变量之间的独立性。比如scikit-learn 中的函数 mutual_info_classiif() 信息增益在面对类别较少的离散数据时效果较好,但是面对取值较多的特征时效果会有 偏向性 。因为当特征的取值较多时,根据此特征划分得到的子集纯度有更大的可能性会更高(对比与取值较少的特征),因此划分之后的熵更低,由于划分前的熵是一定的,因此信息增益更大,因此信息增益比较偏向取值较多的特征。举一个极端的例子来说,如果一个特征为身份证号,当把每一个身份证号不同的样本都分到不同的子节点时,熵会变为0,意味着信息增益最大,从而该特征会被算法选择。但这种分法显然没有任何实际意义。 这种时候,信息增益率就起到了很重要的作用。 gR(D,A)=g(D,A)/HA(D) HA(D) 又叫做特征A的内部信息,HA(D)其实像是一个衡量以特征AA的不同取值将数据集D分类后的不确定性的度量。如果特征A的取值越多,那么不确定性通常会更大,那么HA(D)的值也会越大,而1/HA(D)的值也会越小。这相当于是在信息增益的基础上乘上了一个惩罚系数。即 gR(D,A)=g(D,A)u2217惩罚系数 。 在CART算法中,基尼不纯度表示一个随机选中的样本被分错类别的可能性,即这个样本被选中的概率乘以它被分错的概率。当一个节点中所有样本均为一种时(没有被分错的样本),基尼不纯度达到最低值0。 举例来说,如果有绿色和蓝色两类数据点,各占一半(蓝色50%,绿色50%)。那么我们随机分类,有以下四种情况: -分为蓝色,但实际上是绿色(u274c),概率25% -分为蓝色,实际上也是蓝色(u2714ufe0f),概率25% -分为绿色,实际上也是绿色(u2714ufe0f),概率25% -分为绿色,但实际上是蓝色(u274c),概率25% 那么将任意一个数据点分错的概率为25%+25% = 50%。基尼不纯度为0.5。 在特征选择中,我们可以选择加入后使数据不纯度减少最多的特征。 噪音数据简单来说就是会对模型造成误导的数据。分为类别噪声( class noise 或 label noise )和 变量噪声( attribute noise )。类别噪声指的的是被错误标记的错误数据,比如两个相同的样本具有不同的标签等情况。变量噪声指的是有问题的变量,比如缺失值、异常值和无关值等。 决策树其实是一种图结构,由节点和边构成。 -根节点:只有出边没有入边。包含样本全集,表示一个对样本最初的判断。 -内部节点:一个入边多个出边。表示一个特征或是属性。每个内部节点都是一个判断条件,包含数据集中从根节点到该节点所有满足条件的数据的集合。 -叶节点:一个入边无出边。表示一个类,对应于决策结果。 决策树的生成主要分为三个步骤: 1. 节点的分裂 :当一个节点不够纯(单一分类占比不够大或者说信息熵较大)时,则选择将这一节点进行分裂。 2. 决策边界的确定 :选择正确的决策边界( Decision Boundary ),使分出的节点尽量纯,信息增益(熵减少的值)尽可能大。 3. 重复及停止生长 :重复1,2步骤,直到纯度为0或树达到最大深度。为避免过拟合,决策树算法一般需要制定树分裂的最大深度。到达这一深度后,即使熵不等于0,树也不会继续进行分裂。 下面以超级知名的鸢尾花数据集举例来说明。 这个数据集含有四个特征:花瓣的长度( petal length )、花瓣的宽度( petal width )、花萼的长度( sepal length )和花萼的宽度( sepal width )。预测目标是鸢尾花的种类 iris setosa, iris versicolor 和 iris virginica 。 建立决策树模型的目标是根据特征尽可能正确地将样本划分到三个不同的“阵营”中。 根结点的选择基于全部数据集,使用了贪婪算法:遍历所有的特征,选择可以使信息熵降到最低、基尼不纯度最低的特征。 如上图,根节点的决策边界为" petal width = 0.8cm "。那么这个决策边界是怎么决定的呢? -遍历所有可能的决策边界(需要注意的是,所有可能的决策边界代表的是该子集中该特征所有的值,不是以固定增幅遍历一个区间内的所有值!那样很没有必要的~) -计算新建的两个子集的基尼不纯度。 -选择可以使新的子集达到最小基尼不纯度的分割阈值。这个“最小”可以指两个子集的基尼不纯度的和或平均值。 ID3是最早提出的决策树算法。ID3算法的核心是在决策树各个节点上根据 信息增益 来选择进行划分的特征,然后递归地构建决策树。 - 缺点 : (1)没有剪枝 (2)只能用于处理离散特征 (3)采用信息增益作为选择最优划分特征的标准,然而信息增益会偏向那些取值较多的特征(例如,如果存在唯一标识属性身份证号,则ID3会选择它作为分裂属性,这样虽然使得划分充分纯净,但这种划分对分类几乎毫无用处。) C4.5 与ID3相似,但对ID3进行了改进: -引入“悲观剪枝”策略进行后剪枝 -信息增益率作为划分标准 -将连续特征离散化,假设 n 个样本的连续特征 A 有 m 个取值,C4.5 将其排序并取相邻两样本值的平均数共 m-1 个划分点,分别计算以该划分点作为二元分类点时的信息增益,并选择信息增益最大的点作为该连续特征的二元离散分类点; -可以处理缺失值 对于缺失值的处理可以分为两个子问题: (1)在特征值缺失的情况下进行划分特征的选择?(即如何计算特征的信息增益率) C4.5 中对于具有缺失值特征,用没有缺失的样本子集所占比重来折算; (2)选定该划分特征,对于缺失该特征值的样本如何处理?(即到底把这个样本划分到哪个结点里) C4.5 的做法是将样本同时划分到所有子节点,不过要调整样本的权重值,其实也就是以不同概率划分到不同节点中。 (1)剪枝策略可以再优化; (2)C4.5 用的是多叉树,用二叉树效率更高; (3)C4.5 只能用于分类; (4)C4.5 使用的熵模型拥有大量耗时的对数运算,连续值还有排序运算; (5)C4.5 在构造树的过程中,对数值属性值需要按照其大小进行排序,从中选择一个分割点,所以只适合于能够驻留于内存的数据集,当训练集大得无法在内存容纳时,程序无法运行。 可以用于分类,也可以用于回归问题。CART 算法使用了基尼系数取代了信息熵模型,计算复杂度更低。 CART 包含的基本过程有 分裂,剪枝和树选择 。 分裂 :分裂过程是一个二叉递归划分过程,其输入和预测特征既可以是连续型的也可以是离散型的,CART 没有停止准则,会一直生长下去; 剪枝 :采用“代价复杂度”剪枝,从最大树开始,每次选择训练数据熵对整体性能贡献最小的那个分裂节点作为下一个剪枝对象,直到只剩下根节点。CART 会产生一系列嵌套的剪枝树,需要从中选出一颗最优的决策树; 树选择 :用单独的测试集评估每棵剪枝树的预测性能(也可以用交叉验证)。 (1)C4.5 为多叉树,运算速度慢,CART 为二叉树,运算速度快; (2)C4.5 只能分类,CART 既可以分类也可以回归; (3)CART 使用 Gini 系数作为变量的不纯度量,减少了大量的对数运算; (4)CART 采用代理测试来估计缺失值,而 C4.5 以不同概率划分到不同节点中; (5)CART 采用“基于代价复杂度剪枝”方法进行剪枝,而 C4.5 采用悲观剪枝方法。 (1)决策树易于理解和解释,可以可视化分析,容易提取出规则 (2)可以同时处理分类型和数值型数据 (3)可以处理缺失值 (4)运行速度比较快(使用Gini的快于使用信息熵,因为信息熵算法有log) (1)容易发生过拟合(集成算法如随机森林可以很大程度上减少过拟合) (2)容易忽略数据集中属性的相互关联; (3)对于那些各类别样本数量不一致的数据,在决策树中,进行属性划分时,不同的判定准则会带来不同的属性选择倾向。 写在后面:这个专辑主要是本小白在机器学习算法学习过程中的一些总结笔记和心得,如有不对之处还请各位大神多多指正!(关于决策树的剪枝还有很多没有搞懂,之后弄明白了会再单独出一篇总结哒) 参考资料链接: 1. https://machinelearningmastery.com/what-is-information-entropy/ 2. https://zhuanlan.zhihu.com/p/29679277 3. https://machinelearningmastery.com/information-gain-and-mutual-information/ 4. https://victorzhou.com/blog/gini-impurity/ 5. https://sci2s.ugr.es/noisydata 6. https://towardsdatascience.com/understanding-decision-trees-once-and-for-all-2d891b1be579 7. https://blog.csdn.net/weixin_36586536/article/details/80468426 8. https://zhuanlan.zhihu.com/p/857312062023-06-11 09:43:151
决策树是什么东东?
小白自学路上的备忘记录。。。 参考: 决策树(分类树、回归树) 决策树 :这个博客的图真好看,通俗易懂。哈哈 决策树详解 决策树(Decision Tree)是一种有监督学习算法,常用于分类和回归。本文仅讨论分类问题。 决策树模型是运用于分类以及回归的一种树结构。决策树由节点和有向边组成,一般一棵决策树包含一个根节点、若干内部节点和若干叶节点。决策树的决策过程需要从决策树的根节点开始,待测数据与决策树中的特征节点进行比较,并按照比较结果选择选择下一比较分支,直到叶子节点作为最终的决策结果。 简而言之,决策树是一个利用树的模型进行决策的多分类模型 为了找到最优的划分特征,我们需要先了解一些信息论的知识: 纯度 : 你可以把决策树的构造过程理解成为寻找纯净划分的过程。数学上,我们可以用纯度来表示,纯度换一种方式来解释就是让目标变量的分歧最小 信息熵 :表示信息的不确定度 在信息论中,随机离散事件出现的概率存在着不确定性。为了衡量这种信息的不确定性,信息学之父香农引入了信息熵的概念. 当不确定性越大时,它所包含的信息量也就越大,信息熵也就越高 。 信息熵越大,纯度越低。当集合中的所有样本均匀混合时,信息熵最大,纯度最低 经典的 “不纯度”的指标有三种,分别是信息增益(ID3 算法)、信息增益率(C4.5 算法)以及基尼指数(Cart 算法) 信息增益 : 信息增益指的就是划分可以带来纯度的提高,信息熵的下降。它的计算公式,是父亲节点的信息熵减去所有子节点的信息熵。 信息增益率 信息增益率 = 信息增益 / 属性熵 基尼指数 基尼指数(基尼不纯度):表示在样本集合中一个随机选中的样本被分错的概率。 即 基尼指数(基尼不纯度)= 样本被选中的概率 * 样本被分错的概率 基尼系数的性质与信息熵一样:度量随机变量的不确定度的大小; G 越大,数据的不确定性越高; G 越小,数据的不确定性越低; G = 0,数据集中的所有样本都是同一类别 详细参考: 机器学习——基尼指数 ID3 算法是建立在奥卡姆剃刀(用较少的东西,同样可以做好事情)的基础上:越是小型的决策树越优于大的决策树 ID3算法的核心是在决策树各个节点上根据信息增益来选择进行划分的特征,然后递归地构建决策树。算法采用自顶向下的贪婪搜索遍历可能的决策树空间。 具体方法 : ID3的局限 : C4.5与ID3相似,但大的特点是克服了 ID3 对特征数目的偏重这一缺点,引入信息增益率来作为分类标准。 C4.5的实现基于ID3的改进 : 信息增益率对可取值较少的特征有所偏好(分母越小,整体越大),因此 C4.5 并不是直接用增益率最大的特征进行划分,而是使用一个 启发式方法 :先从候选划分特征中找到信息增益高于平均值的特征,再从中选择增益率最高的。 C4.5的局限 : ID3 和 C4.5 生成的决策树分支、规模都比较大,CART 算法的二分法可以简化决策树的规模,提高生成决策树的效率。 CART(classificationandregressiontree),分类回归树算法,既可用于分类也可用于回归,在这一部分我们先主要将其分类树的生成。区别于ID3和C4.5,CART假设决策树是二叉树,内部节点特征的取值为“是”和“否”,左分支为取值为“是”的分支,右分支为取值为”否“的分支。这样的决策树等价于递归地二分每个特征,将输入空间(即特征空间)划分为有限个单元。 CART的分类树用基尼指数来选择最优特征的最优划分点,具体过程如下 剪枝就是给决策树瘦身,这一步想实现的目标就是,不需要太多的判断,同样可以得到不错的结果。之所以这么做,是为了防止“过拟合”(Overfitting)现象的发生。 过拟合:指的是模型的训练结果“太好了”,以至于在实际应用的过程中,会存在“死板”的情况,导致分类错误。 欠拟合:指的是模型的训练结果不理想. 剪枝的方法 : 参考: 【机器学习】决策树(上)——ID3、C4.5、CART(非常详细) 更多模型不断更新中。。。。2023-06-11 09:43:221
决策树模型CHAID法可以连续变量吗
决策树模型CHAID法可以连续变量。决策树模型是一种简单易用的非参数分类器它不需要对数据有任何的先验假设,计算速度较快结果容易解释而且稳健性强。简介复杂的决策情况中往往需要多层次或多阶段的决策当一个阶段决策完成后可能有m种新的不同自然状态发生每种自然状态下都有个新的策略可选择,选择后产生不同的结果并再次面临新的自然状态继续产生一系列的决策过程这种决策被称为序列决策或多级决策。继续遵循上述的决策准则或采用效益矩阵分析问题就容易使相应的表格关系十分复杂决策树是一种能帮助决策者进行序列决策分析的有效工具,其方法是将问题中有关策略自然状态概率及收益值等通过线条和图形用类似于树状的形式表示出来。2023-06-11 09:43:311
全基因组选择之模型篇
在介绍GS模型之前,我们有必要先来了解一下混合线性模型(Mixed Linear Model,MLM)。混合线性模型是一种方差分量模型,既然是线性模型,意味着各量之间的关系是线性的,可以应用叠加原理,即几个不同的输入量同时作用于系统的响应,等于几个输入量单独作用的响应之和(公式1)。 U0001d49a= Xβ + e =U0001d483 U0001d7ce +U0001d483 1 U0001d499 1 +U0001d483 2 U0001d499 2 +u22ef+U0001d483 U0001d48c U0001d499 U0001d48c +U0001d486 (公式1) 式中U0001d49a表示响应变量的测量值向量, X 为固定效应自变量的设计矩阵, β 是与 X 对应的固定效应参数向量;U0001d483 U0001d7ce 、U0001d483 1 、u22ef、U0001d483 U0001d48c 是未知参数;U0001d499 U0001d7ce 、U0001d499 1 、u22ef、U0001d499 U0001d48c 是影响各因素的观察值;U0001d486是残差。同时需要满足条件: E(y)=Xβ,Var(y)=σ 2 I, y 服从正态分布。 既然是混合效应模型,则既含有固定效应,又含有随机效应。所谓固定效应是指所有可能出现的等级或水平是已知且能观察的,如性别、年龄、品种等。所谓随机效应是指随机从总体中抽取样本时可能出现的水平,是不确定的,如个体加性效应、母体效应等(公式2)。 y = Xβ + Zμ +U0001d486 (公式2) 式中 y 为观测值向量; β 为固定效应向量; μ 为随机效应向量,服从均值向量为0、方差协方差矩阵为G的正态分布 μ ~ N(0,G) ; X 为固定效应的关联矩阵; Z 为随机效应的关联矩阵;U0001d486为随机误差向量,其元素不必为独立同分布,即 U0001d486 ~ N(0,R) 。同时假定 Cov(G,R)=0 ,即G与R间无相关关系, y 的方差协方差矩阵变为 Var(y)=ZGZ+R 。若 Zμ 不存在,则为固定效应模型。若 Xβ 不存在,则为随机效应模型。 在传统的线性模型中,除线性关系外,响应变量还有正态性、独立性和方差齐性的假定。混合线性模型既保留了传统线性模型中的正态性假定条件,又对独立性和方差齐性不作要求,从而扩大了适用范围,目前已广泛应用于基因组选择。 很早以前C.R.Henderson就在理论上提出了最佳线性无偏预测(Best Linear Unbiased Prediction,BLUP)的统计方法,但由于计算技术滞后限制了应用。直到上世纪70年代中期,计算机技术的发展为BLUP在育种中的应用提供了可能。BLUP结合了最小二乘法的优点,在协方差矩阵已知的情况下,BLUP是分析动植物育种目标性状理想的方法,其名称含义如下: 在混合线性模型中,BLUP是对随机效应中随机因子的预测,BLUE(Best Linear Unbiased Estimation)则是对固定效应中的固定因子的估算。在同一个方程组中既能对固定效应进行估计,又能对随机遗传效应进行预测。 BLUP方法最初应用在动物育种上。传统的动物模型是基于系谱信息构建的亲缘关系矩阵(又称A矩阵)来求解混合模型方程组(Mixed Model Equations,MME)的,因此称之ABLUP。Henderson提出的MME如下所示: 式中X为固定效应矩阵,Z为随机效应矩阵,Y为观测值矩阵。其中R和G: 其中A为亲缘关系矩阵,因此可转化公式为: 进一步可转化为: 通过求解方程组,计算残差和加性方差的方差组分,即可得到固定因子效应值 (BLUE)和随机因子效应值 (BLUP)。 作为传统BLUP方法,ABLUP完全基于系谱信息来构建亲缘关系矩阵,进而求得育种值,此方法在早期动物育种中应用较多,现在已基本不单独使用。 VanRaden于2008年提出了基于G矩阵的GBLUP(Genomic Best Linear unbiased prediction)方法,G矩阵由所有SNP标记构建,公式如下: GBLUP通过构建基因组关系矩阵G代替基于系谱信息构建的亲缘关系矩阵A,进而直接估算个体育种值。 GBLUP求解过程同传统BLUP方法,仅仅在G矩阵构建不同。除了VanRaden的基因组关系构建G矩阵外,还有其他G矩阵构建方法,但应用最多的还是VanRaden提出的方法。如Yang等提出的按权重计算G矩阵: Goddard等提出的基于系谱A矩阵计算G矩阵: 目前GBLUP已经广泛应用于动植物育种中,并且因为它的高效、稳健等优点,现在仍饱受青睐。GBLUP假设所有标记对G矩阵具有相同的效应,而在实际基因组范围中只有少量标记具有主效应,大部分标记效应较小,因此GBLUP仍有很大的改进空间。 在动物育种中,由于各种各样的原因导致大量具有系谱记录和表型信息的个体没有基因型,单步法GBLUP(single-step GBLUP,ssGBLUP)就是解决育种群体中无基因型个体和有基因型个体的基因组育种值估计问题。 ssGBLUP将传统BLUP和GBLUP结合起来,即把基于系谱信息的亲缘关系矩阵A和基因组关系矩阵G进行整合,建立新的关系矩阵H,达到同时估计有基因型和无基因型个体的育种值。 H矩阵构建方法: 式中w为加权因子,即多基因遗传效应所占比例。 构建H矩阵后,其求解MME过程也是与传统BLUP一样: ssBLUP由于基因分型个体同时含有系谱记录和表型数据,相对于GBLUP往往具有更高的准确性。该方法已成为当前动物育种中最常用的动物模型之一。在植物育种中,往往缺乏较全面的系谱信息,群体中个体的基因型也容易被测定,因此没有推广开来。 如果把GBLUP中构建协变量的个体亲缘关系矩阵换成SNP标记构成的关系矩阵,构建模型,然后对个体进行预测,这就是RRBLUP(Ridge Regression Best Linear Unbiased Prediction)的思路。 为什么不直接用最小二乘法?最小二乘法将标记效应假定为 固定效应 ,分段对所有SNP进行回归,然后将每段中显著的SNP效应相加得到个体基因组育种值。该方法只考虑了少数显著SNP的效应,很容易导致多重共线性和过拟合。 RRBLUP是一种改良的最小二乘法,它能估计出所有SNP的效应值。该方法将标记效应假定为 随机效应 且服从正态分布,利用线性混合模型估算每个标记的效应值,然后将每个标记效应相加即得到个体估计育种值。 一般而言,基因型数据中标记数目远大于样本数(p>>n)。RRBLUP因为是以标记为单位进行计算的,其运行时间相比GBLUP更长,准确性相当。 GBLUP是直接法的代表,它把个体作为随机效应,参考群体和预测群体遗传信息构建的亲缘关系矩阵作为方差协方差矩阵,通过迭代法估计方差组分,进而求解混合模型获取待预测个体的估计育种值。RRBLUP是间接法的代表,它首先计算每个标记效应值,再对效应值进行累加,进而求得育种值。下图比较了两类方法的异同: 直接法估计 ,间接法估计标记效应之和 M 。当K=M"M且标记效应g服从独立正态分布(如上图所示)时,两种方法估计的育种值是一样的,即 = M 。 基于BLUP理论的基因组选择方法假定所有标记都具有相同的遗传方差,而实际上在全基因组范围内只有少数SNP有效应,且与影响性状的QTL连锁,大多数SNP是无效应的。当我们将标记效应的方差假定为某种先验分布时,模型变成了贝叶斯方法。常见的贝叶斯方法也是Meuwissen提出来的(就是提出GS的那个人),主要有BayesA、BayesB、BayesC、Bayesian Lasso等。 BayesA假设每个SNP都有效应且服从正态分布,效应方差服从尺度逆卡方分布。BayesA方法事先假定了两个与遗传相关的参数,自由度v和尺度参数S。它将Gibbs抽样引入到马尔科夫链蒙特卡洛理论(MCMC)中来计算标记效应。 BayesB假设少数SNP有效应,且效应方差服从服从逆卡方分布,大多数SNP无效应(符合全基因组实际情况)。BayesB方法的标记效应方差的先验分布使用混合分布,难以构建标记效应和方差各自的完全条件后验分布,因此BayesB使用Gibbs和MH(Metropolis-Hastings)抽样对标记效应和方差进行联合抽样。 BayesB方法在运算过程中引入一个参数π。假定标记效应方差为0的概率为π,服从逆卡方分布的概率为1-π,当π为1时,所有SNP都有效应,即和BayesA等价。当遗传变异受少数具有较大影响的QTL控制时,BayesB方法准确性较高。 BayesB中的参数π是人为设定的,会对结果带来主观影响。BayesC、BayesCπ、BayesDπ等方法对BayesB进行了优化。BayesC方法将π作为未知参数,假定其服从U(0,1)的均匀分布,并假设有效应的SNP的效应方差不同。BayesCπ方法在BayesC的基础上假设SNP效应方差相同,并用Gibbs抽样进行求解。BayesDπ方法对未知参数π和尺度参数S进行计算,假设S的先验分布和后验分布均服从(1,1)分布,可直接从后验分布中进行抽样。 下图较为形象地说明了不同方法的标记效应方差分布: Bayesian Lasso(Least absolute shrinkage and selection operator)假设标记效应方差服从指数分布的正态分布,即拉普拉斯(Laplace)分布。其与BayesA的区别在于标记效应服从的分布不同,BayesA假设标记效应服从正态分布。Laplace分布可允许极大值或极小值以更大概率出现。 从以上各类贝叶斯方法可看出,贝叶斯方法的重点和难点在于如何对超参的先验分布进行合理的假设。 Bayes模型相比于BLUP方法往往具有更多的待估参数,在提高预测准确度的同时带来了更大的计算量。MCMC需要数万次的迭代,每一次迭代需要重估所有标记效应值,该过程连续且不可并行,需消耗大量的计算时间,限制了其在时效性需求较强的动植物育种实践中的应用。 为提高运算速度和准确度,很多学者对Bayes方法中的先验假设和参数进行优化,提出了fastBayesA、BayesSSVS、fBayesB、emBayesR、EBL、BayesRS、BayesTA等。但目前最常用的Bayes类方法还是上述的几种。 各种模型的预测准确度较大程度的取决于其模型假设是否适合所预测表型的遗传构建。一般而言,调参后贝叶斯方法的准确性比BLUP类方法要略高,但运算速度和鲁棒性不如BLUP。因此,我们应根据自身需求权衡利弊进行合理选择。 除了基于BLUP和Bayes理论的参数求解方法外,基因组选择还有半参数(如RKHS,见下篇)和非参数,如机器学习(Machine Learning, ML)等方法。机器学习是人工智能的一个分支,其重点是通过将高度灵活的算法应用于观察到的个体( 标记的数据 )的已知属性( 特征 )和结果来预测未观察到的个体( 未标记的数据 )的结果。结果可以是连续的,分类的或二元的。在动植物育种中, 标记的数据 对应于具有基因型和表型的训练群体,而 未标记的数据 对应于测试群体,用于预测的 特征 是SNP基因型。 相比于传统统计方法,机器学习方法具有诸多优点: 支持向量机(Support Vector Machine,SVM)是典型的非参数方法,属于监督学习方法。它既可解决分类问题,又可用于回归分析。SVM基于结构风险最小化原则,兼顾了模型拟合和训练样本的复杂性,尤其是当我们对自己的群体数据不够了解时,SVM或许是基因组预测的备选方法。 SVM的基本思想是求解能够正确划分训练数据集并且几何间隔最大的分离超平面。在支持向量回归(Support Vector Regression,SVR)中,通常使用近似误差来代替像SVM中那样的最佳分离超平面和支持向量之间的余量。假设ε为不敏感区域的线性损失函数,当测量值和预测值小于ε时,误差等于零。SVR的目标就是同时最小化经验风险和权重的平方范数。也就是说,通过最小化经验风险来估计超平面。 下图1比较了SVM中回归(图A)和分类(图B)的差别。式中ξ和ξ*为松弛变量,C为用户定义的常数,W为权重向量范数,u03d5表示特征空间映射。 当SVM用于预测分析时,高维度的大型数据集会给计算带来极大的复杂性,核函数的应用能大大简化内积,从而解决维数灾难。因此,核函数的选择(需要考虑训练样本的分布特点)是SVM预测的关键。目前最常用的核函数有:线性核函数、高斯核函数(RBF)和多项式核函数等。其中, RBF具有广泛的适应性,能够应用于训练样本(具有适当宽度参数)的任何分布。尽管有时会导致过拟合问题,但它仍是使用最广泛的核函数。 集成学习(Ensemble Learning)也是机器学习中最常见的算法之一。它通过一系列学习器进行学习,并使用某种规则把各个学习结果进行整合,从而获得比单个学习器更好的效果。通俗地说,就是一堆弱学习器组合成一个强学习器。在GS领域,随机森林(Random Forest,RF)和梯度提升机(Gradient Boosting Machine,GBM)是应用较多的两种集成学习算法。 RF是一种基于决策树的集成方法,也就是包含了多个决策树的分类器。在基因组预测中,RF同SVM一样,既可用做分类模型,也可用做回归模型。用于分类时,注意需要事先将群体中个体按表型值的高低进行划分。RF算法可分为以下几个步骤: 最后,RF会结合分类树或回归树的输出进行预测。在分类中,通过计算投票数(通常使用每个决策树一票)并分配投票数最高的类别来预测未观察到的类别。在回归中,通过对ntree输出进行求平均。 有两个影响RF模型结果的重要因素:一是每个节点随机取样的协变量数量(mtry,即SNP数目)。构建回归树时,mtry默认为p/3(p是构建树的预测数量),构建分类树时,mtry为[图片上传失败...(image-10f518-1612450396027)] ;二是决策树的数量。很多研究表明树并非越多越好,而且构树也是非常耗时的。在GS应用于植物育种中,通常将RF的ntree设置在500-1000之间。 当GBM基于决策树时,就是梯度提升决策树(Gradient Boosting Decision Tree,GBDT),和RF一样,也是包含了多个决策树。但两者又有很多不同,最大的区别在于RF是基于bagging算法,也就是说它将多个结果进行投票或简单计算均值选出最终结果。而GBDT是基于boosting算法,它通过迭代的每一步构建弱学习器来弥补原模型的不足。GBM通过设置不同的损失函数来处理各类学习任务。 虽然已经有不少研究尝试了将多种经典机器学习算法应用于基因组预测中,但提升的准确性仍然有限,而且比较耗时。在无数的机器学习算法中,没有一种方法能够普遍地提高预测性,不同的应用程序及其最优方法和参数是不同的。相比于经典的机器学习算法,深度学习(Deep Learning,DL)或许是未来应用于基因组预测更好的选择。 传统的机器学习算法如SVM,一般是浅层模型。而深度学习除了输入和输出层,还含有多个隐藏层,模型结构的深度说明了它名字的含义。DL的实质是通过构建具有很多隐藏层的机器学习模型和海量的训练数据,来学习更有用的特征,从而最终提升分类或预测的准确性。DL算法的建模过程可简单分为以下三步: 在GS领域,研究较多的DL算法,包括多层感知器(Multi-layer Perceptron,MPL)、卷积神经网络(Convolutional neural network,CNN)和循环神经网络(Recurrent Neural Networks,RNN)等。 MLP是一种前馈人工神经网络(Artificial Neural Network,ANN)模型,它将输入的多个数据集映射到单一的输出数据集上。MLP包括至少一个隐藏层,如下图2中所示,除了一个输入层和一个输出层以外,还包括了4个隐藏层,每一层都与前一层的节点相连,并赋予不同权重(w),最后通过激活函数转化,将输入映射到输出端。 CNN是一类包含卷积计算且具有深度结构的前馈神经网络,通常具有表征学习能力,能够按其阶层结构对输入信息进行平移不变分类。CNN的隐藏层中包含卷积层(Convolutional layer)、池化层(Pooling layer)和全连接层(Fully-connected layer)三类,每一类都有不同的功能,比如卷积层的功能主要是对输入数据进行特征提取,池化层对卷积层特征提取后输出的特征图进行特征选择和信息过滤,而全连接层类似于ANN中的隐藏层,一般位于CNN隐藏层的最末端,并且只向全连接层传递信号。CNN结构如下图3所示。 需要注意的是,深度学习不是万能的。使用DL的前提是必须具有足够大和质量好的训练数据集,而且根据GS在动植物方面的研究表明,一些DL算法和传统的基因组预测方法相比,并没有明显的优势。不过有一致的证据表明, DL算法能更有效地捕获非线性模式。因此,DL能够根据不同来源的数据通过集成GS传统模型来进行辅助育种。总之,面对将来海量的育种数据,DL的应用将显得越来越重要。 以上是GS中常见的预测模型,不同分类方式可能会有所区别。这里再简单介绍一下上述未提及到但比较重要的方法,其中一些是上述三类方法的拓展。 再生核希尔伯特空间(Reproducing Kernel Hilbert Space,RKHS)是一种典型的半参数方法。它使用高斯核函数来拟合以下模型: RKHS模型可采用贝叶斯框架的Gibbs抽样器,或者混合线性模型来求解。 GBLUP仍然是动植物育种中广泛应用的方法,它假定所有标记都具有相同的效应。但在实际情况中,任何与目标性状无关的标记用来估计亲缘关系矩阵都会稀释QTL的作用。很多研究对其进行改进,主要有几种思路: 沿用以上的思路,sBLUP(Settlement of Kinship Under Progressively Exclusive Relationship BLUP, SUPER BLUP)方法将TABLUP进一步细化为少数基因控制的性状,这样基因型关系矩阵的构建仅仅使用了与性状关联的标记。 如果要在亲缘关系矩阵中考虑群体结构带来的影响,可根据个体遗传关系的相似性将其分组,然后将压缩后的组别当做协变量,替换掉原来的个体,而组内个体的亲缘关系都是一样的。因此在构建基因组关系矩阵时,可用组别的遗传效应值来代替个体的值,用个体对应的组来进行预测,这就是cBLUP(Compressed BLUP)。 以上思路都提到了将已验证和新发现的位点整合到模型中,这些位点从何而来?最常见来源自然是全基因组关联分析(Genome Wide Association Study, GWAS)。GS和GWAS有着天然的联系,将GWAS的显著关联位点考虑进GS中,直接的好处是能维持多世代的预测能力,间接的好处是能增加已验证突变的数量。 下图比较了GWAS辅助基因组预测的各类方法比较。a表示分子标记辅助选择方法(MAS),只利用了少数几个主效位点;b表示经典GS方法,利用了全部标记,且标记效应相同;c对标记按权重分配;d将显著关联标记视为固定效应;e将显著关联标记视为另一个随机效应(有其自身的kernel derived);f将染色体划分为片段,每个片段构建的G矩阵分配为不同的随机效应。 GWAS辅助基因组预测的结果会比较复杂,单纯地考虑将关联信号纳入模型不一定都能提高准确性,具体表现应该和性状的遗传构建有关。 GS对遗传效应的估计有两种不同的策略。一是关注估计育种值,将加性效应从父母传递给子代。而非加性效应(如显性和上位性效应)与特定基因型相关,不能直接遗传。当估计方差组分时,非加性效应通常和随机的环境效应一起被当成噪音处理。另一种策略同时关注加性和非加性效应,通常用于杂种优势的探索。杂交优势一般认为是显性和上位性效应的结果,因此,如果非加性效应很明显,而你恰好将它们忽略了,遗传估计将会产生偏差。 杂种优势利用是植物育种,尤其是水稻、玉米等主粮作物的重要研究课题。将非加性遗传效应考虑进GS模型进行杂交种预测,也是当前基因组预测在作物育种中研究的热点之一。 当然,杂种优势效应的组成也是随性状而变化的,不同性状的基因组预测需要与鉴定杂优QTL位点结合起来。由于一般配合力GCA(加性效应的反映)和特殊配合力SCA(非加性效应的反映)可能来自不同遗传效应,所以预测杂交种F 1 应该分别考虑GCA和SCA。GCA模型可以基于GBLUP,重点在基因型亲缘关系矩阵构建。SCA模型有两种方法:一是将杂优SNP位点的Panel作为固定效应整合进GBLUP模型中;二是使用非线性模型,如贝叶斯和机器学习方法。据报道,对于加性模型的中低遗传力性状,机器学习和一般统计模型比较一致。但在非加性模型中,机器学习方法表现更优。 传统的GS模型往往只针对单个环境中的单个表型性状,忽略了实际情况中多性状间或多环境间的相互关系。一些研究通过对多个性状或多个环境同时进行建模,也能提高基因组预测的准确性。以多性状(Multi-trait,MT)模型为例,多变量模型(Multivariate model,MV)可用如下公式表示: 多性状选择一般用于性状间共有某种程度的遗传构建,即在遗传上是相关的。尤其适用于对低遗传力性状(伴随高遗传力性状相关)或者难以测量的性状。 农作物的环境条件不如动物容易控制,而且大部分性状都是数量性状,很容易受到环境影响。多环境(Multi-environment,ME)试验发挥了重要作用,基因型与环境互作(Genotype by E nvironment,G × E)效应也是当前基因组选择关注的焦点。 除了GBLUP,多变量模型也可基于贝叶斯框架的线性回归,或者基于非线性的机器学习方法。 我们知道,基因经过转录翻译以及一系列调控后才能最终体现在表型特征上,它只能在一定程度上反映表型事件发生的潜力。随着多组学技术的发展,整合多组学数据用于基因组预测也是目前GS研究的一个重要方向。 在植物育种中,除基因组外,转录组学和代谢组学是当前GS研究相对较多的两个组学。转录组将基因表达量与性状进行关联预测,代谢组则将调控表型的小分子含量与性状进行关联预测,对于某些特定的性状而言,可能会提高预测能力。最好的方法是将各个组学的数据共同整合进模型,但这样会大大增加模型的复杂度。 表型测定的准确性直接影响模型的构建。对于一些复杂性状,单凭肉眼观察记录显然已不可取,而且表型调查费时费力,成本很高。因此,高通量表型组也是GS发展的重要方向。表型的范畴非常之广,当个体性状不可简单测量时,我们也可采用多组学数据,如蛋白组、代谢组等数据来替代。 考虑到成本效益问题,多组学技术在动植物育种中仍处于研究阶段,但代表了未来的应用方向。2023-06-11 09:43:571
R语言学习之决策树
R语言学习之决策树决策树最重要的2个问题:决策树的生长问题,决策树的剪枝问题。 生长问题又包括了2个子问题:从分组变量的众多取值中选择一个最佳分割点和从众多输入变量中选择当前最佳分组变量; 剪枝问题包括2个子问题:预修剪(事先指定树的最大深度,叶子的最小样本量等)和后修剪(先让树充分生长,然后边修剪边检验)。在R中,实现决策树需要加载包library(rpart),如果想把分类图画的漂亮点,还可以加载这个包:library(rpart.plot)## rpart.control对树进行一些设置## xval是10折交叉验证## minsplit是最小分支节点数,这里指大于等于20,那么该节点会继续分划下去,否则停止## minbucket:叶子节点最小样本数## maxdepth:树的深度## cp全称为complexity parameter,指某个点的复杂度,对每一步拆分,模型的拟合优度必须提高的程度,用来节省剪枝浪费的不必要的时间,R内部是怎么计算的还真不知道唉ct <- rpart.control(xval=10, minsplit=20, cp=0.1)## kyphosis是rpart这个包自带的数据集## na.action:缺失数据的处理办法,默认为删除因变量缺失的观测而保留自变量缺失的观测。 ## method:树的末端数据类型选择相应的变量分割方法:## 连续性method=“anova”,离散型method=“class”,计数型method=“poisson”,生存分析型method=“exp”## parms用来设置三个参数:先验概率、损失矩阵、分类纯度的度量方法(gini和information)## cost我觉得是损失矩阵,在剪枝的时候,叶子节点的加权误差与父节点的误差进行比较,考虑损失矩阵的时候,从将“减少-误差”调整为“减少-损失”fit <- rpart(Kyphosis~Age + Number + Start, data=kyphosis, method="class",control=ct, parms = list(prior = c(0.65,0.35), split = "information"));## 作图有2种方法## 第一种:par(mfrow=c(1,3));plot(fit); text(fit,use.n=T,all=T,cex=0.9)## 第二种,这种会更漂亮一些:rpart.plot(fit, branch=1, branch.type=2, type=1, extra=102, shadow.col="gray", box.col="green", border.col="blue", split.col="red", split.cex=1.2, main="Kyphosis决策树");## rpart包提供了复杂度损失修剪的修剪方法,printcp会告诉分裂到每一层,cp是多少,平均相对误差是多少## 交叉验证的估计误差(“xerror”列),以及标准误差(“xstd”列),平均相对误差=xerror±xstdprintcp(fit)## 通过上面的分析来确定cp的值## 我们可以用下面的办法选择具有最小xerror的cp的办法:## prune(fit, cp= fit$cptable[which.min(fit$cptable[,"xerror"]),"CP"])fit2 <- prune(fit, cp=0.01)待续。。。。。。注:1.在预测分类目标字段时为类别指定先验概率。先验概率是对总体(从中可提取训练数据)中的每个目标分类的总相对频率的估计。换句话说,先验概率是对预测值有任何了解之前对每个可能的目标值的概率估计。确定决策树分支准则的时候会用到,具体内部算法,我暂时还没有查到。2023-06-11 09:44:051
Python数据分析(4)决策树模型
时间:2021/06/30 系统环境:Windows 10 所用工具:Jupyter NotebookPython 3.0 涉及的库:pandas rain_test_splitDecisionTreeClassifieraccuracy_score oc_curvematplotlib.pyplot oc_auc_scoreexport_graphvizgraphvizosGridSearchCV 蛋肥想法: 通过测试集数据,检验预测准确度,测得准确度为95.47%。 蛋肥想法: 通过绘制ROC曲线,得出AUC值为0.966,表明预测效果不错。 蛋肥想法: 特征重要性最高的是“satisfaction_level”,而“salary”在该模型中的特征重要性为0,并不符合实际(钱可太重要了~),应该是因为数据处理时单纯将工资分为“高”“中”“低”3个档次,使得该特征变量在决策树模型中发挥的作用较小。 蛋肥想法: GridSearch网格搜索可以进行单参数和多参数调优,蛋肥这里以max_depth参数来练习调优,得出"max_depth": 7时,AUC更好为0.985。2023-06-11 09:44:111
对撞机重磅发现:玻色子产生的证据!快来看看吧
欧洲核子研究中心的阿特拉斯实验刚刚公布了在大型强子对撞机(LHC)质子-质子碰撞中同时产生三个W或Z玻色子的证据。W玻色子和Z玻色子是弱力中的介粒子,弱力是已知四种基本力之一,弱力导致了放射性现象,也是太阳热核过程的基本之一。新的阿特拉斯实验(ATLAS)结果是基于ATLAS在2015-2017年以13 TeV碰撞能量收集的数据。它提供了显著性为4个标准差的“三玻色子”事件证据,这一迹象不过是几十年来用弱玻色子进行测量的最新进展。W和Z玻色子是1983年在欧洲核子研究中心质子-反质子对撞机中发现的。博科园-科学科普:1996年,在欧洲核子研究中心(CERN)的大型正负电子对撞机(LEP)上,首次观察到带有两个W玻色子的事件,不久之后发现了ZZ事件。十年后,费米实验室的Tevatron对撞机观测到了WW、WZ和ZZ事件。大型强子对撞机现在产生了大量的玻色子事件,可以进行精确的测量,利用粒子物理标准模型对罕见三玻色子的产生过程进行了预测。产生包括弱玻色子之间的相互作用,即所谓的三重和四次规玻色子耦合,这种耦合对未知粒子或力的可能贡献非常敏感。由于弱玻色子不稳定,它们通过衰变成成对的轻子(包括不可见的中微子)或夸克(夸克形成粒子喷雾,称为“喷流”),在探测器中被重建。阿特拉斯物理学家们结合了对不同衰变模式和不同类型三玻色子产生的搜索,包括带有三个W玻色子的事件(“WWW”),以及带有一个W玻色子、一个Z玻色子和任意一种第三个玻色子的事件。后者称为“WVZ”事件,其中“V”是“W或z”的缩写。阿特拉斯物理学家用来搜索“WWW”事件的一种技术使用了计算出两个喷流的不变质量,并将其与W玻色子的质量进行了比较,这使他们能够确定喷流是否是W玻色子衰变的结果。这种技术已经被物理学家们使用了几十年(包括2012年希格斯玻色子的发现)。另一方面,WVZ分析使用机器学习技术来识别三玻色子事件。采用改进决策树(BDTs)的多变量算法,对数据中的哪些事件来自三玻色子产生,哪些事件来自其他标准模型过程进行了训练。通过考虑事件的各种特征(例如轻子的动量、总体动量失衡和喷流的数量)BDTs能够推断(比人类更有效)数据的来源。最终,BDTs确定了一些数据可能来自WVZ生产。总而言之,最终得到ATLAS测量结果与标准模型预测一致,从而为我们理解粒子物理学提供了又一块拼图。博科园-科学科普|研究/来自: ATLAS Experiment 参考期刊文献:《Nature Communications》 博科园-传递宇宙科学之美2023-06-11 09:44:341
请问使用决策树构建模型前是否需要单因素分析有统计学意义的变量?
一般来说,在使用机器学习训练模型之前需要做特征工程,特种工程的主要工作就是筛选和构造和因变量相关的自变量,同时消除相关的自变量,以免出现共线性,用的方法主要有单因素,还有多因素等方法。如果你用决策树的话,有个方便的是决策树本身可以筛选重要特征,所以,也可以不用的。2023-06-11 09:44:421
决策树有哪些常用的启发函数
1、ID3—— 最大信息增益2、C4.5——最大信息增益比3、CART——最大基尼指数(Gini)ID3—— 最大信息增益对于样本集合D,类别数为K,数据集D的经验熵表示为C4.5——最大信息增益比有时候我们会发现,当特征为ID或者有某一个特征有很多值的时候,ID3就不起作用,举个栗子,当特征值为ID的时候,每个样本是一类,那么所求出来的最大信息增益,肯定是最大的。由此可见,其他特征有很多值的情况。因此引入最大信息增益比来减少某个特征类别过多带来的影响。特征A对于数据集D的信息增益比定义为CART——最大基尼指数(Gini)Gini描述的是数据的纯度,与信息熵含义类似。三者之间的差异。1、ID3是采用信息增益作为评价标准, 会倾向于取值较多的特征。因为,信息增益反映的是给定条件以后不确定性减少 的程度,特征取值越多就意味着确定性更高,也就是条件熵越小,信息增益越大。2、从样本类型的角度,ID3只能处理离散型变量,而C4.5和CART都可以 处理连续型变量。3、应用角度,ID3和C4.5只能用于分类任务,而CART(Classification and Regression Tree,分类回归树)从名字就可以看出其不仅可以用于分类,也可以应用于回归任务(回归树使用最小平方误差准则)。2023-06-11 09:44:491
数模预测模型那些
数模预测模型具体有:1、蒙特卡罗算法(该算法又称随机性模拟算法,是通过计算机仿真来解决问题的算法,同时可以通过模拟可以来检验自己模型的正确性,是比赛时必用的方法)2、数据拟合、参数估计、插值等数据处理算法(比赛中通常会遇到大量的数据需要处理,而处理数据的关键就在于这些算法,通常使用Matlab作为工具)3、线性规划、整数规划、多元规划、二次规划等规划类问题(建模竞赛大多数问题属于最优化问题,很多时候这些问题可以用数学规划算法来描述,通常使用Lindo、Lingo软件实现)4、图论算法(这类算法可以分为很多种,包括最短路、网络流、二分图等算法,涉及到图论的问题可以用这些方法解决,需要认真准备)5、动态规划、回溯搜索、分治算法、分支定界等计算机算法(这些算法是算法设计中比较常用的方法,很多场合可以用到竞赛中)6、最优化理论的三大非经典算法:模拟退火法、神经网络、遗传算法(这些问题是用来解决一些较困难的最优化问题的算法,对于有些问题非常有帮助,但是算法的实现比较困难,需慎重使用)7、网格算法和穷举法(网格算法和穷举法都是暴力搜索最优点的算法,在很多竞赛题中有应用,当重点讨论模型本身而轻视算法的时候,可以使用这种暴力方案,最好使用一些高级语言作为编程工具)8、一些连续离散化方法(很多问题都是实际来的,数据可以是连续的,而计算机只认的是离散的数据,因此将其离散化后进行差分代替微分、求和代替积分等思想是非常重要的)9、数值分析算法(如果在比赛中采用高级语言进行编程的话,那一些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用)10、图象处理算法(赛题中有一类问题与图形有关,即使与图形无关,论文中也应该要不乏图片的,这些图形如何展示以及如何处理就是需要解决的问题,通常使用Matlab进行处理)2023-06-11 09:45:321
随机森林模型的状态变量是什么
随机森林模型的状态变量是完整描述系统运动的一组变量。建立多个决策树并将他们融合起来得到一个更加准确和稳定的模型,是bagging思想和随机选择特征的结合。随机森林构造了多个决策树,当需要对某个样本进行预测时,统计森林中的每棵树对该样本的预测结果,然后通过投票法从这些预测结果中选出最后的结果。2023-06-11 09:46:391
ML - 决策树(decision tree)
机器学习中分类和预测算法的评估: 判定树是一个类似于流程图的树结构:其中,每个内部结点表示在一个 属性上的测试 ,每个分支代表一个 属性输出 ,而每个树叶结点代表 类或类分布 。树的最顶层是根结点。 机器学习中分类方法中的一个重要算法 信息和抽象,如何度量? 1948年,香农提出了 ”信息熵(entropy)“的概念 一条信息的信息量大小和它的不确定性有直接的关系,要搞清楚一件非常非常不确定的事情,或者 是我们一无所知的事情,需要了解大量信息==> 信息量的度量就等于不确定性的多少 例子:猜世界杯冠军,假如一无所知,猜多少次? 每个队夺冠的几率不是相等的 比特(bit)来衡量信息的多少 变量的不确定性越大,熵也就越大 3.1 决策树归纳算法 ( ID3 ) 1970-1980, J.Ross. Quinlan, ID3算法 选择属性(A为age时)判断结点 信息获取量(Information Gain) : Gain(A) = Info(D) - Infor_A(D) Gain(A) =按yes/no分的熵 - 按A属性分类的熵 通过A来作为节点分类获取了多少信息 类似 Gain(income) = 0.029 Gain(student) = 0.151 Gain(credit_rating)=0.048 所以,选择age作为第一个根节点 重复。。。 算法: *其他算法: C4.5 : Quinlan Classification and Regression Trees (CART): (L. Breiman, J. Friedman, R. Olshen, C. Stone) 共同点:都是贪心算法,自上而下(Top-down approach) 区别:属性选择度量方法不同: C4.5 (gain ratio), CART(gini index), ID3 (Information Gain) 先剪枝 后剪枝 直观,便于理解,小规模数据集有效 处理连续变量不好(离散化,阈值选择对结果影响大) 类别较多时,错误增加的比较快 可规模性一般 1. Python 2. Python机器学习的库: scikit-learn 2.1: 特性: 简单高效的数据挖掘和机器学习分析 对所有用户开放,根据不同需求高度可重用性 基于Numpy, SciPy和matplotlib 开源,商用级别:获得 BSD许可 2.2 覆盖问题领域: 分类(classification), 回归(regression), 聚类(clustering), 降维(dimensionality reduction) 模型选择(model selection), 预处理(preprocessing) 3. 使用用scikit-learn 安装scikit-learn: pip, easy_install, windows installer 安装必要package:numpy, SciPy和matplotlib, 可使用 Anaconda (包含numpy, scipy等科学计算常用package) 4. 例子: 文档: http://scikit-learn.org/stable/modules/tree.html 安装 Graphviz: http://www.graphviz.org/ 配置环境变量 转化dot文件至pdf可视化决策树:dot -Tpdf iris.dot -o outpu.pdf2023-06-11 09:46:471
决策树算法基础 ID3与C4.5
决策树算法基础:ID3与C4.5设X是一个取有限个值得离散随机变量,其概率分布为P(X=xi)=pi, i=1,2,…,n。则随机变量X的信息熵为条件熵H(Y|X)表示在已知随机变量X的条件下随机变量Y的不确定性。H(Y|X)的计算公式为所以决策树分支后信息总熵H(D|A)=P1*H1+P2*H2+...+Pn*Hn,(特征A条件下D的经验条件熵)所以信息增益ΔH=H(D)-H(D|A)H(D|A)越小,ΔH越大,该特征A越适合作为当前的决策节点。选取最佳特征伪代码:计算信息总熵H(D)遍历每一个特征下的关于D的经验条件熵H(D|A)计算每一个特征的信息增益ΔH将信息增益ΔH最大的特征作为最佳特征选为当前决策节点ID3算法伪代码:如果第一个标签的数量等于所有的标签数量,说明这是一个单节点树,返回这个标签作为该节点类如果特征只有一个,说明这是一个单节点树,用多数表决法投票选出标签返回作为该节点类否则,按信息增益最大的特征A作为当前决策节点,即决策树父节点如果该特征的信息增益ΔH小于阈值,则用多数表决法投票选出标签返回作为该节点类否则,对于该特征A的每一个可能值ai,将原空间D分割为若干个子空间Di对于若干个非空子集Di,将每个Di中实例数最大的类作为标记,构建子节点以Di为训练空间,递归调用上述步骤由于信息增益存在偏向于选择取值较多的特征的问题,而C4.5算法中,将ID3算法里的信息增益换成信息增益比,较好地解决了这个问题。决策树的优点在于计算量简单,适合有缺失属性值的样本,适合处理不相关的特征。而缺点是容易过拟合,可以通过剪枝来简化模型,另外随机森林也解决了这个问题。2023-06-11 09:46:591
随机森林遇到分类变量较多怎么处理
随机森林是一种集成分类器,对影响随机森林性能的参数进行了分析,结果表明随机森林中树的数量对随机森林的性能影响至关重要。对树的数量的确定方法以及随机森林性能指标的评价方法进行了研究与总结。以分类精度为评价方法,利用UCI数据集对随机森林中决策树的数量与数据集的关系进行了实验分析,实验结果表明对于多数数据集,当树的数量为100时,就可以使分类精度达到要求。将随机森林和分类性能优越的支持向量机在精度方面进行了对比,实验结果表明随机森林的分类性能可以与支持向量机相媲美。2023-06-11 09:47:451
【328→思维模型】禁果效应+路径依赖+决策树
越禁止的东西,人们越想要得到手,越希望掩盖某个信息,不让被人知道,它越容易勾起别人的好奇心和探求欲,反而促使别人想尽一切办法来获取被掩盖的信息,禁果效应也叫亚当夏娃效应,或者叫罗密欧与朱丽叶效应。 1)定义 指人类社会中的技术演进或制度变迁均有类似于物理学中的惯性,即一旦进入某一路径(无论好还是坏)就会沿着该路径一直发展下去,并锁定在该路线上,惯性的力量会使这一选择不断自我强化,并让你轻易走不出去。 2)影响 积极:正反馈,通过惯性和冲力,产生飞轮效应,进入良性循环。 消极:负反馈,通过惯性和冲力,产生泥沼效应,进入恶性循环。 3)形成原因 历史选择,转换成本,网络效应,认知凝滞,进化近视 4)突破 新:革新理念,居安思维 舍:敢于放弃,沉没成本 创:创新开拓,另辟蹊径 每个决策或事件都可能引出两个或多个事件,导致不同的结果,把这种决策分支画成图形很像一棵树的枝干,故称决策树。 四步骤: 1)绘制树状图 2)标识损益值 3)计算期望值 4)剪枝做决策 应用的五个条件: 1)目标:具有决策者期望达到的明确目标 2)方案:存在决策者可以选择的两个以上的可行备选方案 3)变量:存在着决策者无法控制的两种以上的自然状态。 4)损益:不同方案在不同状态下的损益值可以计算出来。 5)概率:决策者能估算不同的状态下的发生概率。2023-06-11 09:48:031
如何做风控策略
风控决策引擎本质上是一系列规则的集合。风控规则也叫做风控政策、风控策略。欺诈、盗号、作弊、套现以及营销活动恶意刷单、恶意抢占资源等都是风险,都需要复杂但高效的规则引擎。这里我们只关注信贷风控。 风控规则的制定原则: 监管层面 监管会约束机构禁止对未成年发放贷款,执行起来,准入规则就会强制要求用户年龄大于等于 18 周岁。 学生贷也会有较多监管要求,因为学生群体大多没什么稳定的经济收入来源,按时还款的能力不足,容易滋生过度借贷和诈骗。 公司层面 准入通常也会设定一个年龄上限,例如 60 岁。设定年龄上限往往是出于舆论的考虑,老年人贷后事故可能会更大,例如遇到催收反应过激。这一般并不在监管范畴,而是公司层面的原则。 高危地区 也是如此,某些区域历史上出现过集中诈骗,为了防止被团伙攻击,在公司层面直接不对这些高危地区准入的做法也是存在的。 另外,公司也会规定同一申请人被拒绝一个月内不能再次申请借款。这是因为短时间内用户的信息不会发生明显变化,用户的风险评估结果不会前后差异过大,前次被拒绝,再次评估往往还会被拒绝。而评估一个人是有成本的,低效地去重复查询数据是不可取的。 风控层面 根据行业经验,制定欺诈类、黑名单类、多头类、信用不良类的强规则是不言而喻的。 欺诈 主要可分为一方欺诈和三方欺诈。一方欺诈是指申请人自身的欺诈行为;三方欺诈是第三方盗用、冒用他人身份进行欺诈,申请者本人并不知情,比如团伙利用非法收集的身份证进行欺诈。 其实还有两方欺诈,是内部人员勾结的欺诈,一般不在考虑范围。 一方欺诈往往较难定义,它跟信用不良的表现结果无二。可以先验地设置一些专家判断,例如手机号入网时长一般限制最小值为 6 个月或 12 个月。新号来注册申请,显然更可能是欺诈骗贷,当然这些规则很容易被撸口子大军绕过。道高一尺,魔高一丈。 人脸识别 显然是一个很有效的三方欺诈防控的办法,但也是一个很笨重很伤用户体验的办法。三方欺诈防控更大程度地依赖于大数据挖掘,盗用冒用在设备行为和关系网络上一般是有迹可循的。基于大数据的反欺诈模型是风控中重要的内容之一。 黑名单 一般分产品内部黑名单和行业外部黑名单,内部黑名单指的是历史用户中的欺诈用户和严重征信不良用户,外部黑名单指的是三方数据提供的命中信贷逾期名单或法院执行名单或其他高风险的用户。黑名单防控和一方欺诈有交叉重叠。 命中黑名单的客群一般会直接拒绝。业务持续发展过程中,黑名单客群数量可能积累过大,这往往是由于入黑规则过于严格,误杀会较严重。将其根据风险差异再拆分黑名单和灰名单是必要的,对灰名单用户可以测试放开。从而实现名单优化。 多头 指的是用户在多家平台借款,存在借新还旧、以贷养贷的风险。用户也许能够从其他平台借到款来还自己平台的款,但对任何单一平台来说,赌自己不会成为受害方就跟赌比特币自己不接盘一样,不是风控该允许的做法。 行业的共识就是制定多头规则。多头指标往往是制定成可变规则,因为多头是一个程度问题,阈值可以调整,多头规则是整个风控规则中调整频率比较高的。 实际上,基于数据分析的规则制定是方便易行的。基于特征库,挑选出一些风险区分度高的变量是一个单变量分析的过程。 只要遵循三个指标,准确率、召回率和稳定性,就能找出有效可用的规则集。 准确率 是说命中的人当中坏用户占比要尽量高。 召回率 指的是命中的坏用户要足够多,一条规则只找出了几个人,即使都是坏人,也没有意义。 稳定性 当然很重要,命中的人数、命中的人当中坏用户占比,都需要持续稳定。否则要频繁跟踪调整。 需要说明的是,模型也可以理解成一条规则,只不过它是将许许多多的弱变量组合成一个强变量。强变量用于规则,弱变量用于模型。 他们的本质都是将用户分层,方便我们将用户一分为二,将其通过或拒绝。 对于一些可变规则,应定期检测规则的时效性,有些规则是经常需要更新的。另外还需要保密,尤其是反欺诈规则。 说说策略同学的关键技能。 业务总会不断对策略进行迭代优化,这往往也导致策略体系过于庞杂,怎么样从庞杂的体系中分清轻重缓急是策略同学的核心能力。 如果推倒重来要怎么做?给一家新公司业务做策略顾问你要怎么做?这些都不是照搬现有体系能够解决的。设想下,假如需要你去做风控能力输出,从 0 开始制定一套风控流程。你会怎么做? 决策引擎是一套决策流程,它的要素组成是规则清单和规则被执行的顺序。 前者要求全面且高区分性,后者对成本优化至关重要。 为了使风控输出的规则保持清晰有效,既需要考虑规则变量提取的易行性,又要考虑规则执行的必要性。命中低、难执行、成本高是失败规则的常见特点。重复命中也是策略体系中常见的问题。 规则清单制定完成后,需要动态监控每条规则命中的人数。不同时期激活的规则可能不一样,也就是说,可能其中一部分是激活状态,另一部分是抑制状态。动态调整规则的阈值,以及激活抑制的状态,是很有必要的。 例如,某些月份的逾期相对较高,新增了一些规则,后期监控到这些规则发现其区分能力明显下降,就应该适当取消。 不管是规则还是模型,一定会有很多误杀,但误杀是允许的,因为贷款本金的损失往往是利息收益的几十甚至数百倍。 平衡决策对通过率的影响和对风险的影响,对成本的影响和对收益的影响,是风控策略从业者需要培养的职业嗅觉。 多头借贷在策略上一般作为拒绝维度参与到整个风控流程中。不同机构、不同信贷产品、不同场景,对于多头借贷的拒绝线划分都是不一样的。 如何找到当下最适合的多头借贷拒绝线,是风控策略分析人员工作中的核心任务。 以上,如果我们采用宽松政策,可以将阈值定为大于等于 2 作为拒绝线,这样拒绝率只占 3.2%,被排除的用户坏账率更高。 而如果我们采用严格政策,可以改为大于 0 则拒绝,这样拒绝率增加为 10%,被拒绝的用户相比通过用户仍然显著要高。 这两个规则都是有效的,实际业务中采用什么样的阈值取决于公司的政策。从严 or 从宽。 当然,最顶层的目标是利润最大化。 值得说明的是,多头数据往往覆盖率有限,体现在变量取值上是 0 值占比过高,这个时候便可以考虑取大于 0 的部分来做多头排黑规则。 利用决策树制定更多变量更丰富的交叉组合可以得到更有效的规则。 多头变量除了用于制定强规则直接去拒绝用户外,还以为作为软规则用于客群划分。多头严重或者不严重区分出来后,再结合其他维度的风险评估交叉使用。 国内缺的从来不是策略,而是将策略贯彻的决心与环境。 以上文章来源于thunderbang ,作者雷帅2023-06-11 09:48:101
决策树、随机森林
在了解树模型之前,自然想到树模型和线性模型,他们有什么区别呢? 决策树与逻辑回归的分类区别也在于此。 树形模型更加接近人的思维方式,可以 产生可视化的分类规则,产生的模型具有可解释性 。树模型拟合出来的函数其实是 分区间的阶梯函数 。 决策树(decision tree)是一种基本的分类与回归方法,此处主要讨论分类的决策树。决策树是一种十分常用的分类方法,属于有监督学习(Supervised Learning)。所谓有监督学习,就是给出一堆样本,每个样本都有一组属性和一个分类结果,也就是分类结果已知,那么通过学习这些样本得到一个决策树,这个决策树能够对新的数据给出正确的分类。 决策树是一种树形结构,它主要有三种不同的节点: 决策树算法主要包括三个部分: 特征选择、树的生成、树的剪枝。 比较常用的决策树算法有ID3,C4.5和CART(Classification And Regression Tree),CART的分类效果一般优于其他决策树。 样本数量,特征数量上面,一开始需要注意的:当熵中的概率由数据估计(特别是最大似然估计)得到时,所对应的熵称为 经验熵 (empirical entropy)。 什么叫由数据估计?比如有10个数据,一共有两个类别,A类和B类。其中有7个数据属于A类,则该A类的概率即为十分之七。其中有3个数据属于B类,则该B类的概率即为十分之三。浅显的解释就是,这概率是我们根据数据数出来的。 训练数据集D,则训练数据集D的经验熵为H(D),|D|表示其样本容量,及样本个数。设有K个类Ck,k = 1,2,3,···,K,|Ck|为属于类Ck的样本个数,这经验熵公式可以写为: 信息增益表示得知特征X的信息而使得类Y的信息不确定性减少的程度。 条件熵H(Y|X)表示在已知随机变量X的条件下随机变量Y的不确定性,随机变量X给定的条件下随机变量Y的条件熵(conditional entropy) H(Y|X),定义X给定条件下Y的条件概率分布的熵对X的数学期望: 当熵和条件熵中的概率由数据估计(特别是极大似然估计)得到时,所对应的分别为经验熵和经验条件熵,此时如果有0概率,令0log0=0。 信息增益 一般地, 熵H(D)与条件熵H(D|A)之差成为互信息(mutual information) 。决策树学习中的信息增益等价于训练数据集中类与特征的互信息。 信息增益比 Gini 指数 举例计算Gini指数(不纯度)这个分类结果明显并不是很好,因为它没有将见面与不见面完全的分开,在算法中,当然不能凭我们的“感觉”去评价分类结果的好坏。我们需要用一个数去表示。(具体数值代入上面的基尼指数计算公式) 信息增益 vs 信息增益比 Gini 指数 vs 熵 ID3算法的核心是在决策树各个结点上对应信息增益准则选择特征,递归地构建决策树。 具体方法是: 1)从根结点(root node)开始,对结点计算所有可能的特征的信息增益,选择信息增益最大的特征作为结点的特征。 2)由该特征的不同取值建立子节点,再对子结点递归地调用以上方法,构建决策树;直到 所有特征的信息增益均很小或没有特征可以选择 为止; 3)最后得到一个决策树。 ID3相当于用 极大似然法进行概率模型的选择 。 与ID3算法相似,但是做了改进,将信息增益比作为选择特征的标准。 CART 的全称是分类与回归树。从这个名字中就应该知道,CART 既可以用于分类问题,也可以用于回归问题。 回归树中,使用平方误差最小化准则来选择特征并进行划分。每一个叶子节点给出的预测值,是划分到该叶子节点的所有样本目标值的均值,这样只是在给定划分的情况下最小化了平方误差。 要确定最优化分,还需要遍历所有属性,以及其所有的取值来分别尝试划分并计算在此种划分情况下的最小平方误差,选取最小的作为此次划分的依据。由于回归树生成使用平方误差最小化准则,所以又叫做最小二乘回归树。 ID3 熵表示的是数据中包含的信息量大小。熵越小,数据的纯度越高,也就是说数据越趋于一致,这是我们希望的划分之后每个子节点的样子。 信息增益 = 划分前熵 - 划分后熵。信息增益越大,则意味着使用属性 a 来进行划分所获得的 “纯度提升” 越大 **。也就是说,用属性 a 来划分训练集,得到的结果中纯度比较高。 ID3 仅仅适用于二分类问题。ID3 仅仅能够处理离散属性。 C4.5 克服了 ID3 仅仅能够处理离散属性的问题,以及信息增益偏向选择取值较多特征的问题,使用信息增益比来选择特征。 信息增益比 = 信息增益 / 划分前熵 选择信息增益比最大的作为最优特征。 C4.5 处理连续特征是先将特征取值排序,以连续两个值中间值作为划分标准。尝试每一种划分,并计算修正后的信息增益,选择信息增益最大的分裂点作为该属性的分裂点。 CART 与 ID3,C4.5 不同之处在于 CART 生成的树必须是二叉树 。也就是说,无论是回归还是分类问题,无论特征是离散的还是连续的,无论属性取值有多个还是两个,内部节点只能根据属性值进行二分。 决策树生成算法递归的产生决策树,直到不能继续下去为止,这样产生的树往往对训练数据的分类很准确,但对未知测试数据的分类缺没有那么精确,即会出现过拟合现象。过拟合产生的原因在于在学习时过多的考虑如何提高对训练数据的正确分类,从而构建出过于复杂的决策树,解决方法是考虑决策树的复杂度,对已经生成的树进行简化。 剪枝(pruning):从已经生成的树上裁掉一些子树或叶节点,并将其根节点或父节点作为新的叶子节点,从而简化分类树模型。 实现方式:极小化决策树整体的损失函数或代价函数来实现 决策树学习的损失函数定义为: https://www.cnblogs.com/ooon/p/5647309.html 鉴于决策树容易过拟合的缺点,随机森林采用多个决策树的投票机制来改善决策树,我们假设随机森林使用了m棵决策树,那么就需要产生m个一定数量的样本集来训练每一棵树,如果用全样本去训练m棵决策树显然是不可取的,全样本训练忽视了局部样本的规律,对于模型的泛化能力是有害的。 产生n个样本的方法采用Bootstraping法,这是一种有放回的抽样方法,产生n个样本。 而最终结果采用Bagging的策略来获得,即多数投票机制。 随机森林的生成方法: 1.从样本集中通过重采样的方式产生n个样本 2.假设样本特征数目为a,对n个样本选择a中的k个特征,用建立决策树的方式获得最佳分割点 3.重复m次,产生m棵决策树 4.多数投票机制来进行预测 (需要注意的一点是,这里m是指循环的次数,n是指样本的数目,n个样本构成训练的样本集,而m次循环中又会产生m个这样的样本集) 随机森林是一个比较优秀的模型,在我的项目的使用效果上来看,它对于多维特征的数据集分类有很高的效率,还可以做特征重要性的选择。运行效率和准确率较高,实现起来也比较简单。 但是在数据噪音比较大的情况下会过拟合,过拟合的缺点对于随机森林来说还是较为致命的。 机器学习实战(三)——决策树 https://blog.csdn.net/jiaoyangwm/article/details/795252372023-06-11 09:48:191
用决策树和决策表表示快递运费的计算方法
计算方法:这个主要要根据货物的种类来进行计算,一般物流公司的货物运费计算方法也大致是这几类。一、按照重量计费:这种方法就是按照寄送货物的毛重,来计算运输费用,前提是货物的体积在规定范围内。二、按照件数计费:按照货物的实际件数计算运费,这种计费方式一般适用于比较贵重的物品。扩展资料决策树算法的关键1、分裂属性的选择即选择哪个自变量作为树叉,也就是在n个自变量中,优先选择哪个自变量进行分叉。2、树剪枝即在构建树叉时,由于数据中的噪声和离群点,许多分支反映的是训练数据中的异常,而树剪枝则是处理这种过分拟合的数据问题,常用的剪枝方法为先剪枝和后剪枝。2023-06-11 09:49:081
机器学习——条件决策树
使用威斯康星州乳腺癌数据,划分训练集和测试集,比较经典决策树和条件决策树的效果。 算法如下: (1) 对输出变量与每个预测变量间的关系计算p值。 (2) 选取p值最小的变量。 (3) 在因变量与被选中的变量间尝试所有可能的二元分割(通过排列检验),并选取最显著的分割。 (4) 将数据集分成两群,并对每个子群重复上述步骤。 (5) 重复直至所有分割都不显著或已到达最小节点为止。 条件推断树可由party包中的ctree()函数获得: library(party) fit.ctree <- ctree(class~., data=df.train) plot(fit.ctree, main="Conditional Inference Tree") ctree.pred <- predict(fit.ctree, df.validate, type="response") ctree.perf <- table(df.validate$class, ctree.pred,dnn=c("Actual", "Predicted")) ctree.perf 注: 值得注意的是,对于条件推断树来说,剪枝不是必需的,其生成过程相对更自动化一些。另外,party包也提供了许多图像参数。 下图展示了一棵条件推断树,每个节点中的阴影区域代表这个节点对应的恶性肿瘤比例。 predict()函数 用来对验证集中的观测点分类。结果给出了实际类别与预测类别的交叉表。整体来看,条件决策树中验证集中的准确率是95.2381%,经典决策树的准确率是96%。 尽管在这个例子中,传统决策树和条件推断树的准确度比较相似,但有时它们可能会很不一样。 · rpart包的处理方式: 首先对所有自变量和所有分割点进行评估,最佳的选择是使分割后组内的数据更为"一致"(pure)。这里的"一致"是指组内数据的因变量取值变异较小。 rpart包对这种"一致"性的默认度量是Gini值("吉尼系数"也可以用来衡量样本数据集的纯度。 吉尼系数越小,则表示该节点可以有效的把同一类聚集在一起。反之,分割后的类别越杂乱,则吉尼系数会越大。 在决策树生成时,当用到吉尼系数这个方法时,通常会计算每一个特征的吉尼系数,接着比较各个特征下的吉尼系数,系数越小的特征越适合先作为内部节点。)。 确定停止划分的参数有很多(参见rpart.control),确定这些参数是非常重要而微妙的,因为划分越细,模型越复杂,越容易出现过度拟合的情况,而划分过粗,又会出现拟合不足。 处理这个问题通常是使用"剪枝"(prune)方法。即先建立一个划分较细较为复杂的树模型,再根据交叉检验(Cross-Validation)的方法来估计不同"剪枝"条件下,各模型的误差,选择误差最小的树模型。 · party包的处理方式: 它的背景理论是"条件推断决策树"(conditional inference trees):它根据统计检验来确定自变量和分割点的选择。 即先假设所有自变量与因变量均独立。再对它们进行卡方独立检验,检验P值小于阀值的自变量加入模型,相关性最强的自变量作为第一次分割的自变量。自变量选择好后,用置换检验来选择分割点。 用party包建立的决策树不需要剪枝,因为阀值就决定了模型的复杂程度。所以如何决定阀值参数是非常重要的(参见ctree_control)。较为流行的做法是取不同的参数值进行交叉检验,选择误差最小的模型参数。2023-06-11 09:49:371
决策树法的计算题
决策树幅书法的计算题,你可以在手机上装的这一帮app软件拍照上传,就能找到解决打。2023-06-11 09:49:462
管理学第五章决策树的问题
你给的这题属于不确定性决策中的已知概率型, 先算出每个决策圆点的期望,然后比较大小就可而已了.如题::解:: 点1 = 3000 * 0.7 + 0.3 * (-200) = 2100-60=1500(万元)点2 = 2000 * 0.7 + 0.3 * 500 = 1400 + 150 = 1550 (万元)题中未给出 紧急安装 和 加班与外包安装的成本,所以选择收益高的加班外包!!! 如果给出成本还有考虑在内.2023-06-11 09:50:142
财务决策的分类和常用方法有哪些
财务决策方法是指理财者按照理财目标的总体要求,采用专门的手段,对多个备选方案进行比较分析后,从中选出最佳的方案的一种方法。下面我就来和你一起看看财务决策的分类和常用方法有哪些。 财务决策方法的分类 财务决策的方法主要分为两大类:即计量决策法和主观决策法。 1.计量决策法。这是指建立在数学工具基础上的决策方法。如筹资决策主要考虑尽量取低利息的贷款。这样企业可以在经营利润一定的情况下,获得更好效益。它可用下式表示: 企业所得实际利润=企业所得经营利润-利息 决策方法可采用矩阵法和决策树法。 2.主观决策法。这是指直接凭借人们的经验、知识和能力,在经营决策的各个阶段,根据已知情况和现有资料,提出决策目标、方案、参数,并作出相应的评估和选择的决策方法。此外,还可以运用滚动计划方法,按旬、月、季度进行决策。 常用的财务决策方法 (一)优选对比法 优选对比法是把各种不同方案排列在一起,按其经济效益的好坏进行优选对比,进而作出决策的方法。它是财务决策的基本方法,按对比方式可分为总量对比法、差量对比法和指标对比法等。总量对比法是将不同方案的总收入、总成本或总利润进行对比,以确定最佳方案的一种方法。差量对比法是将不同方案的预期收入之间的差额与预期成本之间的差额进行比较,求出差量利润,进而作出决策的方法。指标对比法是把反映不同方案经济效益的指标进行对比来确定最优方案的方法。 (二)数学微分法 数学微分法是根据边际分析原理,运用数学上的微分方法,对具有曲线联系的极值问题进行求解,进而确定最优方案的一种决策方法。凡以成本为差别标准时,一般求最小值:凡以收入或利润为差别标准时,一般是求最大值。这种方法常被用于最优资本结构决策、现金最佳余额决策、存货的经济批量决策等。 (三)线性规划法 线性规划法是解决多变量最优决策的方法,是在各种相互关联的多变量约束条件下,解决或规划一个对象的线性目标函数最优的问题,即给予一定数量的人力、物力和资源,如何应用才能得到最大经济效益。其中,目标函数是决策者要求达到目标的数学表达式,用一个极大值或极小值表示;约束条件是指实现目标的能力资源和内部条件的限制因素,用一组等式或不等式来表示。在有若干个约束条件(如资金供应、人工工时数量、产品销售数量)的情况下,这种方法能帮助管理人员对合理组织人力、物力、财力等作出最优决策。 (四)概率决策法 概率决策法又称决策树法,是进行风险决策的一种主要方法。它利用了概率论的原理,并且利用一种树形图作为分析工具。其基本原理是用决策点代表决策问题,用方案分枝代表可供选择的方案,用概率分枝代表方案可能出现的各种结果,经过对各种方案在各种结果条件下损益值的计算比较,为决策者提供依据。 (五)损益决策法2023-06-11 09:50:201
决策树与随机森林
决策树(decision tree)是一种基本的分类与回归方法,本文主要讨论用于分类的决策树。决策树模型呈树形结构,在分类问题中,表示基于特征对实例进行分类的过程。它可以认为是if-then规则的集合,也可以认为是定义在特征空间与类空间上的条件概率分布,其主要优点是模型具有可读性,分类速度快。决策树学习通常包括三个步骤:特征选择,决策树的生成和决策树的修剪。而随机森林则是由多个决策树所构成的一种分类器,更准确的说,随机森林是由多个弱分类器组合形成的强分类器。 本文将先对决策树特征选择的算法ID3, C4.5和CART进行计算,然后介绍决策树的剪枝策略,最后介绍随机森林。 在 信息论 中, 条件熵 描述了在已知第二个随机变量X的前提下,随机变量Y的信息熵还剩多少。基于X条件的Y的信息熵,用H(Y|X)表示。 如果H(Y|X=x)为变数Y在变数X取特定值x条件下的熵,那么H(Y|X)就是H(Y|X=x)在X取遍所有可能的x后取平均的结果。 首先需要知道的是熵的公式: 条件熵的推导公式如下: 决策树分类从根节点开始,对实例的某一特征进行测试,根据测试结果将实例分配到其子节点。每一个子节点对应着该特征的一个取值。如此递归地对实例进行测试并分配,直至达到叶节点,最后将实例分配到叶节点的类中。 决策树学习的算法通常是一个递归地选择最优特征,并根据该特征对训练数据进行划分。如果利用一个特征进行分类的结果与随机分类的结果没有很大差别,则称这个特征是没有分类能力的。通常特征选择的准则是信息增益或信息增益比,特征选择的常用算法有ID3,C4.5,CART。 信息增益表示得知特征A的信息而使得数据X的信息的不确定性的程度。 信息增益定义:特征A对训练数据集D的信息增益g(D, A)定义为集合D的经验熵H(D)与给定特征A的条件下D的经验条件熵H(D|A)之差,即: 根据信息增益选择特征的方法是:对于给定数据集D,计算其每个特征的信息增益,并比较他们的大小,选择信息增益最大的特征。使用信息增益选择特征的算法称为C3算法。 信息增益值的大小是相对于训练数据集而言的,并没有绝对意义。在分类为题困难时,也就是说在训练数据集的经验熵大的时候,信息增益值会偏大。反之,信息增益值会偏小。因此,使用信息增益比可以对这一问题进行校正,这是另一种特征选择算法,也即C4.5算法。 信息增益比定义 :特征A对训练数据集D的信息增益比g R (D, A)定义为其信息增益g(D, A)与训练集D的经验熵之比: 基尼指数是CART分类树用来选择最优特征的算法,同时决定了该特征的最优二值切分点。 定义:假设有K个类,样本点属于第k类的概率为p k ,则概率分布的基尼指数定义: 对于给定的样本集合D,其基尼指数为: 一个特征的信息增益/基尼系数越大,表明特征对样本的熵减少的能力更强,这个特征使得数据由不确定性变成确定性的能力越强。 决策树生成算法产生的决策树对于训练数据的分类往往很准确,但对于未知数据的分类却没有这么准确,即容易出现过拟合情况。解决的办法便是考虑树的复杂度,对已生成的树进行剪枝简化。 决策树的剪枝往往通过极小化决策树整体的损失函数来实现。 设树T的叶节点个数为|T|,t是树T的叶节点,该叶节点有N t 个样本点,其中k类的样本点有N tk 个,k=1,2,3...K, H t (T)为叶节点t上的经验熵, α>=0为参数,则决策树学习的损失函数可以定义为: 损失函数中C(T)表示模型对训练数据的预测误差,也即拟合程度。|T|表示模型复杂度,即节点越多模型越复杂,使用参数α来控制两者之间的影响。α越大模型越简单,对数据拟合差;α越小模型越复杂,对数据拟合性好;α=0时则不考虑模型复杂度。 因此,剪枝就是在确定了α时,选择损失函数最小的树。 参考: 《统计学习方法》李航 机器学习. 邹博2023-06-11 09:50:271
决策树是干什么用的
可以用来分类,也可以预测。要看用它来具体解决什么问题啦。我是做CRM这块儿的,用决策树可以进行客户群体分类/预测。2023-06-11 09:50:532
如何画决策树
基本定义 决策树算法是一种逼近离散函数值的方法。编辑本段算法优点 决策树算法的优点如下: (1)分类精度高; (2)成的模式简单; (3)对噪声数据有很好的健壮性。 因而是目前应用最为广泛的归纳推理算法之一,在数据挖掘中受到研究者的广泛关注。编辑本段基本原理 决策树方法最早产生于上世纪60年代,到70年代末。由J Ross Quinlan提出了ID3算法,此算法的目的在于减少树的深度。但是忽略了叶子数目的研究。C4.5算法在ID3算法的基础上进行了改进,对于预测变量的缺值处理、剪枝技术、派生规则等方面作了较大改进,既适合于分类问题,又适合于回归问题。编辑本段构造方法 决策树构造的输入是一组带有类别标记的例子,构造的结果是一棵二叉树或多叉树。二叉树的内部节点(非叶子节点)一般表示为一个逻辑判断,如形式为a=aj的逻辑判断,其中a是属性,aj是该属性的所有取值:树的边是逻辑判断的分支结果。多叉树(ID3)的内部结点是属性,边是该属性的所有取值,有几个属性值就有几条边。树的叶子节点都是类别标记。 由于数据表示不当、有噪声或者由于决策树生成时产生重复的子树等原因,都会造成产生的决策树过大。因此,简化决策树是一个不可缺少的环节。寻找一棵最优决策树,主要应解决以下3个最优化问题:①生成最少数目的叶子节点;②生成的每个叶子节点的深度最小;③生成的决策树叶子节点最少且每个叶子节点的深度最小。2023-06-11 09:51:025
什么是决策树?
决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。Entropy = 系统的凌乱程度,使用算法ID3, C4.5和C5.0生成树算法使用熵。这一度量是基于信息学理论中熵的概念。决策树是一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。分类树(决策树)是一种十分常用的分类方法。他是一种监管学习,所谓监管学习就是给定一堆样本,每个样本都有一组属性和一个类别,这些类别是事先确定的,那么通过学习得到一个分类器,这个分类器能够对新出现的对象给出正确的分类。这样的机器学习就被称之为监督学习。机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。从数据产生决策树的机器学习技术叫做决策树学习, 通俗说就是决策树。一个决策树包含三种类型的节点:决策节点:通常用矩形框来表示机会节点:通常用圆圈来表示终结点:通常用三角形来表示决策树学习也是资料探勘中一个普通的方法。在这里,每个决策树都表述了一种树型结构,它由它的分支来对该类型的对象依靠属性进行分类。每个决策树可以依靠对源数据库的分割进行数据测试。这个过程可以递归式的对树进行修剪。 当不能再进行分割或一个单独的类可以被应用于某一分支时,递归过程就完成了。另外,随机森林分类器将许多决策树结合起来以提升分类的正确率。决策树同时也可以依靠计算条件概率来构造。决策树如果依靠数学的计算方法可以取得更加理想的效果。 数据库已如下所示: (x, y) = (x1, x2, x3…, xk, y)相关的变量 Y 表示我们尝试去理解,分类或者更一般化的结果。 其他的变量x1, x2, x3 等则是帮助我们达到目的的变量。2023-06-11 09:52:481
决策树是什么?
决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。Entropy = 系统的凌乱程度,使用算法ID3, C4.5和C5.0生成树算法使用熵。这一度量是基于信息学理论中熵的概念。决策树是一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。分类树(决策树)是一种十分常用的分类方法。他是一种监管学习,所谓监管学习就是给定一堆样本,每个样本都有一组属性和一个类别,这些类别是事先确定的,那么通过学习得到一个分类器,这个分类器能够对新出现的对象给出正确的分类。这样的机器学习就被称之为监督学习。机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。从数据产生决策树的机器学习技术叫做决策树学习, 通俗说就是决策树。一个决策树包含三种类型的节点:决策节点:通常用矩形框来表示机会节点:通常用圆圈来表示终结点:通常用三角形来表示决策树学习也是资料探勘中一个普通的方法。在这里,每个决策树都表述了一种树型结构,它由它的分支来对该类型的对象依靠属性进行分类。每个决策树可以依靠对源数据库的分割进行数据测试。这个过程可以递归式的对树进行修剪。 当不能再进行分割或一个单独的类可以被应用于某一分支时,递归过程就完成了。另外,随机森林分类器将许多决策树结合起来以提升分类的正确率。决策树同时也可以依靠计算条件概率来构造。决策树如果依靠数学的计算方法可以取得更加理想的效果。 数据库已如下所示: (x, y) = (x1, x2, x3…, xk, y)相关的变量 Y 表示我们尝试去理解,分类或者更一般化的结果。 其他的变量x1, x2, x3 等则是帮助我们达到目的的变量。2023-06-11 09:52:551
什么是决策树?
"机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。从数据产生决策树的机器学习技术叫做决策树学习, 通俗说就是决策树。一个决策树包含三种类型的节点:决策节点:通常用矩形框来表示机会节点:通常用圆圈来表示终结点:通常用三角形来表示决策树学习也是资料探勘中一个普通的方法。在这里,每个决策树都表述了一种树型结构,它由它的分支来对该类型的对象依靠属性进行分类。每个决策树可以依靠对源数据库的分割进行数据测试。这个过程可以递归式的对树进行修剪。 当不能再进行分割或一个单独的类可以被应用于某一分支时,递归过程就完成了。另外,随机森林分类器将许多决策树结合起来以提升分类的正确率。决策树同时也可以依靠计算条件概率来构造。决策树如果依靠数学的计算方法可以取得更加理想的效果。 数据库已如下所示: (x, y) = (x1, x2, x3…, xk, y)相关的变量 Y 表示我们尝试去理解,分类或者更一般化的结果。 其他的变量x1, x2, x3 等则是帮助我们达到目的的变量。"2023-06-11 09:53:051
如何用matlab实现决策树多叉树
决策树是数学、计算机科学与管理学中经常使用的工具.决策论中 (如风险管理),决策树(Decision tree)由一个决策图和可能的结果(包括资源成本和风险)组成,用来创建到达目标的规划.决策树建立并用来辅助决策,是一种特殊的树结构.决策树是一个利用像树一样的图形或决策模型的决策支持工具,包括随机事件结果,资源代价和实用性.它是一个算法显示的方法.决策树经常在运筹学中使用,特别是在决策分析中,它帮助确定一个能最可能达到目标的策略.如果在实际中,决策不得不在没有完备知识的情况下被在线采用,一个决策树应该平行概率模型作为最佳的选择模型或在线选择模型算法.决策树的另一个使用是作为计算条件概率的描述性手段. 决策树提供了一种展示类似在什么条件下会得到什么值这类规则的方法.比如,在贷款申请中,要对申请的风险大小做出判断,图是为了解决这个问题而建立的一棵决策树,从中我们可以看到决策树的基本组成部分:决策节点、分支和叶子. 决策树中最上面的节点称为根节点,是整个决策树的开始.本例中根节点是“收入>¥40,000”,对此问题的不同回答产生了“是”和“否”两个分支. 决策树的每个节点子节点的个数与决策树在用的算法有关.如CART算法得到的决策树每个节点有两个分支,这种树称为二叉树.允许节点含有多于两个子节点的树称为多叉树.决策树的内部节点(非树叶节点)表示在一个属性上的测试. 每个分支要么是一个新的决策节点,要么是树的结尾,称为叶子.在沿着决策树从上到下遍历的过程中,在每个节点都会遇到一个问题,对每个节点上问题的不同回答导致不同的分支,最后会到达一个叶子节点.这个过程就是利用决策树进行分类的过程,利用几个变量(每个变量对应一个问题)来判断所属的类别(最后每个叶子会对应一个类别).例如, 假如负责借贷的银行官员利用上面这棵决策树来决定支持哪些贷款和拒绝哪些贷款,那么他就可以用贷款申请表来运行这棵决策树,用决策树来判断风险的大小.“年收入>¥40,00”和“高负债”的用户被认为是“高风险”,同时“收入5年”的申请,则被认为“低风险”而建议贷款给他/她. 数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测(就像上面的银行官员用他来预测贷款风险).常用的算法有CHAID、 CART、ID3、C4.5、 Quest 和C5.0. 建立决策树的过程,即树的生长过程是不断的把数据进行切分的过程,每次切分对应一个问题,也对应着一个节点.对每个切分都要求分成的组之间的“差异”最大. 对决策树算法的研究开发主要以国外为主,现有的涉及决策树算法的软件有SEE5、Weka、spss等,在国内也有不少人开展了对决策树算法的构建及应用研究,如中国测绘科学研究院在原有C5.0算法的基础上进行了算法重构,将其用于地表覆盖遥感影像分类中.2023-06-11 09:53:201
什么叫决策树啊?
决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。Entropy = 系统的凌乱程度,使用算法ID3, C4.5和C5.0生成树算法使用熵。这一度量是基于信息学理论中熵的概念。决策树是一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。分类树(决策树)是一种十分常用的分类方法。他是一种监管学习,所谓监管学习就是给定一堆样本,每个样本都有一组属性和一个类别,这些类别是事先确定的,那么通过学习得到一个分类器,这个分类器能够对新出现的对象给出正确的分类。这样的机器学习就被称之为监督学习。机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。从数据产生决策树的机器学习技术叫做决策树学习, 通俗说就是决策树。一个决策树包含三种类型的节点:决策节点:通常用矩形框来表示机会节点:通常用圆圈来表示终结点:通常用三角形来表示决策树学习也是资料探勘中一个普通的方法。在这里,每个决策树都表述了一种树型结构,它由它的分支来对该类型的对象依靠属性进行分类。每个决策树可以依靠对源数据库的分割进行数据测试。这个过程可以递归式的对树进行修剪。 当不能再进行分割或一个单独的类可以被应用于某一分支时,递归过程就完成了。另外,随机森林分类器将许多决策树结合起来以提升分类的正确率。决策树同时也可以依靠计算条件概率来构造。决策树如果依靠数学的计算方法可以取得更加理想的效果。 数据库已如下所示: (x, y) = (x1, x2, x3…, xk, y)相关的变量 Y 表示我们尝试去理解,分类或者更一般化的结果。 其他的变量x1, x2, x3 等则是帮助我们达到目的的变量。2023-06-11 09:53:271
什么是决策树?
"机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。从数据产生决策树的机器学习技术叫做决策树学习, 通俗说就是决策树。一个决策树包含三种类型的节点:决策节点:通常用矩形框来表示机会节点:通常用圆圈来表示终结点:通常用三角形来表示决策树学习也是资料探勘中一个普通的方法。在这里,每个决策树都表述了一种树型结构,它由它的分支来对该类型的对象依靠属性进行分类。每个决策树可以依靠对源数据库的分割进行数据测试。这个过程可以递归式的对树进行修剪。 当不能再进行分割或一个单独的类可以被应用于某一分支时,递归过程就完成了。另外,随机森林分类器将许多决策树结合起来以提升分类的正确率。决策树同时也可以依靠计算条件概率来构造。决策树如果依靠数学的计算方法可以取得更加理想的效果。 数据库已如下所示: (x, y) = (x1, x2, x3…, xk, y)相关的变量 Y 表示我们尝试去理解,分类或者更一般化的结果。 其他的变量x1, x2, x3 等则是帮助我们达到目的的变量。"2023-06-11 09:53:371
决策树的画法
机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。从数据产生决策树的机器学习技术叫做决策树学习, 通俗说就是决策树。一个决策树包含三种类型的节点: 决策节点:通常用矩形框来表示 机会节点:通常用圆圈来表示 终结点:通常用三角形来表示 决策树学习也是资料探勘中一个普通的方法。在这里,每个决策树都表述了一种树型结构,它由它的分支来对该类型的对象依靠属性进行分类。每个决策树可以依靠对源数据库的分割进行数据测试。这个过程可以递归式的对树进行修剪。 当不能再进行分割或一个单独的类可以被应用于某一分支时,递归过程就完成了。另外,随机森林分类器将许多决策树结合起来以提升分类的正确率。决策树同时也可以依靠计算条件概率来构造。决策树如果依靠数学的计算方法可以取得更加理想的效果。 数据库已如下所示: (x, y) = (x1, x2, x3…, xk, y)相关的变量 Y 表示我们尝试去理解,分类或者更一般化的结果。 其他的变量x1, x2, x3 等则是帮助我们达到目的的变量。2023-06-11 09:53:451
用决策树解题怎么弄的?
决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。由于这种决策分支画成图形很像一棵树的枝干,故称决策树。在机器学习中,决策树是一个预测模型,他代表的是对象属性与对象值之间的一种映射关系。Entropy = 系统的凌乱程度,使用算法ID3, C4.5和C5.0生成树算法使用熵。这一度量是基于信息学理论中熵的概念。决策树是一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。分类树(决策树)是一种十分常用的分类方法。他是一种监管学习,所谓监管学习就是给定一堆样本,每个样本都有一组属性和一个类别,这些类别是事先确定的,那么通过学习得到一个分类器,这个分类器能够对新出现的对象给出正确的分类。这样的机器学习就被称之为监督学习。机器学习中,决策树是一个预测模型;他代表的是对象属性与对象值之间的一种映射关系。树中每个节点表示某个对象,而每个分叉路径则代表的某个可能的属性值,而每个叶结点则对应从根节点到该叶节点所经历的路径所表示的对象的值。决策树仅有单一输出,若欲有复数输出,可以建立独立的决策树以处理不同输出。数据挖掘中决策树是一种经常要用到的技术,可以用于分析数据,同样也可以用来作预测。从数据产生决策树的机器学习技术叫做决策树学习, 通俗说就是决策树。一个决策树包含三种类型的节点:决策节点:通常用矩形框来表示机会节点:通常用圆圈来表示终结点:通常用三角形来表示决策树学习也是资料探勘中一个普通的方法。在这里,每个决策树都表述了一种树型结构,它由它的分支来对该类型的对象依靠属性进行分类。每个决策树可以依靠对源数据库的分割进行数据测试。这个过程可以递归式的对树进行修剪。 当不能再进行分割或一个单独的类可以被应用于某一分支时,递归过程就完成了。另外,随机森林分类器将许多决策树结合起来以提升分类的正确率。决策树同时也可以依靠计算条件概率来构造。决策树如果依靠数学的计算方法可以取得更加理想的效果。 数据库已如下所示:(x, y) = (x1, x2, x3…, xk, y)相关的变量 Y 表示我们尝试去理解,分类或者更一般化的结果。 其他的变量x1, x2, x3 等则是帮助我们达到目的的变量。希望我能帮助你解疑释惑。2023-06-11 09:54:051
全基因组选择的模型汇总(转载)
在介绍GS模型之前,我们有必要先来了解一下混合线性模型(Mixed Linear Model,MLM)。混合线性模型是一种方差分量模型,既然是线性模型,意味着各量之间的关系是线性的,可以应用叠加原理,即几个不同的输入量同时作用于系统的响应,等于几个输入量单独作用的响应之和(公式1)。 既然是混合效应模型,则既含有固定效应,又含有随机效应。所谓固定效应是指所有可能出现的等级或水平是已知且能观察的,如性别、年龄、品种等。所谓随机效应是指随机从总体中抽取样本时可能出现的水平,是不确定的,如个体加性效应、母体效应等(公式2)。 式中 y 为观测值向量; β 为固定效应向量; μ 为随机效应向量,服从均值向量为0、方差协方差矩阵为G的正态分布 μ ~ N(0,G) ; X 为固定效应的关联矩阵; Z 为随机效应的关联矩阵;U0001d486为随机误差向量,其元素不必为独立同分布,即 U0001d486 ~ N(0,R) 。同时假定 Cov(G,R)=0 ,即G与R间无相关关系, y 的方差协方差矩阵变为 Var(y)=ZGZ+R 。若 Zμ 不存在,则为固定效应模型。若 Xβ 不存在,则为随机效应模型。 在传统的线性模型中,除线性关系外,响应变量还有正态性、独立性和方差齐性的假定。混合线性模型既保留了传统线性模型中的表型 正态性 分布假定条件,又对独立性和方差齐性不作要求,从而扩大了适用范围,目前已广泛应用于基因组选择。 很早以前C.R.Henderson就在理论上提出了最佳线性无偏预测(Best Linear Unbiased Prediction,BLUP)的统计方法,但由于计算技术滞后限制了应用。直到上世纪70年代中期,计算机技术的发展为BLUP在育种中的应用提供了可能。BLUP结合了最小二乘法的优点,在协方差矩阵已知的情况下,BLUP是分析动植物育种目标性状理想的方法,其名称含义如下: 在混合线性模型中,BLUP是对随机效应中随机因子的预测,BLUE(Best Linear Unbiased Estimation)则是对固定效应中的固定因子的估算。在同一个方程组中既能对固定效应进行估计,又能对随机遗传效应进行预测。 BLUP方法最初应用在动物育种上。传统的动物模型是基于系谱信息构建的亲缘关系矩阵(又称A矩阵)来求解混合模型方程组(Mixed Model Equations,MME)的,因此称之ABLUP。Henderson提出的MME如下所示: 式中X为固定效应矩阵,Z为随机效应矩阵,Y为观测值矩阵。其中R和G: 其中A为亲缘关系矩阵,因此可转化公式为: 进一步可转化为: 式中, X、Y、Z 矩阵均已知,亲缘关系逆矩阵A -1 可计算得到,k值计算如下: 通过求解方程组,计算残差和加性方差的方差组分,即可得到固定因子效应值 (BLUE)和随机因子效应值 (BLUP)。 作为传统BLUP方法,ABLUP完全基于系谱信息来构建亲缘关系矩阵,进而求得育种值,此方法在早期动物育种中应用较多,现在已基本不单独使用。 VanRaden于2008年提出了基于G矩阵的GBLUP(Genomic Best Linear unbiased prediction)方法,G矩阵由所有SNP标记构建,公式如下: 式中 p i 表示位点i的最小等位基因频率,Z表示个体基因型矩阵。 GBLUP通过构建基因组关系矩阵G代替基于系谱信息构建的亲缘关系矩阵A,进而直接估算个体育种值。 GBLUP求解过程同传统BLUP方法,仅仅在G矩阵构建不同。除了VanRaden的基因组关系构建G矩阵外,还有其他G矩阵构建方法,但应用最多的还是VanRaden提出的方法。如Yang等提出的按权重计算G矩阵: Goddard等提出的基于系谱A矩阵计算G矩阵: 目前GBLUP已经广泛应用于动植物育种中,并且因为它的高效、稳健等优点,现在仍饱受青睐。GBLUP假设所有标记对G矩阵具有相同的效应,而在实际基因组范围中只有少量标记具有主效应,大部分标记效应较小,因此GBLUP仍有很大的改进空间。 在动物育种中,由于各种各样的原因导致大量具有系谱记录和表型信息的个体没有基因型,单步法GBLUP(single-step GBLUP,ssGBLUP)就是解决育种群体中无基因型个体和有基因型个体的基因组育种值估计问题。 ssGBLUP将传统BLUP和GBLUP结合起来,即把基于系谱信息的亲缘关系矩阵A和基因组关系矩阵G进行整合,建立新的关系矩阵H,达到同时估计有基因型和无基因型个体的育种值。 H矩阵构建方法: 式中 A、G 分别为A矩阵和G矩阵,下标1、2分别为无基因型个体和有基因型个体。由于G为奇异矩阵时无法求逆,VanRaden又提出将G定义为 G w = (1-w)G + wA 22 ,则H逆矩阵可转化为: 式中w为加权因子,即多基因遗传效应所占比例。 构建H矩阵后,其求解MME过程也是与传统BLUP一样: ssBLUP由于基因分型个体同时含有系谱记录和表型数据,相对于GBLUP往往具有更高的准确性。该方法已成为当前动物育种中最常用的动物模型之一。在植物育种中,往往缺乏较全面的系谱信息,群体中个体的基因型也容易被测定,因此没有推广开来。 如果把GBLUP中构建协变量的个体亲缘关系矩阵换成SNP标记构成的关系矩阵,构建模型,然后对个体进行预测,这就是RRBLUP(Ridge Regression Best Linear Unbiased Prediction)的思路。 为什么不直接用最小二乘法?最小二乘法将标记效应假定为 固定效应 ,分段对所有SNP进行回归,然后将每段中显著的SNP效应相加得到个体基因组育种值。该方法只考虑了少数显著SNP的效应,很容易导致多重共线性和过拟合。 RRBLUP是一种改良的最小二乘法,它能估计出所有SNP的效应值。该方法将标记效应假定为 随机效应 且服从正态分布,利用线性混合模型估算每个标记的效应值,然后将每个标记效应相加即得到个体估计育种值。 一般而言,基因型数据中标记数目远大于样本数(p>>n)。RRBLUP因为是以标记为单位进行计算的,其运行时间相比GBLUP更长,准确性相当。( PS :这个情况在各个国家慢慢改变,尤其美国,已经有超过4百万牛的芯片数据,所以其可能是以后的发展方向之一) GBLUP是直接法的代表,它把个体作为随机效应,参考群体和预测群体遗传信息构建的亲缘关系矩阵作为方差协方差矩阵,通过迭代法估计方差组分,进而求解混合模型获取待预测个体的估计育种值。RRBLUP是间接法的代表,它首先计算每个标记效应值,再对效应值进行累加,进而求得育种值。下图比较了两类方法的异同: 直接法估计 ,间接法估计标记效应之和 M 。当K=M"M且标记效应g服从独立正态分布(如上图所示)时,两种方法估计的育种值是一样的,即 = M 。 基于BLUP理论的基因组选择方法假定所有标记都具有相同的遗传方差,而实际上在全基因组范围内只有少数SNP有效应,且与影响性状的QTL连锁,大多数SNP是无效应的。当我们将标记效应的方差假定为某种先验分布时,模型变成了贝叶斯方法。常见的贝叶斯方法也是Meuwissen提出来的(就是提出GS的那个人),主要有BayesA、BayesB、BayesC、Bayesian Lasso等。 BayesA假设每个SNP都有效应且服从正态分布,效应方差服从尺度逆卡方分布。BayesA方法事先假定了两个与遗传相关的参数,自由度v和尺度参数S。它将Gibbs抽样引入到马尔科夫链蒙特卡洛理论(MCMC)中来计算标记效应。 BayesB假设少数SNP有效应,且效应方差服从服从逆卡方分布,大多数SNP无效应(符合全基因组实际情况)。BayesB方法的标记效应方差的先验分布使用混合分布,难以构建标记效应和方差各自的完全条件后验分布,因此BayesB使用Gibbs和MH(Metropolis-Hastings)抽样对标记效应和方差进行联合抽样。 BayesB方法在运算过程中引入一个参数π。假定标记效应方差为0的概率为π,服从逆卡方分布的概率为1-π,当π为1时,所有SNP都有效应,即和BayesA等价。当遗传变异受少数具有较大影响的QTL控制时,BayesB方法准确性较高。 BayesB中的参数π是人为设定的,会对结果带来主观影响。BayesC、BayesCπ、BayesDπ等方法对BayesB进行了优化。BayesC方法将π作为未知参数,假定其服从U(0,1)的均匀分布,并假设有效应的SNP的效应方差不同。BayesCπ方法在BayesC的基础上假设SNP效应方差相同,并用Gibbs抽样进行求解。BayesDπ方法对未知参数π和尺度参数S进行计算,假设S的先验分布和后验分布均服从(1,1)分布,可直接从后验分布中进行抽样。 下图较为形象地说明了不同方法的标记效应方差分布: Bayesian Lasso(Least absolute shrinkage and selection operator)假设标记效应方差服从指数分布的正态分布,即拉普拉斯(Laplace)分布。其与BayesA的区别在于标记效应服从的分布不同,BayesA假设标记效应服从正态分布。Laplace分布可允许极大值或极小值以更大概率出现。 从以上各类贝叶斯方法可看出,贝叶斯方法的重点和难点在于如何对超参的先验分布进行合理的假设。 Bayes模型相比于BLUP方法往往具有更多的待估参数,在提高预测准确度的同时带来了更大的计算量。MCMC需要数万次的迭代,每一次迭代需要重估所有标记效应值,该过程连续且不可并行,需消耗大量的计算时间,限制了其在时效性需求较强的动植物育种实践中的应用。 为提高运算速度和准确度,很多学者对Bayes方法中的先验假设和参数进行优化,提出了fastBayesA、BayesSSVS、fBayesB、emBayesR、EBL、BayesRS、BayesTA等。但目前最常用的Bayes类方法还是上述的几种。 各种模型的预测准确度较大程度的取决于其模型假设是否适合所预测表型的遗传构建。一般而言,调参后贝叶斯方法的准确性比BLUP类方法要略高,但运算速度和鲁棒性不如BLUP。因此,我们应根据自身需求权衡利弊进行合理选择。( PS :在动物育种中,实践生产中使用的为BLUP方法) 除了基于BLUP和Bayes理论的参数求解方法外,基因组选择还有半参数(如RKHS,见下篇)和非参数,如机器学习(Machine Learning, ML)等方法。机器学习是人工智能的一个分支,其重点是通过将高度灵活的算法应用于观察到的个体( 标记的数据 )的已知属性( 特征 )和结果来预测未观察到的个体( 未标记的数据 )的结果。结果可以是连续的,分类的或二元的。在动植物育种中, 标记的数据 对应于具有基因型和表型的训练群体,而 未标记的数据 对应于测试群体,用于预测的 特征 是SNP基因型。 相比于传统统计方法,机器学习方法具有诸多优点: 支持向量机(Support Vector Machine,SVM)是典型的非参数方法,属于监督学习方法。它既可解决分类问题,又可用于回归分析。SVM基于结构风险最小化原则,兼顾了模型拟合和训练样本的复杂性,尤其是当我们对自己的群体数据不够了解时,SVM或许是基因组预测的备选方法。 SVM的基本思想是求解能够正确划分训练数据集并且几何间隔最大的分离超平面。在支持向量回归(Support Vector Regression,SVR)中,通常使用近似误差来代替像SVM中那样的最佳分离超平面和支持向量之间的余量。假设ε为不敏感区域的线性损失函数,当测量值和预测值小于ε时,误差等于零。SVR的目标就是同时最小化经验风险和权重的平方范数。也就是说,通过最小化经验风险来估计超平面。 下图1比较了SVM中回归(图A)和分类(图B)的差别。式中ξ和ξ*为松弛变量,C为用户定义的常数,W为权重向量范数,u03d5表示特征空间映射。 当SVM用于预测分析时,高维度的大型数据集会给计算带来极大的复杂性,核函数的应用能大大简化内积,从而解决维数灾难。因此,核函数的选择(需要考虑训练样本的分布特点)是SVM预测的关键。目前最常用的核函数有:线性核函数、高斯核函数(RBF)和多项式核函数等。其中, RBF具有广泛的适应性,能够应用于训练样本(具有适当宽度参数)的任何分布。尽管有时会导致过拟合问题,但它仍是使用最广泛的核函数。 集成学习(Ensemble Learning)也是机器学习中最常见的算法之一。它通过一系列学习器进行学习,并使用某种规则把各个学习结果进行整合,从而获得比单个学习器更好的效果。通俗地说,就是一堆弱学习器组合成一个强学习器。在GS领域,随机森林(Random Forest,RF)和梯度提升机(Gradient Boosting Machine,GBM)是应用较多的两种集成学习算法。 RF是一种基于决策树的集成方法,也就是包含了多个决策树的分类器。在基因组预测中,RF同SVM一样,既可用做分类模型,也可用做回归模型。用于分类时,注意需要事先将群体中个体按表型值的高低进行划分。RF算法可分为以下几个步骤: 最后,RF会结合分类树或回归树的输出进行预测。在分类中,通过计算投票数(通常使用每个决策树一票)并分配投票数最高的类别来预测未观察到的类别。在回归中,通过对ntree输出进行求平均。 有两个影响RF模型结果的重要因素:一是每个节点随机取样的协变量数量(mtry,即SNP数目)。构建回归树时,mtry默认为p/3(p是构建树的预测数量),构建分类树时,mtry为[图片上传失败...(image-10f518-1612450396027)] ;二是决策树的数量。很多研究表明树并非越多越好,而且构树也是非常耗时的。在GS应用于植物育种中,通常将RF的ntree设置在500-1000之间。 当GBM基于决策树时,就是梯度提升决策树(Gradient Boosting Decision Tree,GBDT),和RF一样,也是包含了多个决策树。但两者又有很多不同,最大的区别在于RF是基于bagging算法,也就是说它将多个结果进行投票或简单计算均值选出最终结果。而GBDT是基于boosting算法,它通过迭代的每一步构建弱学习器来弥补原模型的不足。GBM通过设置不同的损失函数来处理各类学习任务。 虽然已经有不少研究尝试了将多种经典机器学习算法应用于基因组预测中,但提升的准确性仍然有限,而且比较耗时。在无数的机器学习算法中,没有一种方法能够普遍地提高预测性,不同的应用程序及其最优方法和参数是不同的。相比于经典的机器学习算法,深度学习(Deep Learning,DL)或许是未来应用于基因组预测更好的选择。 传统的机器学习算法如SVM,一般是浅层模型。而深度学习除了输入和输出层,还含有多个隐藏层,模型结构的深度说明了它名字的含义。DL的实质是通过构建具有很多隐藏层的机器学习模型和海量的训练数据,来学习更有用的特征,从而最终提升分类或预测的准确性。DL算法的建模过程可简单分为以下三步: 在GS领域,研究较多的DL算法,包括多层感知器(Multi-layer Perceptron,MPL)、卷积神经网络(Convolutional neural network,CNN)和循环神经网络(Recurrent Neural Networks,RNN)等。 MLP是一种前馈人工神经网络(Artificial Neural Network,ANN)模型,它将输入的多个数据集映射到单一的输出数据集上。MLP包括至少一个隐藏层,如下图2中所示,除了一个输入层和一个输出层以外,还包括了4个隐藏层,每一层都与前一层的节点相连,并赋予不同权重(w),最后通过激活函数转化,将输入映射到输出端。 CNN是一类包含卷积计算且具有深度结构的前馈神经网络,通常具有表征学习能力,能够按其阶层结构对输入信息进行平移不变分类。CNN的隐藏层中包含卷积层(Convolutional layer)、池化层(Pooling layer)和全连接层(Fully-connected layer)三类,每一类都有不同的功能,比如卷积层的功能主要是对输入数据进行特征提取,池化层对卷积层特征提取后输出的特征图进行特征选择和信息过滤,而全连接层类似于ANN中的隐藏层,一般位于CNN隐藏层的最末端,并且只向全连接层传递信号。CNN结构如下图3所示。 需要注意的是,深度学习不是万能的。使用DL的前提是必须具有足够大和质量好的训练数据集,而且根据GS在动植物方面的研究表明,一些DL算法和传统的基因组预测方法相比,并没有明显的优势。不过有一致的证据表明, DL算法能更有效地捕获非线性模式。因此,DL能够根据不同来源的数据通过集成GS传统模型来进行辅助育种。总之,面对将来海量的育种数据,DL的应用将显得越来越重要。 以上是GS中常见的预测模型,不同分类方式可能会有所区别。这里再简单介绍一下上述未提及到但比较重要的方法,其中一些是上述三类方法的拓展。 再生核希尔伯特空间(Reproducing Kernel Hilbert Space,RKHS)是一种典型的半参数方法。它使用高斯核函数来拟合以下模型: 式中α是均值为0、协方差矩阵为 K h σ α 2 的多变量正态分布; ε ~ N(0,I n σ 2 ) ; K h 是代表个体相关性的核函数,等式中 d ij 是个体i和j根据基因型计算的欧氏距离的平方,平滑参数h定义为 d ij 均值的一半。 RKHS模型可采用贝叶斯框架的Gibbs抽样器,或者混合线性模型来求解。 GBLUP仍然是动植物育种中广泛应用的方法,它假定所有标记都具有相同的效应。但在实际情况中,任何与目标性状无关的标记用来估计亲缘关系矩阵都会稀释QTL的作用。很多研究对其进行改进,主要有几种思路: 沿用以上的思路,sBLUP(Settlement of Kinship Under Progressively Exclusive Relationship BLUP, SUPER BLUP)方法将TABLUP进一步细化为少数基因控制的性状,这样基因型关系矩阵的构建仅仅使用了与性状关联的标记。 如果要在亲缘关系矩阵中考虑群体结构带来的影响,可根据个体遗传关系的相似性将其分组,然后将压缩后的组别当做协变量,替换掉原来的个体,而组内个体的亲缘关系都是一样的。因此在构建基因组关系矩阵时,可用组别的遗传效应值来代替个体的值,用个体对应的组来进行预测,这就是cBLUP(Compressed BLUP)。 以上思路都提到了将已验证和新发现的位点整合到模型中,这些位点从何而来?最常见来源自然是全基因组关联分析(Genome Wide Association Study, GWAS)。GS和GWAS有着天然的联系,将GWAS的显著关联位点考虑进GS中,直接的好处是能维持多世代的预测能力,间接的好处是能增加已验证突变的数量。 下图比较了GWAS辅助基因组预测的各类方法比较。a表示分子标记辅助选择方法(MAS),只利用了少数几个主效位点;b表示经典GS方法,利用了全部标记,且标记效应相同;c对标记按权重分配;d将显著关联标记视为固定效应;e将显著关联标记视为另一个随机效应(有其自身的kernel derived);f将染色体划分为片段,每个片段构建的G矩阵分配为不同的随机效应。 GWAS辅助基因组预测的结果会比较复杂,单纯地考虑将关联信号纳入模型不一定都能提高准确性,具体表现应该和性状的遗传构建有关。 GS对遗传效应的估计有两种不同的策略。一是关注估计育种值,将加性效应从父母传递给子代。而非加性效应(如显性和上位性效应)与特定基因型相关,不能直接遗传。当估计方差组分时,非加性效应通常和随机的环境效应一起被当成噪音处理。另一种策略同时关注加性和非加性效应,通常用于杂种优势的探索。杂交优势一般认为是显性和上位性效应的结果,因此,如果非加性效应很明显,而你恰好将它们忽略了,遗传估计将会产生偏差。 杂种优势利用是植物育种,尤其是水稻、玉米等主粮作物的重要研究课题。将非加性遗传效应考虑进GS模型进行杂交种预测,也是当前基因组预测在作物育种中研究的热点之一。 当然,杂种优势效应的组成也是随性状而变化的,不同性状的基因组预测需要与鉴定杂优QTL位点结合起来。由于一般配合力GCA(加性效应的反映)和特殊配合力SCA(非加性效应的反映)可能来自不同遗传效应,所以预测杂交种F 1 应该分别考虑GCA和SCA。GCA模型可以基于GBLUP,重点在基因型亲缘关系矩阵构建。SCA模型有两种方法:一是将杂优SNP位点的Panel作为固定效应整合进GBLUP模型中;二是使用非线性模型,如贝叶斯和机器学习方法。据报道,对于加性模型的中低遗传力性状,机器学习和一般统计模型比较一致。但在非加性模型中,机器学习方法表现更优。 传统的GS模型往往只针对单个环境中的单个表型性状,忽略了实际情况中多性状间或多环境间的相互关系。一些研究通过对多个性状或多个环境同时进行建模,也能提高基因组预测的准确性。以多性状(Multi-trait,MT)模型为例,多变量模型(Multivariate model,MV)可用如下公式表示: 式中 y = [y 1 T ,y 2 T ,…,y s T ] T ; b = [b 1 T ,b 2 T ,…,b s T ] T ; a = [a 1 T ,a 2 T ,…,a s T ] T ; ε = [ε 1 T ,ε 2 T ,…,ε s T ] T ,s表示s个性状。非遗传效应b作为固定效应,加性效应a和残差ε作为随机效应,并服从多变量正态分布: a ~ N(0,G a0 u2a02 Gσ a 2 ) ,ε ~ N(0,R ε u2a02 I m σ ε 2 ) ,其中G为G矩阵,u2a02为克罗内克矩阵乘积,m为表型观测值数,I m 为m×m单位矩阵,X和Z a 分别为固定效应和随机加性效应关联矩阵。G a0 和R ε 的加性效应协方差矩阵可表示为: 式中σ ai 2 和 σ εi 2 分别是第i个性状的加性和残余方差。ρ aij 和ρ ij 分别是第i与j性状相关性的加性和残余方差。 多性状选择一般用于性状间共有某种程度的遗传构建,即在遗传上是相关的。尤其适用于对低遗传力性状(伴随高遗传力性状相关)或者难以测量的性状。 农作物的环境条件不如动物容易控制,而且大部分性状都是数量性状,很容易受到环境影响。多环境(Multi-environment,ME)试验发挥了重要作用,基因型与环境互作(Genotype by E nvironment,G × E)效应也是当前基因组选择关注的焦点。 除了GBLUP,多变量模型也可基于贝叶斯框架的线性回归,或者基于非线性的机器学习方法。 我们知道,基因经过转录翻译以及一系列调控后才能最终体现在表型特征上,它只能在一定程度上反映表型事件发生的潜力。随着多组学技术的发展,整合多组学数据用于基因组预测也是目前GS研究的一个重要方向。 在植物育种中,除基因组外,转录组学和代谢组学是当前GS研究相对较多的两个组学。转录组将基因表达量与性状进行关联预测,代谢组则将调控表型的小分子含量与性状进行关联预测,对于某些特定的性状而言,可能会提高预测能力。最好的方法是将各个组学的数据共同整合进模型,但这样会大大增加模型的复杂度。 表型测定的准确性直接影响模型的构建。对于一些复杂性状,单凭肉眼观察记录显然已不可取,而且表型调查费时费力,成本很高。因此,高通量表型组也是GS发展的重要方向。表型的范畴非常之广,当个体性状不可简单测量时,我们也可采用多组学数据,如蛋白组、代谢组等数据来替代。 考虑到成本效益问题,多组学技术在动植物育种中仍处于研究阶段,但代表了未来的应用方向。2023-06-11 09:54:241
决策树spss分析为什么包括的自变量就一个
快速可靠。在SPSS中进行决策树分析时,通常会选择单个自变量进行分析,以便快速得到可靠的分析结果。而多个自变量之间的交互作用和影响较为复杂,需要大量的计算资源。决策树是一种基于树形结构的分类和回归方法,可以用于分析和预测因变量与自变量之间的关系。2023-06-11 09:54:311
用决策树和决策表表示快递运费的计算方法
计算方法:这个主要要根据货物的种类来进行计算,一般物流公司的货物运费计算方法也大致是这几类。一、按照重量计费:这种方法就是按照寄送货物的毛重,来计算运输费用,前提是货物的体积在规定范围内。二、按照件数计费:按照货物的实际件数计算运费,这种计费方式一般适用于比较贵重的物品。扩展资料决策树算法的关键1、分裂属性的选择即选择哪个自变量作为树叉,也就是在n个自变量中,优先选择哪个自变量进行分叉。2、树剪枝即在构建树叉时,由于数据中的噪声和离群点,许多分支反映的是训练数据中的异常,而树剪枝则是处理这种过分拟合的数据问题,常用的剪枝方法为先剪枝和后剪枝。2023-06-11 09:54:491
两个决策变量相互影响怎么办
如果两个决策变量相互影响,可以考虑使用联合优化的方法来解决问题。具体来说,可以将两个决策变量作为一个整体来考虑,建立一个联合优化模型,通过对整体进行优化来达到最优解。另外,也可以通过引入约束条件来限制两个决策变量之间的关系,从而达到更好的优化效果。2023-06-11 09:55:022
财务决策的方法中: ①什么是差量对比法? ②什么是数学微分法? ③什么是线性规划法? ④什么是损益
(一)优选对比法优选对比法是把各种不同方案排列在一起,按其经济效益的好坏进行优选对比,进而作出决策的方法。它是财务决策的基本方法,按对比方式可分为总量对比法、差量对比法和指标对比法等。总量对比法是将不同方案的总收入、总成本或总利润进行对比,以确定最佳方案的一种方法。差量对比法是将不同方案的预期收入之间的差额与预期成本之间的差额进行比较,求出差量利润,进而作出决策的方法。指标对比法是把反映不同方案经济效益的指标进行对比来确定最优方案的方法。(二)数学微分法数学微分法是根据边际分析原理,运用数学上的微分方法,对具有曲线联系的极值问题进行求解,进而确定最优方案的一种决策方法。凡以成本为差别标准时,一般求最小值:凡以收入或利润为差别标准时,一般是求最大值。这种方法常被用于最优资本结构决策、现金最佳余额决策、存货的经济批量决策等。(三)线性规划法线性规划法是解决多变量最优决策的方法,是在各种相互关联的多变量约束条件下,解决或规划一个对象的线性目标函数最优的问题,即给予一定数量的人力、物力和资源,如何应用才能得到最大经济效益。其中,目标函数是决策者要求达到目标的数学表达式,用一个极大值或极小值表示;约束条件是指实现目标的能力资源和内部条件的限制因素,用一组等式或不等式来表示。在有若干个约束条件(如资金供应、人工工时数量、产品销售数量)的情况下,这种方法能帮助管理人员对合理组织人力、物力、财力等作出最优决策。(四)概率决策法概率决策法又称决策树法,是进行风险决策的一种主要方法。它利用了概率论的原理,并且利用一种树形图作为分析工具。其基本原理是用决策点代表决策问题,用方案分枝代表可供选择的方案,用概率分枝代表方案可能出现的各种结果,经过对各种方案在各种结果条件下损益值的计算比较,为决策者提供依据。(五)损益决策法损益决策又称不确定性决策,是指在未来情况很不明了的情况下,只能预测有关因素可能出现的状况,但其概率是不可预知的决策。通常采用最大最小收益值法(小中取大法),或最小最大后悔值法(大中取小法)。最大最小收益值法是把各个方案的最小收益值都计算出来,然后取其最大者所对应的方案为最优方案。采用这种方法来决策时,决策者对决策事物的前景抱悲观的估计,总是从不利条件下寻求最好的方案。因此,这种决策也叫做“保守型”决策。最小最大后悔值法是把各方案的最大损失值都计算出来,然后取其最小者所对应的方案为最优方法。采用这种方法来决策时,决策者对事物未来的前景估计是乐观的,愿意承担一定的风险代价去获取最大的收益。因此,这种决策也叫做“进取型”决策。2023-06-11 09:55:151
使用频率为什么要做因子分析
使用频率做因子分析可以解决1. 在多变量场景下,挖掘背后影响因对这些问题通过因子分析可以刻画出背后少量的潜在影响因素,比如服务质量、商品质量等等。2. 数学建模前的降维因子分析和主成分分析都可用于降维。但因子分析的优点是,因子作为新的解释变量去建模,有更好的解释性。因此对于有些需要业务解释的数据建模,可以在建模前通过因子分析提取关键因子,再用因子得分为解释变量,通过回归或者决策树等分类模型去建模。3 算法实现步骤首先需要注意的是,和主成分分析一样,两种方法的目的都是降维,所以两种方法的前提假设都是:特征之间不是完全互相交互。因子分析是寻找不线性相关的“变量”的线性组合来表示原始变量,这些“变量”称为因子。。2023-06-11 09:55:261
机器学习一般常用的算法有哪些?
算法不在于知道有哪些,而在于知道何种情况下能用哪种.2023-06-11 09:55:427
决策树决策法是
决策树是人力资源管理师课程中的一个软件名称,决策法就是在决策树的基础上进行运用的2023-06-11 09:56:102
机器学习的算法主要包括
机器学习的算法主要包括介绍如下:一、线性回归一般来说,线性回归是统计学和机器学习中最知名和最易理解的算法之一。这一算法中我们可以用来预测建模,而预测建模主要关注最小化模型误差或者尽可能作出最准确的预测,以可解释性为代价。我们将借用、重用包括统计学在内的很多不同领域的算法,并将其用于这些目的。当然我们可以使用不同的技术从数据中学习线性回归模型,例如用于普通最小二乘法和梯度下降优化的线性代数解。就目前而言,线性回归已经存在了200多年,并得到了广泛研究。使用这种技术的一些经验是尽可能去除非常相似(相关)的变量,并去除噪音。这是一种快速、简单的技术。二、Logistic 回归它是解决二分类问题的首选方法。Logistic 回归与线性回归相似,目标都是找到每个输入变量的权重,即系数值。与线性回归不同的是,Logistic 回归对输出的预测使用被称为 logistic 函数的非线性函数进行变换。logistic 函数看起来像一个大的S,并且可以将任何值转换到0到1的区间内。这非常实用,因为我们可以规定logistic函数的输出值是0和1并预测类别值。像线性回归一样,Logistic 回归在删除与输出变量无关的属性以及非常相似的属性时效果更好。它是一个快速的学习模型,并且对于二分类问题非常有效。三、线性判别分析(LDA)在前面我们介绍的Logistic 回归是一种分类算法,传统上,它仅限于只有两类的分类问题。而LDA的表示非常简单直接。它由数据的统计属性构成,对每个类别进行计算。单个输入变量的 LDA包括两个,第一就是每个类别的平均值,第二就是所有类别的方差。而在线性判别分析,进行预测的方法是计算每个类别的判别值并对具备最大值的类别进行预测。该技术假设数据呈高斯分布,因此最好预先从数据中删除异常值。这是处理分类预测建模问题的一种简单而强大的方法。四、决策树决策树是预测建模机器学习的一种重要算法。决策树模型的表示是一个二叉树。这是算法和数据结构中的二叉树,没什么特别的。每个节点代表一个单独的输入变量x和该变量上的一个分割点。而决策树的叶节点包含一个用于预测的输出变量y。通过遍历该树的分割点,直到到达一个叶节点并输出该节点的类别值就可以作出预测。当然决策树的有点就是决策树学习速度和预测速度都很快。它们还可以解决大量问题,并且不需要对数据做特别准备。五、朴素贝叶斯其实朴素贝叶斯是一个简单但是很强大的预测建模算法。而这个模型由两种概率组成,这两种概率都可以直接从训练数据中计算出来。第一种就是每个类别的概率,第二种就是给定每个 x 的值,每个类别的条件概率。一旦计算出来,概率模型可用于使用贝叶斯定理对新数据进行预测。当我们的数据是实值时,通常假设一个高斯分布,这样我们可以简单的估计这些概率。而朴素贝叶斯之所以是朴素的,是因为它假设每个输入变量是独立的。这是一个强大的假设,真实的数据并非如此,但是,该技术在大量复杂问题上非常有用。所以说,朴素贝叶斯是一个十分实用的功能。2023-06-11 09:56:181