图算法接口
接口列表:
中心度算法
分类/相似度算法
社群算法
路径查找算法
业务场景算法
中介中心度查询
简述
将图视为有向图,计算点的中介中心度。主要基于经过该点的最短路径数量。
方法
参数
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| db_name | string | 数据库名称 | 否 | * | "ezoo" | |
| search_direction | int32_t | 搜索方向 | 否 | * | 2 | 方向参数说明 |
| hop | int32_t | 终止跳数 | 否 | * | 5 | 大于等于1,如需搜索全图可给一个很大的数值如100 |
返回值
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| _return | score_return | 返回了点id与其对应的中心度分数 | 否 | * | * | |
接近中心度查询
简述
将图视为无向图,计算点的接近中心度。主要基于点到图中其他各点的最短路径长度。
方法
参数
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| db_name | string | 数据库名称 | 否 | * | "ezoo" | |
| if_WF | bool | 是否使用Wasserman and Faust提出的改进方式 | 否 | * | 2 | 对于全联通图,是否使用改进方法结果不变。 |
| hop | int32_t | 终止跳数 | 否 | * | 5 | 大于等于1,如需搜索全图可给一个很大的数值如100 |
返回值
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| _return | score_return | 返回了点id与其对应的中心度分数 | 否 | * | * | |
网页排名查询
简述
即pagerank算法。将图视为有向图,根据边上权重值,基于传播模型,计算图中节点的重要程度。用户可自定义传播模型参数。
方法
参数
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| db_name | string | 数据库名称 | 否 | * | "ezoo" | |
| damping_factor | double | 损耗因子 | 否 | * | 0.85 | |
| epoch_limit | int | 迭代上限 | 否 | * | 5 | |
| max_convergence_error | double | 最大收敛误差 | 否 | * | 0.0001 | |
| vertex_init_value | double | 节点初始分数 | 否 | * | 1 | |
| edge_type | string | 权重边类型 | 否 | * | "edge" | 如没有权重属性,此属性可给空串。 |
| edge_props_name | string | 权重属性名 | 否 | * | "value" | 权重属性需为权重边上的数值类型属性。 |
返回值
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| _return | score_return | 返回了点id与其对应的重要程度的分数 | 否 | * | * | |
杰卡德相似度查询
简述
将图视为有向图,基于邻居节点,计算两个节点的相似度。
内容升级中。
Louvain查询
简述
将图视为无向图,基于拓扑结构与边权重计算出的模块分数,为点划分社群。
方法
参数
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| db_name | string | 数据库名称 | 否 | * | "ezoo" | |
| edge_type | string | 权重边 | 否 | * | “relation” | 如没有权重属性,此属性可给空串。 |
| edge_props_name | string | 权重属性 | 否 | * | “weight” | 权重属性需为权重边上的数值类型属性。 |
返回值
标签传播查询
简述
Label Propagation Algorithm in semi-synchronous way,半同步标签传播算法,将图视为有向图,基于半同步标签传播理论,将图中的节点进行社群划分,分类表现较好。
方法
参数
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| db_name | string | 数据库名称 | 否 | * | "ezoo" | |
| epoch_limit | int | 迭代上限 | 否 | * | 20 | |
返回值
同步标签传播查询
简述
Label Propagation Algorithm in synchronous way,将图视为有向图,基于同步标签传播理论,避免了循环传播情况,将图中的节点进行社群划分,速度快于标签传播算法。
方法
参数
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| db_name | string | 数据库名称 | 否 | * | "ezoo" | |
| epoch_limit | int | 迭代上限 | 否 | * | 20 | |
返回值
强连通分量查询
简述
Strongly Connected Components算法,将图视为有向图,查找图中的强连通分量。
方法
参数
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| db_name | string | 数据库名称 | 否 | * | "ezoo" | |
返回值
弱连通分量查询
简述
Weakly Connected Components算法,将图视为无向图,查找图中的弱连通分量。
方法
参数
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| db_name | string | 数据库名称 | 否 | * | "ezoo" | |
返回值
dijkstra查询
简述
将图视为有向图,根据边上的权重值,查找给定两点间最短路径。
内容升级中。
单条最短路径查询
简述
将图视为有向图,查找两个节点的一条最短路径。
内容升级中。
随机游走查询
简述
将图视为有向图,基于游走模型,给出给定节点的游走路线。用户可自定义游走模型的参数,控制深度搜索与广度搜索的比例。
内容升级中。
资金流向查询
简述
用于查找指定用户在指定时间范围内的资金流向情况。
方法
参数
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| db_name | string | 数据库名称 | 否 | * | "ezoo" | |
| start_node | int32_t | 起点内部id | 否 | * | 0 | |
| start_time | int64_t | 时间起点(毫秒级时间戳) | 否 | * | 0 | |
| end_time | int64_t | 时间终点(毫秒级时间戳) | 否 | * | 1 | |
| money_percent | int32_t | 金钱百分比,一个大于0小于100的整数,最终将仅考虑大于总钱数此比例大小的转账 | 否 | * | 1 | |
| time_window | int64_t | 转账时间窗口,前后两笔转账的最大间隔时间 (毫秒级时间戳) | 否 | * | 1 | |
| edge_type | string | 转账边类型 | 否 | * | "edge" | |
| time_props | string | 转账时间属性 | 否 | * | "time" | |
| money_props | string | 转账金钱属性 | 否 | * | "money" | |
| mode | int32_t | 模式,当模式为0,仅返回资金流向图,当模式为1,返回资金流向图,各节点与起始节点的资金。 | 否 | * | 1 | |
返回值
| 参数列表 | 类型 | 描述 | 是否可空 | 默认值 | 示例 | 备注 |
| _return | _return | 返回资金流向图与各节点上的资金。 | 否 | * | * | |