IP Library Granted Patent US 11,397,754
Granted Patent B2
US 11,397,754 · App. 16/790,984 · Granted Jul 26, 2022

Context-based keyword grouping

Inventors: Yan Luo (Concord, CA); Rahamim Katan (Modiin, IL); Gary Mazo (San Jose, CA); Monvorath Phongpaibul (Bangkok, TH); Tala El Hallak (Toronto, CA); Stanislav Georgiev (Thornhill, CA); Hongxia Li (Markham, CA)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F16/285G06F16/252G06F40/295G06F8/70
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,397,754
App. No.
16/790,984
Granted
Jul 26, 2022
Kind
B2
Abstract

Techniques for context-based keyword grouping for business rule mining are described herein. An aspect includes determining, based on a first corpus, a first list of keywords. Another aspect includes constructing a co-occurrence matrix based on the first list of keywords. Another aspect includes applying a clustering algorithm to the co-occurrence matrix to determine a first plurality of keyword groups. Another aspect includes presenting the first plurality of keyword groups to a user via a user interface.

Claims (71)

1. A computer-implemented method comprising:

determining, by a processor, based on a first corpus comprising logic for computer code, a first list of keywords;

ranking, by the processor, the first list of keywords;

constructing, by the processor, a co-occurrence matrix based on a ranking of the first list of keywords such that each entry in the co-occurrence matrix corresponds to a pair of keywords from the first list of keywords, wherein a count of each instance of the pair of keywords in the co-occurrence matrix relates to the first corpus;

applying, by the processor, a clustering algorithm to the co-occurrence matrix to determine a first plurality of keyword groups; and

presenting, by the processor, the first plurality of keyword groups to a user via a user interface, wherein the first plurality of keyword groups relate to the logic for modernizing the computer code, the first plurality of keywords groups further relating to at least one business decision executable by the computer code.

2. The method of claim 1 , wherein the first corpus comprises application source code.

3. The method of claim 1 , further comprising:

filtering the first list of keywords to determine a first reduced keyword list; and

constructing the co-occurrence matrix based on the first reduced keyword list.

4. The method of claim 1 , further comprising:

determining, based on a second corpus, a second list of keywords;

performing latent Dirichlet allocation (LDA) analysis based on the second corpus and the second list of keywords to determine a second plurality of keyword groups; and

presenting the second plurality of keyword groups to the user via the user interface.

5. The method of claim 4 , wherein performing LDA analysis based on the second corpus and the second list of keywords to determine a second plurality of keyword groups comprises:

defining a number of topics for the LDA analysis, wherein the number of topics is defined based on a number of business rule packages that are defined for the second corpus;

determining a respective importance score for each keyword of the second list of keywords;

ranking the second list of keywords based on the determined importance scores;

determining a second reduced keyword list based on the ranked second list of keywords; and

performing the LDA analysis based on the defined number of topics and the second reduced keyword list.

6. The method of claim 4 , wherein the second corpus comprises unstructured enterprise artifacts.

7. The method of claim 1 , further comprising:

receiving input from the user via the user interface; and

modifying the first plurality of keyword groups based on the user input.

8. A system comprising:

a memory having computer readable instructions; and

one or more processors for executing the computer readable instructions, the computer readable instructions controlling the one or more processors to perform operations comprising:

determining, based on a first corpus comprising logic for computer code, a first list of keywords;

ranking, by the processor, the first list of keywords;

constructing a co-occurrence matrix based on a ranking of the first list of keywords such that each entry in the co-occurrence matrix corresponds to a pair of keywords from the first list of keywords, wherein a count of each instance of the pair of keywords in the co-occurrence matrix relates to the first corpus;

applying a clustering algorithm to the co-occurrence matrix to determine a first plurality of keyword groups; and

presenting the first plurality of keyword groups to a user via a user interface, wherein the first plurality of keyword groups relate to the logic for modernizing the computer code, the first plurality of keywords groups further relating to at least one business decision executable by the computer code.

9. The system of claim 8 , wherein the first corpus comprises application source code.

10. The system of claim 8 , further comprising:

filtering the first list of keywords to determine a first reduced keyword list; and

constructing the co-occurrence matrix based on the first reduced keyword list.

11. The system of claim 8 , further comprising:

determining, based on a second corpus, a second list of keywords;

performing latent Dirichlet allocation (LDA) analysis based on the second corpus and the second list of keywords to determine a second plurality of keyword groups; and

presenting the second plurality of keyword groups to the user via the user interface.

12. The system of claim 11 , wherein performing LDA analysis based on the second corpus and the second list of keywords to determine a second plurality of keyword groups comprises:

defining a number of topics for the LDA analysis, wherein the number of topics is defined based on a number of business rule packages that are defined for the second corpus;

determining a respective importance score for each keyword of the second list of keywords;

ranking the second list of keywords based on the determined importance scores;

determining a second reduced keyword list based on the ranked second list of keywords; and

performing the LDA analysis based on the defined number of topics and the second reduced keyword list.

13. The system of claim 12 , wherein the second corpus comprises unstructured enterprise artifacts.

14. The system of claim 8 , further comprising:

receiving input from the user via the user interface; and

modifying the first plurality of keyword groups based on the user input.

15. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform operations comprising:

determining, based on a first corpus comprising logic for computer code, a first list of keywords;

ranking, by the processor, the first list of keywords;

constructing a co-occurrence matrix based on the first list of keywords such that each entry in the co-occurrence matrix corresponds to a pair of keywords from the first list of keywords, wherein a count of each instance of the pair of keywords in the co-occurrence matrix relates to the first corpus;

applying a clustering algorithm to the co-occurrence matrix to determine a first plurality of keyword groups; and

presenting the first plurality of keyword groups to a user via a user interface, wherein the first plurality of keyword groups relate to the logic for modernizing the computer code, the first plurality of keywords groups further relating to at least one business decision executable by the computer code.

16. The computer program product of claim 15 , wherein the first corpus comprises application source code.

17. The computer program product of claim 15 , further comprising:

filtering the first list of keywords to determine a first reduced keyword list; and

constructing the co-occurrence matrix based on the first reduced keyword list.

18. The computer program product of claim 15 , further comprising:

determining, based on a second corpus, a second list of keywords;

performing latent Dirichlet allocation (LDA) analysis based on the second corpus and the second list of keywords to determine a second plurality of keyword groups; and

presenting the second plurality of keyword groups to the user via the user interface.

19. The computer program product of claim 18 , wherein performing LDA analysis based on the second corpus and the second list of keywords to determine a second plurality of keyword groups comprises:

defining a number of topics for the LDA analysis, wherein the number of topics is defined based on a number of business rule packages that are defined for the second corpus;

determining a respective importance score for each keyword of the second list of keywords;

ranking the second list of keywords based on the determined importance scores;

determining a second reduced keyword list based on the ranked second list of keywords; and

performing the LDA analysis based on the defined number of topics and the second reduced keyword list.

20. The computer program product of claim 18 , wherein the second corpus comprises unstructured enterprise artifacts.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2020
From: LUO, YAN; KATAN, RAHAMIM; MAZO, GARY; PHONGPAIBUL, MONVORATH; EL HALLAK, TALA; GEORGIEV, STANISLAV; LI, HONGXIA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 051822/0232 →
Continuity (1)
Related Publication 20210256036A1 · Aug 19, 2021