IP Library › Granted Patent US 12,198,023
Granted Patent B2
US 12,198,023 · App. 17/280,902 · Granted Jan 14, 2025

Method and device for creating and training machine learning models

Inventors: Mridul Balaraman (Bangalore, IN); Madhusudan Singh (Bangalore, IN); Amit Kumar (Bangalore, IN); Mrinal Gupta (Jammu, IN); Vidya Suresh (Bangalore, IN); Bhupinder Singh (Patiala, IN); Kartik Nivritti Kadam (Hyderabad, IN)
G06N20/00G06F18/2113G06F18/22G06F18/2321
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,198,023
App. No.
17/280,902
Filed
Mar 28, 2021
Granted
Jan 14, 2025
Kind
B2
Art Unit
2124
USPC
706/12
Abstract

A method and a device for creating and training machine learning models is disclosed. In an embodiment, a method for training a machine learning model for identifying entities from data includes creating a first plurality of clusters from a first plurality of data samples in a first dataset and a second plurality of clusters from a second plurality of data samples in a second dataset. The method further includes determining a rank for each of the first plurality of clusters and a rank for each of the second plurality of clusters. The method includes retraining the machine learning model using at least one of the first plurality of clusters weighted based on the rank determined for each of the first plurality of clusters and at least one of the second plurality of clusters weighted based on the rank determined for each of the second plurality of clusters.

Claims (71)

1. A method for training a machine learning model for identifying entities from data, the method comprising:

creating a first plurality of clusters from a first plurality of data samples in a first dataset, based on a first set of entity attributes associated with the first plurality of data samples and a second plurality of clusters from a second plurality of data samples in a second dataset, based on a second set of entity attributes associated with the second plurality of data samples, wherein each of the first dataset and the second dataset are used to train a machine learning model to identify an entity from data, and wherein the first plurality of data samples comprise the entity and the second plurality of data samples do not comprise the entity;

determining a rank for each of the first plurality of clusters based on a probability of identification, as determined by the machine learning model, of an associated set of data samples within the first plurality of data samples as the entity;

determining a rank for each of the second plurality of clusters based on a probability of mismatch, as determined by the machine learning model, of an associated set of data samples within the second plurality of samples, with the entity; and

retraining the machine learning model using at least one of the first plurality of clusters weighted based on the rank determined for each of the first plurality of clusters and at least one of the second plurality of clusters weighted based on the rank determined for each of the second plurality of clusters.

2. The method of claim 1 , wherein the entity comprises at least one of a character, an animal, an object, a human, text, or sensor data.

3. The method of claim 2 , wherein, when the entity comprises a character, the first set of attributes and the second set of attributes comprises at least one of a size of the character, a font of the character, a style associated with the character, a thickness of the character, or a color of the character.

4. The method of claim 1 , wherein the first set of attributes and the second set of attributes comprises at least one feature descriptive of the entity.

5. The method of claim 1 , wherein determining a rank for a cluster from the first plurality of clusters comprises:

determining, by the machine learning model, a probability of data samples within the cluster;

determining, by the machine learning model, the average probability of the data samples within each of the first plurality of clusters;

determining a summation of the average probability of each of the first plurality of clusters based on the average probability of the data samples within each of the first plurality of clusters;

computing a score for the cluster based on the division of the average probability of the cluster by the summation of the average probability of each of the first plurality of clusters; and

computing a rank of the cluster as subtraction of the score of the cluster.

6. The method of claim 1 , wherein determining a rank for a cluster from the second plurality of clusters comprises:

determining, by the machine learning model a probability of data samples within the cluster;

determining, by the machine learning model, the average probability of the data samples within each of the second plurality of clusters;

determining a summation of the average probability of each of the second plurality of clusters based on the average probability of the data samples within each of the second plurality of clusters; and

computing a rank for the cluster based on the division of the average probability of the cluster by the summation of the average probability of each of the second plurality of clusters.

7. The method of claim 1 further comprising creating the first dataset comprising the first plurality of data samples and the second dataset comprising the second plurality of data samples.

8. The method of claim 7 , wherein creating the first dataset and the second dataset comprises:

receiving, by the machine learning model, a first data sample comprising the entity and a second data sample not comprising the entity;

identifying, by the machine learning model, a first set of results matching with the first data sample and a second set of results matching with the second data sample;

determining accuracy in identification of each result in a subset of the first set of results, based on a user input corresponding to the first data sample, wherein the subset is selected based on a predefined criterion; and

determining error in misidentification of each result in a subset of the second set of results, based on a user input corresponding to the second data sample, wherein the subset is selected based on the predefined criterion.

9. The method of claim 8 , further comprising adding the first data sample to the first dataset, when each result in the subset of the first set of results does not match with the user input.

10. The method of claim 7 , further comprising adding the second data sample to the second dataset, when each result in the subset of the second set of results does not match with the user input.

11. The method of claim 1 further comprising testing accuracy of the retrained machine learning model in identifying the entity from each of the first plurality of data samples and discarding each of the second plurality of data samples, wherein testing the accuracy comprises:

determining whether the accuracy of the retrained machine learning model is greater than a predefined accuracy threshold; and

retraining the retrained machine learning model, when the accuracy of the retrained machine learning model is less than the predefined accuracy threshold.

12. A method for creating a machine learning model for identifying entities from data, the method comprising:

creating a first plurality of clusters from a first plurality of data samples in a first dataset, based on a first set of entity attributes associated with the first plurality of data samples and a second plurality of clusters from a second plurality of data samples in a second dataset, based on a second set of entity attributes associated with the second plurality of data samples, wherein the first plurality of data samples comprise an entity and the second plurality of data samples do not comprise the entity;

assigning the same rank to each of the first plurality of clusters based on the total number of the first plurality of clusters;

determining a rank for each of the second plurality of clusters based on similarity with at least one cluster from the first plurality of clusters, wherein a cluster from the second plurality of clusters having highest similarity with the at least one cluster is assigned the lowest rank and a cluster from the second plurality of clusters having lowest similarity with the at least one cluster is assigned the highest rank; and

creating a machine learning model to identify the entity, wherein the machine learning model is created using at least one of the first plurality of clusters weighted based on the rank assigned to each of the first plurality of clusters and at least one of the second plurality of clusters weighted based on the rank determined for each of the second plurality of clusters.

13. The method of claim 12 further comprising:

determining a retraining rank for each of the first plurality of clusters based on a probability of identification, as determined by the machine learning model, of an associated set within the first plurality of data samples as the entity;

determining a retraining rank for each of the second plurality of clusters based on a probability of mismatch, as determined by the machine learning model, of an associated set within the second plurality of data samples with the entity; and

retraining the machine learning model using at least one of the first plurality of clusters weighted based on the retraining rank determined for each of the first plurality of clusters and at least one of the second plurality of clusters weighted based on the retraining rank determined for each of the second plurality of clusters.

14. The method of claim 12 further comprising testing accuracy of the machine learning model in identifying the entity from each of the first plurality of data samples and discarding each of the second plurality of data samples, wherein testing the accuracy comprises:

determining whether the accuracy of the retrained machine learning model is greater than a predefined accuracy threshold; and

retraining the machine learning model, when the accuracy of the retrained machine learning model is less than the predefined accuracy threshold.

15. An entity identification device for training a machine learning model for identifying entities from data, the entity identification device comprising:

a processor; and

a memory communicatively coupled to the processor, wherein the memory stores processor instructions, which, on execution, causes the processor to:

create a first plurality of clusters from a first plurality of data samples in a first dataset, based on a first set of entity attributes associated with the first plurality of data samples and a second plurality of clusters from a second plurality of data samples in a second dataset, based on a second set of entity attributes associated with the second plurality of data samples, wherein each of the first dataset and the second dataset are used to train a machine learning model to identify an entity from data, and wherein the first plurality of data samples comprise the entity and the second plurality of data samples do not comprise the entity;

determine a rank for each of the first plurality of clusters based on a probability of identification, as determined by the machine learning model, of an associated set of data samples within the first plurality of data samples as the entity;

determine a rank for each of the second plurality of clusters based on a probability of mismatch, as determined by the machine learning model, of an associated set of data samples within the second plurality of samples, with the entity; and

retrain the machine learning model using at least one of the first plurality of clusters weighted based on the rank determined for each of the first plurality of clusters and at least one of the second plurality of clusters weighted based on the rank determined for each of the second plurality of clusters.

16. The entity identification device of claim 15 , wherein to determine a rank for a cluster from the first plurality of clusters, the processor instructions further cause the processor to:

determine, by the machine learning model, a probability of data samples within the cluster;

determine, by the machine learning model, the average probability of the data samples within each of the first plurality of clusters;

determine a summation of the average probability of each of the first plurality of clusters based on the average probability of the data samples within each of the first plurality of clusters;

compute a score for the cluster based on the division of the average probability of the cluster by the summation of the average probability of each of the first plurality of clusters; and

compute a rank of the cluster as subtraction of the score of the cluster.

17. The entity identification device of claim 15 , wherein to determine a rank for a cluster from the second plurality of clusters, the processor instructions further cause the processor to:

determine, by the machine learning model, a probability of data samples within the cluster;

determine, by the machine learning model, the average probability of the data samples within each of the second plurality of clusters;

determine a summation of the average probability of each of the second plurality of clusters based on the average probability of the data samples within each of the second plurality of clusters; and

compute a rank for the cluster based on the division of the average probability of the cluster by the summation of the average probability of each of the second plurality of clusters.

18. The entity identification device of claim 15 , wherein the processor instructions further cause the processor to:

create the first dataset comprising the first plurality of data samples and the second dataset comprising the second plurality of data samples, and wherein to create the first dataset and the second dataset, the processor instructions further cause the processor to:

receive, by the machine learning model, a first data sample comprising the entity and a second data sample not comprising the entity;

identify, by the machine learning model, a first set of results matching with the first data sample and a second set of results matching with the second data sample;

determine accuracy in identification of each result in a subset of the first set of results, based on a user input corresponding to the first data sample, wherein the subset is selected based on a predefined criterion; and

determine error in misidentification of each result in a subset of the second set of results, based on a user input corresponding to the second data sample, wherein the subset is selected based on the predefined criterion;

add the first data sample to the first dataset, when each result in the subset of the first set of results does not match with the user input; and

add the second data sample to the second dataset, when each result in the subset of the second set of results does not match with the user input.

19. The entity identification device of claim 15 , wherein the processor instructions further cause the processor to test accuracy of the retrained machine learning model in identifying the entity from each of the first plurality of data samples and discarding each of the second plurality of data samples, wherein to test the accuracy, the processor instructions further cause the processor to:

determine whether the accuracy of the retrained machine learning model is greater than a predefined accuracy threshold; and

retrain the retrained machine learning model, when the accuracy of the retrained machine learning model is less than the predefined accuracy threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 28, 2021
From: BALARAMAN, MRIDUL; SINGH, MADHUSUDAN; KUMAR, AMIT; GUPTA, MRINAL; SURESH, VIDYA; SINGH, BHUPINDER; NIVRITTI, KARTIK KADAM
To: L&T TECHNOLOGY SERVICES LIMITED
Reel/Frame 055744/0284 →
Priority Claims (2)
IN 201841036688 · Sep 28, 2018 · national
IN 201841050033 · Dec 31, 2018 · national
Continuity (1)
Related Publication 20220004921A1 · Jan 6, 2022
References Cited (3)
Chen, Chao, and Mei-Ling Shyu. “Clustering-based binary-class classification for imbalanced data sets.” In 2011 IEEE International Conference on Information Reuse & Integration, pp. 384-389. IEEE, 2011. (Year: 2011). [cited by examiner]
Yu, Hwanjo, Jiong Yang, and Jiawei Han. “Classifying large data sets using SVMs with hierarchical clusters.” In Proceedings of the ninth ACM SIGKDD international conference on Knowledge discovery and data mining, pp. 30… [cited by examiner]
Zhou, Yangming, Yangguang Liu, Jiangang Yang, Xiaoqi He, and Liangliang Liu. “A taxonomy of label ranking algorithms.” J. Comput. 9, No. 3 (2014): 557-565. (Year: 2014). [cited by examiner]