Sentieon|应用教程:利用Sentieon Python API引擎为自研算法加速

简介: Sentieon|应用教程:利用Sentieon Python API引擎为自研算法加速

背景

Sentieon套装中所有模块的速度都远超对应开源软件的数倍至数十倍,用户在使用这些模块的同时,有时也希望Sentieon团队可以帮助加速自己开发的定制化软件。为了帮助这些用户能在自研软件上享受到Sentieon模块的速度,我们开发了Python API系统, 满足用户二次开发,自主加速的需求。

API介绍

Sentieon Python API本质上是一套沟通系统,连接了用户的数据分析脚本与Sentieon的高速引擎,在加速的同时也提升了脚本的可读性与可维护性。

Sentieon的数据处理引擎是Sentieon多个模块的核心,可以高速分析BAM/CRAM和FASTA格式的数据文件。引擎同时支持single-pass以及multithreaded execution这两种数据流方式。其中Multithreaded数据流速度较快,也相对比较复杂,会将基因组分拆为默认长度1Gb的片段(Fragment),Sentieon引擎会并行地在每个线程中独立处理单个片段;每个片段又会被分拆为默认长度1Kb的小片段(Step),引擎会线性的依次处理这些小片段。在此过程中,用户软件的数据处理逻辑将会得到高速执行。

实施案例

下面我们通过一个与美国圣朱迪儿童研究医院(St Jude Children’s Research Hospital)的CREST软件团队的合作案例展现Sentieon的加速效果。CREST (Clipping REveals Structure)是业内一款著名的检测癌症基因组结构变异的软件,主要通过断点(Breakpoints)作为线索来检测基因组中的结构变异。具体来说,CREST软件的流程中包括了soft-clip检测,组装,组装后比对,断点确认,结构变异确认等步骤。其中的组装与比对步骤主要依赖于第三方工具完成。CREST的优势是准确度较高,然而速度方面的缺陷同样明显,对于一个标准30x肿瘤全基因组配对样本来说,在20线程的工作站的处理时间长达24小时,很难满足用户的需求。

在了解到Sentieon Python API的功能之后,CREST团队使用这套系统重新实现了CREST的功能。在测试数据中,利用Sentieon加速版CREST达到了10倍的提速,结果与原版的CREST完全一致。在20线程的工作站中将绝大多数样本的处理时间降低到了1小时以内。

下面我们介绍另外两个应用加速案例。质量控制是NGS数据处理流程中的重要步骤,虽然逻辑比较简单,然而涉及到对于BAM/CRAM文件的大量读取工作,这些工具在速度,多线程并行,以及代码的可维护性上往往难以兼得。

Sentieon Python API可以将质控工具的算法逻辑与数据读取分开,同时提升速度与代码可读性。作为实施案例,我们利用Python API加速了Picard的CollectInsertSizeMetrics工具,快速统计insert size;另外我们也加速了GATK的CalculateTargetCoverge工具,快速统计目标区域的深度。用户也可参考此案例,加速自研的质控工具。

技术支持

Sentieon Python API可以让用户的脚本与Sentieon引擎沟通,高速并行读取BAM/CRAM/FASTA文件,提速10倍以上。用户可以利用这个平台进行二次开发,加速自研软件,我们非常愿意提供详尽的技术支持。

Sentieon软件介绍

Sentieon为完整的纯软件基因变异检测二级分析方案,其分析流程完全忠于BWA、GATK、MuTect2、STAR、Minimap2、Fgbio、picard等金标准的数学模型。在匹配开源流程分析结果的前提下,大幅提升WGS、WES、Panel、UMI、ctDNA、RNA等测序数据的分析效率和检出精度,并匹配目前全部第二代、三代测序平台。

Sentieon软件团队拥有丰富的软件开发及算法优化工程经验,致力于解决生物数据分析中的速度与准确度瓶颈,为来自于分子诊断、药物研发、临床医疗、人群队列、动植物等多个领域的合作伙伴提供高效精准的软件解决方案,共同推动基因技术的发展。

截至2023年3月份,Sentieon已经在全球范围内为1300+用户提供服务,被世界一级影响因子刊物如NEJM、Cell、Nature等广泛引用,引用次数超过700篇。此外,Sentieon连续数年摘得了Precision FDA、Dream Challenges等多个权威评比的桂冠,在业内获得广泛认可。


软件试用:https://www.insvast.com/sentieon

目录
相关文章
|
4月前
|
算法 搜索推荐 JavaScript
基于python智能推荐算法的全屋定制系统
本研究聚焦基于智能推荐算法的全屋定制平台网站设计,旨在解决消费者在个性化定制中面临的选择难题。通过整合Django、Vue、Python与MySQL等技术,构建集家装设计、材料推荐、家具搭配于一体的一站式智能服务平台,提升用户体验与行业数字化水平。
|
4月前
|
存储 监控 算法
监控电脑屏幕的帧数据检索 Python 语言算法
针对监控电脑屏幕场景,本文提出基于哈希表的帧数据高效检索方案。利用时间戳作键,实现O(1)级查询与去重,结合链式地址法支持多条件检索,并通过Python实现插入、查询、删除操作。测试表明,相较传统列表,检索速度提升80%以上,存储减少15%,具备高实时性与可扩展性,适用于大规模屏幕监控系统。
174 5
|
5月前
|
存储 算法 调度
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
272 26
|
5月前
|
人工智能 数据可视化 测试技术
Postman 性能测试教程:快速上手 API 压测
本文介绍API上线后因高频调用导致服务器告警,通过Postman与Apifox进行压力测试排查性能瓶颈。对比两款工具在批量请求、断言验证、可视化报告等方面的优劣,探讨API性能优化策略及行业未来发展方向。
Postman 性能测试教程:快速上手 API 压测
|
5月前
|
运维 监控 JavaScript
基于 Node.js 图结构的局域网设备拓扑分析算法在局域网内监控软件中的应用研究
本文探讨图结构在局域网监控系统中的应用,通过Node.js实现设备拓扑建模、路径分析与故障定位,提升网络可视化、可追溯性与运维效率,结合模拟实验验证其高效性与准确性。
320 3
|
5月前
|
机器学习/深度学习 资源调度 算法
遗传算法模型深度解析与实战应用
摘要 遗传算法(GA)作为一种受生物进化启发的优化算法,在复杂问题求解中展现出独特优势。本文系统介绍了GA的核心理论、实现细节和应用经验。算法通过模拟自然选择机制,利用选择、交叉、变异三大操作在解空间中进行全局搜索。与梯度下降等传统方法相比,GA不依赖目标函数的连续性或可微性,特别适合处理离散优化、多目标优化等复杂问题。文中详细阐述了染色体编码、适应度函数设计、遗传操作实现等关键技术,并提供了Python代码实现示例。实践表明,GA的成功应用关键在于平衡探索与开发,通过精心调参维持种群多样性同时确保收敛效率
|
5月前
|
机器学习/深度学习 边缘计算 人工智能
粒子群算法模型深度解析与实战应用
蒋星熠Jaxonic是一位深耕智能优化算法领域多年的技术探索者,专注于粒子群优化(PSO)算法的研究与应用。他深入剖析了PSO的数学模型、核心公式及实现方法,并通过大量实践验证了其在神经网络优化、工程设计等复杂问题上的卓越性能。本文全面展示了PSO的理论基础、改进策略与前沿发展方向,为读者提供了一份详尽的技术指南。
粒子群算法模型深度解析与实战应用
|
5月前
|
机器学习/深度学习 算法 安全
小场景大市场:猫狗识别算法在宠物智能设备中的应用
将猫狗识别算法应用于宠物智能设备,是AIoT领域的重要垂直场景。本文从核心技术、应用场景、挑战与趋势四个方面,全面解析这一融合算法、硬件与用户体验的系统工程。
|
5月前
|
机器学习/深度学习 算法 机器人
【机器人路径规划】基于D*算法的机器人路径规划(Python代码实现)
【机器人路径规划】基于D*算法的机器人路径规划(Python代码实现)
300 0
|
10月前
|
数据采集 搜索推荐 API
Python 原生爬虫教程:京东商品列表页面数据API
京东商品列表API是电商大数据分析的重要工具,支持开发者、商家和研究人员获取京东平台商品数据。通过关键词搜索、分类筛选、价格区间等条件,可返回多维度商品信息(如名称、价格、销量等),适用于市场调研与推荐系统开发。本文介绍其功能并提供Python请求示例。接口采用HTTP GET/POST方式,支持分页、排序等功能,满足多样化数据需求。

推荐镜像

更多