IP Library Granted Patent US 11,436,428
Granted Patent B2
US 11,436,428 · App. 15/997,966 · Granted Sep 6, 2022

System and method for increasing data quality in a machine learning process

Inventors: Wallace Trenholm (Toronto, CA); Mark Alexiuk (Winnipeg, CA); Hieu Dang (Winnipeg, CA); Siavash Malektaji (Winnipeg, CA); Kamal Darchinimaragheh (Winnipeg, CA)
G06K9/6218G06K9/6259G06K9/6269G06N20/00G06N20/10G06N3/126G06N5/025G06N7/005
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 11,436,428
App. No.
15/997,966
Granted
Sep 6, 2022
Kind
B2
Abstract

A method and system for increasing data quality of a dataset for semi-supervised machine learning analysis. The method includes: receiving known class label information for a portion of the data in the dataset; receiving clustering parameters from a user; determining a data cleanliness factor, and where the data cleanliness factor is below a predetermined cleanliness threshold: assigning data without class label information as a data point to a cluster using the clustering parameters, each cluster having a cluster class label associated with such cluster; and determining a measure of assignment, and where the measure of assignment for each data point is below a predetermined assignment threshold, receiving a class label for such data points, otherwise, assigning the respective cluster class label to each data point with the respective measure of assignment below the predetermined assignment threshold; and otherwise, outputting the dataset with associated class labels for machine learning analysis.

Claims (43)

1. A method for increasing data quality of a dataset for semi-supervised machine learning analysis, the method executed on one or more processors, the method comprising:

receiving the dataset for semi-supervised machine learning;

receiving known class label information for a portion of the data in the dataset;

receiving clustering parameters from a user;

determining a data cleanliness factor, the data cleanliness factor comprising a scaled measure of corruption or irrelevancy to the machine learning problem, and where the data cleanliness factor is below a predetermined cleanliness threshold:

assigning data without class label information as a data point to a cluster using the clustering parameters, each cluster having a cluster class label associated with such cluster; and

determining a measure of assignment for each data point in each cluster, the measure of assignment comprising a confidence of assignment of an input sample in the dataset to the associated cluster, and where the measure of assignment for each data point is below a predetermined assignment threshold, receiving a class label for such data points, otherwise, assigning the respective cluster class label to each data point with the respective measure of assignment below the predetermined assignment threshold; and

otherwise, outputting the dataset with associated class labels for machine learning analysis.

2. The method of claim 1 , wherein receiving the class label for such data points comprises:

predicting the class label for each of such data points; and

receiving input from the user, the input comprising a determinization of whether each of the class label predictions were successful, where the prediction was successful, associating the predicted class label with such data point, otherwise, discarding the predicted class label associated with such data point.

3. The method of claim 2 , wherein discarding the predicted class label associated with such data point comprises re-assigning the data point as data without class label information to a cluster.

4. The method of claim 2 , wherein predicting the class label for each of such data points comprises using a prediction function, the prediction function comprising at least one of a smoothness or continuity assumption, a cluster assumption, and a manifold assumption.

5. The method of claim 2 , wherein predicting the class label for each of such data points comprises at least one of Manifold-Regularized Support Vector Machines and Laplacian Support Vector Machines.

6. The method of claim 1 , wherein assigning data without class label information as the data point to the cluster comprises:

assigning class labels to each of the clusters based on the number of instances of data with class label information in that cluster;

for each data point without class label information, determining a probability that such data point is associated with each of the clusters; and

associating the class label associated with each cluster to data points without class label information having a greatest probability associated with such cluster.

7. The method of claim 1 , wherein the clustering parameters comprise at least one of a number of clusters, a confidence threshold, and an expert advice required level.

8. The method of claim 1 , wherein the data cleanliness factor is received from the user.

9. The method of claim 1 , wherein the data cleanliness factor is determined by at least one of naive bayes classification, probabilistic networks, rule induction, support vector machines, genetic algorithms, and lazy learning.

10. The method of claim 1 , further comprising, using the machine learning analysis, building a classifier using data with class label information, and, after outputting the dataset with associated class labels, re-building the classifier using the machine learning analysis.

11. A system for increasing data quality of a dataset for semi-supervised machine learning analysis, the system comprising one or more processors, a data storage device, an input device for receiving the dataset for semi-supervised machine learning and for receiving input from a user, and an output device, the one or more processors configured to execute:

receiving known class label information for a portion of the data in the dataset from the input device;

receiving clustering parameters from the user via the input device;

determining a data cleanliness factor, the data cleanliness factor comprising a scaled measure of corruption or irrelevancy to the machine learning problem, and where the data cleanliness factor is below a predetermined cleanliness threshold:

assigning data without class label information as a data point to a cluster using the clustering parameters, each cluster having a cluster class label associated with such cluster; and

determining a measure of assignment for each data point in each cluster, the measure of assignment comprising a confidence of assignment of an input sample in the dataset to the associated cluster, and where the measure of assignment for each data point is below a predetermined assignment threshold, receiving a class label for such data points, otherwise, assigning the respective cluster class label to each data point with the respective measure of assignment below the predetermined assignment threshold; and

otherwise, outputting, by the output device, the dataset with associated class labels for machine learning analysis.

12. The system of claim 11 , wherein receiving the class label for such data points comprises:

predicting the class label for each of such data points; and

receiving input from the user, the input comprising a determinization of whether each of the class label predictions were successful, where the prediction was successful, associating the predicted class label with such data point, otherwise, discarding the predicted class label associated with such data point.

13. The system of claim 12 , wherein discarding the predicted class label associated with such data point comprises re-assigning the data point as data without class label information to a cluster.

14. The system of claim 12 , wherein predicting the class label for each of such data points comprises using a prediction function, the prediction function comprising at least one of a smoothness or continuity assumption, a cluster assumption, and a manifold assumption.

15. The system of claim 12 , wherein predicting the class label for each of such data points comprises at least one of Manifold-Regularized Support Vector Machines and Laplacian Support Vector Machines.

16. The system of claim 11 , wherein assigning data without class label information as the data point to the cluster comprises:

assigning class labels to each of the clusters based on the number of instances of data with class label information in that cluster;

for each data point without class label information, determining a probability that such data point is associated with each of the clusters; and

associating the class label associated with each cluster to data points without class label information having a greatest probability associated with such cluster.

17. The system of claim 11 , wherein the clustering parameters comprise at least one of a number of clusters, a confidence threshold, and an expert advice required level.

18. The system of claim 11 , wherein the data cleanliness factor is received from the user.

19. The system of claim 11 , wherein the data cleanliness factor is determined by at least one of naive bayes classification, probabilistic networks, rule induction, support vector machines, genetic algorithms, and lazy learning.

20. The system of claim 11 , wherein, using the machine learning analysis, the one or more processors is further configured to execute: building a classifier using data with class label information; and, after outputting the dataset with associated class labels, re-building the classifier using the machine learning analysis.

Assignments (1)
SECURITY INTEREST Recorded Mar 1, 2023
From: SIGHTLINE INNOVATION INC.
To: MANITOBA DEVELOPMENT CORPORATION
Reel/Frame 062899/0699 →
Continuity (2)
Provisional Application 62515657 · Jun 6, 2017
Related Publication 20190019061A1 · Jan 17, 2019