bulktrajblend-trajectory-interpolation
Extend scRNA-seq developmental trajectories with BulkTrajBlend by generating intermediate cells from bulk RNA-seq, training beta-VAE and GNN models,…
它会碰到什么
扫了多少2 个文本文件,8 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0
这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。
技能内容
BulkTrajBlend trajectory interpolation
Overview
Invoke this skill when users need to bridge gaps in single-cell developmental trajectories using matched bulk RNA-seq. It follows [t_bulktrajblend.ipynb](../../omicverse_guide/docs/Tutorials-bulk2single/t_bulktrajblend.ipynb), showcasing how BulkTrajBlend deconvolves PDAC bulk samples, identifies overlapping communities with a GNN, and interpolates "interrupted" cell states.
Instructions
- Prepare libraries and inputs
- Import
omicverse as ov,scanpy as sc,scvelo as scv, and helper functions likefrom omicverse.utils import mde; runov.plot_set(). - Load the reference scRNA-seq AnnData (
scv.datasets.dentategyrus()) and raw bulk counts withov.utils.read(...)followed byov.bulk.Matrix_ID_mapping(...)for gene ID harmonisation.
- Configure BulkTrajBlend
- Instantiate
ov.bulk2single.BulkTrajBlend(bulk_seq=bulk_df, single_seq=adata, bulk_group=['dg_d_1','dg_d_2','dg_d_3'], celltype_key='clusters'). - Explain that
bulk_groupnames correspond to raw bulk columns and the method expects unscaled counts.
- Set beta-VAE expectations
- Call
bulktb.vae_configure(cell_target_num=100)(or pass a dictionary) to define expected cell counts per cluster. Mention that omitting the argument triggers TAPE-based estimation.
- Train or load the beta-VAE
- Use
bulktb.vae_train(batch_size=512, learning_rate=1e-4, hidden_size=256, epoch_num=3500, vae_save_dir='...', vae_save_name='dg_btb_vae', generate_save_dir='...', generate_save_name='dg_btb'). - Highlight resuming with
bulktb.vae_load('.../dg_btb_vae.pth')and the need to regenerate cells with consistent random seeds for reproducibility.
- Generate synthetic cells
- Produce filtered AnnData via
bulktb.vae_generate(leiden_size=25)and inspect compositions withov.bulk2single.bulk2single_plot_cellprop(...). - Save outputs to disk for reuse (
adata.write_h5ad).
- Configure and train the GNN
- Call
bulktb.gnn_configure(max_epochs=2000, use_rep='X', neighbor_rep='X_pca', gpu=0, ...)to set hyperparameters. - Train using
bulktb.gnn_train(); reload checkpoints withbulktb.gnn_load('save_model/gnn.pth'). - Generate overlapping community assignments through
bulktb.gnn_generate().
- Visualise community structure
- Create MDE embeddings:
bulktb.nocd_obj.adata.obsm['X_mde'] = mde(bulktb.nocd_obj.adata.obsm['X_pca']). - Plot clusters vs. discovered communities using
sc.pl.embedding(..., color=['clusters','nocd_n'], palette=ov.utils.pyomic_palette())and filtered subsets excluding synthetic labels with hyphens.
- Interpolate missing states
- Run
bulktb.interpolation('OPC')(replace with target lineage) to synthesise continuity, then preprocess the interpolated AnnData (HVG selection, scaling, PCA). - Compute embeddings with
mde, visualise withov.utils.embedding, and compare to the original atlas.
- Analyse trajectories
- Initialise
ov.single.pyVIAon both original and interpolated data to derive pseudotime, followed byget_pseudotime,sc.pp.neighbors,ov.utils.cal_paga, andov.utils.plot_pagafor topology validation.
- Troubleshooting tips
- If the VAE collapses (high reconstruction loss), lower
learning_rateor reducehidden_size. - Ensure the same generated dataset is used before calling
gnn_train; regenerating cells changes the graph and can break checkpoint loading. - Sparse clusters may need adjusted
cell_target_numthresholds or a smallerleiden_sizefilter to retain rare populations.
Examples
- "Train BulkTrajBlend on PDAC cohorts, then interpolate missing OPC states in the trajectory."
- "Load saved beta-VAE and GNN weights to regenerate overlapping communities and plot cluster vs. nocd labels."
- "Run VIA on interpolated cells and compare PAGA graphs with the original scRNA-seq trajectory."
References
- Tutorial notebook: [
t_bulktrajblend.ipynb](../../omicverse_guide/docs/Tutorials-bulk2single/t_bulktrajblend.ipynb) - Example datasets and checkpoints: [
omicverse_guide/docs/Tutorials-bulk2single/data/](../../omicverse_guide/docs/Tutorials-bulk2single/data/) - Quick copy/paste commands: [
reference.md](reference.md)
想直接用这个技能?
本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。
它属于哪个仓库
星标★ 3,010
本站分层T1
该仓技能数897
原文件路径
skills/bulk-trajblend-interpolation/SKILL.md