跳到主要内容
访问密钥 NCBI主页 MyNCBI主页 主要内容 主导航
BMC生物信息学。2005; 6: 149.
2005年6月16日在线发布。 数字对象标识:10.1186/1471-2105-6-149
预防性维修识别码:项目经理1183190
PMID:15958172

基于主题词表的基因符号消歧

关联数据

补充资料

摘要

背景

生物文献的海量文本挖掘有望关联不同的信息和发现新知识。然而,基因符号的消歧是一个主要的瓶颈。

结果

我们开发了一种简单的基于同义词表的消歧算法,该算法可以使用很少的训练数据进行操作。该叙词表包含来自五个人类基因数据库和MeSH的信息。人类基因符号的同音异义词问题的程度是相当大的(我们组合的同义词库中33%的基因有一个或多个歧义符号),这不仅是因为一个符号可以指向多个基因,还因为一个基因符号可以具有许多非基因意义。自动生成了52529份Medline摘要的测试集,其中包含从OMIM中提取的690个模棱两可的人类基因符号。在测试集上,消歧算法的总体准确率高达92.7%。

结论

人类基因符号的歧义性很强,不仅因为一个符号可能表示多个基因,而且特别是因为许多符号具有其他非基因意义。所提出的消歧方法可以高精度地解决测试集中的大多数歧义,包括重要基因/非基因决策。该算法快速且可扩展,能够在大规模文本挖掘应用程序中消除基因符号歧义。

背景

生命科学中的信息量惊人,呈指数级增长。Medline数据库是最大的生物医学文本科学信息资源之一,目前包含超过1400万个摘要,估计每分钟增加一篇以上的文章。科学家们面临着信息过载的问题,这在生物领域尤为紧迫,基因组学和蛋白质组学的高通量实验以前所未有的速度产生了新数据。通常情况下,对这些数据的解释需要消化和整合数千篇文章和其他信息源中包含的信息,这是一项艰巨的任务,显然超出了人类的阅读和理解能力。

最近,人们提出了许多信息检索系统,以从大型文本语料库中提取和关联相关的生物信息[1-9]. 这些系统甚至有望发现隐藏在文献中的新的“隐性”知识。“概念生物学”一词已经被创造出来,用来区分这个新兴的研究领域,因为它本身就是生物学研究的一个分支[10]. 然而,有几个问题限制了当前文本管理工具的实用性[11]. 一个问题是文献中基因命名法的使用高度多样化[12,13]为同一个基因生成多个符号和名称。这使得处理相同基因但使用不同符号的不同文档中的相关信息复杂化。处理这个同义词问题的一种方法是利用现有遗传数据库中有关基因及其别名的信息。

第二个可能更复杂的问题是,单个基因符号可能指多个基因,也可能是具有完全不同的非基因含义的术语的缩写。从文献中构建基因网络时[1]例如,人们不希望前列腺特异性抗原污染网络(PSA公司)与嘌呤霉素敏感氨肽酶、银屑病关节炎、猪血清白蛋白或文献中发现的其他100多种PSA意义之一有关[14]。

这种歧义或同音异义词问题的程度是最近两项研究的进一步主题。Tuason公司等。[15]比较了四种生物(不包括人类)的基因符号,发现单个生物多达20%的基因符号与其他三种生物不明确。在同一小组的另一项研究中,陈等。[16]发现在一组45000个摘要中,85%正确检索到的小鼠基因与其他20种生物的基因名称不明确,而忽略了同样是英语单词的基因名称。当后者包括在内时,检索到233%的额外“基因”实例,其中大多数是假阳性。在其他几项研究中[17-19]同时,也提出了解决这个歧义问题是文本挖掘工具在生物医学领域大规模应用的重要要求。

一般的词义消歧在自然语言处理领域得到了广泛的研究。已经提出了各种各样的方法(参见[20,21]包括基于词典的方法和使用有监督的学习技术来构建分类器,为歧义词赋予适当的含义。通常,这些方法使用窗口中围绕模糊术语的单词,或从该上下文窗口中派生的信息,例如部分发言或搭配。

最近,一些研究探索了消歧技术在生物领域的应用。Hatzivassiloglou公司等。[22]应用机器学习方法将符号分为三类:基因、蛋白质和mRNA。没有尝试在一个组中解析具有两个或多个感官的同音异义词,也没有尝试解析这三个组之外的感官的同义词,性能结果相当温和,但仍优于人类的解释。金特最近也解决了同样的问题等。[23]他提出了一种新的分类器设计,并对Hatzivassillou使用的最佳方法进行了轻微改进[22]. 在一系列文章中[17,24,25]Liu及其同事研究了不同的监督学习技术、特征表示和上下文窗口大小对消歧性能的影响。他们在少数模棱两可的生物医学缩写词上取得了很好的结果[17,24]但为了训练,他们通常需要为每种可能的感官举几十个例子。实际上,这些数字往往很难获得。Widdows公司等。[26]比较了几种从医学主题词表(MeSH)中消除歧义概念的方法[27]在一组70个模棱两可的术语上。他们最成功的方法达到了74%的精度,并利用了现有的MeSH术语共现数据,这些数据是由人类注释器从MeSH注释中导出的。然而,他们的方法对基因符号并不适用,因为MeSH对基因符号的覆盖很差。

最近,波多尔斯基等。[19]使用贝叶斯分类器模型消除LocusLink中发现的基因符号的歧义[28]. 有趣的是,他们的系统可以区分符号的基因和非基因含义,承认许多基因符号是具有非基因含义的术语缩写。他们在两个由66个基因符号组成的手动测试集上验证了他们的系统,并发现当每个基因感官有20多个摘要可供训练时,系统的准确度大多超过90%。

尽管其中一些方法产生了非常好的消歧结果,但它们需要大量的训练数据,通常每个意义上需要几十个实例。对于基因符号消歧,这些数字可能很难获得。考虑到基因符号的同音异义问题的严重性,手动管理训练数据将是极其困难的。任何实用的消歧系统都应该使用自动收集的数据进行训练,但即使如此,所需的数字也不太可能用于许多模糊符号。

在这里,我们提出了一种用于基因符号的消歧方法,该方法在使用稀疏数据进行训练时保持了优异的性能。我们方法的基础是一个词库,用于在文本中查找生物医学概念,包括基因符号。针对人类基因,我们首先量化了基因符号的歧义问题,特别注意了基因符号非基因意义引起的歧义。然后,我们描述了我们的消歧方法,并在大型文档测试集上评估了消歧算法的性能。

结果

人类基因符号的叙词表构建与歧义

我们从五个公共数据库中提取了人类基因符号和别名、基因名称和识别号[29]:Genew、基因组数据库(GDB)、LocusLink、人类孟德尔在线遗传(OMIM)和Swiss-Prot。根据识别号和基因符号或名称的重叠匹配不同数据库中的基因,并将相应信息合并到新的基因同义词库中。由此产生的同义词库包含26367个人类基因的信息,共有63148个基因符号。模糊基因符号的百分比为4.9%(59604个不同基因符号中的2911个),而受同名影响的基因百分比为17.5%(4606/26367)。

基因符号不仅可以表示多个基因,还可能具有其他非基因意义。为了进一步衡量歧义的程度,我们使用缩写扩展算法搜索了13年的Medline摘要中的缩写(或缩写形式)及其扩展(或长形式)[30]. 共发现10398个独特的、病例敏感的短形式,与我们的基因同义词库中的基因符号相匹配,其中长形式有146198个。其中,117149个长形式(对应5639个符号)与与该符号相关的任何基因名称都不完全匹配,并且被认为具有非基因意义。每个符号具有非基因含义的不同长形式的数量差异很大(图(图1),1)高达734(缩写为“PC”,例如可以表示“先天性厚甲症”、“前额叶皮层”和“防护服”)。在我们的组合基因同义词词典中,至少有一个非基因意义的缩写形式影响了26.9%的基因和9.5%的基因符号。总的来说,考虑到基因和非基因的含义,我们合并的同义词表中32.7%的基因有一个或多个同名符号,而同义词库中12.6%的基因符号是模糊的。

保存图片、插图等的外部文件。对象名为1471-2105-6-149-1.jpg

基因符号的非基因含义数。点表示人类基因符号的数量(在纵轴上),对于这些符号中的每一个,表示具有非基因含义的相应长形式的数量(横轴)。应该注意的是,对于相同的非基因意义,拼写变化可能会产生不同的长形式。为了减少这些变化的影响,长形被阻止。

基因符号意义的消歧

消除同名基因符号歧义的算法操作如下。对于符号可以表示的每个可能的基因,假设有一个参考描述。给定一个模棱两可的符号,它出现的文本上下文,例如Medline摘要,与每个参考描述相匹配,生成一组匹配的分数。然后取与参考描述最匹配上下文的对应基因来表示符号的含义。然而,如果上下文与任何参考描述都不匹配,并且匹配分数低于由离开过程确定的同名依赖阈值,则假定符号具有非基因含义(参见附加文件:1消歧过程的示例)。对于文本上下文,我们使用了分配给Medline摘要的标题、摘要和MeSH术语。作为参考描述,我们选择了从OMIM中剔除的基因注释,或一个或多个(最多五个)关于特定基因的Medline摘要。

为了训练和测试目的,我们自动为690个模糊符号编译了一组注释和摘要,这些符号具有974种不同的基因含义;528个符号至少有一个非基因意义。所有的摘要和注释都是为了从MeSH和基因同义词库中获取概念,并使用Collexis的索引软件(荷兰Geldermalsen)[31]. 对于每个文档,都会生成一个生物医学概念列表,并附带相关分数(“概念指纹”或CFP),用于后续处理。

对于符号的每个基因意义,留出五个随机选择的摘要用于生成不同的参考CFP;剩下的摘要用于测试。测试集包含52529篇摘要。文本上下文和参考描述之间的匹配分数被定义为归一化余弦向量分数[32]这两个文本的CFP之间。

当OMIM注释用作参考描述时,消歧算法的总准确率为88.9%,该算法定义为我们的测试集中选择了正确同音词含义的文摘的百分比。这与使用一个摘要作为参考(87.6%)相当,而使用五个摘要的CFP组合作为参考时,准确度提高到92.7%(图(图2)。2). 为了进行比较,一个简单的多数规则(对于每个符号,总是选择测试集中最常出现的意义)导致基线准确率为72.4%。

保存图片、插图等的外部文件。对象名为1471-2105-6-149-2.jpg

消歧算法的性能。在52529份Medline摘要的测试集上,对来自不同参考描述(OMIM注释或不同数量的Medline摘要)的参考指纹确定了消歧算法的总准确度。当使用两个或多个摘要时,对单个摘要的指纹进行平均,以得出最终的参考指纹。

我们将五个摘要的组合用作参考描述时的错误进行了细分。如表所示表1,1,6.5%的病例中,表示基因的符号被赋予了非基因意义;具有非基因意义的符号被错误归类为基因的频率更低(4.5%)。对于具有多种基因含义的基因符号,9.9%的符号被分配给了错误的基因(在10054个包含同义词同义词的摘要中,有993个是错误的)。

表1

基因与非基因感官的歧义消解。表项显示了测试集中带有基因符号的摘要的数量,这些基因符号被消歧算法正确或错误地分类为具有基因或非基因意义。百分比表示相对于行总数正确和错误分类的符号。每个基因符号意义的参考指纹来自五个Medline摘要的组合,不属于测试集的一部分。

算法

参考基因非基因型
基因24243 (93.5%)1666 (6.5%)
非烯1197 (4.5%)25323 (95.5%)

讨论

自由文本中基因符号的模糊性阻碍了文本挖掘和基于文献的发现方法的大规模应用。我们对基因符号歧义的评估表明,在生物领域进行文本挖掘时,同音异义词问题不容忽视,这证实了先前研究的结果[15]. 我们发现同义词库中多达33%的基因受到同音异义词的影响,即使是这个高数字也低估了这个问题,因为我们仅限于人类基因,而没有考虑其他有机体和基因产品。

如果摘要中的每个歧义符号都伴随着相应的长形式至少一次,那么消除歧义将是一项微不足道的任务。不幸的是,这种方法的实用价值有限。我们最近检查了3901篇《自然遗传学》和《生物医学中心》的文章,发现摘要中只有30%的基因符号带有匹配的长形式[33]. 对于文摘中另外8%的符号,全文中可以找到长形式。在全文文章中提到的所有基因符号中,只有18%伴有长型。

我们比较了两种参考描述来源,即基因注释和关于特定基因的摘要。OMIM注释作为参考描述的表现并不比随机选择的基因摘要好。当参考CFP由多个摘要的信息组合而成时,性能有所提高,但当使用三个以上的摘要时,性能的改善似乎微不足道(图(图2)。2). 这表明,通过相对简单的参考描述可以获得极好的消歧结果,并为从基因数据库中的文献链接中大量获取此类描述提供了一种可行的方法,鉴于同音异义问题的严重性,这对于所有实际目的来说都应该是自动的。

我们的消歧算法可以用作信息提取应用程序中基因识别模块的一部分。在最近一篇关于术语识别的评论文章中,Krauthammer和Nenadic[34]区分两种类型的消歧:在更广泛的层面上确定概念的类型(例如,区分基因和非基因),以及在特定的层面上解决术语类中术语的不同含义(例如,区别基因同义词库中的同名基因)。我们的方法解决了这两种类型的消歧。虽然该算法是为消除基因符号的歧义而开发和测试的,但只要有足够的参考描述,该方法是通用的,并且易于应用于其他歧义实体。

我们想强调我们的方法在处理速度、可伸缩性和准确性方面的实用性。初始索引过程是最耗时的步骤,但原则上只需执行一次。对于52529个摘要的整个测试集,目前在标准Pentium IV计算机上进行索引大约需要两个小时。一旦上下文和参考指纹可用,消歧过程本身就非常快,整个测试集大约需要两分钟。

在实际应用中,我们在本研究中使用的近700个同名基因符号需要参考描述。考虑到即使是关于特定基因的单个摘要也可以提供足够的参考描述,我们的方法可以很容易地进行扩展,例如,通过获取与LocusLink中的每个基因描述一起引用的摘要。在我们下载的LocusLink中,13811个基因至少有一个参考,7587个基因有三个或更多参考。

自动确定基因/非基因阈值可能更加困难,因为我们的方法目前需要提供符号的非基因含义示例。我们目前正在研究基于具有非基因含义的一般抽象集的自动阈值设置,从而避免了获取每个特定符号的非基因示例的需要。

为了在海量文献挖掘中具有实用价值,任何消歧算法的准确度都必须非常高。在这方面,被赋予非基因意义的基因符号(在我们的测试集中为6.5%)可能比被赋予错误的基因意义的问题要小(4.5%),或者比被赋予了错误的基因含义的问题要少(9.9%)。值得注意的是,这些结果与我们的测试集有关,虽然测试集很大,但范围仍然有限,因为我们只选择了OMIM中出现的基因符号,并且每个基因意义有六个或更多的摘要。这可能有利于选择相对知名的基因。可以想象的是,一些带有未被选择的基因符号的摘要提供了一个不太集中的上下文,表现也不太好。

在我们的数据选择中,我们把重点放在了人类基因上。我们测试集中的摘要带有表示基因的模糊符号,这些摘要来自两个来源:OMIM,这是一个关于人类基因和疾病的数据库,或者SF/LF数据集,如果摘要中的短形式和长形式都与我们人类基因词典中的条目完全匹配。然而,之前的调查[15,16]结果表明,基因符号在物种间存在大量歧义,并表明大多数歧义归因于同源基因。在我们的测试集中随机抽取100个具有基因意义的符号摘要,其中31个符号表示非人类基因,大多来自小鼠或大鼠(数据未显示)。所有这些显然都与同名的人类基因同源。在这项研究中,我们没有试图区分同源基因。模式生物通常用于理解人类基因的生物学,文本中同源基因之间的区别通常很难做出,或者没有用处。如果同源基因的消歧很重要,那么我们的方法可以通过包括其他物种基因的参考描述来扩展。

最后,当前性能基于完全自动获取的参考描述。手动管理这些描述或低得分符号的相应指纹可能会进一步提高算法的性能。

结论

基因符号的歧义性很强,不仅因为一个符号可能表示多个基因,而且特别是因为许多符号具有其他非基因意义。一种基于同义词库的简单消歧方法可以高精度地解决测试集中的大多数歧义,包括重要基因/非基因决策。该方法快速且可扩展,可用于大规模文本挖掘和信息提取应用中的基因符号消歧。

方法

基因叙词表的构建

我们(2004年1月)从五个精选数据库下载了人类基因信息:Genew[35]、GDB[36],LocusLink公司[37],百万分[38]和Swiss-Prot[39]. 对于数据库中的每个人类基因,提取基因符号(包括别名)、基因名称和基因识别码。由于数据库中的基因名称字段通常包含更多描述性语句,而不是正确的基因名称,因此我们根据Schwartz和Hearst描述的缩写扩展算法排除了与相应基因符号之一不匹配的基因名称[30]。

每个基因的识别码数量因数据库而异。每个数据库维护自己的一组基因识别码,但也包括与一个或多个其他数据库的交叉引用;如果可用,还提取了Unigene和RefSeq的基因识别码。搜索原始数据库,包括Unigene和RefSeq,以获取有关过时识别码及其可能替代品的信息,并酌情更正或排除提取的代码。

为了从不同的数据库中找到相应的基因,对具有任何匹配识别码、基因符号或基因名称的基因进行分组。在每个组中,生成了没有冲突识别码的基因亚组。如果只有一个亚组,则将该亚组中的基因表示为一个相同的基因,并合并所有基因符号和单独基因的名称。如果有多个亚组,则进入一个迭代程序,在该程序中,为所有亚组的大组比较确定相似和不同的识别码数量以及基因符号和名称的重叠。然后使用评分规则来决定两个亚组是否代表相同的基因并应合并。

新的基因同义词库包含26367个人类基因的信息,共有63148个基因符号。与原始数据库的重叠对于LocusLink来说最为显著,它涵盖了新叙词表中98.1%的基因和92.3%的基因符号;基因由HUGO基因命名委员会维护,涵盖67.0%的基因和54.3%的符号。原始数据库中每个基因的平均符号数从1.68(OMIM)到2.25(LocusLink)不等;组合的基因同义词表平均每个基因有2.39个符号。

文本索引

使用Collexis(荷兰Geldermalsen)索引软件对文本文档进行索引。对于给定的文本,频繁出现的非信息性单词被删除,剩余的单词被词干(使用LVG软件,它是UMLS词汇工具的一部分[40])也就是说,变成一种标准的、规范的形式。

随后,在文档中搜索MeSH或我们的基因同义词库中出现的生物医学术语。每个找到的术语都映射到一个表示首选术语或概念的唯一标识码,t吨并被分配了相关性得分或权重w个等于术语频率TF公司(发生次数(f)概念的t吨(即文档中的术语或其同义词)乘以反向文档频率国际设计公司(文件数量的修正系数N个包含t吨在给定的集合中N个文件;我们使用了10年的Medline)[32]. 我们应用了国际设计公司对文档总数进行规范化[41]以下为:

保存图片、插图等的外部文件。对象名称为1471-2105-6-149-i1.gif

然后用M(M)-量纲向量W公司= (w个1,w个2,...,w个M(M)),其中M(M)是同义词库中不同概念的数量,以及w个=0,如果t吨不在文档中。这个权重向量W公司随后将被称为文档的“概念指纹”(CFP),并用于后续处理。

记录测试集

图中总结了与构建测试集相关的各种处理步骤图3下面将对其进行描述。我们自动生成了两组包含已知含义符号的摘要。首先,我们使用Schwartz和Hearst的缩写扩展算法搜索了Medline 1990-2002年的所有摘要中的缩写或缩写形式及其相应的扩展形式或长形式[30]. 对于每个同名短形式,即至少有两种不同长形式的短形式,基因同义词库中的基因的符号和名称与其中一个短形式/长形式对完全匹配。出现这些配对的摘要被标记为包含该基因。如果长形式仅与特定基因的名称部分匹配,则我们将短形式/长形式对和相关摘要排除在进一步考虑之外,以防止非基因意义分配给基因,或基因意义分配到不正确的其他基因。剩下的两对不能与基因同义词库相匹配,将它们归并在一起,形成非基因意义的缩写形式,并相应地标记相应的摘要。因此,收集了一组摘要测试集,其中包含代表基因符号或其他含义的短形式,不包括含义不确定的摘要(短形式/长形式测试集,350501篇961个同源基因符号的摘要)[14]. 这种自动创建语义标记缩写集的方法最初是由[17]尽管它们没有与同义词库相匹配,以专注于基因符号和非基因意义。

保存图片、插图等的外部文件。对象名为1471-2105-6-149-3.jpg

构建测试和参考指纹所涉及的步骤。构建了两组包含已知基因或非基因意义符号的摘要。一组由从Medline中筛选出的带有短/长组合的摘要组成,另一组由OMIM基因注释中提到的摘要组成。通过选择出现在这两个集合中的符号,将两个集合合并,每个基因感官至少有六个摘要。合并集合中基因的OMIM注释被单独存储。通过从合并集中随机选择每个基因意义的五个摘要生成参考集;其余的摘要用于测试。测试和参考集中的所有摘要以及OMIM注释都使用组合的基因同义词库进行索引,并将生成的“概念指纹”用于参考指纹构建和消歧算法测试。

其次,我们从我们的基因同义词表中提取出所有同名基因,这些基因都有OMIM识别码和一个符号,该符号表示同义词库中的多个基因或具有非基因意义的长形式。对于每个基因,我们从OMIM数据库中剔除了相应的注释,包括作为该基因参考的PubMed引文。值得注意的是,如果Medline摘要包含同名基因符号的同义词,我们将同义词替换为同名符号。所有这些摘要一起构成了第二个测试集(OMIM测试集,1376个基因符号的23678个摘要)。短形式/长形式集合比OMIM集合大得多,因为它包含许多带有非基因意义符号的抽象。

为了比较使用注释或摘要作为参考描述时消歧算法的性能(见下文),选择了出现在我们的两个测试集中的符号,并且每个符号的基因意义至少有六个摘要。共有690个符号合格,具有974种不同的基因含义;528个符号至少有一个非基因意义。对于符号的每个基因意义,留出五个随机选择的摘要用于生成参考CFP;其余的摘要(每个意义最多100个摘要)用于测试。测试集包含52529个摘要,25809个符号具有基因意义,26720个符号具有非基因意义。

同音异义词消歧

消歧算法将文档中同名词的文本上下文与同名词可能表示的每个基因的参考描述进行比较。对于文本上下文,我们采用同音词出现的摘要(包括标题和MeSH术语)的CFP,将同音词本身的权重设置为0。对于参考描述,研究了两种方法。在一种方法中,基因OMIM注释的CFP用作参考。在另一种方法中,通过汇总各个摘要的词频并计算权重,从具有已知同音词意义的摘要(最多五个)的CFP中导出平均参考CFP。无论哪种情况,上下文CFPW公司c(c)和参考CFPW公司第页然后通过计算归一化余弦向量得分进行比较[32]:

保存图片、插图等的外部文件。对象名为1471-2105-6-149-i2.gif

哪里w个ci公司w个是概念的相关性得分t吨在上下文CFP和参考CFP中,以及|W公司c(c)|和|W公司第页|是这些CFP的长度。余弦得分在1(相同的CFP)和0(CFP之间没有重叠)之间变化。对于同音异义词的每个基因意义,都会确定一个分数,并将分数最高的意义分配给该术语,除非最高分数低于同音异名依赖阈值,在这种情况下,同音异形词被视为具有非基因意义。错误率通过省略程序确定:对于特定基因符号(包含基因和非基因含义)的每个测试摘要,确定上下文CFP和该符号的每个参考CFP之间的分数,并选择最高分数。(如果符号只有一个参考CFP,那么每个摘要显然只有一个分数,这是被选中的。)。从这组分数中,遗漏了一个分数,并确定了将剩余分数的错误率降至最低的阈值。然后,根据删除的分数高于或低于该阈值,将抽象中与删除分数相关的符号归类为具有基因或非基因含义。依次对每个分数执行此操作,从而得出模糊符号的总体错误率。然后将使整个分数样本的错误率最小化的阈值作为最终的同名相关阈值。

作者的贡献

BJAS设计了这项研究,开发并实现了消歧算法,并进行了大部分数据分析。BM参与了研究的设计并帮助起草了手稿。MW参与了基因词库的构建,生成了训练和测试数据,并帮助起草了手稿。MJS参与了研究设计和数据分析。EMVM参与了文本索引。HMW参与了基因叙词表的构建。JAK构思了这项研究,参与了其设计和协调,并起草了手稿。所有作者阅读并批准了最终手稿。

补充材料

附加文件1:

这个文件通过一个具体的例子说明了消除歧义的过程。

致谢

这项研究得到了欧洲委员会在ORIEL项目(合同号:IST-2001-32688)下的部分支持。

工具书类


来自的文章BMC生物信息学由以下人员提供BMC公司