3 min read

如何理解遗传组效应

参考材料来自于Julius van der Werf的教程

什么情况下需要考虑遗传组效应(Genetic group)

当数据集中的个体来源不同时,在遗传评估模型中需要考虑遗传组。当个体的亲本信息未知时,通常会假定亲本来自于同质群体(homogeneous population),具有相同的期望均值,利用混合模型估计育种值。亲本信息未知的个体,通常称为“基础个体”,奠基者个体更为合适?对于这些奠基者个体,如果它们不是来自于一个同质群体,为了区分不同奠基者个体的遗传水平,需要考虑遗传组效应。 需要注意的一点是,对于一个基础群体,亲缘关系矩阵已经考虑了所有由选择产生的遗传差异。举例说明:从一个基础群体开始分别建立高低两个选育系,如果系谱和性能测定数据完成,那么在遗传评估中,我们是不需要考虑遗传组效应的。如果利用系谱和性能测定数据,仍然剖分个体间的遗传差异,那么需要在分析中考虑遗传组效应。如果个体来自于不同的品种,是一个需要考虑的问题。

作者给出了两个绵羊品种,Finnsheep和Merinos。其中Finnsheep品种的每窝产仔数均值可以达到3,而Merinos品种的每窝产仔数最多为1。由于每窝产仔数是一个低遗传力性状,如果在遗传评估中忽略品种的效应,那么会使所有个体的EBV趋向于均值(0)。但实际情况不应该是这样的,每窝产仔数的品种效应应该是很强的,而且是可信的。

一开始并没有很好的理解上述说法。原来脑海中的印象是,如果不考虑遗传组,难么家系或者个体间的遗传差异会变大,那么遗传参数估计值,如遗传力会偏高。作者举例的意思是说,由于遗传力很低,那么个体的育种值也会很小,但是实际上个体的育种值应该包括品种效应,应该会更大才对。那么可以推测,对于高遗传力性状,遗传组对育种值的影响会比较小,但是可能会对遗传力等估计值产生较大的影响。

一个比较简单的方法,可以把个体的来源作为固定效应,其关联矩阵X写法

个体类型 Finnsheep (F) Merinos (M)
Finnsheep (F) 1 0
Merinos (M) 0 1
F×M 0.5 0.5
M×(F×M) 0.25 0.75

注意,其中的0.25表示Finnsheep只占14,0.75表示Merinos占34

带有遗传组的加性遗传模型

当奠基者个体来自不同的群体时,把来源群体作为固定效应是可以的。但是,当来源群体本身是一个杂交群体时(2个或者多个群体杂交),作为固定效应很难分析。Quass(1988)提出了群体内加性遗传相关的基本结构,给出了把遗传组作为随机效应的分析模型。

传统模型 y=Xb+Zu+e

修改后的模型 y=Xb+ZQg+Za+e 其中g表示固定的组效应,a表示遗传组内随机个体加性遗传效应。矩阵Q指的是个体与组的关联矩阵,而ZQ实际上把性状测定值与组进行关联。

估计的育种值等于:
u^=Qg^+a^

实际上在模型中g是一个固定效应,模型方程可以写为:

[XXXZQXZQZXQZZQQZZZXZZQZZ+αA1][bga]=[XyQZyZy]

上述方程左边部分看似复杂,实际上这样记忆,比较简单:

X ZQ Z
X XX XZQ XZ
QZ QZX QZZQ QZZ
Z ZX ZZQ ZZ+αA1

对角线上是自己跟自己,非对角线是互相结合在一起。之所以行是转置矩阵,也是很好理解的。

举一个例子,如果有10条测定记录,b如果有3个固定效应,那么b是3×1列向量,那么XXb要想可以相乘,XX必须要是3列。而我们知道,设计矩阵X是10×3列,XX正好是一个3×10×10×3=3×3列矩阵,反过来是10×10矩阵,是不可以的,其他相同原理。

上述方程中,难题可能是在于如何建立Q矩阵?(In practice such equation would cause problems, unless a systematic way is found to create the Q matrix,这句话不是很理解!)

Quaas对上述方程进行了变换,从左边统一乘以下述矩阵:

[I000IQ00I]

[I000IQ00I][XXXZQXZQZXQZZQQZZZXZZQZZ+αA1][bga]=[I000IQ00I][XyQZyZy]

方程会变化为:

[XXXZQXZ00αQA1ZXZZQZZ+αA1][bga]=[Xy0Zy]

对上述方程组继续进行变换:

[XXXZQXZ00αQA1ZXZZQZZ+αA1][I000I00QI][I000I00QI][bga]=[Xy0Zy]

上式中: [I000I00QI][I000I00QI]=I

互为逆矩阵,乘积为单位矩阵。

方程组左手边,前两个矩阵相乘后两个矩阵相乘,得到新的方程组:

[XX0XZ0αQA1QαQA1ZXαA1QZZ+αA1][bgu=Qg+a]=[Xy0Zy]

关于新的方程组,作者的评价说实话,一点都没看懂。

第一个优点,作者讲的是对于固定效应,组的两个非对角线元素(第2,1或者1,2)都是零;而且右手边,组元素(2,1)也是零;意思应该是说计算更加简单。

第二个优点:组内个体的解,直接包括的组效应(u=Qg+a)。作者讲,这是在求解混合模型方程时,是一个重要的优势。

然而作者认为最重要的是建立了一种定义遗传组的灵活形式。作者认为组方程跟不带有数据的个体方程十分类似。个人理解,组方程指的应该是这样一个方程:

αQA1QgαQA1u=0

个体动物方程:

ZXbαA1Qg+(ZZ+αA1)u=Zy

没有看出二者明显的相似性来。作者认为,遗传组就像祖先个体一样,定义个体跟遗传组的亲缘矩阵(Q矩阵)。

##分配个体到遗传组(Assigning animals to genetic groups

可以根据基础个体的品种、出生年份来定义组。需要明确的一个问题,是如何定义组的关联矩阵,个体的观测值如何与组关联。

作者举了个例子:

个体的祖先可能来自不同的品种,而且在不同年份出生。那么根据系谱可以推算出,各组对个体的遗传贡献,来定义关联矩阵:1998年出生的品种1占0.25、2002年出生的品种2占0.25、2004年出生的品种2占0.5。个体中每个组的贡献,实际上与它的遗传贡献是密切相关的。Quass定义了一种方法,可以根据个体与组的关系,推导出它的后代与这些组的关系。

基础个体,原则上我们是不知道他们的系谱的,因此必须要根据起源,把他们分派到不同的遗传组。根据Quass的方法,不是把基础群体直接分配到组,而是把它们分配给虚拟亲本个体(dummy parents),虚拟个体直接分为不同的组,作者也称这些个体为幽灵个体(phantom parents)。例如,一头普通的奶牛可以分配给一头幽灵公牛。幽灵公牛可以划分为1985-1990年出生的公牛组。幽灵母牛可以分配给1992年母牛组。分配幽灵亲本到一个遗传组,后代通过系谱连接到遗传组。事实上,我们可以处理幽灵亲本作为系谱的正常部分(例如Henderson系数规则)。这创建了一个非常灵活的框架,用来分配个体到遗传组。

新的育种值估计模型为:

[ubu]=[00PbP][ubu]+[ubw]

其中Pb指的是个体到幽灵亲本的亲缘矩阵,P指的是个体到非幽灵个体亲缘矩阵,看Quass1988年文章,这里指的是直接到双亲的亲缘关系,每一行只有两个数(0.5)。

未知幽灵亲本的期望均值公式为:

E(ub)=Qbg

其中Qb是基础个体到遗传组的关联矩阵,g是遗传组效应。

已知个体的育种值向量u,根据上述方程,可以表述为:

u=Pbub+Pu+wuPu=Pbub+w(IP)u=Pbub+w(IP)1(IP)u=(IP)1Pbub+(IP)1wu=(IP)1Pbub+(IP)1wE(u)=(IP)1PbE(ub)+(IP)1E(w)E(u)=(IP)1PbQbg=Qg

其中Q是所有已知个体到遗传组的关联矩阵。猜想,这里遗传组应该就是用幽灵个体代替?作者举例如下:

譬如有个体数量为n,遗传组数量为p的数据集,那么Q矩阵是n×p矩阵。Q中的第(i,j)th个元素表示第ith个体基因来自第jth个遗传组的百分比。因此,遗传组与祖先个体非常相似。仅仅直接的遗传联系(亲子?)会被考虑,其他遗传联系会自动被implied?仅仅那些有1个或者2个亲本未知的个体,需要指定其遗传组。丢失的亲本会自动被分组。

建立组方程的规则总结为:

  • 为基础个体分配幽灵(虚拟)个体
  • 定义幽灵个体属于哪个遗传组
  • 利用系谱(包括幽灵个体)建立混合模型方程组。对于第ith个体,对其孟德尔抽样方差求逆:bi=4/(2+);然后把bi增加到A1,具体方法为:把bi/2加到A1矩阵的(i,s), (i,d), (s,i) 和 (d,i)位置元素上,把bi/4加到A1矩阵的(s,s), (s,d), (d,s) 和 (d,d)位置元素上。

当两个亲本已知时,bi=2,表示个体跟遗传组没有联系。因此增加的系数分别是2,-1和1/2,与NRm分子亲缘关系矩阵的逆矩阵系数相一致(2个亲本已知)。如果一个亲本已知,那么bi=4/3,因此增加的系数分别是4/3,-2/3和1/3,与NRm分子亲缘关系矩阵的逆矩阵系数相一致(1个亲本已知)。如果没有亲本是已知的,表示两个亲本都需要分配到组,那么bi=1,因此增加的系数分别是1,-1/2和1/4。

逻辑解释:如果双亲已知,那么育种值方差的一半(父母本各一半育种值,从方差角度,就是1/4+1/4=1/2)是可以被解释的,剩余的1/2,转换为倒数,就是121=2,加到A矩阵的逆矩阵相应系数上。

到此为止,没怎么看明白。