NMF是很久以前学的,基本快忘没了,昨天YX提出来一个关于NMF(同音同字不同义)的问题,才又想起来。 自己的学习笔记写的比较乱,好在网上资料多,摘了一篇,补充上自己笔记的内容,留此助记。 NMF概念出现的比较早,差不多在电脑还没有开始繁荣起来,NMF及相关的一些算法已经很成熟了。NMF用在电影推荐、商品推荐也并不是很适合,现在大多使用SVD之类的算法。不过这篇只是学习的记录,有个例子总比枯燥的啃概念好的多。 场景 让我们假设一个场景。 相像当前这个档期,有10部电影正在上映,我们把它们放到一个数组
NMF,非负矩阵分解,它的目标很明确,就是将大矩阵分解成两个小矩阵,使得这两个小矩阵相乘后能够还原到大矩阵。而非负表示分解的矩阵都不包含负值。
同行评审或论坛的最大问题是网站上大量可用信息。很多时候对与他们一直在搜索的内容无关的评论数量感到沮丧。以Reddit为例,主页上有很多帖子。所有的信息杂乱都很难跟踪。
Spatial relationship between gradients and tumor boundary
关于python版本的“hotspot”,参考文章空间转录组niche通路富集与空间“hotspot”
前面我们在教程:使用R包deconstructSigs根据已知的signature进行比例推断,顺利的把508个病人,根据11个signature进行了比例推断,得到的比例矩阵以普通的热图,以及pheatmap包自带的层次聚类如下:
非负矩阵分解(Non-negative Matrix Factorization, NMF)本质上说是一种矩阵分解的方法,对于任意给定的一个非负矩阵V,NMF算法能够寻找到一个非负矩阵W和一个非负矩阵H,使得 V≈W*H成立 ,从而将一个非负的矩阵分解为左右两个非负矩阵的乘积。
一、矩阵分解回顾 image.png 二、非负矩阵分解 2.1、非负矩阵分解的形式化定义 image.png 2.2、损失函数 image.png 2.3、优化问题的求解 image.png imag
随着芯片和测序水平的发展,使得我们研究所有基因在整个基因组里的表达情况成为了可能。合理地利用和解释这些数据,能够帮助我们探索相关的生物过程和人类疾病的机制。目前已经有一些软件或方法,可以将具有相似表达模式的基因或者样本进行聚类,但是都有自身的限制。NMF包基于非负矩阵分解(non-negative matrix factorization,以下简称NMF)方法,提取基因表达矩阵内数据的生物相关系数,通过对基因和样本进行组织,抓住数据的内部结构特征,从而对样本进行分组,目前在疾病分型方面受到广泛应用。我前面已经介绍过了NMF的基本原理【NMF(非负矩阵分解)的算法原理】,这里我介绍R语言实现NMF。下面是一篇今年刚发的一篇纯生信的分析文章,用的就是NMF这个方法来对肿瘤进行分型。影响因子为4.8。
在文本主题模型之潜在语义索引(LSI)中,我们讲到LSI主题模型使用了奇异值分解,面临着高维度计算量太大的问题。这里我们就介绍另一种基于矩阵分解的主题模型:非负矩阵分解(NMF),它同样使用了矩阵分解,但是计算量和处理速度则比LSI快,它是怎么做到的呢?
著名的科学杂志《Nature》于1999年刊登了两位科学家D.D.Lee和H.S.Seung对数学中非负矩阵研究的突出成果。该文提出了一种新的矩阵分解思想――非负矩阵分解(Non-negative Matrix Factorization,NMF)算法,即NMF是在矩阵中所有元素均为非负数约束条件之下的矩阵分解方法。
概要: 这篇博客和博客 学习笔记|主成分分析[PCA]及其若干应用、学习笔记|独立成分分析(ICA, FastICA)及应用 属于一个系列,简单地介绍非负矩阵分解(Non-negative Matrix Factorization, NMF)。 关键字: 非负矩阵分解; NMF
非负矩阵分解(Non-Negative Matrix Factorization:NMF)
肿瘤分型分析是生信文章中的常客,大致是通过将基因的表达量进行聚类或者非负矩阵分解,发现新的亚型,然后对不同亚型的临床特征,免疫特征等进行比较分析,文章末尾简单的列了一些应用。
今天上 GitHub 看到 Hadley Fork 了我的仓库,这是什么鬼?难道他对生信有了兴趣??
本篇文章主要介绍NMF算法原理以及使用sklearn中的封装方法实现该算法,最重要的是理解要NMF矩阵分解的实际意义,将其运用到自己的数据分析中!
除了我们上期介绍过的CellTrek算法【整合单细胞和空转数据多种方法之CellTrek】,还有非常多的算法用于整合单细胞和空转数据,如何快速系统的了解更多的主流整合算法呢?这么多种算法我们又应该选择哪种呢?答案是查阅综述+大量实践!
non-negative matrix factorization,简写为NMF, 翻译为非负矩阵分解,属于矩阵分解的一种算法。在特征分解,SVD等传统的矩阵分解技术中,分解后的矩阵会出现负值,但是负值在实际场景中是没有意义的,比如在图像处理领域,图像是由像素点构成的矩阵,每个像素点由红,绿,蓝的比例构成,这些数值都是非负数,在对分解处理得到的负值并没有实际意义。
作者:Zhihuai Chen,Yinan Li,Xiaoming Sun,Pei Yuan,Jialin Zhang
可以看到,在CD4和CD8的T细胞的各自矩阵内部降维聚类分群,这6个细分亚群都并不是泾渭分明的界限。听完分享才知道,原来作者这个时候的细分亚群其实并不关心它们内部是不是有不同的独立的单细胞亚群,仅仅是有这6个不同状态或者说发挥不同功能单细胞亚群。而区分它们的手段是非负矩阵分解,并不需要有很清晰的界限,只需要各个亚群的核心功能基因集有差异即可。
学习文档: https://cran.r-project.org/web/packages/NMF/vignettes/heatmaps.pdf
前面我在生信菜鸟团的肿瘤外显子数据分析专辑提到了,很多研究者会嫌弃cosmic数据库的30个肿瘤突变signatures,他们觉得cosmic数据库30个signature的生物学意义并不好,会尝试自己分解出来自己的signature。比如:0元,10小时教学视频直播《跟着百度李彦宏学习肿瘤基因组测序数据分析》 这个文献,研究者就是使用R包SomaticSignatures进行denovo的signature推断,拿到了11个自定义的signature。
突变信号(Mutational Signatures)首次2013年在《nature》进行报道。并做了相关的定义:细胞在成长过程中,基因组不断受到内源性和外源性DNA损伤的威胁,正是由于这些威胁,使得细胞基因组不断发生变化,并最终发生一些突变的积累。每一个突变过程都会留下一个不同的基因组标记,也就称为突变信号。
MutationalPatterns适用于单核苷酸变体 (SNV)、插入和缺失 (Indel)、双碱基替换 (DBS) 和更大的多碱基替换 (MBS)。
MutationalPatterns是一个bioconductor上的R包,可以用于肿瘤突变频谱的分析。肿瘤突变频谱针对点突变进行定义,A,T,C,G四种碱基两两突变,共有4X3=12种排列,考虑到正负链碱基配对原则,正链上的A->C突变,对应负链上为T->G, 所以进一步转换成了一个组合的问题,所以某个位点的突变可以划分为以下6种模式
需要准备一个标注好细胞类型的单细胞数据,这里选择seurat官方的pbmc3k数据:
看到文章 Integrative analysis of the inter-tumoral heterogeneity of triple-negative breast cancer 针对137个TNBC病人的3种数据,进行挑选后,各自进入NMF聚类:
突变模式(印记)分析(mutational signature analysis)目前已经成为变异检测后一个重要分析流程,它能够揭示癌症组织样本受哪些内外界因素的影响以及其贡献大小。
博客在数据科学界很受欢迎已经不是什么秘密了。通过这种方式,该领域反映了其在开源运动中的根源。在找到问题的创新解决方案之后,数据科学家似乎没有什么比写它更感兴趣了。数据科学界的博客是一个双赢的局面,作家从曝光中获益,读者从获得的知识中获益。
Factorizer: A scalable interpretable approach to context modeling for medical image segmentation
这学期选了门模式识别的课。发现最常见的一种情况就是,书上写的老师ppt上写的都看不懂,然后绕了一大圈去自己查资料理解,回头看看发现,Ah-ha,原来本质的原理那么简单,自己一開始仅仅只是被那些看似formidable的细节吓到了。所以在这里把自己所学的一些点记录下来,供备忘,也供參考。
高通量scRNA-seq使得发现新的细胞类型、识别细胞发育轨迹及表征对基因干扰的反应称为可能。scRNA-seq最常见的可视化方法是tSNE,tSNE本身可以精确的捕获数据集的局部结构,但是经常会扭曲数据集的全局结构,比如簇与簇之间的距离,本研究开发了一种可视化及解释scRNA-seq数据集的方法,相似性加权非负嵌入(SWNE),可以捕获数据的整体和局部结构,且可以使相关的生物学信息嵌入到可视化的结果中。SWNE使用非负矩阵分解方法分解基因表达矩阵到生物学相关的因素中,嵌入细胞、因素信息至二维可视化结果,并使用相似矩阵确保在高维空间中接近的细胞在可视化结果中也相邻/接近。嵌入的生物因子可以通过其基因表达来解释,而且SWNE可以直接将基因嵌入到可视化结果中,进一步帮助生物学解释。
Molecular Subsets in Renal Cancer Determine Outcome to Checkpoint and Angiogenesis Blockade
最初接触这个R包是去年年中,想做细胞间相互作用,又不会python,正好看到周老师的推文,就跟着学了学,CellChat:细胞间相互作用分析利器,当时CellChat包还是0.0.1版本,里面有不少小bug,文章放在预印版上,而今年二月份他终于见刊,发表在NC,现在R包也来到了1.1.2版本,并且在github上持续更新,今天我们来重新学习一次。
Principal Component Analysis (PCA) 是一种常用的降维技术,用于将高维数据集转换为低维表示,同时保留数据集的主要特征。PCA 的目标是通过找到数据中最大方差的方向(主成分),将数据投影到这些方向上,从而实现降维。
在博文推荐算法——基于矩阵分解的推荐算法中,提到了将用户-商品矩阵进行分解,从而实现对未打分项进行打分。矩阵分解是指将一个矩阵分解成两个或者多个矩阵的乘积。对于上述的用户-商品矩阵(评分矩阵),记为Vm×nV_{m\times n},可以将其分解成两个或者多个矩阵的乘积,假设分解成两个矩阵Wm×kW_{m\times k}和Hk×nH_{k\times n},我们要使得矩阵Wm×kW_{m\times k}和Hk×nH_{k\times n}的乘积能够还原原始的矩阵Vm×nV_{m\times n}:
Giotto|| 空间表达数据分析工具箱 Seurat 新版教程:分析空间转录组数据(上) Seurat 新版教程:分析空间转录组数据(下) scanpy教程:空间转录组数据分析 10X Visium:空间转录组样本制备到数据分析 空间信息在空间转录组中的运用 定量免疫浸润在单细胞研究中的应用
三种常用的统计机器学习方法,非负矩阵分解(NMF)、变分推理、幂法 这些方法通常用于无监督学习的 聚类、降维、话题分析、图分析
空间解析基因表达谱是理解组织组织和功能的关键。然而,目前空间转录组分析技术(Spatial Transcriptomics,ST)尚未达到单细胞分辨率,往往需要结合单细胞RNA测序(scRNA-seq)信息来反褶积(或解卷积,Deconvolute )空间数据集。SPOTlight利用这两种数据类型的优势,能够将ST与scRNA-seq数据集成,从而推断出复杂组织中细胞类型和状态的位置。SPOTlight基于一个种子的非负矩阵因子分解回归(Seeded NMF regression ),使用细胞类型标记基因和非负最小二乘(NNLS)初始化,随后去卷积ST捕获位置(spot)。在作者的文章中,在示例数据人类胰腺癌中,成功地将患者切片划分为健康和癌区,并进一步精细绘制正常和肿瘤细胞状态。SPOTlight 流程如下:
突变模式分析(Mutual Signature Analysis)已经逐步成为变异检测后一个通用分析,本文简单介绍如何使用sigminer进行突变模式分析,以解决2大分析任务:
机器之心专栏 机器之心编辑部 美国物理学会院士 Barabasi 教授在其 2012 年发表于 Nature Physics 的文章中指出:「21 世纪将是网络理论的世纪,它正在形成的理论和算法框架将成为许多研究与应用领域的新的驱动力。」 大量研究显示,复杂网络普遍具有一些显著的统计特性,比如小世界效应、无标度分布、网络弹性等。尤其是,Girvan 和 Newman 发现了复杂网络的另一个重要统计特性——社团结构,即网络通常会由一些稠密相连的结点簇组成。自此,学术界掀起了对复杂网络社团结构的研究热潮。 本文
向大家推荐来自哥伦比亚大学的“应用机器学习”(Applied Machine Learning 2020)课程,相比斯坦福的 CS229 更加注重代码实践,使用流行的 Python 库 scikit-learn 和 Keras 。
sklearn(Scikit-learn)是python中一个提供机器学习算法的库,是一组简单有效的工具集,其开源、可复用。sklearn库的共分为6大部分,分别用于完成分类任务、回归任务、聚类任务、降维任务、模型选择以及数据的预处理。
作者:肖智博 来源:https://zhuanlan.zhihu.com/p/19630762 点击阅读原文可进入超链接。 收集数据 数据集。如果是已经被人做成数据集了,这就省去了很多麻烦事 抓取。这个是 Python 做得最好的事情,优秀的包有很多,比如 scrapy,beautifulsoup等等。 预处理(对这里的高质量讨论结果的修改,下面的顺序仅限英文) 去掉抓来的数据中不需要的部分,比如 HTML TAG,只保留文本。结合 beautifulsoup 和正则表达式就可以了。pattern.w
发表于:Clin Cancer Res. 2015 Apr 文章题目是:Comprehensive Genomic Analysis Identifies Novel Subtypes and Targets of Triple-negative Breast Cancer 主要是考虑到TNBC是异质性较大的一种乳腺癌,而且预后非常差,所以临床用药指导急需对TNBC本身更加细致的分类,研究团队通过贝勒医学院分两次 收集了 198个TNBC病人, (discovery set: n=84; validation set: n=114) 比较稳定的把TNBC分成了4个亚型,而且还分析了7个公共数据集来验证其结论。作者整理的4个亚型以及其可能的靶点:
由于基因组改变引起的分子损伤的特异性,我们可以生成特征改变谱,称为“signature”。
2.5. 分解成分中的信号(矩阵分解问题) 2.5.1. 主成分分析(PCA) 2.5.1.1. 准确的PCA和概率解释(Exact PCA and probabilistic interpretation) PCA 用于对一组连续正交分量中的多变量数据集进行方差最大方向的分解。 在 scikit-learn 中, PCA 被实现为一个变换对象, 通过 fit 方法可以降维成 n 个成分, 并且可以将新的数据投影(project, 亦可理解为分解)到这些成分中。 可选参数 whiten=Tr
领取专属 10元无门槛券
手把手带您无忧上云