【Gene Expression Prediction】Part2 Enchancer discovery
文章目录
来自Manolis Kellis教授(MIT计算生物学主任)的课
YouTube:(Gene Expression Prediction - Lecture 09 - Deep Learning in Life Sciences (Spring 2021)
Slides: slides
本节课分为四个部分,本篇笔记是第二部分。
本节主要是一个讲座STARR-seq,探讨发现增强子的方法。如何利用弱监督学习检测增强子。评估了模型性能,以及它们在基因表达分析中的应用潜力。
5. 第一个讲座:Enchancer discovery
增强子是增强特定基因的转录的。对理解细胞如何在不同条件下调控基因表达至关重要。
以前的识别方法都是一些非监督方法,因为没有监督数据
5.1 STARR-seq
MPRA(Massively Parallel Reporter Assays)是一种高通量基因组功能验证技术。它可以同时测试成千上万个DNA序列(如启动子、增强子等调控元件)对基因表达的影响。
大量候选DNA序列插进短的报告基因vector中(比如荧光素酶基因,都包含一个小的启动子)。如果一个候选DNA是增强子,就会增强基因转录表达,就会被检测出来。
关键优点是能够在一个实验中评估大量序列,这是传统单个报告基因测定所无法实现的
STARR-seq 是MPRA的一个变体。
在一个细胞系中,它通过直接测量基因片段的活性来识别转录增强子。
产生数据为监督学习提供基础,DNA序列和其活性标签。
这里主要是为了大规模筛选,所以就用了统一的报告基因,就是为了测试DNA序列的增强子活性
不同细胞类型(如K562、HepG2等)进行的一系列基因组分析实验。
ENCODE项目研究人员的一个核心假设,即染色质的开放状态和组蛋白修饰之间的相互作用是调控基因表达特别是转录因子结合和增强子活性的关键。
这些数据集用于进行验证
在这里就是我们能否使用这些特征,来验证STARR-seq expression
5.2 Enchancer detection with weakly supervised learning
该模型结合了表观遗传特征数据(如ATAC-seq、DNase-seq和ChIP-seq的信号轨迹)和STARR-seq实验结果来训练一个模型,从而识别和精确定位增强子
-
首先模型的input,就是某个区域的,4kb大小的滑动窗口,进行移动
- 记录每个窗口的表观遗传标记的数据,包括组蛋白修饰的分布、DNA可及性的测量等等。(基因组上每个位置的综合信号强度)
- 按我的理解的话,就是一个input matrix就是4kb的窗口
-
然后output是STARR-seq实验得到的数据。
- 包括增强子位置区域预测和核心增强子区域(真正起到增强作用的)
-
神经网络使用这些数据来预测哪些窗口包含活跃的增强子区域。
-
Grad-CAM技术可以帮助分析决策过程,有助于科学家们理解模型为什么会认为某个特定区域是一个增强子。
-
这里其实是重点的一个部分
-
使用在训练过程中计算出的梯度信息,这些信息表示了模型输出(如增强子的预测位置)对输入特征的敏感性
-
可以看出哪些地方对决策贡献更大
-
例如,如果Grad-CAM揭示了在某个4kb窗口内,H3K27ac的特定模式与模型预测增强子存在密切相关,那么我们可以得出结论,这种特定的组蛋白修饰模式对于识别增强子是重要的。
-
这样的准则是更加通用的
-
如下图所示,Grad-CAM在弱监督学习中应用效果好。弱监督学习就比如只能告诉我们照片里有猫/狗,但是我们不知道具体位置
跟我们这里只知道增强子活动而不知其位置的道理是一样的
-
卷积层中的激活图
- 每个卷积核都会产还是呢个一个激活图,高亮了图像中相关特征的位置
-
梯度相加
- 对于所选的类别(如“狗”或“猫”),网络在最后一个卷积层的每个激活图上计算该类别相对于该激活图的梯度。
- 这些梯度表示激活图对于识别该类别的重要性。
- 梯度越大,越关键
-
组合生成热图
- 将这些梯度加权的激活图进行线性组合,得到最终的Grad-CAM热图
- 通过ReLU函数处理,保留对类别有正贡献的特征,取消无关特征。
-
在基因组学中
- 通过Grad-CAM,可以理解模型在预测基因组上的特定区域为增强子时,哪些表观遗传标记起了决定性作用。这有助于解释模型的决策过程,并可以指导进一步的生物实验来验证这些预测。
5.3 Model performance
一个基因组学模型在不同细胞系和染色体上的交叉验证
- 细胞系交叉验证:
- 模型使用一个或多个细胞系的数据进行训练,并在其他未使用的细胞系数据上进行测试。
- 泛化到新的细胞系的能力。
- 染色体交叉验证(Leave-One-Chromosome-Out Cross Validation):
- 模型在除了一个染色体的所有染色体数据上进行训练,并在剩下的那个染色体上进行测试。
- 验证模型是否能够泛化到基因组上新的位置。
左边的是预测出来增强子在的区域,并且给出了表观遗传标志和基因注释、预测标签
然后论文中该模型性能超过SOTA(这里不展示)
举例一下,关于神经祖细胞(NPC)的案例研究。
-
Grad-CAM技术分析
- 左图:不同表观遗传标记在4kb基因组窗口内的重要性评分。预测贡献。
- 右图:展示了窗口中每个位置的重要性评分。描绘出潜在增强子的精确位置。(就像检测猫在图中的哪个位置一样)
-
预测统计
- 总覆盖面积(Total Coverage):经过精细化的预测覆盖了更小的区域
- TSS重叠(TSS overlap):显示精细化后的预测与TSS的重叠比例显著增加(从原始的数值增加到71.0%),表明预测与已知的基因表达起始区域更加吻合。
- PhastCons得分:PhastCons是一种评估跨物种保守性的方法,得分增加(p-value < 0.001)表明经过精细化的预测区域在进化上更加保守,可能具有重要的生物学功能。
- 稀有衍生等位基因频率(Rare Derived-Allele-Frequency, DAF)SNP富集:稀有DAF SNP的富集表明这些区域在同种内也是受到选择压力的,进一步暗示预测的增强子在功能上是重要的。
相关文章:

【Gene Expression Prediction】Part2 Enchancer discovery
文章目录 5. 第一个讲座:Enchancer discovery5.1 STARR-seq5.2 Enchancer detection with weakly supervised learning5.3 Model performance 来自Manolis Kellis教授(MIT计算生物学主任)的课 YouTube:(Gene Expression Predictio…...

【UEFI基础】EDK网络框架(UDP4)
UDP4 UDP4协议说明 UDP的全称是User Datagram Protocol,它不提供复杂的控制机制,仅利用IP提供面向无连接的通信服务。它将上层应用程序发来的数据在收到的那一刻,立即按照原样发送到网络。 UDP报文格式: 各个参数说明如下&…...

vivado使用注意事项
记得给constrs(.xdc)限制文件设置为目标文件(set as Target Consraint File)...

gin路由篇
1. 基本路由 gin 框架中采用的路由库是基于httprouter做的 import ("net/http""github.com/gin-gonic/gin" )func main() {// 1.创建路由r : gin.Default()// 2.绑定路由规则,执行的函数// gin.Context,封装了request和responser.…...

C++逆向分析--继承的本质
一.一些思考 继承是面向对象的三个特性之一。这篇文章我们从底层的角度去理解什么是继承。他的作用是什么。首先继承的出现是更好的避免代码的重复冗余。要理解一件事很重要,C其实是C的延申。那么C的出现是为了解决C语言上C祖师爷认为不友好的事情,也为…...

LeetCode解法汇总2865. 美丽塔 I
目录链接: 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目: https://github.com/September26/java-algorithms 原题链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 描述: 给你一个长…...

pinia 的使用方法
使用方式(选项式) 1、在 mian.js 导入 pinia 里的 createPinia 函数。 2、app.use 这个 createPinia 函数的返回值。 // main.jsimport { createPinia } from pinia;app.use(createPinia()); 3、创建一个 js 文件(该文件保存着共享的数据&…...

sky_take_out
day01: 前端网址通过nginx访问后端网址(前后网址不一致),有三个好处: 一是提高访问速度,二是进行负载均衡,三是保障后端安全性 用md5加密了密码 后端使用knife4j调试,用Swagger生成接口文档&am…...

LC 2865. 美丽塔 I
2865. 美丽塔 I 难度 : 中等 题目大意 给你一个长度为 n 下标从 0 开始的整数数组 maxHeights 。 你的任务是在坐标轴上建 n 座塔。第 i 座塔的下标为 i ,高度为 heights[i] 。 如果以下条件满足,我们称这些塔是 美丽 的: 1 < heights…...

代理设计模式JDK动态代理CGLIB动态代理原理
代理设计模式 代理模式(Proxy),为其它对象提供一种代理以控制对这个对象的访问。如下图 从上面的类图可以看出,通过代理模式,客户端访问接口时的实例实际上是Proxy对象,Proxy对象持有RealSubject的引用&am…...

[陇剑杯 2021]webshell
[陇剑杯 2021]webshell 题目做法及思路解析(个人分享) 问一:单位网站被黑客挂马,请您从流量中分析出webshell,进行回答: 黑客登录系统使用的密码是_____________。 题目思路: 分析题目&…...

美易官方:小米汽车交付时间传闻被官方辟谣
在科技与互联网的快速发展浪潮中,各类信息传播速度之快令人咋舌。然而,信息的真实性却时常成为公众关注的焦点。近日,关于小米汽车交付时间的谣言再次引起市场的广泛关注。小米公司发言人迅速作出回应,明确指出这些关于小米汽车交…...

MySQL 简介
什么是MySQL?(熟悉) MySQL是一个开源的、使用标准SQL语言的、可运行于多个系统的、支持多语言的、支持大型数据库的关系型数据库管理系统。由瑞典 MySQL AB 公司开发,目前属于 Oracle 旗下产品。我们通常使用关系型数据库管理系统…...

动态规划最后一天(回文串)
目录 647. 回文子串 看到题目的第一想法 看到代码随想录之后的想法 自己实现过程中遇到的困难(看代码) 516.最长回文子序列 看到题目的第一想法 看到代码随想录之后的想法 自己实现过程中遇到的困难(看代码) 647. 回文子串 力扣题目链接…...

c语言之scanf函数
scanf函数语法格式与printf函数很相似,语法是scanf(格式控制,地址列表)组成 其中格式控制分为两部分,一部分由双引号括起来的,%和格式字符组成的格式字符串 普通字符串则是原样输出 地址列表是若干地址组成的表列,可以是变量的…...

ORM-02-JPA Java Persistence API 注解入门介绍
拓展阅读 The jdbc pool for java.(java 手写 jdbc 数据库连接池实现) The simple mybatis.(手写简易版 mybatis) JPA JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射…...

【MQ01】什么是消息队列?用哪个消息队列?
什么是消息队列?用哪个消息队列? 来了来了,消息队列系列总算来咯。对于搜索引擎相关的知识大家消化的怎么样呀?其实对于搜索引擎来说,我们学习的内容还是挺全面的,也算是比较深入了。而对于消息队列来说&am…...

2023年度AI盘点 AIGC|AGI|ChatGPT|人工智能大模型
前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 2023年是人工智能大语言模型大爆发的一年,一些概念和英文缩写也在这一年里集中出现,很容易混淆,甚至把人搞懵。 文章目录 前言01 《ChatGPT 驱动软件开…...

【Flink-CDC】Flink CDC 介绍和原理概述
【Flink-CDC】Flink CDC 介绍和原理概述 1)基于查询的 CDC 和基于日志的 CDC2)Flink CDC3)Flink CDC原理简述4)基于 Flink SQL CDC 的数据同步方案实践4.1.案例 1 : Flink SQL CDC JDBC Connector4.2.案例 2 : CDC Streaming ETL…...

长城资产信息技术岗24届校招面试面经
本文介绍2024届秋招中,中国长城资产管理股份有限公司的信息技术岗岗位一面的面试基本情况、提问问题等。 10月投递了中国长城资产管理股份有限公司的信息技术岗岗位,所在部门为长城新盛信托有限责任公司。目前完成了一面,在这里记录一下一面经…...

【计算机网络】TCP握手与挥手:三步奏和四步曲
这里写目录标题 前言三次握手四次挥手三次握手和四次挥手的作用TCP三次握手的作用建立连接防止已失效的连接请求建立连接防止重复连接 TCP四次挥手的作用:安全关闭连接避免数据丢失避免半开连接 总结: 总结 前言 TCP(传输控制协议)…...

设计模式学习总结
责任链模式 使用方法: 1.创建接口 2.定义实现类,每个实现类实现接口,并拥有一个ArchiveHandle的成员,用作责任链的链接 public interface ArchiveHandle {void handle(ArchiveVO archiveVO); } public class ArchivePreHandle i…...

「HDLBits题解」Cellular automata
本专栏的目的是分享可以通过HDLBits仿真的Verilog代码 以提供参考 各位可同时参考我的代码和官方题解代码 或许会有所收益 题目链接:Rule90 - HDLBits module top_module(input clk,input load,input [511:0] data,output [511:0] q );always (posedge clk) begin…...

什么是API ?
API(应用程序编程接口) 就像现成的家具套件相对于家居建设,用一些已经切好的木板组装一个书柜,显然比自己设计,寻找合适的木材,裁切至合适的尺寸和形状,找到正确尺寸的螺钉,然后再组…...

Pytest中conftest.py的用法
Pytest中conftest.py的用法 在官方文档中,描述conftest.py是一个本地插件的文件,简单的说就是在这个文件中编写的方法,可以在其他地方直接进行调用。 注意事项 只能在根目录编写conftest.py 插件加载顺序在搜集用例之前 基础用法 这里…...

java.lang.IllegalArgumentException: When allowCredentials is true
1.遇到的错误 java.lang.IllegalArgumentException: When allowCredentials is true, allowedOrigins cannot contain the special value "*" since that cannot be set on the "Access-Control-Allow-Origin" response header. To allow credentials to a…...

vue折叠展开transition动画使用keyframes实现
需求,我正常的菜单功能有隐藏与显示功能,需要增加动画 打开的时候宽度从0到300,关闭的时候,宽度从300到0 <template> <div id"app"> <button click"toggleLength">Toggle Length</bu…...

书生·浦语大模型实战营-学习笔记5
LMDeploy 大模型量化部署实践 大模型部署背景 LMDeploy简介 轻量化、推理引擎、服务 核心功能-量化 显存消耗变少了 大语言模型是典型的访存密集型任务,因为它是decoder-by-decoder 先把数据量化为INT4存起来,算的时候会反量化为FP16 AWQ算法&a…...

10. Profile
1. 区分环境的配置 1.1. properties 配置 假设,一个应用的工作环境有:dev、test、prod 那么,我们可以添加 4 个配置文件: applcation.properties - 公共配置application-dev.properties - 开发环境配置application-test.proper…...

YOLO 自己训练一个模型
一、准备数据集 我的版本是yolov8 8.11 这个目录结构很重要 ultralytics-main | datasets|coco|train|val 二、训练 编写yaml 文件 # Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..] path…...