Cesna
Function
This API is used to run the Cesna algorithm based on input parameters.
The Cesna algorithm is an overlapping community detection algorithm that models the relationship between vertices and communities as a bipartite graph. Assume that the edges between vertices in the graph are generated based on community relationships. In addition, this algorithm also models communities based on vertex properties, assuming that vertex properties are also generated based on community relationships.
URI
POST /ges/v1.0/{project_id}/hyg/{graph_name}/algorithm
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID. For how to obtain the project ID, see Obtaining a Project ID. |
graph_name |
Yes |
String |
Graph name |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
algorithmName |
Yes |
String |
Algorithm name |
parameters |
Yes |
parameters Object |
Algorithm parameters |
Parameter |
Mandatory |
Type |
Description |
convergence |
No |
Double |
Convergence accuracy. The value range is (0, 1). The default value is 0.00001. |
max_iterations |
No |
Integer |
Maximum iterations. An integer ranging from 1 to 2147483647. For frontend calls, the range is [1, 2000]. The default value is 100. |
community_num_space |
Yes |
String |
Search space for the number of communities, with multiple integer values separated by commas (,). There can be a maximum of 100 values, and each integer value must be within the range of [1, 10000]. |
learning_rate |
No |
Double |
Model learning rate. The value is greater than 0. The default value is 0.01. |
holdout_rate |
No |
Double |
Proportion of the validation set required for cross-validation, with a value range of (0, 1) and a default value of 0.1. |
node_attributes |
Yes |
String |
Format of vertex properties, with multiple integers separated by semicolons (;). Each integer represents the index of an element with a value of 1 in a binary array. For example, 1;2;3 means that the vertex has a value of 1 in dimensions 1, 2, and 3, and a value of 0 in all other dimensions. The index of vertex properties is greater than or equal to 0 and less than 10,000, and the number of indexes is less than or equal to 10,000. |
Response Parameters
Parameter |
Type |
Description |
errorMessage |
String |
System prompt. If execution succeeds, this parameter may be left blank. If the execution fails, this parameter is used to display the error message. |
errorCode |
String |
System prompt. If execution succeeds, this parameter may be left blank. If the execution fails, this parameter is used to display the error code. |
jobId |
String |
ID of the algorithm execution job. This parameter is left blank when the request fails.
NOTE:
You can use the returned job ID to view the task execution status and obtain the algorithm return result. For details, see Querying Job Status on the Service Plane (1.0.0). |
jobType |
Integer |
Job type. This parameter is left blank when the request fails. |
Example Request
POST http://{SERVER_URL}/ges/v1.0/{project_id}/hyg/{graph_name}/algorithm { "algorithmName":"cesna", "parameters":{ "community_num_space":"3,2,10" } }
SERVER_URL: Address for accessing a graph. For details about its value, see Using Service Plane APIs.
Example Response
Status code: 200
Example response for a successful request
Http Status Code: 200 { "jobId": "4448c9fb-0b16-4a78-8d89-2a137c53454a001679122", "jobType": 1 }
Status code: 400
Example response for a failed request
Http Status Code: 400 { "errorMessage":"graph [demo] is not found", "errorCode":"GES.8402" }
Query Result
- Example Request
GET http://{SERVER_URL}/ges/v1.0/{project_id}/graphs/{graph_name}/jobs/{jobId}/status?limit=limit
- Query result response
Table 4 response_data parameter description Parameter
Type
Description
community_num
Integer
Number of communities
communities
List
Community corresponding to each vertex. The format is as follows:
[{vertexId1:communityIds},{vertexId2:communityIds}],
where
vertexId is of the string type.
communityIds: list type. Each element is of the int type.
log_likelihood
Double
Logarithmic value of the joint probability of edges between model vertices calculated by the current graph generation model. The larger the value, the more accurate the estimated number of communities.
Status Codes
Return Value |
Description |
---|---|
400 Bad Request |
Request error. |
401 Unauthorized |
Authorization failed. |
403 Forbidden |
No operation permissions. |
404 Not Found |
No resources found. |
500 Internal Server Error |
Internal server error. |
503 Service Unavailable |
Service unavailable. |
Error Codes
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot