CN110751192A - 基于cart算法的随机森林的决策树推理系统及方法 - Google Patents
基于cart算法的随机森林的决策树推理系统及方法 Download PDFInfo
- Publication number
- CN110751192A CN110751192A CN201910927807.2A CN201910927807A CN110751192A CN 110751192 A CN110751192 A CN 110751192A CN 201910927807 A CN201910927807 A CN 201910927807A CN 110751192 A CN110751192 A CN 110751192A
- Authority
- CN
- China
- Prior art keywords
- data
- decision tree
- reasoning
- module
- random forest
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003066 decision tree Methods 0.000 title claims abstract description 77
- 238000007637 random forest analysis Methods 0.000 title claims abstract description 36
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 26
- 238000000034 method Methods 0.000 title claims abstract description 17
- 238000013500 data storage Methods 0.000 claims abstract description 19
- 238000004364 calculation method Methods 0.000 claims abstract description 18
- 238000012549 training Methods 0.000 claims description 17
- 238000010276 construction Methods 0.000 claims description 4
- 238000012216 screening Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/046—Forward inferencing; Production systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/24323—Tree-organised classifiers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于CART算法的随机森林的决策树推理系统,包括控制模块,输出控制信号;数据存储模块,根据所述控制信号传输包含有多棵决策树数据的源数据并存放计算模块的计算结果;计算模块,根据所述控制信号计算Gini不纯度,获取最优特征。有益效果:有效地提高数据推理的精确度,加快算法运行的速度,有着广泛的应用前景,针对不同的场合有良好的应用价值。
Description
技术领域
本发明属于机器学习算法领域,尤其涉及了一种基于CART算法的随机森林的决策树推理系统及方法。
背景技术
随机森林(Random Forest,简称RF)是一种新兴的高度灵活的机器学习算法,通过从大量数据中通过训练与分析找出一定的规律,并在接收到新数据后判断数据所属的结果类型。通常用来做市场营销模拟建模,或是预测疾病的风险和病患者的易感性。
决策树是一种最基本的树形分类器。其中每个内部节点表示某个属性的特征分类,每个分支代表一个分类结果,常见的分类算法有C4.5、ID3和CART。用单一的决策树进行数据推理时得到一致假设而使假设变得过度严格。在训练数据上能够获得比其他假设更好的拟合,但是在训练数据外的数据集上却不能很好地拟合数据。
目前的决策树存在过拟合的风险和趋势且模型易会被特定的特征值或者特征组合所决定,随机性具有一定的局限性,随机效果不够显著。
发明内容
本发明的目的是克服上述背景技术中的不足,在有限的硬件资源下,实现尽可能多特征的决策树分类,提升决策树的训练和推理速度,增加推理的准确率,提供了一种基于CART算法的随机森林的决策树推理系统及方法,具体通过以下技术方案实现:
所述基于CART算法的随机森林的决策树推理系统,包括:
控制模块,输出控制信号;
数据存储模块,根据所述控制信号传输包含有多棵决策树数据的源数据并存放计算模块的计算结果和特征筛选后的剩余特征数值;
计算模块,根据所述控制信号计算Gini不纯度,获取最优特征。
所述基于CART算法的随机森林的决策树推理系统的进一步设计在于,所述计算模块,根据特征将数据分类后,记录每个叶子节点的数据数目并传输到计算模块,经过定点加减和乘除法求出Gini不纯度,选取Gini不纯度的最小值对应的特征作为最优特征。
所述基于CART算法的随机森林的决策树推理系统的进一步设计在于,所述数据存储模块包括:存储决策树奇数层数据的奇数层存储单元、存储偶数层数据的偶数层存储单元以及存储剩余特征的特征存储单元,所述奇数层存储单元与偶数层存储单元记录有决策树中每一个叶子节点中的数据数目并通过所述数据数目决定单棵决策树在进行下一层数据分类时读取所需数据的地址位,所述特征存储单元记录在将最优特征移除后的剩余特征。
所述基于CART算法的随机森林的决策树推理系统的进一步设计在于,当通过比较Gini不纯度得到最优特征时,将所述最优特征从抽取的特征中移除,剩余结果存储到16个特征存储单元中。
所述基于CART算法的随机森林的决策树推理系统的进一步设计在于,当一棵决策树训练完毕时,将其所有的数据传输至DDR中,再进行新的决策树训练,在数据推理时,每棵决策树都会单独给出判断结果,最终通过多数投票机制得到最终的推理结果。
根据所述基于CART算法的随机森林的决策树推理系统提供了一种对应的推理方法,包括随机森林训练与推理两个过程:
随机森林训练具体包括如下步骤:
步骤1-1)收到开始信号之后,数据存储模块读取源数据;
步骤1-2)计算模块接收到所述源数据后,将读入的源数据按照设定的特征进行分类,并计算Gini不纯度选出最小值Gini不纯度对应的特征作为最优特征,循环至所有特征都被分类后,将决策树的计算结果传给数据存储模块,至此完成单棵决策树的构建;
步骤1-3)根据决策树的数目重复步骤1)至步骤2)完成所有决策树的构建形成随机森林模型;
推理具体包括如下步骤:
步骤2-1)当接收到顶层的开始信号时,根据设定的地址位从数据存储模块中读出随机森林模型中一棵决策树的全部与待推理的数据;
步骤2-2)读取当前决策树的第一层特征,根据推理数据得到决策树下一层特征分类时读取所需数据的地址位,直至最后一层;
步骤2-3)根据最后一层中数据所在的叶子位置,引入判断结果参数a,若判断结果为真,则a的值加1,将a的值存储到数据存储模块中;
步骤2-4)重复步骤2-1)至步骤2-3),直至森林模型中所有的决策树都进行过推理,读取所述a的值,若a的值大于等于森林中决策树数目的一半,则最终推理结果记为1,反之记为0,将最终的推理结果存回到数据存储模块中。
本发明的优点
本发明的训练速度快,可以运用在大规模数据集上。由于每棵树可以独立、同时生成,并行度高;由于采用了集成算法,本身精度比大多数单个算法要好;在测试集上表现良好,由于两个随机性(样本随机,特征随机)的引入,使得随机森林具有了一定的抗噪声能力,且不容易陷入过拟合;由于树的组合,使得随机森林可以处理非线性数据,本身属于非线性分类模型。
综上所述,本发明可以有效地提高数据推理的精确度,加快算法运行的速度,有着广泛的应用前景,针对不同的场合有良好的应用价值。
附图说明
图1是本发明的硬件架构示意图。
图2是决策树的模型示意图。
图3是本发明的单棵决策树存储结构示意图。
图4是本发明的硬件模块示意图。
图5是本发明的构建单棵决策树的流程图。
图6是本发明的数据推理的流程图。
具体实施方式
下面结合附图对本发明方案进行详细说明。
如图1,本实施例的基于CART算法的随机森林的决策树推理系统包括控制模块、计算模块以及数据存储模块。其中,控制模块,输出控制信号。数据存储模块,根据所述控制信号传输包含有多棵决策树数据的源数据并存放计算模块的计算结果。计算模块,根据所述控制信号计算Gini不纯度,获取最优特征。
每棵决策树的模型参见图2,其中每个圈代表一个分类结果。每一个源数据组根据其判断结果分成两个子模块,并记录各个子模块中数据的总数。当进行新一层的数据分类时,根据上级模块中数据的数目到存储空间中对应的地址位去读取数据进行分类。
数据存储模块包括:存储决策树奇数层数据的奇数层存储单元、存储偶数层数据的偶数层存储单元,所述奇数层存储单元与偶数层存储单元记录有决策树中每一个叶子节点中的数据数目并通过所述数据数目决定决策树下一层特征分类时读取所需数据的地址位。如图3,本实施例的数据存储模块一共包含了128个bank。其中,bank75存储初始数据,bank125和bank127分别存储决策树奇数层和偶数层中数据排列的序号,bank93到bank124分别存储筛选后决策树奇数层和偶数层的特征序号,bank0到bank74存储决策树的结果数据,其余bank存储计算产生的中间数据。
本实施例根据基于CART算法的随机森林的决策树推理系统提供一种对应的推理方法,包括随机森林训练与推理两个过程。
在进行训练之前,将原始数据的每一个特征简化为0和1,然后将这些特征合并组成一个32位数的前31位,不足31位则高位补0,最后一位为数据的判断结果。将处理后的数据存入DDR中。如图4、图5,随机森林模型的训练过程如下:
S1:当该模块接收到顶层的算法开始信号时,从DDR中读取待训练的所有数据至SRAM中,记录数据数目,特征数目;
S2:有放回的抽取源数据进行训练,无放回的抽取特征,并将抽取的数据序号和特征序号分别存在两个bank中;
S3:根据抽取的特征序号读取数据的对应位,根据判断结果进行分类,将分类后的数据序号存储在某个固定的bank中,并读取两个分类的数据数目,计算Gini值,同时,引入参数leaf用来指代决策树该层的某个节点;
S4:依次计算所有特征的Gini值,选取Gini值最小的特征分类,记录该特征序号;
S5:更新特征,将已经分类过的特征序号移除,剩下的特征存储在一个特定的bank内;
S6:根据leaf值判断该层分类是否完毕,分类完毕,则进入下一层,若尚有数据未分类,则重复S3—S5;
S7:重复S3—S6至所有抽取的特征都被分类完毕,计算每个叶子节点中判断结果为“是”的概率,设定一个阈值,当概率大于此阈值时,该叶子的结果记为1,反之则为0。将判断结果与之前每层分类的最优特征共同存储,并存回到DDR中;
S8:根据设定的决策树数目重复S2—S7,构建出随机森林。
如图6,随机森林推理部分如下:
在进行推理之前,将需要推理的数据的每一个特征简化为0和1,然后将这些特征合并组成一个32位数的前31位,不足31位则高位补0,最后一位0或者1都可以。将处理后的数据存入DDR中。
S1:当接收到顶层的开始信号时,根据设定的地址位从DDR中读出随机森林中一棵决策树的全部数据,以及待推理的数据;
S2:读取决策树的第一层特征,根据推理数据该特征对应的地址位,决定下一层的走向;
S3:不断读取决策树的每一层特征,并对应到数据中,直至最后一层;
S4:根据最后一层中数据所在的叶子位置,引入判断结果参数a,若判断结果为真,则a的值加1,将a的值存储到固定的bank中;
S5:重复S1—S4,至森林中所有的树都进行过推理,读取之前bank中存储的a的值,若a的值大于等于森林中树木总数的一半,则最终推理结果记为1,反之记为0。将最终的推理结果存回到DDR中。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或变换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (6)
1.一种基于CART算法的随机森林的决策树推理系统,其特征在于:包括
控制模块,输出控制信号;
数据存储模块,根据所述控制信号传输包含有多棵决策树数据的源数据并存放计算模块的计算结果和特征筛选后的剩余特征数值;
计算模块,根据所述控制信号计算Gini不纯度,获取最优特征。
2.根据权利要求书1所述的基于CART算法的随机森林的决策树推理系统,其特征在于所述计算模块,根据特征将数据分类后,记录每个叶子节点的数据数目并传输到计算模块,经过定点加减和乘除法求出Gini不纯度,选取Gini不纯度的最小值对应的特征作为最优特征。
3.根据权利要求书1所述的基于CART算法的随机森林的决策树推理系统,其特征在于所述数据存储模块包括:存储决策树奇数层数据的奇数层存储单元、存储偶数层数据的偶数层存储单元以及存储剩余特征的特征存储单元,所述奇数层存储单元与偶数层存储单元记录有决策树中每一个叶子节点中的数据数目并通过所述数据数目决定决策树下一层特征分类时读取所需数据的地址位,所述特征存储单元记录在将最优特征移除后的剩余特征。
4.根据权利要求书1所述的基于CART算法的随机森林的决策树推理系统,其特征在于当通过比较Gini不纯度得到最优特征时,将所述最优特征从抽取的特征中移除,剩余结果存储到16个特征存储单元中。
5.根据权利要求书1所述的基于CART算法的随机森林的决策树推理系统,其特征在于当一棵决策树训练完毕时,将其所有的数据传输至DDR中,再进行新的决策树训练,在数据推理时,每棵决策树都会单独给出判断结果,最终通过多数投票机制得到最终的推理结果。
6.采用如权利要求1-5任一项所述的基于CART算法的随机森林的决策树推理系统的推理方法,其特征在于包括随机森林训练与推理两个过程:
随机森林训练具体包括如下步骤:
步骤1-1)收到开始信号之后,数据存储模块读取源数据;
步骤1-2)计算模块接收到所述源数据后,将读入的源数据按照设定的特征进行分类,并计算Gini不纯度选出最小值Gini不纯度对应的特征作为最优特征,循环至所有特征都被分类后,将决策树的计算结果传给数据存储模块,至此完成单棵决策树的构建;
步骤1-3)根据决策树的数目重复步骤1)至步骤2)完成所有决策树的构建形成随机森林模型;
推理具体包括如下步骤:
步骤2-1)当接收到顶层的开始信号时,根据设定的地址位从数据存储模块中读出随机森林模型中一棵决策树的全部与待推理的数据;
步骤2-2)读取当前决策树的第一层特征,根据推理数据得到决策树下一层特征分类时读取所需数据的地址位,直至最后一层;
步骤2-3)根据最后一层中数据所在的叶子位置,引入判断结果参数a,若判断结果为真,则a的值加1,将a的值存储到数据存储模块中;
步骤2-4)重复步骤2-1)至步骤2-3),直至森林模型中所有的决策树都进行过推理,读取所述a的值,若a的值大于等于森林中决策树数目的一半,则最终推理结果记为1,反之记为0,将最终的推理结果存回到数据存储模块中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910927807.2A CN110751192B (zh) | 2019-09-27 | 2019-09-27 | 基于cart算法的随机森林的决策树推理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910927807.2A CN110751192B (zh) | 2019-09-27 | 2019-09-27 | 基于cart算法的随机森林的决策树推理系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110751192A true CN110751192A (zh) | 2020-02-04 |
CN110751192B CN110751192B (zh) | 2023-07-18 |
Family
ID=69277327
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910927807.2A Active CN110751192B (zh) | 2019-09-27 | 2019-09-27 | 基于cart算法的随机森林的决策树推理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110751192B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107563425A (zh) * | 2017-08-24 | 2018-01-09 | 长安大学 | 一种基于随机森林的隧道运营状态感知模型的建立方法 |
CN108614601A (zh) * | 2018-04-08 | 2018-10-02 | 西北农林科技大学 | 一种融合随机森林算法的设施光环境调控方法 |
CN109325844A (zh) * | 2018-06-25 | 2019-02-12 | 南京工业大学 | 多维数据下的网贷借款人信用评价方法 |
CN109409647A (zh) * | 2018-09-10 | 2019-03-01 | 昆明理工大学 | 一种基于随机森林算法的薪资水平影响因素的分析方法 |
-
2019
- 2019-09-27 CN CN201910927807.2A patent/CN110751192B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107563425A (zh) * | 2017-08-24 | 2018-01-09 | 长安大学 | 一种基于随机森林的隧道运营状态感知模型的建立方法 |
CN108614601A (zh) * | 2018-04-08 | 2018-10-02 | 西北农林科技大学 | 一种融合随机森林算法的设施光环境调控方法 |
CN109325844A (zh) * | 2018-06-25 | 2019-02-12 | 南京工业大学 | 多维数据下的网贷借款人信用评价方法 |
CN109409647A (zh) * | 2018-09-10 | 2019-03-01 | 昆明理工大学 | 一种基于随机森林算法的薪资水平影响因素的分析方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110751192B (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104995664B (zh) | 实时的连续交互学习及检测 | |
JP2022547460A (ja) | コンピュートインメモリアレイの列しきい値を調整することによってxnor等価演算を実施すること | |
US7584173B2 (en) | Edit distance string search | |
WO2019235636A1 (en) | Learning device, and learning method | |
CN108630198A (zh) | 用于训练声学模型的方法和设备 | |
CN112530594A (zh) | 一种基于卷积生存网络的血透并发症长期风险预测系统 | |
CN113628297A (zh) | 一种基于注意力机制和迁移学习的covid-19深度学习诊断系统 | |
CN114881775B (zh) | 一种基于半监督集成学习的欺诈检测方法及系统 | |
JP2020077066A (ja) | 学習装置および学習方法 | |
CN116959725A (zh) | 一种多模态数据融合的疾病风险预测方法 | |
CN115688040A (zh) | 一种机械设备故障诊断方法、装置、设备及可读存储介质 | |
CN113496123B (zh) | 谣言检测方法、装置、电子设备及存储介质 | |
CN110751192B (zh) | 基于cart算法的随机森林的决策树推理系统及方法 | |
CN113921041A (zh) | 基于分组卷积注意力网络的录音设备识别方法及系统 | |
CN114153839A (zh) | 多源异构数据的集成方法、装置、设备及存储介质 | |
CN113361279A (zh) | 一种基于双邻域图神经网络的医疗实体对齐方法及系统 | |
CN111145852B (zh) | 医学信息的处理方法、装置及计算机可读存储介质 | |
Zheng et al. | Violent scene detection of film videos based on multi-task learning of temporal-spatial features | |
CN116579861A (zh) | 基于新型特征优化算法的车险诈骗识别方法、装置及设备 | |
JP2020077070A (ja) | 学習装置および学習方法 | |
JP2019160256A (ja) | 学習識別装置および学習識別方法 | |
CN114266653A (zh) | 集成学习的客户贷款风险预估方法 | |
CN113889274A (zh) | 一种孤独症谱系障碍的风险预测模型构建方法及装置 | |
Katarya et al. | Analyzing customer sentiments using machine learning techniques to improve business performance | |
Hao et al. | Predication of NCAA bracket using recurrent neural network and combinatorial fusion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |