# US 2019/0318366 A1 · Methods and apparatus for resolving compliance issues

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0318366 A1
- Document ID: US20190318366A1
- Status: Published application
- Kind: A1
- Application number: 16/453,649
- Filed: 2019-06-26
- Published: 2019-10-17
- Earliest claimed: 2019-06-26
- Assignees: Intel Corporation
- Applicants: Intel Corporation
- Inventors: Marcos Carranza; Brian Cremeans; Krishna Surya; Mats Agerstam; Shengtian Zhou; Maria Ramirez Loaiza; Cesar Martinez-Spessot; Mohammad Mejbah ul Alam; Dario Oliver; Justin Gottschlich
- Web page: https://patentgrep.com/patent/US20190318366A1

## CPC

- G06Q 30/018: Certifying business or products
- G06F 16/285: {Clustering or classification}
- G06N 3/0442: characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
- G06N 3/08: Learning methods
- G06N 3/09: Supervised learning
- G06N 5/04: Inference or reasoning models
- G06N 20/00: Machine learning
- G06N 3/044: Recurrent networks, e.g. Hopfield networks
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

An apparatus includes a feature extractor to extract features from input data, the features including descriptive information corresponding to a function of the input data, an inference generator to classify the features into a group indicative of a semantic property, a programming pattern, or a compliance type of the function of the input data, assign a cluster identifier to the features based on a prediction that the features are classified into the group, and retrieve solutions from a database that correspond to the cluster identifier, and a suggestion determiner to generate a suggestion list by building a pool of suggestions to present to a user.

## Claims

### Claim 1

An apparatus for detecting a compliance issue comprising:
a feature extractor to extract a plurality of features from input data corresponding to the compliance issue and the plurality of features including descriptive information corresponding to a function of the input data;
an inference generator to:
classify the plurality of features into a group indicative of at least one of a semantic property, a programming pattern, or a compliance type of the function of the input data;
assign a cluster identifier to the plurality of features based on a prediction that the plurality of features are classified into the group; and
retrieve a solution from a database that correspond to the cluster identifier, the solution to resolve the compliance issue corresponding to the input data; and
a suggestion generator to generate a suggestions list to present to a user based on a building of a pool of solutions.

### Claim 2 (depends on 1)

The apparatus of claim 1, wherein the inference generator includes a model to classify the plurality of features into the group.

### Claim 3 (depends on 2)

The apparatus of claim 2, wherein the model is trained to identify patterns in properties of features to classify the input data into the group.

### Claim 4 (depends on 1)

The apparatus of claim 1, further including a batch model updater to train a model to predict a function of input data representative of a compliance issue and generate a cluster of similar input data with similar compliance issues, the batch model updater to associate the cluster of similar input data to a solution of the compliance issue represented in the input data.

### Claim 5 (depends on 1)

The apparatus of claim 1, further including a model publisher to transform a model trained by a batch model updater into a file to be provided to a compliance detector for classifying input data into groups corresponding to at least one of the semantic property, programming pattern, or compliance type.

### Claim 6 (depends on 1)

The apparatus of claim 1, wherein the input data is a unit of code, a software commit, or a portion of code.

### Claim 7 (depends on 1)

The apparatus of claim 1, further including a suggestion determiner to build the pool of solutions based on i) a comparison of similarity between the plurality of features corresponding to the input data and the solution, ii) a profile of the user, and iii) a compliance type corresponding to a solution that meets a compliance standard.

### Claim 8 (depends on 7)

The apparatus of claim 7, wherein the profile of the user includes historical preferences of the user determined by a feedback of historically chosen solutions.

### Claim 9

A non-transitory computer readable storage medium comprising instructions that, when executed, cause a processor to at least:
extract a plurality of features from input data corresponding to a compliance issue and the plurality of features including descriptive information corresponding to a function of the input data;
classify the plurality of features into a group indicative of at least one of a semantic property, a programming pattern, or a compliance type of the function of the input data;
assign a cluster identifier to the plurality of features based on a prediction that the plurality of features are classified into the group;
retrieve a solution from a database that corresponds to the cluster identifier, the solution to resolve the compliance issue corresponding to the input data; and
generate a suggestions list to present to a user based on a building of a pool of solutions.

### Claim 10 (depends on 9)

The non-transitory computer readable storage medium as defined in claim 9, wherein the instructions, when executed, cause the processor to classify the plurality of features into the group based on a model.

### Claim 11 (depends on 10)

The non-transitory computer readable storage medium as defined in claim 10, wherein the instructions, when executed, cause the processor to train the model to identify patterns in properties of features to classify the input data into the group.

### Claim 12 (depends on 9)

The non-transitory computer readable storage medium as defined in claim 9, wherein the instructions, when executed, cause the processor to train a model to predict a function of input data representative of a compliance issue and generate a cluster of similar input data with similar compliance issues, the processor to associate the cluster of similar input data to a solution of the compliance issue represented in the input data.

### Claim 13 (depends on 9)

The non-transitory computer readable storage medium as defined in claim 9, wherein the instructions, when executed, cause the processor to transform a trained model into a file to classify input data into groups corresponding to at least one of the semantic property, programming pattern, or compliance type.

### Claim 14 (depends on 9)

The non-transitory computer readable storage medium as defined in claim 9, wherein the instructions, when executed, cause the processor to build the pool of solutions based on i) a comparison of similarity between the plurality of features corresponding to the input data and the solution, ii) a profile of the user, and iii) a compliance type corresponding to a solution that meets a compliance standard.

### Claim 15 (depends on 14)

The non-transitory computer readable storage medium as defined in claim 14, wherein the instructions, when executed, cause the processor to determine the profile of the user based on historical preferences of the user determined by a feedback of historically chosen solutions.

### Claim 16

A method comprising:
extracting a plurality of features from input data corresponding to a compliance issue and the plurality of features including descriptive information corresponding to a function of the input data;
classifying the plurality of features into a group indicative of at least one of a semantic property, a programming pattern, or a compliance type of the function of the input data;
assigning a cluster identifier to the plurality of features based on a prediction that the plurality of features are classified into the group;
retrieving a solution from a database that corresponds to the cluster identifier, the solution to resolve the compliance issue corresponding to the input data; and
generating a suggestions list based on a building of a pool of solutions.

### Claim 17 (depends on 16)

The method of claim 16, further including classifying the plurality of features into the group based on a model.

### Claim 18 (depends on 17)

The method of claim 17, further including training the model to identify patterns in properties of features to classify the input data into the group.

### Claim 19 (depends on 16)

The method of claim 16, further including training a model to predict a function of input data representative of a compliance issue and generating a cluster of similar input data with similar compliance issues, the method to associate the cluster of similar input data to a solution of the compliance issue represented in the input data.

### Claim 20 (depends on 16)

The method of claim 16, wherein building the pool of solutions is based on i) a comparison of similarity between the plurality of features corresponding to the input data and the solution, ii) a profile of a user including historical preferences of the user determined by a feedback of historically chosen solutions, and iii) a compliance type corresponding to a solution that meets a compliance standard.

### Claim 21

An apparatus to detect a compliance issue, the apparatus comprising:
a means for extracting, the means for extracting to extract a plurality of features from input data corresponding to the compliance issue and the plurality of features including descriptive information corresponding to a function of the input data;
a means for generating, the means for generating to:
classify the plurality of features into a group indicative of at least one of a semantic property, a programming pattern, or a compliance type of the function of the input data;
assign a cluster identifier to the plurality of features based on a prediction that the plurality of features are classified into the group; and
retrieve a solution from a database that corresponds to the cluster identifier, the solution to resolve the compliance issue corresponding to the input data; and
a means for creating, the means for creating to create a suggestions list to present to a user based on a building of a pool of solutions.

### Claim 22 (depends on 21)

The apparatus of claim 21, further including a means for training, the means for training are to generate a model to classify the plurality of features into the group.

### Claim 23 (depends on 22)

The apparatus of claim 22, wherein the means for training are to train the model to identify patterns in properties of features to classify the input data into the group.

### Claim 24 (depends on 21)

The apparatus of claim 21, further including a means for building, the means for building to build the pool of solutions based on i) a comparison of similarity between the plurality of features corresponding to the input data and the solution, ii) a profile of the user, and iii) a compliance type corresponding to a solution that meets a compliance standard.

### Claim 25 (depends on 24)

The apparatus of claim 24, wherein the means for building are to generate the profile of the user based on a feedback of historically chosen solutions of the user.
