# US 10,482,112 B2 · Automatic feature extraction from a relational database

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

- Number: US 10,482,112 B2
- Document ID: US10482112B2
- Status: Granted
- Kind: B2
- Application number: 15/841,465
- Filed: 2017-12-14
- Published: 2018-07-19
- Granted: 2019-11-19
- Earliest claimed: 2017-01-17
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Bei Chen; Thanh Lam Hoang; Tiep Mai; Mathieu Sinn; Johann-Michael Thiebaut
- Web page: https://patentgrep.com/patent/US10482112B2

## CPC

- G06F 16/288: {Entity relationship models}
- G06F 16/2465: {Query processing support for facilitating data mining operations in structured databases}
- G06F 16/9024: {Graphs; Linked lists (G06F16/9027 takes precedence)}
- G06F 2216/03: Data mining
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Techniques facilitating automatic feature extraction from a relational database are provided. In an embodiment, a method can include generating an entity graph based on a relational database, wherein the entity graph comprises a first node associated with a first table in the relational database and a second node associated with a second table in the relational database. In another embodiment, the method can include joining the first table and the second table based on an edge between the first table and the second table defined by the entity graph, wherein a resulting joined table is connected by a column of data. In another embodiment, the method can include extracting a feature from the column of data using a data mining algorithm selected from a set of data mining algorithms based on a type of data in the column of data.

## Claims

### Claim 1

A computer-implemented method, comprising:
generating, by a device operatively coupled to a processing unit, an entity graph based on a relational database, wherein the entity graph comprises a first node associated with a first table in the relational database and a second node associated with a second table in the relational database;
joining, by the device, the first table and the second table based on an edge between the first table and the second table defined by the entity graph, wherein a resulting joined table is connected by a column of data; and
extracting, by the device, a feature from the column of data using a data mining algorithm selected from a set of data mining algorithms based on a type of data in the column of data.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, further comprising:
selecting, by the device, the data mining algorithm from the set of data mining algorithms based on determining whether the data is from a group consisting of spatial-temporal data, time-series data, sequence data, item set data, number set data, singleton data, text data and image data.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, further comprising:
collecting, by the device, features extracted from tables by traversing the entity graph.

### Claim 4 (depends on 3)

The computer-implemented method of claim 3, wherein the entity graph is traversed to a depth based on a defined criterion related to processing efficiency.

### Claim 5 (depends on 3)

The computer-implemented method of claim 3, wherein the entity graph is traversed to a depth based on a defined criterion related to a user input.

### Claim 6 (depends on 3)

The computer-implemented method of claim 3, further comprising:
selecting, by the device, another feature from the features based on a relevance to a target variable that is defined by an entity in a main table associated with a root node of the entity graph.

### Claim 7 (depends on 3)

The computer-implemented method of claim 3, wherein the collecting further comprises:
transforming, by the device, a collection path into a canonical form; and
checking, by the device, an equivalent paths to the canonical form to avoid redundant path traversal.

### Claim 8

A computer-implemented method, comprising:
cleaning, by a device operatively coupled to a processing unit, a relational database by filling in missing values in incomplete data and removing broken data;
generating, by the device, using a relational database, an entity graph with a first node and a second node, wherein the first node corresponds to a first table and the second node corresponds to a second table, and wherein the first table and the second table have respective columns that are related to each other;
joining, by the device, the first table and the second table at the respective columns that are related to each other and forming a joined column of data; and
extracting, by the device, a feature from the joined column of data using a data mining algorithm selected from a set of data mining algorithms based on a type of data in the joined column of data.

### Claim 9 (depends on 8)

The computer-implemented method of claim 8, further comprising:
selecting, by the device, the data mining algorithm from the set of data mining algorithms based on determining whether the data is from a group consisting of spatial-temporal data, time-series data, sequence data, item set data, number set data, singleton data, text data and image data.

### Claim 10 (depends on 8)

The computer-implemented method of claim 8, further comprising:
training, by the device, a predictive model based on the feature extracted.

### Claim 11 (depends on 8)

The computer-implemented method of claim 8, further comprising:
determining, by the device, that the type of data in the joined column of data does not have a corresponding data mining algorithm; and
sending, by the device, a notification that the type of data is unsupported.

### Claim 12 (depends on 11)

The computer-implemented method of claim 11, further comprising:
receiving, by the device, a new data mining algorithm corresponding to the type of data in response to sending the notification.
