目录
论文信息
这是一篇2022年发表在nature machine intelligence的论文,作者来自腾讯AI Lab。
原文链接:https://doi.org/10.1038/s42256-022-00534-z
背景意义
单细胞测序技术是生命科学领域的一项革命性技术。可以细粒度地观察和刻画各个物种中组织、器官和有机体中单细胞分子图谱(细胞表达),便于更好地了解肿瘤微环境,以达到精细分析病因、精准匹配治疗方案的效果,对于「精准医疗」具有极高的应用价值。
解决的问题
受数据样本量小、人工干预多、过度依赖 marker gene(已报道的特异性基因)等因素的影响,单细胞测序细胞类型注释技术一直面临着泛化性、可解释性、稳定性均比较低的问题,现存的算法难以有更广泛的应用。
针对以上问题,新研究首次提出「基于大规模预训练语言模型的单细胞转录组细胞类型注释算法」,即「scBERT」模型,首次将「transformer」(自然语言处理算法经典计算单元)运用到单细胞转录组测序数据分析领域。该模型基于 BERT 范式,将细胞中基因的表达信息转化成可被计算机理解、学习的「语言」,并对细胞进行精准标注。
模型
预训练:对expression先进行分箱,分箱过程在expression embedding进行详细描述。分箱后随机掩蔽,再进行embedding到200维,与gene embedding相加后加入performer块。
微调:分箱后对embedding进行嵌入表示,与gene embedding相加后进入performer块。
gene embedding(gene2vec)
文中使用的方法gene2vec,方法原文DOI: 10.1186/s12864-018-5370-x
这是一种基于共表达的表示方法
|
exprssion embedding
这部分的主要处理在与分箱,后续的嵌入表示,使用nn.embedding即可。
数据的格式是h5ad,这里面有一个参数X,是基因表达矩阵,对X的每一行进行如下操作:
1. 每一行的表达值加和=1000
2. 进行对数变化:log1p
3. 使用.long()取整。
通过以上步骤就可以把连续的表达值离散化。
Performer
关于performer的介绍可以参考:AI研习社 - 研习AI产学研新知,助力AI学术开发者成长。
数学推导过程:
实验结果
没有全部贴出来,具体结果可以看原文
在6个数据集上,不同方法对准确性对比
Zheng 68 K(严重的细胞类型失衡和亚型之间极高的相似性)数据集原始的专家注释的细胞类型着色;右图由scBERT预测结果着色
scBERT、Seurat和CellID_cell的Zheng68K数据集交叉验证结果混淆矩阵的热图
分割不同比例的Zheng68K数据集作为微调参考集对细胞类型注释性能的影响。随机选择来自Zheng68K数据集的10%、30%、50%、70%和90%的PBMC细胞作为用于微调的参考,而剩余的作为用于测试的查询样本
预测结果,真实分类对比,用人肝组织评估未知细胞类型鉴定,MacParland数据集,4种类型,每次从中取出一种类型进行,用于验证,其他用于训练
scBERT的置信度分数和Sankey图比较了scBERT对已知类型和新细胞类型的预测与MacParland数据集的原始细胞类型注释