A feature extraction method, device and equipment applied to service recommendation and a medium
By pre-configuring and combining operator nodes, the applicability and resource consumption of feature extraction in different scenarios of business recommendation devices are solved, achieving a feature extraction effect that is widely applicable and resource-saving.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- TENCENT TECH (BEIJING) CO LTD
- Filing Date
- 2021-01-08
- Publication Date
- 2026-04-24
AI Technical Summary
In existing technologies, business recommendation devices need to adopt different feature extraction methods for different business scenarios, resulting in a small scope of application, difficulty in expansion, and consumption of a lot of system resources.
Multiple operator nodes are pre-configured, and these operator nodes are combined and reused according to the requirements extracted based on business characteristics, and their execution logic order is determined, thereby extracting target business characteristics from business data.
It enables business feature extraction that is widely applicable in different business scenarios, reduces system resource consumption, simplifies operation steps, and is easy to expand.
Smart Images

Figure CN114756737B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing technology, and in particular to a feature extraction method, apparatus, device, and medium for business recommendation. Background Technology
[0002] With the development of Internet technology, users' online behavior data is constantly increasing. In order to provide differentiated and accurate recommendation services to different users, in the existing technology, each business recommendation device usually obtains relevant business data from the database server for each business application scenario, extracts features from the obtained business data, and recommends information to users based on the extracted business features.
[0003] However, since the business recommendation requirements in different business application scenarios are usually different, different business feature extraction methods are usually required for different business scenarios to extract business features and make business recommendations. This has a small scope of application, is difficult to expand, and consumes a lot of system resources. Summary of the Invention
[0004] This application provides a feature extraction method, apparatus, device, and medium for business recommendation, which expands the scope of application of business feature extraction, improves the scalability of business feature extraction, and reduces the system resources consumed when extracting business features for business recommendation.
[0005] On the one hand, a feature extraction method for business recommendation is provided, including:
[0006] Receive business feature extraction requests for target accounts and target businesses, determine the feature extraction process corresponding to the business feature extraction requests, and the feature extraction process includes multiple feature extraction operations.
[0007] Determine the operator nodes set for each of the multiple feature extraction operations;
[0008] Based on the feature extraction process, determine the execution logic order between the obtained operator nodes;
[0009] Based on the determined execution logic order among the operator nodes, perform the corresponding feature extraction operation on the business data associated with the target account to obtain at least one target business feature corresponding to the business feature extraction requirement.
[0010] On the one hand, a feature extraction device for business recommendation is provided, comprising:
[0011] The receiving unit is used to receive the business feature extraction requirements for the target business of the target account, determine the feature extraction process corresponding to the business feature extraction requirements, and the feature extraction process includes multiple feature extraction operations.
[0012] The first determining unit is used to determine the operator nodes set for each of the multiple feature extraction operations;
[0013] The second determining unit is used to determine the execution logic order between the obtained operator nodes according to the feature extraction process;
[0014] The obtaining unit is used to perform corresponding feature extraction operations on the business data associated with the target account according to the determined execution logic order between each operator node, and obtain at least one target business feature corresponding to the business feature extraction requirement.
[0015] Preferably, the obtaining unit is also used for:
[0016] The target business characteristics are returned to the business recommendation device, enabling the business recommendation device to recommend information to the business application corresponding to the target account based on the target business characteristics.
[0017] Preferably, the receiving unit is used for:
[0018] Obtain at least one target feature parameter to be extracted, as set according to the business feature extraction requirements;
[0019] Each feature extraction sub-process is obtained for setting each target feature parameter in at least one target feature parameter; wherein each feature extraction sub-process contains multiple feature extraction operations;
[0020] Based on the obtained feature extraction sub-processes, the feature extraction process is obtained.
[0021] Preferably, the second determining unit is used for:
[0022] For each target feature parameter, the following steps are performed: determine the operator nodes corresponding to each feature extraction operation in the feature extraction sub-process corresponding to a target feature parameter, and determine the sub-execution logic order between the operator nodes corresponding to a target feature parameter based on the feature extraction sub-process corresponding to a target feature parameter.
[0023] The execution logic order between the obtained operator nodes is determined based on the sub-execution logic order corresponding to each target feature parameter.
[0024] Preferably, the unit is used for:
[0025] By using the read operator nodes in each operator node, the data read address information set for the target business can be obtained;
[0026] By reading operator nodes and based on data read address information, the data read interface is called to obtain the business data associated with the target account.
[0027] Preferably, the unit is used for:
[0028] According to the determined execution logic order of each operator node, for each operator node except for the read operator node, the following steps are executed respectively:
[0029] If it is determined that the parent node of an operator node has completed its execution, then the processing result of the parent node is input into an operator node;
[0030] By using an operator node, the corresponding feature extraction operation is performed on the processing result of the parent node to obtain the processing result of the operator node;
[0031] If an operator node contains location information, the processing result will be determined as the target business feature of the target feature parameters set for the location information.
[0032] Output the processing results based on the location information.
[0033] On the one hand, a control device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, it performs the steps of any of the above-mentioned feature extraction methods applied to business recommendations.
[0034] On the one hand, a computer-readable storage medium is provided, on which a computer program is stored, which, when executed by a processor, implements the steps of any of the above-described feature extraction methods applied to business recommendations.
[0035] On one hand, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the method provided in any of the various alternative implementations of feature extraction applied to business recommendation.
[0036] This application provides a feature extraction method, apparatus, device, and medium for business recommendation. It receives a business feature extraction request for a target account's target business, determines the feature extraction process corresponding to the request, and, based on the feature extraction operations within that process, determines multiple operator nodes and their execution logic order. Following this execution logic order, it performs corresponding feature extraction operations on the business data associated with the target account to obtain at least one target business feature corresponding to the aforementioned business feature extraction request. By pre-configuring multiple operator nodes and combining and reusing them upon receiving the request, the system can extract the corresponding target business feature from the business data. This allows for business feature extraction tailored to different business scenarios, reducing system resource consumption, and offering wide applicability and easy expansion.
[0037] Other features and advantages of this application will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the application. The objectives and other advantages of this application may be realized and obtained by means of the structures particularly pointed out in the written description, claims, and drawings. Attached Figure Description
[0038] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0039] Figure 1 This is an example diagram illustrating an application scenario of a feature extraction system according to an embodiment of this application;
[0040] Figure 2 This is a flowchart illustrating an implementation method for feature extraction applied to business recommendation in this application.
[0041] Figure 3 This is a detailed implementation flowchart of a feature extraction method applied to business recommendation in the embodiments of this application;
[0042] Figure 4a An example diagram illustrating the configuration of an operator node in an embodiment of this application;
[0043] Figure 4b This is an example diagram of a DAG in an embodiment of this application;
[0044] Figure 5 This is a schematic diagram of a system architecture for feature extraction according to an embodiment of this application;
[0045] Figure 6This is a schematic diagram of the structure of a feature extraction device applied to business recommendation in an embodiment of this application;
[0046] Figure 7 This is a schematic diagram of the structure of a control device according to an embodiment of this application. Detailed Implementation
[0047] To make the objectives, technical solutions, and beneficial effects of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0048] First, some of the terms used in the embodiments of this application will be explained to facilitate understanding by those skilled in the art.
[0049] Terminal devices can be mobile terminals, fixed terminals, or portable terminals, such as mobile phones, sites, units, devices, multimedia computers, multimedia tablets, internet nodes, communicators, desktop computers, laptop computers, notebook computers, netbook computers, tablet computers, personal communication system devices, personal navigation devices, personal digital assistants, audio / video players, digital cameras / camcorders, positioning devices, television receivers, radio receivers, e-book devices, gaming devices, or any combination thereof, including accessories and peripherals of these devices, or any combination thereof. It is also foreseeable that terminal devices can support any type of account-specific interface (e.g., wearable devices).
[0050] Servers can be independent physical servers, server clusters or distributed systems composed of multiple physical servers, or cloud servers that provide basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, and big data and artificial intelligence platforms.
[0051] Cloud storage is a new concept that has been extended and developed from the concept of cloud computing. A distributed cloud storage system (hereinafter referred to as a storage system) refers to a storage system that uses cluster applications, grid technology and distributed storage file systems to bring together a large number of storage devices of various types in the network (storage devices are also called storage nodes) to work together through application software or application interfaces to provide data storage and business access functions to the outside world.
[0052] Currently, the storage method in storage systems is as follows: Logical volumes are created. During logical volume creation, physical storage space is allocated to each logical volume. This physical storage space may consist of a single storage device or the disks of several storage devices. Applications store data on a logical volume, which means storing the data on the file system. The file system divides the data into many parts, each part being an object. Each object contains not only the data but also additional information such as data identifiers. The file system writes each object to the physical storage space of that logical volume, and it records the storage location information of each object. Therefore, when an application requests access to data, the file system can allow the application to access the data based on the storage location information of each object.
[0053] The process by which a storage system allocates physical storage space to a logical volume is as follows: the physical storage space is pre-divided into strips according to the capacity estimate of the objects stored in the logical volume (this estimate usually has a large margin relative to the actual capacity of the objects to be stored) and the grouping of Redundant Array of Independent Disks (RAID). A logical volume can be understood as a strip, thus allocating physical storage space to the logical volume.
[0054] Database: Simply put, it can be viewed as an electronic filing cabinet—a place to store electronic files, where accounts can perform operations such as adding, querying, updating, and deleting data. A "database" is a collection of data stored together in a certain way, shareable with multiple accounts, with minimal redundancy, and independent of applications.
[0055] Database Management Systems (DBMS) are computer software systems designed for managing databases, generally possessing basic functions such as storage, retrieval, security, and backup. DBMSs can be classified according to the database model they support, such as relational or Extensible Markup Language (XML); or the type of computer they support, such as server clusters or mobile devices; or the query language used, such as Structured Query Language (SQL) or XQuery; or performance priorities, such as maximum scale or highest operating speed; or other classification methods. Regardless of the classification method used, some DBMSs can cross categories, for example, simultaneously supporting multiple query languages.
[0056] A Directed Acyclic Graph (DAG) is a directed graph in which it is impossible to return to a vertex by traversing several edges from a given vertex. It is an effective tool for describing expressions containing common subexpressions.
[0057] The design concept of the embodiments of this application is described below.
[0058] With the development of internet technology and the continuous increase in applications and internet data, it is becoming increasingly difficult for users to quickly obtain data that meets their needs from massive amounts of internet data. Therefore, in order to provide business recommendation services that meet the needs of different users, relevant business features are usually extracted from users' business data according to application scenarios, and then business recommendations are made to users based on the extracted business features.
[0059] For example, video applications contain massive amounts of online behavior data, such as user video exposure data, user video click data, and user like behavior data.
[0060] However, in existing technologies, before business recommendations can be made, different feature extraction methods need to be used for business recommendation requirements in each application scenario. This consumes a lot of manpower, time and system resources, has a small scope of application, is difficult to reuse in different application scenarios, and is not easy to expand. Furthermore, business recommendation devices usually need to obtain users' network behavior data through database servers, which results in a large amount of data transmission and high network transmission overhead.
[0061] Therefore, there is an urgent need for a technical solution for extracting business features that can be reused in different application scenarios, is easy to expand, and consumes few resources.
[0062] Considering that there may be many identical feature extraction operations when extracting different business features, corresponding operator nodes can be pre-configured for each feature extraction operation. This allows for the combination and reuse of these operator nodes to extract the corresponding business features for different business feature extraction needs. This application provides a feature extraction scheme for business recommendation. The scheme receives a business feature extraction request for a target account's target business, determines the feature extraction process corresponding to the request, and determines multiple operator nodes and their execution logic order based on the feature extraction operations included in the process. Then, according to this execution logic order, corresponding feature extraction operations are performed on the business data associated with the target account to obtain at least one target business feature corresponding to the aforementioned business feature extraction request. By pre-configuring multiple operator nodes and combining and reusing them upon receiving the business feature extraction request, the scheme can extract business features from the business data based on the combined operator nodes. This allows for business feature extraction for different business scenarios, reducing system resource consumption, and is widely applicable and easily expandable.
[0063] To further illustrate the technical solutions provided in the embodiments of this application, a detailed description is provided below in conjunction with the accompanying drawings and specific implementation methods. Although the embodiments of this application provide method operation steps as shown in the following embodiments or drawings, more or fewer operation steps may be included in the method based on conventional or non-inventive effort. For steps that do not logically have a necessary causal relationship, the execution order of these steps is not limited to the execution order provided in the embodiments of this application. In actual processing or when the device executes the method, it may be executed sequentially or in parallel according to the method shown in the embodiments or drawings.
[0064] The terms "first," "second," etc. (if present) in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a particular order or sequence. It should be understood that such data used in this way can be interchanged where appropriate so that the embodiments described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0065] See Figure 1 The figure shown is an example of an application scenario for a feature extraction system. The feature extraction system includes a control device 101, a business recommendation device 102, and a database server 103, and may also include a user device 104.
[0066] Control device 101: can be a terminal device or a server, used to pre-configure each operator node and data reading address information. After receiving the business feature extraction request for the target account from the business recommendation device 102, it combines the corresponding operator nodes according to the business feature extraction request, and reads the corresponding business data from the database server 103 according to the combined operator nodes through the corresponding data reading address information, performs feature extraction on the business data, and returns the extracted target business features to the business recommendation device 102.
[0067] For example, the target business could be long-form videos, short-form videos, mini-videos, or games. Business data could include user video exposure data, user video click data, and user video like data.
[0068] It should be noted that since user data across different services is often reusable, when extracting user characteristics across different services, the business data associated with the user account can be the same or different. Furthermore, the retrieved business data can be the user's network behavior data within the corresponding service, or it can be the user's network behavior data in one or more other services; there are no restrictions on this. Business data can be stored using a database or cloud storage.
[0069] Business recommendation device 102: can be a terminal device or a server, used to send a business feature extraction request for the target account to the control device 101, receive the corresponding target business features returned by the control device 101, and make business recommendations based on the received target business features.
[0070] In this embodiment, only one business recommendation device 102 is used as an example to illustrate the provision of corresponding business recommendation services for different business applications. That is, the business recommendation devices 102 corresponding to different business applications are different. In actual applications, there can be one or more business recommendation devices 102. One business recommendation device 102 can provide business recommendation services for one business application or for multiple business applications. No limitation is made here.
[0071] Among them, the business recommendation device 102 can be a server for providing business services to business applications in user equipment 104. That is, it receives business requests from user equipment 104, provides corresponding business services to users, sends the corresponding business data of users to database server 103, and sends corresponding recommendation information to business applications in user equipment 104 based on the determined target business characteristics.
[0072] The business recommendation device 102 can also be used as a terminal device with business applications installed. It sends a business feature extraction request for the target account to the control device 101 through the business application, receives the corresponding target business features returned by the control device 101, determines the recommendation information based on the received target business features, and displays the recommendation information to the user.
[0073] Database server 103: Used to store business data of each user account and its business applications. After receiving a data read request sent by control device 101, it returns the requested business data to control device 101.
[0074] Optionally, there can be one or more database servers 103, and different database servers 103 can store business data for different business applications respectively. The database server 103 can also be the same device as the control device 101, which is not limited here.
[0075] User equipment 104 can be a terminal device, which can have one or more business applications installed. It is used to receive recommendation information from the corresponding business recommendation device 102 through the business applications and display the recommendation information to the user. It is also used to upload the user's corresponding business data to the database server 103 through each business application.
[0076] See Figure 2 The diagram shown is an implementation flowchart of a feature extraction method for business recommendation provided in this application. The specific process of this method is as follows:
[0077] Step 200: The control device receives the business feature extraction request for the target account's target business and determines the feature extraction process corresponding to the business feature extraction request.
[0078] Specifically, the control device receives a feature extraction message sent by the service recommendation device corresponding to the target service, obtains the service feature extraction requirements contained in the feature extraction message, and obtains the feature extraction process set for the service feature extraction requirements based on the stored correspondence between the service feature extraction requirements and the feature extraction process.
[0079] The business feature extraction requirements are set according to the actual application scenario of the business and are used to represent the business recommendation requirements. Optionally, business feature extraction requirements can be represented by requirement identification information. The feature extraction process can be represented by process identification information.
[0080] In one embodiment, the control device acquires the demand identification information contained in the feature extraction message, and acquires the process identification information set corresponding to the demand identification information.
[0081] When determining the feature extraction process, the control device can adopt the following steps:
[0082] S2001: The control device acquires at least one target feature parameter to be extracted, which is set according to the business feature extraction requirements.
[0083] Specifically, the control equipment pre-configures corresponding business feature parameters for each business feature extraction requirement, and each business feature extraction requirement can be set with one or more business feature parameters.
[0084] For example, business characteristic parameters could include the user's effective playback duration, effective playback count, and user interest with time decay.
[0085] In this way, when the business recommendation device recommends information to the target business application of the target account, it can request the control device to extract the target business features corresponding to the target feature parameters based on the business feature extraction requirements corresponding to the target business.
[0086] S2002: The control device acquires the feature extraction sub-process for each target feature parameter set in at least one target feature parameter.
[0087] Specifically, the control device obtains the feature extraction sub-process corresponding to each target feature parameter based on the correspondence between the stored business feature parameters and the feature extraction sub-process.
[0088] Prior to executing S2002, the control device pre-configures corresponding feature extraction sub-processes for each business characteristic parameter. Optionally, sub-process identification information can be used to represent the feature extraction sub-processes.
[0089] In one embodiment, the control device obtains the subprocess identification information corresponding to each target feature parameter based on the correspondence between the stored business feature parameters and subprocess identification information.
[0090] S2003: The control device obtains the feature extraction process based on the obtained feature extraction sub-processes.
[0091] Specifically, when executing S2003, the following two methods can be used:
[0092] The first approach is to use the control device to collect the various feature extraction sub-processes as the feature extraction process.
[0093] In other words, the feature extraction process is a collection of multiple feature extraction sub-processes, and these sub-processes are parallel to each other.
[0094] The second method is to merge the various feature extraction sub-processes into a single feature extraction process using the control equipment.
[0095] In each feature extraction sub-process, the first feature extraction operation is the start operation, and the merged part of each feature extraction sub-process consists of multiple consecutive operations including the start operation.
[0096] For example, the first sub-process includes the following feature extraction operations: start operation, read operation, filter operation, profile calculation operation, and output operation. The second sub-process includes the following feature extraction operations: start operation, read operation, merge operation, summation operation, and output operation. Therefore, the merged part of the first and second sub-processes consists of the start operation and the read operation.
[0097] In this way, the various feature extraction sub-processes can be merged, allowing for the merging of operations and data that are identical, thus simplifying the operation steps.
[0098] Step 201: The control device determines the operator nodes set for each of the multiple feature extraction operations.
[0099] Specifically, the control device performs the following steps for each feature extraction operation: Based on the stored correspondence between feature extraction operations and operator nodes, determine the operator node corresponding to a feature extraction operation.
[0100] In one embodiment, the control device represents operator nodes through node identification information and feature extraction operations through operation identification information. Then, the control device can perform the following steps for each feature extraction operation corresponding to the operation identification information: determine the node identification information corresponding to an operation identification information according to the pre-set correspondence between operation identification information and node identification information.
[0101] Before executing step 201, the control device performs the following steps in advance: pre-configures the corresponding operator node for each feature extraction operation.
[0102] Optionally, the operator nodes can be divided according to their type. The operator nodes include the following types: start node, read operator node, process operator node, and output operator node.
[0103] The read operator node contains input parameters, used to read business data based on these parameters. The process operator node is used for data processing. The output operator node is used for data processing and to output the obtained target business features.
[0104] Optionally, input parameters can include data address parameters and account parameters, etc. In practical applications, input parameters can be set according to the actual application scenario, and there are no restrictions here.
[0105] Step 202: The control device determines the execution logic order between the obtained operator nodes according to the feature extraction process.
[0106] Specifically, when performing step 202, the following two methods can be used:
[0107] The first approach is to determine the execution logic order between each operator node in the feature extraction process.
[0108] The second approach is to determine the sub-execution logic order between the operator nodes corresponding to each feature extraction sub-process based on the feature extraction sub-process corresponding to each target feature parameter, and then determine the execution logic order corresponding to the feature extraction process based on the sub-execution logic order.
[0109] Specifically, the control device performs the following steps for each target characteristic parameter:
[0110] S2021: Determine the operator nodes corresponding to each feature extraction operation in the feature extraction sub-process corresponding to a target feature parameter.
[0111] Specifically, a feature extraction sub-process corresponding to a target feature parameter is determined, and the operator nodes corresponding to each feature extraction operation contained in the feature extraction sub-process are determined according to the correspondence between feature extraction operations and operator nodes.
[0112] S2022: Based on the feature extraction sub-process corresponding to the target feature parameter, determine the sub-execution logic order between each operator node corresponding to the target feature parameter.
[0113] Specifically, the execution order of each feature extraction operation in the feature extraction sub-process is obtained by determining the sub-execution logic order between each operator node.
[0114] S2023: The control device determines the execution logic order of each operator node corresponding to the feature extraction process according to the execution logic order of each sub-execution.
[0115] In this way, the dependencies between each operator node and the execution order can be determined.
[0116] Step 203: The control device performs corresponding feature extraction operations on the business data associated with the target account according to the determined execution logic order between each operator node, and obtains at least one target business feature corresponding to the business feature extraction requirement.
[0117] Specifically, when performing step 203, the following steps can be adopted:
[0118] S2031: Obtain the data read address information set for the target service through the read operator nodes in each operator node.
[0119] Specifically, the control device obtains the data address parameters in the read operator node, and obtains the data read address information corresponding to the data address parameters in the read operator node according to the pre-established correspondence between the data address parameters and the data read address information.
[0120] Furthermore, the reading operator node can also contain account parameters. The control device can obtain the target account corresponding to the account parameters in the reading operator node based on the pre-established correspondence between account parameters and user account information.
[0121] Before executing S2031, the control device pre-configures the data read address information corresponding to the data address parameter, and the user account information corresponding to the account parameter.
[0122] S2032: By reading the operator node and based on the data reading address information, the data reading interface is called to obtain the business data associated with the target account.
[0123] S2033: Based on the execution logic order between each operator node, extract features from the business data associated with the target account to obtain the corresponding target business features.
[0124] Specifically, according to the determined execution logic order of each operator node, the following steps are executed for each operator node except for the read operator node:
[0125] Step a: If it is determined that the parent node of an operator node has completed its execution, then input the processing result of the parent node into the operator node.
[0126] Specifically, an operator node can have one or more parent nodes, so that the processing result of the operator node can be used as the input information for the next child node.
[0127] Step b: Using this operator node, perform the corresponding feature extraction operation on the processing result of the parent node to obtain the processing result of this operator node.
[0128] Specifically, once the corresponding parent nodes have completed their execution, the feature extraction operation set for the operator node is used to process the processing results of each parent node to obtain the processing result of the operator node.
[0129] Step c: If the operator node contains location information, then the processing result is determined as the target business feature of the target feature parameters set for the location information.
[0130] Step d: Output the corresponding processing results according to the above location information.
[0131] Furthermore, the control device returns the obtained target service characteristics to the service recommendation device. Based on the received target service characteristics, the service recommendation device recommends information for the target account.
[0132] See Figure 3 The diagram shown is a detailed implementation flowchart of a feature extraction method for business recommendation provided in this application. The specific process of this method is as follows:
[0133] Step 300: The control device receives the feature extraction message and extracts the business feature extraction requirements from the feature extraction message.
[0134] Specifically, when performing step 300, the following steps can be adopted:
[0135] S3001: The service recommendation device corresponding to the target service sends a feature extraction message to the control device.
[0136] In one implementation, a service recommendation device corresponding to a target service sends a feature extraction message to a control device.
[0137] In one implementation, multiple service recommendation devices corresponding to multiple target services send corresponding feature extraction messages to the control device.
[0138] For example, if the target business is short video business, the recommended device for the business is a short video server.
[0139] For example, if the target business is news business, the recommended device is a news server.
[0140] S3002: The control device acquires the service feature extraction requirements from the received feature extraction message.
[0141] In one implementation, the control device pre-establishes a correspondence between business feature extraction requirements and requirement identification information. The control device receives a feature extraction message sent by a business recommendation device, obtains the requirement identification information contained in the feature extraction message, and determines the business feature extraction requirement corresponding to the requirement identification information contained in the feature extraction message based on the correspondence between the business feature extraction requirements and the requirement identification information.
[0142] Step 301: The control device acquires at least one target feature parameter to be extracted, which is set according to the business feature extraction requirements.
[0143] In one implementation, the control device pre-establishes a correspondence between demand identification information and business feature parameters. Based on this correspondence, the control device obtains at least one target feature parameter corresponding to the demand identification information contained in the feature extraction message.
[0144] For example, the requirement identification information corresponding to the business feature extraction requirement is 0001, and the corresponding target feature parameters are: the user's effective playback duration, the number of effective playbacks, and user interest with time decay.
[0145] Step 302: The control device acquires the feature extraction sub-processes for each target feature parameter set in at least one target feature parameter.
[0146] Specifically, before executing step 302, the control device pre-configures corresponding feature extraction sub-processes for each business feature parameter.
[0147] It should be noted that the feature extraction sub-process contains multiple feature extraction operations, representing the logical connection relationship between each feature extraction operation. This can be represented by flowcharts or other methods to obtain the corresponding business feature parameters.
[0148] In one implementation, the control device pre-establishes a correspondence between business feature parameters and sub-process identification information corresponding to feature extraction sub-processes.
[0149] When performing step 302, the following two methods can be used:
[0150] The first approach is as follows: if the control device determines that the number of target feature parameters is one, then based on the correspondence between business feature parameters and feature extraction sub-processes, the feature extraction sub-process corresponding to the target feature parameters is obtained.
[0151] In one implementation, the control device obtains the subprocess identification information corresponding to the target feature parameter based on the correspondence between the business feature parameters and the subprocess identification information.
[0152] The second approach is as follows: if the number of target feature parameters is determined by the control equipment, then the feature extraction sub-process corresponding to each target feature parameter is determined according to the correspondence between the business feature parameters and the feature extraction sub-process.
[0153] In one implementation, the control device obtains the subprocess identification information corresponding to each target feature parameter based on the correspondence between the business feature parameters and the subprocess identification information.
[0154] Step 303: The control device obtains the feature extraction process based on the obtained feature extraction sub-processes.
[0155] Specifically, if it is determined that there is only one feature extraction sub-process, then that feature extraction sub-process is designated as the feature extraction process. If it is determined that there are multiple feature extraction sub-processes, then the feature extraction process can be obtained using any of the following methods:
[0156] The first approach is to use the set of all feature extraction sub-processes as the feature extraction process.
[0157] In one implementation, a set containing sub-process identifier information corresponding to each feature extraction sub-process is generated, and set identifier information corresponding to the set is created, and the set identifier information is used as the process identifier information corresponding to the feature extraction process.
[0158] Thus, the feature extraction process is a collection of multiple feature extraction sub-processes.
[0159] The second method is to merge the various feature extraction sub-processes into a single feature extraction process using the control equipment.
[0160] Specifically, the control device merges the common parts between the feature extraction sub-processes based on the feature extraction operations contained in each feature extraction sub-process, and obtains the merged feature extraction process.
[0161] In one embodiment, the control device acquires the feature extraction operations contained in each feature extraction sub-process, merges the common parts between the feature extraction sub-processes to obtain a merged feature extraction process, and creates corresponding process identification information for the merged feature extraction process.
[0162] Furthermore, the control equipment can also establish a correspondence between demand identification information, feature extraction process, and process identification information.
[0163] Furthermore, if, based on the above correspondence, it is determined that there is process identification information corresponding to the demand identification information in the feature extraction message, the control device can also directly obtain the corresponding process identification information without executing the above steps 301 and 302.
[0164] In this way, the feature extraction process can be continuously expanded to meet the needs of feature extraction, simplifying the tedious steps of feature extraction.
[0165] Furthermore, demand identification information, sub-process identification information, and process identification information can also be obtained from feature extraction messages, thereby simplifying the cumbersome steps of controlling the equipment, without any restrictions here.
[0166] Step 304: The control device determines the operator nodes set for each of the multiple feature extraction operations.
[0167] Specifically, before executing step 304, the control device pre-sets corresponding operator nodes for each feature extraction operation.
[0168] Each operator node has a node identification information, such as the node name, the execution logic of the feature extraction operation performed by the operator node, and the input and output parameters of the operator node.
[0169] In one implementation, the configuration for each operator node includes a name, input parameters, and a function (Func), and may also include location information (Index). `Func` represents the operator logic of the operator node, containing one or more input parameters used to obtain input information. Input parameters starting with an underscore are predefined variables, such as `_ds_uniq_exp`, while input parameters not starting with an underscore are constants, such as `aikan_exposure`. `name` is used to name the output parameters of the operator node. Output parameters represent the processing result (i.e., the output result). Comments can be added using `#` when configuring operator nodes. `Index` indicates that the processing result of the operator node should be used as the final output result (i.e., the target business feature), output according to the indicated location information. Optionally, `Index` can be a sequence number.
[0170] For example, Index = n represents the output position number of each processing result. n is a natural number. n can start from 0 or any other natural number; there is no restriction here. The control device can display the corresponding target service features to the user according to the Index, or it can return the target service features corresponding to each target feature parameter to the target service recommendation device according to the Index.
[0171] For example, see Figure 4a The diagram shown is an example of an operator node configuration.
[0172] # Define variable ds1, the operator node is SOP_select sequence read operator, and the data source (i.e. input parameter) to be read is aikan_play;
[0173] name=ds1; func=SOP_select(aikan_play);
[0174] # Define variable ds2, operator node is SOP_select sequence read operator, data source is aikan_insert;
[0175] name=ds2; func=SOP_select(aikan_insert);
[0176] # Define variable ds3, operator node is SOP_select sequence read operator, data source is aikan_exposure;
[0177] name=ds3; func=SOP_select(aikan_exposure);
[0178] # Define the variable ds_uniq_exp as the result of unique filtering of ds3;
[0179] name=ds_uniq_exp;func=SOP_unique(_ds3);
[0180] # Define the variable fe_exp_vid, which represents the information of each DS3 generated object obtained after filtering based on uniqueness. index=0 indicates that the position is 0;
[0181] name=fe_exp_vid;func=SOP_vid(_ds_uniq_exp);index=0;
[0182] # Define ds_all_play as the result of merging ds1 and ds2;
[0183] name=ds_all_play; func=SOP_union(_ds1,_ds2);
[0184] # Define ds_valid_dur, which represents the processing result obtained after filtering the merged ds1 and ds2 according to the preset filtering conditions (i.e., playback duration > 5);
[0185] name=ds_valid_dur;func=SOP_filter(_ds_all_play, 5);
[0186] # Define fe_pvreal, which represents the processing result obtained after calling the SOP_pvreal operator node to process the data of ds_valid_dur. index=1 indicates that the position is 1;
[0187] name=fe_pvreal;func=SOP_pvreal(_ds_valid_dur); index=1.
[0188] In one embodiment, the control device pre-sets corresponding operation identification information for each feature extraction operation, sets corresponding node identification information for each operator node, and establishes a correspondence between the operation identification information and the node identification information.
[0189] When executing step 304, the control device determines the operator node set for each feature extraction operation according to the correspondence between the feature extraction operation and the operator node.
[0190] In one embodiment, the control device determines the node identification information corresponding to each operation identification information based on the correspondence between operation identification information and node identification information.
[0191] In this way, the operator nodes can be combined and reused.
[0192] Step 305: The control device determines the operator node corresponding to the feature extraction sub-process for each target feature parameter.
[0193] Specifically, the control device performs the following steps for each feature extraction sub-process corresponding to each target feature parameter:
[0194] Based on the feature extraction operations contained in a feature extraction sub-process, determine the operator node corresponding to that feature extraction sub-process.
[0195] Step 306: The control device determines the execution logic order of each operator node corresponding to each feature extraction sub-process based on the operator node corresponding to each feature extraction sub-process.
[0196] Specifically, the control device determines the sub-execution logic order between each operator node corresponding to each target feature parameter based on the feature extraction sub-process corresponding to each target feature parameter, and determines the set of each sub-execution logic order as the execution logic order of each operator node corresponding to the feature extraction process.
[0197] In one implementation, when determining the sub-execution logic order, the control device performs the following steps for each feature extraction sub-process corresponding to each target feature parameter:
[0198] Based on the logical connection relationship between the feature extraction operations contained in a feature extraction sub-process, the sub-operator nodes corresponding to each feature extraction operation are logically connected to obtain the corresponding sub-execution logical order.
[0199] Optionally, the execution logic order between operator nodes can be represented using a Directed Acyclic Graph (DAG). This involves generating a DAG based on the logical dependencies between operator nodes. Each node in the DAG is an operator node, and the processing result of each operator node can serve as input information that other operator nodes depend on, or as the final processing result, i.e., the target business feature. It should be noted that circular dependencies (i.e., loop dependencies) are not allowed in the execution logic order between operator nodes.
[0200] For example, see Figure 4b The image shown is an example of a DAG. Combined with... Figure 4a ,right Figure 4b The DAG example diagram shown is used for illustration. The feature extraction process includes two feature extraction sub-processes, corresponding to sub-execution logic sequence 1 and sub-execution logic sequence 2, respectively. Both sub-execution logic sequence 1 and sub-execution logic sequence 2 contain a start node (DAG start).
[0201] The sub-execution logic sequence 1 includes the following sub-nodes in sequence: DAG start, SOP_select(aikan_play) and SOP_select(aikan_insert), as well as SOP_union(_ds1, _ds2), SOP_filter(_ds_all_play, 5), and SOP_pvreal(_ds_valid_dur).
[0202] Here, aikan_play is the input parameter used to read the video playback sequence (e.g., the Aikan timeline playback sequence), and aikan_insert is the input parameter used to read the video insertion playback sequence (e.g., the Aikan insertion playback sequence).
[0203] The sub-execution logic sequence 2 includes the following sub-nodes in sequence: DAG start, SOP_select(aikan_exposure), SOP_unique(_ds3), and SOP_vid(_ds_uniq_exp).
[0204] Here, aikan_exposure is the input parameter used to read the video playback exposure sequence (e.g., the Aikan exposure sequence).
[0205] Step 307: The control device obtains the data read address information set for the target service through the read operator node in each operator node.
[0206] Specifically, the control device acquires the input parameters from the read operator node and obtains the data read address information corresponding to the input parameters.
[0207] Optionally, the data reading address information set for the target business can be obtained from the feature extraction message or can be set in advance for the input parameters; there is no restriction here.
[0208] Step 308: The control device reads the operator node, and based on the data reading address information, calls the data reading interface to obtain the business data associated with the target account.
[0209] In one implementation, the read operator node may further include business parameters. If the data read address information is the address information of the database server, the control device triggers the execution of the read operator node based on the start node, and sends a data request message containing business parameters to the corresponding database server based on the data read address information. The database server, based on the business parameters in the data request message, returns the business data corresponding to each business parameter to the control device.
[0210] In one implementation, if the data read address information is a storage address in the control device, then the control device triggers the execution of the read operator node based on the start node to obtain the business data corresponding to the data read address information.
[0211] Step 309: The control device extracts features from the business data associated with the target account according to the execution logic sequence between each operator node to obtain the corresponding target business features.
[0212] Specifically, each operator node is triggered for execution after its corresponding parent node has finished processing, thus causing each operator node to continuously execute in a loop until all operator nodes have completed their execution. The output parameters of the parent node become the input parameters of the corresponding child node, that is, the processing result of the parent node is used as the input information of the corresponding child node.
[0213] For example, Figure 4bIn this code, the parent nodes of the operator `SOP_union(_ds1, _ds2)` are `SOP_select(aikan_play)` and `SOP_select(aikan_insert)`. The output parameter of `SOP_select(aikan_play)` is `_ds1`, and the output parameter of `SOP_select(aikan_insert)` is `_ds2`. `_ds1` and `_ds2` are the input parameters of `SOP_union(_ds1, _ds2)`. After `SOP_select(aikan_play)` and `SOP_select(aikan_insert)` are executed, `SOP_union(_ds1, _ds2)` is triggered.
[0214] In one implementation, after the control device determines that the start node in the DAG has been triggered for execution, it performs the following steps for each operator node in the DAG:
[0215] S3091: The control device obtains the in-degree of an operator node.
[0216] Optionally, an operator node can depend on one or more parent nodes, and the in-degree represents the number of parent nodes that the operator node depends on.
[0217] S3092: After the control device determines that a parent node of the operator node has completed its execution, it decrements the corresponding in-degree by one.
[0218] S3093: If it is determined that the in-degree of the operator node is zero, the control device obtains the processing results of each dependent parent node and uses the processing results as the input information of the operator node.
[0219] S3094: The control device executes the operator node based on the acquired input information to obtain the corresponding processing result.
[0220] S3095: If it is determined that the operator node contains location information, the control device displays the processing result of an operator node according to the location information.
[0221] S3096: The control device acquires the target feature parameters set corresponding to the location information, and determines the processing result as the target service feature corresponding to the above target feature parameters.
[0222] Specifically, before executing S3096, the control device establishes a correspondence between the position information and the target feature parameters for the DAG, and displays the corresponding processing results according to the correspondence.
[0223] For example, Figure 4a and Figure 4bThere are two processing results: fe_exp_vid and fe_pvreal. The position information corresponding to fe_exp_vid is index=0, and the position information corresponding to fe_pvreal is index=1.
[0224] Step 310: The service recommendation device recommends information to the service application corresponding to the target account based on the target service characteristics returned by the receiving control device.
[0225] See Figure 5 The diagram shows a system architecture for feature extraction. It includes multiple service recommendation devices and control devices corresponding to multiple target services. The control devices contain a session service application for feature extraction. This session service application includes an interface layer, an operator node configuration module, a data source configuration module, a DAG engine module, a DAG execution module, and multiple data source modules. The service recommendation devices include Service Recommendation Device 1, Service Recommendation Device 2, and Service Recommendation Device 3.
[0226] Business recommendation device: It is used to send feature extraction messages containing feature extraction requirements to the session service application, receive target business features returned by the session service application, sort information such as videos according to the target business features, and recommend information to users according to the sorting results.
[0227] For example, the target businesses include long videos, short videos, micro-videos, doki (a video-sharing platform), and games.
[0228] Interface Layer: Located at the outermost layer of the session service application, it is used to receive feature extraction messages sent by the service recommendation device corresponding to the target service, and based on the received feature extraction messages, return the extracted target service features to the corresponding service recommendation device, thereby realizing the interface between the session service application and the service recommendation device.
[0229] Operator node configuration module: used to configure the corresponding operator nodes for each feature extraction operation, and to store the operator nodes configured for each feature extraction operation.
[0230] Data source configuration module: It is used to configure the corresponding data reading address and other information for the input parameters of the reading operator node, and to store the data reading address information corresponding to the input parameters of the reading operator node. It can also store the data source name and reading method corresponding to the input parameters.
[0231] For example, the data read address information is the network address of the database server, and the read method is to obtain it through the user account and user password.
[0232] DAG Engine Module: Used to determine the corresponding DAG based on the feature extraction requirements in the feature extraction message.
[0233] The DAG execution module executes each operator node in the DAG sequentially. Operator nodes can include a start node, a read operator node, a process operator node, and an output operator node. The DAG execution module reads business data through the read operator node in the DAG, extracts features from the business data through the process and output operator nodes, and outputs the extracted target business features through the output operator node.
[0234] The read operator node is used to read data based on information such as the data source name, data read address, and read method corresponding to the input parameters.
[0235] Processing operator nodes: These are used to perform deduplication and filtering operations on the business data read by the reading operator nodes or the processing results of other processing operator nodes.
[0236] Output operator node: Used for data processing and outputs the extracted target business features.
[0237] Data source module: Used to store business data corresponding to each business. Each business data can be stored in the form of a raw business data sequence.
[0238] In this embodiment, multiple operator nodes are pre-configured for different feature extraction operations. Upon receiving a request message from the business recommendation device, the corresponding operator nodes are combined and reused for any business feature extraction requirement. The target business features corresponding to the business feature extraction requirement are extracted from the business data through the combined and reused operator nodes. It is not necessary to send massive amounts of business data to the business recommendation device; only the user's target business features need to be returned to the business recommendation device. This reduces the data transmission volume of the business recommendation device and improves system performance. By combining and reusing the operator nodes, the system resources and time costs are reduced, and the reusability and scalability of business feature extraction are improved, making it widely applicable.
[0239] Based on the same inventive concept, this application also provides a feature extraction device for business recommendation. Since the principle of the above device and equipment in solving the problem is similar to that of a feature extraction method for business recommendation, the implementation of the above device can refer to the implementation of the method, and the repeated parts will not be described again.
[0240] like Figure 6 The diagram illustrates the structure of a feature extraction device for business recommendation, as provided in an embodiment of this application. The feature extraction device for business recommendation includes:
[0241] The receiving unit 601 is used to receive the business feature extraction requirements for the target business of the target account, determine the feature extraction process corresponding to the business feature extraction requirements, and the feature extraction process includes multiple feature extraction operations.
[0242] The first determining unit 602 is used to determine the operator nodes set for each of the multiple feature extraction operations;
[0243] The second determining unit 603 is used to determine the execution logic order between the obtained operator nodes according to the feature extraction process;
[0244] The obtaining unit 604 is used to perform corresponding feature extraction operations on the business data associated with the target account according to the determined execution logic order between each operator node, and obtain at least one target business feature corresponding to the business feature extraction requirement.
[0245] Preferably, the obtaining unit 604 is also used for:
[0246] The target business characteristics are returned to the business recommendation device, enabling the business recommendation device to recommend information to the business application corresponding to the target account based on the target business characteristics.
[0247] Preferably, the receiving unit 601 is used for:
[0248] Obtain at least one target feature parameter to be extracted, as set according to the business feature extraction requirements;
[0249] Each feature extraction sub-process is obtained for setting each target feature parameter in at least one target feature parameter; wherein each feature extraction sub-process contains multiple feature extraction operations;
[0250] Based on the obtained feature extraction sub-processes, the feature extraction process is obtained.
[0251] Preferably, the second determining unit 603 is used for:
[0252] For each target feature parameter, the following steps are performed: determine the operator nodes corresponding to each feature extraction operation in the feature extraction sub-process corresponding to a target feature parameter, and determine the sub-execution logic order between the operator nodes corresponding to a target feature parameter based on the feature extraction sub-process corresponding to a target feature parameter.
[0253] The execution logic order between the obtained operator nodes is determined based on the sub-execution logic order corresponding to each target feature parameter.
[0254] Preferably, unit 604 is used for:
[0255] By using the read operator nodes in each operator node, the data read address information set for the target business can be obtained;
[0256] By reading operator nodes and based on data read address information, the data read interface is called to obtain the business data associated with the target account.
[0257] Preferably, unit 604 is used for:
[0258] According to the determined execution logic order of each operator node, for each operator node except for the read operator node, the following steps are executed respectively:
[0259] If it is determined that the parent node of an operator node has completed its execution, then the processing result of the parent node is input into an operator node;
[0260] By using an operator node, the corresponding feature extraction operation is performed on the processing result of the parent node to obtain the processing result of the operator node;
[0261] If an operator node contains location information, the processing result will be determined as the target business feature of the target feature parameters set for the location information.
[0262] Output the processing results based on the location information.
[0263] This application provides a feature extraction method, apparatus, device, and medium for business recommendation. It receives a business feature extraction request for a target account's target business, determines the feature extraction process corresponding to the request, and, based on the feature extraction operations within that process, determines multiple operator nodes and their execution logic order. Following this execution logic order, it performs corresponding feature extraction operations on the business data associated with the target account to obtain at least one target business feature corresponding to the aforementioned business feature extraction request. By pre-configuring multiple operator nodes and combining and reusing them upon receiving the request, the system can extract the corresponding target business feature from the business data. This allows for business feature extraction tailored to different business scenarios, reducing system resource consumption, and offering wide applicability and easy expansion.
[0264] Figure 7 A schematic diagram of a control device 7000 is shown. (See attached diagram.) Figure 7 As shown, the control device 7000 includes: a processor 7010, a memory 7020, a power supply 7030, a display unit 7040, and an input unit 7050.
[0265] The processor 7010 is the control center of the control device 7000. It connects various components through various interfaces and lines, and performs various functions of the control device 7000 by running or executing software programs and / or data stored in the memory 7020, thereby performing overall monitoring of the control device 7000.
[0266] In this embodiment of the application, when the processor 7010 calls the computer program stored in the memory 7020, it executes, for example... Figure 2 The embodiments shown provide a feature extraction method for business recommendation.
[0267] Optionally, the processor 7010 may include one or more processing units; preferably, the processor 7010 may integrate an application processor and a modem processor, wherein the application processor mainly extracts features such as the operating system, account interface, and applications, and the modem processor mainly processes wireless communication. It is understood that the modem processor may also not be integrated into the processor 7010. In some embodiments, the processor and memory may be implemented on a single chip; in some embodiments, they may also be implemented separately on independent chips.
[0268] The memory 7020 may primarily include a program storage area and a data storage area. The program storage area may store the operating system, various applications, etc.; the data storage area may store data created based on the use of the control device 7000, etc. In addition, the memory 7020 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device, etc.
[0269] The control device 7000 also includes a power supply 7030 (such as a battery) that supplies power to various components. The power supply can be logically connected to the processor 7010 through a power management system, thereby enabling the management of charging, discharging, and power consumption.
[0270] The display unit 7040 can be used to display information entered by the account or provided to the account, as well as various menus of the control device 7000. In this embodiment of the invention, it is mainly used to display the display interfaces of various applications in the control device 7000, and the text, pictures, and other objects displayed on the display interfaces. The display unit 7040 may include a display panel 7041. The display panel 7041 may be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like.
[0271] Input unit 7050 can be used to receive information such as numbers or characters entered by an account. Input unit 7050 may include touch panel 7051 and other input devices 7052. Touch panel 7051, also known as touch screen, can collect touch operations on or near the user (such as operations performed by the user using a finger, stylus, or any suitable object or accessory on or near touch panel 7051).
[0272] Specifically, the touch panel 7051 can detect touch operations by the user and the signals generated by these operations. It converts these signals into touch point coordinates, sends them to the processor 7010, and receives and executes commands from the processor 7010. Furthermore, the touch panel 7051 can be implemented using various types of sensors, including resistive, capacitive, infrared, and surface acoustic wave sensors. Other input devices 7052 can include, but are not limited to, one or more of the following: a physical keyboard, function keys (such as volume control buttons, power buttons, etc.), a trackball, a mouse, and a joystick.
[0273] Of course, the touch panel 7051 can cover the display panel 7041. When the touch panel 7051 detects a touch operation on or near it, it transmits the information to the processor 7010 to determine the type of touch event. Subsequently, the processor 7010 provides corresponding visual output on the display panel 7041 based on the type of touch event. Although in Figure 7 In this embodiment, the touch panel 7051 and the display panel 7041 are two separate components to realize the input and output functions of the control device 7000. However, in some embodiments, the touch panel 7051 and the display panel 7041 can be integrated to realize the input and output functions of the control device 7000.
[0274] The control device 7000 may also include one or more sensors, such as a pressure sensor, a gravity acceleration sensor, a proximity light sensor, etc. Of course, depending on the specific application, the control device 7000 may also include other components such as a camera. Since these components are not the focus of this application embodiment, therefore... Figure 7 It is not shown in the text and will not be described in detail here.
[0275] Those skilled in the art will understand that Figure 7 This is merely an example of a control device and does not constitute a limitation on the control device. It may include more or fewer components than shown, or combine certain components, or use different components.
[0276] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks. Alternatively, if the integrated units of the present invention are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiments of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.
[0277] This application also provides a computer program product or computer program that includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the feature extraction control method for business recommendation as described in any of the above method embodiments.
[0278] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a general-purpose hardware platform, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the related technology, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., including several instructions to cause a control device (which may be a personal computer, server, or network device, etc.) to execute the methods of various embodiments or some parts of embodiments.
[0279] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.
Claims
1. A feature extraction method applied to business recommendation, characterized in that, include: Receive requests to extract business characteristics of target services for target accounts; Obtain at least one target feature parameter to be extracted, as set for the business feature extraction requirements; Each feature extraction sub-process is obtained for each target feature parameter in the at least one target feature parameter; wherein each feature extraction sub-process contains multiple feature extraction operations; The various feature extraction sub-processes are merged to combine operations and operation data that are identical, thus obtaining a feature extraction process; the feature extraction process includes multiple feature extraction operations. Determine the operator nodes set for each of the multiple feature extraction operations; Based on the feature extraction process, determine the execution logic order between the obtained operator nodes; Based on the determined execution logic order among the operator nodes, perform corresponding feature extraction operations on the business data associated with the target account to obtain at least one target business feature corresponding to the business feature extraction requirement.
2. The method as described in claim 1, characterized in that, After obtaining the target business features corresponding to the business feature extraction requirements, the process further includes: The target service characteristics are returned to the service recommendation device, enabling the service recommendation device to recommend information to the service application corresponding to the target account based on the target service characteristics.
3. The method as described in claim 1, characterized in that, Based on the feature extraction process, the execution logic order between the obtained operator nodes is determined, including: For each target feature parameter, the following steps are performed: determine the operator nodes corresponding to each feature extraction operation included in the feature extraction sub-process corresponding to a target feature parameter, and determine the sub-execution logic order between the operator nodes corresponding to the target feature parameter based on the feature extraction sub-process corresponding to the target feature parameter. The execution logic order between the obtained operator nodes is determined based on the sub-execution logic order corresponding to each target feature parameter.
4. The method according to any one of claims 1-3, characterized in that, After determining the execution logic order among the obtained operator nodes, and before obtaining at least one target business feature corresponding to the business feature extraction requirement, the process includes: The data read address information set for the target service is obtained through the read operator nodes in each operator node; By using the read operator node and based on the data read address information, the data read interface is called to obtain the business data associated with the target account.
5. The method according to any one of claims 1-3, characterized in that, Based on the determined execution logic order among the operator nodes, corresponding feature extraction operations are performed on the business data associated with the target account to obtain at least one target business feature corresponding to the business feature extraction requirement, including: According to the determined execution logic order of each operator node, for each operator node except for the read operator node, the following steps are executed respectively: If it is determined that the parent node of an operator node has completed its execution, the processing result of the parent node is input to the operator node. Using the aforementioned operator node, based on the processing result of the parent node, perform corresponding feature extraction operations to obtain the processing result of the aforementioned operator node; If one of the operator nodes contains location information, the processing result is determined as the target business feature of the target feature parameter set for the location information; The processing result is output according to the location information.
6. A feature extraction device for business recommendation, characterized in that, include: The receiving unit is used to receive business feature extraction requests for the target business of the target account. Obtain at least one target feature parameter to be extracted according to the business feature extraction requirements; obtain feature extraction sub-processes for each target feature parameter among the at least one target feature parameter; wherein, each feature extraction sub-process contains multiple feature extraction operations; merge the feature extraction sub-processes to merge the operations and operation data of the same parts to obtain the feature extraction process; the feature extraction process contains multiple feature extraction operations. The first determining unit is used to determine the operator nodes set for each of the multiple feature extraction operations; The second determining unit is used to determine the execution logic order between the obtained operator nodes according to the feature extraction process; The obtaining unit is used to perform corresponding feature extraction operations on the business data associated with the target account according to the determined execution logic order between each operator node, and obtain at least one target business feature corresponding to the business feature extraction requirement.
7. The apparatus as claimed in claim 6, characterized in that, The obtaining unit is further configured to: The target service characteristics are returned to the service recommendation device, enabling the service recommendation device to recommend information to the service application corresponding to the target account based on the target service characteristics.
8. A control device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps of the method described in any one of claims 1-5.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the computer program implements the steps of the method according to any one of claims 1-5.
Citation Information
Patent Citations
Feature extraction method and device
CN110704742A