前途科技
  • 科技
  • AI
    • AI 前沿技术
    • Agent生态
    • AI应用场景
    • AI 行业应用
  • 初创
  • 报告
  • 学习中心
    • 编程与工具
    • 数据科学与工程
我的兴趣
前途科技前途科技
Font ResizerAa
站内搜索
Have an existing account? Sign In
Follow US
Copyright © 2024 AccessPath.com, 前途国际科技咨询(北京)有限公司,版权所有。 | 京ICP备17045010号-1 | 京公网安备 11010502033860号
未分类

PyTorch深度学习:利用DNA拷贝数数据精准分类肺癌亚型

NEXTECH
Last updated: 2025年10月18日 上午6:00
By NEXTECH
Share
30 Min Read
SHARE

本文将详细阐述如何利用PyTorch构建一个卷积神经网络,通过DNA拷贝数数据实现对不同肺癌亚型的精准分类。所使用的数据和训练代码均公开可用,且模型训练可在个人电脑上完成,甚至仅用CPU即可运行,这使得该方法具有广泛的可及性。

Contents
处理拷贝数 профиль文件非小细胞肺癌分类卷积神经网络模型

癌症是细胞在生命周期中积累信息错误,导致失控生长的一种不幸结果。作为研究人员,对这些错误模式的深入探究有助于更好地理解疾病。从数据科学的角度来看,人类基因组可以被视为一个由A、C、G、T四种碱基组成的约三十亿个字母长的字符串(每个字母包含2比特信息)。一个复制错误或外部事件都可能导致某个字母的移除、插入或改变,从而引发突变,并可能扰乱基因组功能。

然而,单个错误几乎从不直接导致癌症的发生。人体拥有多种机制来预防癌症,包括专门的蛋白质——即所谓的肿瘤抑制因子。只有当一系列必要条件——即所谓的“癌症的标志”——被满足时,细胞才能够实现持续的增殖生长。

癌症的标志——左侧呈现了癌症需要积累的一系列公认特征,以实现持续的增殖生长。

癌症的标志——左侧呈现了癌症需要积累的一系列公认特征,以实现持续的增殖生长。图片来源:Hanahan D. Hallmarks of Cancer: New Dimensions. Cancer Discov. 2022 Jan;12(1):31–46。

因此,DNA单个碱基的变化通常不足以引发细胞的自主持续增殖。绝大多数由突变介导的癌症(与HPV病毒等其他癌症来源不同)也表现出拷贝数(CN)变异。这些是大规模的基因组事件,通常一次性增加或移除数百万个DNA碱基。

You Might Also Like

Google DeepMind WeatherNext 2:AI天气预报迈向超精准时代
Transformer大模型驾驭计算机视觉:四大核心任务实战与交互应用
深入理解基尼系数:超越ROC-AUC与KS统计量的模型评估利器
气候危机下的健康与经济:万亿损失警报与韧性投资新路径

显示新形成的染色体的乳腺癌细胞,染色与原始染色体颜色匹配。

显示新形成的染色体的乳腺癌细胞,染色与原始染色体颜色匹配。图片来源:Mira Grigorova and Paul Edwards, Department of Pathology, University of Cambridge。

基因组结构的这些巨大变化会导致阻止癌症形成的基因丢失,同时积累促进细胞生长的基因。通过对这些细胞的DNA进行测序,可以识别出这些变化,这些变化通常发生在特定癌症类型特有的区域。每个等位基因的拷贝数值可以利用拷贝数分析工具从测序数据中推导出来。

处理拷贝数 профиль文件

拷贝数(CN)分析的一大优势在于其非生物识别性,因此数据可以公开共享而无需严格的访问限制。这使得研究人员能够从多项研究中积累大量数据,构建出足够规模的训练集。然而,来自不同研究的数据并非总能直接比较,因为它们可能采用不同的技术生成、具有不同的分辨率,或经过不同的预处理方法。

为了获取数据并对其进行联合处理和可视化,将使用由科隆计算癌症生物学研究所(隶属于德国科隆大学医院)开发工具CNSistent。

首先克隆该代码库及其数据,并切换到本文使用的版本:

git clone git@bitbucket.org:schwarzlab/cnsistent.git
cd cnsistent
git checkout v0.9.0

由于将使用的数据包含在代码库中(约1GB),下载可能需要几分钟。克隆时,系统必须同时安装Git和Git LFS。

代码库中有一个requirements.txt文件,其中列出了所有可以通过pip install -r requirements.txt安装的依赖项。

(建议首先创建一个虚拟环境)。安装完依赖项后,可以在同一文件夹中运行pip install -e .来安装CNSistent。-e标志将从其源目录安装包,这对于通过API访问数据是必需的。

该代码库包含来自三个数据集的原始数据:TCGA、PCAWG和TRACERx。这些数据需要首先进行预处理。这可以通过运行脚本bash ./scripts/data_process.sh来完成。

现在,已经处理好数据集,可以使用CNSistent数据工具库加载它们:

import cns.data_utils as cdu
samples_df, cns_df = cdu.main_load("imp")
print(cns_df.head())

将产生以下结果:

| | sample_id | chrom | start | end | major_cn | minor_cn |
|---:|:------------|:--------|---------:|---------:|-----------:|-----------:|
| 0 | SP101724 | chr1 | 0 | 27256755 | 2 | 2 |
| 1 | SP101724 | chr1 | 27256755 | 28028200 | 3 | 2 |
| 2 | SP101724 | chr1 | 28028200 | 32976095 | 2 | 2 |
| 3 | SP101724 | chr1 | 32976095 | 33354394 | 5 | 2 |
| 4 | SP101724 | chr1 | 33354394 | 33554783 | 3 | 2 |

此表显示了包含以下列的拷贝数数据:

  • sample_id:样本标识符,
  • chrom:染色体,
  • start:片段的起始位置(0索引包含),
  • end:片段的结束位置(0索引不包含),
  • major_cn:主要等位基因的拷贝数(两者中较大的一个),
  • minor_cn:次要等位基因的拷贝数(两者中较小的一个)。

因此,在第一行中可以看到一个片段,表示样本SP101724在1号染色体0到27.26兆碱基区域内,主要等位基因有2个拷贝,次要等位基因也有2个拷贝(总共4个)。

加载的第二个数据框samples_df包含样本的元数据。对于本次研究,只有“type”字段是重要的。可以通过运行以下代码来查看可用的类型:

import matplotlib.pyplot as plt
type_counts = samples_df["type"].value_counts()
plt.figure(figsize=(10, 6))
type_counts.plot(kind='bar')
plt.ylabel('Count')
plt.xticks(rotation=90)

数据集中基于癌症类型分布的样本数量。

数据集中基于癌症类型分布的样本数量。

在上述示例中,可以观察到数据的一个潜在问题——各个片段的长度并不统一。第一个片段长达27.26兆碱基,而第二个片段仅长0.77兆碱基。这对于期望固定大小输入的神经网络来说是一个问题。

技术上讲,可以取所有现有断点并创建数据集内所有断点之间的片段,即所谓的最小一致性分割。然而,这将导致大量的片段——通过len(cns_df[“end”].unique())快速检查显示,存在823652个独特的断点。

另一种方法是利用CNSistent工具,采用分箱算法创建新的分割。这将生成固定大小的片段,可作为神经网络的输入。在研究中,已确定1-3兆碱基的片段能在准确性和过拟合之间提供最佳权衡。首先创建分割,然后使用以下Bash脚本将其应用于获取新的CNS文件:

threads=8
cns segment whole --out "./out/segs_3MB.bed" --split 3000000 --remove gaps - filter 300000 
for dataset in TRACERx PCAWG TCGA_hg19; 
do 
 cns aggregate ./out/${dataset}_cns_imp.tsv - segments ./out/segs_3MB.bed - out ./out/${dataset}_bin_3MB.tsv - samples ./out/${dataset}_samples.tsv - threads $threads
done

该循环独立处理每个数据集,同时保持相同的分割方式。--threads标志用于通过并行聚合来加速处理,其值应根据可用核心数进行调整。

--remove gaps --filter 300000参数将移除低可映射性区域(即空隙)并过滤掉短于300 Kb的片段。--split 3000000参数将创建3 Mb的片段。

非小细胞肺癌分类

本文将聚焦于非小细胞肺癌(NSCLC)的分类,该类型约占所有肺癌的85%,特别是腺癌和鳞状细胞癌之间的区分。区分这两种亚型至关重要,因为它们的治疗方案不同,且新方法为从血液样本或鼻拭子中进行非侵入性检测带来了希望。

将使用上述生成的片段,并通过一个提供的实用函数加载它们。由于需要对两种癌症类型进行分类,可以过滤样本以仅包含相关类型:LUAD(腺癌)和LUSC(鳞状细胞癌),并绘制第一个样本:

import cns
import cns.data_utils as cdu
samples_df, cns_df = cdu.main_load("3MB")
samples_df = samples_df.query("type in ['LUAD', 'LUSC']")
cns_df = cns.select_CNS_samples(cns_df, samples_df)
cns_df = cns.only_aut(cns_df)
cns.fig_lines(cns.cns_head(cns_df, n=3))

前三个样本在3MB分箱中的主要和次要拷贝数片段。在这种情况下,所有三个样本均来自同一患者的多区域测序,展示了癌细胞即使在单一肿瘤内也可能具有高度异质性。

卷积神经网络模型

运行代码需要安装Python 3及

TAGGED:PyTorch卷积神经网络机器学习深度学习肺癌诊断
Share This Article
Email Copy Link Print
Previous Article 图1:不同分割规则下的训练集和测试集示意图 机器学习在面板数据应用中的陷阱:数据泄露与实践指南
Next Article 前Luminar首席执行官奥斯汀·罗素正试图夺回公司控制权 自动驾驶巨头Luminar震荡:前CEO奥斯汀·罗素欲重掌大权
Leave a Comment

发表回复 取消回复

您的邮箱地址不会被公开。 必填项已用 * 标注

最新内容
20251202135921634.jpg
英伟达20亿美元投资新思科技,AI芯片设计革命加速
科技
20251202130505639.jpg
乌克兰国家AI模型选定谷歌Gemma,打造主权人工智能
科技
20251202121525971.jpg
中国开源AI新突破:DeepSeek V3.2模型性能比肩GPT-5
科技
20251202112744609.jpg
马斯克预言:AI三年内解决美国债务危机,可信吗?
科技

相关内容

图片 1
未分类

联合国粮农组织报告深度解读:2025全球粮食安全与营养,挑战、危机与韧性之路

2025年10月22日
图1. ResNet的构建块,通常称为“瓶颈块”[4]。
计算机视觉

MobileNetV2 深度解析:轻量级模型的智能进化与 PyTorch 实现

2025年10月4日
未分类

人脸识别支付公司PopID完成融资 PayPal、Visa参投

2025年6月10日
图片 1
未分类

解码未来职场:德勤2025年Z世代与千禧一代报告深度洞察

2025年10月1日
Show More
前途科技

前途科技是一个致力于提供全球最新科技资讯的专业网站。我们以实时更新的方式,为用户呈现来自世界各地的科技新闻和深度分析,涵盖从技术创新到企业发展等多方面内容。专注于为用户提供高质量的科技创业新闻和行业动态。

分类

  • AI
  • 初创
  • 学习中心

快速链接

  • 阅读历史
  • 我的关注
  • 我的收藏

Copyright © 2025 AccessPath.com, 前途国际科技咨询(北京)有限公司,版权所有。 | 京ICP备17045010号-1 | 京公网安备 11010502033860号

前途科技
Username or Email Address
Password

Lost your password?

Not a member? Sign Up