DNA序列分类.docx
《DNA序列分类.docx》由会员分享,可在线阅读,更多相关《DNA序列分类.docx(21页珍藏版)》请在冰豆网上搜索。
DNA序列分类
DNA序列分类的统计分析
承诺书
我们仔细阅读了中国大学生数学建模竞赛的竞赛规则.
我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。
我们知道,抄袭别人的成果是违反竞赛规则的,如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。
如有违反竞赛规则的行为,我们将受到严肃处理。
我们参赛选择的题号是(从A/B/C/D中选择一项填写):
A
我们的参赛报名号为(如果赛区设置报名号的话):
所属学校(请填写完整的全名):
山东省山东工商学院数学与信息科学学院
参赛队员(打印并签名):
1.许东方
2.钱丽美
3.吴文姝
指导教师或指导教师组负责人(打印并签名):
刘重阳
日期:
2012年8月16日
赛区评阅编号(由赛区组委会评阅前进行编号):
全国大学生数学建模竞赛
编号专用页
赛区评阅编号(由赛区组委会评阅前进行编号):
赛区评阅记录(可供赛区评阅时使用):
评
阅
人
评
分
备
注
全国统一编号(由赛区组委会送交全国前编号):
全国评阅编号(由全国组委会评阅前进行编号):
DNA序列分类的统计分析
摘要:
本问题是一个关于DNA序列分类的统计分析的问题,题中可以分为两个问题,问题一:
从已经分类中的DNA序列中提取特征,构造分类方法,并用已知类别的序列,衡量该方法是否足够好并用最满意的方法,对另外20个未标明类别的人工序列进行分类;问题二:
数据文件给出了182个较长的自然DNA序列,用问题一中的最优分类方法对它们进行分类,给出分类结果。
故,本文针对DNA序列的碱基(碱基a,碱基t碱基,g,碱基c)的含量特征将DNA序列进行分类。
问题一是在已知A、B两类DNA序列模型的条件下,在基于碱基含量特征的判别模型中找到DNA序列的判定标准。
再利用不同判定标准将各个串DNA序列进行分类,并找到最优判定方法。
本文采用三种方法进行判定:
1、欧式距离判别模型:
根据各类DNA序列的碱基的出现次数的均值进行统计,利用欧式距离判别模型计算出判别标准。
然后,将已分类的前20组DNA序列再次分类进行检验,得到准确率。
最后,将后20组DNA序列进行分类。
得到欧式距离判别模型的准确率为95%。
2、费歇(Fisher)判别模型:
根据碱基出现次数的均值进行统计,利用Fisher判别模型计算出已经分类中的DNA序列中的判别标准。
然后,将已分类的前20组DNA序列再次分类进行检验,得到准确率。
最后,将后20组DNA序列进行分类。
得到Fisher判别模型的准确率同样为95%。
3、贝叶斯(Bayes)判别模型:
根据各类DNA序列的碱基的出现频率的均值进行统计,并计算额外提供样品属于类的条件概率,比较两个概率的大小。
将额外提供样品判归为来自概率最大的总体。
通过对上述三种判定方法的总结与分析,最终确定:
贝叶斯(Bayes)判别模型是最优判定模型。
得到结果:
A类:
222325272934353637
B类:
2124262830313233383940
问题二是在得出问题一的计算结果将比较长的自然DNA序列进行分类,相当于问题一的拓展模型。
所以,只要将比较长的自然DNA序列代入问题一中最好的判定模型Bayes判别模型并计算,就可以进行DNA序列的分类了。
得到结果:
A类:
3、4、5、6、7、8、9、10、11、13、14、15、16、17、18、19、20、21、22、23、24、27、30、31、32、34、35、37、38、39、41、42、47、49、52、53、55、57、58、61、62、63、64、67、68、69、70、71、72、73、74、77、79、80、81、82、83、86、87、88、89、90、91、93、95、97、99、100、101、104、107、108、109、111、118、120、121、126、128、131、134、135、136、137、139、140、141、142、145、147、148、149、150、152、153、156、157、158、159、162、164、169、171、172、173、174、176、178、181
B类:
1、2、12、26、33、36、40、43、48、54、65、66、75、76、78、84、92、94、96、98、103、106、111、119、122、124、125、127、129、130、132、133、138、143、144、154、160、161、163、166、168、170、175、179、180、182.
关键字:
DNA序列分类,欧式距离判别模型,Fisher判别模型,Bayes判别模型
1、问题重述:
本问题是一个关于DNA序列分类的统计分析的问题,题中可以分为两个小问题:
问题一:
有20个已知类别的人工制造的序列(见附录1),其中序列标号1—10为A类,11-20为B类。
请从中提取特征,构造分类方法,并用这些已知类别的序列,衡量该方法是否足够好。
然后用你认为满意的方法,对另外20个未标明类别的人工序列(标号21—40)(见附录1)进行分类,把结果用序号(按从小到大的顺序)标明它们的类别(无法分类的不写入):
问题二:
在同样网址的数据文件Nat-model-data中给出了182个自然DNA序列,它们都较长。
问题一分类方法对它们进行分类,并给出分类结果。
2、问题分析:
2.1总体分析
对于问题一,应首先对不同种类的各个序列提取特征,然后给出相应的数学表示,最后构造判别方法并进行筛选,对于任意一个DNA序列,能够反映该序列的特征有两个:
1、DNA序列的碱基(碱基a,碱基t碱基,g,碱基c)含量;
2、DNA序列碱基组成的3字符串的含量
对于特征
(1):
首先,利用欧式距离判别模型和Fisher判别模型分别计算出判别标准。
然后,分别将已分类的前20组DNA序列再次分类进行检验,得到准确率。
最后,将后20组DNA序列进行分类。
得到欧式距离判别模型和Fisher判别模型的准确率。
通过对两种判定方法的总结与分析,最终得出较好的判别方法;
对于问题二,是在得出问题一的计算结果将比较长的自然DNA序列进行分类,相当于问题一的拓展模型。
所以,只要将比较长的自然DNA序列代入问题一中最好的判定方法并计算,就可以进行DNA序列的分类了。
2.2基于碱基含量特征的判别模型
首先,考虑采用根据各类DNA序列的碱基的含量作为序列特征。
由题意可知,再不用于编码的蛋白质的序列片段中,a和t的含量相对较多,因此,以碱基的含量作为DNA序列的结构特征是可行的。
将序列中的
的出现次数记为
将四种碱基表示成的四维向量
来进行计算,记标号为
的序列的特征向量为
,其中,任意序列的特征向量与一个四维空间的点对应。
在本题中,已知分类的DNA序列样本共有n=20个,其中,前10个属于A类,后10个属于B类。
对此,我们分别采用欧氏距离判别模型、Fisher判别模型和Bayes判别模型对DNA序列样本进行分类。
通过对三种种判定方法的总结与分析,最终确定最优判定模型。
3、符号说明与基本假设:
3.1符号说明
na:
任意给出的DNA序列中a的百分含量;
ng:
任意给出的DNA序列中g的百分含量;
nt:
任意给出的DNA序列中t的百分含量;
nc:
任意给出的DNA序列中c的百分含量;
Gi:
由具有相同特征属性的个体构成的类
3.2基本假设
1、假设碱基序列的特征值包括:
碱基含量特征、碱基位置、由碱基组成的字符串特征;
2、假设各种碱基之间的内部结构忽略;
3、假设在对DNA序列分类时,是从碱基层次上进行分类,而不是从氨基酸层次上分类。
4、假设无法分类的序列在待分类序列,即在样本序列21-40中不超过5%;
5、假设无法分类的序列在DNA序列中是均匀分布的;
6、假设题中所给的数据无误差;
7、假设用4种碱基a、c、g、t的含量作为指标来判别类别是充分的;
4、模型建立与求解:
4.1问题一
4.1.1欧氏距离分类模型
在欧氏距离分类模型中,将每一个样本看成四维空间的一个点,以他们到不同集合几何中心的欧氏距离作为判断依据,具体步骤:
1、我们分别对10个A类的DNA序列的4中碱基出现次数进行统计得到表1:
表1
碱基种类
样本出现次数
a
c
g
T
x1
33
19
44
15
x2
30
18
46
17
x3
30
24
50
7
x4
47
12
20
32
x5
36
26
47
12
x6
39
14
44
14
x7
39
11
40
21
x8
31
18
41
21
x9
23
23
48
17
x10
20
30
45
15
平均值a
31.8
19.5
42.5
17.1
表1
再对10个B类的DNA序列的4中碱基出现次数进行统计得到表2:
表2
碱基种类
样本出现次数
a
c
g
T
x11
39
5
11
55
x12
36
3
16
55
x13
28
11
14
57
x14
33
9
13
55
x15
32
0
7
71
x16
40
9
10
51
x17
39
27
15
29
x18
32
13
10
55
x19
24
16
8
62
x20
22
19
7
62
平均值b
23.50
11.20
11.10
55.20
表2
2、设有两个总体(或称两类)A、B,从第一个总体中抽取10个样品,从第二个总体中抽取10个样品,每个样品测量4个指标(a,c,g,t)如表1,表2。
今任取一个样品,实测指标值为
。
3、首先计算X到A、B总体的距离,分别记为
和
,按距离最近准则判别归类,则可写成:
则可计算出
4、然后比较
和
大小,按距离最近准则判别归类
5、用此算法对已知样本A1-A20进行分类,发现:
除了A17被错误的分到了A类外,其余样本全部正确,准确率达到95%。
6、利用程序一(见附录2)对人工序列A21-A40进行分类,得到的结果是
A类:
222325272930323435363739
B类:
2124262831333840
4.1.2Fisher判别模型
Fisher分类方法的思想就是将四维的样本映射成一维的特征值y,并依据u来进行判别。
具体的做法是先引入一个与样本同维的待定向量u,在讲y取为X坐标的线性组合
。
而u的选取,要是同一类别产生的y尽量聚拢,不同类别产生的y尽量拉开。
这样,我们就可以将样品X到某一类G的距离定义为
与
之间的欧氏距离:
其中,c是G的几何中心。
Fisher分类的依据为:
用此算法对已知样本A1-A20进行分类,发现:
除了A4被错误的分到了B类外,其余样本全部正确,准确率也达到95%。
利用程序二(见附录2)对人工序列A21-A40进行分类,得到的结果是
A类:
2223252729343537
B类:
2124263031323336383940
4.1.3Bayes判别模型
A、B类的先验概率分别为
(它们可以用样品频率代替)。
各总体的密度函数分别为:
(在离散情形是概率函数),在观测到一个样品x的情况下,可用著名的Bayes公式计算它来自第g总体的后验概率(相对于先验概率来说,将它又称为后验概率):
并且当
时,则判X来自第h总体。
具体步骤:
1、判别函数的导出
首先需要知道待判总体的先验概率
和密度函数
。
对于先验概率,如果没有更好的办法确定,可用样品频率代替,即令
,在本文中,
,
2、计算后验概率
作计算分类时,主要根据判别式
的大小,而它不是后验概率
,但是有了
之后,就可以根据下式算出
:
若
则把样品x归入第h总体。
分别对20个已知类的DNA序列的4中碱基出现次数的频率进行统计得到Bayes判别分析表3:
Bayes判别分析
样本序号
原类号
判别函数f1值
判别函数f2值
回判类别
后验概率
1
A
184.147
167.1309
A
1
2
A
190.8011
173.1358
A
1
3
A
187.5416
165.8583
A
1
4
A
156.8481
157.0214
B
0.5432
5
A
212.9117
193.7088
A
1
6
A
177.8924
158.8778
A
1
7
A
178.772
163.609
A
1
8
A
187.2221
173.784
A
1
9
A
199.5094
182.3793
A
1
10
A
194.111
180.2843
A
1
11
B
168.8235
180.5008
B
1
12
B
177.3963
185.7159
B
0.9998
13
B
183.9277
196.6807
B
1
14
B
176.6216
188.5103
B
1
15
B
183.2145
201.5094
B
1
16
B
163.5715
175.569
B
1
17
B
152.8705
159.6426
B
0.9989
18
B
174.0264
188.8365
B
1
19
B
184.5245
204.0453
B
1
20
B
185.1765
206.2108
B
1
表3
用此算法对已知样本A1-A20进行分类,发现:
除了A4被错误的分到了B类外,其余样本全部正确,准确率也达到95%。
用程序三(见附录2)对待测样本21-40进行分类,得到如下表表4
Bayes判别21-40
样本序号
判别函数f1值
判别函数f2值
后验概率
判属类号
21
183.4569
190.4864
0.9991
2
22
150.9332
149.8337
0.7502
1
23
167.7981
158.7971
0.9999
1
24
204.1677
211.509
0.9994
2
25
164.6217
159.7773
0.9922
1
26
196.6721
204.2341
0.9995
2
27
167.7038
160.8101
0.999
1
28
204.0734
213.522
0.9999
2
29
174.5024
161.1229
1
1
30
158.802
160.6626
0.8654
2
31
190.2781
193.1975
0.9488
2
32
189.9492
191.3096
0.7958
2
33
179.7936
183.152
0.9664
2
34
158.4133
149.09
0.9999
1
35
161.3766
153.8378
0.9995
1
36
159.8065
159.8836
0.5193
2
37
162.9387
157.2373
0.9967
1
38
209.2578
218.2146
0.9999
2
39
154.8303
157.9386
0.9572
2
40
208.158
217.8761
0.9999
2
表4
即A类有:
2223252729343537
B类有:
2124262830313233383940
4.1.4比较三种模型的优劣
欧氏距离判别法虽然简单、直观、易懂,但也存在一些明显的不足:
当等待分类的样本是完全随机的样本时,此模型不能很好地将两个随机点间的距离相近度描述出来;
在多维空间里分类的方法不仅仅是距离分类法一种,常用的Fisher分类法就是另一种基于几何特性的分类法。
在距离判别模型中,三维空间的样品X被映射为一维的距离d作为判断。
Fisher分类法的思想也是把三维空间的样本映射为一维的特征值y,并依据y来进行判别。
Fisher判别模型随着总体个数的增加,建立的判别式也增加,因而计算起来还是比较麻烦的。
因此可以用Bayes判别模型进行改进,如果对多个总体的判别考虑的不是建立判别式,而是计算额外提供样品属于类的条件概率P。
比较两个概率的大小,然后将额外提供样品判归为来自概率最大的总体。
综上所述,Bayes判别模型是最有判别模型。
4.2问题二
由问题一得:
最好的判定模型是Bayes判别模型,则,将数据文件给出的182个较长的自然DNA序列代入Bayes判别模型中,由程序四(见附录2)得到的分类结果:
A类:
3、4、5、6、7、8、9、10、11、13、14、15、16、17、18、19、20、21、22、23、24、27、30、31、32、34、35、37、38、39、41、42、47、49、52、53、55、57、58、61、62、63、64、67、68、69、70、71、72、73、74、77、79、80、81、82、83、86、87、88、89、90、91、93、95、97、99、100、101、104、107、108、109、111、118、120、121、126、128、131、134、135、136、137、139、140、141、142、145、147、148、149、150、152、153、156、157、158、159、162、164、169、171、172、173、174、176、178、181
B类:
1、2、12、26、33、36、40、43、48、54、65、66、75、76、78、84、92、94、96、98、103、106、111、119、122、124、125、127、129、130、132、133、138、143、144、154、160、161、163、166、168、170、175、179、180、182.
5、误差分析与模型评价:
5.1误差分析
1、由于我们假设用4种碱基a、c、g、t的含量作为指标来判别类别是充分的,这当然与实际情况是不符合的,实际分类过程中,评价一种分类的好坏,还要考虑到其它的因素,如:
(1)碱基的结构:
碱基a、c、g、t的内部结构及其生化性没有予以予考虑;
(2)碱基的环境:
包括内环境、碱基在不同细胞的表达等都可能对其产生一定的影响。
2、在问题一中,对所给的A1—A40的DNA序列,我们采用从中提取特征,构造分类模型的方法,但这是不充分的,必然会引起误差。
3、在问题二中,我们所运用的是问题一中的模型,不够精确。
5.2模型评价
5.2.1优点
1、利用MATLAB软件对数据进行处理并作出各种平面图,简便,直观、快捷;
2、运用多种数学软件进行计算,取长补短,使计算结果更加准确;
3、本文建立的模型与实际紧密联系,使模型更贴近实际,通用性强。
4、我们没有使用单一的模型对问题进行分析求解,而是综合运用了多种数学模型;
5、增加了一定得检验环节,使我们所得到的数据更加合理可信,增加了论文的实际参考价值;
6、发现异常值剔除,有助于结果的合理性。
5.2.2缺点
1、对附件1中的DNA的序列分类,我们把从中提取特征,构造分类方法,作为充分必要条件,增加了误差;
2、检验序列只有20列,运用的数据不是很多,不够精确;
3、忽略了碱基存在的内环境因素及其生化结构的影响。
4、在实际中,DNA序列分类是一个复杂的数学问题,存在着大量的不确定性。
附录1:
Art-model-data
1.aggcacggaaaaacgggaataacggaggaggacttggcacggcattacacggaggacgaggtaaaggaggcttgtctacggccggaagtgaagggggatatgaccgcttgg
2.cggaggacaaacgggatggcggtattggaggtggcggactgttcggggaattattcggtttaaacgggacaaggaaggcggctggaacaaccggacggtggcagcaaagga
3.gggacggatacggattctggccacggacggaaaggaggacacggcggacatacacggcggcaacggacggaacggaggaaggagggcggcaatcggtacggaggcggcgga
4.atggataacggaaacaaaccagacaaacttcggtagaaatacagaagcttagatgcatatgttttttaaataaaatttgtattattatggtatcataaaaaaaggttgcga
5.cggctggcggacaacggactggcggattccaaaaacggaggaggcggacggaggctacaccaccgtttcggcggaaaggcggagggctggcaggaggctcattacggggag
6.atggaaaattttcggaaaggcggcaggcaggaggcaaaggcggaaaggaaggaaacggcggatatttcggaagtggatattaggagggcggaataaaggaacggcggcaca
7.atgggattattgaatggcggaggaagatccggaataaaatatggcggaaagaacttgttttcggaaatggaaaaaggactaggaatcggcggcaggaaggatatggaggcg
8.atggccgatcggcttaggctggaaggaacaaataggcggaattaaggaaggcgttctcgcttttcgacaaggaggcggaccataggaggcggattaggaacggttatgagg
9.atggcggaaaaaggaaatgtttggcatcggcgggctccggcaactggaggttcggccatggaggcgaaaatcgtgggcggcggcagcgctggccggagtttgaggagcgcg
10.tggccgcggaggggcccgtcgggcgcggatttctacaagggcttcctgttaaggaggtggcatccaggcgtcgcacgctcggcgcggcaggaggcacgcgggaaaaaacg
11.gttagatttaacgttttttatggaatttatggaatt