更新时间:2024-05-23 GMT+08:00

标签传播算法(label_propagation)

功能介绍

根据输入参数,执行label_propagation算法。

标签传播算法(Label Propagation)是一种基于图的半监督学习方法,其基本思路是用已标记节点的标签信息去预测未标记节点的标签信息。利用样本间的关系建图,节点包括已标注和未标注数据,其边表示两个节点的相似度,节点的标签按相似度传递给其他节点。标签数据就像是一个源头,可以对无标签数据进行标注,节点的相似度越大,标签越容易传播。

URI

POST /ges/v1.0/{project_id}/hyg/{graph_name}/algorithm
表1 路径参数

参数

是否必选

类型

说明

project_id

String

项目ID。获取方法请参见获取项目ID

graph_name

String

图名称。

请求参数

表2 请求Body参数

参数

是否必选

类型

说明

algorithmName

String

算法名字。

parameters

parameters Object

算法参数。

表3 parameters

参数

是否必选

类型

说明

convergence

Double

收敛精度,取值范围为(0,1),默认值为0.00001。

max_iterations

Integer

最大迭代次数。API调用限制为[1,2147483647],前端调用限制为[1,2000],默认值为1000。

响应参数

参数

类型

说明

errorMessage

String

系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误信息。

errorCode

String

系统提示信息,执行成功时,字段可能为空。执行失败时,用于显示错误码。

jobId

String

执行算法任务ID。请求失败时,字段为空。

说明:

可以利用返回的jobId查看任务执行状态、获取算法返回结果,详情参考查询Job状态(1.0.0)

jobType

Integer

任务类型。请求失败时,字段为空。

请求示例

POST http://{SERVER_URL}/ges/v1.0/{project_id}/hyg/{graph_name}/algorithm
{
 "algorithmName":"label_propagation",
 "parameters":{
   "convergence":"0.00001",
        "max_iterations":"1000"
 }
}

SERVER_URL:图的访问地址,取值请参考业务面API使用限制

响应示例

状态码: 200

成功响应示例

Http Status Code: 200
{  
"jobId": "4448c9fb-0b16-4a78-8d89-2a137c53454a001679122",
"jobType": 1
}

状态码: 400

失败响应示例

Http Status Code: 400
{
"errorMessage":"graph [demo] is not found",
"errorCode":"GES.8402"
}

查询结果

  • 请求示例
    GET http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/jobs/{jobId}/status?limit=limit
  • 查询结果响应
    表4 reponse_data参数说明

    参数

    类型

    说明

    community

    List

    各节点对应的社团,格式:

    [{vertexId1:communityId},{vertexId2:communityId}],

    其中,

    vertexId:string类型,List按照vertexId排序

    communityId:string类型。

    备注:communityId本身无实意,使用的是HyG内部ID。

状态码

返回值

说明

400 Bad Request

请求错误

401 Unauthorized

鉴权失败

403 Forbidden

没有操作权限

404 Not Found

找不到资源

500 Internal Server Error

服务内部错误

503 Service Unavailable

服务不可用

错误码

请参见错误码