<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Bioinformatics on TouchingFish.top</title><link>https://touchingfish.top/categories/bioinformatics/</link><description>Recent content in Bioinformatics on TouchingFish.top</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Fri, 10 Dec 2021 00:00:00 +0000</lastBuildDate><atom:link href="https://touchingfish.top/categories/bioinformatics/index.xml" rel="self" type="application/rss+xml"/><item><title>甲基化的记忆（DNA Methylation）</title><link>https://touchingfish.top/2021/programmable-dna-methylation-breast-cancer/</link><pubDate>Fri, 10 Dec 2021 00:00:00 +0000</pubDate><guid>https://touchingfish.top/2021/programmable-dna-methylation-breast-cancer/</guid><description>&lt;p&gt;癌症基因组图谱计划画出了癌症的基因组地图，但知道了地图不等于找到了路。基因会突变，这事大伙都知道——一个个碱基发生替换、缺失、插入，细胞就慢慢走向失控。但很多人不知道的是，基因本身没变，表达的方式也能出问题。这就是表观遗传学干的事。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Cytosine methylation in mammalian DNA is regarded as a key epigenetic modification controlling essential processes such as imprinting, silencing of retrotransposons and cell differentiation.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;甲基化是表观遗传最经典的一种修饰。DNA还是那串DNA，但上面多了一些甲基基团，原本能打开的基因就被关上了。反过来也一样。正常细胞通过甲基化来保持身份——肝细胞记得自己是肝细胞，神经元记得自己是神经元，靠的就是这套表观遗传的记忆系统。&lt;/p&gt;
&lt;p&gt;问题是，这套系统在癌症里被打乱了。癌细胞不仅有基因突变，还有异常的甲基化模式——本该沉默的基因被打开，本该活跃的基因被关上。乳腺癌尤其典型，不同亚型的乳腺癌有不同的甲基化指纹。&lt;/p&gt;
&lt;p&gt;SOX2就是一个典型的例子。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;SOX2 is normally expressed in embryonic stem cells and neural progenitor cells, where it maintains self-renewal. DNA methylation in the SOX2 promoter and enhancer regions functions as an epigenetic switch, which forces cells to activate multiple differentiation pathways.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这个基因在胚胎干细胞里是主角，负责维持干细胞的自我更新。正常成人的组织里它基本不表达，细胞分化了，不需要它了。但研究者发现，在约43%的基底样乳腺癌里，SOX2异常激活了。肿瘤组织中的SOX2启动子甲基化水平比正常组织低，拷贝数却增加了——双重推动下，这个转录因子开始在癌细胞里疯狂表达，直接激活CYCLIN D1，驱动细胞加速增殖。&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;The downregulation of SOX2 by RNA interference decreased the tumorigenic phenotype in the lung, breast and ovarian cancers.&lt;/p&gt;</description></item><item><title>有变则通，有通则久</title><link>https://touchingfish.top/2021/alternative-rna-processing/</link><pubDate>Fri, 21 May 2021 00:00:00 +0000</pubDate><guid>https://touchingfish.top/2021/alternative-rna-processing/</guid><description>&lt;p&gt;一上班就收到了《云南蝴蝶大爆发》的直播推送，前段时间在热搜上看到时就颇有兴趣——上学时跟随学院里的两位老师一起到山里观测过蝴蝶，其中一位是生物鉴定达人，另一位则是昆虫学家，他们都是我尊敬的启蒙老师。&lt;/p&gt;
&lt;p&gt;蝴蝶这件事，越想越觉得有意思。毛虫与蝶，同一套基因组，却活出截然不同的两世——并非基因被替换，而是在变态发育中，同一套遗传信息被重新&amp;quot;解读&amp;quot;。犹如换了套剪切方案，羽化出全新的形态与功能。这让我想起古人说的那句&lt;/p&gt;
&lt;p&gt;有变则通，有通则久。&lt;/p&gt;
&lt;p&gt;放在分子生物学的语境下，竟意外贴切。&lt;/p&gt;
&lt;p&gt;人类基因组只有两万多个基因，却构建出如此复杂多样的生命系统，奥秘很大程度上就在转录后的选择性加工里。DNA转录出的初级mRNA，需将内含子剪切移除，外显子相互连接，才能形成成熟的mRNA。但剪切并非只有一种结果——同一个初级转录本，可以保留或跳过某个内含子、包含或排除某个外显子、甚至改变外显子的连接顺序。一套排列组合下来，一个基因能产生数十甚至数百种mRNA变体，翻译出功能各异的蛋白质。&lt;/p&gt;
&lt;p&gt;这便是可变剪切（Alternative Splicing）。&lt;/p&gt;
&lt;p&gt;同一基因在不同组织、不同发育阶段，通过不同的剪切方式产出不同的蛋白质。以神经系统为例，同一基因经不同剪切，可产生对不同神经递质敏感的离子通道蛋白，决定神经元信号传导的特异性。&lt;/p&gt;
&lt;p&gt;另一种同样精妙的机制是可变多聚腺苷酸化（Alternative Polyadenylation）。&lt;/p&gt;
&lt;p&gt;mRNA的3&amp;rsquo;端通常添加poly(A)尾巴，保护其不被降解并协助翻译。但mRNA上可能存在多个潜在的多聚腺苷酸化位点——选择靠近转录起始点的位点时，3&amp;rsquo;端更短，调控序列更少，mRNA更易被降解；选择远端位点时，一些调控元件被保留，影响mRNA的细胞内定位和翻译效率。细胞正是通过选择不同位点，来精细调控mRNA的寿命和翻译时机。&lt;/p&gt;
&lt;p&gt;基因数目有限，却通过这些&amp;quot;变化&amp;quot;极大地拓展了表达的多样性——有限的遗传信息，生生不息。&lt;/p&gt;
&lt;p&gt;云南是下一届《生物多样性公约》缔结大会要召开的地方。云南瑞丽由于地理位置特殊，遭遇了疫情反扑，使原本5月的大会推迟到10月。不然刚好能赶上蝴蝶大爆发的景象，实在可惜。&lt;/p&gt;
&lt;p&gt;如果没有记错，明天是国际生物多样性日。&lt;/p&gt;
&lt;p&gt;生物多样性为什么如此重要？这取决于人们对生态系统自然修复能力的态度是否乐观，出于我们的伦理，以及对复杂的敬畏。在物质极大丰富的时代，智人占有的自然资源和掌握的科学技术，换来寿命的延长和物种的安定，至于这些在多大程度上威胁到其他生物的生存，我想并不容易界定。&lt;/p&gt;
&lt;p&gt;一种稀有生物的灭绝对目前这代人的影响大都不是肉眼可见的，不过我们还是尽可能从可持续的角度出发。持对立价值观的人则少有为资源忧虑，但也仍然会面对疾病的挑战。病毒是简单的生命形式，在全球化背景下带来了空前规模的疫情。癌变则像一套23册的书卷（每本约1000页），仅仅出现了40-60个排字错误，却成为了生命最困难的终极战役。&lt;/p&gt;
&lt;p&gt;幸好，有一部分高明的人（但愿他们并不是自诩&amp;quot;智人为地球的主宰&amp;quot;）考虑到各个物种在系统中隐约发挥着一定的生态作用，提倡人们采取行动，关注生物多样性保护。&lt;/p&gt;
&lt;p&gt;我深受感染。&lt;/p&gt;
&lt;p&gt;从基因的可变剪切到物种的多样并存，&amp;ldquo;变&amp;quot;是生命应对有限资源的根本策略——一个基因通过不同的剪切方式产出多种蛋白质，一个生态系统通过不同的物种组合维持韧性。逻辑同源，尺度不同。&lt;/p&gt;
&lt;p&gt;祝愿后疫情时代的世界，健康和平，焕发新生，羽化成蝶。&lt;/p&gt;</description></item><item><title>可变剪接分析详解 / Alternative Splicing</title><link>https://touchingfish.top/2021/alternative-splice-algorithm-cn/</link><pubDate>Sun, 21 Feb 2021 00:00:00 +0000</pubDate><guid>https://touchingfish.top/2021/alternative-splice-algorithm-cn/</guid><description>&lt;h2 id="背景"&gt;背景&lt;/h2&gt;
&lt;p&gt;在真核生物中，一个基因可以通过可变剪接（Alternative Splicing, AS）产生多种
mRNA 亚型（isoform）——即在 pre-mRNA 剪接过程中，通过不同的外显子组合方式，生成不同的
成熟 mRNA。这一机制在不增加基因数目的前提下，极大扩展了蛋白质组（proteome）的多样性。&lt;/p&gt;
&lt;p&gt;一个含有 N 个外显子的基因，理论上最多可产生 2^(N-1) 种剪接变体。实际中，
大多数基因产生 2-10 种亚型，但个别基因（如果蝇 Dscam）可产生数万种剪接变体（splice variant）。&lt;/p&gt;
&lt;h3 id="为什么需要计算分析"&gt;为什么需要计算分析&lt;/h3&gt;
&lt;p&gt;高通量转录组测序（RNA-seq、全长 cDNA 测序）会产生数千条转录本比对到参考基因组
上的结果。人工逐个检查每个基因的剪接变异是不现实的。计算流程需要：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;将属于同一基因位点的转录本聚类&lt;/li&gt;
&lt;li&gt;区分真正的剪接变体与比对假象（alignment artifact）&lt;/li&gt;
&lt;li&gt;对每种剪接变异进行分类&lt;/li&gt;
&lt;li&gt;对全基因组的 AS 事件进行定量和汇总&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="as-code-的概念"&gt;AS Code 的概念&lt;/h3&gt;
&lt;p&gt;AS Code 体系（Sammeth et al., 2008）提供了一种紧凑、无歧义的记号来描述任意
可变剪接事件。其核心思想是：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;对于任意一对重叠的转录本，它们之间不同的剪接位点定义了 AS 事件。将这些差异
位点按位置编号，并标记为供体（^）或受体（-），即可得到唯一描述该事件结构的
编码。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;这一编码使得 AS 事件可以被系统地分类为具有生物学意义的类别。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="输入数据与预处理"&gt;输入数据与预处理&lt;/h2&gt;
&lt;h3 id="所需输入文件"&gt;所需输入文件&lt;/h3&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;文件&lt;/th&gt;
 &lt;th&gt;格式&lt;/th&gt;
 &lt;th&gt;内容&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;基因组&lt;/td&gt;
 &lt;td&gt;FASTA&lt;/td&gt;
 &lt;td&gt;参考基因组序列&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;基因注释&lt;/td&gt;
 &lt;td&gt;GTF&lt;/td&gt;
 &lt;td&gt;基因模型及外显子坐标&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;cDNA 比对&lt;/td&gt;
 &lt;td&gt;GFF3 (cDNA_match)&lt;/td&gt;
 &lt;td&gt;全长 cDNA 比对结果&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;基因注释提供参考转录本结构；cDNA 比对提供实验观测到的转录本结构，可能揭示注释中
未收录的新剪接变体。&lt;/p&gt;</description></item><item><title>生物序列数据的机器学习预处理</title><link>https://touchingfish.top/2019/bioseq-preprocess/</link><pubDate>Thu, 24 Jan 2019 00:00:00 +0000</pubDate><guid>https://touchingfish.top/2019/bioseq-preprocess/</guid><description>&lt;p&gt;随着生物信息学的快速发展，DNA 序列数据呈爆炸式增长。这些序列蕴含着丰富的生物学信息——然而对处理数值数据的机器学习模型来说，原始的 DNA 序列不过是一串字符，&lt;code&gt;ACGTACG...&lt;/code&gt;，无法直接作为输入。&lt;/p&gt;
&lt;p&gt;将 DNA 序列转化为机器学习模型能够理解的数值矩阵形式，成为一个关键步骤。&lt;/p&gt;
&lt;p&gt;（本文明写 &lt;em&gt;E.Coli&lt;/em&gt; 启动子序列识别，实则记录一种通用的序列转换思路）&lt;/p&gt;
&lt;h2 id="数据预览"&gt;数据预览&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-python" data-lang="python"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;numpy&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="nn"&gt;np&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;pandas&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="nn"&gt;pd&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;url&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;https://archive.ics.uci.edu/ml/machine-learning-databases/molecular-biology/promoter-gene-sequences/promoters.data&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;names&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;&amp;#39;Class&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;id&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;&amp;#39;Sequence&amp;#39;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;data&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;pd&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;read_csv&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;url&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;names&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;names&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;iloc&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;])&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="se"&gt;\n&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;head&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;输出：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Class +
id S10
Sequence \t\ttactagcaatacgcttgcgttcggtggttaagtatgtataat...
Name: 0, dtype: object

 &amp;lt;bound method NDFrame.head of Class id Sequence
0 + S10 \t\ttactagcaatacgcttgcgttcggtggttaagtatgtataat...
1 + AMPC \t\ttgctatcctgacagttgtcacgctgattggtgtcgttacaat...
2 + AROH \t\tgtactagagaactagtgcattagcttatttttttgttatcat...
3 + DEOP2 \taattgtgatgtgtatcgaagtgtgttgcggagtagatgttagaa...
4 + LEU1_TRNA \ttcgataattaactattgacgaaaagctgaaaaccactagaatgc...
.. ... ... ...
101 - 799 \t\tcctcaatggcctctaaacgggtcttgaggggttttttgctga...
102 - 987 \t\tgtattctcaacaagattaaccgacagattcaatctcgtggat...
103 - 1226 \t\tcgcgactacgatgagatgcctgagtgcttccgttactggatt...
104 - 794 \t\tctcgtcctcaatggcctctaaacgggtcttgaggggtttttt...
105 - 1442 \t\ttaacattaataaataaggaggctctaatggcactcattagcc...

[106 rows x 3 columns]&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="序列的提取与分割"&gt;序列的提取与分割&lt;/h2&gt;
&lt;p&gt;DataFrame 是由多个 Series 组成的，每个 Series 代表 DataFrame 的一列。&lt;/p&gt;</description></item><item><title>699个名字（机器学习领域的"Hello World"）</title><link>https://touchingfish.top/2019/brca-detection-with-sklearn/</link><pubDate>Mon, 21 Jan 2019 00:00:00 +0000</pubDate><guid>https://touchingfish.top/2019/brca-detection-with-sklearn/</guid><description>&lt;p&gt;打开这个数据集的时候，脑子里突然闪过一个问题：class 那一列里的 2 和 4，分别对应的是&amp;quot;良性&amp;quot;和&amp;quot;恶性&amp;quot;——但这两个数字背后，坐着的是谁？&lt;/p&gt;
&lt;h2 id="699个女人"&gt;699个女人&lt;/h2&gt;
&lt;p&gt;威斯康星乳腺癌数据集（Wisconsin Breast Cancer Dataset），算是机器学习领域的&amp;quot;Hello World&amp;quot;。699个样本，每个样本有10个细胞特征：clump_thickness（结块厚度）、uniform_cell_size（细胞大小均匀性）、uniform_cell_shape（细胞形状均匀性）、marginal_adhesion（边缘黏附力）、single_epithelial_size（单上皮细胞大小）、bare_nuclei（裸核）、bland_chromatin（淡染色质）、normal_nucleoli（正常核仁）、mitoses（核分裂）。&lt;/p&gt;
&lt;p&gt;这些特征听起来抽象，却是病理医生在显微镜下实实在在看过的东西。&lt;/p&gt;
&lt;p&gt;他们在数细胞层数，量细胞直径，看细胞边缘是光滑还是锯齿状，观察细胞核被染成什么颜色。每一个1到10的数字，都是人眼与人脑的判断——是经验的积累，是训练的痕迹。&lt;/p&gt;
&lt;p&gt;数据里的每一行，曾经是一个女人坐在诊室里，等待活检结果。&lt;/p&gt;
&lt;h2 id="细胞的语言"&gt;细胞的语言&lt;/h2&gt;
&lt;p&gt;病理医生看细胞，和我们看人很像。&lt;/p&gt;
&lt;p&gt;看形状——圆润的倾向于良性，畸形的倾向于恶性。看边界——边界清晰的通常良性，黏连在一起的往往恶性。看颜色——染色均匀的相对正常，染色质浓集发黑的令人担忧。&lt;/p&gt;
&lt;p&gt;这不是玄学。是几千例病例训练出来的直觉。&lt;/p&gt;
&lt;p&gt;而机器学习做的事情，简单来说就是：绕过医生的经验，用算法把这些&amp;quot;直觉&amp;quot;数字化、规则化。SVM（Support Vector Machine，支持向量机）在高维空间里找到一条最优分割线，把良性样本和恶性样本分开。KNN（K-Nearest Neighbors，K近邻）则是&amp;quot;物以类聚&amp;quot;——看一个未知样本的5个最近邻居是什么类别，由多数投票决定它属于哪一类。&lt;/p&gt;
&lt;p&gt;KNN 选 K=5，是因为经验发现这个数值通常效果较好。太少容易受噪声影响，太多又会模糊边界。&lt;/p&gt;
&lt;p&gt;SVM 的核函数（kernel）把细胞特征映射到高维空间，在那个空间里，线性不可分的数据变得可以分开。&lt;/p&gt;
&lt;h2 id="10折交叉验证"&gt;10折交叉验证&lt;/h2&gt;
&lt;p&gt;直接用全部数据训练，然后测试，会发生什么？&lt;/p&gt;
&lt;p&gt;模型可能&amp;quot;背住&amp;quot;了训练数据，而不是真的学会了规律。就像考试前背答案，遇到新题就傻眼。&lt;/p&gt;
&lt;p&gt;10折交叉验证（10-fold cross validation）解决的是这个问题。把数据随机分成10份，轮流让9份当训练集、1份当测试集，做10次实验，最后取平均准确率。&lt;/p&gt;
&lt;p&gt;结果是：KNN 96.6%，SVM 96.0%。看起来差不多，但实际上——&lt;/p&gt;
&lt;p&gt;KNN 的标准差是 2.9%，SVM 是 3.3%。KNN 更稳定。&lt;/p&gt;
&lt;p&gt;这意味着什么？KNN 在10次实验里波动较小，SVM 则有时表现更好、有时更差。对于实际部署来说，稳定比偶尔的高分更重要。&lt;/p&gt;
&lt;h2 id="precisionrecall与生命的重量"&gt;Precision、Recall、与生命的重量&lt;/h2&gt;
&lt;p&gt;但准确率（accuracy）不是唯一的指标。在医疗场景下，误诊和漏诊的代价是不同的。&lt;/p&gt;
&lt;p&gt;Precision（精确率）：预测为恶性的样本里，真正是恶性的比例。&lt;/p&gt;
&lt;p&gt;Recall（召回率）：所有恶性样本里，被正确识别出来的比例。&lt;/p&gt;
&lt;p&gt;F1-Score是这两者的调和平均。&lt;/p&gt;
&lt;p&gt;SVM 报告里的 Class 2（良性）：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Precision = 1.00：预测良性的，几乎全对&lt;/li&gt;
&lt;li&gt;Recall = 0.95：100个良性里，有5个被误判为恶性&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;SVM 报告里的 Class 4（恶性）：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Precision = 0.90：预测恶性的，10个里有1个其实是良性&lt;/li&gt;
&lt;li&gt;Recall = 1.00：所有恶性都被找到了&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;对于癌症筛查，Recall 更关键。漏诊一个癌症患者，比误诊一个良性肿瘤更危险——后者只需要进一步检查，前者可能延误治疗时机。&lt;/p&gt;</description></item><item><title>动态规划的智慧（Needleman-Wunsch）</title><link>https://touchingfish.top/2018/needleman-wunsch/</link><pubDate>Sat, 12 May 2018 00:00:00 +0000</pubDate><guid>https://touchingfish.top/2018/needleman-wunsch/</guid><description>&lt;p&gt;当我们谈论序列比对（sequence alignment）时，实际上是在解决一个经典问题：如何将两段序列尽可能“对齐”，以揭示它们之间的相似性？这其中既有科学家的生物学直觉，也离不开精妙的算法设计。今天，让我们聚焦于比对算法的基础，并用一个直观的例子，深入了解Needleman-Wunsch算法这颗动态规划中的明珠，将矩阵的分值转化为真正的比对结果.&lt;/p&gt;
&lt;h2 id="从字符到序列的最佳对齐"&gt;从字符到序列的最佳对齐&lt;/h2&gt;
&lt;p&gt;在进行序列比对时，我们通常需要回答以下三个问题：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;序列间的相似性如何量化？（使用打分矩阵定义匹配、错配和缺口的得分）&lt;/li&gt;
&lt;li&gt;什么是最佳比对？（得分最高的对齐方式）&lt;/li&gt;
&lt;li&gt;如何有效找到最佳比对？（算法）&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;比对算法就是解决第3个问题的核心工具。对短序列，可以尝试列举所有可能的对齐方式，但随着序列变长，这种暴力方法的计算量会呈指数增长，显然无法处理实际问题。Needleman-Wunsch算法的提出，完美解决了这一难题。&lt;/p&gt;
&lt;h2 id="将大问题拆解为小问题"&gt;将大问题拆解为小问题&lt;/h2&gt;
&lt;p&gt;动态规划的核心思想是“化整为零”：将一个复杂问题分解为许多小问题，通过解决这些小问题，逐步得出大问题的答案。&lt;/p&gt;
&lt;p&gt;在Needleman-Wunsch算法中，序列比对的问题被表示为一个比对表（矩阵）。我们通过“填表”的方式，逐步找出最佳比对。&lt;/p&gt;
&lt;h3 id="needleman-wunsch算法的步骤一步步填出比对表"&gt;Needleman-Wunsch算法的步骤：一步步填出比对表&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Step 1: 初始化比对表&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;假设我们有两段DNA序列： Sequence1：&lt;code&gt;GATTUACA&lt;/code&gt; 和 Sequence2：&lt;code&gt;GCATTACG&lt;/code&gt;。&lt;/p&gt;
&lt;p&gt;我们建立一个比对表，行对应 Sequence1（纵向排列），列对应 Sequence2（横向排列）。&lt;/p&gt;
&lt;p&gt;为了允许“缺口”（gap），第一行和第一列按缺口得分初始化。例如，假设缺口惩罚为-2，初始化如下：&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;&lt;/th&gt;
 &lt;th&gt;-&lt;/th&gt;
 &lt;th&gt;G&lt;/th&gt;
 &lt;th&gt;C&lt;/th&gt;
 &lt;th&gt;A&lt;/th&gt;
 &lt;th&gt;T&lt;/th&gt;
 &lt;th&gt;T&lt;/th&gt;
 &lt;th&gt;A&lt;/th&gt;
 &lt;th&gt;C&lt;/th&gt;
 &lt;th&gt;G&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;-&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-6&lt;/td&gt;
 &lt;td&gt;-8&lt;/td&gt;
 &lt;td&gt;-10&lt;/td&gt;
 &lt;td&gt;-12&lt;/td&gt;
 &lt;td&gt;-14&lt;/td&gt;
 &lt;td&gt;-16&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;G&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;T&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;-6&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;T&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;-8&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;U&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;-10&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;-12&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;C&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;-14&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;&lt;strong&gt;A&lt;/strong&gt;&lt;/td&gt;
 &lt;td&gt;-16&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Step 2: 填充比对表&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>生物学相似性的追寻</title><link>https://touchingfish.top/2018/sequence-similarity/</link><pubDate>Tue, 24 Apr 2018 00:00:00 +0000</pubDate><guid>https://touchingfish.top/2018/sequence-similarity/</guid><description>&lt;p&gt;在我们身体里，存在着肉眼看不见的&amp;quot;生命代码&amp;quot;——DNA、RNA和蛋白质序列。它们由四种碱基或二十种氨基酸排列而成，看似是简单的字符串，却记录着生命的全部奥秘。&lt;/p&gt;
&lt;h2 id="生命代码的两大主角"&gt;生命代码的两大主角&lt;/h2&gt;
&lt;p&gt;要比对生命序列，首先得搞清楚它们长什么样。DNA序列由A（腺嘌呤）、T（胸腺嘧啶）、C（胞嘧啶）、G（鸟嘌呤）四种碱基组成。RNA将T换成了U（尿嘧啶）。蛋白质序列更为复杂，由20种氨基酸用单字母表示，比如A是丙氨酸，L是亮氨酸。这些字符的排列顺序决定了基因的功能——就像词序决定了句子的意义。&lt;/p&gt;
&lt;h2 id="序列比对的基本概念"&gt;序列比对的基本概念&lt;/h2&gt;
&lt;p&gt;拿到一段陌生的DNA序列，想知道它的作用？最直接的方法是序列比对（sequence alignment）——把它与已知序列对齐，看看两段序列&amp;quot;像不像&amp;quot;。&lt;/p&gt;
&lt;p&gt;相似性背后可能藏着共同的祖先、相似的功能，或进化的痕迹。如果能在已知序列中找到&amp;quot;亲戚&amp;quot;，往往就能推断出它的功能。&lt;/p&gt;
&lt;p&gt;两段序列相似，究竟有多相似？科学家用一套打分体系来量化：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;匹配得分&lt;/strong&gt;：两个位置的字符相同，得分。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;错配惩罚&lt;/strong&gt;：字符不同，扣分。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;缺口惩罚&lt;/strong&gt;：需要插入&amp;quot;空白&amp;quot;（gap）对齐时，扣更多分。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;相似度（similarity）指的是两个序列在对应位置上，匹配字符的数目占总长度的百分比。例如两条序列经过比对后：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sequence1: &lt;code&gt;C V H K A T&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Sequence2: &lt;code&gt;C I H K - T&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;有4处一致，1处相似，1处缺口。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;identity = (4/6)*100% = 67%&lt;/li&gt;
&lt;li&gt;similarity = (4+1/6)*100% = 83%&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这套评分系统，让科学家能够快速评估比对结果的优劣。&lt;/p&gt;
&lt;h2 id="打分矩阵的必要性"&gt;打分矩阵的必要性&lt;/h2&gt;
&lt;p&gt;如果说序列比对是解读生命密码的艺术，打分矩阵（scoring matrix）就是它的调色盘。比对比的不仅是字符是否&amp;quot;对得上&amp;quot;，还需要考虑生物学意义——哪些替换是自然界常见的？哪些匹配最能反映进化关系？&lt;/p&gt;
&lt;p&gt;序列比对中的&amp;quot;相似性&amp;quot;并非一概而论。以蛋白质为例，氨基酸的化学性质、功能、结构对其进化替换的频率有重要影响。比如，亮氨酸（L）替换为异亮氨酸（I）相对常见，因为都是疏水性氨基酸。而亮氨酸被替换为带正电的赖氨酸（K）就很少发生，可能破坏蛋白质功能。&lt;/p&gt;
&lt;p&gt;打分矩阵的任务，正是为这些替换赋予合适的分值，使比对结果既符合生物学事实，又有助于后续分析。&lt;/p&gt;
&lt;h2 id="常用的打分矩阵"&gt;常用的打分矩阵&lt;/h2&gt;
&lt;h3 id="pam矩阵"&gt;PAM矩阵&lt;/h3&gt;
&lt;p&gt;PAM（Point Accepted Mutation）矩阵是最早的蛋白质打分矩阵之一。它以&amp;quot;单位进化时间&amp;quot;为基础——1 PAM相当于每100个氨基酸中约有1个发生了可接受的突变。PAM1自乘n次可以得到PAM-n，表示发生了更多次突变。&lt;/p&gt;
&lt;p&gt;PAM矩阵的核心思想是：通过研究近亲物种的蛋白质序列，推测不同氨基酸在进化中的替换频率。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;PAM1：适用于非常相似的序列。&lt;/li&gt;
&lt;li&gt;PAM250：适用于亲缘关系较远的序列。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;PAM矩阵像一台时间机器，帮我们回溯序列在进化中的替换轨迹。随着PAM数值增加，比对倾向于寻找远亲关系。&lt;/p&gt;
&lt;h3 id="blosum矩阵"&gt;BLOSUM矩阵&lt;/h3&gt;
&lt;p&gt;BLOSUM（BLOcks SUbstitution Matrix）矩阵更关注当前的序列相似性，尤其适用于远亲序列的比对。它通过分析保守序列区块（blocks）中的氨基酸替换频率得出得分。&lt;/p&gt;
&lt;p&gt;与PAM不同，BLOSUM不假设进化模型，而是基于实际观测数据生成。BLOSUM编号代表该矩阵由一致度≥该数值的序列计算而来。例如BLOSUM62是由一致度≥62%的序列计算得出。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;BLOSUM62：最常用，适用于大多数情况。&lt;/li&gt;
&lt;li&gt;BLOSUM80：更适合相似性较高的序列。&lt;/li&gt;
&lt;li&gt;BLOSUM45：适合亲缘关系更远的序列。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;简单说，BLOSUM后面数字越小，适合比较的序列相似度越低；数字越大，适合比较的序列相似度越高。&lt;/p&gt;
&lt;h3 id="选择矩阵的原则"&gt;选择矩阵的原则&lt;/h3&gt;
&lt;p&gt;如何选择合适的矩阵？关键在于序列的&amp;quot;亲疏&amp;quot;。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;相似序列（近亲）：选择细致的矩阵，如PAM1或BLOSUM80，强调微小差异。&lt;/li&gt;
&lt;li&gt;差异较大序列（远亲）：选择更粗略的矩阵，如PAM250或BLOSUM45，允许更多替换。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这一选择直接影响比对结果的敏感性与特异性。近亲需要精确，远亲需要包容。&lt;/p&gt;
&lt;h2 id="如何解读打分矩阵"&gt;如何解读打分矩阵&lt;/h2&gt;
&lt;p&gt;下表为PAM-250矩阵，对角线上的数值为匹配氨基酸的得分。在其他位置上，≥0的得分代表对应的一对氨基酸为相似氨基酸，&amp;lt;0的是不相似的氨基酸。&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;&lt;/th&gt;
 &lt;th&gt;A&lt;/th&gt;
 &lt;th&gt;B&lt;/th&gt;
 &lt;th&gt;C&lt;/th&gt;
 &lt;th&gt;D&lt;/th&gt;
 &lt;th&gt;E&lt;/th&gt;
 &lt;th&gt;F&lt;/th&gt;
 &lt;th&gt;G&lt;/th&gt;
 &lt;th&gt;H&lt;/th&gt;
 &lt;th&gt;I&lt;/th&gt;
 &lt;th&gt;K&lt;/th&gt;
 &lt;th&gt;L&lt;/th&gt;
 &lt;th&gt;M&lt;/th&gt;
 &lt;th&gt;N&lt;/th&gt;
 &lt;th&gt;P&lt;/th&gt;
 &lt;th&gt;Q&lt;/th&gt;
 &lt;th&gt;R&lt;/th&gt;
 &lt;th&gt;S&lt;/th&gt;
 &lt;th&gt;T&lt;/th&gt;
 &lt;th&gt;U&lt;/th&gt;
 &lt;th&gt;V&lt;/th&gt;
 &lt;th&gt;W&lt;/th&gt;
 &lt;th&gt;X&lt;/th&gt;
 &lt;th&gt;Y&lt;/th&gt;
 &lt;th&gt;Z&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;A&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;B&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;C&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;12&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;D&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;4&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;E&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;4&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;F&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-6&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;9&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;G&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;5&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;H&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;6&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;I&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;5&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;K&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;5&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;L&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-6&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;6&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;M&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;4&lt;/td&gt;
 &lt;td&gt;6&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;N&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;P&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;6&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Q&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;4&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;R&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;6&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;S&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;T&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;U&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;V&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;4&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;4&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;W&lt;/td&gt;
 &lt;td&gt;-6&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;-8&lt;/td&gt;
 &lt;td&gt;-7&lt;/td&gt;
 &lt;td&gt;-7&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-7&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-6&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-6&lt;/td&gt;
 &lt;td&gt;17&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;X&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Y&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;7&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;10&lt;/td&gt;
 &lt;td&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Z&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;-5&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-3&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-2&lt;/td&gt;
 &lt;td&gt;-6&lt;/td&gt;
 &lt;td&gt;-1&lt;/td&gt;
 &lt;td&gt;-4&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;打分矩阵的表格看似复杂，但很直观：&lt;/p&gt;</description></item></channel></rss>