Method and system for automatic cell filling in product specification table

Through the combination of generative models and embedded modules, the time-consuming problem of engineers manually filling out the attribute values ​​of the form in new product design is solved, and the automatic filling of different form modes is realized. It is suitable for multiple engineering fields, improving efficiency and accuracy sex.

CN119129549APending Publication Date: 2024-12-13SIEMENS AG
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410752460.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-06-12
Filing Date
2024-06-12
Publication Date
2024-12-13

AI Technical Summary

Technical Problem

During the new product design, engineers need to manually fill out spreadsheet-like forms to select attribute values ​​for components in material specifications. This process is time-consuming and difficult to generalize to multiple tables in different modes. An existing nearest neighbor-based approach is available Failed in this case.

Method used

Through a generative model, table cells are encoded as cell markers using the table embedding module, and cell values ​​that satisfy the constraints are predicted and generated through binary classifiers and denoising generators. The decoder decodes the denoising vector into markers. Automatically fill empty cells in the table to generalize the new table pattern.

Benefits of technology

This method automates the work of engineers, saves a lot of time, generates cell values ​​that meet constraints, and is suitable for any engineering field with tabular data sets, improving efficiency and accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119129549A_ABST
    Figure CN119129549A_ABST
Patent Text Reader

Abstract

A method and system for automatic cell filling in a product specification table, a generative model filling table empty cells: a table embedding module (TEM) performs a masking-to-stochastic step, encodes all table cells (HC, BC) into cell marker embedding (CTE), and converts the empty cells into a noise vector (NV). A binary classifier receives the cell flag embedding and constraint as inputs, and predicts whether the table satisfies the constraint. A de-noising generator (DG) receives the output of the classifier as an input, de-noising the cell flag embedding into a de-noised vector (DV). The decoder decodes the de-noised vector into flags, and the empty cells are filled with the flags. The generative model can be well generalized to a new table mode, an engineer is liberated from the burden that the attribute value must be manually added, the attribute value is more or less obvious for a given part of table and constraint, and therefore a large amount of expert time is saved. In addition, model generation will most likely meet the cell value of the given constraint, and therefore constraint verification by experts should also be much faster.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a method and system for automatic cell filling in a product specification form. Background Art

[0002] Independent of the use of the grammatical term, individuals with either masculine or feminine identities are included in the term.

[0003] During the design of a new product, engineers must give a detailed description of all the components that will be part of the new design. During this activity, engineers often spend a lot of time filling out spreadsheet-like tables to select property values ​​for components in material specifications.

[0004] Spreadsheet tools might suggest the most frequent values ​​for a property, or simple correlations between numeric columns.

[0005] Nitesh V. Chawla, Kevin W. Bowyer, Lawrence O. Hall, and W. Philip Kegelmeyer, "Smote: synthetic minority over-sampling technique, Journal of artificial intelligence research, 16:321–357, 2002", discloses a simple nearest neighbor-based method for sampling new rows or filling cell values ​​in a single table. However, this method fails for multiple tables with different patterns. Summary of the invention

[0006] The purpose of the present invention is to identify the problems in the prior art and to find a technical solution to the problem.

[0007] The objects of the invention are solved by the independent claims. Further advantageous arrangements and embodiments of the invention are set forth in the respective dependent claims.

[0008] According to a method for automatically filling cells in a product specification form, the following operations are performed by a component, where the component is a hardware component and / or a software component executed by one or more processors:

[0009] - receiving, through a user interface, a table intended to specify products and containing empty cells, and constraints that the product specifications must satisfy,

[0010] A populated table is generated by a generative model by filling empty cells in the table using the following operations:

[0011] - All cells of the table are encoded into cell token embeddings by a table embedding module that performs a masked to random step, where empty cells are converted into noise vectors,

[0012] A binary classifier that takes the cell label embedding and the constraint as input predicts whether the table satisfies the constraint,

[0013] - denoising the cell label embedding into a denoised vector by a denoising generator that receives as input the output of the classifier,

[0014] - decode the denoised vector into tokens by the decoder and fill empty cells with tokens,

[0015] - Outputting the populated form via a user interface.

[0016] A system for automatically filling in cells in a product specification form includes the following components, where the components are hardware components and / or software components executed by one or more processors:

[0017] - a user interface configured for

[0018] - receives a table that is intended to specify products and contains empty cells, as well as constraints that the product specifications must satisfy, and

[0019] - output the filled table,

[0020] - a generative model configured to generate a populated table by filling empty cells in the table, wherein the generative model comprises:

[0021] a table embedding module configured to perform a masking to random step and to encode all cells of the table into cell token embeddings, wherein empty cells are converted into noise vectors,

[0022] - a binary classifier configured to receive the cell label embedding and the constraints as input and to predict whether the table satisfies the constraints,

[0023] a denoising generator configured to receive as input the output of the classifier and to denoise the cell label embedding into a denoised vector, and

[0024] - A decoder configured to decode the denoised vector into tokens and fill empty cells with the tokens.

[0025] The following advantages and explanations are not necessarily the result of the object of the independent claims. Instead, they may be advantages and explanations that apply only to certain embodiments or variants.

[0026] The term "computer" should be interpreted as broadly as possible and in particular covers all electronic devices with data processing properties. Thus, a computer may be, for example, a personal computer, a server, a client, a programmable logic controller (PLC), a handheld computer system, a palmtop PC device, a mobile radio device, a smartphone or any other communication device capable of processing data with computer support (e.g. a processor or other electronic device for data processing). A computer may in particular comprise one or more processors and a memory unit.

[0027] In conjunction with the present invention, a "memory", "memory unit" or "memory module" or the like may mean, for example, a volatile memory in the form of a random access memory (RAM) or a permanent memory such as a hard disk, solid state drive or magnetic disk.

[0028] The method and system, or at least some embodiments thereof, present a table generative model that provides cell filling of a partially filled table and can be generalized to new table schemas.

[0029] The method and system, or at least some embodiments thereof, free engineers from the burden of having to manually add attribute values ​​that are more or less obvious given the partial tables and constraints, thus saving a lot of expert time.

[0030] The method and system, or at least some embodiments thereof, generate cell values ​​that will most likely comply with a given constraint, so constraint validation by an expert should also be much faster.

[0031] The method and system, or at least some embodiments thereof, are applicable to any engineering field having tabular data sets.

[0032] In an embodiment of the method, the decoder performs a nearest neighbor lookup, comparing the denoised vector to the labeled vector.

[0033] In another embodiment of the method, the classifier is a feed-forward neural network.

[0034] In an embodiment of the method, the denoising generator is implemented using a transformer based architecture, in particular TaBERT or TURL.

[0035] An embodiment of the method includes performing initial training of a generative model by:

[0036] - retrieve the training tables and corresponding training constraints from the dataset of historical product specification tables,

[0037] For each pair of training table and training constraint, iteratively perform the following operations:

[0038] - adding noise to a subset of the cell label embeddings of the training table by the table embedding module performing a forward noisification step,

[0039] - train a classifier to predict the training constraints from the cell label embeddings,

[0040] - the inverse noise is predicted by the denoising generator,

[0041] - where the parameters φ of the classifier are trained based on the cross entropy loss, and

[0042] -where the parameters θ of the denoising generator are trained based on a variational lower bound objective of probability diffusion and gradients from the classifier to push the denoised vector towards constraint compliance.

[0043] This embodiment provides an end-to-end training process. The addition of a classifier allows the generated cells to be pushed towards constraint compliance.

[0044] The computer program product comprises instructions which, when the program is executed by a computer, cause the computer to carry out the method according to one of the method claims.

[0045] The supply device stores and / or provides the computer program product. BRIEF DESCRIPTION OF THE DRAWINGS

[0046] The foregoing and other aspects of the present invention can be best understood from the following detailed description when read in conjunction with the accompanying drawings. For the purpose of illustrating the present invention, presently preferred embodiments are shown in the accompanying drawings, however, it should be understood that the present invention is not limited to the specific means disclosed. These embodiments may be combined with each other. In addition, the embodiments may be combined with any of the above-mentioned features. Unless otherwise specified, the same reference numerals between the drawings represent the same features or elements with the same functions. The following figures are included in the drawings:

[0047] Figure 1 A first embodiment is shown,

[0048] Figure 2 Another embodiment is shown,

[0049] Figure 3 shows a partially populated table T containing material specifications for an electrical product,

[0050] Figure 4 shows an example of a table T with populated cell values,

[0051] Figure 5 shows a generative model for cell filling,

[0052] Figure 6 Shows Figure 5 The end-to-end training process of the generative model shown in

[0053] Figure 7 shows the sampling process for generating a populated table,

[0054] Figure 8 A flow chart of a possible exemplary embodiment of a method for automatic cell filling in a product specification is shown. DETAILED DESCRIPTION

[0055] In the following description, various aspects of the present invention and its embodiments will be described. However, it will be appreciated by those skilled in the art that the embodiments may be practiced with only some or all of them. For purposes of explanation, specific numbers and configurations are set forth to provide a thorough understanding. However, it will also be clear to those skilled in the art that these embodiments may be practiced without these specific details.

[0056] The components described may be hardware components or software components, respectively. For example, a software component may be a software module such as a software library; a separate process, subroutine or function; or, depending on the programming paradigm, any other part of the software code that implements the functionality of the software component. In particular, if some effects according to the present invention are preferably implemented exclusively by dedicated hardware (e.g., a processor in the form of an ASIC or FPGA), and some other parts are implemented by software, a combination of hardware components and software components may occur.

[0057] Figure 1 A sample structure of a computer implementation of the present invention is shown, comprising:

[0058] (101) Computer system

[0059] (102) Processor

[0060] (103) Memory

[0061] (104) Computer program (product)

[0062] (105) User Interface

[0063] In this embodiment of the invention, the computer program 104 comprises program instructions for implementing the invention. The computer program 104 is stored in the memory 103, which, among other things, provides a supply device of the computer program 104 to the memory 103 and / or its associated computer system 101. The computer system 101 can implement the invention by executing the program instructions of the computer program 104 by the processor 102. The results of the invention can be presented on the user interface 105. Alternatively, they can be stored in the memory 103 or on another suitable means for storing data.

[0064] Figure 2Another sample structure of a computer implementation of the present invention is shown, comprising:

[0065] (201)Supply of equipment

[0066] (202) Computer program (product)

[0067] (203) Computer Network / Internet

[0068] (204) Computer system

[0069] (205) Mobile devices / smart phones

[0070] In this embodiment, a supply device 201 stores a computer program 202, which includes program instructions for implementing the present invention. The supply device 201 provides the computer program 202 via a computer network / Internet 203. For example, a computer system 204 or a mobile device / smartphone 205 can load the computer program 202 and implement the present invention by executing the program instructions of the computer program 202.

[0071] In a variation of this embodiment, the supply device 201 is a computer-readable storage medium, such as an SD card, storing a computer program 202 and is directly connected to a computer system 204 or a mobile device / smartphone 205 so that it loads the computer program 202 and implements the present invention by executing the program instructions of the computer program 202.

[0072] Preferably, Figures 3 to 8 The embodiment shown can be used as Figure 1 or Figure 2 The structure shown is implemented.

[0073] The following embodiments each describe a system for automatically filling in a partially populated product specification under constraints.

[0074] At least some embodiments use a generative model that can generalize to new tabular schemas and can be conditioned on constraints.

[0075] exist Figure 3 In Figure 1, an example of a simple specification for an electrical product is given in the form of a table T containing four header cells HC and sixteen body cells BC. The design engineer has entered a list of components by name, along with the most important property values ​​of the rated power and voltage of the "Trafo" components. The design engineer has also declared a high-level constraint C on the entire design, namely that it should comply with regulations for hazardous materials (RoHS) standards. In a case like this, given some high-level constraints and historical specifications, many missing values ​​can be automatically filled in, since usually the design is not done completely from scratch, but is based on previous versions or similar products.

[0076] According to the embodiment described below, given knowledge about similar historical specifications and constraints, the generative design solution should automatically fill in the remaining attributes in table T with the most likely values, thereby generating Figure 4 The populated form FT is shown.

[0077] The embodiments described below formulate the generative design of product specifications as a generative machine learning task for tabular data, also known as cell filling.

[0078] Given a partially filled table x, the task is to distribute Modeling, where is a populated table, and c is some form of constraint based on the historical table dataset D.

[0079] At least some of the embodiments described below include:

[0080] a) a generative model for filling in cells in a partially populated product specification table, and / or

[0081] b) End-to-end training process.

[0082] Each of these features is described in more detail below.

[0083] Generative Models

[0084] Figure 5 A generative model for cell filling is shown. It includes a table embedding module TEM that takes tokenized table cells (header cells HC and body cells BC in tokenized form) and creates a cell token embedding CTE by assigning a trainable d-dimensional vector V to each tokenized table cell. Masked cells MC (cells with unknown content) are assigned a noise vector NV from a zero-mean Gaussian with N(0, 1). The table embedding module TEM can be implemented using a transformer-based architecture, such as TaBERT or TURL.

[0085] The TaBERT transformer architecture is disclosed in "TABERT: Pretraining for Joint Understanding of Textual and Tabular Data, ACL 2020" by Yin P., Neubig G., Yih W., and Riedel S. The entire contents of this document are incorporated herein by reference.

[0086] Deng et al., “TURL: table understanding through representation learning, VLDB 2020” discloses the TURL transformer architecture. The entire content of this document is incorporated herein by reference.

[0087] Extracting tokenized table cells from a table is a prior art. This extraction step is performed, for example, by a dedicated spreadsheet preprocessor that transforms the table into a numerical tensor representation. For example, the spreadsheet preprocessor outputs a series of cell tokens for each cell. The tokenization of each cell can be done in different ways (at the character level, word level, or word segment (token) level).

[0088] The second component of the generative model is a denoising generator DG, which takes the cell token embeddings CTE and transforms these vectors into new d-dimensional vectors, including the denoised vectors DV of the noise vector NV. The denoising generator DG can be implemented using a transformer-based architecture, such as TaBERT or TURL.

[0089] Figure 5 The third component of the generative model not shown in is the classifier. The classifier receives the cell label embedding CTE as input and predicts whether the current table satisfies the given constraints. In other words, the classifier is a binary classifier. For example, it can be simply implemented as a feed-forward neural network. The purpose of the classifier is to inform the denoising generator DG about the gradient of the cell label embedding CTE. This means that the denoising generator DG senses in which direction it should generate in order to satisfy the given constraints. Therefore, the denoising generator DG receives the output of the classifier as input.

[0090] End-to-end training process

[0091] Figure 6 Shows Figure 5 The end-to-end training process of the generative model shown in FIG. x0 represents the filled table from the historical table dataset D. In the forward noise step FNS, Figure 5 The table embedding module TEM shown encodes the filled table x0 into Figure 5 The cell markup shown embeds the CTE, which is now in Figure 6 The boldface x t . Figure 6 The classifier CF shown in is the classifier described above. It receives as input the constraint c and the cell token embedding (now denoted by x t ), and feeds its output to the denoising generator DG.

[0092] The end-to-end training process works as follows:

[0093] 1. The populated table x0 from the historical table dataset D is obtained together with its known constraints c;

[0094] 2. The forward noise step FNS iteratively adds noise to some cell labels until some final state T;

[0095] 3. For each iteration t of the noise:

[0096] a. The classifier CF is trained to predict the constraint c from the cell label embedding xt

[0097] b. De-noising generator DG predicts reverse noise;

[0098] 4. Train φ based on cross entropy loss;

[0099] 5. Train θ based on a variational lower bound objective of the probability diffusion and gradients from the classifier CF to push the generated vectors towards constraint compliance.

[0100] Jonathan Ho, Ajay Jain, Pieter Abbeel, "Denoising Diffusion Probabilistic Models, NeurIPS 2020" discloses a suitable algorithm for step 5 of the end-to-end training process. The entire content of this document is incorporated herein by reference.

[0101] Adding the classifier CF to the end-to-end training process allows to push the generated cells towards constraint compliance.

[0102] Sampling steps

[0103] Figure 7 A sampling process for generating a populated table using a deployed model is shown.

[0104] Similar to training, Figure 7 The sampling process shown in starts with a single table T, but in this case it is inherently partially filled and has unknown / masked cells. Therefore, before denoising, the table embedding module TEM (in Figure 5 In the mask-to-random step MTRS, all masked / unknown cells are replaced with noise vectors, and the output is Figure 7 The boldface x T The cell markers are embedded.

[0105] The noise generator DG then iteratively denoises these cells until the last sample x0. To decode the vector into tokens, a simple nearest neighbor lookup can be performed, i.e., take the token whose vector is closest to the generated vector. The tokens are used to fill the empty cells in the table T, thereby generating a filled table FT.

[0106] Figure 6 and 7 The mathematical symbols of the classifier CF and the denoising generator DG are also shown. Figure 7 During the deployment shown, the denoising generator DG receives as input the output of the classifier CF.

[0107] Figure 8 A flow chart of a possible exemplary embodiment of a method for automatic cell filling in a product specification form is shown, where the following operations are performed by a component, and where the component is a hardware component and / or a software component executed by one or more processors.

[0108] In a first operation 1 , the user interface receives a table intended to specify products and containing empty cells, as well as constraints that the product specifications must satisfy.

[0109] The generative model then generates a populated table by filling in the empty cells in the table using the following operations:

[0110] In the second operation 2, the table embedding module performs a masked to random step to encode all cells of the table into cell token embeddings, where empty cells are converted into noise vectors.

[0111] In the third operation 3, a binary classifier that receives the cell label embedding and the constraints as input predicts whether the table satisfies the constraints.

[0112] In a fourth operation 4, a denoising generator receiving as input the output of the classifier denoises the cell label embedding into a denoised vector.

[0113] In a fifth operation 5, the decoder decodes the denoised vector into tokens and fills the empty cells with the tokens.

[0114] In a final sixth operation 6, the user interface outputs the filled form.

[0115] For example, the method may be performed by one or more processors. Examples of processors include a microcontroller or microprocessor, an application specific integrated circuit (ASIC), or a neuromorphic microchip, in particular a neuromorphic processor unit. The processor may be part of any type of computer, including a mobile computing device such as a tablet, smartphone, or laptop, or may be part of a server in a control room or in the cloud.

[0116] The above method can be implemented by a computer program product, which includes one or more computer-readable storage media on which instructions executable by one or more processors of a computing system are stored. The execution of the instructions causes the computing system to perform operations corresponding to the actions of the above method.

[0117] Instructions for implementing the processes or methods described herein may be provided on non-temporary computer-readable storage media or memory, such as cache, buffer, RAM, flash memory, removable media, hard drive, or other computer-readable storage media. Computer-readable storage media include various types of volatile and non-volatile storage media. Functions, actions, or tasks shown in the figure or described herein may be performed in response to one or more groups of instructions stored in or on a computer-readable storage medium. These functions, actions, or tasks may be independent of a particular type of instruction set, storage medium, processor, or processing strategy, and may be performed by software, hardware, integrated circuits, firmware, microcode, etc., operating alone or in combination. Similarly, processing strategies may include multi-processing, multi-tasking, parallel processing, etc.

[0118] The present invention has been described in detail with reference to the embodiments and examples of the present invention. However, within the spirit and scope of the present invention covered by the claims, changes and modifications may be made. The phrase "at least one of A, B and C" as an alternative expression may specify that one or more of A, B and C may be used.

Claims

1. A computer-implemented method for automatic cell filling in a product specification form, wherein the following operations are performed by a component, and wherein the component is a hardware component and / or a software component executed by one or more processors: - receiving (1) through a user interface (105) a table (T) intended to specify products and containing empty cells, and constraints (c) that said product specifications must satisfy, - A filled table (FT) is generated by a generative model by filling empty cells in said table (T) using the following operations: - encoding (2) all cells of the table (T) into a cell token embedding (CTE) by a table embedding module (TEM) performing a masked to random step (MTRS), where empty cells are converted into a noise vector (NV), - predicting (3) by a binary classifier (CF) receiving as input the cell token embedding (CTE) and the constraint (c) whether the table (T) satisfies the constraint (c), - denoising (4) said cell label embedding (CTE) into a denoised vector (DV) by a denoising generator (DG) receiving as input the output of said classifier (CF), - decoding (5) the denoised vector (DV) into tokens by a decoder and filling empty cells with the tokens, The filled-in table (FT) is output (6) via the user interface (105).

2. The method according to claim 1, - wherein the decoder performs a nearest neighbor lookup comparing the denoised vector (DV) to a label vector.

3. The method according to any one of the preceding claims, - wherein the classifier (CF) is a feed-forward neural network.

4. The method according to any one of the preceding claims, - wherein the denoising generator (DG) is implemented using a transformer based architecture, in particular TaBERT or TURL.

5. The method according to any one of the preceding claims, wherein the generative model is initially trained by: - retrieving training tables and corresponding training constraints from a dataset (D) of historical product specification tables, For each pair of training table and training constraint, iteratively perform the following operations: - adding noise to a subset of the cell token embeddings (CTEs) of the training table by the table embedding module (TEM) performing a forward noisification step (FNS), - training the classifier (CF) to predict the training constraints based on the cell label embedding (CTE), - the reverse noise is predicted by the denoising generator (DG), - wherein the parameters φ of the classifier (CF) are trained based on a cross entropy loss, and - wherein the parameters θ of the denoising generator (DG) are trained based on a variational lower bound objective of probability diffusion and gradients from the classifier (CF) to push the denoised vector (DV) towards constraint compliance.

6. A system for automatic cell filling in a product specification form, comprising: - A user interface (105) configured to - receiving a table (T) intended to specify products and containing empty cells, and constraints (c) that said product specifications must satisfy, and - output filled table (FT), - a generative model configured to generate the filled table (FT) by filling empty cells in the table (T), wherein the generative model comprises: a table embedding module (TEM) configured to perform a masking to random step (MTRS) and to encode all cells of said table (T) into a cell token embedding (CTE), wherein empty cells are converted into a noise vector (NV), a binary classifier (CF) configured to receive the cell token embedding (CTE) and the constraint (c) as input, and to predict whether the table (T) satisfies the constraint (c), a denoising generator (DG) configured to receive as input the output of the classifier (CF) and to denoise the cell token embedding (CTE) into a denoised vector (DV), and - a decoder configured to decode the denoised vector (DV) into tokens and fill empty cells with the tokens.

7. A computer program product comprising instructions for causing a computer to carry out the method according to one of the method claims when the computer program is executed by the computer.

8. A supply device for a computer program product according to the preceding claim, wherein the supply device stores and / or provides the computer program product.