Feature Determination Method and Apparatus

By utilizing interaction time information in graph networks to determine neighboring nodes and time periods, the problem of reduced recommendation accuracy caused by the lack of consideration of time factors in existing technologies is solved, and more accurate user feature profiling and recommendations are achieved.

CN114547458BActive Publication Date: 2025-11-14ANT WEALTH (SHANGHAI) FINANCIAL INFORMATION SERVICES CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210169745.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-02-23
Publication Date
2025-11-14
Estimated Expiration
2042-02-23

AI Technical Summary

Technical Problem

Existing user feature sampling methods do not consider time-related factors, leading to reduced recommendation accuracy.

Method used

By constructing a graph network, neighboring nodes are determined using interaction time information, and the target time period is determined based on a preset collection strategy and interaction time information. The neighboring nodes are searched cyclically until the stopping condition is met, thereby determining the characteristics of the target object.

Benefits of technology

It improves the accuracy of user feature profiling, ensures that features remain effective over time, and enhances the accuracy of recommendations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114547458B_ABST
    Figure CN114547458B_ABST
Patent Text Reader

Abstract

This specification provides a feature determination method and apparatus. The feature determination method includes: determining a graph network containing a target object, wherein the target object is a node in the graph network, and each node in the graph network carries interaction time information between each node and other nodes; determining neighboring nodes of the target object based on the interaction time information of the target object and a preset time period; using the neighboring nodes as target nodes; determining a target time period based on a preset collection strategy and the interaction time information of the target nodes; determining the neighboring nodes of the target nodes based on the interaction time information of the target nodes and the target time period; continuing to use the neighboring nodes as target nodes until the target node meets the stop execution condition; and determining the target features of the target object based on all neighboring nodes. Because the time factor is considered when sampling the neighboring nodes of the target object, the accuracy of user feature characterization is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments in this specification relate to the field of data processing technology, and in particular to a feature determination method. Background Technology

[0002] Recommendation algorithms are a type of algorithm in computer science that uses mathematical algorithms to predict what users might like. They are primarily used in the internet. Essentially, recommendation algorithms utilize user behavior and mathematical algorithms to infer what users are likely to like. They have been applied to websites in various fields, including books, music, videos, news, movies, maps, and more. With the increasing popularity of e-commerce in recent years, recommendation systems have not only brought significant added benefits to these online businesses but have also improved user satisfaction and increased user engagement.

[0003] Current methods for sampling user features only consider topological distance and do not take into account time-related factors, which reduces the accuracy of recommendations. Summary of the Invention

[0004] In view of this, embodiments of this specification provide a feature determination method. One or more embodiments of this specification also relate to a feature determination apparatus, a computing device, a computer-readable storage medium, and a computer program, to address the technical deficiencies existing in the prior art.

[0005] According to a first aspect of the embodiments of this specification, a feature determination method is provided, comprising:

[0006] A graph network containing a target object is identified, wherein the target object is a node in the graph network, and each node in the graph network carries interaction time information between each node and other nodes.

[0007] The neighboring nodes of the target object are determined based on the interaction time information of the target object and a preset time period;

[0008] Using the neighboring nodes as target nodes, a target time period is determined based on a preset collection strategy and the interaction time information of the target nodes.

[0009] The neighboring nodes of the target node are determined based on the interaction time information of the target node and the target time period;

[0010] Continue executing the process with the neighboring nodes as target nodes until the target nodes meet the stop execution conditions.

[0011] The target features of the target object are determined based on all neighboring nodes.

[0012] According to a second aspect of the embodiments of this specification, a feature determining apparatus is provided, comprising:

[0013] The network determination module is configured to determine a graph network containing a target object, wherein the target object is a node in the graph network, and each node in the graph network carries interaction time information between each node and other nodes;

[0014] The node determination module is configured to determine the neighboring nodes of the target object based on the interaction time information of the target object and a preset time period.

[0015] The time period determination module is configured to take the neighboring nodes as target nodes and determine the target time period based on a preset collection strategy and the interaction time information of the target nodes.

[0016] The neighbor node determination module is configured to determine the neighbor nodes of the target node based on the interaction time information of the target node and the target time period.

[0017] The judgment module is configured to continue executing the process of taking the neighboring node as the target node until the target node meets the stop execution condition.

[0018] The feature determination module is configured to determine the target features of the target object based on all neighboring nodes.

[0019] According to a third aspect of the embodiments of this specification, a computing device is provided, comprising:

[0020] Memory and processor;

[0021] The memory is used to store computer-executable instructions, and the processor is used to execute the computer-executable instructions, which, when executed by the processor, implement the steps of the above-described feature determination method.

[0022] According to a fourth aspect of the embodiments of this specification, a computer-readable storage medium is provided that stores computer-executable instructions, which, when executed by a processor, implement the steps of the feature determination method described above.

[0023] According to a fifth aspect of the embodiments of this specification, a computer program is provided, wherein when the computer program is executed in a computer, it causes the computer to perform the steps of the above-described feature determination method.

[0024] This specification provides a feature determination method, which includes: determining a graph network containing a target object, wherein the target object is a node in the graph network, and each node in the graph network carries interaction time information between each node and other nodes; determining neighboring nodes of the target object based on the interaction time information of the target object and a preset time period; using the neighboring nodes as target nodes; determining a target time period based on a preset collection strategy and the interaction time information of the target nodes; determining the neighboring nodes of the target nodes based on the interaction time information of the target nodes and the target time period; continuing to use the neighboring nodes as target nodes until the target node meets the stop execution condition; and determining the target feature of the target object based on all neighboring nodes. When sampling the neighboring nodes of the target object, the time factor is considered to avoid features losing their effectiveness due to excessive time, thereby improving the accuracy of user feature characterization. Attached Figure Description

[0025] Figure 1 This is a flowchart of a feature determination method provided in one embodiment of this specification;

[0026] Figure 2 This is a flowchart illustrating the process of a feature determination method provided in one embodiment of this specification.

[0027] Figure 3 This is a schematic diagram of the structure of a feature determination device provided in one embodiment of this specification;

[0028] Figure 4 This is a structural block diagram of a computing device provided in one embodiment of this specification. Detailed Implementation

[0029] Many specific details are set forth in the following description to provide a full understanding of this specification. However, this specification can be implemented in many other ways than those described herein, and those skilled in the art can make similar extensions without departing from the spirit of this specification. Therefore, this specification is not limited to the specific implementations disclosed below.

[0030] The terminology used in one or more embodiments of this specification is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of this specification. The singular forms “a,” “described,” and “the” as used in one or more embodiments of this specification and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used in one or more embodiments of this specification refers to and includes any or all possible combinations of one or more associated listed items.

[0031] It should be understood that although the terms first, second, etc., may be used to describe various information in one or more embodiments of this specification, such information should not be limited to these terms. These terms are only used to distinguish information of the same type from one another. For example, first may also be referred to as second without departing from the scope of one or more embodiments of this specification, and similarly, second may also be referred to as first. Depending on the context, the word "if" as used herein may be interpreted as "when," "when," or "in response to a determination."

[0032] First, the terms and concepts used in one or more embodiments of this specification will be explained.

[0033] Spatiotemporal network: a graph network that contains various nodes (such as users, products, relationships, etc.) and includes temporal information about node interactions.

[0034] This specification provides a feature determination method, and also relates to a feature determination apparatus, a computing device, a computer-readable storage medium, and a computer program, which will be described in detail in the following embodiments.

[0035] See Figure 1 , Figure 1 A flowchart of a feature determination method according to an embodiment of this specification is shown, which specifically includes the following steps.

[0036] Step 102: Determine the graph network containing the target object, wherein the target object is a node in the graph network, and each node in the graph network carries interaction time information between each node and other nodes.

[0037] The target object can be a user, a product, etc., for example, the target object is user A; the graph network can be the spatiotemporal network in the glossary of terms in this specification; the interaction time information can be the time information of the interaction between two nodes. For example, if user A buys product B at time T1, then the interaction time information between user A and product B is T1.

[0038] In practical applications, to better provide real-time recommendations to users, it is necessary not only to use existing standard features but also to characterize users' constantly changing interests and purchasing motivations within a spatiotemporal network. Therefore, it is crucial to more effectively capture local structural information and characterize user changes. Based on this, a spatiotemporal network can be constructed that includes features of users and other users, users and products, products and products, and other users and products, allowing for the characterization of user features.

[0039] For example, starting with T1 and ending with T10, a graph network is constructed based on all users in the shopping application and the products that have interacted with all users, as well as the dates from T1 to T10. The graph network includes user A, who is a node in the graph network.

[0040] Step 104: Determine the neighboring nodes of the target object based on the interaction time information of the target object and the preset time period.

[0041] The preset time period can be a period of time before the current time. For example, if the current time is 10, the preset time period can be 1-9. Neighboring nodes can be nodes that have an interactive relationship with the target object. For example, if user A and user B have communicated, then user A's node and user B's node are neighboring nodes.

[0042] In practical applications, if we want to recommend products that users may be interested in, we can determine the products that the user may be interested in from the products that the user has recently viewed and the products that users have recently interacted with like. Therefore, we need to find the neighboring nodes of the user in the spatiotemporal network.

[0043] For example, if the target is user A, the preset time period is the past 10 days, and user A's interaction time information includes 11 days ago, 4 days ago, and 6 days ago, user A browsed product B1 11 days ago, user A communicated with user U 4 days ago, and user A purchased product B2 6 days ago, then the neighboring nodes are determined based on 11 days ago, 4 days ago, 6 days ago, and the preset time period.

[0044] Specifically, determining the neighboring nodes of the target object based on the interaction time information of the target object and a preset time period includes:

[0045] Based on the interaction time information of the target object, the interaction time information within the preset time period is determined as the target time information;

[0046] The neighborhood nodes of the target object are determined based on the target time information.

[0047] The target time information can be understood as the interaction time information in the above embodiments.

[0048] In practical applications, the target objects in a spatiotemporal network may contain a lot of interaction time information. As time changes, the products that users are interested in may change, so it is necessary to determine the interaction time information over a period of time.

[0049] Using the previous example, the target user is user A, and the preset time period is the past 10 days. User A's interaction time information includes 11 days ago, 4 days ago, and 6 days ago. User A browsed product B1 11 days ago, communicated with user U 4 days ago, and purchased product B2 6 days ago. Based on user A's interaction time information (11 days ago, 4 days ago, and 6 days ago) and the preset time period, we determine the neighboring nodes. Selecting the interaction time information within the past 10 days, the result is: User A's neighboring nodes are product B2 and user U.

[0050] The embodiments in this specification determine the neighboring nodes of the target object based on the interaction time information of the target object over a period of time, so that the characteristics of these neighboring nodes are more consistent with the characteristics of the target object.

[0051] Step 106: Using the neighboring nodes as target nodes, determine the target time period based on the preset collection strategy and the interaction time information of the target nodes.

[0052] The target node can be a neighboring node obtained in the previous iteration during the loop. For example, if S2 is found to be a neighboring node of S1 in the first iteration, then S2 will be the target node in the second iteration of finding the neighboring node of S2. The preset collection strategy can be understood as a strategy to determine an interaction time information from multiple interaction time information. For example, if there are multiple interaction time information between nodes S1 and S2, the preset collection strategy can be to select the interaction time information closest to the current time from the multiple interaction time information.

[0053] In practical applications, after determining the neighboring nodes of the target object, it is also necessary to use the interaction time information between the neighboring nodes and the target object as a threshold to search for other neighborhood nodes in descending order. In other words, it is necessary to ensure that the interaction time information of the found neighboring nodes is within a preset time period and that the nodes are related to the influence of the target object.

[0054] For example, the target user is user A, and the preset time period is the past 10 days. User A's interaction time information includes 11 days ago, 4 days ago, and 6 days ago. User A browsed product B1 11 days ago, communicated with user U 4 days ago, and purchased product B2 6 days ago. Based on user A's interaction time information (11 days ago, 4 days ago, and 6 days ago) and the preset time period, neighboring nodes are determined. Selecting interaction time information within the past 10 days, the result is: User A's neighboring nodes are product B2 and user U. Product B2 is selected as the target node. Product B2's interaction time information includes 5 days ago and 2 days ago. Based on the preset collection strategy and the target node's interaction time information (5 days ago and 2 days ago), the target time period is determined.

[0055] Furthermore, the preset strategy can be to select the interaction time information closest to the current time, and the specific implementation method is as follows.

[0056] The step of determining the target time period based on the preset acquisition strategy and the interaction time information of the target node includes:

[0057] If there is more than one interaction time information between the target object and the neighboring node, then based on the current time, determine one interaction time information from the interaction time information between the target object and the neighboring node as the target time threshold.

[0058] The target time period is determined based on the target time threshold.

[0059] The target time threshold can be a time threshold in units such as days, hours, minutes, etc., for example, 10 days.

[0060] In practical applications, selecting the most recent interaction time information can better match the user's recent interests.

[0061] For example, the target is user A, and the preset time period is the past 10 days. User A's interaction time information includes 5 days ago and 6 days ago. User A browsed product B3 5 days ago and 6 days ago. According to the preset collection strategy and the interaction time information of the target node: 5 days ago and 6 days ago, the interaction time information closest to the current time is selected from 5 days ago and 6 days ago. That is, 5 days ago is selected. Then, 5 is used as the target time threshold. The target time period is determined according to the target time threshold. A time period less than 5 days can be selected as the target time period, that is, the target time period is determined to be within 5 days.

[0062] The embodiments in this specification determine the target time period based on the interaction time information in the most recent time period, so that the characteristics of these neighboring nodes are more in line with the user's recent interests, thereby improving the accuracy of product recommendations.

[0063] Furthermore, the preset strategy can also be randomly selected interaction time information, and the specific implementation method is as follows.

[0064] The step of determining the target time period based on the preset acquisition strategy and the interaction time information of the target node includes:

[0065] If there is more than one interaction time information between the target object and the neighboring node, one interaction time information is determined as the target time threshold from the interaction time information between the target object and the neighboring node according to a preset selection rule.

[0066] The target time period is determined based on the target time threshold.

[0067] For example, the target is user A, and the preset time period is the past 10 days. User A's interaction time information includes 5 days ago and 6 days ago. User A browsed product B3 5 days ago and 6 days ago. According to the preset collection strategy and the interaction time information of the target node: 5 days ago and 6 days ago, the interaction time information is randomly selected from 5 days ago and 6 days ago. If 6 days ago is selected, then 6 is used as the target time threshold. The target time period is determined according to the target time threshold. A time period less than 6 days can be selected as the target time period, that is, the target time period is determined to be within 6 days.

[0068] In one feasible approach, if user A browses product B3 multiple times within 10 days, the preset collection strategy can be to select the interaction time information at the middle time point, the interaction time information furthest from the current time, or the interaction time information in a custom order. This specification does not limit the implementation of the embodiments.

[0069] For example, if the target user is user A, and the preset time period is the past 10 days, user A's interaction time information includes 5 days ago and 6 days ago. User A viewed product B3 5 days ago, 6 days ago, and 7 days ago. The preset collection strategy is to select the interaction time information at the middle point in time. Therefore, if we select the interaction time information from 5 days ago, 6 days ago, and 7 days ago, and choose 6 days ago, then 6 will be used as the target time threshold. Based on the target time threshold, the target time period can be determined. We can choose a time period less than 6 days as the target time period, that is, the target time period is determined to be within 6 days.

[0070] The embodiments in this specification allow for the selection of various preset acquisition strategies to obtain interaction time information between the target object and its neighboring nodes, making them suitable for a variety of recommended applications and improving their versatility.

[0071] Step 108: Determine the neighboring nodes of the target node based on the interaction time information of the target node and the target time period.

[0072] In practical applications, after identifying the products that a user may be interested in, we can continue to look for other users who have interacted with the products and characterize the user's features based on the interests of other users. Therefore, we need to find the neighboring nodes of the user's neighboring nodes in the spatiotemporal network.

[0073] For example, the target user is user A, and the preset time period is the past 10 days. User A's interaction time information includes 11 days ago, 4 days ago, and 6 days ago. User A browsed product B1 11 days ago, communicated with user U 4 days ago, and purchased product B2 6 days ago. Based on 11 days ago, 4 days ago, and 6 days ago, as well as the preset time period, the target user's neighboring nodes are determined to be product B2 and user U. Product B2 is taken as the target node. Product B2's interaction time information includes 5 days ago and 2 days ago. For product B2, the target time period is within 6 days. Therefore, based on the interaction time information of 5 days ago and 2 days ago, and the target time period of 6 days, the neighboring nodes of product B2 are determined.

[0074] The embodiments in this specification determine the neighboring nodes of the target node based on the interaction time information of the target node within the target time period, so that the characteristics of these neighboring nodes are more consistent with the characteristics of the target object.

[0075] Specifically, determining the neighboring nodes of the target node based on the interaction time information of the target node and the target time period includes:

[0076] Based on the interaction time information of the target node, the interaction time information within the target time period is determined as the target time information;

[0077] The neighboring nodes of the target node are determined based on the target time information.

[0078] In practical applications, after determining the neighboring nodes of the target node, it is necessary to determine the neighboring nodes of the target node according to the target time period. That is, to search for other neighborhood nodes in descending order. It is necessary to ensure that the interaction time information of the found neighboring nodes are all within the target time period, so as to ensure that the neighboring nodes of the target node are nodes that are related to the influence of the target object.

[0079] Using the previous example, the interaction time information for product B2 includes: 5 days ago and 2 days ago. The target time period is within 6 days. Product B2 interacted with user S1 5 days ago and with user S2 2 days ago. Based on the interaction time information of 5 days ago and 2 days ago, and the target time period of 6 days, the neighboring nodes of product B2 are determined. Since 5 days ago and 2 days ago are both within 6 days, the neighboring nodes of product B2 include user S1 and user S2.

[0080] The embodiments in this specification determine the neighboring nodes of the target node based on the interaction time information of the target node within the target time period, so that the characteristics of these neighboring nodes are more consistent with the characteristics of the target object.

[0081] Step 110: Continue executing the process of using the neighboring nodes as target nodes until the target nodes meet the stop execution conditions.

[0082] The stop execution condition can be a step-size condition or a condition that no matching node is found. For example, if the step size is 4, the stop condition is that 4 target nodes are found.

[0083] In practical applications, multiple searches can be performed based on the neighboring nodes of the target object to enrich the characteristics of the target object according to the characteristics of the found neighboring nodes.

[0084] Specifically, the continued execution, which takes the neighboring nodes as target nodes and continues until the target nodes meet the stop execution conditions, includes:

[0085] The neighboring nodes are used as the target nodes;

[0086] Determine whether the number of target nodes has reached a preset threshold.

[0087] If not, the target time period is determined based on the preset collection strategy and the interaction time information of the target node;

[0088] Based on the interaction time information of the target node and the target time period, the neighboring nodes of the target node are determined, and the process continues to use the neighboring nodes as the target node.

[0089] The preset quantity threshold can be understood as the step size. For example, if the step size is 4, then the preset quantity threshold is 4.

[0090] In practical applications, determining neighboring nodes based on step size can also use the number of target nodes found as a basis to determine whether to end the process of using neighboring nodes as target nodes and finding neighboring nodes of the target node.

[0091] For example, with a step size of 3, the target user is user A, and the preset time period is the past 10 days, user A communicated with user U 4 days ago, so user U is selected as the target node. We search for neighboring nodes of user U within the past 4 days. U interacted with product B 3 days ago, so product B is selected as the target node. We search for neighboring nodes of product B. Product B interacted with user S 2 days ago, so user S is selected as the target node. At this point, the number of target nodes is 3, which has reached the preset threshold, thus satisfying the stop execution condition.

[0092] The embodiments in this specification can determine the number of neighboring nodes to be searched by setting a step size, which can control the system's resource usage as needed and avoid resource waste.

[0093] Furthermore, the preset strategy in the embodiments of this specification can also be to select the interaction time information closest to the current time, and the specific implementation method is as follows.

[0094] The step of determining the neighboring nodes of the target node based on the interaction time information of the target node and the target time period includes:

[0095] If there is more than one interaction time information between the target node and the neighboring node, then based on the current time, determine one interaction time information from the interaction time information between the target node and the neighboring node as the target time threshold.

[0096] The target time period is determined based on the target time threshold.

[0097] In practical applications, selecting the most recent interaction time information can better match the user's recent interests.

[0098] Using the previous example, product B is taken as the target node. The interaction time information of product B includes 7 days ago and 2 days ago. Based on the preset collection strategy and the interaction time information of the target node: 5 days ago and 2 days ago, the target time period is determined. The interaction time information 5 days ago and 2 days ago are both the interaction time information between product B and user U. Therefore, the interaction time information closer to the current time: 2 days ago is selected. 2 is taken as the target time threshold. The target time period is determined based on the target time threshold. A time period less than 2 days can be selected as the target time period, that is, the target time period is determined to be within two days.

[0099] Furthermore, the preset strategy in the embodiments of this specification can also be randomly selected interaction time information, and the specific implementation method is as follows.

[0100] The step of determining the neighboring nodes of the target node based on the interaction time information of the target node and the target time period includes:

[0101] If there is more than one interaction time information between the target node and the neighboring node, one interaction time information is determined as the target time threshold from the interaction time information between the target node and the neighboring node according to a preset selection rule.

[0102] The target time period is determined based on the target time threshold.

[0103] Using the previous example, product B is taken as the target node. The interaction time information of product B includes 7 days ago and 2 days ago. According to the preset collection strategy and the interaction time information of the target node: 5 days ago and 2 days ago, the target time period is determined. The interaction time information 5 days ago and 2 days ago are both the interaction time information between product B and user U. So, the interaction time information is randomly selected from 5 days ago and 2 days ago. If 2 days ago is selected, then 2 is taken as the target time threshold. The target time period is determined according to the target time threshold. A time period of less than 2 days can be selected as the target time period, that is, the target time period is determined to be within two days.

[0104] The embodiments in this specification are based on the neighborhood nodes of the target object, and more neighborhood nodes related to the target object are found in a loop, so that more features can be obtained, thereby enriching the features of the target object.

[0105] Step 112: Determine the target features of the target object based on all neighboring nodes.

[0106] The target features can be user product attribute features, page view features, purchase volume features, etc. For example, the target features could be page view features and product attribute features.

[0107] In practical applications, after finding the neighborhood nodes of the target object using the method described in this manual, the characteristics of the target object can be characterized based on the correlation between these neighborhood nodes and the target object.

[0108] For example, if the target is user A, and relevant neighboring nodes include product B1, product B2, and user U, then the product attribute features of product B1 and product B2 are determined. Product B1's product attribute feature is "cup," and product B2's product attribute feature is "gloves." These two product attribute features are then added to the target user's features. When user A browses the shopping page, products of the categories "cup" and "gloves" are recommended to the user. Similarly, the product attribute features that user U is interested in are obtained. If user U's product attribute features include "watch," then products of the category "watch" are recommended to the user when user A browses the shopping page.

[0109] It should be noted that when obtaining the product attribute characteristics that user U is interested in, it can also be determined based on the number of times user U browses, or based on the number of times user U purchases, or both the number of times user U browses and the number of times user U purchases. This specification does not limit the specific examples.

[0110] Furthermore, in the above embodiments, there is also a situation where no neighboring nodes are found. That is, if no neighboring nodes are found before the step size is reached, the loop ends. The specific implementation method is as follows.

[0111] After determining the target time period based on the preset acquisition strategy and the interaction time information of the target node, the process further includes:

[0112] If no neighboring nodes of the target node are found within the target time period based on the interaction time information of the target node, the execution steps end.

[0113] For example, if the target time period is within 6 days and the interaction time information of the target node is 7 days ago, then the target node has no neighboring nodes that meet the conditions, and therefore will not continue to search for neighboring nodes.

[0114] Furthermore, after determining the target time period based on the preset acquisition strategy and the interaction time information of the target node, the process further includes:

[0115] Based on the interaction time information of the target node and the fact that no neighboring nodes of the target node are found during the target time period, the difference between the number of target nodes and a preset number threshold is determined.

[0116] A preset node is added as a neighbor node based on the difference.

[0117] In practical applications, if no matching neighboring nodes are found and the step size has not been fully calculated, default nodes are added to supplement the features of the target object.

[0118] Continuing with the previous example, if the target time period is within 6 days and the interaction time information of the target node is 7 days ago, then the target node has no matching neighboring nodes, and therefore the search for neighboring nodes is not continued. Next, the number of target nodes is determined; if the number of target nodes is 3 and the preset quantity threshold is 4, then the difference between the number of target nodes and the preset quantity threshold is 1. Therefore, node X is added as a neighboring node of this target node. Here, node X can be any node in the graph network, or it can be a node added from outside the graph network; this embodiment does not limit the choice.

[0119] The embodiments in this specification describe the characteristics of the target object by using the correlation between neighboring nodes and the target object.

[0120] See Figure 2 , Figure 2 A flowchart illustrating the process of a feature determination method according to an embodiment of this specification is shown, specifically including the following steps.

[0121] Step 202: Determine the graph network containing user A.

[0122] In this context, "graph network" can refer to the spatiotemporal network defined in the glossary of terms in this specification.

[0123] In practical applications, to better provide real-time recommendations to users, it is necessary not only to use existing standard features but also to characterize users' constantly changing interests and purchasing motivations within a spatiotemporal network. Therefore, it is crucial to more effectively capture local structural information and characterize user changes. Based on this, a spatiotemporal network can be constructed that includes features of users and other users, users and products, products and products, and other users and products, allowing for the characterization of user features.

[0124] For example, starting with T1 and ending with T10, a graph network is constructed based on all users in the shopping application and the products that have interacted with all users, as well as the dates from T1 to T10. The graph network includes user A, who is a node in the graph network.

[0125] Step 204: Determine the neighboring nodes of user A based on user A's interaction time information and the preset time period.

[0126] The preset time period can be a period of time before the current time. For example, if the current time is 10, the preset time period can be 1-9. Neighboring nodes can be nodes that have an interactive relationship with the target object. For example, if user A and user B have communicated, then user A's node and user B's node are neighboring nodes.

[0127] In practical applications, if we want to recommend products that users may be interested in, we can determine the products that the user may be interested in from the products that the user has recently viewed and the products that users have recently interacted with like. Therefore, we need to find the neighboring nodes of the user in the spatiotemporal network.

[0128] For example, if the target user is user A, and the preset time period is the past 10 days, user A's interaction time information includes 11 days ago, 4 days ago, and 6 days ago. User A browsed product B1 11 days ago, communicated with user U 4 days ago, and purchased product B2 6 days ago. Based on user A's interaction time information (11 days ago, 4 days ago, and 6 days ago) and the preset time period, the neighboring nodes are determined. Selecting the interaction time information within the past 10 days, the result is: user A's neighboring nodes are product B2 and user U.

[0129] Step 206: Using neighboring nodes as target nodes, determine the target time period based on the preset collection strategy and the interaction time information of the target nodes.

[0130] The target node can be a neighboring node obtained in the previous iteration during the loop. For example, if S2 is found to be a neighboring node of S1 in the first iteration, then S2 will be the target node in the second iteration of finding the neighboring node of S2. The preset collection strategy can be understood as a strategy to determine an interaction time information from multiple interaction time information. For example, if there are multiple interaction time information between nodes S1 and S2, the preset collection strategy can be to select the interaction time information closest to the current time from the multiple interaction time information.

[0131] In practical applications, after determining the neighboring nodes of the target object, it is also necessary to use the interaction time information between the neighboring nodes and the target object as a threshold to search for other neighborhood nodes in descending order. In other words, it is necessary to ensure that the interaction time information of the found neighboring nodes is within a preset time period and that the nodes are related to the influence of the target object.

[0132] For example, the target user is user A, and the preset time period is the past 10 days. User A's interaction time information includes 11 days ago, 4 days ago, and 6 days ago. User A browsed product B1 11 days ago, communicated with user U 4 days ago, and purchased product B2 6 days ago. Based on user A's interaction time information (11 days ago, 4 days ago, and 6 days ago) and the preset time period, neighboring nodes are determined. Selecting interaction time information within the past 10 days, the result is: User A's neighboring nodes are product B2 and user U. Product B2 is selected as the target node. Product B2's interaction time information includes 5 days ago and 2 days ago. Based on the preset collection strategy and the target node's interaction time information (5 days ago and 2 days ago), a time period less than 5 days can be selected as the target time period, that is, the target time period is determined to be within 5 days.

[0133] Step 208: Determine the neighboring nodes of the target node based on the interaction time information of the target node and the target time period.

[0134] In practical applications, after identifying the products that a user may be interested in, we can continue to look for other users who have interacted with the products and characterize the user's features based on the interests of other users. Therefore, we need to find the neighboring nodes of the user's neighboring nodes in the spatiotemporal network.

[0135] For example, the target user is user A, and the preset time period is the past 10 days. User A's interaction time information includes 11 days ago, 4 days ago, and 6 days ago. User A browsed product B1 11 days ago, communicated with user U 4 days ago, and purchased product B2 6 days ago. Based on 11 days ago, 4 days ago, and 6 days ago, and the preset time period, the target user's neighboring nodes are determined to be product B2 and user U. Product B2 is taken as the target node. Product B2 interacted with user S1 5 days ago and with user S2 2 days ago. Based on the interaction time information of 5 days ago and 2 days ago, and the target time period of 6 days, the neighboring nodes of product B2 are determined. Since 5 days ago and 2 days ago are both within 6 days, the neighboring nodes of product B2 include user S1 and user S2.

[0136] Step 210: Continue to execute the process of taking the neighboring node as the target node, and determine whether the target node meets the stop execution condition. If so, execute step 212.

[0137] The stop execution condition can be a step-size condition or a condition that no matching node is found. For example, if the step size is 4, the stop condition is that 4 target nodes are found.

[0138] In practical applications, multiple searches can be performed based on the neighboring nodes of the target object to enrich the characteristics of the target object according to the characteristics of the found neighboring nodes.

[0139] Continuing with the previous example, with a step size of 2, we take product B2 as the target node. Now, with a step size of 1, product B2 interacted with user S1 5 days ago and with user S2 2 days ago. Based on the interaction time information of 5 days ago and 2 days ago, and the target time period of 6 days, we determine the neighboring nodes of product B2. Since 5 days ago and 2 days ago are both within 6 days, the neighboring nodes of product B2 include user S1 and user S2. We continue to take user S1 as the target node. At this time, the number of target nodes is 2, which means that the stop execution condition is met.

[0140] Step 212: Determine the target features of the target object based on all neighboring nodes.

[0141] The embodiments in this specification take into account the time factor when sampling the neighborhood nodes of the target object, so as to avoid the features from losing their effectiveness due to too long a time, thereby improving the accuracy of user feature characterization.

[0142] Corresponding to the above method embodiments, this specification also provides embodiments of feature determination apparatus. Figure 3 A schematic diagram of a feature determination device according to one embodiment of this specification is shown. Figure 3 As shown, the device includes:

[0143] The network determination module 302 is configured to determine a graph network containing a target object, wherein the target object is a node in the graph network, and each node in the graph network carries interaction time information between each node and other nodes.

[0144] The node determination module 304 is configured to determine the neighboring nodes of the target object based on the interaction time information of the target object and a preset time period;

[0145] The time period determination module 306 is configured to take the neighboring nodes as target nodes and determine the target time period based on the preset collection strategy and the interaction time information of the target nodes.

[0146] The neighboring node determination module 308 is configured to determine the neighboring nodes of the target node based on the interaction time information of the target node and the target time period.

[0147] The judgment module 310 is configured to continue executing the process of taking the neighboring node as the target node until the target node meets the stop execution condition.

[0148] The feature determination module 312 is configured to determine the target features of the target object based on all neighboring nodes.

[0149] Optionally, the node determination module 304 is also configured as follows:

[0150] Based on the interaction time information of the target object, the interaction time information within the preset time period is determined as the target time information;

[0151] The neighborhood nodes of the target object are determined based on the target time information.

[0152] Optionally, the time period determination module 306 is also configured as follows:

[0153] If there is more than one interaction time information between the target object and the neighboring node, then based on the current time, determine one interaction time information from the interaction time information between the target object and the neighboring node as the target time threshold.

[0154] The target time period is determined based on the target time threshold.

[0155] Optionally, the time period determination module 306 is also configured as follows:

[0156] If there is more than one interaction time information between the target object and the neighboring node, one interaction time information is determined as the target time threshold from the interaction time information between the target object and the neighboring node according to a preset selection rule.

[0157] The target time period is determined based on the target time threshold.

[0158] Optionally, the neighborhood node determination module 308 is also configured as follows:

[0159] Based on the interaction time information of the target node, the interaction time information within the target time period is determined as the target time information;

[0160] The neighboring nodes of the target node are determined based on the target time information.

[0161] Optionally, the judgment module 310 is also configured as follows:

[0162] The neighboring nodes are used as the target nodes;

[0163] Determine whether the number of target nodes has reached a preset threshold.

[0164] If not, the target time period is determined based on the preset collection strategy and the interaction time information of the target node;

[0165] Based on the interaction time information of the target node and the target time period, the neighboring nodes of the target node are determined, and the process continues to use the neighboring nodes as the target node.

[0166] Optionally, the time period determination module 306 is also configured as follows:

[0167] If there is more than one interaction time information between the target node and the neighboring node, then based on the current time, determine one interaction time information from the interaction time information between the target node and the neighboring node as the target time threshold.

[0168] The target time period is determined based on the target time threshold.

[0169] Optionally, the time period determination module 306 is also configured as follows:

[0170] If there is more than one interaction time information between the target node and the neighboring node, one interaction time information is determined as the target time threshold from the interaction time information between the target node and the neighboring node according to a preset selection rule.

[0171] The target time period is determined based on the target time threshold.

[0172] Optionally, the time period determination module 306 is also configured as follows:

[0173] Select a time period shorter than the target time threshold as the target time period.

[0174] Optionally, the judgment module 310 is also configured as follows:

[0175] If no neighboring nodes of the target node are found within the target time period based on the interaction time information of the target node, the execution steps end.

[0176] Optionally, the judgment module 310 is also configured as follows:

[0177] Based on the interaction time information of the target node and the fact that no neighboring nodes of the target node are found during the target time period, the difference between the number of target nodes and a preset number threshold is determined.

[0178] A preset node is added as a neighbor node based on the difference.

[0179] This specification provides a feature determination device that determines a graph network containing a target object, where the target object is a node in the graph network, and each node in the graph network carries interaction time information between each node and other nodes. Based on the interaction time information of the target object and a preset time period, the device determines the neighboring nodes of the target object and uses these neighboring nodes as target nodes. Based on a preset collection strategy and the interaction time information of the target nodes, a target time period is determined. Based on the interaction time information of the target nodes and the target time period, the device determines the neighboring nodes of the target nodes, continuing to use neighboring nodes as target nodes until the target node meets the stop execution condition. Finally, the device determines the target feature of the target object based on all neighboring nodes. By considering the time factor when sampling the neighboring nodes of the target object, the device avoids features from losing their effectiveness due to excessive time, thereby improving the accuracy of user feature characterization.

[0180] The above is a schematic scheme of a feature determination device according to this embodiment. It should be noted that the technical solution of this feature determination device and the technical solution of the feature determination method described above belong to the same concept. For details not described in detail in the technical solution of the feature determination device, please refer to the description of the technical solution of the feature determination method described above.

[0181] Figure 4 A structural block diagram of a computing device 400 according to one embodiment of this specification is shown. The components of the computing device 400 include, but are not limited to, a memory 410 and a processor 420. The processor 420 is connected to the memory 410 via a bus 430, and a database 450 is used to store data.

[0182] The computing device 400 also includes an access device 440, which enables the computing device 400 to communicate via one or more networks 460. Examples of these networks include a Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), or a combination of communication networks such as the Internet. The access device 440 may include one or more of any type of wired or wireless network interface (e.g., a Network Interface Card (NIC)), such as an IEEE 802.11 Wireless Local Area Network (WLAN) interface, a Wi-MAX interface, an Ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a Bluetooth interface, a Near Field Communication (NFC) interface, and so on.

[0183] In one embodiment of this specification, the aforementioned components of the computing device 400 and Figure 4 Other components, not shown, can also be connected to each other, for example, via a bus. It should be understood that... Figure 4 The block diagram of the computing device shown is for illustrative purposes only and is not intended to limit the scope of this specification. Those skilled in the art can add or replace other components as needed.

[0184] The computing device 400 can be any type of stationary or mobile computing device, including mobile computers or mobile computing devices (e.g., tablet computers, personal digital assistants, laptop computers, notebook computers, netbooks, etc.), mobile phones (e.g., smartphones), wearable computing devices (e.g., smartwatches, smart glasses, etc.) or other types of mobile devices, or stationary computing devices such as desktop computers or PCs. The computing device 400 can also be a mobile or stationary server.

[0185] The processor 420 is configured to execute the following computer-executable instructions, which, when executed by the processor, implement the steps of the feature determination method described above.

[0186] The above is an illustrative scheme of a computing device according to this embodiment. It should be noted that the technical solution of this computing device and the technical solution of the feature determination method described above belong to the same concept. For details not described in detail in the technical solution of the computing device, please refer to the description of the technical solution of the feature determination method described above.

[0187] An embodiment of this specification also provides a computer-readable storage medium storing computer-executable instructions that, when executed by a processor, implement the steps of the feature determination method described above.

[0188] The above is an illustrative scheme of a computer-readable storage medium according to this embodiment. It should be noted that the technical solution of this storage medium and the technical solution of the feature determination method described above belong to the same concept. For details not described in detail in the technical solution of the storage medium, please refer to the description of the technical solution of the feature determination method described above.

[0189] An embodiment of this specification also provides a computer program, wherein when the computer program is executed in a computer, it causes the computer to perform the steps of the above-described feature determination method.

[0190] The above is an illustrative example of a computer program according to this embodiment. It should be noted that the technical solution of this computer program and the technical solution of the feature determination method described above belong to the same concept. Details not described in detail in the computer program's technical solution can be found in the description of the technical solution of the feature determination method described above.

[0191] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.

[0192] The computer instructions include computer program code, which may be in the form of source code, object code, executable file, or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable medium may be appropriately added to or subtracted according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, computer-readable media may not include electrical carrier signals and telecommunication signals.

[0193] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments in this specification are not limited to the described order of actions, because according to the embodiments in this specification, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in this specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to the embodiments in this specification.

[0194] In the above embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0195] The preferred embodiments disclosed above are merely illustrative of this specification. The optional embodiments do not exhaustively describe all details, nor do they limit the invention to the specific implementations described. Clearly, many modifications and variations can be made based on the embodiments described herein. These embodiments are selected and specifically described in this specification to better explain the principles and practical applications of the embodiments, thereby enabling those skilled in the art to better understand and utilize this specification. This specification is limited only by the claims and their full scope and equivalents.

Claims

1. A feature determination method, comprising: A graph network containing a target object is identified, wherein the target object is a node in the graph network, and each node in the graph network carries interaction time information between each node and other nodes. The neighboring nodes of the target object are determined based on the interaction time information of the target object and a preset time period, wherein the preset time period is the time period before the current time, the interaction time information is the time information of the interaction between two nodes, and the neighboring nodes are nodes that have an interaction relationship with the target object. The neighboring nodes are taken as target nodes. Based on the preset collection strategy and the interaction time information of the target nodes, the target time period is determined. The preset collection strategy is a strategy to determine one interaction time information from multiple interaction time information. The neighboring nodes of the target node are determined based on the interaction time information of the target node and the target time period; Continue executing the process with the neighboring nodes as target nodes until the target nodes meet the stop execution conditions. The target features of the target object are determined based on all neighboring nodes.

2. The method according to claim 1, wherein determining the neighboring nodes of the target object based on the interaction time information of the target object and a preset time period includes: Based on the interaction time information of the target object, the interaction time information within the preset time period is determined as the target time information; The neighborhood nodes of the target object are determined based on the target time information.

3. The method according to claim 1, wherein determining the target time period based on a preset acquisition strategy and the interaction time information of the target node includes: If there is more than one interaction time information between the target object and the neighboring node, then based on the current time, determine one interaction time information from the interaction time information between the target object and the neighboring node as the target time threshold. The target time period is determined based on the target time threshold.

4. The method according to claim 1, wherein determining the target time period based on a preset acquisition strategy and the interaction time information of the target node includes: If there is more than one interaction time information between the target object and the neighboring node, one interaction time information is determined as the target time threshold from the interaction time information between the target object and the neighboring node according to a preset selection rule. The target time period is determined based on the target time threshold.

5. The method according to claim 1, wherein determining the neighboring nodes of the target node based on the interaction time information of the target node and the target time period comprises: Based on the interaction time information of the target node, the interaction time information within the target time period is determined as the target time information; The neighboring nodes of the target node are determined based on the target time information.

6. The method according to claim 1, wherein continuing execution with the neighboring node as the target node until the target node meets the stop execution condition includes: The neighboring nodes are used as the target nodes; Determine whether the number of target nodes has reached a preset threshold. If not, the target time period is determined based on the preset collection strategy and the interaction time information of the target node; Based on the interaction time information of the target node and the target time period, the neighboring nodes of the target node are determined, and the process continues to use the neighboring nodes as the target node.

7. The method according to claim 6, wherein determining the neighboring nodes of the target node based on the interaction time information of the target node and the target time period comprises: If there is more than one interaction time information between the target node and the neighboring node, then based on the current time, determine one interaction time information from the interaction time information between the target node and the neighboring node as the target time threshold. The target time period is determined based on the target time threshold.

8. The method according to claim 6, wherein determining the neighboring nodes of the target node based on the interaction time information of the target node and the target time period comprises: If there is more than one interaction time information between the target node and the neighboring node, one interaction time information is determined as the target time threshold from the interaction time information between the target node and the neighboring node according to a preset selection rule. The target time period is determined based on the target time threshold.

9. The method according to any one of claims 3, 4, 7, and 8, wherein determining the target time period based on the target time threshold comprises: Select a time period shorter than the target time threshold as the target time period.

10. The method according to claim 6, after determining the target time period based on the preset acquisition strategy and the interaction time information of the target node, further comprising: If no neighboring nodes of the target node are found within the target time period based on the interaction time information of the target node, the execution steps end.

11. The method according to claim 6, after determining the target time period based on the preset acquisition strategy and the interaction time information of the target node, further comprising: Based on the interaction time information of the target node and the fact that no neighboring nodes of the target node are found during the target time period, the difference between the number of target nodes and a preset number threshold is determined. A preset node is added as a neighbor node based on the difference.

12. A feature determining device, comprising: The network determination module is configured to determine a graph network containing a target object, wherein the target object is a node in the graph network, and each node in the graph network carries interaction time information between each node and other nodes; The node determination module is configured to determine the neighboring nodes of the target object based on the interaction time information of the target object and a preset time period, wherein the preset time period is the time period before the current time, the interaction time information is the time information of the interaction between two nodes, and the neighboring nodes are nodes that have an interaction relationship with the target object. The time period determination module is configured to take the neighboring nodes as target nodes, determine the target time period according to a preset collection strategy and the interaction time information of the target nodes, wherein the preset collection strategy is a strategy to determine one interaction time information from multiple interaction time information. The neighbor node determination module is configured to determine the neighbor nodes of the target node based on the interaction time information of the target node and the target time period. The judgment module is configured to continue executing the process of taking the neighboring node as the target node until the target node meets the stop execution condition. The feature determination module is configured to determine the target features of the target object based on all neighboring nodes.

13. A computing device, comprising: Memory and processor; The memory is used to store computer-executable instructions, and the processor is used to execute the computer-executable instructions, which, when executed by the processor, implement the steps of the feature determination method according to any one of claims 1 to 11.

14. A computer-readable storage medium storing computer-executable instructions that, when executed by a processor, implement the steps of the feature determination method according to any one of claims 1 to 11.

Citation Information

Patent Citations

  • Graph neural network-based recommendation method and system, electronic equipment and storage medium

    CN111723292A

  • Object feature information acquisition method and device, object classification method and device and information pushing method and device

    CN111814921A