CN110909793A - 一种基于fpga实现的决策森林***及决策森林推理方法 - Google Patents
一种基于fpga实现的决策森林***及决策森林推理方法 Download PDFInfo
- Publication number
- CN110909793A CN110909793A CN201911147579.3A CN201911147579A CN110909793A CN 110909793 A CN110909793 A CN 110909793A CN 201911147579 A CN201911147579 A CN 201911147579A CN 110909793 A CN110909793 A CN 110909793A
- Authority
- CN
- China
- Prior art keywords
- classification
- module
- decision
- decision tree
- clock
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/254—Fusion techniques of classification results, e.g. of results related to same input data
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
- G06V10/955—Hardware or software architectures specially adapted for image or video understanding using specific electronic processors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/259—Fusion by voting
-
- 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)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Evolutionary Biology (AREA)
- Multimedia (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明公开了一种基于FPGA实现的决策森林***及决策森林推理方法,属于机器学习领域。本发明基于路径回溯模块与分类模块的架构在FPGA上实现决策树,有利于将训练好的决策树MATLAB代码自动转换成Verilog代码,而不需要人为在EDA工具中手动实现大量决策树。采用自顶向下的设计结构,将每棵决策树都作为一个子模块并行运行,快速部署的同时保证精度,且消耗的硬件资源更少。基于流水线技术在FPGA上实现多数投票法,在顶层模块中调用决策树子模块并对子模块的结果进行统一处理,从而提高推理速度。通过异步FIFO模块跨时钟域传输数据,使其应用更广泛。本发明所提供的推理实现方法原则上适用于通过任意训练算法生成的决策树。
Description
技术领域
本发明属于机器学习技术领域,更具体地,涉及一种基于FPGA实现的决策森林***及决策森林推理方法。
背景技术
集成学习是机器学习中的一种重要的方法。集成学习通过将多个学习器进行结合,常可获得比单一学习器显著优越的泛化性能。整个集成学习不依赖任何单一模型,而是集体进行预测。决策森林是并行式集成学习方法最著名的代表之一,其多样性是通过使用不同的训练数据子集来获得的。决策森林是以决策树为基学习器和以多数投票法为集成方式所构成的一种集成学习方法,也可进一步在决策树的训练过程中引入随机属性选择,以增强泛化性能。
尽管决策森林在很多现实任务中都展现出强大的性能,但是它的缺点妨碍了决策森林的广泛应用,特别是基于硬件场景的应用。为了生成未标记数据实例的分类,在获得最终分类之前,需要按照每个模型对该实例进行分类。因此,对于推理速度是主要问题的一些应用(例如挖掘数据流),分类集成可能无法及时产生。
决策树作为集成学习中的基学习器,利用树状结构进行判定并决策,可以是分类树也可以是回归树。决策树的训练过程中需要对结点进行最优属性划分,有很多常见的最优属性划分策略,比如基于信息增益、基尼系数等等。现有技术中公开了多种决策森林训练过程所使用的算法,但是,其在FPGA中推理的实现方法还未成熟,有待进一步完善。
发明内容
针对现有技术的缺陷和改进需求,本发明提供了一种基于FPGA实现的决策森林***及决策森林推理方法,其目的在于在保证精度的前提下极大地提高决策森林在硬件部署中的推理速度,解决了决策森林对性能的需求,同时其跨时钟域的设计使得决策森林及其相似技术可以得到更广泛的实际应用。
为实现上述目的,按照本发明的第一方面,提供了一种基于FPGA实现的决策森林***,该***包括:
基于FPGA的多个决策树子***、异步FIFO模块和基于FPGA的多数投票法子***;
各个决策树子***之间相互独立且并行运行,每个决策树子***包含:第一时钟控制器、路径回溯模块和分类模块;其中,
所述第一时钟控制器为同步时钟,用于控制路径回溯模块和分类模块;
所述路径回溯模块用于获取已训练的决策树中所有从叶节点到根节点的回溯路径,并得到待分类数据在该决策树中的分类路径;
所述分类模块用于根据所述路径回溯模块输出的分类路径,得到待分类数据在该决策树中的分类结果,并将分类结果传递给基于FPGA的多数投票法子***;
所述异步FIFO模块用于对多个决策树子***和多数投票法子***之间的跨时钟域数据传输;
所述多数投票法子***包含:第二时钟控制器、计数模块、类别数量比较器及投票结果输出模块;其中,
所述第二时钟控制器为同步时钟,用于控制计数模块、类别数量比较器及投票结果输出模块;
所述计数模块用于对各个分类模块得到的分类结果,按照类别进行计数;
所述类别数量比较器用于从计数模块得到的计数结果中找出数量最大值;
所述投票结果输出模块用于输出数量最大值所对应的分类类别。
具体地,对单条路径中的结点相“与”,对相同分类类别的不同路径相“或”,得到该分类类别的分类路径。
具体地,哪个分类路径对应的变量为“真”,即表示分类结果为该分类路径所对应的类别。
具体地,第二时钟控制器的时钟频率≥第一时钟控制器的时钟频率。
具体地,整个多数投票法子***用流水线技术实现,若模块需要耗时N个时钟周期,则流水需要N级。
为实现上述目的,按照本发明的第二方面,第一方面所述的决策森林***的决策森林推理方法,该方法包括以下步骤:
S1.通过由决策树子***构建的若干棵决策树,对待分类数据进行并行分类预测,得到若干个分类结果;
S2.经由多数投票法子***中的流水线操作,得到若干棵决策树分类结果中数量最大值;
S3.将数量最大值对应的分类类别,作为整个决策森林***的推理结果。
具体地,步骤S2包括以下步骤:
S21.通过异步FIFO模块缓存从决策树子***中获取数据流,实现数据的跨时钟域传输;
S22.经计数模块对多棵决策树所得到的分类结果进行不同类别上的计数,可用多级流水;
S23.经类别数量比较器从计数模块得到的计数结果中找出数量最大值,可用多级流水。
总体而言,通过本发明所构思的以上技术方案,能够取得以下有益效果:
(1)本发明基于路径回溯模块与分类模块的架构,在FPGA上实现决策树,该架构有利于将训练好的决策树MATLAB代码自动转换成Verilog代码,而不需要人为在EDA工具中手动实现大量决策树。
(2)本发明采用自顶向下的设计结构,将每棵决策树都作为一个子模块并行运行,从而实现在FPGA中的大规模快速部署的同时保证精度,且消耗的硬件资源更少。
(3)本发明基于流水线技术在FPGA上实现多数投票法,在多数投票法顶层模块中调用决策树子模块并对子模块的结果进行统一处理,从而提高推理速度。
(4)本发明通过异步FIFO模块,满足并行分类的决策树子***与多数投票法子***所在不同时钟域的需求,达到跨时钟域数据传输的目的,使其应用更广泛。
(5)本发明所提供的推理实现方法原则上适用于通过任意训练算法生成的决策树。
附图说明
图1为本发明实施例提供的一种基于FPGA实现的决策森林***结构示意图;
图2为本发明实施例提供的决策树子***结构示意图;
图3为本发明实施例提供的多数投票法子***结构示意图;
图4为本发明实施例提供的决策树实施例Verilog伪代码描述图;
图5为本发明实施例提供的决策森林实施例分类仿真结果图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
本发明的整体构思为:通过构建决策森林***的两个重要组成部分,决策树子***和多数投票法子***,来达到在FPGA中进行决策森林推理的目的。其中,基于路径回溯模块与分类模块的架构实现决策树,基于流水线技术实现多数投票法。
如图1所示,本发明提供一种基于FPGA实现的决策森林***,该***包括:
基于FPGA的多个决策树子***,各个决策树子***之间相互独立且并行运行,如图2所示,每个决策树子***包含:第一时钟控制器、路径回溯模块、分类模块;
其中,所述第一时钟控制器为同步时钟,用于控制路径回溯模块和分类模块,所述路径回溯模块用于获取已训练的决策树中所有从叶节点到根节点的回溯路径,并得到待分类数据在该决策树中的分类路径,所述分类模块用于根据所述路径回溯模块输出的分类路径,得到待分类数据在该决策树中的分类结果,并将分类结果传递给基于FPGA的多数投票法子***;
基于FPGA的多数投票法子***,如图3所示,所述多数投票法子***包含:第二时钟控制器、计数模块、类别数量比较器及投票结果输出模块;
其中,所述第二时钟控制器为同步时钟,用于控制计数模块、类别数量比较器及投票结果输出模块,所述计数模块用于对各个分类模块得到的分类结果,按照类别进行计数,所述类别数量比较器用于从计数模块得到的计数结果中找出数量最大值,所述投票结果输出模块用于输出数量最大值所对应的分类类别。
异步FIFO模块,所述异步FIFO模块用于对多个决策树子***和多数投票法子***之间的跨时钟域数据传输。
本发明中,决策森林***采用自顶向下的设计结构,将每棵决策树都作为一个子模块并行运行,然后在多数投票法顶层模块中调用这些子模块并对子模块的结果进行统一处理。具体地,在FPGA实现中,为了满足并行分类的决策树子***与多数投票法子***所在不同时钟域的需求,部署异步FIFO以达到跨时钟域数据传输的目的。
决策树是一种常见的机器学习方法,可用于回归或分类,通常由特征选择、决策树的生成和决策树的剪枝等步骤产生,可利用MATLAB工具预先训练生成若干棵决策树,每棵训练好的决策树与一个决策树子***对应。
具体地,所述FPGA的选取需要满足实现的所有决策树逻辑占用和IO端口占用的资源消耗需求,FPGA的资源包括LUT、Register、BRAM和IOB等。
所述决策树子***包含:第一时钟控制器、路径回溯模块、分类模块。
具体地,所述第一时钟控制器所产生的时钟能满足路径回溯模块的组合逻辑延时需求,更进一步地,可利用分级流水拆分较大组合逻辑以保证高速的性能。
具体地,所述路径回溯模块通过对决策树中的每个叶结点进行回溯找到从根结点到叶结点的路径,并把叶结点中相同分类类别的路径进行相“或”操作(实际上整体就是布尔逻辑,EDA工具中的逻辑综合器会自动优化该布尔逻辑)得到若干分类路径。所述从根结点到叶结点的路径都是属性变量和分离值之间比较后的“与”运算,树中结点分离的依据一般而言为基尼系数。
具体地,所述分类模块对由路径回溯模块得到的逻辑进行时序判断,在某一时刻哪个分类路径对应的变量为“真”,即表示分类结果为该分类路径所对应的类别。
多数投票法,如果某个分类类别统计的数量(即票数)最多,那么就将该分类类别作为决策森林的输出;如果同时获得最高票的有多个分类类别,那么就按照声明顺序输出最早声明的那个分类类别,可描述为x表示待分类数据,h表示决策树,T表示决策森林中决策树的数量,cj表示第j个类别,H表示决策森林。
所述多数投票法***包含:第二时钟控制器、计数模块以及类别数量比较器。
具体地,所述第二时钟控制器的时钟频率与决策树***中的并不一定完全相同。一般而言,基于流水线的多数投票法***可实现的时钟频率会比决策树***高,因为多数投票***中的每一个模块的组合逻辑延迟相对较低。
具体地,所述计数模块用于对多棵决策树所得到的分类结果进行不同类别上的计数。当决策树棵数较大时,计数模块所需要的时钟周期数也会相应增多。例如,有10棵决策树时,计数模块耗时2个时钟周期;若有200棵决策树时,则计数模块耗时4个时钟周期,即流水需要四级。
具体地,所述类别数量比较器用于从计数模块得到的计数结果中找出数量最大值。根据类别种类的多少,计数模块所需要的时钟周期数也不尽相同,这是一种弹性的设计。例如,类别只有2类,计数模块耗时1个时钟周期;若类别有4类,则计数模块耗时2个时钟周期,即流水需要两级。
所述整个多数投票法子***用流水线技术实现,若模块需要耗时N个时钟周期,则流水需要N级。
所述异步FIFO模块包含一个双端口的RAM,用于跨时钟域之间的数据记录与传输,保证数据间的正确传递,可直接调用EDA工具中的IP核实现。
本发明还提供了一种基于上述***的决策森林推理方法,该方法包括以下步骤:
步骤S1.通过由决策树子***构建的若干棵决策树,对待分类数据进行并行分类预测,得到若干个分类结果。
通过以下实施例进一步说明:假设决策树输入属性表示成{x1,x2,x3,x4},分类类别为{0,1,2},三种代表分类类别的变量表示成{class0,class1,class2}。若分类类别为0的叶节点有N0个,那么就有N0条相关的路径,分别表示成{10,20,...,N0};同理,分类类别为1的叶节点有N1个,分类类别为2的叶节点有N2个。该决策树实施例Verilog伪代码描述如图4所示,路径回溯模块主要由组合逻辑构成,分类模块主要由时序逻辑构成。
进一步地,图4中第1-3行表示对每种分类类别进行路径的遍历,把所有相同分类的路径进行相“或”运算。除非特殊情况,测试数据输入之后,{class0,class1,class2}中只有一个值为“真”,其余两个为“假”,即分类结果一定是唯一的。第4-9行表示之后在每个时钟的上升沿,找到{class0,class1,class2}三者之中为“真”的那个并作为输出的分类类别。
步骤S2.经由多数投票法子***中的流水线操作,得到若干棵决策树分类结果中数量最大值。
步骤S2包括以下步骤:
S21.通过异步FIFO模块缓存从决策树子***中获取数据流,实现数据的跨时钟域传输。
S22.经计数模块对多棵决策树所得到的分类结果进行不同类别上的计数,可用多级流水。
S23.经类别数量比较器从计数模块得到的计数结果中找出数量最大值,可用多级流水。
步骤S3.将数量最大值对应的分类类别,作为整个决策森林***的推理结果。
通过以下实施例结果进一步说明。
本实施例的条件如下:Fisher's Iris数据集有4个输入属性,分类类别有3种,分别表示为{0,1,2},该数据集共有150组数据。随机抽取其中的135组按照决策森林算法进行预训练,得到10棵决策树。基于此10棵决策树将决策森林推理过程在XILINX Artix-7系列中的XC7A35TFTG256-1开发板上进行实现,并用剩余15组数据对FPGA实现的***进行测试。
进一步地,本实施例中有10棵决策树,3种分类类别。本实施例中的多数投票法***的计数模块使用了两级流水,类别数量比较器也使用了两级流水。
进一步地,本实施例实现了时钟频率为100MHz的高速***,整个决策森林实施例的测试分类仿真结果如图5所示。图中标识了四根黑色粗线,从左往右数第一根线表示决策树从此刻开始第一组测试数据的分类;然后经历6个时钟周期(6条流水)到达第二条线的时刻,表示开始输出第一个投票的结果;第二根线和第三根线之间是一个时钟周期,表示第一组数据的投票结果将持续一个时钟周期,而后进行第二个投票结果输出;第二个投票结果输出直到第四根线,如此往复,依次将15组测试数据的投票结果一一输出来。根据波形图,得到15个投票结果依次是021111220000110,对比下面10棵决策树的分类类别结果,可以发现多数投票法的结果符合预期。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于FPGA实现的决策森林***,其特征在于,该***包括:
基于FPGA的多个决策树子***、异步FIFO模块和基于FPGA的多数投票法子***;
各个决策树子***之间相互独立且并行运行,每个决策树子***包含:第一时钟控制器、路径回溯模块和分类模块;其中,
所述第一时钟控制器为同步时钟,用于控制路径回溯模块和分类模块;
所述路径回溯模块用于获取已训练的决策树中所有从叶节点到根节点的回溯路径,并得到待分类数据在该决策树中的分类路径;
所述分类模块用于根据所述路径回溯模块输出的分类路径,得到待分类数据在该决策树中的分类结果,并将分类结果传递给基于FPGA的多数投票法子***;
所述异步FIFO模块用于对多个决策树子***和多数投票法子***之间的跨时钟域数据传输;
所述多数投票法子***包含:第二时钟控制器、计数模块、类别数量比较器及投票结果输出模块;其中,
所述第二时钟控制器为同步时钟,用于控制计数模块、类别数量比较器及投票结果输出模块;
所述计数模块用于对各个分类模块得到的分类结果,按照类别进行计数;
所述类别数量比较器用于从计数模块得到的计数结果中找出数量最大值;
所述投票结果输出模块用于输出数量最大值所对应的分类类别。
2.如权利要求1所述的***,其特征在于,对单条路径中的结点相“与”,对相同分类类别的不同路径相“或”,得到该分类类别的分类路径。
3.如权利要求1所述的***,其特征在于,哪个分类路径对应的变量为“真”,即表示分类结果为该分类路径所对应的类别。
4.如权利要求1所述的***,其特征在于,第二时钟控制器的时钟频率≥第一时钟控制器的时钟频率。
5.如权利要求1所述的***,其特征在于,整个多数投票法子***用流水线技术实现,若模块需要耗时N个时钟周期,则流水需要N级。
6.一种基于权利要求1至5任一项所述的决策森林***的决策森林推理方法,其特征在于,该方法包括以下步骤:
S1.通过由决策树子***构建的若干棵决策树,对待分类数据进行并行分类预测,得到若干个分类结果;
S2.经由多数投票法子***中的流水线操作,得到若干棵决策树分类结果中数量最大值;
S3.将数量最大值对应的分类类别,作为整个决策森林***的推理结果。
7.如权利要求6所述的方法,其特征在于,步骤S2包括以下步骤:
S21.通过异步FIFO模块缓存从决策树子***中获取数据流,实现数据的跨时钟域传输;
S22.经计数模块对多棵决策树所得到的分类结果进行不同类别上的计数,可用多级流水;
S23.经类别数量比较器从计数模块得到的计数结果中找出数量最大值 , 可用多级流水。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911147579.3A CN110909793B (zh) | 2019-11-21 | 2019-11-21 | 一种基于fpga实现的决策森林***及决策森林推理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911147579.3A CN110909793B (zh) | 2019-11-21 | 2019-11-21 | 一种基于fpga实现的决策森林***及决策森林推理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110909793A true CN110909793A (zh) | 2020-03-24 |
CN110909793B CN110909793B (zh) | 2022-05-31 |
Family
ID=69818392
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911147579.3A Active CN110909793B (zh) | 2019-11-21 | 2019-11-21 | 一种基于fpga实现的决策森林***及决策森林推理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110909793B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114513460A (zh) * | 2022-01-28 | 2022-05-17 | 新华三技术有限公司 | 决策树的生成方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105550374A (zh) * | 2016-01-29 | 2016-05-04 | 湖南大学 | Spark云服务环境下面向大数据的随机森林并行机器学习方法 |
US20160328837A1 (en) * | 2015-05-08 | 2016-11-10 | Kla-Tencor Corporation | Method and System for Defect Classification |
CN108090216A (zh) * | 2017-12-29 | 2018-05-29 | 咪咕文化科技有限公司 | 一种标签预测方法、装置及存储介质 |
CN110428376A (zh) * | 2019-07-24 | 2019-11-08 | 桂林理工大学 | 一种基于fpga的线阵ccd卫星影像星上几何纠正方法 |
-
2019
- 2019-11-21 CN CN201911147579.3A patent/CN110909793B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160328837A1 (en) * | 2015-05-08 | 2016-11-10 | Kla-Tencor Corporation | Method and System for Defect Classification |
CN105550374A (zh) * | 2016-01-29 | 2016-05-04 | 湖南大学 | Spark云服务环境下面向大数据的随机森林并行机器学习方法 |
CN108090216A (zh) * | 2017-12-29 | 2018-05-29 | 咪咕文化科技有限公司 | 一种标签预测方法、装置及存储介质 |
CN110428376A (zh) * | 2019-07-24 | 2019-11-08 | 桂林理工大学 | 一种基于fpga的线阵ccd卫星影像星上几何纠正方法 |
Non-Patent Citations (3)
Title |
---|
HONGFEI WANG ET AL.: ""Work-in-Progress: Hierarchical Ensemble Learning for Resource-Aware FPGA Computing"", 《IEEE》 * |
XIANG LIN ET AL.: ""Random Forest Architectures on FPGA for Multiple Applications"", 《ACM》 * |
王敏 等: ""基于FPGA的报文分类技术"", 《计算机工程与设计》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114513460A (zh) * | 2022-01-28 | 2022-05-17 | 新华三技术有限公司 | 决策树的生成方法及装置 |
CN114513460B (zh) * | 2022-01-28 | 2023-09-15 | 新华三技术有限公司 | 决策树的生成方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110909793B (zh) | 2022-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11977977B2 (en) | Methods and systems for data analysis in a state machine | |
Saqib et al. | Pipelined decision tree classification accelerator implementation in FPGA (DT-CAIF) | |
US20190087243A1 (en) | Programmable device, heirarchical parallel machines, and methods for providing state information | |
US8782624B2 (en) | Methods and systems for detection in a state machine | |
CN105589736B (zh) | 基于网表分割和多线程并行的硬件描述语言仿真加速方法 | |
CN110990638A (zh) | 基于fpga-cpu异构环境的大规模数据查询加速装置及方法 | |
Davis et al. | A practical reconfigurable hardware accelerator for Boolean satisfiability solvers | |
CN109582774A (zh) | 自然语言分类方法、装置、设备及存储介质 | |
CN110909793B (zh) | 一种基于fpga实现的决策森林***及决策森林推理方法 | |
Shi et al. | Deepgate2: Functionality-aware circuit representation learning | |
US10929764B2 (en) | Boolean satisfiability | |
Padmanabhan et al. | Optimal design-space exploration of streaming applications | |
Su et al. | Increasing network size and training throughput of FPGA restricted Boltzmann machines using dropout | |
Zhang et al. | XNORCONV: CNNs accelerator implemented on FPGA using a hybrid CNNs structure and an inter‐layer pipeline method | |
Oge et al. | An implementation of handshake join on FPGA | |
Roy et al. | Programming techniques for the Automata Processor | |
Tiejun et al. | An Parallel FPGA SAT Solver Based on Multi‐Thread and Pipeline | |
Li et al. | Low power design methodology for signal processing systems using lightweight dataflow techniques | |
US11055257B2 (en) | Systems and methods for disjoint character set report merging | |
Li et al. | A hierarchical c2rtl framework for fifo-connected stream applications | |
Zhang et al. | Cube‐Based Synthesis of ESOPs for Large Functions | |
Krishnakumar et al. | INDENT: Incremental Online Decision Tree Training for Domain-Specific Systems-on-Chip | |
Hahn et al. | SPEAR-JSON: Selective parsing of JSON to enable accelerated stream processing on fpgas | |
Li et al. | FEAS: A Faster Event-driven Accelerator Supporting Inhibitory Spiking Neural Network | |
Shi et al. | Research on the Design of Ultra-Lightweight Convolutional Neural Network Accelerator |
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 |