Data processing method and apparatus applied to recommendation scenario, and device and storage medium
By allowing users to specify the target data fields in the data record as the sample auxiliary information, the sample containing coding representation and target data fields is generated, which solves the problem that the original data value is difficult to retain in existing technology, and improves the efficiency of sample production and model training. Essence
Patent Information
- Application Number
- PCT/CN2024/101745
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-07-27
- Filing Date
- 2024-06-26
- Publication Date
- 2025-01-30
Smart Images

Figure CN2024101745_30012025_PF_FP_ABST
Abstract
Description
Data processing method, device, equipment and storage medium for recommendation scenarios
[0001] This application claims priority to the Chinese invention patent application entitled “Data processing method, apparatus, device and storage medium for recommendation scenarios” and application number 202310934615.0, filed on July 27, 2023. The entire contents of that application are incorporated by reference into this application. Technical Field
[0002] Example embodiments of the present disclosure generally relate to the field of computers, and more particularly, to data processing methods, apparatuses, devices, and computer-readable storage media. Background Art
[0003] There is a need for sample production in data processing. That is, the data needs to be processed into samples for subsequent use, such as for training machine learning models. For example, in recommendation scenarios (such as product recommendations, content recommendations), the original data needs to be processed into samples for training recommendation models. For various possible reasons, such as data storage requirements or model training requirements, in sample production, the original data is usually processed as an implicit encoding representation, which makes the original numerical value and its meaning in the data invisible in the sample. For example, after processing, there is no explicitly represented product production date in the sample. Therefore, it is expected to retain one or more original values in the produced sample as sample auxiliary information.
[0004] Summary of the Invention
[0005] In a first aspect of the present disclosure, a method for data processing is provided. The method comprises: presenting an input control for specifying a data field for at least one data record, each data record in the at least one data record comprising a set of data fields; receiving, through the input control, user input specifying a target data field in the set of data fields; and generating, based on the target data field, at least one sample corresponding to each of the at least one data record, the sample in the at least one sample comprising an encoded representation of the corresponding data record and a sample field corresponding to the target data field of the corresponding data record.
[0006] In a second aspect of the present disclosure, a data processing apparatus is provided. The apparatus includes: an interface presentation module configured to present an input control for specifying a data field for at least one data record, each of the at least one data record including a set of data fields; an input module configured to receive user input, via the input control, specifying a target data field in the set of data fields; and a sample generation module configured to generate at least one sample corresponding to each of the at least one data record based on the target data field, wherein the sample in the at least one sample includes an encoded representation of the corresponding data record and a sample field corresponding to the target data field of the corresponding data record.
[0007] In a third aspect of the present disclosure, an electronic device is provided. The device includes at least one processing unit; and at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit. When executed by the at least one processing unit, the instructions cause the device to perform the method of the first aspect.
[0008] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided, wherein a computer program is stored on the computer-readable storage medium, and the computer program can be executed by a processor to implement the method of the first aspect.
[0009] It should be understood that the content described in this summary section is not intended to limit the key features or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements, wherein:
[0011] FIG1 shows a schematic diagram of an example environment in which embodiments of the present disclosure can be implemented;
[0012] FIG2 is a schematic diagram showing an example of adding a field as auxiliary information in a solution;
[0013] FIG3 shows a flow chart of a data processing process according to some embodiments of the present disclosure;
[0014] FIG4 shows a schematic diagram of an example of a configuration interface for sample production according to some embodiments of the present disclosure;
[0015] FIG5 is a schematic diagram showing an example of an interface for specifying a target field according to some embodiments of the present disclosure;
[0016] FIG6 shows a block diagram of an apparatus for data processing according to some embodiments of the present disclosure; and
[0017] FIG7 shows a block diagram of a device capable of implementing various embodiments of the present disclosure. DETAILED DESCRIPTION
[0018] It is understandable that before using the technical solutions disclosed in the various embodiments of this disclosure, the type, scope of use, usage scenarios, etc. of the personal information involved in this disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0019] For example, in response to a user's active request, a prompt message is sent to the user to clearly inform the user that the operation requested will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the electronic device, application, server, storage medium, or other software or hardware that performs the operations of the disclosed technical solution based on the prompt message.
[0020] As an optional but non-limiting implementation, in response to receiving a user's active request, the prompt information may be sent to the user in the form of a pop-up window, in which the prompt information may be presented in text form. Furthermore, the pop-up window may also contain a selection control for the user to select "agree" or "disagree" to provide personal information to the electronic device.
[0021] It is understandable that the above notification and user authorization process are merely illustrative and do not limit the implementation of the present disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of the present disclosure.
[0022] It is understandable that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) must comply with the requirements of relevant laws, regulations and relevant provisions.
[0023] The following describes embodiments of the present disclosure in more detail with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as limited to the embodiments described herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are for illustrative purposes only and are not intended to limit the scope of protection of the present disclosure.
[0024] It should be noted that the titles of any section / subsection provided herein are not limiting. Various embodiments are described throughout this document, and any type of embodiment may be included under any section / subsection. Furthermore, the embodiments described in any section / subsection may be combined in any manner with any other embodiments described in the same section / subsection and / or in different sections / subsections.
[0025] In the description of the embodiments of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may be included below. The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may be included below.
[0026] As used herein, the term "model" can learn the association between corresponding inputs and outputs from training data, so that after training is completed, corresponding outputs can be generated for given inputs. The generation of the model can be based on machine learning technology. Deep learning is a machine learning algorithm that processes inputs and provides corresponding outputs by using multiple layers of processing units. In this article, "model" may also be referred to as "machine learning model", "machine learning network" or "network", and these terms are used interchangeably in this article. A model can also include different types of processing units or networks.
[0027] Sample Environment
[0028] FIG1 illustrates a schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented. In environment 100, an application 120 is running on an electronic device 110. A user 130 can interact with application 120 via terminal device 110 and / or its attached devices. Application 120 can be a data processing application, such as a sample production application. Application 120 can be implemented in any suitable form, such as a standalone application, a component or plug-in built into an application as part of the application, etc. The present disclosure is not limited in this respect.
[0029] In an embodiment of the present disclosure, electronic device 110 can generate at least one corresponding sample based on at least one data record. As an example, FIG1 shows data records 101-1, 101-2, ..., 101-N, which are also individually or collectively referred to as data records 101, and N is a positive integer. FIG1 also shows samples 102-1, 102-2, ..., 102-N corresponding to data records 101-1, 101-2 ... 101-N, respectively, which are also individually or collectively referred to as samples 102. The present embodiment does not limit the number of data records and samples.
[0030] Data record 101 may involve any type of data suitable for producing a sample, and may involve any suitable type of object. As an example, data record 101 may include an image and its descriptive information, such as the image's size and style. As another example, data record 101 may include natural language text and its descriptive information, such as the language of the text, the number of words in the text, and the source of the text. As another example, data record 101 may include a description of an event, such as an action performed by object A at a certain time, or an action performed by object A on object B. The embodiments of the present disclosure are not limited in terms of the type of data record.
[0031] Each data record 101 may include one or more fields, also referred to as a set of fields. Each field may be used to describe aspects related to the data record 101 or attributes of the object to which the data record 101 relates. For example, if the data record 101 relates to an image, the data record 101 may include a field for recording the image size, a field for recording the image style, and so on. Multiple data records for the same sample production task may be data records of the same type and include the same set of fields. It should be understood that in an embodiment of the present disclosure, the fact that a data record includes a certain field does not necessarily mean that the field may have a meaningful numerical value. For example, the field may be identified as not applicable "N / A". In some embodiments, the data record 101 may be data obtained in a recommendation scenario.
[0032] In some embodiments, the electronic device 110 may present various interfaces related to data processing to the user, such as interface 121. Through the interface 121, the user may implement various settings for data processing. For example, the user may configure a sample production task.
[0033] In the environment 100, the electronic device 110 can be any type of device with computing capabilities, including a terminal device or a server device. The terminal device can be any type of mobile terminal, fixed terminal or portable terminal, including a mobile phone, a desktop computer, a laptop computer, a notebook computer, a netbook computer, a tablet computer, a media computer, a multimedia tablet, 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. The server device can include, for example, a computing system / server, such as a mainframe, an edge computing node, an electronic device in a cloud environment, and the like.
[0034] It should be understood that the structure and functionality of environment 100 are described for exemplary purposes only and do not imply any limitation on the scope of the present disclosure.
[0035] As briefly mentioned above, in data processing, it is expected that the original values of some fields of interest can be retained in the produced samples as sample auxiliary information. Sample auxiliary information is a non-feature field in the sample that retains the characteristics of the original value of the field. Sample auxiliary information can provide additional value in the subsequent use of the sample. For example, in the training of machine learning models, sample auxiliary information can enable algorithm engineers to use the original values for sample screening, editing labels, and assisting debugging during the model training phase. Therefore, how to efficiently generate sample auxiliary information plays an important role in sample production and subsequent sample use.
[0036] The current technical solution is based on the Interface Description Language (IDL) file in the Protocol Buffer (PB) format. The IDL file in the PB format has fixed semantics and structure, which defines the name and data type of all auxiliary information. Since this PB format IDL file cannot be modified dynamically online, whenever new auxiliary information is to be added, it is necessary to first define a new field in this PB format IDL file (taking "A" as an example) and publish this change online. Afterwards, when creating sample selection sample auxiliary information, the corresponding value that is expected to be retained can be stored in the pre-defined field "A". Correspondingly, the field "A" can also be used for filtering and analysis during the downstream model training process.
[0037] Refer to Figure 2. In this interface 200, "page" is a preset auxiliary information item. A drop-down menu 210 displays the various fields included in the data record currently being processed. To add new sample auxiliary information, select the field corresponding to the "page" auxiliary information item from drop-down menu 210.
[0038] Such a solution for sample auxiliary information has many problems. First, the update of sample auxiliary information (for example, modification or addition) requires a development and online process. The fields in the PB format IDL file need to be preset before they can be used when creating samples. Once the business needs to use new fields as auxiliary information, it is necessary to modify the configuration of the PB format IDL file, and conduct strict testing and online processes. Secondly, such a development and online process has a long cycle and high risk. Once an error occurs, it will hinder sample generation and subsequent model training, affecting the development progress and usability of the machine learning model. Third, in this solution, the auxiliary information is preset, and the preset sample auxiliary information cannot meet diverse business needs. When producing samples for different application scenarios, there is a very large uncertainty in the fields used for sample auxiliary information, and this preset PB format IDL file is difficult to meet all needs.
[0039] Embodiments of the present disclosure provide a data processing solution. In this solution, an input control is presented for specifying a data field for at least one data record, each of which includes a set of data fields. User input is then received through the input control, specifying a target data field within the set of data fields. Furthermore, based on the target data field, at least one sample is generated, each corresponding to the at least one data record. The sample in the at least one sample includes an encoded representation of the corresponding data record and a sample field corresponding to the target data field of the corresponding data record.
[0040] According to an embodiment of the present disclosure, a user (e.g., a sample producer) is allowed to specify fields desired as auxiliary information from the fields included in the data record according to actual needs. In this way, sample production is no longer restricted by preset auxiliary information. On the one hand, the configuration efficiency of auxiliary information can be improved, thereby shortening the sample production cycle, and further helping to shorten the model training cycle. On the other hand, the fields used as sample auxiliary information can be flexibly set according to demand, so that any required fields can be retained in the sample as auxiliary information.
[0041] Some example embodiments of the present disclosure will be described below with continued reference to the accompanying drawings.
[0042] Example Process
[0043] 3 , which shows a flow chart of a process 300 for data processing according to some embodiments of the present disclosure, may be implemented in the electronic device 110 , for example, by the application 120 . For example only, the process 300 is described below with reference to FIG1 .
[0044] At block 310, electronic device 110 presents an input control for specifying a data field for at least one data record 101. Each data record 101 includes a set of data fields. For example, each data record 101 may include the same set of data fields. Hereinafter, the value of each field in data record 101 (also referred to as a field value) is also referred to as a raw value.
[0045] An input control can be any form of control that allows a user to specify a data field in a data record. For example, an input control can include an input box through which at least a portion of a field name can be entered. The user can enter the entire field name or a portion of the field name, and the matching data field can be determined based on the portion entered. For another example, an input control can be a selection control including multiple options, through which a selection can be made from one or more fields in a data record.
[0046] In some embodiments, these data records 101 can be organized using multiple data tables. For example, each data table can include one or more fields from the set of fields. It is understood that two different data tables can include the same fields. In such an embodiment, in order for the user to specify data fields as auxiliary information, selection controls for multiple data tables can be first presented, also referred to as a first selection control. If a selection control is received for a data table from the multiple data tables, a selection control for one or more fields in the selected data table can be further presented, also referred to as a second selection control.
[0047] An example is described below with reference to Figures 4 and 5. Figure 4 shows an example interface 400 for configuring a sample production task. Area 410 in interface 400 is used to present configuration information and controls related to auxiliary information. For example, Figure 4 shows a control 420 for adding a field as auxiliary information. If control 420 is triggered, an interface for specifying data fields, such as interface 500 shown in Figure 5, may be presented.
[0048] In the example interface 500, a control 510 is displayed. In response to control 510 being triggered, multiple selection controls 501, 502, 503, and 504 are presented, one for each of the first, second, third, and other tables, respectively. For example, if selection control 501 is triggered, i.e., if a selection is made for the first table, a selection control 520 for the "Item_source" field in the first table is presented. Thus, the "Item_source" field can be selected.
[0049] These data tables can be divided based on any suitable basis or standard. For example, the division of the data table can be determined based on the content recorded in data record 101. In some embodiments, at least one data record 101 is used to record an action taken by a first object towards a second object. As an example and not intended to be limiting, the data record records that company A lowered the price of product B. In this example, the first object is company A, the second object is product B, and the action is the price reduction. For another example, in a recommendation scenario, the data record may record that the first object selected the recommended second object.
[0050] In this embodiment, the plurality of data tables may include a first data table for recording information related to behavior. Exemplarily, the first data table may also be referred to as a behavior table, which may include any suitable fields related to behavior, such as a field for recording the specific type of behavior, a field for recording the time when the behavior occurred, a field for recording the address where the behavior occurred, etc.
[0051] Alternatively or additionally, the plurality of data tables may include a second data table for recording information related to the first object. Exemplarily, the second data table may also be referred to as a first object table, which may include any suitable fields capable of describing the first object, such as fields for recording various attributes of the first object.
[0052] Alternatively or additionally, the multiple data tables may include a third data table for recording information related to the second object. Exemplarily, the third data table may also be referred to as a second object table (e.g., an item table), which may include any suitable fields capable of describing the second object, such as fields for recording various attributes of the second object. For the example above, the third data table may include a field for the name, type, and price of the product, etc.
[0053] In order for the user to specify (e.g., select) a data field, the electronic device 110 may obtain information about the data field in any suitable manner. For example, the electronic device 110 may extract or read information about the data field from the data record. The embodiments of the present disclosure are not limited in this respect.
[0054] Continuing with Figure 3 , at block 320 , electronic device 110 receives user input, via an input control, specifying a target data field from a set of data fields. It should be understood that the data field specified by the user via the input control is referred to as the target data field. In other words, the user desires that the value of the target data field be retained as auxiliary information.
[0055] As an example, the user can directly enter the name of the target data field. As another example, the user can select the target data field through a selection control. For example, in the example of FIG. 5 above, if the user triggers the selection control 520, the field "Item_source" can be determined as the target data field.
[0056] It should be understood that there may be multiple target data fields specified. The embodiments described below with reference to one target data field may be applicable to any of the multiple target data fields.
[0057] 3 , at block 330, electronic device 110 generates at least one sample 102 corresponding to at least one data record based on the target data field. Each sample 102 includes an encoded representation of the corresponding data record 101 and a sample field corresponding to the target data field of the corresponding data record 101. For example, sample 102-1 includes an encoded representation of data record 101-1 and a sample field corresponding to the target data field of data record 101-1.
[0058] The encoded representation of data record 101 can be a numerical representation generated by converting the original value of data record 101 in any suitable form (e.g., hashing, embedding). It is understandable that, relative to the original value, the encoded representation is an implicit representation that is machine-friendly (e.g., a machine learning model) but unfriendly or difficult for users to intuitively understand. In contrast, the sample fields retained in the sample have displayed or plain text numerical values, which are easy for users to understand. For example, if the target data field is a product price, the sample field can also be the product price.
[0059] In some embodiments, for a corresponding pair of samples 102 and data records 101, the sample field and the target data field have the same value. That is, the original value of the target data field is retained by the sample field. Alternatively, in some embodiments, the original value of the target data field can be transformed with physical meaning, and the transformed value is used as the value of the sample field. It should be understood that this transformation with physical meaning is different from the conversion that generates the coded representation, in that the transformed value is also understandable to the user. This transformation with physical meaning can, for example, include unit conversion (for example, temperature unit, length unit, mass unit), coordinate conversion of position, time representation conversion (for example, conversion between 12-hour representation and 24-hour representation), etc.
[0060] In some embodiments, electronic device 110 may determine the configuration of a target data field based on at least one data record 101. Based on the configuration of the target data field, the configuration of the sample field is determined. The field configuration may include attributes such as the field name, data type (such as string, bigint, int, etc.), length, and precision. Referring to the example of FIG4 , as shown in area 410 , the field name “_meta_entity_id” in the sample and the field type “string” in the sample are determined based on the name and field type of the data field “meta_entity_id” in the data record.
[0061] In some embodiments, the name of the sample field may include the name of the corresponding target data field. In this way, during downstream use of the sample, the user can intuitively understand the meaning of each sample field to facilitate further processing, such as sample screening.
[0062] In particular, in some embodiments, a preset symbol can be added to the target data field's name at a preset position to serve as the sample field's name. In the example of FIG4 , the symbol "_" is added before the target data field's name to generate the sample field's name. For example, the symbol "_" is added before the data field name "meta_entity_id" to generate the sample field name "_meta_entity_id." In this embodiment, the original field names in the data record are preserved while still being distinguished. This allows users to easily understand the meaning of each original field.
[0063] In some embodiments, before generating a sample, for example, when configuring a sample production task, the identification information of the target data field and the configuration information of the sample field can also be presented in association. Continuing with the example of FIG4 , in area 410 , the identification information of the target data field is displayed via a column named “Field Name (Table Name)”; in the same row, the configuration information of the sample field is displayed via columns named “Field Name in Sample” and “Field Type in Sample”. In this way, it is convenient for the user to view the configuration of the sample generation task being performed.
[0064] In some embodiments, the identification information of the target data field includes at least one of the following: the name of the target data field, or the name of the data table that includes the target data field. For example, in FIG4 , "meta_entity_id" is the name of the data field, and the "daily_window" in parentheses following it is the name of the data table that includes the data field.
[0065] In some embodiments, sample fields and their corresponding values are stored as part of the sample as named features. That is, in such embodiments, named features can be used to store auxiliary information about the sample. In machine learning, named features refer to data elements with specific names and definitions that can be used for data preprocessing and model training in machine learning algorithms.
[0066] See Table 1. The following compares the processing speed of the above-described solution based on the PB format IDL file, the example metadata (ExampleMeta) solution, and the NamedFeature solution for storing auxiliary information. ExampleMeta is metadata information that instructs the machine learning model how to process data, such as data items, fields, data types, etc. In machine learning, we usually provide data to the model in the form of Examples, where each Example includes several features and a label. ExampleMeta provides further description and explanation of these features and labels. As can be seen from Table 1, the NamedFeature method has obvious performance advantages.
[0067] Table 1
[0068] Table 1 shows that obtaining auxiliary information from NamedFeature significantly reduces processing time. This is because the NamedFeature solution does not require deserialization; data can be retrieved directly from memory after traversal. However, the PB-format IDL file solution and the ExampleMeta solution require deserialization before retrieving the data. In particular, ExampleMeta requires an additional traversal using an iterator, which incurs additional overhead.
[0069] Therefore, in such an embodiment, auxiliary information can be obtained based on naming features. In this way, a wide range of fields from various tables involved in the sample can be selected, and the original names of the fields can be used.
[0070] In the disclosed embodiments, any field that appears in the sample data source can be defined as auxiliary information. Compared with traditional methods, the cycle for adding new auxiliary information is shortened from several days or even longer to 0 days depending on the complexity, which means that there is no need for development and launch at all. When using new auxiliary information, there is almost no need to wait for online configuration time, and auxiliary information can be flexibly configured according to business needs. Therefore, the cycle for generating samples and training models can be greatly shortened, and related costs can be saved.
[0071] Example devices and equipment
[0072] 6 shows a schematic structural block diagram of a data processing apparatus 600 according to certain embodiments of the present disclosure. Apparatus 600 may be implemented as or included in terminal device 110. Each module / component in apparatus 600 may be implemented by hardware, software, firmware, or any combination thereof.
[0073] As shown in the figure, the apparatus 600 includes an interface presentation module 610 configured to present an input control for specifying data fields for at least one data record, wherein each data record in the at least one data record includes a set of data fields.
[0074] The apparatus 600 further includes an input module 620 configured to receive a user input specifying a target data field in a group of data fields through an input control.
[0075] The apparatus 600 further includes a sample generation module 630 configured to generate, based on the target data field, at least one sample corresponding to each of the at least one data record. A sample in the at least one sample includes an encoded representation of the corresponding data record and a sample field corresponding to the target data field of the corresponding data record.
[0076] In some embodiments, the sample field has the same value as the target data field for corresponding data records and samples.
[0077] In some embodiments, the apparatus 600 further includes a determining module configured to determine a configuration of the target data field based on at least one data record; and determine a configuration of the sample field based on the configuration of the target data field.
[0078] In some embodiments, the configuration includes a name, and the determining module is further configured to add a preset symbol at a preset position of the name of the target data field as the name of the sample field.
[0079] In some embodiments, sample fields and corresponding values are stored as part of the sample as named features.
[0080] In some embodiments, the interface presentation module 610 is further configured to present a first selection control for a plurality of data tables, wherein each data table in the plurality of data tables includes one or more data fields in a set of data fields. The input module 620 is further configured to receive a selection of a data table in the plurality of data tables via the first selection control. The interface presentation module 610 is further configured to present a second selection control for one or more data fields in the selected data table.
[0081] In some embodiments, at least one data record is used to record an action performed by a first object on a second object, and the plurality of data tables include the following items: a first data table for recording information related to the action; a second data table for recording information related to the first object; and a third data table for recording information related to the second object.
[0082] In some embodiments, the interface presenting module 610 is further configured to present identification information of the target data field and configuration information of the sample field in an associated manner.
[0083] In some embodiments, the identification information includes at least one of the following: a name of the target data field, or a name of a data table including the target data field.
[0084] FIG7 shows a block diagram of an electronic device 700 in which one or more embodiments of the present disclosure may be implemented. It should be understood that the electronic device 700 shown in FIG7 is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein. The electronic device 700 shown in FIG7 can be used to implement the electronic device 110 of FIG1 .
[0085] As shown in FIG7 , electronic device 700 is a general-purpose electronic device. Components of electronic device 700 may include, but are not limited to, one or more processors or processing units 710, memory 720, storage device 730, one or more communication units 740, one or more input devices 750, and one or more output devices 760. Processing unit 710 may be a real or virtual processor and is capable of performing various processes according to programs stored in memory 720. In a multi-processor system, multiple processing units execute computer-executable instructions in parallel to enhance the parallel processing capabilities of electronic device 700.
[0086] The electronic device 700 typically includes a plurality of computer storage media. Such media can be any accessible media that can be obtained by the electronic device 700, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 720 can be a volatile memory (e.g., registers, cache, 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 730 can be a removable or non-removable medium and can include a machine-readable medium, such as 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 electronic device 700.
[0087] The electronic device 700 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not shown in FIG. 7 , a disk drive for reading from or writing to a removable, non-volatile disk (e.g., a “floppy disk”) and an optical drive for reading from or writing to a removable, non-volatile optical disk may be provided. In these cases, each drive may be connected to a bus (not shown) by one or more data media interfaces. The memory 720 may include a computer program product 725 having one or more program modules configured to perform various methods or actions of various embodiments of the present disclosure.
[0088] The communication unit 740 enables communication with other electronic devices via a communication medium. Additionally, the functions of the components of the electronic device 700 can be implemented as a single computing cluster or multiple computing machines that can communicate via a communication connection. Thus, the electronic device 700 can operate in a networked environment using a logical connection with one or more other servers, a network personal computer (PC), or another network node.
[0089] Input device 750 may be one or more input devices, such as a mouse, keyboard, or trackball. Output device 760 may be one or more output devices, such as a display, a speaker, or a printer. Electronic device 700 may also communicate with one or more external devices (not shown) via communication unit 740 as needed, such as storage devices, display devices, or the like, with one or more devices that allow a user to interact with electronic device 700, or with any device that allows electronic device 700 to communicate with one or more other electronic devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).
[0090] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, wherein the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary implementation of the present disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, and the computer-executable instructions are executed by a processor to implement the method described above.
[0091] Various aspects of the present disclosure are described herein with reference to flowcharts and / or block diagrams of methods, apparatuses, devices, and computer program products implemented according to the present disclosure. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-readable program instructions.
[0092] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, such that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device is generated that implements the functions / actions specified in one or more blocks in the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, where these instructions cause the computer, programmable data processing device, and / or other device to operate in a specific manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing various aspects of the functions / actions specified in one or more blocks in the flowchart and / or block diagram.
[0093] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0094] The flow charts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the systems, methods and computer program products according to multiple implementations of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a part for a module, program segment or instruction, and a part for a module, program segment or instruction comprises one or more executable instructions for realizing the logical function of the specification. In some alternative implementations, the functions marked in the box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.
[0095] While various implementations of the present disclosure have been described above, the foregoing description is intended to be illustrative, not exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is selected to best explain the principles of the implementations, their practical applications, or improvements to existing technologies, or to enable others skilled in the art to understand the various implementations disclosed herein.
Claims
1. A data processing method, comprising: presenting an input control for specifying data fields for at least one data record, each of the at least one data record comprising a set of data fields; receiving, through the input control, a user input specifying a target data field in the set of data fields; as well as Based on the target data field, at least one sample corresponding to the at least one data record is generated, wherein a sample in the at least one sample has an encoded representation of the corresponding data record and a sample field corresponding to the target data field of the corresponding data record. 2 . The method of claim 1 , wherein for corresponding data records and samples, the sample field has the same value as the target data field.
3. The method according to claim 1, further comprising: determining, based on the at least one data record, a configuration of the target data field; as well as Based on the configuration of the target data field, the configuration of the sample field is determined.
4. The method of claim 3, wherein the configuration includes a name, and determining the configuration of the sample field includes: A preset symbol is added at a preset position of the name of the target data field as the name of the sample field.
5. The method of claim 1, wherein the sample fields and corresponding values are stored as part of the sample as named features.
6. The method of claim 1 , wherein presenting the input control comprises: presenting a first selection control for a plurality of data tables, wherein each data table in the plurality of data tables includes one or more data fields in the set of data fields; receiving, through the first selection control, a selection of a data table in the plurality of data tables; as well as Presents a second Select the control.
7. The method according to claim 6, wherein the at least one data record is used to record an action performed by a first object on a second object, and the plurality of data tables include the following items: The first data table is used to record information related to the behavior. A second data table is used to record information related to the first object. The second data table is used to record information related to the second object.
8. The method according to claim 1, further comprising: The identification information of the target data field and the configuration information of the sample field are presented in association.
9. The method according to claim 8, wherein the identification information includes at least one of the following: the name of the target data field, or The name of the data table that contains the target data field.
10. A data processing device, comprising: an interface presentation module configured to present an input control for specifying a data field for at least one data record, each of the at least one data record comprising a set of data fields; an input module configured to receive, through the input control, a user input specifying a target data field in the set of data fields; as well as The sample generation module is configured to generate at least one sample corresponding to the at least one data record based on the target data field, wherein the sample in the at least one sample has an encoded representation of the corresponding data record and a sample field corresponding to the target data field of the corresponding data record.
11. An electronic device, comprising: at least one processing unit; as well as at least one memory, the at least one memory being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions causing the electronic device to perform the operation according to claim 1 when executed by the at least one processing unit Find any one of the methods 1 to 9.
12. A computer-readable storage medium having a computer program stored thereon, wherein the computer program can be executed by a processor to implement the method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Operation method and system for data table in database
CN106598612A
Method and system to process data records
CN108008942A
Data processing method and device for recommendation scene, equipment and storage medium
CN116955821A
Flexible relational data storage method and apparatus
US20030154197A1
Sample Management for a Sales Call
US20100191559A1