Arithmetic system and arithmetic expression generation method

The system addresses the challenge of calculating feature quantities by using templates and correspondence tables to generate expressions that consider business significance, enhancing data analysis in production facilities.

WO2025197005A1PCT designated stage Publication Date: 2025-09-25HITACHI LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/010934
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-21
Publication Date
2025-09-25

AI Technical Summary

Technical Problem

Existing systems fail to calculate feature quantities that consider business significance, making it difficult to identify relevant data from production facilities effectively.

Method used

A computing system and method that utilize a storage unit to store templates with column logical names and a column correspondence table, generating arithmetic expressions by replacing logical names with physical names to calculate feature quantities that account for business significance.

Benefits of technology

Enables the calculation of feature quantities that consider business significance, allowing for more effective data analysis and identification of relevant data from production facilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024010934_25092025_PF_FP_ABST
    Figure JP2024010934_25092025_PF_FP_ABST
Patent Text Reader

Abstract

This arithmetic system comprises: a storage unit in which a template including a column logical name which is a logical name of a data sequence in time series data having a plurality of data sequences, and a column correspondence table indicating correspondence between a column physical name and the column logical name in the time series data are stored; and an arithmetic expression generation unit which generates an arithmetic expression for calculating a feature amount by replacing the column logical name in the template with an identifier of the column physical name.
Need to check novelty before this filing date? Find Prior Art

Description

Arithmetic system and arithmetic expression generation method

[0001] The present invention relates to an arithmetic system and an arithmetic expression generating method.

[0002] It is easy to collect data by installing sensors in production facilities, etc. However, identifying data related to phenomena occurring in production facilities, etc. is not easy and requires a lot of trial and error. Patent Document 1 discloses an information processing system including: an acquisition module that acquires time-series data from a control device; a determination module that determines multiple types of feature quantities by combining a first function that defines a range of the target time-series data to be used for calculating feature quantities and a second function that defines a statistical quantity to be used as the feature quantity; and an evaluation module that evaluates the time-series data for each of the multiple types of feature quantities.

[0003] Japanese Patent Application Laid-Open No. 2023-151722

[0004] The invention described in Patent Document 1 cannot calculate feature quantities that take into account business significance.

[0005] A computing system according to a first aspect of the present invention comprises: a storage unit that stores a template including column logical names, which are logical names of data series in time-series data having a plurality of data series, and a column correspondence table that indicates correspondence between column physical names in the time-series data and the column logical names; and an arithmetic expression generation unit that generates an arithmetic expression for calculating a feature quantity by replacing the column logical names in the template with identifiers of the column physical names.A computing expression generation method according to a second aspect of the present invention is a computing device that includes: a storage unit that stores a template including column logical names, which are logical names of data series in time-series data having a plurality of data series, and a column correspondence table that indicates correspondence between column physical names in the time-series data and the column logical names, and the method comprises generating an arithmetic expression for calculating a feature quantity by replacing the column logical names in the template with identifiers of the column physical names.

[0006] According to the present invention, it is possible to calculate feature quantities that take into account business significance.

[0007] Overall configuration diagram of the feature quantity providing system, Hardware configuration diagrams of the metadata processing system and the data processing system, Diagram showing an example of a time series data table which is a part of time series data, Diagram showing an example of a table definition document that may be included in an external metadata source, Diagram showing an example of master data, Diagram showing the metadata of the time series data "TS_DATA", Diagram showing the metadata of the master data "M_MODE", Diagram showing an example of the feature quantity data "T_FEATURE", Diagram showing an example of the metadata column correspondence table of the feature quantity data "T_FEATURE", Diagram showing an example of an arithmetic expression template, Diagram showing an example of a feature quantity function, Diagram showing an example of an arithmetic expression created using a template, Flowchart showing the processing outline of the feature quantity providing system in the first embodiment, Flowchart showing the details of step S30 in FIG. 14, Flowchart showing the details of step S31 in FIG. 14, Flowchart showing the details of step S32 in FIG. 14, Flowchart showing the details of step S33 in FIG. 14, Diagram showing an example of an arithmetic expression template in modification example 1, Flowchart showing the processing outline of the feature quantity providing system in the second embodiment, Diagram showing the user interface in step S35 of FIG. 20, Diagram showing the editing of the feature quantity function by the user

[0008] - First Embodiment - Hereinafter, a first embodiment of a feature quantity providing system and an arithmetic expression generation method will be described with reference to FIGS. 1 to 18.

[0009] FIG. 1 is an overall configuration diagram of a feature quantity providing system 1. Hereinafter, the feature quantity providing system 1 will also be referred to as an "arithmetic system". The feature quantity providing system 1 includes a metadata processing system 10, a data processing system 50, and a user terminal 90. Hereinafter, a human who operates the user terminal 90 will be referred to as a "user".

[0010] The metadata processing system 10 includes, as its functions, a first crawler 61, a second crawler 62, an arithmetic expression generation unit 11, a business metadata generation unit 12, and a user interaction unit 13. The metadata processing system 10 also stores master data 44, technical metadata 45, business metadata 46, an arithmetic expression template 47-1, a function list 47-2, a column correspondence table 48, and an internal metadata source 49. The data processing system 50 includes, as its functions, a first ETL 51, a second ETL 52, and a third ETL 53. The data processing system 50 stores an internal data source 41, time-series data 42, feature amount data 43, and master data 44.

[0011] The first ETL 51 acquires data from an external data source 81, processes the data in a predetermined manner, and stores the data in the internal data source 41. The external data source 81 is, for example, a sensor or a PLC installed in a factory. While only one first ETL 51 is shown in FIG. 1 , there may be multiple first ETLs 51 acquiring data from the external data source 81, or multiple external data sources 81. The processing performed by the first ETL 51 may, for example, interpolate or extrapolate output values ​​to output data at a fixed time interval, such as one second, in order to absorb differences in the data output cycles of each sensor. The internal data source 41 stores data collected from the external data source 81.

[0012] The second ETL 52 acquires data from the internal data source 41 and generates time-series data 42 and master data 44. This master data 44 may be copied to the metadata processing system 10, or the business metadata generation unit 12 may refer to the master data 44 in the data processing system 50. The third ETL 53 acquires the time-series data 42 and processes the data using the arithmetic expression generated by the arithmetic expression generation unit 11 to generate feature data 43. The first ETL 51 to the third ETL 53 execute Extract, Transform, and Load. There are various forms of Transform, and in this embodiment, feature values ​​are calculated using SQL functions, so ETL is also used to calculate the feature values. The feature data 43 can be viewed from a user terminal 90.

[0013] The first crawler 61 accesses a database that stores the internal data source 41, time-series data 42, and feature data 43, and generates technical metadata 45. This will be described in detail later. The second crawler 62 acquires data from an external metadata source 82 and stores it as an internal metadata source 49. The external metadata sources 82 include equipment specifications, equipment design documents, equipment control programs, data collection programs, process control tables, and data board design documents. The arithmetic expression generator 11 generates a feature expression using the technical metadata 45, business metadata 46, arithmetic expression template 47-1, and function list 47-2.

[0014] The business metadata generation unit 12 generates business metadata 46 as described below. The arithmetic expression template 47-1 and function list 47-2 are created in advance. The user interaction unit 13 receives user instructions via the user terminal 90 and operates the metadata processing system 10. The user interaction unit 13 also provides a user interface for making inquiries to the user.

[0015] The user terminal 90 includes a display application 91, an analysis application 92, and a data catalog UI 93. The display application 91 displays feature quantities calculated by the data processing system 50. The analysis application 92 analyzes the feature quantities calculated by the data processing system 50. This analysis may involve, for example, the extraction of feature quantities that have a strong correlation with separately calculated evaluation indexes. The data catalog UI 93 is a user interface that displays the master data 44, technical metadata 45, and business metadata 46.

[0016] 2 is a hardware configuration diagram of the metadata processing system 10 and the data processing system 50. Each of the metadata processing system 10 and the data processing system 50 can be realized by, for example, the computing device 70 shown in FIG. 2. However, each of the metadata processing system 10 and the data processing system 50 may be realized by a single computing device 70, or may be realized by two or more computing devices 70. Furthermore, the metadata processing system 10 and the data processing system 50 may be realized together by a single computing device 70.

[0017] The arithmetic unit 70 includes a CPU 71, which is a central processing unit, a ROM 72, which is a read-only storage device, a RAM 73, which is a readable and writable storage device, a communication device 75, and a storage device 76. The CPU 71 performs various calculations by loading programs stored in the ROM 72 into the RAM 73 and executing them. The arithmetic unit 70 may be realized by an FPGA (Field Programmable Gate Array), which is a rewritable logic circuit, or an ASIC (Application Specific Integrated Circuit), which is an application specific integrated circuit, instead of a combination of the CPU 71, the ROM 72, and the RAM 73.

[0018] Furthermore, the arithmetic unit 70 may be realized by a combination of different configurations, for example, a combination of the CPU 71, the ROM 72, the RAM 73, and an FPGA, instead of the combination of the CPU 71, the ROM 72, and the RAM 73. The communication unit 75 is a communication interface, such as a network interface card, that realizes communication with other devices. The storage unit 76 is a non-volatile storage unit.

[0019] FIG. 3 is a diagram illustrating an example of a time-series data table, which is part of the time-series data 42. The time-series data 42 may include multiple time-series data tables. Specifically, FIG. 3 illustrates an example of a time-series data table with the physical name "TS_DATA." This time-series data table has at least six columns. These columns include "DATETIME," which inputs the date and time the data was acquired; "SERIALNO," which inputs a serial number identifying the product; "PROC_CODE," which inputs a code indicating the process; "MODE_NO," which inputs a code representing the equipment status; "SENSOR_DATA1," which inputs the time-series data of sensor 1; and "SENSOR_DATA2," which inputs the time-series data of sensor 2. While each column has been described here for convenience, the data stored in each column cannot necessarily be determined from the time-series data 42 itself.

[0020] FIG. 4 shows an example of a table definition document that may be included in the external metadata source 82. This table definition document corresponds to the time-series data table with the physical name "TS_DATA" shown in FIG. 3. The table definition document includes the physical name, logical name, and metadata for each column of the target table. This metadata includes the type, variable, logical name, unit, and comment for each column physical name. Of these metadata, the type and logical name are required elements, while the others are entered as needed. The comments for the column physical names "PROC_CODE" and "MODE_NO" indicate that the corresponding master should be referenced. Note that variations in the notation of column names in the table definition document can be addressed by referring to the column correspondence table 48. For example, if "comment" is written instead of "description," simply search the column correspondence table 48 for the column name corresponding to the metadata "description."

[0021] FIG. 5 is a diagram showing an example of master data 44. FIG. 5 shows two master data tables, "M_MODE" and "M_PROC." The master data indicates the meaning and description of the corresponding columns. The master data corresponding to the physical column name "M_MODE" has columns for "PROC_CODE," "MODE_NO," "MODE_NAME," and "MODE_DESC." In this embodiment, "MODE_NAME" and "MODE_DESC" are set for each combination of "PROC_CODE" and "MODE_NO." The master data "M_MODE" indicates that when "PROC_CODE" is "MC3," "MODE_NO" values ​​"1" to "4" represent initialization, standby, processing, and discharge, respectively. Furthermore, the master data "M_PROC" indicates that "CV2" in "PROC_CODE" represents "Conveyor 2" and "MC2" represents "Processing Machine 2."

[0022] FIG. 6 shows the metadata of the time-series data "TS_DATA," specifically, the technical metadata 45 and business metadata 46. The technical metadata 45 of the time-series data "TS_DATA" is data that can be obtained from a database that stores the time-series data and includes the type and number of digits. This technical metadata 45 always includes the type, but only includes the number of digits if applicable. The business metadata 46 of the time-series data "TS_DATA" is data that can be obtained using a method described below and includes the logical name, unit, description, master table, master key, and tag. This business metadata 46 always includes the logical name, and only includes the unit, description, master table, master key, and tag if applicable. Note that the business identification data in the column logical name indicates a "major category," while the business status identification data indicates a "minor category." In other words, the business status identification data indicates a smaller category than the business identification data.

[0023] FIG. 7 is a diagram showing the metadata of the master data "M_MODE," specifically, the technical metadata 45 and business metadata 46. The technical metadata 45 of the master data "M_MODE" is data that can be obtained from the database that stores the master data "M_MODE," and includes the type and number of digits. This technical metadata 45 always includes the type, but only includes the number of digits if applicable. The business metadata 46 of the master data "M_MODE" includes the logical name, unit, and description. This business metadata 46 always includes the logical name, and only includes the unit and description if applicable.

[0024] FIG. 8 is a diagram showing an example of feature data "T_FEATURE." The feature data shown in FIG. 8 shows the results of calculating features for each individual. This table includes a column for "SERIAL_NO" which indicates the individual, and a column for the name of each feature. For example, the column "F_MC3_2_COUNT" indicates the cumulative value of processing time when the process code is "MC3" and the operation mode is "002."

[0025] FIG. 9 is a diagram showing metadata for feature data "T_FEATURE," specifically, technical metadata 45 and business metadata 46. The technical metadata 45 for feature data "T_FEATURE" is data that can be acquired from a database that stores the feature data "T_FEATURE," and includes the type and number of digits. This technical metadata 45 always includes the type, but only includes the number of digits if applicable. The business metadata 46 for feature data "T_FEATURE" includes the logical name, unit, and description. This business metadata 46 always includes the logical name, and only includes the unit and description if applicable.

[0026] FIG. 10 is a diagram showing an example of the column correspondence table 48. The column correspondence table 48 is a dictionary showing the correspondence between the column physical names and column logical names of the time-series data 42, and also absorbs variations in the spelling of the column physical names. The column correspondence table 48 shows at least the correspondence between the column physical names, column logical names, and unified column names. The unified column names are "individual identification ID," "business ID," "business status ID," and "measurement value ID." Specifically, the column correspondence table 48 shows a list of column physical names corresponding to the "individual identification ID," "business ID," "business status ID," and "measurement value ID," respectively.

[0027] The column correspondence table 48 may be created in advance by an operator, or may be created by automatic processing using generation AI, etc. When the column correspondence table 48 is created by generation AI, for example, by specifying a prompt to extract a column that stores data that identifies an individual product, the physical name, logical name, etc. of the column can be obtained.

[0028] FIG. 11 shows examples of a first template 47-1A and a second template 47-1B included in the arithmetic expression template 47-1. The first template 47-1A and the second template 47-1B include logical names of columns of the time-series data 42. The first template 47-1A is a template for calculating feature quantities for each individual product in a specific process without specifying the sensor. The second template 47-1B is a template for calculating feature quantities for each individual product related to a specific sensor in a specific process. The example shown in FIG. 11 is written in SQL syntax, and the text following two consecutive hyphens to the end of the line is a comment. Note that the numbers in the margins are line numbers added for convenience of explanation.

[0029] The first template 47-1A contains the following information: Line 1 states that a table of feature data will be updated and that this table will be called "F." Line 7 states that data will be read from time-series data and that this time-series data will be called "D." Line 12 indicates that processing will be performed for each value of the individual identification data in the time-series data represented by "D." Lines 9 to 11 describe the conditions for the individual identification data, work, and equipment status to identify the target data. Line 12 also describes that data with the same value for each individual product will be grouped. Line 5 states that the grouped target data will be input to a feature function, and line 3 indicates that the calculation result of the feature function will be input to a specific column of table "F."

[0030] The second template 47-1B is similar to the first template 47-1A, except that the sensor value is input on the fifth line and the name of the column where the calculation result written on the third line is input is different.

[0031] FIG. 12 is a diagram showing an example of a feature function. Although not explicitly shown in FIG. 12, in this embodiment, a feature is calculated for each individual product. FIG. 12 shows a combination of a target for feature calculation and a function. The first line describes that the number of data items and the missing rate are calculated as feature items for each individual product for each business, and describes that the SQL "count" function is used to calculate the number of data items. In other words, for each business, the number of data items calculated for each individual product using the "count" function is shown as one feature. Furthermore, although a specific function is not shown in FIG. 12, the missing rate and other indicators are also feature items.

[0032] The second line describes that the number of data points and missing rate are calculated as features for each individual product for all combinations of operations and operation states. The difference from the feature function described in the first line is that differences in operation states are also taken into consideration and feature values ​​are calculated for each combination of operation and operation state. The third line describes that the average value, maximum value, minimum value, standard deviation, etc. of the sensor output are calculated as features for each individual product for all combinations of operations and sensors. It also indicates that the SQL "AVG" function is used to calculate the average value and the SQL "MAX" function is used to calculate the maximum value.

[0033] The fourth line describes that for every combination of operation, operation state, and sensor, the average value, maximum value, minimum value, standard deviation, etc. of the sensor output is calculated as feature values ​​for each individual product. The difference from the feature value function described in the third line is that differences in operation state are also taken into consideration and feature values ​​are calculated for every individual product for every combination of operation, operation state, and sensor.

[0034] Figure 13 is a diagram showing an example of an arithmetic expression created using the template shown in Figure 11. In Figure 13, changes from Figure 11 are shown in bold and circled. Although only one specific arithmetic expression is shown for each template here, in reality, multiple arithmetic expressions are generated, as will be explained later with reference to a flowchart.

[0035] FIG. 14 is a flowchart showing an outline of the processing of the feature providing system 1. This processing is initiated by an instruction from the user. Details of steps S31 to S35 will be described below using another flowchart. In step S31, the user dialogue unit 13 performs initial setting based on an instruction from the user terminal 90. In the following step S32, the first crawler 61 and the business metadata generation unit 12 generate metadata. In the following step S33, the arithmetic expression generation unit 11 generates a feature calculation formula using the arithmetic expression template 47-1. In the following step S34, the third ETL 53 calculates the feature.

[0036] Fig. 15 is a flowchart showing the details of step S30 in Fig. 14. First, in step S301, the user interaction unit 13 reads the time-series data 42 and presents a list of time-series data tables to the user. This presentation prompts the user to specify the time-series data table to be analyzed, the master table to be used for the target time-series data table, the analysis range which is the range of dates and times to be analyzed, and the metadata source.

[0037] In the following step S302, the user interaction unit 13 reads the time-series data table to be analyzed designated by the user. Hereinafter, the time-series data table to be analyzed is referred to as the "target time-series table." The user interaction unit 13 outputs data for identifying the target time-series table designated by the user, for example, the name of the table, to the first crawler 61. In the following step S303, the user interaction unit 13 reads the master table designated by the user. In the following step S304, the user interaction unit 13 reads the analysis target range designated by the user. In the following step S305, the user interaction unit 13 reads the metadata source designated by the user and ends the process shown in FIG. 15. The metadata source is designated by the equipment specification or the table specification. As shown in FIG. 4, the table definition document contains the physical name of the table, so the user interaction unit 13 may identify the table definition document to be read without receiving an explicit designation from the user.

[0038] FIG. 16 is a flowchart showing the details of step S31 in FIG. 14. First, in step S311, the first crawler 61 generates technical metadata 45 for the data table and master table specified by the user in the process shown in FIG. 15. The technical metadata 45 can be extracted from the database that stores the tables. The process of this step fills in the technical metadata 45 fields in the metadata example shown in FIG. 6. Note that if the table definition document includes the type and number of digits for each column as shown in FIG. 4, the second crawler 62 may generate the technical metadata 45.

[0039] In the following step S312, the business metadata generation unit 12 identifies an individual identification data column in the target time-series table by referring to the column correspondence table 48. The business metadata generation unit 12 also writes a tag of "individual identification" in the identified column of individual identification data, and extracts data in the logical name and description fields from the internal metadata source 49. In the following step S313, the business metadata generation unit 12 identifies a business data column in the target time-series table by referring to the column correspondence table 48. The business metadata generation unit 12 also writes a tag of "business" in the identified column of business data, and extracts data in the logical name, description, master table, and master key fields from the internal metadata source 49.

[0040] In the next step S314, the business metadata generation unit 12 identifies the column of business status data in the target time-series table by referring to the column correspondence table 48. The business metadata generation unit 12 also writes a tag of "business status" in the identified column of business status, and extracts data in the logical name, description, master table, and master key fields from the internal metadata source 49.

[0041] In the following step S315, the business metadata generation unit 12 identifies the column of sensor data in the target time-series table by referring to the column correspondence table 48. The business metadata generation unit 12 also writes a tag of "sensor data" in the identified column of sensor data, and extracts data in the logical name, unit, and description columns from the internal metadata source 49. That is, by the processing of steps S312 to S315, the column of business metadata 46 is filled in in the example of metadata shown in FIG. 6 .

[0042] In the following step S316, the business metadata generation unit 12 sets the metadata of the master table read in step S303 of Fig. 15, and ends the process shown in Fig. 16. Specifically, the business metadata generation unit 12 obtains the logical name, unit, and description of the master table from the internal metadata source 49.

[0043] Fig. 17 is a diagram showing details of step S32 in Fig. 14. First, in step S301, the arithmetic expression generation unit 11 lists combinations of tasks, task states, and sensors in the target time-series table. Specifically, it lists all tasks, all combinations of tasks and sensors, all combinations of tasks and task states, and all combinations of tasks, task states, and sensors.

[0044] In the next step S322, the arithmetic expression generation unit 11 generates a table for storing the feature quantities to be calculated. For example, the "CREATE TABLE" function in SQL is used for this process. In this step, a table framework with no content is created, so to speak. In this step, the list generated in step S301 is used to set names for the data series in the table. Specifically, as shown in FIGS. 11 and 13, the physical names of the feature quantities of each individual product that does not use sensor output for each combination of operation and operation state are expressed as a combination of "F_", a code indicating the operation, a code indicating the operation state, and a function name. For example, "F_MC3_2_COUNT" shown in FIG. 13 is expressed as a combination of "MC3" indicating the operation, "2" indicating the operation state, and "COUNT", a function that calculates the number of data points. The specific feature quantities to be calculated are as shown in the following steps S323 to S326, and names of the data series corresponding to these feature quantities are set.

[0045] In the next step S323, the arithmetic expression generation unit 11 generates a processing statement for calculating the feature of each individual product without using sensor output for each task, using the list of all tasks created in step S322. In this step, a processing statement is generated for each function shown in the first row of Fig. 12. For example, in the case where a feature is calculated for each individual product with one processing statement as shown in Fig. 13, if the number of tasks in the target time-series table is "2" and the number of functions listed in the first row of Fig. 12 is "3", then "6" processing statements are generated, which is a combination of these.

[0046] In the next step S324, the arithmetic expression generation unit 11 uses the list of all tasks created in step S322 to generate processing statements for calculating the feature quantities of each individual product using the sensor output for each task. In this step, a processing statement is generated for each function shown on the third line of Fig. 12. For example, in the case where a feature quantity is calculated for each individual product using one processing statement as shown in Fig. 13, if the number of tasks is "2," the number of functions listed on the third line of Fig. 12 is "5," and the number of sensors is "3," then "30" processing statements, which is a combination of these, will be generated.

[0047] In the next step S325, the arithmetic expression generation unit 11 generates a processing statement for calculating the feature of each individual product without using sensor output for each combination of task and task state. In this step, a processing statement is generated for each function shown in the second line of Fig. 12. For example, in the case where the feature of each individual product is calculated with one processing statement as shown in Fig. 13, if the number of tasks is "2," the number of task states is "3," and the number of functions listed in the second line of Fig. 12 is "3," then "18" processing statements, representing these combinations, are generated.

[0048] In the next step S326, the arithmetic expression generation unit 11 generates a processing statement for calculating the feature quantity of each individual product using the sensor output for each combination of task and task state. In this step, a processing statement is generated for each function shown on the fourth line of Fig. 12. For example, in the case where the feature quantity of each individual product is calculated with one processing statement as shown in Fig. 13, if the number of tasks is "2," the number of task states is "3," the number of sensors is "3," and the number of functions listed on the fourth line of Fig. 12 is "5," then "90" processing statements, which represent these combinations, are generated.

[0049] In the next step S327, the arithmetic expression generating unit 11 generates metadata for the feature data, such as the data shown in FIG. 9, and then ends the process shown in FIG. 17. In the feature data table, only the first column stores the identifier of the individual product, and the second and subsequent columns store the feature values. First, the contents of the physical name column will be described.

[0050] The first column of the physical name is transcribed from the record tagged with individual identification in the metadata of the target time series table. The second and subsequent columns are the names of the feature quantities, which are the same as the names of the data series set in step S322.

[0051] The technical metadata 45 and business metadata 46 in the first column can be transcribed from records tagged with individual identification in the metadata of the target time-series table. Since the second and subsequent items are feature quantities, the "type" of the technical metadata 45 is "numeric" and the number of digits is left blank. For the second and subsequent items of business metadata 46, the logical names can be set in the same way as the physical names, and the description can be an SQL statement for calculating the feature quantity, such as the formula shown in FIG. 13.

[0052] Fig. 18 is a diagram showing details of step S33 in Fig. 14. First, in step S331, the third ETL 53 receives an arithmetic expression for calculating a feature amount from the arithmetic expression generation unit 11, that is, step S320 in Fig. 15.

[0053] The first embodiment described above provides the following advantageous effects. (1) The feature providing system 1 includes a storage device 76 that stores an arithmetic expression template 47-1 including column logical names, which are logical names of data series in time-series data 42 having multiple data series, and a column correspondence table 48 that indicates the correspondence between column physical names and column logical names in the time-series data. It also includes an arithmetic expression generator 11 that generates an arithmetic expression for calculating a feature by replacing the column logical names in the arithmetic expression template 47-1 with identifiers of the column physical names. This allows feature calculations that take into account business meanings. Specifically, the feature providing system 1 uses a pre-prepared arithmetic expression template 47-1 to generate an arithmetic expression for calculating a feature using a data series corresponding to the corresponding logical name. Therefore, by using the logical names, feature calculations that take into account business meanings are possible.

[0054] (2) The data series of the time-series data 42 includes a code indicating task identification data, which is a major classification. The second ETL 52 or the second crawler 62 acquires the master data 44. The arithmetic expression template 47-1 includes the column logical name of the task identification data, which is a major classification. The arithmetic expression generation unit 11 generates arithmetic expressions for all cases of the values ​​of the major classification based on the master data 44. Therefore, it is possible to calculate a feature amount for each task identification data.

[0055] (3) The data series includes a code indicating a business status, which is a classification smaller than a business. The second ETL 52 or the second crawler 62 acquires a master data set with a table name of, for example, "M_MODE" that lists codes for business status, such as "MODE_NO." The arithmetic expression template 47-1 further includes column logical names corresponding to the business status. The arithmetic expression generation unit 11 generates arithmetic expressions for all combinations of business and business status. Therefore, it is possible to calculate a feature amount for each combination of business identification data and business status identification status data.

[0056] (4) The feature providing system 1 includes the third ETL 53 that calculates the feature using an arithmetic expression. Therefore, the feature providing system 1 can provide the calculated feature to the user.

[0057] (5) The arithmetic expression template 47-1 includes a function identifier, which is an identifier into which a function for calculating a feature amount is substituted, i.e., a "feature amount function" in FIG. 11 . The storage device 76 includes a function list 47-2, which is a list of functions for calculating a feature amount. The arithmetic expression generation unit 11 generates an arithmetic expression for a feature amount by replacing the function identifier in the arithmetic expression template 47-1 with each function listed in the function list 47-2. This makes it possible to generate arithmetic expressions for feature amounts using a variety of functions.

[0058] (Variation 1) In the first embodiment described above, the arithmetic expression template 47-1 did not include a specific arithmetic function. Therefore, the arithmetic expression generation unit 11 generated the arithmetic expression by replacing the "feature quantity function" in the arithmetic expression template 47-1 with a function listed in the function list 47-2. However, the arithmetic expression template 47-1 may include a specific arithmetic function.

[0059] Fig. 19 is a diagram showing an example of an arithmetic expression template 47-1 in Modification 1. Unlike Fig. 11, Fig. 19 replaces "feature quantity function" with "COUNT," "AVG," "MAX," etc. In this modification, the feature quantity functions listed in function list 47-2 are reflected in advance in arithmetic expression templates 47-1, so although the total number of arithmetic expression templates 47-1 increases, the processing load of arithmetic expression generation unit 11 can be reduced.

[0060] (Variation 2) The computation formula templates 47-1 shown in FIG. 11 all have a statement in the last line that grouping is performed based on individual identification data, and feature values ​​are calculated for each individual. This type of feature value calculation is effective when focusing on individual individual items to perform quality control, but feature value calculation is not limited to this. For example, feature values ​​may be calculated for each task or task state without using individual identification data.

[0061] (Variation 3) In the first embodiment described above, the column correspondence table 48 accommodates spelling variations in the column physical names. However, the column correspondence table 48 may also accommodate spelling variations in the column logical names. In this case, the correspondence between the column logical names with spelling variations expected in the column correspondence table 48 and the column logical names with the spelling variations corrected is added to the column correspondence table 48.

[0062] - Second embodiment - A second embodiment of the feature providing system 1 and the calculation formula generation method will be described with reference to Figures 20 to 22. In the following description, the same components as in the first embodiment are denoted by the same reference numerals, and differences will be mainly described. Points that are not particularly described are the same as in the first embodiment. This embodiment differs from the first embodiment mainly in that the user can edit the feature calculation formula.

[0063] 20 is a flowchart showing an outline of the processing performed by the feature providing system 1 in the second embodiment. The second embodiment differs from the first embodiment in that step S35 is added between step S32 and step S33. In step S35, the user dialogue unit 13 accepts editing of the feature function by the user.

[0064] 21 is a diagram showing the user interface in step S35. This user interface is displayed on the user terminal 90 and is divided into four sections. The upper left section displays the data table specified by the user that was read in step S302, for example, "TS_DATA," and the lower left section displays the metadata for this data table. When the user clicks on a cell where the "PROC_CODE" value is "MC3" and the "MODE_NO" value is "3," the record for "MODE_NO" is highlighted in the lower left section. The upper right section displays the master data for "MODE_NO," and the combination of "PROC_CODE" value "MC3" and "MODE_NO" value "3" that the user clicked on is highlighted.

[0065] Furthermore, the feature function related to the user's click is displayed in the lower right area, and the "Edit," "Delete," and "Add" buttons are arranged so that they can be selected. When the user presses the "Edit" button, the feature function can be edited as shown in the following Figure 22.

[0066] FIG. 22 is a diagram showing how a user edits a feature function. This editing screen may be displayed in the lower right area of ​​FIG. 21 or in the center. The editing screen allows the user to edit the name, description, and SQL. The user can save the edited feature function, for example, by adding the circled character string and then pressing the "Save" button at the lower right. When the user presses the "Start Calculating Feature Quantities" button at the lower right in FIG. 21, the arithmetic expression generation unit 11 outputs the arithmetic expression edited by the user to the third ETL 53, and the third ETL 53 calculates the feature quantities.

[0067] According to the second embodiment described above, the following advantageous effects can be obtained: (6) The user interaction unit 13 is provided, which provides a user interface that enables the user to edit the calculation formula for the feature quantity generated by the calculation formula generation unit 11.

[0068] (Variation of the Second Embodiment) In the second embodiment, the analysis application 92 of the user terminal 90 may analyze the feature amounts calculated by the metadata processing system 10 and present to the user combinations of tasks and sensors that are likely to be highly effective. For example, the analysis application 92 may identify tasks and sensors that have a high correlation with evaluation indexes calculated separately, and present those combinations to the user.

[0069] In the above-described embodiments and modifications, the functional block configurations are merely examples. Some functional configurations shown as separate functional blocks may be integrated, or a configuration shown in a single functional block diagram may be divided into two or more functions. Furthermore, some of the functions of each functional block may be provided by other functional blocks.

[0070] In the above-described embodiments and modifications, the program is stored in a ROM 72 (not shown), but the program may be stored in a rewritable storage device 76. Furthermore, the arithmetic device 70 may be provided with an input / output interface (not shown), and the program may be loaded from another device as needed via the input / output interface and a medium available to the arithmetic device 70. Here, the medium refers to, for example, a storage medium detachable from the input / output interface, or a communication medium, i.e., a wired, wireless, or optical network, or a carrier wave or digital signal propagating through the network. Furthermore, some or all of the functions realized by the program may be realized by a hardware circuit or an FPGA.

[0071] The above-described embodiments and modifications may be combined with each other. Although various embodiments and modifications have been described above, the present invention is not limited to these. Other embodiments conceivable within the scope of the technical concept of the present invention are also included within the scope of the present invention.

[0072] 1: Feature providing system 10: Metadata processing system 11: Calculation formula generation unit 12: Business metadata generation unit 13: User interaction unit 42: Time series data 43: Feature data 44: Master data 45: Technical metadata 46: Business metadata 47: Function list 47-1: Calculation formula template 47-2: Function list 48: Column correspondence table 50: Data processing system 61: First crawler 62: Second crawler 53: Third ETL

Claims

1. A computing system comprising: a storage unit that stores a template including column logical names, which are logical names of data series in time-series data having a plurality of data series, and a column correspondence table that shows the correspondence between column physical names in the time-series data and the column logical names; and an arithmetic expression generation unit that generates an arithmetic expression for calculating feature quantities by replacing the column logical names in the template with identifiers of the column physical names.

2. A computing system according to claim 1, wherein the data series includes a code indicating a major classification, and further comprising an acquisition unit that acquires a first master that lists the codes in the major classification, the template includes the column logical name of the major classification, and the computational formula generation unit generates the computational formula for all cases of values ​​of the major classification based on the first master.

3. A calculation system according to claim 2, wherein the data series includes minor classification codes indicating minor classifications that are smaller than the major classifications, the acquisition unit further acquires a second master in which the minor classification codes are listed, the template further includes the column logical names of the minor classifications, and the calculation formula generation unit generates the calculation formula for all combinations of values ​​of the major classifications and the minor classifications based on the first master and the second master.

4. The computing system according to claim 1, further comprising a calculation unit that calculates a feature quantity using the computational formula.

5. A computing system according to claim 1, wherein the template includes a function identifier, which is an identifier into which a function for calculating a feature is assigned; the storage unit includes a function list, which is a list of functions for calculating a feature; and the computational formula generation unit generates the computational formula by replacing the function identifier in the template with each function listed in the function list.

6. The computing system according to claim 1, further comprising a user interface that enables a user to edit the computational formula generated by the computational formula generation unit.

7. A method for generating an arithmetic expression executed by a computing device having a memory unit that stores a template including column logical names, which are logical names of data series in time-series data having a plurality of data series, and a column correspondence table that shows correspondence between column physical names in the time-series data and the column logical names, the method including generating an arithmetic expression for calculating a feature by replacing the column logical names in the template with identifiers of the column physical names.

Citation Information

Patent Citations

  • Method and device for inspecting control program and automatically generating inspection program therefor

    JP2000276224A

  • Controller, and method and program for providing data

    JP2003044125A

  • Data meaning inference system and data meaning inference method

    WO2021124469A1