Geniml 是面向基因组区间数据(BED 文件)的 Python 机器学习包,用无监督方法学习基因组区域、单细胞和元数据标签的嵌入向量,便于相似性搜索、聚类等下游任务。
主要能力包括:Region2Vec 用 word2vec 风格学习基因组区域嵌入,适合 BED 文件降维与区域相似性分析;BEDspace 基于 StarSpace 联合学习区域集与元数据标签的共享嵌入,支持区域与标签的跨模态查询;scEmbed 在单细胞 ATAC-seq 数据上训练区域嵌入以生成细胞级嵌入,可与 scanpy 工作流集成;Universe 构建可从 BED 文件集合用 CC、CCF、ML、HMM 等方法生成参考峰集;工具类提供 BBClient 缓存、BEDshift 随机化、嵌入评估与分词等。
安装使用 uv:uv pip install geniml,机器学习依赖用 uv pip install 'geniml[ml]'。可通过 Python API 或 CLI 调用,如 geniml region2vec、geniml bedspace、geniml universe build cc、geniml bedshift 等命令。
适用场景:批量基因组数据(ChIP-seq、ATAC-seq 等)的无监督嵌入、带元数据的区域搜索、scATAC-seq 细胞聚类与类型注释、构建统计严谨的参考峰集。限制:使用 ML/HMM 方法构建 universe 计算量较大;大 数据集可能需分批或降采样;BEDspace 需另行安装 StarSpace。官方文档见 https://docs.bedbase.org/geniml/,预训练模型发布于 Hugging Face 的 databio 组织。