Document
拖动滑块完成拼图
首页 专利交易 科技果 科技人才 科技服务 国际服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

一种基于bitmap的决策树的实现方法 

买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!

摘要:本发明涉及一种基于bitmap的决策树的实现方法,属于通信技术领域。本发明通过为决策树中的每个节点增加bitmap等关键信息,基于这些关键信息,将决策树中的空节点和相同子节点删除,并基于优化后的决策树设计了决策树查找流程。经过空节点和相同节点优化后,决策树节点个数明显减小,通过对比采用bitmap删除空节点和相同子节点前后的建树数据发现,本方案显著减小了决策树节点所占用的FPGA片内RAM资源。

主权项:1.一种基于bitmap的决策树的实现方法,其特征在于,决策树中的每个节点至少包括以下关键信息:empty_bitmap:空节点的位图;first_equal_idx:所有相同子节点中,第一个子节点的索引;equal_bitmap:相同子节点的位图;filter_num:该节点包含规则的条数;filter_list:该节点的规则链表,存储了该节点的所有规则,每个链表节点包含规则的具体信息;children_ptr:指向子节点内存的指针,父节点的多个子节点存储在连续的内存块中,children_ptr指向该内存块的首地址;child_num:子节点个数;该方法包括如下步骤:S1、判断哪些子节点是空节点;根据父节点的children_ptr和child_num字段,遍历子节点,判断子节点的filter_num字段是否为零;如果为零,则当前子节点是空节点,设idx为当前子节点的索引值,将empty_bitmap字段的第idx比特设置为1;否则当前子节点是非空节点,将empty_bitmap字段的第idx比特设置为0;S2、判断哪些子节点是相同节点,根据父节点的children_ptr和child_num字段,遍历子节点;根据子节点的filter_num和filter_list字段可知子节点包含的具体规则信息,通过两两比较子节点的规则,可知哪些子节点包含相同的规则;将所有相同节点中,最小的子节点索引值赋值给first_equal_idx字段,将其他相同节点的索引值对应于equal_bitmap字段的比特位设置为1;S3、将空节点全部删除;对于相同节点,保留索引值最小的节点,其余相同节点删除;其中,决策树中的每个节点还包括以下关键信息:当前节点树高tree_height:表示从根节点至当前节点树的层数;当前节点的划分维度cut_dim:共5个比特位,从比特0至比特4依次表示协议号、目的端口号、源端口号、目的ip地址和源ip地址五个维度,cut_dim某个比特为1时,表示使用对应的维度作为划分维度;当前节点在指定划分维度使用几个比特作为划分比特cut_num[5]:由包含5个元素的数组表示,从cut_num[0]至cut_num[4]依次表示协议号、目的端口号、源端口号、目的ip地址和源ip地址五个维度的划分比特数;从根节点至当前节点的父节点的路径上,各个节点的划分比特数之和,称为当前节点的累计划分比特数,用accu_cut_num[5]表示:从accu_cut_num[0]至accu_cut_num[4]依次表示协议号、目的端口号、源端口号、目的ip地址和源ip地址五个维度的累计划分比特数;isleaf:当前节点是否为叶子节点,该字段的初始值为0,当该字段的值为1时,表示当前节点是叶子节点。

全文数据:

权利要求:

百度查询: 北京左江科技股份有限公司 一种基于bitmap的决策树的实现方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。