常见用法

GDS 库的使用模式通常分为两个阶段:开发阶段和生产阶段。

开发阶段

开发阶段的目标是建立一套实用的算法和机器学习工作流。此阶段涉及配置系统、定义图投影、选择合适的算法以及进行机器学习实验。通常会用到库中的内存估算功能,这使您能够成功配置系统以处理待处理的数据量。需要注意的资源有三种:投影图、算法数据结构和机器学习设置。

机器学习流水线

使用 Neo4j 图数据科学开发成功的机器学习流水线,通常涉及以下步骤的实验:

  • 选择训练方法

  • 选择用于生成图特征的算法

  • 选择用于生成节点嵌入(Embedding)的算法

  • 调整训练方法的参数

  • 调整嵌入算法的参数

  • 配置流水线训练参数

  • 使用图采样在数据子集上训练模型候选者

生产阶段

在生产阶段,系统被配置为成功且可靠地运行所需的算法和流水线。操作序列通常为以下之一:

  • 投影图 → 在投影上运行一个或多个算法 → 使用结果

  • 投影图 → 配置机器学习流水线 → 训练机器学习模型

  • 投影图 → 使用预先训练好的机器学习模型计算预测结果

通用注意事项

下图展示了 GDS 库标准操作的概览

projected graph model

在此图中,机器学习流水线被包含在“算法”类别中。

GDS 库在系统资源使用方面是“贪婪”的。这意味着每个过程都会尝试使用:

  • 其所需的所有内存(请参阅内存估算

  • 其所需的所有 CPU 核心(不超过其配置的 concurrency 限制)

并发运行的过程会共享承载 DBMS 的系统资源,因此可能会影响彼此的性能。要获取系统状态概览,您可以使用系统监控过程

有关 GDS 核心操作的更多详细信息,请参阅相应章节。