1、GO资源简介

由于生物系统的惊人复杂性和需要分析的数据集的不断增加,生物医学研究越来越依赖于以可计算的形式存储的知识。基因本体论(GO)项目为基因功能和基因产物的可计算知识提供了目前最全面的资源。GO知识库由两个主要部分组成:

基因本体论Gene Ontology (GO),提供了生物功能(“术语”)及其相互关系的逻辑结构,表现为有向无环图。

GO注释(GO annotations)的语料库,将特定的基因产物(蛋白质、非编码RNA或大分子复合物,为简单起见,我们通常将其称为“基因”)与特定的本体术语关联起来的基于证据的陈述。

本体论和注释一起旨在描述一个全面的生物系统模型。目前,GO知识库包含了14万多篇已发表论文的实验结果,其中包括60多万篇实验支持的GO注释。这些数据集为跨越生命之树的不同生物体提供了超过600万个功能注释的额外推断提供了核心数据集。除了这个核心知识库之外,GOC资源还包括对本体进行编辑和逻辑推理的软件、对本体和注释的web访问以及使用GO知识库支持生物医学研究的分析工具。

基因本体论和注释的使用:基因本体论注释最常用来解释大规模的分子生物学实验,有时也称为“组学”实验。这些实验测量的要么是基因产物(RNA和蛋白质),要么是基因DNA序列的变异,要么是蛋白质代谢的小分子。因此,它们都与基因功能有关。一个典型的组学实验测量数千个分子的水平,使其难以解释潜在的分子变化(例如癌细胞和正常细胞之间的变化)。“基因本体论富集分析”识别共同作用的相关基因群,将数千个分子变化减少到更少的生物功能,从而有可能理解分子变化的含义。基因本体论也是一项以可计算的形式表达大量生物医学知识的重大努力的中心。它与许多其他生物医学本体相联系,是研究将计算机科学应用于生物学和医学的基础。

2、Ontology Documentation

基因本体论定义了一系列与基因功能相关的概念(“GO terms”),以及这些功能之间是如何相互关联的(“关系”)。随着生物知识的积累,它不断地被修订和扩充。GO从三个方面描述功能:分子功能(由基因产物执行的分子水平活动)、细胞成分(基因产物执行功能的相对于细胞结构的位置)和生物过程(由多个分子活动完成的较大过程或“生物程序”)。正在进行的本体论修订由一组在生物学和计算知识表示方面具有丰富经验的高级本体论编辑管理。本体更新由GOC本体团队与请求更新的科学家协作进行。大多数请求来自于对GO进行注释的科学家(通常每个注释只影响几个术语)和生物学特定领域的领域专家(通常修改包含许多术语和关系的本体的整个“分支”)。我们邀请研究人员和计算科学家提交对本体论中的新术语或新关系的请求。GO本体(GO ontology)的结构是一个有向无环图,其中每个术语都定义了与同一域中的一个或多个术语的关系,有时还定义了与其他域的关系。GO词汇表被设计成与物种无关的,包括适用于原核生物、真核生物以及单细胞和多细胞生物的词汇。以GO注释为例,基因产物“细胞色素c”可以用分子功能术语“氧化还原酶活性”、生物过程术语“氧化磷酸化”、细胞成分术语“线粒体基质”和“线粒体内膜”来描述。

Ontologies

2.1、Molecular Function:

一种分子过程,通常通过与其他分子实体的直接物理相互作用,通过单个大分子机器的作用来完成。在这个意义上,功能是指基因产物(或复合物)执行的一个动作或活动。这些作用从两个不同但相关的角度来描述:(1)生物化学活动,(2)作为一个更大的系统/过程的组成部分的作用。

2.2、cellular component

这些术语描述了大分子机器在执行分子功能时所占据的相对于细胞间隔和结构的位置。生物学家有两种方法来描述基因产物的位置:(1)相对于细胞结构(如质膜的细胞质侧)或细胞间隔(如线粒体);(2)相对于稳定的大分子复合物(如核糖体)。与氧化石墨烯的其他方面不同,细胞成分的概念不是指过程,而是指细胞解剖。

2.3、Biological Process

生物过程代表了生物体通过基因编程来实现的特定目标。生物过程通常用其结果或结束状态来描述,例如,细胞分裂的生物过程导致从单个母细胞产生两个子细胞(一个分裂的细胞)。生物过程是由特定基因产物(或大分子复合物)执行的一组特定的分子功能完成的,通常以高度调控的方式和特定的时间序列完成。

3、GO注释(GO anntion)

基因本体论:生物学模型的框架。GO定义了用于描述基因功能的概念/类,以及这些概念之间的关系。它从三个方面对函数进行分类。GO注释是关于特定基因功能的陈述。每个GO注释由一个基因和一个GO术语之间的关联组成。这些陈述共同构成了当前生物知识的“快照”。关于基因功能的不同知识片段可能会被建立到不同的程度,这就是为什么每个GO注释总是引用它所基于的证据。证据以GO“证据代码”的形式呈现,或者是发布的引用,或者是用于创建注释的方法的描述。然而,所有GO注释最终都直接或间接地得到了科学文献的支持。GO证据代码描述了证据,并大致反映了带注释的断言与直接实验证据的距离有多远,以及该证据是否经过了专家biocurator的审查。

4、证据

4.1、Experimentally-supported注释。

实验(EXP)证据代码表明,有来自实验的证据直接支持该基因的注释。例如,由免疫荧光确定的基因产物与其亚细胞定位之间的联系将由直接试验(IDA)证据代码(EXP证据的亚型)推断得到支持。具有直接实验证据的注释由biocurator创建,biocurator是受过计算知识表示方面培训的博士级专家,他们阅读同行评审的文献并创建GO注释。

4.2、Phylogenetically-inferred注释。

系统发育原理通过重构进化事件来推断基因之间的关系,为深入了解基因功能提供了一种强有力的方法。自2008年以来,GOC一直支持一项专门的系统发育注释工作,该工作在过去几年得到了扩展。系统发育注释方法已发表。简单地说,我们已经开发了一个软件(PAINT, Phylogenetic Annotation推断工具),通过这个软件,一个biocurator可以查看一个基因家族中所有的基因实验注释,并利用这些信息来推断这个家族中没有特征的成员的注释。生物调节器在一个家族系统发育树的特定分支上建立了一个明确的基因功能得失模型。该模型用于推断家族基因的新注释(即不与实验注释重叠)。该模型用于推断家族基因的新注释(即不与实验注释重叠)。基于系统发育的注释由IBA(从生物祖先推断)证据代码表示。每个推断的注释都可以追溯到作为断言基础的直接实验注释。GO系统发育注释项目现在是GO知识库中人工审阅注释的最大来源,而且它极大地增加了注释的数量,即使是在已经进行了充分实验研究的生物体中也是如此。

4.3、Computationally-inferred注释

最后,与直接实验结果相差最远的是“电子”(IEA)证据码,它不单独审查(尽管通常涉及对样本进行广泛的手工审查)。iaea支持的注释最终基于同源性和/或其他实验或序列信息,但通常不能追溯到实验源。这些注释的主体由三个方法组成。第一个也是最全面的方法是InterPro2GO,它是基于一个GO术语与一组同源蛋白的广义序列模型(“签名”)的策划关联。与信号具有统计学意义的匹配的蛋白质序列被分配到与签名相关的GO项,这是同源推理的一种形式。第二种方法是将UniProt控制的词汇项(主要是描述酶活性的酶佣金数和描述亚细胞位置的UniProt关键字)转换为相关GO项。最后,根据从bl基因树中推断出的1:1的同源基因进行注释,这种方法自动将实验中在一个基因中发现的注释转移到同一分类枝(如脊椎动物枝内的注释和植物枝内的注释)中的1:1的同源基因上。

5、GO Enrichment Analysis

GO的主要用途之一是对基因集进行富集分析。例如,给定一组在特定条件下上调的基因,富集分析将使用该基因集的注释发现哪些GO术语被过度表达(或未被充分表达)。

背景频率是在整个背景集中注释到GO项的基因数量,而样本频率是输入列表中注释到GO项的基因数量。例如,如果输入列表包含10基因和生物过程的浓缩了酿酒酵母的背景集包含6442个基因,如果5个的10个输入基因注释术语:DNA修复,那么采样频率对DNA修复将5/10。而如果在所有的酿酒酵母基因组中有100个基因被注释到DNA修复中,那么背景频率将是100/6442。p值是在一个特定GO项注释的列表中n个基因中至少有x个基因的概率或机会,给定该GO项注释的基因在整个基因组中的比例。也就是说,将用户列表中的基因共享的GO术语与注释的背景分布进行比较。p值越接近于零,与该基因组相关的特定GO项越显著(即,该特定GO项对一组基因的注释偶然发生的可能性越小)。换句话说,在搜索过程本体时,如果一组基因中所有的基因都与“DNA修复”相关,那么这个术语就很重要。然而,由于基因组中的所有基因(带有GO注释)都间接地与顶级术语“biological_process”相关,因此,如果一个组中的所有基因都与这个非常高的级别术语相关,那么这并不重要。

GO注释的更多相关文章

  1. shell注释

    sh里没有多行注释,只能每一行加一个#号.只能像这样: #-------------------------------------------- # 这是一个自动打ipa的脚本,基于webfrogs ...

  2. 浅谈JSP注释

    HTML注释 JSP文件是由HTML尿急和嵌入的Java程序片段组成的,所以在HTML中的注释同样可以在JSP文件中使用.注释格式:<!--注释内容--> <!-- 欢迎提示信息! ...

  3. 注释生成Api文档

    1.开发背景 最近一直在写dubbo接口,以前总是用word文档写接口描述然后发给别人.现在太多了,而且跟别人对接联调的人家急着用,根本没时间去写word文档.那就想想怎么用doc文档注释自动生成接口 ...

  4. grep 查找bash脚本中的注释代码

    出于安全性的考虑,不建议在bash脚本中注释掉不使用的代码.也就是说如果某段代码不使用了,那么应该删除掉,而不是简单地注释掉.假如你突然意识到这一点,而以前并没有遵从这个原则,现在需要找出脚本中的注释 ...

  5. 在C#里面给PPT添加注释

    平常开会或者做总结报告的时候我们通常都会用到PowerPoint演示文稿,我们可以在单个幻灯片或者全部幻灯片里面添加注释,这样观众可以从注释内容里面获取更多的相关信息. 有些朋友不清楚如何在幻灯片里面 ...

  6. 设置eclipse中自动添加get,set的注释为字段属性的注释

    一:说明 首先具体来看一下是什么效果,上图可能会更清楚一点 就是在get/set中自动加上属性的注释,那我们要怎么配置呢? 二:配置 2.1:下载附件 下载附件 2.2:替换class 原生的ecli ...

  7. go语言注释

    Go语言注释实例代码教程 - Go支持C语言风格的/* */块注释,也支持C++风格的//行注释. 当然,行注释更通用,块注释主要用于针对包的详细说明或者屏蔽大块的代码. 每个包都应有一个包注解,即 ...

  8. 代码的坏味道(13)——过多的注释(Comments)

    坏味道--过多的注释(Comments) 特征 注释本身并不是坏事.但是常常有这样的情况:一段代码中出现长长的注释,而它之所以存在,是因为代码很糟糕. 问题原因 注释的作者意识到自己的代码不直观或不明 ...

  9. Rafy 框架 - 为数据库生成注释

    当开发者使用 CodeFirst 开发模式,编写了大量的实体类,在代码中编写了完整的类型注释和属性注释,并自动生成数据库后,往往需要把实体类型和实体属性上的注释同时生成到对应的数据库表及字段上.这样, ...

  10. python学习笔记(基础二:注释、用户输入、格式化输出)

    注释 单行:# 多行:上下各用3个连续单引号或双引号 3个引号除了多行注释,还可以打印多行 举例: msg = ''' name = "Alex Li" name2 = name ...

随机推荐

  1. Error building Player: UnityException: Bundle Identifier has not been set up correctly

    错误提示: Error building Player: UnityException: Bundle Identifier has not been set up correctlyPlease s ...

  2. pyqt 8行内就可以跑一个浏览器

    pyqt 8行内就可以跑一个浏览器 from PyQt4.QtCore import * from PyQt4.QtGui import * from PyQt4.QtWebKit import * ...

  3. 8. Object转Map,Map转Object

    法一:使用reflect进行转换 public static Object mapToObject(Map<String, Object> map, Class<?> bean ...

  4. [Writeup]二维码的一个题

    [Writeup]二维码的一个题 瓜皮感觉难出题眼,恶魔暴力膜法初现 看题 一个二维码,扫出来是where is the flag?(where is my mind?) 先感觉 用binwalk扫一 ...

  5. django之signal机制分析

    django的signal在djangobb中的使用: from django.db.models.signals import post_save from django.dispatch impo ...

  6. PHP 扩展在 Linux(centos7)系统下的编译与安装 以 mysqli 为例

    (操作系统 Centos7,环境版本 php7) 01,进入到 PHP 解压后的源码包的的 ext 文件夹 02,查看是否存在 mysqli 扩展 => ls, 如果不存在需要去响应网站下载 ( ...

  7. nginx 根据域名和地址跳转

    设置nginx变量 set $domail_url "$host$request_uri"; 判断并重定向if ($domail_url = '123.com/about/'){  ...

  8. 利用pyusb来查询当前所以usb设备

    具体代码如下 #!/usr/bin/python# -*- coding:utf-8 -*- import sys import usb.core # find USB devices dev = u ...

  9. 现学现卖——Keil uVision 使用教程

    Keil uVision 使用教程 1.如果有旧的工程在,先关闭旧工程.Project -> Close Project2.新建工程.Project -> New uVision Proj ...

  10. jsfl 生成flash 工具面板

    利用flash组件的List做界面,先从flash中拖出List组件,然后删除.绑定Main类. package { import flash.display.Sprite; import flash ...