IP Library Granted Patent US 12,299,079
Granted Patent B2
US 12,299,079 · App. 17/699,399 · Granted May 13, 2025

Cost equalization spectral clustering

Inventors: Himanshi Mehta (West Lafayette, IN); Sarvagya Upadhyay (San Jose, CA)
Assignee: FUJITSU LIMITED
G06F18/2323G06F7/24G06F18/23213
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,299,079
App. No.
17/699,399
Granted
May 13, 2025
Kind
B2
Abstract

A method may include obtaining a graph dataset that includes a plurality of nodes. The method may include specifying two or more clusters into which each node of the plurality of nodes is to be sorted. The method may include assigning each respective node of the plurality of nodes of the graph dataset into a respective cluster of the two or more clusters according to respective costs that are each associated with each of the respective clusters such that all of the costs are within a threshold value of each other. The respective cost associated with its respective cluster may be determined based on a number of external edges connecting the respective nodes in the respective cluster to the nodes in each other cluster. The method may include analyzing the plurality of nodes with respect to the respective cluster to which each of the respective nodes is assigned.

Claims (52)

1. A method, comprising:

obtaining a graph dataset that includes a plurality of nodes;

specifying two or more clusters into which each node of the plurality of nodes is to be sorted;

assigning each respective node of the plurality of nodes of the graph dataset into a respective cluster of the two or more clusters according to respective costs that are each associated with each of the respective clusters such that all of the costs are within a threshold value of each other, the respective cost associated with its respective cluster is determined based on external edges connecting the respective nodes in the respective cluster to the nodes in each other cluster; and

training a machine learning model to apply cost equalized data analysis methods as part of unsupervised learning performed by the machine learning model, the training including causing the machine learning model to analyze the plurality of nodes with respect to the respective cluster to which each of the respective nodes is assigned, the analyzing as part of the training causing a modification in the machine learning model that reduces bias of the machine learning model with respect to future processing by the machine learning model of data related to the graph dataset.

2. The method of claim 1 , wherein assigning each respective node into the respective cluster according to the respective costs that are associated with each of the respective clusters comprises:

identifying a plurality of eigenvalues and a plurality of eigenvectors in which each respective eigenvector of the plurality of eigenvectors corresponds to a respective eigenvalue of the plurality of eigenvalues, the plurality of eigenvalues and the plurality of eigenvectors being identified based on a degree of connectivity and a degree of adjacency between each node of the plurality of nodes;

pairing respective eigenvalues of the plurality of eigenvalues with respective eigenvectors of the plurality of eigenvectors that correspond to the respective eigenvalues to form a plurality of eigenvalue-eigenvector pairs;

sorting each of the eigenvalue-eigenvector pairs into the clusters such that the cost associated with each respective cluster, as determined based on the respective eigenvalues sorted into the respective cluster, is within a threshold value of the cost associated with each other cluster; and

performing a k-means clustering algorithm on a respective matrix that includes the respective eigenvectors corresponding to the respective cluster.

3. The method of claim 2 , wherein a number of eigenvalues and a number of eigenvectors included in the identified plurality of eigenvalues and the identified plurality of eigenvectors corresponds to the number of clusters into which the plurality of nodes is to be sorted.

4. The method of claim 2 , wherein the cost associated with each of the clusters is determined by summing the respective eigenvalues sorted into each of the respective clusters.

5. The method of claim 4 , wherein summing the respective eigenvalues sorted into each of the respective clusters is determined according to a ratio cut algorithm.

6. The method of claim 5 , wherein the ratio cut algorithm includes computing a trace function of a product of a transpose of a matrix of the eigenvectors associated with each of the clusters “H j T ”, a Laplacian matrix “L”, and the matrix of the eigenvectors associated with each of the clusters “H j ”.

7. The method of claim 1 , wherein:

each of the respective nodes of the plurality of nodes of the graph dataset describes a respective member of a social media network;

each of the clusters represent a community in which the members of the social media network are included; and

analyzing the plurality of nodes with respect to the respective cluster to which each of the respective nodes is assigned includes detection of one or more communities within the social media network.

8. One or more non-transitory computer-readable storage media configured to store instructions that, in response to being executed, cause a system to perform operations, the operations comprising:

obtaining a graph dataset that includes a plurality of nodes;

specifying two or more clusters into which each node of the plurality of nodes is to be sorted;

assigning each respective node of the plurality of nodes of the graph dataset into a respective cluster of the two or more clusters according to respective costs that are each associated with each of the respective clusters such that all of the costs are within a threshold value of each other, the respective cost associated with its respective cluster is determined based on external edges connecting the respective nodes in the respective cluster to the nodes in each other cluster; and

training a machine learning model to apply cost equalized data analysis methods as part of unsupervised learning performed by the machine learning model, the training including causing the machine learning model to analyze the plurality of nodes with respect to the respective cluster to which each of the respective nodes is assigned, the analyzing as part of the training causing a modification in the machine learning model that reduces bias of the machine learning model with respect to future processing by the machine learning model of data related to the graph dataset.

9. The one or more non-transitory computer-readable storage media of claim 8 , wherein assigning each respective node into the respective cluster according to the respective costs that are associated with each of the respective clusters comprises:

identifying a plurality of eigenvalues and a plurality of eigenvectors in which each respective eigenvector of the plurality of eigenvectors corresponds to a respective eigenvalue of the plurality of eigenvalues, the plurality of eigenvalues and the plurality of eigenvectors being identified based on a degree of connectivity and a degree of adjacency between each node of the plurality of nodes;

pairing respective eigenvalues of the plurality of eigenvalues with respective eigenvectors of the plurality of eigenvectors that correspond to the respective eigenvalues to form a plurality of eigenvalue-eigenvector pairs;

sorting each of the eigenvalue-eigenvector pairs into the clusters such that the cost associated with each respective cluster, as determined based on the respective eigenvalues sorted into the respective cluster, is within a threshold value of the cost associated with each other cluster; and

performing a k-means clustering algorithm on a respective matrix that includes the respective eigenvectors corresponding to the respective cluster.

10. The one or more non-transitory computer-readable storage media of claim 9 , wherein a number of eigenvalues and a number of eigenvectors included in the identified plurality of eigenvalues and the identified plurality of eigenvectors corresponds to the number of clusters into which the plurality of nodes is to be sorted.

11. The one or more non-transitory computer-readable storage media of claim 9 , wherein the cost associated with each of the clusters is determined by summing the respective eigenvalues sorted into each of the respective clusters.

12. The one or more non-transitory computer-readable storage media of claim 11 , wherein summing the respective eigenvalues sorted into each of the respective clusters is determined according to a ratio cut algorithm.

13. The one or more non-transitory computer-readable storage media of claim 12 , wherein the ratio cut algorithm includes computing a trace function of a product of a transpose of a matrix of the eigenvectors associated with each of the clusters “H j T ”, a Laplacian matrix “L”, and the matrix of the eigenvectors associated with each of the clusters “H j ”.

14. The one or more non-transitory computer-readable storage media of claim 8 , wherein:

each of the respective nodes of the plurality of nodes of the graph dataset describes a respective member of a social media network;

each of the clusters represent a community in which the members of the social media network are included; and

analyzing the plurality of nodes with respect to the respective cluster to which each of the respective nodes is assigned includes detection of one or more communities within the social media network.

15. A system comprising:

one or more processors; and

one or more non-transitory computer-readable storage media configured to store instructions that, in response to being executed, cause the system to perform operations, the operations comprising:

obtaining a graph dataset that includes a plurality of nodes;

specifying two or more clusters into which each node of the plurality of nodes is to be sorted;

assigning each respective node of the plurality of nodes of the graph dataset into a respective cluster of the two or more clusters according to respective costs that are each associated with each of the respective clusters such that all of the costs are within a threshold value of each other, the respective cost associated with its respective cluster is determined based on external edges connecting the respective nodes in the respective cluster to the nodes in each other cluster; and

training a machine learning model to apply cost equalized data analysis methods as part of unsupervised learning performed by the machine learning model, the training including causing the machine learning model to analyze the plurality of nodes with respect to the respective cluster to which each of the respective nodes is assigned, the analyzing as part of the training causing a modification in the machine learning model that reduces bias of the machine learning model with respect to future processing by the machine learning model of data related to the graph dataset.

16. The system of claim 15 , wherein assigning each respective node into the respective cluster according to the respective costs that are associated with each of the respective clusters comprises:

identifying a plurality of eigenvalues and a plurality of eigenvectors in which each respective eigenvector of the plurality of eigenvectors corresponds to a respective eigenvalue of the plurality of eigenvalues, the plurality of eigenvalues and the plurality of eigenvectors being identified based on a degree of connectivity and a degree of adjacency between each node of the plurality of nodes;

pairing respective eigenvalues of the plurality of eigenvalues with respective eigenvectors of the plurality of eigenvectors that correspond to the respective eigenvalues to form a plurality of eigenvalue-eigenvector pairs;

sorting each of the eigenvalue-eigenvector pairs into the clusters such that the cost associated with each respective cluster, as determined based on the respective eigenvalues sorted into the respective cluster, is within a threshold value of the cost associated with each other cluster; and

performing a k-means clustering algorithm on a respective matrix that includes the respective eigenvectors corresponding to the respective cluster.

17. The system of claim 16 , wherein a number of eigenvalues and a number of eigenvectors included in the identified plurality of eigenvalues and the identified plurality of eigenvectors corresponds to the number of clusters into which the plurality of nodes is to be sorted.

18. The system of claim 16 , wherein the cost associated with each of the clusters is determined by summing the respective eigenvalues sorted into each of the respective clusters.

19. The system of claim 18 , wherein summing the respective eigenvalues sorted into each of the respective clusters is determined according to a ratio cut algorithm.

20. The system of claim 19 , wherein the ratio cut algorithm includes computing a trace function of a product of a transpose of a matrix of the eigenvectors associated with each of the clusters “H j T ”, a Laplacian matrix “L”, and the matrix of the eigenvectors associated with each of the clusters “H j ”.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2022
From: MEHTA, HIMANSHI; UPADHYAY, SARVAGYA
To: FUJITSU LIMITED
Reel/Frame 059343/0415 →
Continuity (1)
Related Publication 20230297651A1 · Sep 21, 2023
References Cited (13)
US 20190102155A1 · Garvey · 2019 [cited by examiner]
US 20200142875A1 · Cao · 2020 [cited by examiner]
US 20210065031A1 · Parikh · 2021 [cited by examiner]
Fortuato, “Community detection in graphs” Jan. 25, 2010 (Year: 2010). [cited by examiner]
European Search Report dated Jul. 17, 2023 as received in application No. 23159588.5. [cited by applicant]
Fortunato, “Community detection in graphs” Jan. 25, 2010. [cited by applicant]
Santo Fortunato: “Community detection in graphs”, arxiv.org, Cornell University Library, Jun. 3, 2009. [cited by applicant]
European Search Report issued in corresponding application No. 23159588.5, dated Jul. 17, 2023. [cited by applicant]
M. Kleindessner et al., “Guarantees for spectral clustering with fairness constraints” [KSAM19] International Conference on Machine Learning (Jan. 24, 2019). [cited by applicant]
M. Ghadiri et al., “Socially fair k-means clustering” Conference on Fairness, Accountability, and Transparency (2021) [GSV21] Jun. 17, 2020. [cited by applicant]
Y. Makarychev and A. Vakilian, “Approximation algorithms for socially fair clustering” [MV21] Conference on Learning Theory (Mar. 3, 2021). [cited by applicant]
S. Bera et al., “Fair algorithms for clustering” [BCFN19] Advances in Neural Information Processing Systems (2019). [cited by applicant]
D. Goyal and R. Jaiswal, “FPT algorithm for socially fair clustering” [GJ21] arXiv e-Print: 2106.06755, Jun. 12, 2021. [cited by applicant]