IP Library Granted Patent US 12,586,002
Granted Patent B2
US 12,586,002 · App. 17/491,494 · Granted Mar 24, 2026

Multi-polytope machine for classification

Inventors: Dzung Tien Phan (Pleasantville, NY); Lam Minh Nguyen (Ossining, NY); Jayant R. Kalagnanam (Briarcliff Manor, NY); Chandrasekhara K. Reddy (Kinnelon, NJ); Srideepika Jayaraman (White Plains, NY)
Assignee: International Business Machines Corporation
G06N20/10
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,586,002
App. No.
17/491,494
Granted
Mar 24, 2026
Kind
B2
Abstract

A computer implemented method of generating a classifier engine for machine learning includes receiving a set of data points. A semi-supervised k-means process is applied to the set of data points from each class. The set of data points in a class is clustered into multiple clusters of data points, using the semi-supervised k-means process. Multi-polytopes are constructed for one or more of the clusters from all classes. A support vector machine (SVM) process is run on every pair of clusters from all classes. Separation hyperplanes are determined for the clustered classes. Labels are determined for each cluster based on the separation by hyperplanes.

Claims (80)

1 . A computer-implemented method for improving an efficiency of a computing device in generating a classifier engine for machine learning, the computer-implemented method comprising:

receiving a plurality of data points;

applying a semi-supervised k-means process to a first set of data points of the plurality of data points and a second set of data points of the plurality of data points, wherein

the first set of data points is labeled with a first class of a plurality of classes and

the second set of data points is labeled with a second class of the plurality of classes, different from the first class;

clustering the first set of data points and the second set of data points into a first plurality of clusters and a second plurality of clusters, respectively, using the semi-supervised k-means process;

constructing multi-polytopes for the first plurality of clusters and the second plurality of clusters;

training, based on the constructing of the multi-polytopes, a plurality of support vector machine (SVM) classifiers, wherein each SVM classifier of the plurality of SVM classifiers is trained on a respective pair of clusters within the first plurality of clusters and the second plurality of clusters;

determining, using the trained plurality of SVM classifiers, separation hyperplanes for the first plurality of clusters and the second plurality of clusters; and

determining labels for each cluster of the first plurality of clusters and each cluster of the second plurality of clusters, based on the separation hyperplanes.

2 . The computer-implemented method of claim 1 , further comprising clustering positive classes of data points of the plurality of data points separately from negative classes of data points of the plurality of data points.

3 . The computer-implemented method of claim 1 , further comprising:

identifying information from one of the first plurality of clusters or the second plurality of clusters; and

using the identified information as a constraint in determining remaining of the one of the first plurality of clusters or the second plurality of clusters.

4 . The computer-implemented method of claim 1 , further comprising:

determining misclassification measurements in the first plurality of clusters and the second plurality of clusters; and

training the semi-supervised k-means process for improved clustering based on the misclassification measurements.

5 . The computer-implemented method of claim 1 , wherein the separation hyperplanes are non-linear boundaries between the respective pair of clusters.

6 . The computer-implemented method of claim 1 , wherein the semi-supervised k-means process is regularized.

7 . A computer program product for improving a computing efficiency of a computing device in generating a classifier engine for machine learning, the computer program product comprising:

one or more non-transitory computer readable storage media, and program instructions collectively stored on the one or more non-transitory computer readable storage media, the program instructions comprising:

receiving a plurality of data points;

applying a semi-supervised k-means process to a first set of data points of the plurality of data points and a second set of data points of the plurality of data points, wherein

the first set of data points is labeled with a first class of a plurality of classes, and

the second set of data points is labeled with a second class of the plurality of classes, different from the first class;

clustering the first set of data points and the second set of data points into a first plurality of clusters and a second plurality of clusters, respectively, using the semi-supervised k-means process;

constructing multi-polytopes for the first plurality of clusters and the second plurality of clusters;

training, based on the constructing of the multi-polytopes, a plurality of support vector machine (SVM) classifiers, wherein each SVM classifier of the plurality of SVM classifiers is trained on a respective pair of clusters within the first plurality of clusters and the second plurality of clusters;

determining, using the trained plurality of SVM classifiers, separation hyperplanes for the first plurality of clusters and the second plurality of clusters; and

determining labels for each cluster of the first plurality of clusters and each cluster of the second plurality of clusters, based on the separation hyperplanes.

8 . The computer program product of claim 7 , wherein the program instructions further comprise clustering positive classes of data points of the plurality of data points separately from negative classes of data points of the plurality of data points.

9 . The computer program product of claim 7 , wherein the program instructions further comprise:

identifying information from one of the first plurality of clusters or the second plurality of clusters; and

using the identified information as a constraint in determining remaining of the one of the first plurality of clusters or the second plurality of clusters.

10 . The computer program product of claim 7 , wherein the program instructions further comprise:

determining misclassification measurements in the first plurality of clusters and the second plurality of clusters; and

training the semi-supervised k-means process for improved clustering based on the misclassification measurements.

11 . The computer program product of claim 7 , wherein the separation hyperplanes are non-linear boundaries between the respective pair of clusters.

12 . The computer program product of claim 7 , wherein the semi-supervised k-means process is regularized.

13 . A computer server for improving computational efficiency in generating a classifier engine for machine learning, the computer server comprising:

a network connection;

one or more computer readable storage media;

a processor coupled to the network connection and coupled to the one or more computer readable storage media; and

a computer program product comprising program instructions collectively stored on the one or more computer readable storage media, the program instructions comprising:

receiving a plurality of data points;

applying a semi-supervised k-means process to a first set of data points of the plurality of data points and a second set of data points of the plurality of data points, wherein

the first set of data points is labeled with a first class of a plurality of classes, and

the second set of data points is labeled with a second class of the plurality of classes, different from the first class;

clustering the first set of data points and the second set of data points into a first plurality of clusters and a second plurality of clusters, respectively, using the semi-supervised k-means process;

constructing multi-polytopes for the first plurality of clusters and the second plurality of clusters;

training, based on the constructing of the multi-polytopes, a plurality of support vector machine (SVM) classifiers, wherein each SVM classifier of the plurality of SVM classifiers is trained on a respective pair of clusters within the first plurality of clusters and the second plurality of clusters;

determining, using the trained plurality of SVM classifiers, separation hyperplanes for the first plurality of clusters and the second plurality of clusters; and

determining labels for each cluster of the first plurality of clusters and each cluster of the second plurality of clusters, based on the separation hyperplanes.

14 . The computer server of claim 13 , wherein the program instructions further comprise clustering positive classes of data points of the plurality of data points separately from negative classes of data points of the plurality of data points.

15 . The computer server of claim 13 , wherein the program instructions further comprise;

identifying information from one of the first plurality of clusters or the second plurality of clusters; and

using the identified information as a constraint in determining remaining of the one of the first plurality of clusters or the second plurality of clusters.

16 . The computer server of claim 13 , wherein the program instructions further comprise:

determining misclassification measurements in the first plurality of clusters and the second plurality of clusters clustered; and

training the semi-supervised k-means process for improved clustering based on the misclassification measurements.

17 . The computer server of claim 13 , wherein the semi-supervised k-means process is regularized.

18 . A software as a service (SaaS) computer-implemented method for improving a computational efficiency in generating a classifier engine for machine learning, the SaaS computer-implemented comprising:

receiving a plurality of data points and a request for classification services from a remote user through a network connection;

applying, by a local computer server, a semi-supervised k-means process to a first set of data points of the plurality of data points and a second set of data points of the plurality of data points, wherein

the first set of data points is labeled with a first class of a plurality of classes, and

the second set of data points is labeled with a second class of the plurality of classes, different from the first class;

clustering the first set of data points and the second set of data points into a first plurality of clusters and a second plurality of clusters, respectively, using the semi-supervised k-means process;

constructing multi-polytopes for the first plurality of clusters and the second plurality of clusters;

training, based on the constructing of the multi-polytopes, a plurality of support vector machine (SVM) classifiers, wherein each SVM classifier of the plurality of SVM classifiers is trained on a respective pair of clusters within the first plurality of clusters and the second plurality of clusters;

determining, using the trained plurality of SVM classifiers, separation hyperplanes for the first plurality of clusters and the second plurality of clusters;

determining labels for each cluster of the first plurality of clusters and each cluster of the second plurality of clusters, based on the separation hyperplanes; and

providing the determined labels for each cluster of the first plurality of clusters and each cluster of the second plurality of clusters, to the remote user.

19 . The SaaS computer-implemented method of claim 18 , further comprising clustering positive classes of data points of the plurality of data points separately from negative classes of data points of the plurality of data points.

20 . The SaaS computer-implemented method of claim 18 , further comprising:

identifying information from one of the first plurality of clusters or the second plurality of clusters; and

using the identified information as a constraint in determining remaining of the one of the first plurality of clusters or the second plurality of clusters.

21 . The SaaS computer-implemented method of claim 18 , further comprising:

determining misclassification measurements in the first plurality of clusters and the second plurality of clusters clustered; and

training the semi-supervised k-means process for improved clustering based on the misclassification measurements.

22 . The SaaS computer-implemented method of claim 18 , wherein the separation hyperplanes are non-linear boundaries between the respective pair of clusters.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2021
From: PHAN, DZUNG TIEN; NGUYEN, LAM MINH; KALAGNANAM, JAYANT R.; REDDY, CHANDRASEKHARA K.; JAYARAMAN, SRIDEEPIKA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 057663/0581 →
Continuity (1)
Related Publication 20230128821A1 · Apr 27, 2023
References Cited (29)
US 10360517B2 · Koch et al. · 2019 [cited by applicant]
US 10671735B2 · Gupta et al. · 2020 [cited by applicant]
US 10719301B1 · Dasgupta · 2020 [cited by examiner]
US 10747740B2 · Majumdar · 2020 [cited by applicant]
US 11087230B2 · Sharma et al. · 2021 [cited by applicant]
US 20140140610A1 · Tu · 2014 [cited by examiner]
US 20150234863A1 · Lilje · 2015 [cited by examiner]
US 20150262036A1 · Song · 2015 [cited by examiner]
US 20190005324A1 · Anisimovskiy · 2019 [cited by examiner]
US 20210073642A1 · Dribus · 2021 [cited by applicant]
CN 111753874A · 2020 [cited by applicant]
CN 115935266A · 2023 [cited by applicant]
JP 2007115245A · 2007 [cited by applicant]
JP 2023051819A · 2023 [cited by applicant]
Mell, P. et al., “Recommendations of the National Institute of Standards and Technology”; NIST Special Publication 800-145 (2011); 7 Pgs. [cited by applicant]
Disclosed Anonymously, “Embedding of Pairwise Minimax Distance Measures in Classification Tasks”; IP.com No. IPCOM000252182D (2017); 12 pgs. [cited by applicant]
Disclosed Anonymously, “X-Ray Fixed Rad Positioner Health Prediction Using Machine Learning Technique”; IP-com-IPCOM000263345D (2020); 6 pgs. [cited by applicant]
Zhou, M., “Softplus Regressions and Convex Polytopes”; arXiv:1608.06383v1 [stat.ML] (2016); 55 pgs. [cited by applicant]
Casale, P. et al., “Approximate Polytope Ensemble for One-Class Classification”; Pattern Recognition (2013); 11 pgs. [cited by applicant]
Kantchelian, A. et al., “Large-Margin Convex Polytope Machine”; NIPS (2014); 9 pgs. [cited by applicant]
Wulff, S. et al., “Analytic Center Cutting Plane Method for Multiple Kernel Learning”; Ann Math Artif Intell (2013); 17 pgs. [cited by applicant]
Djuric, N. et al., “Growing Adaptive Multi-Hyperplane Machines”; Proceedings of the 37 th International Conference on Machine Learning, Online, PMLR 119 (2020); 10 pgs. [cited by applicant]
Korovkinas, K. et al., “SVM and k-Means Hybrid Method for Textual Data Sentiment Analysis”; Baltic J. Modern Computing (2019); vol. 7:1; pp. 47-60. [cited by applicant]
Varol, E. et al., “HYDRA: Revealing Heterogeneity of Imaging and Genetic Patterns Through a Multiple Max-Margin Discriminative Analysis Framework”; Neuroimage (2017); pp. 346-364. [cited by applicant]
Yao, Y. et al., “K-SVM: An Effective SVM Algorithm Based on K-means Clustering”; Journal of Computers (2013); vol. 8:10; 8 pgs. [cited by applicant]
Wang, Z. et al., “Trading Representability for Scalability: Adaptive Multi-Hyperplane Machine for Nonlinear Classification”; KDD (2011); 10 pgs. [cited by applicant]
Boser, B. et al., “A Training Algorithm for Optimal Margin Classifiers”; COLT (1992); 9pgs. [cited by applicant]
The State Intellectual Property Office of People's Republic of China, “First Office Action”, Dec. 1, 2025, 09 Pages, CN Application No. 202211063633.8. [cited by applicant]
Japan Patent Office, “Decision to Grant a Patent” Jan. 8, 2026, 05 Pages, JP Application No. 2022-153416. [cited by applicant]