IP Library Granted Patent US 11,989,632
Granted Patent B2
US 11,989,632 · App. 17/138,110 · Granted May 21, 2024

Apparatuses, methods, and computer program products for programmatically parsing, classifying, and labeling data objects

Inventors: Rupal Haribhakti (Cupertino, CA); Aaron Gentleman (San Jose, CA)
Assignees: ATLASSIAN PTY LTD; ATLASSIAN US, INC.
G06N20/10G06F18/214G06F18/217G06F18/2411G06F18/2451
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,989,632
App. No.
17/138,110
Granted
May 21, 2024
Kind
B2
Abstract

Methods, apparatuses, or computer program products are disclosed providing for the dynamic data classification of data objects. Examples enable prediction of candidate data classification labels for data objects associated with one or more applications, services, or computing devices. Examples enable the assignment of one or more data classification labels to a data object for transmission to one or more computing devices. Examples enable the interactive and progressive application of machine learning techniques to data classification systems to assign data classification labels with probable certainty. Examples enable the tracking, monitoring, storage, sorting, and retrieval of labeled data objects. Examples provide for access control configuration of services to restrict or allow access to data objects based on data classifications and other service parameters.

Claims (48)

1. An apparatus for applying data classification labels to a data object, the apparatus comprising at least one processor and at least one non-transitory memory including program code that with the at least one processor, cause the apparatus to:

retrieve one or more data objects from a data object repository, wherein the one or more data objects each comprise a data object identifier, an origin identifier, and one or more text based data elements;

parse the one or more text based data elements into a plurality of word based data elements;

generate a vector data object from the plurality of word based data elements, the vector data object comprising one or more vector data elements;

map the vector data object to a trained data classification vector data set to determine a data classification label for the vector data object, wherein the trained data classification vector data set is generated by training a data classification learning model with a labeled data object repository; and

update the labeled data object repository to associate the data classification label for the vector data object with the plurality of word based data elements, the data object identifier, and the origin identifier.

2. The apparatus according to claim 1 , wherein an access control configuration is generated based on one or more predefined access parameters comprising one or more of the data object identifier, the origin identifier, one or more data classification labels, one or more service identifiers, or one or more application programming interfaces, and wherein the access control configuration comprises one or more rules to instruct at least a service proxy to allow or restrict access to a labeled data object based on the one or more predefined access parameters.

3. The apparatus according to claim 1 , wherein the vector data object and the trained data classification vector data set each define a common vector data structure.

4. The apparatus according to claim 1 , wherein the vector data object and the trained data classification vector data set each define one or more common vector data elements.

5. The apparatus according to claim 1 , wherein the data classification learning model comprises a support vector classifier.

6. The apparatus according to claim 1 , wherein the data classification learning model comprises a linear support vector classifier.

7. The apparatus according to claim 1 , wherein the data object repository is the labeled data object repository.

8. The apparatus according to claim 1 , wherein the mapping of the vector data object to the trained data classification vector data set generates at least one candidate data classification label for the vector data object, and wherein the at least one non-transitory memory including the program code that with the at least one processor, further cause the apparatus to:

output the at least one candidate data classification label to a truth interface;

receive a truth selection indication in response to outputting the at least one candidate data classification label to the truth interface; and

determine the data classification label for the vector data object based on the truth selection indication.

9. The apparatus according to claim 1 , wherein the at least one non-transitory memory including the program code that with the at least one processor, further cause the apparatus to:

remove, from the one or more text based data elements, one or more stop word based data elements, wherein the one or more stop word based data elements comprises one or more of a period, comma, underscore, or space.

10. The apparatus according to claim 1 , wherein the at least one non-transitory memory including the program code that with the at least one processor, further cause the apparatus to:

generate, from the plurality of word based data elements, a second plurality of word based data elements, wherein the second plurality of word based data elements comprise lower case text.

11. The apparatus according to claim 1 , wherein the at least one non-transitory memory including the program code that with the at least one processor, further cause the apparatus to:

determine, based on the one or more data objects, an application programming interface pathway associated with the one or more data objects; and

generate, based on at least the vector data object and the application programming interface pathway, a second vector data object; and

map the second vector data object to a second trained data classification vector data set to determine at least a second data classification label for the vector data object.

12. The apparatus according to claim 1 , wherein a respective data classification label comprises one or more classifications of user generated content, personally identifiable information, usage related data, security related data, specific related data, or commerce related data.

13. The apparatus according to claim 12 , wherein the respective data classification label further comprises one or more sub-classifications associated with user generated content, personally identifiable information, usage related data, security related data, specific related data, or commerce related data.

14. The apparatus according to claim 1 , wherein the at least one non-transitory memory including the program code that with the at least one processor, further cause the apparatus to:

determine an amount of commonality between the plurality of word based data elements of the vector data object and one or more descriptive terms mapped to the data classification label for the vector data object; and

determine a data classification label accuracy score based on at least the amount of commonality.

15. The apparatus according to claim 14 , wherein the at least one non-transitory memory including the program code that with the at least one processor, further cause the apparatus to:

retrieve a data classification label accuracy score threshold from a data object repository;

determine that the data classification label accuracy score is less than the data classification label accuracy score threshold; and

in response, map the vector data object to another trained data classification vector data set to determine another data classification label for the vector data object.

16. A non-transitory computer readable storage medium comprising instructions for applying data classification labels to a data object, when executed by a processor, cause an apparatus comprising at least one processor and at least one memory to:

retrieve one or more data objects from a data object repository, wherein the one or more data objects each comprise a data object identifier, an origin identifier, and one or more text based data elements;

parse the one or more text based data elements into a plurality of word based data elements;

generate a vector data object from the plurality of word based data elements, the vector data object comprising one or more vector data elements;

map the vector data object to a trained data classification vector data set to determine a data classification label for the vector data object, wherein the trained data classification vector data set is generated by training a data classification learning model with a labeled data object repository; and

update the labeled data object repository to associate the data classification label for the vector data object with the plurality of word based data elements, the data object identifier, and the origin identifier.

17. The non-transitory computer readable storage medium according to claim 16 , wherein an access control configuration is generated based on one or more predefined access parameters comprising one or more of the data object identifier, the origin identifier, one or more data classification labels, one or more service identifiers, or one or more application programming interfaces, and wherein the access control configuration comprises one or more rules to instruct at least a service proxy to allow or restrict access to a labeled data object based on the one or more predefined access parameters.

18. The non-transitory computer readable storage medium according to claim 16 , wherein the vector data object and the trained data classification vector data set each define a common vector data structure.

19. The non-transitory computer readable storage medium according to claim 16 , wherein the vector data object and the trained data classification vector data set each define one or more common vector data elements.

20. A computer implemented method for applying data classification labels to a data object, comprising:

retrieving one or more data objects from a data object repository, wherein the one or more data objects each comprise a data object identifier, an origin identifier, and one or more text based data elements;

parsing the one or more text based data elements into a plurality of word based data elements;

generating a vector data object from the plurality of word based data elements, the vector data object comprising one or more vector data elements;

mapping the vector data object to a trained data classification vector data set to determine a data classification label for the vector data object, wherein the trained data classification vector data set is generated by training a data classification learning model with a labeled data object repository; and

updating the labeled data object repository to associate the data classification label for the vector data object with the plurality of word based data elements, the data object identifier, and the origin identifier.

Assignments (2)
CHANGE OF NAME Recorded Apr 9, 2024
From: ATLASSIAN, INC.
To: ATLASSIAN US, INC.
Reel/Frame 067055/0909 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2020
From: HARIBHAKTI, RUPAL; GENTLEMAN, AARON
To: ATLASSIAN PTY LTD; ATLASSIAN, INC.
Reel/Frame 054778/0152 →
Continuity (1)
Related Publication 20220207429A1 · Jun 30, 2022
Cited By (2)
US 12,367,428 US 12,438,766