IP Library Granted Patent US 11,625,361
Granted Patent B2
US 11,625,361 · App. 16/855,428 · Granted Apr 11, 2023

Automated file naming and file organization using machine learning

Inventors: Sathish Kumar Bikumala (Round Rock, TX); Ares Sakamoto (Lexington, TX); Deepak NagarajeGowda (Cary, NC)
Assignee: Dell Products L.P.
G06F16/164G06F16/13G06N20/00
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,625,361
App. No.
16/855,428
Granted
Apr 11, 2023
Kind
B2
Abstract

In some examples, before saving a file, a device analyzes contents (e.g., text and images) of the file to create a bag of words. The device performs Latent Dirichlet Allocation of the bag of words to determine topics included in the file and orders the topics in descending order of frequency. The device generates a particular name of the file based on the ordered topics and automatically save (or suggest saving) the file with the particular name. The device determines, based on the ordered topics, a folder name of a folder in which to store the file. If an existing folder has the folder name, then the device saves the file in the existing folder. If not, then the device creates a new folder with the folder name and saves the file in the new folder.

Claims (107)

1. A method comprising:

determining, by the one or more processors of a computing device, that a file is to be saved to a storage device of the computing device;

performing, by the one or more processors, an analysis of contents of the file to create a bag of words, wherein performing the analysis comprises:

segmenting text into one or more sentences;

determining a plurality of tokens in each of the one or more sentences;

performing lemmatization of each token of the plurality of tokens;

removing stop words from the plurality of tokens to creating remaining tokens;

determine a part of speech for each token in the remaining tokens;

creating a data structure representing the remaining tokens in each of the one or more sentences; and

determining the plurality of topics based at least in part on the data structure representing the remaining tokens in each of the one or more sentences;

performing, by the one or more processors, a Latent Dirichlet Allocation of the bag of words;

determining, by the one or more processors and based on the Latent Dirichlet Allocation, a plurality of topics included in the file;

ordering, by the one or more processors, the plurality of topics in a descending order of a frequency of individual topics in the plurality of topics to create an ordered set of topics;

generating, by the one or more processors, a particular name of the file based on the ordered set of topics; and

automatically saving, by the one or more processors, the file with the particular name.

2. The method of claim 1 , further comprising:

determining a folder name of a folder in which to store the file based on the ordered set of topics.

3. The method of claim 2 , further comprising:

determining that an existing folder among a set of accessible folders has the folder name; and

saving the file in the existing folder.

4. The method of claim 2 , further comprising:

determining that a set of accessible folders does not include a particular folder with the folder name;

creating a new folder with the folder name; and

saving the file in the new folder.

5. The method of claim 1 , wherein performing the analysis of the contents of the file to create the bag of words comprises:

determining text included in the file;

performing a first analysis of the text to create a first bag of words;

determining one or more images in the file;

performing a second analysis of the one or more images to create a second bag of words; and

combining the first bag of words and the second bag of words to create the bag of words.

6. The method of claim 5 , wherein performing the second analysis comprises:

determining one or more regions in individual images of the one or more images, wherein individual regions of the one or more regions includes at least one object;

determining a text-based description to describe the at least one object in individual regions;

storing the text-based description of individual regions in the individual images in the second bag of words.

7. A computing device comprising:

one or more processors; and

one or more non-transitory computer readable media to store instructions executable by the one or more processors to perform operations comprising:

determining that a file is to be saved to the computing device;

performing an analysis of contents of the file to create a bag of words, wherein performing the analysis comprises:

segmenting text into one or more sentences;

determining a plurality of tokens in each of the one or more sentences;

performing lemmatization of each token of the plurality of tokens;

removing stop words from the plurality of tokens to creating remaining tokens;

determine a part of speech for each token in the remaining tokens;

creating a data structure representing the remaining tokens in each of the one or more sentences; and

determining the plurality of topics based at least in part on the data structure representing the remaining tokens in each of the one or more sentences;

performing a Latent Dirichlet Allocation of the bag of words;

determining, based on the Latent Dirichlet Allocation, a plurality of topics included in the file;

ordering the plurality of topics in a descending order of a frequency of individual topics in the plurality of topics to create an ordered set of topics;

generating a particular name of the file based on the ordered set of topics; and

automatically saving the file with the particular name.

8. The computing device of claim 7 , wherein the operations comprise:

determining a folder name of a folder in which to store the file based on the ordered set of topics;

based on determining that an existing folder among a set of accessible folders has the folder name, saving the file in the existing folder; and

based on determining that the set of accessible folders does not include a particular folder with the folder name:

creating a new folder with the folder name; and

saving the file in the new folder.

9. The computing device of claim 7 , further comprising:

saving the file with the particular name in a particular folder;

wherein:

the particular folder includes one or more additional files; and

individual files of the one or more additional files include at least one topic of the plurality of topics included in the file.

10. The computing device of claim 7 , wherein performing the analysis of the contents of the file to create the bag of words comprises:

determining text included in the file;

performing a first analysis of the text to create a first bag of words;

determining one or more images in the file;

performing a second analysis of the one or more images to create a second bag of words; and

combining the first bag of words and the second bag of words to create the bag of words.

11. The computing device of claim 10 , wherein performing the second analysis comprises:

determining one or more regions in individual images of the one or more images, wherein individual regions of the one or more regions includes at least one object;

determining a text-based description to describe the at least one object in individual regions; and

storing the text-based description of individual regions in the individual images in the second bag of words.

12. One or more non-transitory computer readable media storing executable by one or more processors to perform operations comprising:

determining that a file is to be saved to the computing device;

performing an analysis of contents of the file to create a bag of words, wherein performing the analysis comprises:

segmenting text into one or more sentences;

determining a plurality of tokens in each of the one or more sentences;

performing lemmatization of each token of the plurality of tokens;

removing stop words from the plurality of tokens to creating remaining tokens;

determine a part of speech for each token in the remaining tokens;

creating a data structure representing the remaining tokens in each of the one or more sentences; and

determining the plurality of topics based at least in part on the data structure representing the remaining tokens in each of the one or more sentences;

performing a Latent Dirichlet Allocation of the bag of words;

determining, based on the Latent Dirichlet Allocation, a plurality of topics included in the file;

ordering the plurality of topics in a descending order of a frequency of individual topics in the plurality of topics to create an ordered set of topics;

generating a particular name of the file based on the ordered set of topics; and

automatically saving the file with the particular name.

13. The one or more non-transitory computer readable media of claim 12 , wherein the operations comprise:

determining a folder name of a folder in which to store the file based on the ordered set of topics;

based on determining that an existing folder among a set of accessible folders has the folder name, saving the file in the existing folder; and

based on determining that the set of accessible folders does not include a particular folder with the folder name:

creating a new folder with the folder name; and

saving the file in the new folder.

14. The one or more non-transitory computer readable media of claim 12 , further comprising:

saving the file with the particular name in a particular folder that includes one or more additional files, wherein, each file of the one or more additional files includes at least one topic of the plurality of topics.

15. The one or more non-transitory computer readable media of claim 12 , further comprising:

saving the file with the particular name in a particular folder having a particular folder name, wherein the particular folder name includes at least one topic of the plurality of topics.

16. The one or more non-transitory computer readable media of claim 12 , wherein performing the analysis of the contents of the file to create the bag of words comprises:

determining text included in the file;

performing a first analysis of the text to create a first bag of words;

determining one or more images in the file;

performing a second analysis of the one or more images to create a second bag of words; and

combining the first bag of words and the second bag of words to create the bag of words.

17. The one or more non-transitory computer readable media of claim 16 , wherein performing the second analysis comprises:

determining one or more regions in individual images of the one or more images, wherein individual regions of the one or more regions includes at least one object;

determining a text-based description to describe the at least one object in individual regions; and

storing the text-based description of individual regions in the individual images in the second bag of words.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0081) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0441 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0917) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0509 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052852/0022) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0582 →
RELEASE OF SECURITY INTEREST AT REEL 052771 FRAME 0906 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0298 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052852/0022 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0081 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0917 →
SECURITY AGREEMENT Recorded May 28, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052771/0906 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 22, 2020
From: BIKUMALA, SATHISH KUMAR; SAKAMOTO, ARES; NAGARAJEGOWDA, DEEPAK
To: DELL PRODUCTS L. P.
Reel/Frame 052467/0794 →