Automatic recommendations for analysis of datasets
By extracting the dimensions of the data set and analyzing operation feature information, and automatically recommending the analysis mode, the complexity and time-consuming problems of data set analysis in the existing technology are solved, and fast and efficient data analysis is achieved.
Patent Information
- Application Number
- CN201911184158.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-11-27
- Publication Date
- 2024-12-10
- Estimated Expiration
- 2039-11-27
Smart Images

Figure CN112860685B_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present disclosure relate to automatic recommendation of analyses of data sets. Background Art
[0002] Data analysis has been widely used as an important means to support knowledge discovery and decision-making. In practical applications, people often organize data sets in the form of data tables for visual presentation and sharing of data. In addition, people may sometimes expect to further mine the data set to obtain other desired information. Some data set editing or analysis tools have been developed to operate raw data sets or data tables, but this requires users to have certain analytical skills and proficiency in various editing or analysis tools, and the entire interactive process is often time-consuming. Summary of the invention
[0003] According to the implementation of the present disclosure, a scheme for automatically generating analysis recommendations for a data set is proposed. In the scheme, dimensional feature information of multiple dimensions of a data set and operational feature information of multiple candidate analysis operations are extracted. The multiple dimensions of the data set include corresponding data items. Based on the dimensional feature information and the operational feature information, multiple candidate combinations of multiple dimensions and multiple candidate analysis operations are determined to be suitable for defining corresponding metrics for an analysis mode for the data set, and the analysis mode includes at least one dimension to be analyzed and at least one analysis operation performed on at least one dimension to be analyzed. Based on the determined corresponding metrics, a recommendation is provided regarding the analysis mode for the data set, and the recommendation indicates at least one of the multiple candidate combinations. In this way, an applicable analysis mode can be evaluated and provided for a given data set, facilitating the rapid completion of data analysis tasks.
[0004] This Summary is provided to introduce a selection of concepts in a simplified form that are further described in the Detailed Description below. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to limit the scope of the claimed subject matter. BRIEF DESCRIPTION OF THE DRAWINGS
[0005] Figure 1 A block diagram illustrating a computing environment in which multiple implementations of the present disclosure can be implemented;
[0006] Figure 2 A block diagram of an analysis and recommendation module according to one implementation of the present disclosure is shown;
[0007] FIG. 3A to FIG. 3D shows an example presentation of candidate combinations determined by a candidate evaluation module and recommended by a recommendation providing module according to some implementations of the present disclosure;
[0008] Figure 4A and Figure 4BA schematic diagram showing an example analysis result after performing analysis on a data set according to some implementations of the present disclosure;
[0009] Figure 5A and Figure 5B A schematic diagram showing an example query interface for user input analysis requests according to some implementations of the present disclosure;
[0010] Figure 6 An implementation according to the present disclosure is shown Figure 2 An example block diagram of a candidate evaluation module;
[0011] Figure 7 An implementation according to the present disclosure is shown Figure 6 An example block diagram of a grouping dimension filtering module;
[0012] Figure 8 Another implementation according to the present disclosure is shown. Figure 2 An example block diagram of a candidate evaluation module;
[0013] Fig. 9 An implementation according to the present disclosure is shown Figure 8 An example block diagram of a neural network model; and
[0014] Fig.10 A flow chart illustrating a process according to one implementation of the present disclosure is shown.
[0015] In these drawings, the same or similar reference symbols are used to designate the same or similar elements. DETAILED DESCRIPTION
[0016] The present disclosure will now be discussed with reference to several example implementations. It should be understood that these implementations are discussed only to enable those skilled in the art to better understand and thus implement the present disclosure, rather than implying any limitation on the scope of the present disclosure.
[0017] As used herein, the term "including" and variations thereof are to be interpreted as open-ended terms meaning "including but not limited to". The term "based on" is to be interpreted as "based at least in part on". The terms "an implementation" and "an implementation" are to be interpreted as "at least one implementation". The term "another implementation" is to be interpreted as "at least one other implementation". The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may also be included below.
[0018] In this article, the term "dimension" refers to the data portion with a certain attribute in a data set, and a multidimensional data set includes multiple dimensions. The term "data item" is the data unit in each dimension of the data set. In one example, a multidimensional data set can be presented in the form of a data table, where the data corresponding to a dimension in the data set can correspond to a column of the data table (if the data set is presented as a data table in column-major order) or a row of the data table (if the data set is presented as a data table in row-major order). The data items corresponding to each dimension can be individual cells of a column or a row of the data table. In another example, the multidimensional data set can also be represented in a form such as a structured database.
[0019] In this article, "data table" refers to an editable table in an electronic document tool. A data table is formed by cells arranged in rows and columns, and at least one cell of the data table is filled with data (also called content). Electronic documents that provide editable data tables may include electronic forms, text documents that can insert data tables, presentation documents, etc. Many electronic document tools, such as electronic form applications, word processing applications, presentation document applications, etc., can provide editing of data, structure, format, etc. of data tables.
[0020] In this article, "column-major data table" refers to a table with headers only in the column direction, indicating the column names of each column. "Row-major data table" refers to a table with headers only in the row direction, indicating the column names of each row. Column-major data tables or row-major data tables are sometimes also called database tables. A data table with headers in both the column and row directions is called a pivot table.
[0021] In this article, "machine learning model" may also be referred to as "learning model", "learning network", "network model", or "model". "Neural network" or "neural network model" is a deep machine learning model. The parameter set of the machine learning model is determined by training based on training data. The machine learning model uses the parameter set obtained by training to map the received input to the corresponding output. Therefore, the training process of the machine learning model can be considered as learning the mapping or association relationship between input and output from the training data.
[0022] As mentioned above, currently if it is desired to perform analysis on data in an existing data set or data table, the user needs to be familiar with the functions provided by the editing or analysis tools of the data table, and multiple steps may be required to select the data portion of the data table on which the analysis is desired to be performed. Therefore, it is desirable to provide a solution for automatically recommending analysis operations for a data set.
[0023] Example Environment
[0024] Figure 11 is a block diagram of a computing device 100 capable of implementing multiple implementations of the present disclosure. It should be understood that Figure 1 The computing device 100 shown is merely exemplary and should not be construed as limiting the functionality and scope of the implementations described in the present disclosure. Figure 1 As shown, computing device 100 comprises a computing device in the form of a general purpose computing device 100. Components of computing device 100 may include, but are not limited to, one or more processors or processing units 110, memory 120, storage device 130, one or more communication units 140, one or more input devices 150, and one or more output devices 160.
[0025] In some implementations, the computing device 100 can be implemented as various user terminals or service terminals. The service terminal can be a server, a large computing device, etc. provided by various service providers. The user terminal is such as any type of mobile terminal, fixed terminal or portable terminal, including a mobile phone, a site, a unit, a device, a multimedia computer, a multimedia tablet, an Internet node, a communicator, a desktop computer, a laptop computer, a notebook computer, a netbook computer, a tablet computer, a personal communication system (PCS) device, a personal navigation device, a personal digital assistant (PDA), an audio / video player, a digital camera / camcorder, a positioning device, a television receiver, a radio broadcast receiver, an e-book device, a gaming device, or any combination thereof, including accessories and peripherals of these devices or any combination thereof. It is also foreseeable that the computing device 100 can support any type of interface for the user (such as a "wearable" circuit, etc.).
[0026] Processing unit 110 may be a real or virtual processor and is capable of performing various processes according to a program stored in memory 120. In a multi-processor system, multiple processing units execute computer executable instructions in parallel to increase the parallel processing capabilities of computing device 100. Processing unit 110 may also be referred to as a central processing unit (CPU), a microprocessor, a controller, or a microcontroller.
[0027] The computing device 100 typically includes a plurality of computer storage media. Such media may be any available media accessible to the computing device 100, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 120 may be a volatile memory (e.g., registers, caches, random access memory (RAM)), a non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 130 may be a removable or non-removable medium, and may include a machine-readable medium, such as a memory, a flash drive, a disk, or any other medium that can be used to store information and / or data and can be accessed within the computing device 100.
[0028] The computing device 100 may further include additional removable / non-removable, volatile / non-volatile storage media. Figure 1 As shown in , a disk drive for reading or writing from a removable, nonvolatile disk and an optical drive for reading or writing from a removable, nonvolatile optical disk can be provided. In these cases, each drive can be connected to a bus (not shown) by one or more data media interfaces.
[0029] The communication unit 140 enables communication with another computing device via a communication medium. Additionally, the functions of the components of the computing device 100 can be implemented in a single computing cluster or multiple computing machines that can communicate via a communication connection. Therefore, the computing device 100 can operate in a networked environment using a logical connection with one or more other servers, a personal computer (PC), or another general network node.
[0030] Input device 150 may be one or more various input devices, such as a mouse, keyboard, tracking ball, voice input device, etc. Output device 160 may be one or more output devices, such as a display, a speaker, a printer, etc. Computing device 100 may also communicate with one or more external devices (not shown) through communication unit 140 as needed, such as storage devices, display devices, etc., communicate with one or more devices that allow a user to interact with computing device 100, or communicate with any device that allows computing device 100 to communicate with one or more other computing devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).
[0031] In some implementations, in addition to being integrated on a single device, some or all of the various components of the computing device 100 can also be set in the form of a cloud computing architecture. In a cloud computing architecture, these components can be remotely arranged and can work together to implement the functions described in the present disclosure. In some implementations, cloud computing provides computing, software, data access and storage services, which do not require end users to know the physical location or configuration of the system or hardware that provides these services. In various implementations, cloud computing uses appropriate protocols to provide services through a wide area network (such as the Internet). For example, a cloud computing provider provides applications through a wide area network, and they can be accessed through a web browser or any other computing component. The software or components of the cloud computing architecture and the corresponding data can be stored on a server at a remote location. The computing resources in a cloud computing environment can be merged at a remote data center location or they can be dispersed. Cloud computing infrastructure can provide services through a shared data center, even if they appear as a single access point for users. Therefore, the components and functions described herein can be provided from a service provider at a remote location using a cloud computing architecture. Alternatively, they can be provided from a conventional server, or they can be installed directly or otherwise on a client device.
[0032] The computing device 100 may be used to implement automatic formatting of data tables in various implementations of the present disclosure. The memory 120 may include one or more modules having one or more program instructions that may be accessed and executed by the processing unit 110 to implement the functions of various implementations described herein. For example, the memory 120 may include an analysis recommendation module 122 for generating recommendations for analysis operations on a data set.
[0033] When generating analysis recommendations, computing device 100 can receive data set 170 through input device 150. Data set 170 includes multiple dimensions, each dimension including data items of a corresponding type. Figure 1 In the example of , the data set 170 is presented in the form of a data table in column-major order, where one column of the table corresponds to one dimension 172 of the data set 170. In this specific example, the data set 170 includes four dimensions corresponding to the four columns, indicating "Date", "Region", "SalesRep", and "Sales", respectively. Each dimension 172 of the data set 170 includes one or more corresponding data items 175. For example, the "Date" dimension includes data items indicating various dates, and the "Sales" dimension includes data items indicating various sales. The data items of each dimension 172 of the data set 170 are filled in each cell of the table.
[0034] It should be understood that although Figure 1A data table in column-major order is shown, but the data set 170 input for processing can be presented or organized in other forms, such as a data table in row-major order or a pivot table. In a row-major data table, each row is considered to be a dimension of the data set. If the original data set is in the form of a pivot table, the pivot table can be converted into a column-major data table or a row-major data table with the help of table conversion means to facilitate dimensional division. In addition, it is noted that column-major data tables and row-major data tables can also be converted into each other. In some implementations, in order to implement the automatic recommendation of analysis operations on data sets described in this article, the data sets to be analyzed can be transformed into column-major data tables for subsequent processing. It should be understood that Figure 1 The form of the data table, the data included in the data table, and the format of the data table shown in are merely examples.
[0035] The input data set 170 is provided to the analysis recommendation module 122, so that the analysis recommendation module 122 generates analysis recommendations 180 for the data set 170. The analysis recommendation module 122 may optionally output the generated analysis recommendations 180 via the output device 160. In some implementations, the generated analysis recommendations 180 may be selected (e.g., in response to user input) and applied to the data set 170 for data analysis. The analysis results may be output by the output device 160.
[0036] The following will refer to Figures 2 to 9 How the analysis recommendation module 122 determines analysis recommendations for the data set 170 is described in detail.
[0037] Working principle and basic implementation architecture
[0038] According to the implementation of the present disclosure, a scheme for automatically recommending analysis of a data set is proposed. The scheme defines the analysis mode for the data set by at least two aspects: the dimension to be analyzed and the analysis operation performed on the dimension to be analyzed. The dimensions to be analyzed in an analysis mode can be one or more, and the analysis operation to be performed can also be one or more. For a given data set, feature information of the data set is extracted, and based on the feature information, it is determined whether some candidate combinations of multiple dimensions of the data set and multiple candidate analysis operations are suitable for defining an analysis mode for the data set. Whether the candidate combination is suitable for defining an analysis mode for a given data set can be measured by corresponding metrics. Based on the corresponding metrics of multiple candidate combinations, a recommendation on an analysis mode for a given data set can be provided, and the recommendation at least indicates at least one of the multiple candidate combinations.
[0039] Through such a scheme, it is possible to evaluate and provide analysis modes that are applicable to a given data set. Such recommendations can facilitate the analysis task of the data set, quickly obtain the analysis results of the data set, and improve the analysis efficiency.
[0040] Figure 2 FIG. 2 shows an example structure of the analysis and recommendation module 122 according to some implementations of the present disclosure. As shown in the figure, the analysis and recommendation module 122 includes a feature extraction module 210 , a candidate evaluation module 220 , and a recommendation providing module 230 .
[0041] The feature extraction module 210 obtains the data set 170 to be processed, and extracts dimensional feature information 212 of the multiple dimensions 172 of the data set 170. When extracting the dimensional feature information, each dimension of the data set 170 is considered. Figure 1 In the example of , four dimensions of the data set 170, namely, the dimensions "Date", "Region", "SalesRep", and "Sales", are all considered. The extracted dimensional feature information 212 may relate to one or more aspects of each dimension of the data set 170 to characterize each dimension itself and the relationship between these dimensions (e.g., the similarity between two dimensions, the mutual information between two dimensions).
[0042] In some implementations, if the data set 170 includes dimension names of one or more dimensions, such as column names in a header of a data table, the feature extraction module 210 may extract semantic feature representations of the individual dimension names to characterize the semantics of the dimension names. The extraction of semantic feature representations of dimension names may be performed, for example, by vectorizing the dimension names using natural language processing techniques to obtain a combination of word embedding representations (also referred to as "word vectors") in the dimension names as semantic feature representations. Additionally or alternatively, the feature extraction module 210 may extract data distribution feature representations of data items corresponding to multiple dimensions to characterize some statistical features in the individual data items of the data set 170. The data distribution feature representation may be obtained by statistical means. Examples of data distribution feature representations of data items of the data set 170 are listed in Table 1 below.
[0043] Table 1. Example data distribution feature representation of data items
[0044]
[0045]
[0046] The feature extraction module 210 can vectorize the above data distribution feature representation into a vector representation for subsequent use. Of course, in addition to the representations listed in Table 1, other representations of data distribution feature representations can also be used, as long as the specific meanings of these representations can be distinguished. It should be understood that other statistical features can also be extracted from each data item of the data set 170 to be used as data distribution feature representations. The implementation of the present disclosure is not limited in this respect.
[0047] In some implementations, in addition to the dimension feature information 212 of the dimension 172 of the data set 170, the feature extraction module 210 may also extract operation feature information 214 of a plurality of predetermined candidate analysis operations. The plurality of candidate analysis operations are analysis operations that are considered to be likely to be applied to analyze the data set, and these analysis operations may be general, may be related to a certain field involved in the data set, or may be provided by a certain tool / application that can be used to edit or modify the data set 170. Table 2 gives some examples of candidate analysis operations and associated descriptive information.
[0048] Table 2. Candidate analysis operations and corresponding descriptive information
[0049]
[0050]
[0051] It should be understood that the analysis operations listed above are only examples. Any other analysis operations applicable to data analysis are also possible, such as candidate analysis operations applicable in analysis tasks such as data statistics, data clustering / fitting, and data classification. The implementation of the present disclosure is not limited in this respect.
[0052] When extracting the operation feature information 214, the feature extraction module 210 can extract the semantic feature representation of the operation name and / or descriptive information of the candidate analysis operations 202 to characterize the semantics of each candidate analysis operation. Compared with the operation name, the descriptive information provides a more detailed description of one or more aspects of the corresponding candidate analysis operation function, scope of action, effect of action, etc.
[0053] In addition to the dimensional feature information 212 of each dimension of the data set 170 and the operation feature information 214 of the candidate analysis operation, in some implementations of the present disclosure, the feature extraction module 210 can also extract feature representations of other aspects, which will be discussed below.
[0054] The dimensional feature information 212 and the operational feature information 214 extracted by the feature extraction module 210 are provided to the candidate evaluation module 220. The candidate evaluation module 220 evaluates multiple candidate combinations of multiple dimensions 172 of the data set 170 and multiple candidate analysis operations 202 based on the dimensional feature information 212 and the operational feature information 214 to determine the corresponding metrics 224 of these candidate combinations. The metric 224 of the candidate combination is used to measure the reliability of the corresponding candidate combination being suitable for defining an analysis mode for the data set 170. In some implementations, the metric 224 of the candidate combination can be represented by a score within a numerical range, for example. The higher the score of the candidate combination, the more suitable the candidate combination is for defining an analysis mode for the data set 170. Of course, other metrics are also feasible, such as ranking different candidate combinations.
[0055] As mentioned above, an analysis pattern for a data set 170 may include at least one dimension to be analyzed and at least one analysis operation. In some embodiments, the dimensions to be analyzed in the analysis pattern may include: at least one grouping dimension for grouping data items and / or at least one numerical dimension including numerical data items. Such a definition of the analysis pattern can clearly and accurately reflect the general pattern when performing analysis on a given data set. According to an embodiment of the present disclosure, the analysis pattern to be determined for the data set is an analysis pattern that is common in semantics and data distribution. Common analysis patterns can be machine-learned from a large number of existing analyses for various data sets. For example, existing analyses for various data sets can be obtained from the network or various databases. Therefore, as discussed below in some embodiments, a machine learning model can be used to learn common analysis patterns, and such a machine learning model can then be used to determine a suitable analysis pattern for a given data set.
[0056] For example, if the user needs to Figure 1 When analyzing the sales volume given by the dataset 170 in the example, the dimension "Sales" corresponding to the sales volume may be selected, and then the dimensions "SalesRep" and "Region" may be selected and the sum operation may be selected to sum the sales volume by sales representative and by region. In such an analysis mode, the dimensions "SalesRep" and "Region" are grouping dimensions used to group data items, the dimension "Sales" is a numerical dimension containing numerical data items to be analyzed, and the "sum operation" is an analysis operation to be performed on the dimension "Sales" relative to the dimensions "SalesRep" and "Region".
[0057] In some cases, depending on the specific analysis operation, the dimension to be analyzed may only include the numerical dimension, that is, the analysis is performed directly on all data items in the numerical dimension. In some cases, the dimension to be analyzed may also not have a numerical dimension, for example, the "count operation" can be applied to count the number of data items in a certain grouping dimension or the number of data items in the entire data set.
[0058] In some implementations, an analysis pattern may include two or more analysis operations, and the execution results of the previous one or more analysis operations are used as the analysis basis for the next analysis operation. For example, an analysis pattern may include a filtering operation and a summing operation, and the filtering operation can be used to filter one or more data items from the grouping dimension, thereby removing the numerical data items corresponding to the filtered grouping, and then the summing operation can be applied to the numerical data items in other groups. For another example, an analysis pattern may include a grouping operation and an averaging operation, and the grouping operation can be used to further group multiple data items in the grouping dimension to form fewer groups, and the averaging operation can average the further grouped numerical data items.
[0059] Since data sets vary widely, the number and type of dimensions contained in each data set may be different. Therefore, it is necessary to automatically evaluate whether each dimension of the data set is suitable as a grouping dimension or a numerical dimension. In addition, it is necessary to evaluate whether multiple dimensions combined with candidate analysis operations can define an appropriate analysis mode for the data set. In the implementation of the present disclosure, for a given data set 170, the candidate evaluation module 220 evaluates whether each different candidate combination of multiple dimensions 172 of the data set 170 and multiple candidate analysis operations is suitable for defining an analysis mode for the data set 170. The candidate combination may include at least one dimension to be analyzed in the data set 170 (when multiple dimensions to be analyzed are included, it is also necessary to distinguish which dimensions are used as grouping dimensions and which dimensions are used as numerical dimensions) and at least one candidate analysis operation among multiple candidate analysis operations.
[0060] In some implementations, the candidate evaluation module 220 can explore multiple possible candidate combinations of multiple dimensions 172 of the data set 170 and multiple candidate analysis operations, each candidate combination being able to fully define an analysis mode for the data set 170. In other implementations, the candidate evaluation module 220 can obtain a designation of one or more parts of the candidate combination. For example, a user may input one or more dimensions on which an analysis is desired to be performed, and / or one or more analysis operations desired to be performed, etc. For another example, in the course of some automatic analysis tasks for the data set 170, it may be desired to determine whether one or more dimensions of the data set 170 or a certain analysis operation is suitable for defining an analysis mode for the data set. If such a pre-designation can be obtained, the candidate evaluation module 220, when performing the evaluation, can determine each candidate combination of the multiple candidate combinations as including one or more pre-designated dimensions and one or more analysis operations desired to be performed.
[0061] The implementation of the present disclosure provides a variety of schemes for determining that a candidate combination is suitable for defining a corresponding metric 224 for an analysis mode for a data set 170, which will be described in detail below. Figure 1 An example of a dataset of 170, Figure 2 Examples of corresponding metrics 224 for some candidate combinations determined by candidate evaluation module 220 are given in FIG. Figure 2 As shown, the candidate evaluation module 220 can determine a candidate combination including the following items: ([SalesRep], [Region]), ([Sales]) and ([SUM]), and the metric corresponding to the candidate combination. In the candidate combination, the first bracket represents the dimension used as a grouping dimension in the data set 170, the second bracket represents the dimension used as a numerical dimension in the data set 170, and the third bracket represents the analysis operation (i.e., the sum operation). The candidate combination defines such an analysis mode: summing the sales (i.e., the dimension "Sales" in the data set) by sales representative and region (i.e., the dimensions "SalesRep" and "Region" in the data set 170). Similarly, the candidate evaluation module 220 determines the metric corresponding to the subsequent combination "([Region], []), ([Sales]) and ([SUM])", and the analysis mode defined by the candidate combination is: summing the sales (i.e., the dimension "Sales" in the data set) by region (i.e., the dimension "Region" in the data set 170). The metrics of other candidate combinations are also listed.
[0062] The metrics 224 of the plurality of candidate combinations determined by the candidate evaluation module 220 are provided to the recommendation providing module 230. The recommendation providing module 230 provides a recommendation 180 about an analysis mode for a data set based on the corresponding metrics 224 of the plurality of candidate combinations. The recommendation 180 indicates at least one of the plurality of candidate combinations. In some implementations, the recommendation providing module 230 selects one or more candidate combinations with higher metrics from the plurality of candidate combinations for recommendation. In some implementations, a threshold metric may be set, and the candidate evaluation module 220 may recommend one or more candidate combinations with metrics higher than the threshold metric.
[0063] In some implementations, one or more candidate combinations to be recommended by the recommendation providing module 230 may be presented to the user. Since the candidate combination defines the analysis mode for the data set 170, by presenting the candidate combination with a higher metric to the user, the user can directly select the desired candidate combination to apply to the data set 170. Such recommendations may be provided in a user interface of a tool or application (such as an electronic form application) that can edit and present a data set or data table. In this way, after receiving the user's selection of the candidate combination, the defined analysis mode is directly applied to the data set 170, thereby presenting the analysis results on the corresponding user interface. In this way, the user can quickly learn the general analysis method for the data set 170 and quickly apply it without being familiar with the analysis operations that the tool or application can provide, and without cumbersome manual operation steps.
[0064] FIG. 3A to FIG. 3D Schematically shows an example presentation of some candidate combinations determined by the candidate evaluation module 220 and recommended by the recommendation providing module 230. FIG. 3A to FIG. 3D In the example of , the candidate combinations are presented according to the example analysis results after being applied to the data set 170, where "Total" means adding the data items in the corresponding row or column, and "Average" means averaging the data items in the corresponding row or column. Figure 3A In the representation 310, the candidate combinations ([SalesRep], [Region]), ([Sales]), and ([SUM]) are schematically shown, which visually illustrates the resulting pivot table and the sum of the dimension “Sales” by the dimension “SalesRep” and the dimension “Region” that will be contained in the table. Figure 3B In the presentation 320 of FIG. 3 , the candidate combination “([Region], [ ]), ([Sales]) and ([SUM])” is schematically shown, which visually shows the resulting column-major data table and the result of summing the dimension “Sales” by the dimension “Region” that will be contained in the table. Figure 3CIn the presentation 330 of FIG. 3 , the candidate combinations ([Date], [SalesRep]), ([Sales]), and ([AVERAGE]) are schematically shown, which visually illustrates the resulting pivot table and the results of averaging the dimension “Sales” by the dimension “Date” and the dimension “SalesRep” that the table will contain. Figure 3D In the presentation 340, the candidate combinations "([SalesRep], []), ([Sales]) and ([SUM])" are schematically shown, which visually shows the resulting column-major-ordered data table and the result of summing the dimension "Sales" by the dimension "SalesRep" that will be contained in the table. Such a visual presentation helps the user quickly locate the analysis pattern through the schematic analysis results.
[0065] If the user selects a candidate combination, such as the candidate combination "([SalesRep], [Region]), ([Sales]), and ([SUM])", the analysis pattern defined by the candidate combination can be applied to data set 170. The analysis pattern defined by the candidate combination "([SalesRep], [Region]), ([Sales]), and ([SUM])" can be represented, for example, as an instruction: Sum "Sales" by "SalesRep" and "Region", which means "sum the sales by sales representative and region". Such instructions can be provided to the editing tool of data set 170 to obtain the corresponding analysis results. The analysis results of data set 170 can also be presented. The presentation of the analysis results can be varied, for example, in the form of a data table, a histogram, a curve, a pie chart, etc. The user can specify the presentation method of the analysis results, or can use the default presentation method or select a suitable presentation method according to the specific analysis results.
[0066] Figure 4A and Figure 4B The analysis results after analyzing the data set 170 according to the analysis mode selected by the user (ie, “summing sales by sales representative and region”) are respectively shown. Figure 4A The analysis results 410 in the form of a data table are shown. Figure 4B The results of the analysis are shown in the form of a histogram. Note that Figure 1 Not all data items of data set 170 are shown in full. Figure 4A and Figure 4B The analysis results are performed on all data items of the dimensions involved in the data set 170 .
[0067] In some implementations, as mentioned above, one or more elements of the candidate combination to be evaluated by the candidate evaluation module 220 may be pre-specified. One possible scenario is that a user is inputting an analysis request for a data set 170. The candidate evaluation module 220 may determine possible candidate combinations and evaluate these candidate combinations based on the dimensions of the data set 170 and / or the analysis operations to be performed involved in the analysis request partially input by the user. The recommendation providing module 230 may then select one or more candidate combinations with higher metrics to present as recommendations for the complete analysis request input by the user. This helps users locate and input desired analysis requests more quickly and obtain analysis results more quickly.
[0068] Figure 5A and Figure 5B Two examples related to user input analysis requests are shown. Figure 5A In the example of , in the query interface 510, no user input is received in the input box. The recommendation of the analysis mode of the data set 170 determined by the example analysis recommendation module 122 of the present disclosure can be provided as the user's input recommendation, such as Figure 5A As shown. Figure 5B In the example of , in the query interface 520, the input box receives a partial input of the user, namely "SUM", and it can be determined that the analysis mode that the user wants to apply to the data set 170 should include "SUM". The example analysis recommendation module 122 of the present disclosure will determine the corresponding metrics of multiple candidate combinations including "SUM", and provide the candidate combination with a higher metric as the user's input recommendation, such as Figure 5B shown.
[0069] The above discussion implements automatic recommendations for analysis of a data set. The following will discuss in detail how the candidate evaluation module specifically evaluates the metrics of each candidate combination with reference to some examples, so as to measure whether these candidate combinations are suitable for defining an analysis mode for a data set. Example implementation of pipeline candidate evaluation
[0070] In some implementations, the candidate evaluation module 220 may use a pipeline approach to evaluate the candidate combinations that can be formed by the multiple dimensions 172 of the data set 170 and the multiple candidate analysis operations. Specifically, in a pipeline approach, the candidate evaluation module 220 may first evaluate whether the multiple dimensions 172 of the data set 170 are suitable as grouping dimensions or numerical dimensions, including whether a single dimension is suitable as a grouping dimension or numerical dimension in an analysis mode, and whether two or more dimensions combined together are suitable as multiple grouping dimensions or numerical dimensions in an analysis mode. Then, the candidate evaluation module 220 may screen out multiple candidate dimension combinations that are suitable as dimensions to be analyzed, each candidate dimension combination including at least one dimension from the multiple dimensions 172 of the data set 170. The candidate evaluation module 220 may continue to combine multiple candidate dimension combinations with multiple candidate analysis operations to generate multiple candidate combinations to be evaluated for the definition of the analysis mode. The candidate evaluation module 220 may then calculate the corresponding metrics of the multiple candidate combinations.
[0071] In some implementations, when determining candidate dimension combinations, the candidate evaluation module 220 can also determine, in parallel, grouping dimension candidates that can be used as grouping dimensions and numerical dimension candidates that can be used as numerical dimensions from multiple dimensions 172 of the data set 170, and then determine the candidate dimension combination from various combinations of grouping dimension candidates and numerical dimension candidates.
[0072] Figure 6 An example architecture of the candidate evaluation module 220 for an example implementation of pipelined candidate evaluation is shown. Figure 6 In the example implementation of , the candidate evaluation module 220 includes a grouping dimension screening module 610, a metric screening module 620, a dimension combination screening module 630, and a combination evaluation module 640. The grouping dimension screening module 610 and the metric screening module 620 are respectively used to determine which dimensions are suitable as grouping dimensions or numerical dimensions in the analysis mode from the dimensions 172 of the data set 170 based on the dimension feature information 212. The dimension combination screening module 630 further determines candidate dimension combinations based on the screening results of the grouping dimension screening module 610 and the metric screening module 620, each candidate dimension combination including at least one dimension 172 in the data set 170, which are determined by the grouping dimension screening module 610 and the metric screening module 620 as being suitable as a grouping dimension and a numerical dimension. Then, the candidate dimension combinations are provided to the combination evaluation module 640 for combination with the candidate analysis operation 202 to evaluate the corresponding metrics of the candidate combinations.
[0073] In some implementations, one or more of the grouping dimension screening module 610, the metric screening module 620, the dimension combination screening module 630, and the combination evaluation module 640 can use a machine learning model to implement its functions. The machine learning model used by each module can be pre-trained to give the expected output results of the module based on the input feature information. The functions to be implemented by the grouping dimension screening module 610, the metric screening module 620, the dimension combination screening module 630, and the combination evaluation module 640 are different, so the feature information to be considered by the machine learning model used by each module is also different.
[0074] In some implementations, the machine learning model to be used by the grouping dimension screening module 610, the metric screening module 620, the dimension combination screening module 630 and / or the combination evaluation module 640 may be a decision tree-based model. In some examples, the decision tree-based model may be a random forest (RF) model. The RF model refers to a classifier that uses multiple decision trees to train and predict training samples. The RF model can give the corresponding confidence or metric that the input is divided into each category. The RF model can be trained in a supervised or unsupervised manner. Different decision tree-based models can be trained to implement the corresponding functions of the grouping dimension screening module 610, the metric screening module 620, the dimension combination screening module 630 and / or the combination evaluation module 640. The specific working mechanism of the RF model is well known to those skilled in the art and will not be described in detail here.
[0075] In some implementations, other examples of machine learning models to be used by the grouping dimension screening module 610, the metric screening module 620, the dimension combination screening module 630, and / or the combination evaluation module 640 may be, for example, support vector machines (SVMs), XGBoost models, various neural networks, and other machine learning models suitable for determining the metric of classification or regression based on vectorized feature information. It should also be understood that currently developed or future improvements to machine learning models may be correspondingly applied to the example implementations of the present disclosure.
[0076] The following will describe in detail Figure 6The grouping dimension screening module 610 determines one or more dimensions suitable as grouping dimensions from the multiple dimensions 172 as grouping dimension candidates 612 based on the dimensional feature information 212 of the multiple dimensions 172 of the data set 170. Since an analysis mode of a data set can be defined by one or more grouping dimensions, each grouping dimension candidate 612 may include one or more dimensions 172 of the data set 170. The grouping dimension screening module 610 can explore various possible combinations of the multiple dimensions 172 as grouping dimension candidates (each grouping dimension candidate includes one or more dimensions 172), and determine that the grouping dimension candidates can be suitable as corresponding metrics of the grouping dimensions in the analysis mode (sometimes also referred to as "first metrics" in this document for distinction).
[0077] For each grouping dimension candidate, the grouping dimension screening module 610 can determine the measure of the grouping dimension candidate based on the feature information portion corresponding to one or more dimensions 172 involved in the grouping dimension candidate in the dimension feature information 212. The feature information portion may include the semantic feature representation of the dimension name of the dimension 172 involved, and the data distribution feature representation of the data items included in the dimension 172. When the grouping dimension candidate involves multiple dimensions 172, the semantic feature representation of the dimension name and the data distribution feature representation of the multiple dimensions 172 can be averaged, or these feature representations can be cascaded. When the grouping dimension candidate involves multiple dimensions 172, the data distribution feature representation can also characterize some features across multiple dimensions 172, such as similarity and mutual information between dimensions. When the RF model is used for implementation, the feature information portion of each dimension 172 involved in the grouping dimension candidate is used as the input of the RF model. Based on this, the RF model can determine that the grouping dimension candidate is suitable as a measure of the grouping dimension in the analysis mode.
[0078] For multiple possible grouping dimension candidates, the grouping dimension screening module 610 can determine the corresponding metrics. The grouping dimension screening module 610 can select some grouping dimension candidates 612 with higher metrics based on the corresponding metrics of each grouping dimension candidate and provide them to the dimension combination screening module 630 for determining the dimension combination. In some implementations, the grouping dimension screening module 610 can sort the various grouping dimension candidates by metric, and then screen a predetermined number of grouping dimension candidates 612 with higher metrics from the various grouping dimension candidates. Alternatively, the grouping dimension screening module 610 can also select one or more grouping dimension candidates 612 with metrics higher than a certain threshold metric from the sorted grouping dimension candidates and provide them to the dimension combination screening module 630. Figure 6 The Figure 1 An example list of grouping dimension candidates 612 filtered based on the example data set 170 .
[0079] In some implementations, since the number of grouping dimensions in the analysis mode is not fixed (may be one or more), it is necessary to explore all possible combinations of multiple dimensions 172, which results in a large number of grouping dimension candidates that need to be evaluated. In order to improve efficiency, heuristic beam searching can be used to determine that multiple grouping dimension candidates are suitable as corresponding first metrics of the grouping dimensions.
[0080] In some implementations, for grouping dimension candidates that include multiple dimensions, the corresponding analysis role of each dimension in the analysis mode also needs to be considered. For example, if the grouping dimensions in the analysis mode are set to different analysis roles, the final analysis results may be presented differently. Usually, when generating a pivot table, it is necessary to clearly define the analysis role of the grouping dimension, such as the column-oriented data (i.e., the dimension name as the column header) or the row-oriented data (i.e., the dimension name as the row header) for the directional pivot table (see Figure 4A Of course, when generating other types of analysis results, such as generating a histogram or curve chart equivalent to a pivot table, the analysis role of the grouping dimension will limit the variables in the horizontal and vertical axes of the histogram or curve chart (see Figure 4B In the evaluation phase, the grouping dimension screening module 610 may consider the number of grouping dimensions corresponding to different analysis roles.
[0081] Figure 7 FIG. 6 shows an example structural block diagram of the grouping dimension screening module 610. Figure 7 As shown, the grouping dimension screening module 610 includes a heuristic beam search module 710, a metric determination module 720, and a requirement-based screening module 730. The metric determination module 720 may utilize the RF model to determine the corresponding metric of each grouping dimension candidate.
[0082] The heuristic beam search module 710 is configured to cooperate with the metric determination module 720 by means of heuristic beam search to quickly determine the grouping dimension candidates. Heuristic beam search is a heuristic graph search algorithm, which is usually used when the solution space of the graph is relatively large. In order to reduce the space and time occupied by the search, some solutions with poor quality are cut off at each step of the search, and some solutions with higher quality (for example, a predetermined number of solutions) are retained. The next round of search continues to expand on the basis of the retained solutions. This reduces space consumption and improves time efficiency. In the example of grouping dimension screening, the solution space includes possible combinations of multiple dimensions 172 of the data set 170 (i.e., possible grouping dimension candidates). The "quality" of the solution refers to the metric determined by the metric determination module 720.
[0083] The heuristic beam search module 710 can perform multiple rounds of searches in the solution space. The initial search starts with a single dimension in the multiple dimensions 172. Each dimension combination determined by the heuristic beam search module 710 is provided to the metric determination module 720 to determine the corresponding metric. Some dimension combinations with higher metrics in each round are provided to the heuristic beam search module 710 for the next round of search. Finally, the metric determination module 720 screens some grouping dimension candidates with higher metrics (e.g., a first predetermined number of grouping dimension candidates) based on the metrics of all determined dimensional combinations. Each grouping dimension candidate includes one or more dimensions 172.
[0084] The requirement-based screening module 730 can utilize the grouping dimension requirements associated with the analysis mode to select grouping dimension candidates that meet the grouping dimension requirements from the grouping dimension candidates screened by the metric determination module 720. The grouping dimension requirements indicate the number of grouping dimensions required for each analysis role in the analysis operation. For example, in the need to indicate two analysis roles as "column direction data" and "row direction data", a grouping dimension requirement indicates the number of dimensions required for "column direction data" and the number of dimensions required for "row direction data". There can be multiple analysis dimension requirements. These analysis dimension requirements can be, for example, determined by determining common requirements on the number of column directions and row directions from existing data tables. For example, the following multiple grouping dimension requirements can be determined: (2 columns, 1 row), (2 columns, 0 rows), (1 column, 1 row), etc., indicating the requirements for the number of columns and rows, respectively. For each grouping dimension requirement to be considered, the requirement-based screening module 730 can determine, from the multiple grouping dimension candidates provided by the metric determination module 720, a grouping dimension candidate that meets the number requirements in the row direction and a grouping dimension candidate that meets the number requirements in the column direction, and then combine these two grouping dimension candidates into a screened grouping dimension candidate 612.
[0085] Continue to refer back Figure 6, the numerical dimension screening module 620 determines one or more dimensions suitable as numerical dimensions from the multiple dimensions 172 as numerical dimension candidates 622 based on the dimensional feature information 212 of the multiple dimensions 172 of the data set 170. In some implementations, the number of numerical dimensions in the analysis mode can be specified, for example, the number of numerical dimensions is 1. In this way, the numerical dimension screening module 620 can evaluate the corresponding metrics of the single dimensions 172 of the data set 170 as numerical dimension candidates (sometimes also referred to as "second metrics" in this article for the sake of distinction). In some implementations, the number of numerical dimensions in the analysis mode may be uncertain, so in order to determine possible grouping dimension candidates, the numerical dimension screening module 620 also needs to explore various combinations of the multiple dimensions 172 of the data set 170 and determine the corresponding metrics when these combinations are used as numerical dimension candidates. In such an implementation, similar to the grouping dimension screening, heuristic beam search can be applied to achieve fast search.
[0086] For each numerical dimension candidate, the numerical dimension screening module 620 can determine the measurement of the numerical dimension candidate based on the feature information portion corresponding to one or more dimensions 172 involved in the numerical dimension candidate in the dimension feature information 212. The feature information portion may include the semantic feature representation of the dimension name of the dimension 172 involved, and the data distribution feature representation of the data items included in the dimension 172. When the numerical dimension candidate involves multiple dimensions 172, the semantic feature representation of the dimension name of the multiple dimensions 172 and the data distribution feature representation can be averaged, or these feature representations can be cascaded. When the numerical dimension candidate involves multiple dimensions 172, the data distribution feature representation can also characterize some features across multiple dimensions 172, such as similarity and mutual information between dimensions. When the RF model is used for implementation, the feature information portion of each dimension 172 involved in the numerical dimension candidate is used as the input of the RF model. Based on this, the RF model can determine that the numerical dimension candidate is suitable as a measurement of the numerical dimension in the analysis mode.
[0087] For multiple possible numerical dimension candidates, the numerical dimension screening module 620 can determine the corresponding metrics. The numerical dimension screening module 620 can select some numerical dimension candidates 622 with higher metrics based on the corresponding metrics of each numerical dimension candidate and provide them to the dimension combination screening module 630 for determining the dimension combination. In some implementations, the numerical dimension screening module 620 can sort the various numerical dimension candidates by metric, and then screen a predetermined number (sometimes referred to as the "second predetermined number" in this article for distinction) of numerical dimension candidates 622 with higher metrics from each numerical dimension candidate. Alternatively, the numerical dimension screening module 620 can also select one or more numerical dimension candidates 622 with metrics higher than a certain threshold metric from the sorted numerical dimension candidates and provide them to the dimension combination screening module 630. Figure 6 The Figure 1 An example list of numerical dimension candidates 622 filtered based on the example data set 170 .
[0088] Continue to refer Figure 6 , the screened grouping dimension candidates 612 and numerical dimension candidates 622 are provided to the dimension combination screening module 630. The dimension combination screening module 630 evaluates multiple candidate dimension combinations consisting of grouping dimension candidates and numerical dimension candidates to determine whether these candidate dimension combinations are suitable for defining corresponding dimension combination metrics of at least one dimension to be analyzed in the analysis mode for the data set 170. Each candidate dimension combination includes a grouping dimension candidate 612 and / or a numerical dimension candidate 622. The dimension combination screening module 630 can enumerate various possible combinations of the screened grouping dimension candidates 612 and numerical dimension candidates 622.
[0089] The dimension combination screening module 630 can also use the RF model to determine the corresponding dimension combination metrics of each candidate dimension combination. When the RF model is used for implementation, the feature information portion of each dimension 172 involved in the candidate dimension combination is used as the input of the RF model. Based on this, the RF model can determine that the candidate dimension combination is suitable as the dimension combination metric of the grouping dimension and the numerical dimension in the analysis mode.
[0090] After determining the corresponding dimension combination metrics of all dimension combinations, the dimension combination screening module 630 can select one or more candidate dimension combinations with higher metrics from multiple candidate dimension combinations based on the dimension combination metrics, for combination with multiple candidate analysis operations 202 to form a candidate combination for defining an analysis module. In some implementations, the dimension combination screening module 630 can sort the candidate dimension combinations according to the dimension combination metrics, and then screen a predetermined number of candidate dimension combinations 632 with higher metrics from the candidate dimension combinations and provide them to the combination evaluation module 640. Alternatively, the dimension combination screening module 630 can also select one or more candidate dimension combinations 632 with metrics higher than a certain threshold metric from the sorted candidate dimension combinations and provide them to the combination evaluation module 640. Figure 6 The Figure 1 An example list of candidate dimension combinations 632 filtered based on the example data set 170 .
[0091] The combination evaluation module 640 is configured to enumerate multiple candidate combinations consisting of candidate dimension combinations 632 and candidate analysis operations 202, each candidate combination including a candidate dimension combination and one or more candidate analysis operations 202. The combination evaluation module 640 can further evaluate each candidate combination to determine whether each candidate combination is suitable for defining a corresponding metric 224 for an analysis mode for the data set 170. The combination evaluation module 640 can determine the corresponding metric based on the operation feature information 214 and the dimension feature information 212. For a given candidate combination, the combination evaluation module 640 can determine the metric using the feature information portion of the operation feature information 214 corresponding to the candidate analysis operation in the candidate combination and the feature information portion of the dimension feature information 212 corresponding to the dimension in the candidate combination. The determination of the metric can also be achieved with the aid of an RF model. The corresponding feature information portion can be used as an input to the RF mode to determine the metric of the candidate combination. In some implementations, for each candidate combination, the combination evaluation module 640 may combine the corresponding dimension combination metric of the candidate dimension combination determined by the dimension combination screening module 630 and the corresponding metric of the candidate combination determined by the combination evaluation module 640 (e.g., the product of the two metrics) as the final metric 224 of the candidate combination. Example Implementation of Candidate Evaluation Based on Analysis Language
[0092] In some implementations of the present disclosure, an analysis language is predefined. The analysis pattern of the data set 170 can be represented by such an analysis language, which includes predetermined symbols (similar to "vocabulary" in natural language) and predetermined rules for the arrangement of these symbols (similar to "grammar rules" in natural language). The predetermined symbols can also be called tokens. After one or more symbols are combined into a sequence according to predetermined rules, the sequence can represent an analysis pattern. Such an analysis language can sometimes be considered as a domain-specific language or a programming language. By defining such an analysis language, a neural network model for natural language processing or programming language processing can be used to implement candidate evaluation. At present, many neural network models have been designed for natural language processing tasks, and these models can also be applied to computer programming language processing tasks after certain deformations. In addition, there are also some neural network models that can be designed to specifically process tasks in programming languages. These models are all applied in the embodiments of the present disclosure.
[0093] Fig. 9 An example of a candidate evaluation module 220 in such an implementation is shown. Fig. 9 As shown, the candidate evaluation module 220 implements candidate evaluation using a neural network model 810. The neural network model 810 may be any model suitable for natural language or programming language processing.
[0094] A set of predetermined symbols in the defined analysis language may include: candidate indicators for indicating various dimensions of a data set, candidate indicators for indicating multiple candidate analysis operations, and separators. Therefore, for different data sets 170, the candidate indicators for indicating the dimension 172 in the predetermined symbols will be different, and the multiple candidate analysis operations 202 that may be applicable are also different, and thus the candidate indicators indicating the candidate analysis operations are also different. In some implementations, the candidate indicator may use the dimension name of the dimension 172 and the operation name of the candidate analysis operation 202 as a predetermined indicator. The separator may be defined as a predetermined symbol, for example, it may be represented as [SEP]. The separator is used to separate grouping dimensions indicating different analysis roles in an analysis operation in a sequence. In some implementations, the predetermined symbols also include a start symbol for indicating the start of a sequence, for example, it may be represented as [ANA]. By selecting the predetermined symbol, the sequence composed of the selected symbols can be used to define the analysis mode.
[0095] The predetermined rules of the defined analysis language may include defining the relative position relationship in the sequence between the dimensions to be analyzed (e.g., grouping dimensions and / or numerical dimensions) and the predetermined symbols corresponding to the analysis operations in the analysis mode. For example, the corresponding predetermined symbols may be arranged in the order of "numerical dimensions, grouping dimensions, and analysis operations". In other examples, other arrangement orders of the three components of the analysis mode may also be specified, and the implementation of the present disclosure is not limited in this respect. In the case where the analysis mode can be defined by multiple grouping dimensions, the predetermined rules of the defined analysis language may also specify that different analysis roles in the analysis operation are separated in the sequence by separators (e.g., [SEP]). In some implementations, when there are grouping dimensions and numerical dimensions in the analysis mode, separators may also be specified for separating the grouping dimensions and the numerical dimensions. Alternatively or additionally, separators may also be specified for separating the dimensions to be analyzed (i.e., grouping dimensions and / or numerical dimensions) and the analysis operations in the analysis mode.
[0096] The predetermined rules of the defined analysis language may also specify that: in each sequence, each candidate indicator (corresponding to a dimension or an analysis operation) among the plurality of candidate indicators will not appear repeatedly. In practical applications, an analysis process will not use the same dimension as both a grouping dimension and a numerical dimension, or an analysis process will not apply the same analysis operation twice. For example, the analysis result obtained by repeatedly performing an analysis operation on the same numerical dimension is meaningless, or applying an analysis operation to the same dimension multiple times generally does not obtain a meaningful analysis result.
[0097] According to the above-mentioned predetermined rules, the analysis pattern of the data set can be represented by a sequence of symbols. For example, for the analysis pattern "Sum (SUM) the sales volume "Sales" by sales representative "SalesRep" and by region "Region", the analysis pattern can be represented as an analysis sequence in the analysis language, such as [ANA][Sales][SEP][SalesRep][SEP][Regions][SUM]. It should be understood that in addition to representing in sequence based on predetermined symbols in the analysis language, when performing the analysis, a set of predetermined symbols corresponding to the analysis pattern can also be represented as other structures, such as a tree structure. The tree structure and the symbol sequence of the same analysis pattern can be converted into each other. In this article, for the sake of convenience of explanation, a set of symbols corresponding to the analysis pattern is mainly represented in sequence form.
[0098] The data set 170 to be analyzed is represented as It includes n dimensions. The set of n dimensions is expressed as That is, 172 per dimension The set of predetermined symbols for the data set 170 is represented as Analyze each predetermined symbol in the sequence It can be one of the following three types of symbols: Candidate indicator corresponding to dimension 172 The candidate indicator corresponding to the candidate analysis operation 202 is selected from Symbols indicating type changes, namely separators and start characters, i.e. Where [ANA] indicates the start symbol, and [SEP] indicates the separator. Therefore, if the defined analysis language is expressed in Backus-Naur form, it can be expressed as:
[0099] <Analysis Sequence> [ANA][a dimension][SEP]<one or more grouping dimensions><analysis operation>
[0100] <One or more <one or more dimensions>|<one or more dimensions>[SEP]<one grouping dimension> or multiple grouping dimensions>
[0101] <One or more λ|<one dimension><one or more dimensions>
[0102] Dimensions>
[0103] <One Dimension> From Dimensions
[0104] <Analysis Operation> From Candidate analysis operations
[0105] In <one or more grouping dimensions>, the number of dimensions separated by [SEP] varies depending on the analysis type. For example, if the analysis is to obtain a pivot table, the grouping dimension has two analysis roles in the analysis operation, so a separator [SEP] is used to separate the two analysis roles. In some implementations, if the numerical dimension is determined to be one, the separator between the numerical dimension and the grouping dimension can be omitted, so that the candidate indicator after the start symbol [ANA] in the analysis sequence indicates the numerical dimension by default, and the one or more indicators after the indicator of the numerical dimension indicate the grouping dimension.
[0106] After the symbols and rules of the analysis language are defined, a natural language processing model suitable for sequence analysis can be used as a neural network model 810 when evaluating multiple candidate combinations of multiple dimensions 172 and multiple candidate analysis operations 202 of the data set 170. The neural network model 810 can generate and evaluate whether the target analysis sequence is suitable for defining the analysis mode and determine the corresponding sequence metrics. The target analysis sequence may include indicators corresponding to the dimensions 172 and the candidate analysis operations 202, as well as necessary separators [SEP] and starters [ANA]. In some examples, the separator [SEP] may appear one or more times, that is, the target analysis sequence may include multiple separators [SEP]. The separator [SEP] is used to separate some of the candidate indicators in the target analysis sequence.
[0107] Generally speaking, the number of such sequences is also very large, because the number of possible sequences composed of dimension 172, candidate analysis operations and separators is very large. The task of neural network model 810 is to screen and determine the sequence that can truly define the analysis mode for data set 170 from such possible sequences.
[0108] To facilitate understanding, we first introduce some definitions of various sequences composed according to the symbols and rules of the analytical language. If the syntax of the defined analysis language (i.e., the various rules mentioned above) is followed, then the analysis sequence can be considered complete, and is called a complete analysis sequence. A complete analysis sequence can fully define the various components of an analysis pattern. For a given data set 170, the set of all possible complete analysis sequences is represented as Will gather The set of all prefixes of all analyzed sequences in is denoted by Therefore, in the collection The sequence in is called a partial analysis sequence set, which refers to the prefix set with the complete analysis sequence removed. outside the part.
[0109] In addition, the analysis sequence corresponding to the analysis mode that the user actually creates or uses is called the target analysis sequence. The set of target sequences (expressed as ) belongs to part or all of the complete analysis sequence, that is, Assumptions Representing a collection The set of all prefixes of all target analysis sequences in , then the set The sequence in is called a partial target analysis sequence, which refers to the prefix set with the target analysis sequence set removed. Note that the set The sequence in the dataset is compared to the collection of dimensions The number grows exponentially because as the number of dimensions grows, the number of possible combinations of dimensions explodes.
[0110] In the case of the above-mentioned definition of a given sequence set, the evaluation task of candidate combinations of multiple dimensions 172 and multiple candidate analysis operations 202 can be converted into a language modeling task. If the composition of the candidate combination is not pre-specified, the modeling task of the neural network model 810 in the candidate evaluation module 220 is: 170 cases, evaluating the complete analytical sequence The metric of the analysis is to filter one or more complete analysis sequences (s1, ..., s k , i.e., k analysis sequences). If the partial composition of the candidate combination is pre-specified, the modeling task of the neural network model 810 in the candidate evaluation module 220 is: in a given partial analysis sequence (which includes the candidate indicator corresponding to the given part) and possible next scheduled symbol In the case of , the possibility (i.e., measure) that the sequence composed of sa can continue to define the analysis pattern (i.e., the sa sequence is a prefix of the complete analysis sequence).
[0111] In operation, the candidate evaluation module 220 obtains a set of predetermined symbols associated with the data set 170, i.e., candidate indicators indicating multiple dimensions 172 of the data set 170, multiple candidate partitioning operations 202 that may be applicable to the data set 170, and other predetermined symbols (e.g., separators and start symbols). The neural network model 810 can determine the corresponding sequence metric of the target analysis sequence composed of symbols in such a set of predetermined symbols according to predetermined rules. The target analysis sequence here refers to the complete analysis sequence.
[0112] In the process of determining the metric of the complete analysis sequence, starting from an initial sequence including a start symbol, symbols can then be iteratively selected from predetermined symbols for constructing possible candidate sequences, and the constructed candidate sequences follow one or more predetermined rules of the analysis language. The neural network model 810 is used to determine the corresponding candidate sequence metric of the constructed candidate sequence based on the feature information portion of the dimensional feature information and the operational feature information corresponding to the predetermined symbols in the multiple candidate sequences, and determine whether the candidate sequence with a higher metric can completely define the analysis mode (i.e., the current candidate sequence inputs the target analysis sequence). If so, the candidate sequence can be output as the target analysis sequence; otherwise, it can be determined to continue to attach predetermined symbols on the basis of the candidate sequence to continue to generate multiple new candidate sequences, and then continue to perform the determination.
[0113] To complete the step-by-step iterative evaluation process, in one implementation, a Markov decision process (MDP) can be used to increase the candidate sequence to be evaluated character by character, thereby determining the target analysis sequence that can fully define the analysis pattern and the sequence metric of the target analysis sequence. MPD is defined by a five-tuple, including a finite state set or state space (corresponding to in the sequence evaluation task) ), a finite set of actions or action spaces (corresponding to ), state transition probability, reward function and discount factor.
[0114] State Space can be viewed as a tree with the start symbol [ANA] (i.e., an initial sequence) as the root node. Therefore, in MDP, the sequence including the start symbol [ANA] is regarded as the initial state. In the action space, the reasonable actions for each state s (i.e., the candidate sequence, which is regarded as a "state" in MDP) are selected from Therefore, this action space includes a set of predetermined symbols related to the current data set. The state transition is deterministic, so when selecting an action The state transition probability from state s to state s' (the updated sequence) is expressed as ) can be determined as formula (1);
[0115] The reward function (expressed as ) is used to reflect whether the candidate sequence can be successfully defined as a target analysis sequence. Reward function can be determined as formula (2);
[0116] Regarding the discount factor (denoted as γ), if the length of the current candidate sequence has no effect on the result of the reward function, the discount factor γ=1.
[0117] The above MDP process can be optimized using an optimization function to solve it. In some implementations, the final action-value function can be determined according to the Bellman optimal equation, which is expressed as formula (3):
[0118]
[0119] In other words, if sa is the prefix of the target analysis sequence, then q * (s, a) is equal to 1. Therefore, the learning goal of the above problem to be solved is q * (s, a) in order to determine the metric of the target analysis sequence (i.e., ). By optimizing the action-value function q associated with transitioning from the current state s to the corresponding transition state s' (s' = sa) * (s, a), it can be determined that the candidate sequence is suitable for a corresponding candidate sequence metric that at least partially defines the analysis pattern, and then the metric of the target analysis sequence can be determined.
[0120] In some cases, a correlation between the action-value function and the language model of the next symbol can be found. For example, the neural network model 810 is a deep neural network (DNN) that can be used as q * An approximator of (s, a) to determine q * (s, a). The neural network model 810 has the ability to learn the association between input and output from a large amount of existing data. In addition, since the length of the target analysis sequence to be determined is dynamic, the DNN structure can handle dynamic input lengths. In addition, the DNN neural network model is also suitable for effectively processing feature information related to semantics.
[0121] In some implementations, the neural network model 810 can be implemented based on a deep learning algorithm and constructed as a deep Q network, represented as The state s represents the previously determined sequence, is a set of predetermined symbols. The state s and All are used as inputs of the neural network model 810. The neural network model 810 can therefore calculate the current state s as the initial sequence, from Select a predetermined symbol a (i.e. ) as a candidate sequence, and evaluate the corresponding sequence metric of the candidate sequence sa (the value can be, for example, from 0 to 1). The selection of the predetermined symbol a conforms to the predetermined rules of the analysis language. Invalid candidate sequences in can be disregarded.
[0122] Fig. 9 An example implementation of a neural network model 810 is shown. It should be understood that Fig. 9The structure shown is just one specific example, and other neural network models are possible.
[0123] exist Fig. 9 In the example, the encoder-decoder based transformer, which is very effective in natural language processing for sequence tasks, is used to implement it, especially the transformer structure based on layer-by-layer connection. Fig. 9 As shown, the neural network model 810 includes N deep Q network layers 902 connected layer by layer. Each network layer 902 has an encoder-decoder structure. In the encoder part, each network layer 902 includes a multi-head self-attention layer 912, a regularization layer 914, a feedforward layer 916 and a regularization layer 918. The input of the encoder part is the feature information about the candidate sequence s extracted from the feature extraction module 210. If the candidate sequence s already includes the dimension 172 of the data set 170 and / or the candidate indicator corresponding to the candidate analysis operation 202, the feature information input to the multi-head self-attention layer 912 includes the feature information part of the involved dimension 172 and the subsequent analysis operation 202. If the candidate sequence s includes separators and start symbols, the feature extraction module 210 can provide feature information of the separators or start symbols, which can be represented in the form of vectors or embedded representations to characterize these specific symbols.
[0124] The output of each network layer 902 is directly provided to the decoder part, which includes a multi-head self-attention layer 921, a regularization layer 922, a multi-head self-attention layer 923, a regularization layer 924, a feedforward layer 925, and a regularization layer 926. The input of the encoder part is fixed and is extracted from the feature extraction module 210 about the action space. The feature information corresponding to each predetermined symbol in the encoder part is obtained. The specific processing of the multi-head self-attention layer 912, the regularization layer 914, the feedforward layer 916 and the regularization layer 918 in the encoder part, and the multi-head self-attention layer 921, the regularization layer 922, the multi-head self-attention layer 923, the regularization layer 924, and the feedforward layer 925 in the decoder part is well known to those skilled in the art of natural language processing, and many other variations may exist. The implementation of the present disclosure is not limited in this respect.
[0125] After the decoder part of the N network layers 902 is executed, the output of the regularization layer 926 is provided to the linear transformation layer 940, which performs linear transformation and then provides it to the Softmax output layer 950. The Softmax output layer 950 uses the Softmax function to determine the optimal state for the current candidate sequence (i.e., state s) and The corresponding candidate sequence metrics of each candidate sequence are represented as the metric vector Q(s, A D ), where each element corresponds to a candidate sequence metric of a candidate sequence.
[0126] Unlike using the decoder part to generate the next word one by one in tasks such as neural machine translation (NMT), in the present disclosure Fig. 9 In the example implementation, the selection of the target analysis sequence and the determination of the metric are based on the generated Q(s, A D ), and in this process, the candidate sequences to be evaluated continue to grow.
[0127] In some implementations, to improve the In order to improve the efficiency of the search, the heuristic beam search can be used to reduce the number of candidate sequences to be evaluated in the whole process, so that multiple target analysis sequences and corresponding sequence metrics for subsequent recommendations can be determined for the data set 170. Using the heuristic beam search, in each round of search, the neural network model 810 selects a candidate sequence from the action space. A predetermined number of predetermined symbols are selected from the candidate sequence s, and only the a with the highest metric is selected to form a new candidate sequence sa with the candidate sequence s. In addition, the number of searches can also be constrained, and the processing is stopped after the upper limit of the number of searches is reached.
[0128] According to the above process, the neural network model 810 can determine multiple target analysis sequences and corresponding sequence metrics from a set of predetermined symbols. The meanings of the symbols in the target analysis sequence are clear, and the target analysis sequence can be converted into a corresponding combination of dimensions 172 and candidate analysis operations 202 as the basis for candidate analysis recommendations.
[0129] In some implementations, the neural network model 810 is trained based on a supervised learning algorithm, and the training data includes multiple training data sets and multiple real analysis modes applicable to the multiple training data sets. In order to implement model training, multiple real analysis modes are converted into corresponding training analysis sequences, and the conversion of these training analysis sequences conforms to the analysis language discussed above. Such training data can be obtained from data sets and corresponding analysis modes actually created by users collected from existing databases. In some implementations, if the samples of available training data sets and real analysis modes are limited, it may cause bias problems in the neural network model 810. This is because the neural network model 810 can learn the real analysis mode during training, while the neural network model 810 can only learn its own prediction results in the model application. Therefore, during the training process of the neural network model 810, the neural network model 810 may deviate significantly from the target analysis sequence that should actually be generated. In order to train a model with better performance, in some implementations, reinforcement learning technology can be used to train the neural network model 810.
[0130] In particular, in some implementations, noise can be randomly added to the training data, such as adding noise to the training data set or the real analysis mode (for example, randomly changing the training data set or the real analysis mode) to create more negative training samples. In some implementations, if the neural network model 810 is to use the heuristic beam search technology to generate the target analysis sequence, the candidate sequence s generated during each search can be stored. Then, by randomly sampling from the stored candidate sequence s as training data, the neural network model 810 is periodically retrained, so that the model can be continuously optimized. For different processed data sets, samples can be collected in this way, so that the samples are more diverse and the model optimization is faster. In other words, the neural network model 810 can be first trained based on a limited training data set and a real analysis mode, and then more data sets and analysis modes can be collected during the model application process as training data for subsequent retraining. This continuous iterative optimization can gradually improve the performance of the model.
[0131] Example Process
[0132] Fig.10 A flow chart of a process 1000 according to some implementations of the present disclosure is shown. The process 1000 may be implemented by the computing device 100, for example, may be implemented at the analysis recommendation module 122 in the memory 120 of the computing device 100.
[0133] In box 1010, the computing device 100 extracts dimensional feature information of multiple dimensions of a data set and operational feature information of multiple candidate analysis operations, and the multiple dimensions of the data set include corresponding data items. In box 1020, the computing device 100 determines, based on the dimensional feature information and the operational feature information, that multiple candidate combinations of multiple dimensions and multiple candidate analysis operations are suitable for defining corresponding metrics for an analysis pattern for the data set. The analysis pattern includes at least one dimension to be analyzed and at least one analysis operation performed on the at least one dimension to be analyzed. In box 1030, the computing device 100 provides a recommendation regarding an analysis pattern for the data set based on the determined corresponding metrics, and the recommendation indicates at least one of the multiple candidate combinations.
[0134] In some implementations, at least one dimension to be analyzed and at least one analysis operation in the analysis mode are pre-specified, and each candidate combination in the plurality of candidate combinations includes at least one pre-specified dimension to be analyzed and at least one analysis operation.
[0135] In some implementations, determining corresponding metrics of multiple candidate combinations includes: generating multiple candidate dimension combinations from multiple dimensions, each candidate dimension combination including at least one dimension of the multiple dimensions; based on dimension feature information, determining that the multiple candidate dimension combinations are suitable as corresponding dimension combination metrics of at least one dimension to be analyzed in the analysis model; based on the corresponding dimension combination metrics, selecting at least one candidate dimension combination from the multiple candidate dimension combinations for combining with multiple candidate analysis operations into multiple candidate combinations, each candidate combination of the multiple candidate combinations including the selected candidate dimension combination and at least one candidate analysis operation of the multiple candidate analysis operations; and determining corresponding metrics of the multiple candidate combinations based on the dimension feature information and the operation feature information.
[0136] In some implementations, determining the corresponding dimension combination metric includes: using a first model based on a decision tree to determine the corresponding dimension combination metric based on the dimension feature information. In some implementations, determining the corresponding metrics of the plurality of candidate combinations includes: using a second model based on a decision tree to determine the corresponding metrics of the plurality of candidate combinations based on the dimension feature information and the operation feature information.
[0137] In some implementations, at least one dimension to be analyzed includes at least one grouping dimension for grouping data items. In some implementations, generating multiple candidate dimension combinations includes: determining multiple grouping dimension candidates from multiple dimensions, each grouping dimension candidate including at least one dimension from the multiple dimensions; determining, based on the dimension feature information, that the multiple grouping dimension candidates are suitable as corresponding first metrics of the grouping dimensions; selecting a first predetermined number of grouping dimension candidates from the multiple grouping dimension candidates based on the corresponding first metrics; and generating multiple candidate dimension combinations based on the selected first predetermined number of grouping dimension candidates.
[0138] In some implementations, in the analysis mode, at least one grouping dimension has a corresponding analysis role in the analysis operation. In some implementations, generating a plurality of candidate dimension combinations based on the selected first predetermined number of grouping dimension candidates includes: obtaining a grouping dimension requirement associated with the analysis mode, the grouping dimension requirement indicating the number of grouping dimensions required for each analysis role in the analysis operation; and selecting grouping dimension candidates that meet the grouping dimension requirement from the first predetermined number of grouping dimension candidates for forming the plurality of candidate dimension combinations.
[0139] In some implementations, determining that a plurality of grouping dimension candidates are suitable as respective first metrics of the grouping dimensions includes: utilizing a heuristic beam search to determine that a plurality of grouping dimension candidates are suitable as respective first metrics of the grouping dimensions.
[0140] In some implementations, at least one dimension to be analyzed includes: at least one numerical dimension including a numerical data item. In some implementations, generating multiple candidate dimension combinations includes: determining multiple numerical dimension candidates from multiple dimensions, each numerical dimension candidate including at least one dimension from the multiple dimensions; based on the dimension feature information, determining that the multiple numerical dimension candidates are suitable as corresponding second metrics of the numerical dimensions; and based on the corresponding second metrics, selecting a second predetermined number of numerical dimension candidates from the multiple numerical dimension candidates to form multiple candidate dimension combinations.
[0141] In some implementations, determining corresponding metrics for multiple candidate combinations includes: determining a set of predetermined symbols associated with a data set, the set of predetermined symbols including a separator and multiple candidate indicators for respectively indicating multiple dimensions and multiple candidate analysis operations; and determining corresponding sequence metrics for multiple target analysis sequences consisting of symbols in the set of predetermined symbols based on dimensional feature information and operation feature information according to predetermined rules associated with the analysis mode, each target analysis sequence corresponding to one candidate combination among the multiple candidate combinations and including a candidate indicator among the multiple candidate indicators and at least one separator, the separator being used to separate candidate indicators among the multiple candidate indicators.
[0142] In some implementations, a set of predetermined symbols also includes a start symbol for indicating the start of a sequence, and determining a corresponding sequence metric of a target analysis sequence includes: obtaining an initial sequence, the initial sequence including the start symbol; and determining, according to a Markov decision process, a target analysis sequence and a sequence metric of the target analysis sequence that can completely define an analysis pattern, with the initial sequence as an initial state and based on an action space composed of a set of predetermined symbols.
[0143] In some implementations, determining a target analysis sequence capable of completely defining an analysis pattern and a sequence metric of the target analysis sequence includes: iteratively performing each of the following at least once: according to a predetermined rule, by selecting different predetermined symbols from an action space consisting of a set of predetermined symbols and attaching them to an initial sequence to obtain multiple candidate sequences as multiple transition states, based on the feature information portion corresponding to the predetermined symbols in the multiple candidate sequences in the dimensional feature information and the operational feature information, by optimizing the action-value function associated with the transition from a current state corresponding to the initial sequence to the corresponding transition state, determining that the multiple candidate sequences are suitable for at least partially defining the analysis pattern; based on the corresponding candidate sequence metrics of the multiple candidate sequences, selecting a candidate sequence from the multiple candidate sequences, and updating the initial sequence to the selected candidate sequence based on a determination that the selected candidate sequence does not completely define the analysis pattern; and determining the candidate sequence as the target analysis sequence based on a determination that the selected candidate sequence can completely define the analysis pattern, and determining the corresponding candidate sequence metric of the candidate sequence as the sequence metric of the target analysis sequence.
[0144] In some implementations, at least one dimension to be analyzed includes at least one of the following: at least one grouping dimension for grouping data items and at least one numerical dimension including numerical data items. In some implementations, the predetermined rule defines at least one of the following: a relative positional relationship among at least one grouping dimension in the analysis mode, at least one numerical dimension, and a predetermined symbol corresponding to the analysis operation in the candidate sequence, each candidate indicator among the multiple candidate indicators does not appear repeatedly in the candidate sequence, at least one grouping dimension includes multiple grouping dimensions, and different analysis roles of the multiple grouping dimensions in the analysis operation are separated by a separator in the candidate sequence, at least one dimension to be analyzed in the analysis mode and an indicator corresponding to the at least one analysis operation are separated by a separator in the candidate sequence, and at least one analysis dimension includes at least one grouping dimension and at least one numerical dimension, and at least one grouping dimension and at least one numerical dimension are separated by a separator.
[0145] In some implementations, determining corresponding candidate sequence metrics for the plurality of candidate sequences includes determining corresponding candidate sequence metrics for the plurality of candidate sequences using a neural network model suitable for natural language processing or programming language processing, wherein the neural network model is trained using: a plurality of training data sets and training analysis sequences corresponding to a plurality of real analysis patterns applicable to the plurality of training data sets.
[0146] In some implementations, the extracted dimension feature information includes at least one of the following: semantic feature representations of dimension names of multiple dimensions, and data distribution feature representations of data items corresponding to the multiple dimensions. In some implementations, the extracted operation feature information includes semantic feature representations of at least one of the operation names and descriptive information of multiple candidate analysis operations.
[0147] In some implementations, providing a recommendation regarding an analysis mode for a data set includes: determining at least one candidate combination from a plurality of candidate combinations whose corresponding metric exceeds a threshold metric; causing at least one candidate combination to be presented; and based on receiving an indication that a candidate combination from the at least one candidate combination is selected, applying to the data set the analysis mode defined by the selected candidate combination.
[0148] Example Implementation
[0149] Some example implementations of the present disclosure are listed below.
[0150] In one aspect, the present disclosure provides a computer-implemented method. The method includes: extracting dimension feature information of multiple dimensions of a data set and operation feature information of multiple candidate analysis operations, the multiple dimensions of the data set including corresponding data items; based on the dimension feature information and the operation feature information, determining that multiple candidate combinations of the multiple dimensions and the multiple candidate analysis operations are suitable for defining corresponding metrics for an analysis mode for the data set, the analysis mode including at least one dimension to be analyzed and at least one analysis operation performed on the at least one dimension to be analyzed; based on the determined corresponding metrics, providing a recommendation about the analysis mode for the data set, the recommendation indicating at least one of the multiple candidate combinations.
[0151] In some implementations, at least one dimension to be analyzed and at least one analysis operation in the analysis mode are pre-specified, and each candidate combination in the plurality of candidate combinations includes at least one pre-specified dimension to be analyzed and at least one analysis operation.
[0152] In some implementations, determining corresponding metrics of multiple candidate combinations includes: generating multiple candidate dimension combinations from multiple dimensions, each candidate dimension combination including at least one dimension of the multiple dimensions; based on dimension feature information, determining that the multiple candidate dimension combinations are suitable as corresponding dimension combination metrics of at least one dimension to be analyzed in the analysis model; based on the corresponding dimension combination metrics, selecting at least one candidate dimension combination from the multiple candidate dimension combinations for combining with multiple candidate analysis operations into multiple candidate combinations, each candidate combination of the multiple candidate combinations including the selected candidate dimension combination and at least one candidate analysis operation of the multiple candidate analysis operations; and determining corresponding metrics of the multiple candidate combinations based on the dimension feature information and the operation feature information.
[0153] In some implementations, determining the corresponding dimension combination metric includes: using a first model based on a decision tree to determine the corresponding dimension combination metric based on the dimension feature information. In some implementations, determining the corresponding metrics of the plurality of candidate combinations includes: using a second model based on a decision tree to determine the corresponding metrics of the plurality of candidate combinations based on the dimension feature information and the operation feature information.
[0154] In some implementations, at least one dimension to be analyzed includes at least one grouping dimension for grouping data items. In some implementations, generating multiple candidate dimension combinations includes: determining multiple grouping dimension candidates from multiple dimensions, each grouping dimension candidate including at least one dimension from the multiple dimensions; determining, based on the dimension feature information, that the multiple grouping dimension candidates are suitable as corresponding first metrics of the grouping dimensions; selecting a first predetermined number of grouping dimension candidates from the multiple grouping dimension candidates based on the corresponding first metrics; and generating multiple candidate dimension combinations based on the selected first predetermined number of grouping dimension candidates.
[0155] In some implementations, in the analysis mode, at least one grouping dimension has a corresponding analysis role in the analysis operation. In some implementations, generating a plurality of candidate dimension combinations based on the selected first predetermined number of grouping dimension candidates includes: obtaining a grouping dimension requirement associated with the analysis mode, the grouping dimension requirement indicating the number of grouping dimensions required for each analysis role in the analysis operation; and selecting grouping dimension candidates that meet the grouping dimension requirement from the first predetermined number of grouping dimension candidates for forming the plurality of candidate dimension combinations.
[0156] In some implementations, determining that a plurality of grouping dimension candidates are suitable as respective first metrics of the grouping dimensions includes: utilizing a heuristic beam search to determine that a plurality of grouping dimension candidates are suitable as respective first metrics of the grouping dimensions.
[0157] In some implementations, at least one dimension to be analyzed includes: at least one numerical dimension including a numerical data item. In some implementations, generating multiple candidate dimension combinations includes: determining multiple numerical dimension candidates from multiple dimensions, each numerical dimension candidate including at least one dimension from the multiple dimensions; based on the dimension feature information, determining that the multiple numerical dimension candidates are suitable as corresponding second metrics of the numerical dimensions; and based on the corresponding second metrics, selecting a second predetermined number of numerical dimension candidates from the multiple numerical dimension candidates to form multiple candidate dimension combinations.
[0158] In some implementations, determining corresponding metrics for multiple candidate combinations includes: determining a set of predetermined symbols associated with a data set, the set of predetermined symbols including a separator and multiple candidate indicators for respectively indicating multiple dimensions and multiple candidate analysis operations; and determining corresponding sequence metrics for multiple target analysis sequences consisting of symbols in the set of predetermined symbols based on dimensional feature information and operation feature information according to predetermined rules associated with the analysis mode, each target analysis sequence corresponding to one candidate combination among the multiple candidate combinations and including a candidate indicator among the multiple candidate indicators and at least one separator, the separator being used to separate candidate indicators among the multiple candidate indicators.
[0159] In some implementations, a set of predetermined symbols also includes a start symbol for indicating the start of a sequence, and determining a corresponding sequence metric of a target analysis sequence includes: obtaining an initial sequence, the initial sequence including the start symbol; and determining, according to a Markov decision process, a target analysis sequence and a sequence metric of the target analysis sequence that can completely define an analysis pattern, with the initial sequence as an initial state and based on an action space composed of a set of predetermined symbols.
[0160] In some implementations, determining a target analysis sequence capable of completely defining an analysis pattern and a sequence metric of the target analysis sequence includes: iteratively performing each of the following at least once: according to a predetermined rule, by selecting different predetermined symbols from an action space consisting of a set of predetermined symbols and attaching them to an initial sequence to obtain multiple candidate sequences as multiple transition states, based on the feature information portion corresponding to the predetermined symbols in the multiple candidate sequences in the dimensional feature information and the operational feature information, by optimizing the action-value function associated with the transition from a current state corresponding to the initial sequence to the corresponding transition state, determining that the multiple candidate sequences are suitable for at least partially defining the analysis pattern; based on the corresponding candidate sequence metrics of the multiple candidate sequences, selecting a candidate sequence from the multiple candidate sequences, and updating the initial sequence to the selected candidate sequence based on a determination that the selected candidate sequence does not completely define the analysis pattern; and determining the candidate sequence as the target analysis sequence based on a determination that the selected candidate sequence can completely define the analysis pattern, and determining the corresponding candidate sequence metric of the candidate sequence as the sequence metric of the target analysis sequence.
[0161] In some implementations, at least one dimension to be analyzed includes at least one of the following: at least one grouping dimension for grouping data items and at least one numerical dimension including numerical data items. In some implementations, the predetermined rule defines at least one of the following: a relative positional relationship among at least one grouping dimension in the analysis mode, at least one numerical dimension, and a predetermined symbol corresponding to the analysis operation in the candidate sequence, each candidate indicator among the multiple candidate indicators does not appear repeatedly in the candidate sequence, at least one grouping dimension includes multiple grouping dimensions, and different analysis roles of the multiple grouping dimensions in the analysis operation are separated by a separator in the candidate sequence, at least one dimension to be analyzed in the analysis mode and an indicator corresponding to the at least one analysis operation are separated by a separator in the candidate sequence, and at least one analysis dimension includes at least one grouping dimension and at least one numerical dimension, and at least one grouping dimension and at least one numerical dimension are separated by a separator.
[0162] In some implementations, determining corresponding candidate sequence metrics for the plurality of candidate sequences includes determining corresponding candidate sequence metrics for the plurality of candidate sequences using a neural network model suitable for natural language processing or programming language processing, wherein the neural network model is trained using: a plurality of training data sets and training analysis sequences corresponding to a plurality of real analysis patterns applicable to the plurality of training data sets.
[0163] In some implementations, the extracted dimension feature information includes at least one of the following: semantic feature representations of dimension names of multiple dimensions, and data distribution feature representations of data items corresponding to the multiple dimensions. In some implementations, the extracted operation feature information includes semantic feature representations of at least one of the operation names and descriptive information of multiple candidate analysis operations.
[0164] In some implementations, providing a recommendation regarding an analysis mode for a data set includes: determining at least one candidate combination from a plurality of candidate combinations whose corresponding metric exceeds a threshold metric; causing at least one candidate combination to be presented; and based on receiving an indication that a candidate combination from the at least one candidate combination is selected, applying to the data set the analysis mode defined by the selected candidate combination.
[0165] On the other hand, the present disclosure provides an electronic device. The electronic device includes: a processing unit; and a memory, coupled to the processing unit and containing instructions stored thereon, the instructions causing the device to perform the following actions when executed by the processing unit: extracting dimension feature information of multiple dimensions of a data set and operation feature information of multiple candidate analysis operations, the multiple dimensions of the data set including corresponding data items; based on the dimension feature information and the operation feature information, determining that multiple candidate combinations of the multiple dimensions and the multiple candidate analysis operations are suitable for defining corresponding metrics for an analysis mode for the data set, the analysis mode including at least one dimension to be analyzed and at least one analysis operation performed on the at least one dimension to be analyzed; based on the determined corresponding metrics, providing a recommendation about the analysis mode for the data set, the recommendation indicating at least one of the multiple candidate combinations.
[0166] In some implementations, at least one dimension to be analyzed and at least one analysis operation in the analysis mode are pre-specified, and each candidate combination in the plurality of candidate combinations includes at least one pre-specified dimension to be analyzed and at least one analysis operation.
[0167] In some implementations, determining corresponding metrics of multiple candidate combinations includes: generating multiple candidate dimension combinations from multiple dimensions, each candidate dimension combination including at least one dimension of the multiple dimensions; based on dimension feature information, determining that the multiple candidate dimension combinations are suitable as corresponding dimension combination metrics of at least one dimension to be analyzed in the analysis model; based on the corresponding dimension combination metrics, selecting at least one candidate dimension combination from the multiple candidate dimension combinations for combining with multiple candidate analysis operations into multiple candidate combinations, each candidate combination of the multiple candidate combinations including the selected candidate dimension combination and at least one candidate analysis operation of the multiple candidate analysis operations; and determining corresponding metrics of the multiple candidate combinations based on the dimension feature information and the operation feature information.
[0168] In some implementations, determining the corresponding dimension combination metric includes: using a first model based on a decision tree to determine the corresponding dimension combination metric based on the dimension feature information. In some implementations, determining the corresponding metrics of the plurality of candidate combinations includes: using a second model based on a decision tree to determine the corresponding metrics of the plurality of candidate combinations based on the dimension feature information and the operation feature information.
[0169] In some implementations, at least one dimension to be analyzed includes at least one grouping dimension for grouping data items. In some implementations, generating multiple candidate dimension combinations includes: determining multiple grouping dimension candidates from multiple dimensions, each grouping dimension candidate including at least one dimension from the multiple dimensions; determining, based on the dimension feature information, that the multiple grouping dimension candidates are suitable as corresponding first metrics of the grouping dimensions; selecting a first predetermined number of grouping dimension candidates from the multiple grouping dimension candidates based on the corresponding first metrics; and generating multiple candidate dimension combinations based on the selected first predetermined number of grouping dimension candidates.
[0170] In some implementations, in the analysis mode, at least one grouping dimension has a corresponding analysis role in the analysis operation. In some implementations, generating a plurality of candidate dimension combinations based on the selected first predetermined number of grouping dimension candidates includes: obtaining a grouping dimension requirement associated with the analysis mode, the grouping dimension requirement indicating the number of grouping dimensions required for each analysis role in the analysis operation; and selecting grouping dimension candidates that meet the grouping dimension requirement from the first predetermined number of grouping dimension candidates for forming the plurality of candidate dimension combinations.
[0171] In some implementations, determining that a plurality of grouping dimension candidates are suitable as respective first metrics of the grouping dimensions includes: utilizing a heuristic beam search to determine that a plurality of grouping dimension candidates are suitable as respective first metrics of the grouping dimensions.
[0172] In some implementations, at least one dimension to be analyzed includes: at least one numerical dimension including a numerical data item. In some implementations, generating multiple candidate dimension combinations includes: determining multiple numerical dimension candidates from multiple dimensions, each numerical dimension candidate including at least one dimension from the multiple dimensions; based on the dimension feature information, determining that the multiple numerical dimension candidates are suitable as corresponding second metrics of the numerical dimensions; and based on the corresponding second metrics, selecting a second predetermined number of numerical dimension candidates from the multiple numerical dimension candidates to form multiple candidate dimension combinations.
[0173] In some implementations, determining corresponding metrics for multiple candidate combinations includes: determining a set of predetermined symbols associated with a data set, the set of predetermined symbols including a separator and multiple candidate indicators for respectively indicating multiple dimensions and multiple candidate analysis operations; and determining corresponding sequence metrics for multiple target analysis sequences consisting of symbols in the set of predetermined symbols based on dimensional feature information and operation feature information according to predetermined rules associated with the analysis mode, each target analysis sequence corresponding to one candidate combination among the multiple candidate combinations and including a candidate indicator among the multiple candidate indicators and at least one separator, the separator being used to separate candidate indicators among the multiple candidate indicators.
[0174] In some implementations, a set of predetermined symbols also includes a start symbol for indicating the start of a sequence, and determining a corresponding sequence metric of a target analysis sequence includes: obtaining an initial sequence, the initial sequence including the start symbol; and determining, according to a Markov decision process, a target analysis sequence and a sequence metric of the target analysis sequence that can completely define an analysis pattern, with the initial sequence as an initial state and based on an action space composed of a set of predetermined symbols.
[0175] In some implementations, determining a target analysis sequence capable of completely defining an analysis pattern and a sequence metric of the target analysis sequence includes: iteratively performing each of the following at least once: according to a predetermined rule, by selecting different predetermined symbols from an action space consisting of a set of predetermined symbols and attaching them to an initial sequence to obtain multiple candidate sequences as multiple transition states, based on the feature information portion corresponding to the predetermined symbols in the multiple candidate sequences in the dimensional feature information and the operational feature information, by optimizing the action-value function associated with the transition from a current state corresponding to the initial sequence to the corresponding transition state, determining that the multiple candidate sequences are suitable for at least partially defining the analysis pattern; based on the corresponding candidate sequence metrics of the multiple candidate sequences, selecting a candidate sequence from the multiple candidate sequences, and updating the initial sequence to the selected candidate sequence based on a determination that the selected candidate sequence does not completely define the analysis pattern; and determining the candidate sequence as the target analysis sequence based on a determination that the selected candidate sequence can completely define the analysis pattern, and determining the corresponding candidate sequence metric of the candidate sequence as the sequence metric of the target analysis sequence.
[0176] In some implementations, at least one dimension to be analyzed includes at least one of the following: at least one grouping dimension for grouping data items and at least one numerical dimension including numerical data items. In some implementations, the predetermined rule defines at least one of the following: a relative positional relationship among at least one grouping dimension in the analysis mode, at least one numerical dimension, and a predetermined symbol corresponding to the analysis operation in the candidate sequence, each candidate indicator among the multiple candidate indicators does not appear repeatedly in the candidate sequence, at least one grouping dimension includes multiple grouping dimensions, and different analysis roles of the multiple grouping dimensions in the analysis operation are separated by a separator in the candidate sequence, at least one dimension to be analyzed in the analysis mode and an indicator corresponding to the at least one analysis operation are separated by a separator in the candidate sequence, and at least one analysis dimension includes at least one grouping dimension and at least one numerical dimension, and at least one grouping dimension and at least one numerical dimension are separated by a separator.
[0177] In some implementations, determining corresponding candidate sequence metrics for the plurality of candidate sequences includes determining corresponding candidate sequence metrics for the plurality of candidate sequences using a neural network model suitable for natural language processing or programming language processing, wherein the neural network model is trained using: a plurality of training data sets and training analysis sequences corresponding to a plurality of real analysis patterns applicable to the plurality of training data sets.
[0178] In some implementations, the extracted dimension feature information includes at least one of the following: semantic feature representations of dimension names of multiple dimensions, and data distribution feature representations of data items corresponding to the multiple dimensions. In some implementations, the extracted operation feature information includes semantic feature representations of at least one of the operation names and descriptive information of multiple candidate analysis operations.
[0179] In some implementations, providing a recommendation regarding an analysis mode for a data set includes: determining at least one candidate combination from a plurality of candidate combinations whose corresponding metric exceeds a threshold metric; causing at least one candidate combination to be presented; and based on receiving an indication that a candidate combination from the at least one candidate combination is selected, applying to the data set the analysis mode defined by the selected candidate combination.
[0180] In yet another aspect, the present disclosure provides a computer program product tangibly stored in a non-transitory computer storage medium and comprising machine-executable instructions that, when executed by a device, cause the device to perform one or more implementations of the above-described method.
[0181] In yet another aspect, the present disclosure provides a computer-readable medium having machine-executable instructions stored thereon, which, when executed by a device, cause the device to perform one or more implementations of the method of the above aspects.
[0182] The functions described above herein may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chip systems (SOCs), load programmable logic devices (CPLDs), and the like.
[0183] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.
[0184] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0185] In addition, although each operation is described in a specific order, this should be understood as requiring such operation to be performed in the specific order shown or in a sequential order, or requiring that all illustrated operations should be performed to obtain the desired result. Under certain circumstances, multitasking and parallel processing may be advantageous. Similarly, although several specific implementation details are included in the above discussion, these should not be interpreted as limiting the scope of the present disclosure. Certain features described in the context of a separate implementation can also be implemented in a single implementation in combination. On the contrary, the various features described in the context of a single implementation can also be implemented in multiple implementations individually or in any suitable sub-combination.
[0186] Although the subject matter has been described in language specific to structural features and / or methodological logical actions, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. On the contrary, the specific features and actions described above are merely example forms of implementing the claims.
Claims
1. An electronic device, comprising: Processing unit; as well as A memory coupled to the processing unit and containing instructions stored thereon, which, when executed by the processing unit, cause the device to perform the following actions: Extracting dimension feature information of multiple dimensions of a data set and operation feature information of multiple candidate analysis operations, wherein the multiple dimensions of the data set include corresponding data items; Based on the dimension feature information and the operation feature information, determining that a plurality of candidate combinations of the plurality of dimensions and the plurality of candidate analysis operations are suitable for defining corresponding metrics of an analysis mode for the data set, the analysis mode comprising at least one dimension to be analyzed and at least one analysis operation performed on the at least one dimension to be analyzed; as well as Based on the determined respective metrics, a recommendation is provided regarding the analysis mode for the data set, the recommendation indicating at least one of the plurality of candidate combinations.
2. The device according to claim 1, wherein at least one of the at least one dimension to be analyzed and at least one of the at least one analysis operation in the analysis mode are pre-specified, and wherein each candidate combination of the multiple candidate combinations includes at least one of the at least one dimension to be analyzed and at least one of the at least one analysis operation that are pre-specified.
3. The apparatus of claim 1 , wherein determining the corresponding metrics of the plurality of candidate combinations comprises: generating a plurality of candidate dimension combinations from the plurality of dimensions, each candidate dimension combination including at least one dimension from the plurality of dimensions; Based on the dimension feature information, determining that the plurality of candidate dimension combinations are suitable as corresponding dimension combination metrics of at least one dimension to be analyzed in the analysis model; Based on the corresponding dimension combination metric, selecting at least one candidate dimension combination from the plurality of candidate dimension combinations for combining with the plurality of candidate analysis operations into the plurality of candidate combinations, each candidate combination in the plurality of candidate combinations comprising the selected candidate dimension combination and at least one candidate analysis operation in the plurality of candidate analysis operations; as well as The corresponding metrics of the plurality of candidate combinations are determined based on the dimensional feature information and the operational feature information.
4. The apparatus of claim 3, wherein determining the corresponding dimension combination metric comprises: Determine the corresponding dimension combination metric based on the dimension feature information using a first model based on a decision tree; and / or Determining the corresponding metrics of the multiple candidate combinations includes: using a second model based on a decision tree to determine the corresponding metrics of the multiple candidate combinations based on the dimensional feature information and the operational feature information.
5. The apparatus according to claim 3, wherein the at least one dimension to be analyzed comprises at least one grouping dimension for grouping data items, and wherein generating the plurality of candidate dimension combinations comprises: Determine a plurality of grouping dimension candidates from the plurality of dimensions, each grouping dimension candidate including at least one dimension from the plurality of dimensions; Based on the dimension feature information, determining that the plurality of grouping dimension candidates are suitable as corresponding first metrics of the grouping dimensions; selecting a first predetermined number of grouping dimension candidates from the plurality of grouping dimension candidates based on the corresponding first metric; as well as The plurality of candidate dimension combinations are generated based on the selected first predetermined number of grouping dimension candidates.
6. The apparatus of claim 5, wherein in the analysis mode, the at least one grouping dimension has a corresponding analysis role in the analysis operation; and The step of generating the plurality of candidate dimension combinations based on the selected first predetermined number of grouping dimension candidates comprises: obtaining a grouping dimension requirement associated with the analysis mode, the grouping dimension requirement indicating the number of grouping dimensions required for each analysis role in the analysis operation; as well as Grouping dimension candidates that meet the grouping dimension requirement are selected from the first predetermined number of grouping dimension candidates to form the multiple candidate dimension combinations.
7. The apparatus of claim 5, wherein determining that the plurality of grouping dimension candidates are suitable as respective first metrics of grouping dimensions comprises: A heuristic beam search is used to determine whether the plurality of grouping dimension candidates are suitable as corresponding first metrics of the grouping dimensions.
8. The apparatus according to claim 3, wherein the at least one dimension to be analyzed comprises: At least one numerical dimension comprising numerical data items, and wherein generating the plurality of candidate dimension combinations comprises: Determine a plurality of numerical dimension candidates from the plurality of dimensions, each numerical dimension candidate including at least one dimension from the plurality of dimensions; Based on the dimension feature information, determining that the plurality of numerical dimension candidates are suitable as corresponding second metrics of the numerical dimension; and Based on the corresponding second metric, a second predetermined number of numerical dimension candidates are selected from the plurality of numerical dimension candidates to form the plurality of candidate dimension combinations.
9. The apparatus of claim 1 , wherein determining the corresponding metrics of the plurality of candidate combinations comprises: determining a set of predetermined symbols associated with the data set, the set of predetermined symbols comprising a separator and a plurality of candidate indicators for respectively indicating the plurality of dimensions and the plurality of candidate analysis operations; as well as According to a predetermined rule associated with the analysis mode, corresponding sequence metrics of a plurality of target analysis sequences consisting of symbols in the set of predetermined symbols are determined based on the dimensional feature information and the operational feature information, each target analysis sequence corresponds to one of the plurality of candidate combinations and includes a candidate indicator in the plurality of candidate indicators and at least one of the separators, wherein the separator is used to separate the candidate indicators in the plurality of candidate indicators.
10. The apparatus of claim 9, wherein the set of predetermined symbols further comprises a start symbol for indicating a start of a sequence, and wherein determining the corresponding sequence metrics of the plurality of target analysis sequences further comprises: Obtaining an initial sequence, wherein the initial sequence includes the start symbol; as well as According to a Markov decision process, with the initial sequence as an initial state and based on an action space composed of the group of predetermined symbols, a target analysis sequence and a sequence metric of the target analysis sequence that can completely define the analysis pattern are determined.
11. The apparatus according to claim 10, wherein determining a target analysis sequence capable of completely defining the analysis mode and a sequence metric of the target analysis sequence comprises: Iterate and execute each of the following at least once: According to the predetermined rule, different predetermined symbols are selected from the action space composed of the group of predetermined symbols and attached to the initial sequence to obtain multiple candidate sequences as multiple transition states, determining, based on the dimensional feature information and the feature information portion of the operational feature information corresponding to predetermined symbols in the plurality of candidate sequences, corresponding candidate sequence metrics of the plurality of candidate sequences suitable for at least partially defining the analysis pattern by optimizing an action-value function associated with transitioning from a current state corresponding to the initial sequence to a corresponding transition state, selecting a candidate sequence from the plurality of candidate sequences based on corresponding candidate sequence metrics of the plurality of candidate sequences, and updating the initial sequence to the selected candidate sequence based on determining that the selected candidate sequence does not completely define the analysis pattern; as well as Based on determining that the selected candidate sequence is capable of completely defining the analysis mode, The candidate sequence is determined as a target analysis sequence, and a corresponding candidate sequence metric of the candidate sequence is determined as a sequence metric of the target analysis sequence.
12. The apparatus according to claim 9, wherein the at least one dimension to be analyzed comprises at least one of the following: at least one grouping dimension for grouping data items and at least one numerical dimension including numerical data items, and The predetermined rule defines at least one of the following: The relative position relationship between the at least one grouping dimension, the at least one numerical dimension and the predetermined symbol corresponding to the analysis operation in the candidate sequence in the analysis mode, Each candidate indicator of the plurality of candidate indicators does not appear repeatedly in the candidate sequence, The at least one grouping dimension comprises a plurality of grouping dimensions, and different analysis roles of the plurality of grouping dimensions in the analysis operation are separated by the separator in the candidate sequence, The at least one dimension to be analyzed in the analysis mode and the indicator corresponding to the at least one analysis operation are separated by the separator in the candidate sequence, and The at least one analysis dimension includes the at least one grouping dimension and the at least one numerical dimension, and the at least one grouping dimension and the at least one numerical dimension are separated by the separator.
13. The apparatus of claim 11 , wherein determining respective candidate sequence metrics for the plurality of candidate sequences comprises: Determine corresponding candidate sequence metrics of the plurality of candidate sequences using a neural network model suitable for natural language processing or programming language processing, The neural network model is trained by: a plurality of training data sets and a training analysis sequence corresponding to a plurality of real analysis modes applicable to the plurality of training data sets.
14. The apparatus of claim 1, wherein providing a recommendation regarding the analysis mode for the data set comprises: Determining at least one candidate combination from the plurality of candidate combinations for which the corresponding metric exceeds a threshold metric; causing the at least one candidate combination to be presented; as well as In response to receiving an indication that a candidate combination among the at least one candidate combination is selected, an analysis mode defined by the selected candidate combination is applied to the data set.
15. A computer-implemented method comprising: Extracting dimension feature information of multiple dimensions of a data set and operation feature information of multiple candidate analysis operations, wherein the multiple dimensions of the data set include corresponding data items; Based on the dimension feature information and the operation feature information, determining that a plurality of candidate combinations of the plurality of dimensions and the plurality of candidate analysis operations are suitable for defining corresponding metrics of an analysis mode for the data set, the analysis mode comprising at least one dimension to be analyzed and at least one analysis operation performed on the at least one dimension to be analyzed; as well as Based on the determined respective metrics, a recommendation is provided regarding the analysis mode for the data set, the recommendation indicating at least one of the plurality of candidate combinations.
16. A method according to claim 15, wherein at least one of the at least one dimension to be analyzed and at least one of the at least one analysis operation in the analysis mode are pre-specified, and wherein each candidate combination of the multiple candidate combinations includes the at least one dimension to be analyzed and at least one of the at least one analysis operation that are pre-specified.
17. The method according to claim 15, wherein the at least one dimension to be analyzed comprises at least one of the following: at least one grouping dimension for grouping data items and at least one numerical dimension including numerical data items, and Wherein determining the corresponding metrics of the plurality of candidate combinations comprises: generating a plurality of candidate dimension combinations from the plurality of dimensions, each candidate dimension combination including at least one dimension from the plurality of dimensions; Based on the dimension feature information, determining that the plurality of candidate dimension combinations are suitable as corresponding dimension combination metrics of at least one dimension to be analyzed in the analysis model; Based on the corresponding dimension combination metric, selecting at least one candidate dimension combination from the plurality of candidate dimension combinations for combining with the plurality of candidate analysis operations into the plurality of candidate combinations, each candidate combination in the plurality of candidate combinations comprising the selected candidate dimension combination and at least one candidate analysis operation in the plurality of candidate analysis operations; as well as The corresponding metrics of the plurality of candidate combinations are determined based on the dimensional feature information and the operational feature information.
18. The method of claim 15, wherein determining the corresponding metrics of the plurality of candidate combinations comprises: determining a set of predetermined symbols associated with the data set, the set of predetermined symbols comprising a separator and a plurality of candidate indicators for respectively indicating the plurality of dimensions and the plurality of candidate analysis operations; as well as According to a predetermined rule associated with the analysis mode, corresponding sequence metrics of a plurality of target analysis sequences consisting of symbols in the set of predetermined symbols are determined based on the dimensional feature information and the operational feature information, each target analysis sequence corresponds to one of the plurality of candidate combinations and includes a candidate indicator in the plurality of candidate indicators and at least one of the separators, wherein the separator is used to separate the candidate indicators in the plurality of candidate indicators.
19. The method of claim 18, wherein the set of predetermined symbols further comprises a start symbol for indicating a start of a sequence, and wherein determining the corresponding sequence metrics of the plurality of target analysis sequences further comprises: Obtaining an initial sequence, wherein the initial sequence includes the start symbol; as well as According to a Markov decision process, with the initial sequence as an initial state and based on an action space composed of the group of predetermined symbols, a target analysis sequence and a sequence metric of the target analysis sequence that can completely define the analysis pattern are determined.
20. A computer program product tangibly stored in a non-transitory computer storage medium and comprising machine executable instructions which, when executed by a device, cause the device to perform the method of any one of claims 15 to 19.
Citation Information
Patent Citations
Query processing in data analysis
CN107992503A
Statistical analysis function recommendation system based on table structure and data characteristics
KR1020170087434A
Method And System For Providing Business Intelligence Data
US20130132139A1
Automatic recommendation of analysis for dataset
US20230306035A1
