SuperAPI AI 工具集

Cleora ai

Cleora 是一个基于 Rust 的图嵌入引擎,采用确定性稀疏马尔可夫传播与交错白化算法。仅需 CPU、无需参数调优,能将图数据快速转换为高质量嵌入向量,适用于推荐系统、搜索排序及机器学习流水线等场景。

访问官网

工具介绍

Cleora 是一个基于 Rust 构建的图嵌入引擎,其核心思想是用稀疏矩阵幂运算精确计算图中所有游走路径的分布,从而替代传统方法中的随机游走采样和负采样。官方描述将其概括为“所有随机游走,一次矩阵乘法”。

用途

Cleora 用于将图结构数据(如边列表、交互日志、知识三元组)转换为稠密的确定性嵌入向量,供下游机器学习任务使用。典型用途包括推荐系统、搜索排序、菜品建议以及相似用户发现等。

主要能力

  • 稀疏马尔可夫矩阵:从输入图构建稀疏转移矩阵,原生支持带类型、多关系边的异质超图。
  • 矩阵幂 = 全部游走分布:每次迭代将嵌入矩阵与稀疏转移矩阵相乘,M^k 捕获所有长度为 k 的游走分布,无需采样、无噪声、无随机近似。
  • L2 归一化传播:每次迭代将每个节点的嵌入替换为邻居嵌入的 L2 归一化平均值。共现相似度通常 3-4 次迭代,上下文相似度(类似 skip-gram)需 7 次以上。
  • 确定性嵌入:相同输入始终产生相同输出,无需多次运行取平均,适合可复现研究和生产级 ML 流水线。
  • 支持归纳学习:新节点可在不重新训练整个图的情况下嵌入。
  • 轻量依赖:整个库约 5 MB,仅依赖 numpy 和 scipy,以单个编译后的 Rust 扩展形式发布,无需 CUDA、cuDNN 或 GPU 驱动。
  • 丰富评估套件:内置 AUC、MRR、Hits@K、MAP@K、nDCG、ARI、Silhouette Score 以及 k 折交叉验证,无需离开库即可评估。
  • 7 种替代算法基线:ProNE、RandNE、HOPE、NetMF、GraRep、DeepWalk、Node2Vec 均在同一 API 下提供作为对比基线。
  • 迷你批处理与图采样:支持邻域、子图和 GraphSAINT 迷你批处理,以及负采样和训练/测试边划分。
  • 超参数调优:网格搜索和随机搜索,支持自动评估,一次调用即可在所有 7 种替代算法中找到最优嵌入配置。
  • 基准测试套件:比较所有 7 种替代算法与 Cleora 的时间、内存和准确率指标,支持自定义图或 5 种内置图生成器,并输出适合发表格式的表格。
  • 命令行工具:pycleora embed --input graph.tsv --dim 1024 可集成到脚本和 CI/CD 流水线,无需编写 Python 代码。

使用方式

输入为 TSV 格式,支持带类型列(如 complex::reflexive::product),实体、关系和修饰符可放在单个文件中。流程为:馈入边列表或交互日志 → 构建异质超图 → 构建稀疏转移矩阵(行归一化使每行和为 1)→ 矩阵幂迭代 → 输出稠密确定性嵌入向量。官方称“从边到嵌入仅需 5 行代码”,并提到“安装只需几秒,嵌入只需几分钟”,但资料中未提供具体安装命令,暂未提供。

适用场景

  • 推荐系统:Zomato 的 ML 团队用 Cleora 替代 GraphSAGE,将单城市区域的顾客-餐厅交互数据处理时间从约 20 小时缩短到 5 分钟以内,支撑 500 多个城市、8000 万以上用户的“People Like You”餐厅推荐。
  • 搜索排序、菜品建议、相似用户发现等。
  • 可复现研究:确定性嵌入适合需要完全相同结果的研究与生产流水线。
  • 资源受限环境:仅需单个 CPU 核心,无需 GPU 集群。

限制

  • 资料未提供具体安装命令、API 详细文档或定价细节,仅说明开源免费、无许可证费用、无 API 密钥、无使用限制。
  • 与 GraphSAGE 的 240 倍加速、与 DeepWalk 的 240 倍加速等性能数据均来自 Zomato 的测量报告,实际表现可能因数据集和环境而异。
  • 官方称在 8 种算法、5 个数据集(ego-Facebook、Cora、CiteSeer、PubMed、PPI、roadNet-CA 等)上 Cleora 在准确率上均胜出,并使用 10-24 倍更少内存,但资料未提供完整基准数据细节。