Open Ming-Lian opened 4 years ago
本次兴趣小组知识分享的提纲,字写得比较潦草,大家凑合看啊
刚刚看完。最后面说的算法有点多,且蒙圈....
总来说讲得蛮好,特别是对机器学习有一定了解的人来说,受益会很大。但是感觉对新手可能不太友好。就是如果想更多人明白,我个人觉得是要把整个提纲弄得更加清晰,然后尽量不要深入讨论算法之类的,多聚类讲怎样应用。
这里给大家先推荐一篇Nature genetic review的综述:https://www.nature.com/articles/s41576-019-0122-6 。这篇总结得相当好,从浅到深,有助理解很多概念。关于机器学习在生物信息学的应用这个话题,我个人还是蛮兴趣的,其涉及到的应用其实很多,后面会做一些research,再和大家分享。
无监督聚类与宏基因组bining:
感谢连博士的分享!
笔记:
mapping based
优点:计算量小,对低丰度菌种灵敏度高;缺点:依赖参考基因组质量,无法检测新菌种
mapping free/assemble based
优点:对参考基因组质量不敏感,可推测新菌种;缺点:计算量大,对丰度低的菌种不敏感
根据序列特征进行聚类。(1、kmer频率,GC含量等;2、丰度信息)
经典聚类方法:
- kmeans,分类形状是圆形;
- Gaussian混合分布,分类形状可变换为椭圆形;
- 层次聚类
- DBSCAN等
学习:给定标记的序列,学习和提取出block序列pattern 搜索:在未知序列中搜索pattern 描述序列的方法: sequence logo PWM(位点权重矩阵) HMM 假设有一组未知序列,判断各序列有多大概率是由以上pattern生成器产生的,概率较大的序列被认为服从该pattern的分布
应用:
1、给定一条序列和多个模型,判断最可能的来源,计算各block产生该序列的Galvan取最大者(前向-后向算法)
2、已知某序列由某block机器产生,确定block的位置(保守区)(解码问题,维特比算法)
3、给定一组block代表序列,学习转移/发射概率,建立模型(鲍姆-维奇算法(EM-like)) P.S. 序列比对是基于一致性,而block有可变区和不可变区,如果block的可变位点较多但有一个pattern,直接去做比对是比对不上的。
解决生物学问题
测序的reads是来自于什么物种
mapping based(有构建比较好的reference)
mapping free/assembly base(不太好的reference)
比如你有大约1000物种,但只有100个参考 reference
可以先assembly(overlap),然后利用能够mapping的部分去确定物种
会拼接成contig,然后决定属于物种归属
宏基因组的binming聚类特征
序列组成特征
k-mer 频率: $$ Contig_i=(Kmer_1,Kmer_2……) $$
GC含量
丰度信息
如何根据特征来聚类
问题:
方法:
HMM
HMM
作用
给定一条序列和多个模型:评估该序列最有可能是由哪个模型产生的(识别block种类,每个block(保守区块)就是一个模型)——前向后向算法
已知一条序列是由block机器产生的,确定block的位置——decoding,维特比算法
单纯的比对可能并不行,block有些是可变,有些是不可变的
无监督聚类与宏基因组bining
研究目标:1、有哪些物种,丰度如何※ 2、有何功能 3、生理状态下或个体的动态变化 测序策略: 1、mapping-based (依赖ref完整) 2、Mapping-free/assembly-based (ref不理想)可以检测发现新的物种,但是计算量大,对丰度低的菌检出效率低#基于Debrijn图的基因拼接算法#注释率 Contig->查找物种归属【1、与库中已知序列比对(受注释率影响)2、bining把序列类似的contig归类聚到一起称为bins(多条),有较大概率是来源于同一属物种】 Reads、contig、gene不同层次都可以做bining,但从精度上考虑常用contigs和gene做bining,contigs长度更长信息量更高更适合bining。 无监督聚类是针对无类别标记,具有多个特征feature,f1~fn,根据其相似性进行分类。 重点是根据特征feature分类: (1)序列组成特点(k-mer频率、GC含量、【#来源于同一物种的序列在组成上更加相似】) (2)丰度信息(尤其是基因的丰度,某一物种基因A和B的拷贝数量是2:1,不管其数量多少占丰度比例,具有A:B=2:1的特征,根据基因间的固定比例可以确定是来自同一物种)
这个集合可以映射到多维空间上,从空间分布的相似性进行bining。 聚类方法有: 1、k-means【随机假设样本中有k个类,则有k个“样本中心”,计算各样本到这些“样本中心”的直线距离,根据距离来分类(离谁近就算谁这一类),重复这个过程直到“样本中心”稳定为止,其本质是期望最大过程(EM)】
2、高斯混合分布【针对k-means的分类有不足(各个类别界限是偏圆形或的球形),而数据分布可能是近椭圆形分布的,比如一维的高斯分布就是钟型正态分布,二维的高斯分布是一个立体的钟型曲面,如果均值不变,方差变化,这个钟型曲面的平面投影就是椭圆的】 3、层次聚类
同心圆类型的聚类方法
实际上聚类团数k的大小是超参数,是要通过试验来人为确定的,在理想的情况下,类内各样本到中心的总距离是最小的。试验的结果会发现某一个k值能使得总距离最小。 横坐标是k值(整数),纵坐标是距中心点总距离 在学习之前需要先确定K的值。
无类别标记聚类,其可用于聚类的分别为reads,contigs(其序列信息最多)和gene,根据其序列组成的特点k-mer频率和GC含量或者丰度信息(拷贝数)将序列信息矢量化并聚类。
学习到了!感谢分享~
其他小伙伴的笔记太棒啦!!我先。。。占个坑。。。再来补交笔记
https://ming-lian.github.io/2019/08/05/Bioinfo-ML-Club-5th/