[发明专利]基于自编码器与蒙特卡洛树的层次化特征系统发育模型有效
申请号: | 202110126970.6 | 申请日: | 2021-01-29 |
公开(公告)号: | CN112837739B | 公开(公告)日: | 2022-12-02 |
发明(设计)人: | 冯宏伟;刘蒙;王蓓;侯刚;冯筠 | 申请(专利权)人: | 西北大学 |
主分类号: | G16B5/00 | 分类号: | G16B5/00;G16B40/00;G16B50/30 |
代理公司: | 西安恒泰知识产权代理事务所 61216 | 代理人: | 王孝明 |
地址: | 710069 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 编码器 蒙特卡洛树 层次 特征 系统发育 模型 | ||
1.一种基于自编码器与蒙特卡洛树的层次化特征系统发育模型,该模型具体包括以下步骤:
步骤一,将采集到的化石进行人工特征提取得到分类单元的特征矩阵,即得到形态学数据集;
所述的特征矩阵为D{X1,…,Xn},其中:
Xi(i∈[1,n])为分类单元,表示第i个分类单元的全部特征,n为分类单元个数;
分类单元Xi的特征分布为Xi(xi1,xi2,…,xim),m为特征个数;
其特征在于:
步骤二,链式方程进行多重预插补,使用缺失数据集训练自编码器,对预插补数据进行矫正;
步骤2.1,链式方程进行多重预插补:
将特征矩阵作为缺失数据集Dincom,缺失数据集Dincom中的数据分为缺失数据与已知数据;
首先对缺失数据集Dincom进行随机插补得到数据集D′,再使用数据集D′训练关系模型,对缺失数据集Dincom中的数据进行多重更新;
令数据集D′中待插补数据x′ij的插补类别大小为L,将数据集D′中缺失数据x′ij对应的一行已知数据(x′i1,…,x′ij-1,x′j+1,…,x′m)设为yi,为每个分类建立逻辑回归模型对缺失值进行插补,插补公式中引入符合正态分布的随机数,防止逻辑回归模型的过拟合;
将缺失数据集Dincom中所有缺失数据进行训练并完成回归插补后,就完成一轮插补,使用逻辑回归模型预测的新值替代原始插补值的得到新的数据集,使用新数据再重复步骤2.1建立新的逻辑回归模型,直到满足迭代次数或达到提前结束条件后,输出预插补结果;
步骤2.2,使用缺失数据集训练自编码器:
使用缺失数据集Dincom,根据如下规则得到掩码矩阵M;
i表示第i个分类单元,j表示第j个特征;
使用M盖住缺失数据集Dincom的缺失数据,以缺失数据集Dincom中的已知数据计算均方根误差,作为损失函数,对隐含层维度大于输入层维度的自编码器进行训练;
步骤2.3,对预插补数据进行矫正:
使用训练好的隐含层维度大于输入层维度的自编码器对步骤2.1中的预插补结果进行矫正,得到最终的插补结果,获得不包含缺失数据的完整数据集;
步骤三,将层次化特征导致的不可适用数据作为额外的特征状态进行处理,使用邻接法建立邻接树;
步骤四,使用步骤三得到的邻接树对蒙特卡洛树进行初始化,然后使用步骤二得到的完整数据集,采用蒙特卡洛树搜索算法进行系统发育树构建;
步骤四的具体方法为:
步骤4.1,选择节点:
将完整数据集中的所有待分类单元作为集合放入蒙特卡洛树的根节点,使用邻接树对蒙特卡洛树进行初始化,然后选择最可能的划分分类单元的子节点,直到达到当前蒙特卡洛树的叶子节点;
步骤4.2,节点探索:
判断当前达到的叶子节点是否能产生对分类单元进行继续划分的子节点,如果能产生,将新的划分结果作为子节点添加到当前蒙特卡洛树中,将新的子节点变为当前节点;如果不能产生,则执行步骤4.3;
步骤4.3,模拟建树:
对当前节点进行模拟运行,使用随机策略生成对分类单元进行完全划分的结束节点;
步骤4.4,评估前馈:
使用不可适用Fitch算法对结束节点进行评分,将评分结果向前传播到在选择过程中遍历的所有节点,对选择过程中遍历的每个节点的评分更新方法由如下公式获得:
其中:
UCB为上置信界得分,UCB越大代表越值得探索,在步骤4.1中也越容易被选中;
为当前节点及其子节点所有模拟生成系统发育树的不可适用Fitch算法得分的均值;
Y为当前节点的不可适用Fitch算法得分;
Nk为当前节点k的访问次数;
N为所有节点的总访问次数;
c为超参数,用以平衡搜索过程中的节点搜索宽度与广度;
步骤4.5,重复步骤4.1至4.4的操作,直到满足程序结束条件,系统发育树构建完成。
2.如权利要求1所述的基于自编码器与蒙特卡洛树的层次化特征系统发育模型,其特征在于,步骤三的具体方法为:
步骤3.1,设所有分类单元作为节点聚集在一起形成虚拟中心X,构成一棵星状树,将不可适用数据作为额外的特征状态,计算分类单元两两之间的杰卡德距离,公式如下:
其中:
J(A,B)为分类单元两两之间的杰卡德距离;
|A∪B|为分类单元A和B的特征总数;
|A∩B|为分类单元特征状态相同的个数;
再根据计算获得的分类单元两两之间的杰卡德距离得到分类单元之间的距离矩阵D,通过距离矩阵D计算出当前星状树所有分支长度总和S0,公式如下:
其中:
n为分类单元总数,即节点总数;
LaX是节点a到虚拟中心X的距离估计;
dab为第a个节点到第b个节点的距离;
计算从第a个到第b个节点的分支长度Sab,Sab计算公式如下:
Sab=(n-2)dab-Ra-Rb
其中:
K为第K个分类单元,即第K个节点;
dKa为第K个节点到第a个节点的距离;
dKb为第K个节点到第b个节点的距离;
找到最小的Sab,将第a个节点和第b个节点作为邻居合并,计算新一轮距离矩阵D,直到所有节点聚合在一棵树中,得到邻接树。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西北大学,未经西北大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110126970.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种高效油水分离滤膜及其制备方法
- 下一篇:一种用于塔吊的智能控制方法及系统