文章介绍了TOSICA模型,一个基于Transformer的多头自关注深度学习模型,用于细胞类型注释。该模型能够利用生物学上可理解的实体实现可解释的细胞类型注释,并提供了对发育和疾病进展过程中细胞行为的生物学见解。文章还涉及模型的训练方式、单细胞图谱网站资源以及安装和使用TOSICA的步骤。
TOSICA是一个基于Transformer的多头自关注深度学习模型,用于细胞类型注释。它能够利用生物学上可理解的实体(如通路或调控子)提供可解释的生物学见解。
TOSICA能够实现快速、准确的一站式注释和对批量不敏感的整合,揭示与疾病进展和严重程度相关的罕见细胞类型、异质性和动态轨迹。它为理解发育和疾病进展过程中的细胞行为提供了生物学见解。
模型根据单细胞RNA测序数据和每个细胞的细胞类型标签进行训练。使用数据库或专家知识,模型使用掩码可学习嵌入将参考输入数据转换为代表每个基因组的标记,并在其中添加类标记。在注意力函数中,查询、关键和值矩阵从基因组和CLS组合标记进行线性投影,并通过兼容函数计算权重(注意力),然后分配给每个值以计算输出。
文章提到了几个权威的单细胞图谱网站,如Azimuth、HCL Human Cell Landscape、MCA Mouse Cell Atlas等,这些网站提供的图谱数据可以作为训练模型的资源。
文章详细介绍了如何在linux和jupyter环境下安装和使用TOSICA的步骤,包括创建小环境、安装软件、安装TOSICA、在Jupyter中使用TOSICA环境等。
TOSICA是基于 Transformer 的多头自关注深度学习模型 ,它能利用生物学上可理解的实体(如通路或调控子)实现可解释的细胞类型注释。TOSICA 能够实现快速、准确的一站式注释和对批量不敏感的整合,同时为理解发育和疾病进展过程中的细胞行为提供了可解释的生物学见解,揭示了与疾病进展和严重程度相关的罕见细胞类型、异质性和动态轨迹。
⇲Transformer for one stop interpretable cell type annotation | Nature Communications
#
框架
该模型根据单细胞 RNA 测序数据和每个细胞的细胞类型标签进行训练。根据
数据库或专家知识
,使用掩码可学习嵌入将参考输入数据(n 个基因)转换为代表每个基因组(GS)的 k 个输入标记,并在其中添加类标记(CLS)。
相当于你给ta一个已经注释好的单细胞数据,ta会根据这份数据来训练一个模型用于我们这份输入数据的细胞注释。
在注意力函数中,查询(Q)、关键(K)和值(V)矩阵从这些基因组和 CLS 组合标记进行线性投影,权重(注意力,A)通过 Q 与相应 K 的兼容函数计算得出,然后分配给每个 V 以计算输出(O)。
在每个多头自注意层中,并行执行 H 次注意函数。O 的 CLS 被视为每个单元的潜空间,用作整个联合神经网络单元类型分类器的输入。同时,类(CLS)标记对基因组(GS)标记的关注度被称为关注度得分,用于细胞嵌入。
单细胞图谱网站很多,可以根据自己的样本类型去选择比较权威的图谱数据作为训练模型,类似的有:
-
•
[Azimuth ⇲https://azimuth.hubmapconsortium.org/)
-
•
[HCL Human Cell Landscape ⇲https://db.cngb.org/HCL/index.html)
-
•
[MCA | Mouse Cell Atlas ⇲https://bis.zju.edu.cn/MCA/index.html)
-
•
[Cell BLAST ⇲https://cblast.gao-lab.org/download)
-
•
……
#
安装
Software is available at “TOSICA [⇲https://github.com/JackieHanLab/ TOSICA]
这个工具是基于python构建的,可以与omicverse整合起来用~
我们今天先基于linux和jupyter来装一下——
#
创建小环境
conda create -n TOSICA python=3.8 scanpy
conda activate TOSICA
conda install pytorch=1.7.1 torchvision=0.8.2 torchaudio=0.7.2 cudatoolkit=10.1 -c pytorch
#
安装TOSICA
因为网络的问题,所以我选择保守的本地安装
wget --no-check-certificate https://github.com/JackieHanLab/TOSICA/archive/refs/heads/main.zip
unzip main.zip
cd TOSICA-main
python setup.py install
#
Jupyter 中使用 TOSICA 环境
pip install ipykernel
python -m ipykernel install --user --name TOSICA --display-name "Python (TOSICA)"