Non-negative matrix factorization from the data in the multi-dimensional data table using the specification and to store metadata representing the built relational database management system
First Claim
Patent Images
1. A database management system comprising:
- a processor to execute computer program instructions and process data;
a memory to store the computer program instructions executable by the processor and a multi-dimensional data table to store data; and
computer program instructions stored in the memory and executable to generate a plurality of data tables from the data stored in the multi-dimensional data table using non-negative matrix factorization, wherein each one of the plurality of data tables is an approximate factor of the multi-dimensional data table;
wherein the computer program instructions are further executable to implement;
a server application programming interface to provide an interface to client software to construct a specification for a relational database model including non-negative matrix factorization model as the result of a build task performed by a build unit;
the build unit to build the relational database model including non-negative matrix factorization from the data in the multi-dimensional data table using the specification and to store metadata representing the built relational database model including non-negative matrix factorization in a database; and
an apply unit to apply the relational database model including non-negative matrix factorization stored in the database to the data in the multi-dimensional data table, wherein at least one of the build unit and the apply unit is operable to un-nest nested table columns in the multi-dimensional data table and to explode categorical attributes in the multi-dimensional data table into a series of binary attributes.
1 Assignment
0 Petitions
Accused Products
Abstract
An implementation of NMF functionality integrated into a relational database management system provides the capability to apply NMF to relational datasets and to sparse datasets. A database management system comprises a multi-dimensional data table operable to store data and a processing unit operable to perform non-negative matrix factorization on data stored in the multi-dimensional data table and to generate a plurality of data tables, each data table being smaller than the multi-dimensional data table and having reduced dimensionality relative to the multi-dimensional data table. The multi-dimensional data table may be a relational data table.
54 Citations
21 Claims
-
1. A database management system comprising:
-
a processor to execute computer program instructions and process data; a memory to store the computer program instructions executable by the processor and a multi-dimensional data table to store data; and computer program instructions stored in the memory and executable to generate a plurality of data tables from the data stored in the multi-dimensional data table using non-negative matrix factorization, wherein each one of the plurality of data tables is an approximate factor of the multi-dimensional data table;
wherein the computer program instructions are further executable to implement;a server application programming interface to provide an interface to client software to construct a specification for a relational database model including non-negative matrix factorization model as the result of a build task performed by a build unit; the build unit to build the relational database model including non-negative matrix factorization from the data in the multi-dimensional data table using the specification and to store metadata representing the built relational database model including non-negative matrix factorization in a database; and an apply unit to apply the relational database model including non-negative matrix factorization stored in the database to the data in the multi-dimensional data table, wherein at least one of the build unit and the apply unit is operable to un-nest nested table columns in the multi-dimensional data table and to explode categorical attributes in the multi-dimensional data table into a series of binary attributes. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of operating a database management system comprising a processor to execute computer program instructions and process data, a memory to store the computer program instructions executable by the processor and computer program instructions stored in the memory and executable to perform the steps of:
-
storing data in a multi-dimensional data table; and generating a plurality of data tables from the data stored in the multi-dimensional data table using non-negative matrix factorization, wherein each one of the plurality of data tables is an approximate factor of the multi-dimensional data table; providing a server application programming interface to provide an interface to client software to construct a specification for a relational database model including non-negative matrix factorization as the result of a build task; performing a build task to build the relational database model including non-negative matrix factorization from the data in the multi-dimensional data table using the specification and to store metadata representing the built relational database model including non-negative matrix factorization in a database; and performing an apply task to apply the relational database model including non-negative matrix factorization stored in the database to the data in the multi-dimensional data table, wherein at least one of the building step and the applying step comprises; un-nesting nested table columns in the multi-dimensional data table; and exploding categorical attributes in the multi-dimensional data table into a series of binary attributes. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer program product for operating a database management system comprising a processor to execute computer program instructions and process data, and a memory to store the computer program instructions executable by the processor, the computer program product comprising a computer readable recordable-type storage medium, and computer program instructions, recorded on the computer readable recordable-type storage medium, executable by a processor, for performing the steps of:
-
storing data in a multi-dimensional data table; and generating a plurality of data tables from the data stored in the multi-dimensional data table using non-negative matrix factorization, wherein each one of the plurality of data tables is an approximate factor of the multi-dimensional data table; providing a server application programming interface to provide an interface to client software to construct a specification for a relational database model including non-negative matrix factorization as the result of a build task; performing a build task to build the relational database model including non-negative matrix factorization from the data in the multi-dimensional data table using the specification and to store metadata representing the built relational database model including non-negative matrix factorization in a database; and performing an apply task to apply the relational database model including non-negative matrix factorization stored in the database to the data in the multi-dimensional data table, wherein at least one of the building step and the applying step comprises; un-nesting nested table columns in the multi-dimensional data table; and exploding categorical attributes in the multi-dimensional data table into a series of binary attributes. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification