CN108877949A - 基于孤立森林算法和投票机制的唐氏综合症筛查方法 - Google Patents
基于孤立森林算法和投票机制的唐氏综合症筛查方法 Download PDFInfo
- Publication number
- CN108877949A CN108877949A CN201810592920.5A CN201810592920A CN108877949A CN 108877949 A CN108877949 A CN 108877949A CN 201810592920 A CN201810592920 A CN 201810592920A CN 108877949 A CN108877949 A CN 108877949A
- Authority
- CN
- China
- Prior art keywords
- sample
- ptrain
- isolated
- training
- training set
- 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
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/70—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Public Health (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Pathology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Investigating Or Analysing Biological Materials (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于孤立森林算法和投票机制的唐氏综合症筛查方法,该方法包括下述步骤:数据预处理:将多条样本加入数据集;划分数据集,得到A训练集和B训练集,进一步交叉划分A训练集,得到多个训练子集:训练得到多个孤立森林模型及其对应的异常度得分阈值;对B训练集中的样本投票得到每个样本的所得票数:获得预判决阈值以及B训练集中的每条样本的预判决结果;使用训练支持向量机SVM模型进行最终判决。本发明能够提高异常的检出率,降低误诊率。
Description
技术领域
本发明涉及一种基于数据挖掘技术的唐氏综合症的筛查方法,更具体地说,本发明涉及一种基于孤立森林算法、投票机制和支持向量机SVM模型的唐氏综合症筛查方法。
背景技术
唐氏综合征又称先天愚型或21三体综合征,临床表现为严重的智力障碍,该病为21号染色体异常所导致。目前,临床中对治疗21三体综合征尚缺乏特效方法,我国目前主要采用检测孕妇血清中β-hCG、AFP、uE3水平,并结合孕妇临床资料进行风险值评估,再对高风险产妇进行侵入性诊断,并选择性流产来进行预防。
相关文献研究表明,目前我国产前筛查方案、正常值范围以及计算软件大多是基于国外统计数据,由于中国没有自己的产前筛查软件,大部分医院采用欧美设备,这些产前筛查风险评估软件不是针对黄种人的数据进行设定,所以应用到国内会出现准确率降低的问题。据统计唐氏综合征筛查的准确率仅为60%-75%,但实际在中国唐氏筛查准确率更低。而以绒毛膜穿刺或羊水穿刺进行诊断检查的方式始终存在一定侵入性,且造成孕妇流产风险较高,使用受到极大限制。
近年来,随着我国医疗信息系统的完善,各数据端口呈现出多样化且快速增长的发展趋势。为了有效利用医疗数据中存在的关系和规则,数据挖掘技术被应用到医疗卫生领域,在疾病的预防、诊断与治疗过程中发挥着重要的作用。
产前筛查数据是医疗数据中一类比较特殊的数据,具有严重的非均衡性。相关文献表明唐氏综合症的发病率为1/800-1/600,而医院的数据记录中唐氏儿的比例更小。与均衡数据分类问题相比,非均衡情况要困难和复杂的多。传统的机器学习方法针对均衡数据有较好的分类性能,往往偏重多数类,忽略少数类,而对非均衡数据分类效果并不好,难以应用于早、中孕期唐氏综合症的筛查。
孤立森林是一种适用于非均衡数据集的异常检测算法,这个算法本质上是一个无监督学习,不需要数据的类标,当异常数据量太少,只用正常样本构建孤立森林也是可行的,能有效处理高维数据和海量数据。目前,该算法多用于工业界,没有应用于产前诊断上的系统的改良的方法。
发明内容
本发明要解决的技术问题是提供一种基于孤立森林算法和投票机制的唐氏综合症筛查方法,该方法能够提高唐氏儿在中孕期的检出率,降低误诊率。
技术词语解释:
特征:孕妇中孕期唐氏筛查结果数据中的字段,即产检指标;
特征值:产检指标测试值:
样本:每个孕妇中孕期唐氏筛查结果称为一条样本,每条样本包含ns个特征值u1,u2,…ui,…,uns;
数据集:由多条样本组成的数据集;
为了解决上述技术问题,本发明的基于孤立森林算法和投票机制的唐氏综合症筛查方法包括下述步骤:
步骤一:数据预处理:
将每个孕妇中孕期唐氏筛查结果作为一条样本,每条样本包含ns个特征值u1,u2,…ui,…,uns,样本的特征向量为u(u1,u2,…ui,…,uns),5≤ns≤10;将Z条样本加入数据集P=(p1,p2,···pi···pZ),Z≥5000;
步骤二:划分数据集,得到A训练集Ptrain1和B训练集Ptrain2:
首先:初步将数据集P划分成A训练集Ptrain1、B训练集Ptrain2,A训练集Ptrain1只含有阴性样本,B训练集Ptrain2既含有阴性样本又含有阳性样本;
然后:进一步交叉划分A训练集Ptrain1,得到多个训练子集 1≤i≤M;100≤M≤1000;
步骤三:训练多个孤立森林模型:
使用任一训练子集训练孤立森林模型fi,共得到M个孤立森林的模型集合F=(f1,f2...fi...fM),孤立森林模型fi是由T棵孤立树组成的,即fi={t1,...,tT}i,对于训练子集中的一个样本遍历孤立森林中的每一棵孤立树,将样本最终落在第t棵孤立树的层数记为然后根据公式(1)得出样本在T棵孤立树的高度平均值j=1,2,…n;n是中样本数量;
定义异常得分为
其中,中间变量c(ψ)的计算方法如下:
公式(3)中,ψ是随机分配给每棵孤立树根节点的样本数,其中,H(ψ-1)的计算方法如下:
H(ψ-1)=ln(ψ-1)+0.5772156649 (4)
再根据自行设定的污染度参数Cw确定孤立森林fi的异常得分阈值0≤Cw≤1;确定异常得分阈值的方法如下:
对于样本有:
其中,为待定异常得分阈值;
调整待定异常得分阈值的大小,求得满足的最大的待定异常得分阈值即为所求异常得分阈值
对于所有的得到M个孤立森林模型集合F=(f1,f2...fi...fM)以及异常度得分阈值集合
步骤四:对B训练集Ptrain2中的样本投票:
将B训练集Ptrain2中的每一条样本都带入到步骤三中得到的孤立森林模型集合中的每片孤立森林中,并最终被划分到各孤立树的一个叶子节点,针对B训练集Ptrain2中的第k条样本p2_k,设将其带入孤立森林fi的第t棵孤立树,最终所落叶子节点的层数为根据式(1-1)计算该叶子节点在T棵孤立树的高度平均值k=1,2,…m,m是B训练集Ptrain2中的样本数量;然后再根据(2-1)计算该条样本p2_k在孤立森林fi中的异常得分:
当时即判作该条样本p2_k异常,此时孤立森林fi给该条样本p2_k投一票,否则不投票;将孤立森林fi对该条样本p2_k的投票结果记为
按照同样方法,得到孤立森林模型集合F中的其他孤立森林对该条样本p2_k的投票结果;
B训练集Ptrain2中第k条样本p2_k所得票数定义为
同理,获得B训练集Ptrain2中的所有样本的所得票数;
步骤五:获得预判决阈值Thvote以及Ptrain2中的每条样本的预判决结果:
(1)获得预判决阈值Thvote:将B训练集Ptrain2中真阳性样本所得票数的最小值作为预判决阈值,记为Thvote;
其中,代表Ptrain2中真阳性样本集合Strains中第a条样本所得票数;N为真阳性样本集合Strains中样本的数目;
(2)根据预判决阈值Thvote和Ptrain2中样本的得票情况对B训练集Ptrain2中的样本进行预判决:如果Ptrain2中第k条样本所得票数大于等于Thvote,则判为阳性,否则判为阴性;
步骤六:训练支持向量机SVM模型:
使用B训练集Ptrain2中预判决结果为阳性的样本训练支持向量机SVM,训练方法如下:
(1)将B训练集Ptrain2中预判决结果为阳性的样本集合另记为X=(x1,x2,…xi...,xNs),对应的标签记为Y=(y1,y2,…yi...,yNs),Ns的值是步骤五中的预判决为阳性的样本的数量;
(2)采用linear核的SVM核函数,得出适用于唐氏综合征筛查的SVM预测模型,SVM预测模型如下:
式中:
w为分类超平面的法向量;
Cc为惩罚因子,取1;
ξi为松弛变量,取值范围[0,1];
xi为B训练集Ptrain2中预判决结果为阳性的样本集合X中的第i个样本(u1,u2,…uns)i;
yi为第i个样本xi的诊断结果;
bi为分类超平面偏置项;
s.t.代表约束条件;
通过公式(9)和公式(10)进行优化得到分类超平面的法向量w和分类超平面偏置项b,从而得到分类超平面方程:
步骤七:判决:
(1)预判决:使用步骤三中得到的多个孤立森林fi对测试样本投票,孤立森林fi向测试样本Ptestk投票的结果记为
根据投票结果统计测试样本Ptestk所得总票数当测试样本Ptestk所得总票数大于或等于步骤五中得到的判决阈值Thvote时,预判决结果为阳性,否则,预判决结果为阴性,其中:
(2)最终判决:针对预判决结果为阴性的测试样本,将预判决结果作为最终判决结果;针对预判决结果为阳性的测试样本,使用步骤六中得到的支持向量机SVM进行最终判决,方法如下:
将预判决结果为阳性的测试样本的特征向量(u1,u2,…u7)ci作为xi带入分类超平面方程判断结果记录为变量pi;若则判断该测试样本为患病,即pi=1,若则判断该测试样本未患病,即pi=0。
所述步骤三中,每一棵孤立树及每一片孤立森林的构建过程如下:
(1)初始化一颗树,只有一个根节点φ,无叶子节点,从训练子集中随机选择Ψ个样本点作为样本子集,放入树的根节点;其中,Ψ=n/T,n为训练子集的样本数量;
(2)随机指定一个维度,也就是随机选取一个特征ui_1,在根节点数据中随机产生一个切割点qi_1,切割点qi_1在根节点数据中指定维度的最大值和最小值之间;
(3)以此切割点qi_1生成一个超平面,然后将根节点数据空间划分为两个子空间:把指定维度里小于切割点qi_1的数据放在根节点的左孩子节点,把大于等于切割点qi_1的数据放在根节点的右孩子节点;
(4)将步骤(3)得到的孩子节点作为根节点,递归前述步骤(2)和步骤(3),不断构造新的一层孩子节点,直到孩子节点中只有一个数据或孩子节点已到达限定高度HMAX,5≤HMAX≤10层,将此时的孩子节点作为叶子节点,即得到一颗孤立树;在构造各层孩子节点时,指定的维度均不相同,即选取的特征均不相同;
重复步骤(1)~(4),针对训练子集获得T棵孤立树,即构成一片孤立森林fi。
所述步骤一中,每条样本包含7个特征值u1,u2,u3,u4,u5,u6,u7,各特征含义如下:
u1:预产年龄;
u2:孕妇血液中甲胎蛋白的浓度在相同孕周人群中的甲胎蛋白浓度中位数的倍数;
u3:孕妇血液中人绒毛膜促性腺激素的浓度在相同孕周人群中的人绒毛膜促性腺激素浓度中位数的倍数;
u4:孕妇血液中血清游离雌三醇的浓度在相同孕周人群中的血清游离雌三醇浓度中位数的倍数;
u5:孕周;
u6:体重;
u7:胎头双顶径。
与现有技术相比本发明的有益效果是:
1.本发明所述基于孤立森林算法和投票机制的唐氏综合症筛查方法将孤立森林算法应用到唐氏综合症的产前筛查,该算法的效率高,并且数据的实际情况与算法适用情况的契合度较高,尤其是异常样本点在训练集和测试集的分配上,孤立森林算法支持训练集只有正样本,并且可以通过对训练集大小的调整,提高异常的检出率。
2.本发明所述基于孤立森林算法和投票机制的唐氏综合症筛查方法将孤立森林算法经过投票机制的优化后应用到中孕期的唐氏综合症的产前筛查,检出率高于医院使用产前筛查风险评估软件得到的检出率81.0%。
3.本发明所述基于孤立森林算法和投票机制的唐氏综合症筛查方法将孤立森林算法经过投票机制的优化后,结合支持向量机SVM分类模型,应用到中孕期的唐氏综合症的产前筛查,检出率高于医院使用产前筛查风险评估软件得到的检出率,同时假阳性率低于医院使用产前筛查风险评估软件得到的假阳性率9.8%,降低了误诊率。
附图说明
图1是本发明的流程图。
具体实施方式
本发明所述的唐氏综合症筛查方法,是将数据挖掘的算法应用于产前诊断,根据产前诊断数据严重非均衡的特性适当地选取孤立森林异常检测算法,并且通过定向搜索的特征选取方法以及训练集交叉划分构建多森林投票的机制,结合支持向量机SVM模型的使用,使本发明所述的唐氏综合症筛查方法具有更高的检出率,更低的假阳性率。
对医院提供的数据使用定向搜索的方法进行特征选取,可能与唐氏综合症相关的特征有10个,包括预产年龄、AFP MoM、hCGb MoM、uE3MoM、孕周、体重、BPD、AFP、hCGb、uE3;下面以实验效果最好的7个特征为例进行详细说明。
结合说明书附图,本发明的具体实施方式如下:
参阅图1,基于孤立森林算法和投票机制的唐氏综合症筛查方法主要包括7个步骤:
步骤一:数据预处理:
本实施例中所使用的数据是由吉林大学附属第一医院生殖中心提供的,数据内容是100138条中孕期孕妇的产前筛查结果,共58个字段,其中可能与唐氏综合症相关的特征字段有10个。对医院提供的数据使用定向搜索的方法进行特征选取,获得样本的特征向量u(u1,u2,u3,u4,u5,u6,u7);由于医院的数据多为人工录入,而且孕妇及其家人的配合情况不同,导致数据的某些特征值缺失,不能作为训练或测试的数据,需要删除;对特征数值缺失的不良数据进行清洗后得到43733条样本。数据集可记作P=(p1,p2…p43733),其中,pi表示第i个样本,pi=(u1,u2,…,u7),i∈[1,43733];
u1:预产年龄,
u2:孕妇血液中甲胎蛋白的浓度在相同孕周人群中的甲胎蛋白浓度中位数的倍数(AFPMoM),
u3:孕妇血液中人绒毛膜促性腺激素的浓度在相同孕周人群中的人绒毛膜促性腺激素浓度中位数的倍数(hCGb MoM),
u4:孕妇血液中血清游离雌三醇的浓度在相同孕周人群中的血清游离雌三醇浓度中位数的倍数(uE3MoM),
u5:孕周,
u6:体重,
u7:胎头双顶径(BPD)
步骤二:划分数据集,得到训练集与测试集:
(1)因为唐氏筛查数据集中正负项集严重不均衡(唐氏儿的数量远远小于正常孩子的数量),初步将数据划分成两个A训练集Ptrain1、B训练集Ptrain2与一个测试集Ptest,A训练集Ptrain1只含有阴性样本,B训练集Ptrain2和测试集Ptest既含有阴性样本又含有阳性样本;
(2)进一步交叉划分A训练集Ptrain1,得到多个训练子集(各训练子集中的样本可以有重叠的,即不同训练子集中可以有一些相同样本),1≤i≤M:本实施例中优选M=500。
步骤三:训练多个孤立森林模型:
使用任一训练子集(1≤i≤M,i是整数)训练孤立森林模型fi,共得到M个孤立森林模型集合F=(f1,f2...fi...fM),具体过程如下:
首先,孤立森林模型fi是由T棵孤立树组成的,即fi={t1,...,tT}i,而每一棵孤立树的构建需要以下步骤:
(1)初始化一颗树,只有一个根节点φ,无叶子节点,从训练子集中随机选择Ψ个样本作为样本子集,放入树的根节点;
(2)随机指定一个维度,也就是随机选取一个特征ui_1,在根节点数据中随机产生一个切割点qi_1,切割点qi_1在根节点数据中指定维度的最大值和最小值之间;
(3)以此切割点qi_1生成一个超平面,然后将根节点数据空间划分为两个子空间:把指定维度里小于切割点qi_1的数据放在根节点的左孩子节点,把大于等于切割点qi_1的数据放在根节点的右孩子节点;
(4)将步骤(3)得到的孩子节点作为根节点,递归前述步骤(2)和步骤(3),不断构造新的一层孩子节点,直到孩子节点中只有一个数据(即无法再继续切割)或孩子节点已到达限定高度HMAX,HMAX=7层,将此时的孩子节点作为叶子节点,即得到一颗孤立树;在构造各层孩子节点时,指定的维度均不相同,即选取的特征均不相同;
按照上述步骤,针对训练子集获得T棵孤立树,即构成一片孤立森林fi。
对于训练子集中的一个样本遍历孤立森林中的每一棵孤立树,将样本最终落在第t棵孤立树的层数记为然后根据式(1)得出样本在T棵孤立树的高度平均值j=1,2,…n;n是中样本数量;
定义异常得分为
其中中间变量c(ψ)的计算方法如下:
公式(3)中,ψ是随机分配给每棵孤立树根节点的样本数,其中,H(ψ-1)的计算方法如下:
H(ψ-1)=ln(ψ-1)+0.5772156649 (4)
再根据自行设定的污染度参数C确定孤立森林fi的异常得分阈值0≤C≤1;具体确定异常得分阈值的方法如下:
对于样本有:
其中,为待定异常得分阈值;
调整待定异常得分阈值的大小,求得满足的最大的待定异常得分阈值即为所求异常得分阈值
然后对于所有的得到M个孤立森林模型集合F=(f1,f2...fi...fM)以及异常度得分阈值集合
步骤四:对训练集Ptrain2中的样本投票:
将B训练集Ptrain2中的每一条样本都带入到步骤三中得到的孤立森林模型集合中的每片孤立森林中,并最终被划分到各孤立树的一个叶子节点。针对B训练集Ptrain2中的第k条样本p2_k,设将其带入孤立森林fi的第t棵孤立树,最终所落叶子节点的层数为根据式(1-1)计算该叶子节点在T棵孤立树的高度平均值k=1,2,…m,m是B训练集Ptrain2中的样本数量;然后再根据(2-1)计算该条样本p2_k在孤立森林fi中的异常得分:
当时即判作该条样本p2_k异常,此时孤立森林fi给该条样本p2_k投一票,否则不投票;将孤立森林fi对该条样本p2_k的投票结果记为
按照同样方法,得到孤立森林模型集合F中的其他孤立森林对该条样本p2_k的投票结果;
B训练集Ptrain2中第k条样本p2_k所得票数定义为
同理,获得B训练集Ptrain2中的所有样本的所得票数。
步骤五:获得预判决阈值Thvote以及Ptrain2中的每条样本的预判决结果:
(1)获得预判决阈值Thvote:将B训练集Ptrain2中真阳性样本所得票数的最小值作为预判决阈值,记为Thvote;
其中,代表Ptrain2中真阳性样本集合Strains中第a条样本所得票数;N为真阳性样本集合Strains中样本的数目。
(2)根据预判决阈值Thvote和Ptrain2中样本的得票情况对B训练集Ptrain2中的样本进行预判决:如果Ptrain2中第k条样本所得票数大于等于Thvote,则判为阳性,否则判为阴性。
步骤六:训练支持向量机SVM模型:
使用B训练集Ptrain2中预判决结果为阳性的样本训练支持向量机SVM,具体过程如下:
(1)将B训练集Ptrain2中预判决结果为阳性的样本集合另记为X=(x1,x2,…,xNs),对应的标签记为Y=(y1,y2,…,yNs),Ns的值是步骤五中的预判决为阳性的样本的数量。
(2)采用linear核的SVM核函数,得出适用于唐氏综合征筛查的SVM预测模型,SVM预测模型如下:
式中:
w为分类超平面的法向量;
Cc为惩罚因子,取1;
ξi为松弛变量,取值范围[0,1];
xi为B训练集Ptrain2中预判决结果为阳性的样本集合X中的第i个样本(u1,u2,…u7)i;
yi为第i个样本xi的诊断结果;
bi为分类超平面偏置项;
s.t.代表约束条件;
通过公式(9)和公式(10)进行优化得到分类超平面的法向量w和分类超平面偏置项b,从而得到分类超平面方程
步骤七:模型测试:
(1)预判决:使用步骤三中得到的多个孤立森林fi对测试集Ptest中的样本投票,孤立森林fi向测试集Ptest中第k条测试样本Ptestk投票的结果记为
根据投票结果统计测试集Ptest中第k条测试样本Ptestk所得总票数当测试集Ptest中第k条测试样本Ptestk所得总票数大于或等于步骤五中得到的判决阈值Thvote时,预判决结果为阳性,否则,预判决结果为阴性,其中:
(2)最终判决:使用步骤六中得到的支持向量机SVM对测试集Ptest中所有预判决果为阳性的样本进行最终判决,具体方法如下:
将测试集Ptest中的测试样本的特征向量(u1,u2,…u7)ci作为xi带入分类超平面方程判断结果记录为变量pi;若则判断该测试样本为患病,即pi=1,若则判断该测试样本未患病,即pi=0。
为了进一步评估本发明所述唐氏综合症筛查方法,根据测试集最终判决结果计算检出率(TPR)和假阳性率(FPR),具体过程如下:
TPR=TP/(TP+FN)
FPR=FP/(FP+TN)
其中TP代表分类结果为阳性,实际也是阳性的样本数;FN代表分类结果为阴性,实际是阳性的样本数;FP代表分类结果为阳性实际是阴性的样本数;TN代表分类结果为阴性,实际也是阴性的样本数。
根据测试集最终判决结果计算出选用不同孕检指标作为特征时的检出率(TPR)和假阳性率(FPR),结果如下:
当选择预产年龄,体重,AFP MoM,hCGb MoM,uE3MoM.五个指标作为特征时,检出率为90.4%,假阳性率为8.1%。
当选择预产年龄、AFP MoM、hCGb MoM、uE3 MoM、孕周、体重、BPD七个指标作为特征时,检出率为93.6%,假阳性率为7%。
当选择预产年龄、AFP MoM、hCGb MoM、uE3 MoM、孕周、体重、BPD、AFP、hCGb、uE3十个指标作为特征时,检出率为93.1%,假阳性率为7.3%。
可以看出上述结果的检出率,均高于医院使用产前筛查风险评估软件得到的检出率81.0%;假阳性率(FPR)均低于医院使用产前筛查风险评估软件得到的假阳性率9.8%。
Claims (3)
1.一种基于孤立森林算法和投票机制的唐氏综合症筛查方法,其特征在于包括下述步骤:
步骤一:数据预处理:
将每个孕妇中孕期唐氏筛查结果作为一条样本,每条样本包含ns个特征值u1,u2,…ui,…,uns,样本的特征向量为u(u1,u2,…ui,…,uns),5≤ns≤10;将Z条样本加入数据集P=(p1,p2,…pi…pZ),Z≥5000;
步骤二:划分数据集,得到A训练集Ptrain1和B训练集Ptrain2:
首先:初步将数据集P划分成A训练集Ptrain1、B训练集Ptrain2,A训练集Ptrain1只含有阴性样本,B训练集Ptrain2既含有阴性样本又含有阳性样本;
然后:进一步交叉划分A训练集Ptrain1,得到多个训练子集 1≤i≤M;100≤M≤1000;
步骤三:训练多个孤立森林模型:
使用任一训练子集训练孤立森林模型fi,共得到M个孤立森林的模型集合F=(f1,f2...fi...fM),孤立森林模型fi是由T棵孤立树组成的,即fi={t1,...,tT}i,对于训练子集中的一个样本遍历孤立森林中的每一棵孤立树,将样本最终落在第t棵孤立树的层数记为然后根据公式(1)得出样本在T棵孤立树的高度平均值n是中样本数量;
定义异常得分为
其中,中间变量c(ψ)的计算方法如下:
公式(3)中,ψ是随机分配给每棵孤立树根节点的样本数,其中,H(ψ-1)的计算方法如下:
H(ψ-1)=ln(ψ-1)+0.5772156649 (4)
再根据自行设定的污染度参数Cw确定孤立森林fi的异常得分阈值确定异常得分阈值的方法如下:
对于样本有:
其中,为待定异常得分阈值;
调整待定异常得分阈值的大小,求得满足的最大的待定异常得分阈值即为所求异常得分阈值
对于所有的得到M个孤立森林模型集合F=(f1,f2...fi...fM)以及异常度得分阈值集合
步骤四:对B训练集Ptrain2中的样本投票:
将B训练集Ptrain2中的每一条样本都带入到步骤三中得到的孤立森林模型集合中的每片孤立森林中,并最终被划分到各孤立树的一个叶子节点,针对B训练集Ptrain2中的第k条样本p2_k,设将其带入孤立森林fi的第t棵孤立树,最终所落叶子节点的层数为根据式(1-1)计算该叶子节点在T棵孤立树的高度平均值m是B训练集Ptrain2中的样本数量;然后再根据(2-1)计算该条样本p2_k在孤立森林fi中的异常得分:
当时即判作该条样本p2_k异常,此时孤立森林fi给该条样本p2_k投一票,否则不投票;将孤立森林fi对该条样本p2_k的投票结果记为
按照同样方法,得到孤立森林模型集合F中的其他孤立森林对该条样本p2_k的投票结果;
B训练集Ptrain2中第k条样本p2_k所得票数定义为
同理,获得B训练集Ptrain2中的所有样本的所得票数;
步骤五:获得预判决阈值Thvote以及Ptrain2中的每条样本的预判决结果:
(1)获得预判决阈值Thvote:将B训练集Ptrain2中真阳性样本所得票数的最小值作为预判决阈值,记为Thvote;
其中,代表Ptrain2中真阳性样本集合Strains中第a条样本所得票数;N为真阳性样本集合Strains中样本的数目;
(2)根据预判决阈值Thvote和Ptrain2中样本的得票情况对B训练集Ptrain2中的样本进行预判决:如果Ptrain2中第k条样本所得票数大于等于Thvote,则判为阳性,否则判为阴性;
步骤六:训练支持向量机SVM模型:
使用B训练集Ptrain2中预判决结果为阳性的样本训练支持向量机SVM,训练方法如下:
(1)将B训练集Ptrain2中预判决结果为阳性的样本集合另记为X=(x1,x2,…xi...,xNs),对应的标签记为Y=(y1,y2,…yi...,yNs),Ns的值是步骤五中的预判决为阳性的样本的数量;
(2)采用linear核的SVM核函数,得出适用于唐氏综合征筛查的SVM预测模型,SVM预测模型如下:
式中:
w为分类超平面的法向量;
Cc为惩罚因子,取1;
ξi为松弛变量,取值范围[0,1];
xi为B训练集Ptrain2中预判决结果为阳性的样本集合X中的第i个样本(u1,u2,…uns)i;
yi为第i个样本xi的诊断结果;
bi为分类超平面偏置项;
s.t.代表约束条件;
通过公式(9)和公式(10)进行优化得到分类超平面的法向量w和分类超平面偏置项b,从而得到分类超平面方程:
步骤七:判决:
(1)预判决:使用步骤三中得到的多个孤立森林fi对测试样本投票,孤立森林fi向测试样本Ptestk投票的结果记为
根据投票结果统计测试样本Ptestk所得总票数当测试样本Ptestk所得总票数大于或等于步骤五中得到的判决阈值Thvote时,预判决结果为阳性,否则,预判决结果为阴性,其中:
(2)最终判决:针对预判决结果为阴性的测试样本,将预判决结果作为最终判决结果;针对预判决结果为阳性的测试样本,使用步骤六中得到的支持向量机SVM进行最终判决,方法如下:
将预判决结果为阳性的测试样本的特征向量(u1,u2,…uns)ci作为xi带入分类超平面方程判断结果记录为变量pi;若则判断该测试样本为患病,即pi=1,若则判断该测试样本未患病,即pi=0。
2.根据权利要求1所述的基于孤立森林算法和投票机制的唐氏综合症筛查方法,其特征在于所述步骤三中,每一棵孤立树及每一片孤立森林的构建过程如下:
(1)初始化一颗树,只有一个根节点φ,无叶子节点,从训练子集中随机选择Ψ个样本点作为样本子集,放入树的根节点;其中,Ψ=n/T,n为训练子集的样本数量;
(2)随机指定一个维度,也就是随机选取一个特征ui_1,在根节点数据中随机产生一个切割点qi_1,切割点qi_1在根节点数据中指定维度的最大值和最小值之间;
(3)以此切割点qi_1生成一个超平面,然后将根节点数据空间划分为两个子空间:把指定维度里小于切割点qi_1的数据放在根节点的左孩子节点,把大于等于切割点qi_1的数据放在根节点的右孩子节点;
(4)将步骤(3)得到的孩子节点作为根节点,递归前述步骤(2)和步骤(3),不断构造新的一层孩子节点,直到孩子节点中只有一个数据或孩子节点已到达限定高度HMAX,5≤HMAX≤10层,将此时的孩子节点作为叶子节点,即得到一颗孤立树;在构造各层孩子节点时,指定的维度均不相同,即选取的特征均不相同;
重复步骤(1)~(4),针对训练子集获得T棵孤立树,即构成一片孤立森林fi。
3.根据权利要求1所述的基于孤立森林算法和投票机制的唐氏综合症筛查方法,其特征在于所述步骤一中,每条样本包含7个特征值u1,u2,u3,u4,u5,u6,u7,各特征含义如下:
u1:预产年龄;
u2:孕妇血液中甲胎蛋白的浓度在相同孕周人群中的甲胎蛋白浓度中位数的倍数;
u3:孕妇血液中人绒毛膜促性腺激素的浓度在相同孕周人群中的人绒毛膜促性腺激素浓度中位数的倍数;
u4:孕妇血液中血清游离雌三醇的浓度在相同孕周人群中的血清游离雌三醇浓度中位数的倍数;
u5:孕周;
u6:体重;
u7:胎头双顶径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810592920.5A CN108877949B (zh) | 2018-06-11 | 2018-06-11 | 基于孤立森林算法和投票机制的唐氏综合症筛查方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810592920.5A CN108877949B (zh) | 2018-06-11 | 2018-06-11 | 基于孤立森林算法和投票机制的唐氏综合症筛查方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108877949A true CN108877949A (zh) | 2018-11-23 |
CN108877949B CN108877949B (zh) | 2021-04-27 |
Family
ID=64337790
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810592920.5A Active CN108877949B (zh) | 2018-06-11 | 2018-06-11 | 基于孤立森林算法和投票机制的唐氏综合症筛查方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108877949B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110149258A (zh) * | 2019-04-12 | 2019-08-20 | 北京航空航天大学 | 一种基于孤立森林的汽车can总线网络数据异常检测方法 |
CN110197194A (zh) * | 2019-04-12 | 2019-09-03 | 佛山科学技术学院 | 一种基于改进随机森林的轴承故障诊断方法及装置 |
CN110232525A (zh) * | 2019-06-14 | 2019-09-13 | 腾讯科技(深圳)有限公司 | 一种企业风险监控方法、装置、服务器及存储介质 |
CN110399935A (zh) * | 2019-08-02 | 2019-11-01 | 哈工大机器人(合肥)国际创新研究院 | 基于孤立森林机器学习的机器人实时异常监测方法及系统 |
CN110475246A (zh) * | 2019-08-28 | 2019-11-19 | 中山大学 | 基于孤立森林和序贯概率比检验的恶意锚节点检测方法 |
CN110631481A (zh) * | 2019-10-31 | 2019-12-31 | 湖北民族大学 | 一种钢材外形参数测量方法及系统 |
CN110705635A (zh) * | 2019-09-29 | 2020-01-17 | 京东城市(北京)数字科技有限公司 | 用于生成隔离森林的方法和装置 |
CN112971795A (zh) * | 2021-02-07 | 2021-06-18 | 中国人民解放军总医院 | 心电信号质量评估方法 |
CN112971762A (zh) * | 2021-02-07 | 2021-06-18 | 中国人民解放军总医院 | 呼吸信号质量评估方法 |
CN114611616A (zh) * | 2022-03-16 | 2022-06-10 | 吕少岚 | 一种基于集成孤立森林的无人机智能故障检测方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106960358A (zh) * | 2017-01-13 | 2017-07-18 | 重庆小富农康农业科技服务有限公司 | 一种基于农村电子商务大数据深度学习的金融欺诈行为量化检测系统 |
CN107426207A (zh) * | 2017-07-21 | 2017-12-01 | 哈尔滨工程大学 | 一种基于SA‑iForest的网络入侵异常检测方法 |
-
2018
- 2018-06-11 CN CN201810592920.5A patent/CN108877949B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106960358A (zh) * | 2017-01-13 | 2017-07-18 | 重庆小富农康农业科技服务有限公司 | 一种基于农村电子商务大数据深度学习的金融欺诈行为量化检测系统 |
CN107426207A (zh) * | 2017-07-21 | 2017-12-01 | 哈尔滨工程大学 | 一种基于SA‑iForest的网络入侵异常检测方法 |
Non-Patent Citations (2)
Title |
---|
朱文浩: "基于三维人脸特征的计算机辅助疾病诊断技术研究", 《电子技术及信息科学》 * |
段美宽: "网络功能虚拟化环境下的故障管理", 《中国优秀硕士学位论文信息科技辑》 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110149258A (zh) * | 2019-04-12 | 2019-08-20 | 北京航空航天大学 | 一种基于孤立森林的汽车can总线网络数据异常检测方法 |
CN110197194A (zh) * | 2019-04-12 | 2019-09-03 | 佛山科学技术学院 | 一种基于改进随机森林的轴承故障诊断方法及装置 |
CN110232525A (zh) * | 2019-06-14 | 2019-09-13 | 腾讯科技(深圳)有限公司 | 一种企业风险监控方法、装置、服务器及存储介质 |
CN110232525B (zh) * | 2019-06-14 | 2024-04-26 | 腾讯科技(深圳)有限公司 | 一种企业风险获取方法、装置、服务器及存储介质 |
CN110399935A (zh) * | 2019-08-02 | 2019-11-01 | 哈工大机器人(合肥)国际创新研究院 | 基于孤立森林机器学习的机器人实时异常监测方法及系统 |
CN110475246B (zh) * | 2019-08-28 | 2021-01-26 | 中山大学 | 基于孤立森林和序贯概率比检验的恶意锚节点检测方法 |
CN110475246A (zh) * | 2019-08-28 | 2019-11-19 | 中山大学 | 基于孤立森林和序贯概率比检验的恶意锚节点检测方法 |
CN110705635A (zh) * | 2019-09-29 | 2020-01-17 | 京东城市(北京)数字科技有限公司 | 用于生成隔离森林的方法和装置 |
CN110705635B (zh) * | 2019-09-29 | 2020-11-03 | 京东城市(北京)数字科技有限公司 | 用于生成隔离森林的方法和装置 |
CN110631481A (zh) * | 2019-10-31 | 2019-12-31 | 湖北民族大学 | 一种钢材外形参数测量方法及系统 |
CN112971795A (zh) * | 2021-02-07 | 2021-06-18 | 中国人民解放军总医院 | 心电信号质量评估方法 |
CN112971762A (zh) * | 2021-02-07 | 2021-06-18 | 中国人民解放军总医院 | 呼吸信号质量评估方法 |
CN112971762B (zh) * | 2021-02-07 | 2023-04-18 | 中国人民解放军总医院 | 呼吸信号质量评估方法 |
CN112971795B (zh) * | 2021-02-07 | 2023-04-18 | 中国人民解放军总医院 | 心电信号质量评估方法 |
CN114611616A (zh) * | 2022-03-16 | 2022-06-10 | 吕少岚 | 一种基于集成孤立森林的无人机智能故障检测方法及系统 |
CN114611616B (zh) * | 2022-03-16 | 2023-02-07 | 吕少岚 | 一种基于集成孤立森林的无人机智能故障检测方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108877949B (zh) | 2021-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108877949A (zh) | 基于孤立森林算法和投票机制的唐氏综合症筛查方法 | |
CN109119167B (zh) | 基于集成模型的脓毒症死亡率预测系统 | |
Kruschke et al. | Bayesian estimation in hierarchical models | |
CN107403072A (zh) | 一种基于机器学习的2型糖尿病预测预警方法 | |
Muthén | Latent variable mixture modeling | |
CN105512477B (zh) | 基于降维组合分类算法非计划性再入院风险评估预测模型 | |
CN103632168B (zh) | 一种机器学习中的分类器集成方法 | |
Klavans et al. | Toward an objective, reliable and accurate method for measuring research leadership | |
CN109785976A (zh) | 一种基于Soft-Voting的痛风病分期预测系统 | |
CN102930163A (zh) | 一种2型糖尿病风险状态判定方法 | |
CN111009321A (zh) | 一种机器学习分类模型在青少年孤独症辅助诊断中的应用方法 | |
CN108847285A (zh) | 基于机器学习的孕前期及孕中期唐氏综合征筛查方法 | |
CN107463766A (zh) | 血糖预测模型的生成方法、装置及计算机可读存储介质 | |
CN107170445A (zh) | 基于语音混合信息特征协同优选判别的帕金森症检测装置 | |
CN106980815A (zh) | 基于h‑b分级评分监督下的面瘫客观评估方法 | |
CN108647707A (zh) | 概率神经网络创建方法、故障诊断方法及装置、存储介质 | |
CN111090579A (zh) | 基于皮尔森相关性加权关联分类规则的软件缺陷预测方法 | |
CN107808663A (zh) | 基于dbn和rf算法的帕金森病语音数据分类系统 | |
CN113674862A (zh) | 一种基于机器学习的急性肾功能损伤发病预测方法 | |
CN111428655A (zh) | 一种基于深度学习的头皮检测方法 | |
CN113901705A (zh) | 一种火灾风险评估方法、装置、终端设备及存储介质 | |
US20230386665A1 (en) | Method and device for constructing autism spectrum disorder (asd) risk prediction model | |
CN108663334A (zh) | 基于多分类器融合寻找土壤养分光谱特征波长的方法 | |
CN111986819A (zh) | 药物不良反应监测方法、装置、电子设备及可读存储介质 | |
CN110010246A (zh) | 一种基于神经网络和置信区间的疾病智能诊断技术 |
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 |