Data processing method and device, computer device, storage medium and computer program product
Patent Information
- Application Number
- CN202310320251.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-23
- Publication Date
- 2026-09-22
- Estimated Expiration
- 2043-03-23
AI Technical Summary
然而进行时间的对比计算往往消耗巨大的计算资源,存在资源浪费的问题
[0044]上述数据处理方法、装置、计算机设备、存储介质和计算机程序产品,通过获取目标时间段对应的待处理对象集和待处理对象集关联的目标对象集;从待处理对象集中确定各个子时间段分别对应的待处理对象子集,并从待处理对象集关联的目标对象集中确定各个子时间段分别对应的目标对象子集,各个子时间段是将目标时间段进行划分得到的;基于各个子时间段分别对应的待处理对象子集和待处理对象子集关联的目标对象子集进行二部图生成,得到各个子时间段分别对应的子二部图;将各个子时间段分别对应的子二部图中匹配对象进行关联,得到目标时间段对应的目标关联图,目标关联图用于通过图神经网络进行图信息提取。即通过生成各个子时间段分别对应的子二部图,然后将各个子时间段分别对应的子二部图中匹配对象进行关联,得到目标时间段对应的目标关联图,能够避免时间的对比计算,从而能够节省计算资源的消耗,然后通过图神经网络对目标关联图进行图信息提取,能够提高提取得到的信息的准确性。
Smart Images

Figure CN118690053B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a data processing method, apparatus, computer equipment, storage medium, and computer program product. Background Technology
[0002] With the development of artificial intelligence technology, graph neural network (Graph Neural Network) technology has emerged, which can process graph-structured data. Generating long-term graph-structured data typically requires significant computational resources. For example, generating long-term transaction network data between users and merchants requires comparing and calculating the time points when transactions occur between them before the long-term transaction network can be generated. However, performing time-based comparison calculations often consumes enormous computational resources, resulting in resource waste. Summary of the Invention
[0003] Therefore, it is necessary to provide a data processing method, apparatus, computer equipment, computer-readable storage medium, and computer program product that can save computing resources to address the above-mentioned technical problems.
[0004] Firstly, this application provides a data processing method. The method includes:
[0005] Get the set of objects to be processed corresponding to the target time period and the target set of objects associated with the set of objects to be processed;
[0006] The set of objects to be processed is determined from the set of objects to be processed, and the set of target objects to be processed is determined from the set of target objects associated with the set of objects to be processed. Each sub-time period is obtained by dividing the target time period.
[0007] Bipartite graphs are generated based on the subset of objects to be processed and the subset of target objects associated with the subset of objects to be processed corresponding to each sub-time period, resulting in sub-bipartite graphs corresponding to each sub-time period.
[0008] The matching objects in the sub-bipart graphs corresponding to each sub-time period are associated to obtain the target association graph corresponding to the target time period. The target association graph is used to extract graph information through graph neural networks.
[0009] Secondly, this application also provides a data processing apparatus. The apparatus includes:
[0010] The data acquisition module is used to acquire the set of objects to be processed corresponding to the target time period and the target set associated with the set of objects to be processed.
[0011] The subset determination module is used to determine the subset of objects to be processed corresponding to each sub-time period from the set of objects to be processed, and to determine the subset of target objects corresponding to each sub-time period from the set of target objects associated with the set of objects to be processed. Each sub-time period is obtained by dividing the target time period.
[0012] The sub-bipart graph generation module is used to generate a bipart graph based on the subset of objects to be processed and the subset of target objects associated with the subset of objects to be processed corresponding to each sub-time period, so as to obtain the sub-bipart graph corresponding to each sub-time period.
[0013] The bipartite graph association module is used to associate the matching objects in the sub-bipartite graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period. The target association graph is used to extract graph information through graph neural networks.
[0014] In one embodiment, the data processing apparatus further includes:
[0015] The merging module is used to merge the sub-bipart graphs corresponding to each sub-time period according to the time order of each sub-time period to obtain a merged bipartite graph. The sub-bipartite graphs in the merged bipartite graph are not connected. The merged bipartite graph is used as the target association graph corresponding to the target time period.
[0016] In one embodiment, the sub-bipart graph generation module is further configured to determine the current sub-time period from each sub-time period, obtain the current subset of objects to be processed corresponding to the current sub-time period, and obtain the current target object subset associated with the current subset of objects to be processed; establish each object node pair based on the current target objects associated with each current object in the current subset of objects to be processed and each current target object in the current subset of target objects; aggregate each object node pair to obtain the sub-bipart graph corresponding to the current sub-time period; and traverse each sub-time period sequentially to obtain the sub-bipart graph corresponding to each sub-time period.
[0017] In one embodiment, the sub-bipart graph generation module is further configured to determine each duplicate node pair and each non-duplicate node pair from each object node pair, remove duplicates from each duplicate node pair to obtain the aggregate node pair corresponding to each duplicate node pair, and obtain the sub-bipart graph corresponding to the current sub-time period based on each non-duplicate node pair and the aggregate node pair.
[0018] In one embodiment, the bipartite graph association module is further used to calculate the similarity of each object in the sub-bipartite graph corresponding to each sub-time period, and to take objects with similarity exceeding a preset threshold as matching objects; and to associate the matching objects in the sub-bipartite graph corresponding to each sub-time period to obtain the target association graph corresponding to the target time period.
[0019] In one embodiment, the bipartite graph association module is further configured to identify the same objects from the sub-bipartite graphs corresponding to each sub-time period, and associate the same objects in the sub-bipartite graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period.
[0020] In one embodiment, the bipartite graph association module is further configured to determine the same objects to be processed from the sub-bipartite graphs corresponding to each sub-time period; and to associate the same objects to be processed in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period to obtain the target association graph corresponding to the target time period.
[0021] In one embodiment, the bipartite graph association module is further configured to determine the same target object from the sub-bipartite graphs corresponding to each sub-time period; and to associate the same target object in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period to obtain the target association graph corresponding to the target time period.
[0022] In one embodiment, the bipartite graph association module is further configured to determine the same objects to be processed and the same target objects from the sub-bipartite graphs corresponding to each sub-time period; associate the same objects to be processed in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period, and associate the same target objects in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period, thereby obtaining the target association graph corresponding to the target time period.
[0023] In one embodiment, the data processing apparatus further includes:
[0024] The classification module is used to input the target association graph into the graph neural network to extract graph information and obtain the semantic representation of each object node in the target association graph; based on the semantic representation of each object node, the object nodes are classified to obtain the category of each object node.
[0025] In one embodiment, the data processing apparatus further includes:
[0026] The transaction module is used to obtain the user object set and transaction object set corresponding to the target time period, where user objects in the user object set and corresponding transaction objects in the transaction object set have transaction relationships. It determines the user object subsets corresponding to each sub-time period from the user object set, and the transaction object subsets corresponding to each sub-time period from the associated transaction object sets of the user object set. Based on the user object subsets and associated transaction object subsets of each sub-time period, a bipartite graph is generated to obtain the transaction sub-bipartite graph for each sub-time period. Users are matched and associated in the transaction sub-bipartite graphs of each sub-time period to obtain the target transaction graph for the target time period. The target transaction graph is input into an abnormal user identification model for abnormal user identification, obtaining the abnormality degree of each user object in the target transaction graph, and identifying abnormal user objects from among the user objects based on the abnormality degree of each user object.
[0027] In one embodiment, the data processing apparatus further includes:
[0028] The recommendation module is used to obtain the video set corresponding to the target time period and the viewing object set associated with the video set; determine the video subset corresponding to each sub-time period from the video set, and determine the viewing object subset corresponding to each sub-time period from the viewing object set associated with the video set; generate a bipartite graph based on the video subset corresponding to each sub-time period and the viewing object subset associated with the video subset, to obtain the video recommendation sub-bipartite graph corresponding to each sub-time period; associate the matching videos in the video recommendation sub-bipartite graph corresponding to each sub-time period to obtain the target video graph corresponding to the target time period; input the target video graph into the video recommendation model to calculate the video recommendation, obtain the recommendation score of each video in the target video graph, and determine the target recommended video from each video based on the recommendation score of each video.
[0029] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:
[0030] Get the set of objects to be processed corresponding to the target time period and the target set of objects associated with the set of objects to be processed;
[0031] The set of objects to be processed is determined from the set of objects to be processed, and the set of target objects to be processed is determined from the set of target objects associated with the set of objects to be processed. Each sub-time period is obtained by dividing the target time period.
[0032] Bipartite graphs are generated based on the subset of objects to be processed and the subset of target objects associated with the subset of objects to be processed corresponding to each sub-time period, resulting in sub-bipartite graphs corresponding to each sub-time period.
[0033] The matching objects in the sub-bipart graphs corresponding to each sub-time period are associated to obtain the target association graph corresponding to the target time period. The target association graph is used to extract graph information through graph neural networks.
[0034] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:
[0035] Get the set of objects to be processed corresponding to the target time period and the target set of objects associated with the set of objects to be processed;
[0036] The set of objects to be processed is determined from the set of objects to be processed, and the set of target objects to be processed is determined from the set of target objects associated with the set of objects to be processed. Each sub-time period is obtained by dividing the target time period.
[0037] Bipartite graphs are generated based on the subset of objects to be processed and the subset of target objects associated with the subset of objects to be processed corresponding to each sub-time period, resulting in sub-bipartite graphs corresponding to each sub-time period.
[0038] The matching objects in the sub-bipart graphs corresponding to each sub-time period are associated to obtain the target association graph corresponding to the target time period. The target association graph is used to extract graph information through graph neural networks.
[0039] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:
[0040] Get the set of objects to be processed corresponding to the target time period and the target set of objects associated with the set of objects to be processed;
[0041] The set of objects to be processed is determined from the set of objects to be processed, and the set of target objects to be processed is determined from the set of target objects associated with the set of objects to be processed. Each sub-time period is obtained by dividing the target time period.
[0042] Bipartite graphs are generated based on the subset of objects to be processed and the subset of target objects associated with the subset of objects to be processed corresponding to each sub-time period, resulting in sub-bipartite graphs corresponding to each sub-time period.
[0043] The matching objects in the sub-bipart graphs corresponding to each sub-time period are associated to obtain the target association graph corresponding to the target time period. The target association graph is used to extract graph information through graph neural networks.
[0044] The aforementioned data processing method, apparatus, computer equipment, storage medium, and computer program product acquire the set of objects to be processed corresponding to the target time period and the set of target objects associated with the set of objects to be processed; determine the subsets of objects to be processed corresponding to each sub-time period from the set of objects to be processed, and determine the subsets of target objects corresponding to each sub-time period from the set of target objects associated with the set of objects to be processed, where each sub-time period is obtained by dividing the target time period; generate a bipartite graph based on the subsets of objects to be processed corresponding to each sub-time period and the subsets of target objects associated with the subsets of objects to be processed, obtaining a sub-bipartite graph corresponding to each sub-time period; associate the matching objects in the sub-bipartite graphs corresponding to each sub-time period to obtain a target association graph corresponding to the target time period, which is used for graph information extraction through a graph neural network. In other words, by generating sub-bipartite graphs corresponding to each sub-time period and then associating the matching objects in the sub-bipartite graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period, time comparison calculations can be avoided, thus saving computational resources. Then, graph information extraction from the target association graph through a graph neural network can improve the accuracy of the extracted information. Attached Figure Description
[0045] Figure 1 This is a diagram illustrating the application environment of a data processing method in one embodiment.
[0046] Figure 2 This is a flowchart illustrating a data processing method in one embodiment;
[0047] Figure 3 This is a schematic diagram of the merged two-part diagram in a specific embodiment;
[0048] Figure 4 This is a flowchart illustrating the process of obtaining a sub-bipart diagram in one embodiment;
[0049] Figure 5 This is a schematic diagram illustrating the association of objects to be processed in a specific embodiment;
[0050] Figure 6 This is a schematic diagram illustrating the association of target objects in a specific embodiment;
[0051] Figure 7 This is a schematic diagram illustrating the association of objects in a sub-bipart diagram in a specific embodiment;
[0052] Figure 8 This is a flowchart illustrating the process of identifying abnormal user objects in one embodiment;
[0053] Figure 9 This is a flowchart illustrating the process of determining a target recommended video in one embodiment;
[0054] Figure 10 This is a flowchart illustrating a data processing method in a specific embodiment;
[0055] Figure 11 This is a structural block diagram of a data processing device in one embodiment;
[0056] Figure 12 This is an internal structural diagram of a computer device in one embodiment;
[0057] Figure 13 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0058] To make the objectives, technical solutions, and advantages 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.
[0059] The data processing method provided in this application embodiment can be applied to, for example... Figure 1In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104, or it can be placed on the cloud or another server. Server 104 obtains the set of objects to be processed corresponding to the target time period uploaded by terminal 102, and the target object set associated with the set of objects to be processed. Server 104 determines the subset of objects to be processed corresponding to each sub-time period from the set of objects to be processed, and determines the subset of target objects corresponding to each sub-time period from the target object set associated with the set of objects to be processed. Each sub-time period is obtained by dividing the target time period. Server 104 generates a bipartite graph based on the subset of objects to be processed corresponding to each sub-time period and the subset of target objects associated with the subset of objects to be processed, obtaining a sub-bipartite graph corresponding to each sub-time period. Server 104 associates the matching objects in the sub-bipartite graphs corresponding to each sub-time period to obtain a target association graph corresponding to the target time period. The target association graph is used for graph information extraction through a graph neural network. The terminal 102 can be, but is not limited to, various desktop computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, and smart in-vehicle devices. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted devices. The server 104 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing cloud computing services. The terminal and server can be directly or indirectly connected via wired or wireless communication; this application does not impose any restrictions on this connection.
[0060] In one embodiment, such as Figure 2 As shown, a data processing method is provided, which can be applied to... Figure 1 Taking a server as an example, it can be understood that this method can also be applied to servers, and also to systems including terminals and servers, and implemented through the interaction between the terminal and the server. In this embodiment, the method includes the following steps:
[0061] S202, obtain the set of objects to be processed corresponding to the target time period and the target set of objects associated with the set of objects to be processed.
[0062] The target time period refers to the time period from which the data for generating the bipartite graph is generated. This target time period can be a pre-set time frame, such as a year, a month, or a day. It can also be a historical time period or a future time period, depending on the requirements. For example, to generate a bipartite graph based on data from a specific historical time period, the target time period is that historical time period. Conversely, if the data for the bipartite graph to be generated is from a future time period, the target time period is that future time period, and the data for the bipartite graph to be generated is obtained within that future time period.
[0063] The set of objects to be processed includes various objects used in generating the bipartite graph. These objects can be real objects, such as people and items, or virtual objects, such as virtual products and virtual characters. The set of target objects includes various target objects used in generating the bipartite graph. Target objects are different types of objects from the objects to be processed; they can be related or interactive, such as in a transaction or interactive relationship. Each object to be processed has associated target objects. For example, if an object to be processed is a user, the target objects could be merchants, videos, images, etc. Different objects to be processed can be associated with the same target object or different target objects. The same object to be processed can also be associated with different target objects.
[0064] Specifically, the server can retrieve from the database the set of objects to be processed corresponding to the target time period and the set of target objects associated with that set. That is, the set of target objects also corresponds to the target time period, and the objects to be processed in the set of objects to be processed are associated with the target objects in the set of target objects. This can involve one object to be processed associating with multiple target objects, one object to be processed associating with one target object, or multiple objects to be processed associating with the same target object. In one embodiment, the objects to be processed in the set of objects to be processed can be represented by a unique identifier or by corresponding attribute features. The target objects in the set of target objects can be represented by a unique identifier or by corresponding attribute features.
[0065] The server can also obtain the set of objects to be processed corresponding to the target time period uploaded from the terminal, and the target object set associated with that set. The server can also obtain the set of objects to be processed corresponding to the target time period and the target object set associated with that set sent by the data service provider. The server can also obtain the set of objects to be processed corresponding to the target time period and the target object set associated with that set from the business service provider.
[0066] S204, determine the subset of objects to be processed corresponding to each sub-time period from the set of objects to be processed, and determine the subset of target objects corresponding to each sub-time period from the set of target objects associated with the set of objects to be processed. Each sub-time period is obtained by dividing the target time period.
[0067] Sub-time periods refer to the division of a target time period. This can be done by dividing the target time period into equal parts, such as by year, month, or day. Alternatively, the target time period can be divided irregularly, for example, by giving each sub-time period a random length.
[0068] A subset of objects to be processed refers to the set of objects to be processed corresponding to a sub-time period. That is, the time point within this sub-time period when the objects to be processed are associated with their corresponding target objects. A subset of target objects refers to the set of target objects corresponding to the sub-time period. Each subset of objects to be processed has associated target objects; all associated target objects are considered as the subset of target objects associated with the subset of objects to be processed.
[0069] Specifically, the server can divide the target time period according to pre-set division rules to obtain various sub-time periods. These division rules can be set according to time rules or business conditions. Then, the server can obtain the data generation time point corresponding to each object in the object set to be processed, and divide the objects to be processed according to the sub-time periods defined by the data generation time point, obtaining the objects to be processed corresponding to each sub-time period. The objects to be processed corresponding to each sub-time period are then considered as a subset of objects to be processed. Here, the data generation time point refers to the time point when the object to be processed establishes a relationship with the associated target object. For example, the transaction time point between a user and a merchant is the time point when the transaction data corresponding to the user object and the merchant object is generated. Then, the server determines the target object subset corresponding to each sub-time period from the target object set associated with the object set to be processed. Alternatively, the server can directly determine the target objects associated with each object in the subset of objects to be processed from the target object set according to the association relationship, thus obtaining the target object subset associated with each subset of objects to be processed, i.e., the target object subset corresponding to each sub-time period.
[0070] S206, bipartite graphs are generated based on the subsets of objects to be processed and the subsets of target objects associated with the subsets of objects to be processed corresponding to each sub-time period, resulting in sub-bipartite graphs corresponding to each sub-time period.
[0071] In this context, a sub-bipartite graph refers to a bipartite graph generated based on the subset of objects to be processed and the associated subset of target objects corresponding to a sub-time period. In this sub-bipartite graph, the objects to be processed and the target objects are treated as nodes, and the relationships are treated as edges. This sub-bipartite graph is static.
[0072] Specifically, the server sequentially generates a bipartite graph corresponding to each sub-time period, thus obtaining a sub-bipartite graph for each sub-time period. When generating the bipartite graph for each sub-time period, each object to be processed in the subset of objects to be processed is first treated as one member of a tuple. Then, the target object associated with the object to be processed in the tuple is obtained from the subset of target objects and treated as the other member of the tuple, thus obtaining one tuple of the bipartite graph. This process is repeated sequentially through each object to be processed in the subset of objects to be processed, resulting in various tuples. Finally, these tuples are aggregated, and duplicate tuples are removed, thus obtaining the bipartite graph corresponding to the sub-time period for each subset of objects to be processed.
[0073] S208, associate the matching objects in the sub-bipart graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period. The target association graph is used to extract graph information through graph neural networks.
[0074] In this context, a matching object refers to an object in the sub-bipartite graph corresponding to each sub-time period whose matching degree exceeds a preset matching degree threshold. This preset matching degree threshold can be set according to requirements. The matching degree is obtained by calculating the similarity between objects in different sub-bipartite graphs. A matching object can also be the same object in the sub-bipartite graphs corresponding to each sub-time period; that is, different sub-bipartite graphs can have the same object, and the same object in different sub-bipartite graphs is used as the matching object. The target association graph is an association graph obtained from each sub-bipartite graph. In this target association graph, two matched objects in different sub-bipartite graphs have an edge, meaning the two matched objects are associated. A graph refers to a data structure containing nodes and edges. Graph neural networks are a deep learning framework that directly learns from graph structure data. Each node in the graph can be defined through its features and related nodes (aggregate learning).
[0075] Specifically, the server calculates the matching degree of each object to be processed and the matching degree of the target object from the sub-bipart graphs corresponding to each sub-time period. Based on the matching degree, it determines the matched objects, and then associates the matched objects in the sub-bipart graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period. The target association graph can then be input into a pre-trained graph neural network for graph information extraction to obtain the semantic representation of each object in the target association graph.
[0076] The aforementioned data processing method involves obtaining the set of objects to be processed corresponding to the target time period and the set of target objects associated with that set; determining the subsets of objects to be processed corresponding to each sub-time period from the set of objects to be processed, and determining the subsets of target objects corresponding to each sub-time period from the set of target objects associated with that set of objects to be processed, where each sub-time period is obtained by dividing the target time period; generating a bipartite graph based on the subsets of objects to be processed and the subsets of target objects associated with each sub-time period, resulting in a sub-bipartite graph for each sub-time period; associating matching objects in the sub-bipartite graphs for each sub-time period to obtain a target association graph for the target time period, which is then used for graph information extraction via a graph neural network. In other words, by generating sub-bipartite graphs for each sub-time period and then associating matching objects in these graphs to obtain the target association graph for the target time period, the method avoids time comparison calculations, thus saving computational resources. Furthermore, using a graph neural network to extract graph information from the target association graph improves the accuracy of the extracted information.
[0077] In one embodiment, the data processing method further includes:
[0078] The sub-bipart graphs corresponding to each sub-time period are merged according to the time order of each sub-time period to obtain a merged bipartite graph. The sub-bipartite graphs in the merged bipartite graph are not connected. The merged bipartite graph is used as the target association graph corresponding to the target time period.
[0079] The merged bipartite graph refers to the relational graph obtained by merging the sub-bipartite graphs corresponding to each sub-time period according to the chronological order of each sub-time period. In this merged bipartite graph, the sub-bipartite graphs are not connected.
[0080] Specifically, the server can merge the sub-bipartite graphs corresponding to each sub-time period according to the chronological order of the sub-time periods to obtain a merged bipartite graph, in which the sub-bipartite graphs are not connected; the merged bipartite graph is used as the target association graph corresponding to the target time period. In one embodiment, the server can also directly treat the sub-bipartite graphs corresponding to each sub-time period as a whole to obtain the target association graph corresponding to the target time period.
[0081] In a specific embodiment, such as Figure 3The diagram shows the merged bipartite graph. The set of objects to be processed, A, includes object 1, object 2, object 3, and object 4. Objects 1, 2, 3, and 4 are all associated with target object 5 in the target object set B. Specifically, the association between object 1 and object 2 and target object 5 is based on data acquired in the sub-time period of March 2020. The association between object 3 and object 4 and target object 5 is based on data acquired in the sub-time period of March 2021. The server also acquires data from the months between March 2020 and March 2021. The server then generates a sub-bipartite graph corresponding to the sub-time period March 2020, a sub-bipartite graph corresponding to the middle month (not shown in the figure), and a sub-bipartite graph corresponding to the sub-time period March 2021. These three sub-bipartite graphs are then treated as a whole to obtain the target association graph for the target time period from March 2020 to March 2021. Currently, because target object 5 has associations with the object to be processed in different sub-time periods, it is treated as a single node when generating the bipartite graph for this target time period, leading to reduced accuracy. This application improves the accuracy of the generated target association graph by treating the same node in different periods as different nodes.
[0082] In the above embodiments, by merging the sub-bipart graphs corresponding to each sub-time period according to the time order of each sub-time period, a merged bipart graph is obtained. Then, the merged bipart graph is used as the target association graph corresponding to the target time period, thereby improving the accuracy of the obtained target association graph and thus improving the accuracy of downstream task processing.
[0083] In one embodiment, such as Figure 4 As shown, step 306 involves generating a bipartite graph based on the subset of objects to be processed and the subset of target objects associated with those subsets for each sub-time period, resulting in a sub-bipartite graph corresponding to each sub-time period, including:
[0084] S402, determine the current sub-time period from each sub-time period, obtain the current subset of objects to be processed corresponding to the current sub-time period, and obtain the current target object subset associated with the current subset of objects to be processed.
[0085] S404, establish each object node pair based on the current target object associated with each current object in the current subset of objects to be processed and each current object in the current subset of objects to be processed.
[0086] Here, "current sub-time period" refers to the sub-time period in which a bipartite graph needs to be generated. "Current subset of objects to be processed" refers to the subset of objects in which a bipartite graph needs to be generated. "Current subset of target objects" refers to the subset of target objects in which a bipartite graph needs to be generated. "Current object to be processed" refers to the object to be processed within the current subset of objects to be processed. "Current target object" refers to the target object within the current subset of target objects. "Object node pair" refers to the node pair consisting of the current object to be processed and its associated target object.
[0087] Specifically, the server sequentially assigns each sub-time period as the current sub-time period. Then, the server retrieves the subset of currently pending objects corresponding to the current sub-time period from the database, and also retrieves the subset of currently target objects associated with this subset. Based on the association between the pending objects and the target objects, object node pairs are established, where the currently pending object is one node in the pair, and the currently pending object is associated with the current target object as the other node. This process is repeated for all currently pending objects and current target objects to obtain the object node pairs corresponding to the current sub-time period.
[0088] S406, aggregate the pairs of object nodes to obtain the sub-bipart graph corresponding to the current sub-time period.
[0089] S408, iterate through each sub-time period in sequence to obtain the sub-bipart graph corresponding to each sub-time period.
[0090] Specifically, the server aggregates the object node pairs by removing duplicate object nodes from each pair, resulting in deduplicated object node pairs. These deduplicated object nodes are then used as the sub-bipartite graph corresponding to the current sub-time period. Finally, the server iterates through each sub-time period sequentially, obtaining the object node pairs corresponding to each sub-time period, and then uses these object node pairs to generate the sub-bipartite graph.
[0091] In the above embodiments, by establishing pairs of object nodes and then aggregating these pairs, sub-bipart graphs corresponding to each sub-time period are obtained, thereby improving the accuracy of the obtained sub-bipart graphs.
[0092] In one embodiment, S402, the pairs of object nodes are aggregated to obtain the sub-bipart graph corresponding to the current sub-time period, including the following steps:
[0093] From each object node pair, identify each duplicate node pair and each non-duplicate node pair, remove duplicates from each duplicate node pair to obtain the aggregate node pair corresponding to each duplicate node pair; based on each non-duplicate node pair and the aggregate node pair, obtain the sub-bipartite graph corresponding to the current sub-time period.
[0094] Duplicate node pairs are object node pairs where all objects in the pair are identical. In other words, duplicate node pairs contain identical object node pairs. Non-duplicate node pairs are object node pairs where no two objects being processed and their associated target objects are identical; that is, non-duplicate node pairs are unique and do not contain identical object node pairs. Aggregated node pairs are duplicate node pairs that have been aggregated; these aggregated node pairs are unique and do not contain identical object node pairs.
[0095] Specifically, the server can find duplicate object node pairs by matching the identifiers of the object to be processed and the target object in each object node pair. That is, if both the identifiers of the object to be processed and the target object are the same as those in another object node pair, then that object node pair is considered a duplicate node pair. Simultaneously, object node pairs where no duplicate identifiers of the object to be processed and the target object are found are considered non-duplicate node pairs, thus obtaining each duplicate node pair and each non-duplicate node pair. The server then removes duplicates from each duplicate node pair, obtaining the corresponding aggregate node pair. This involves deleting duplicate node pairs and keeping only one of them. Finally, each non-duplicate node pair and the aggregate node pair are used as the sub-bipartite graph corresponding to the current sub-time period.
[0096] In the above embodiments, by deduplicating each duplicate node pair, the aggregated node pair corresponding to each duplicate node pair is obtained, and the sub-bipart graph corresponding to the current sub-time period is obtained based on each non-duplicate node pair and the aggregated node pair, thereby improving the accuracy of the obtained sub-bipart graph.
[0097] In one embodiment, S208, the matching objects in the sub-bipart graphs corresponding to each sub-time period are associated to obtain the target association graph corresponding to the target time period, including:
[0098] Calculate the similarity of each object in the sub-bipart graph corresponding to each sub-time period, and take the objects with similarity exceeding the preset threshold as matching objects; associate the matching objects in the sub-bipart graph corresponding to each sub-time period to obtain the target association graph corresponding to the target time period.
[0099] The similarity is used to characterize the degree of matching between objects in the sub-bipart graph. The higher the similarity between two objects, the more matched the two objects are. For example, the higher the similarity between two objects to be processed, the more matched the two objects are. When the similarity is 100%, it means that the two objects to be processed are the same object.
[0100] Specifically, the server can obtain the attribute information of each object in each sub-bipart graph, and calculate the similarity of each object using a similarity algorithm based on the attribute information. This similarity algorithm can be cosine similarity, distance similarity, etc. The server can calculate the similarity between two objects to be processed, and then calculate the similarity between two target objects within each target object, eliminating the need to calculate the similarity between the objects to be processed and the target objects, thus reducing computational load, saving computational resources, and improving computational efficiency. Alternatively, the server can convert attribute information into attribute vectors, and then use these attribute vectors to calculate the similarity between two objects using a distance similarity algorithm. These attribute vectors can be obtained through vectorization algorithms or by looking up information in an existing vector dictionary. The server then compares each similarity with a preset threshold, determining the target similarity if the similarity exceeds the preset threshold, and then calculating the two objects with the target similarity as matching objects. This preset threshold can be a pre-set similarity threshold. In other words, the server identifies matching objects from each sub-bipart graph, and then associates the two matching objects, either as object node pairs or by connecting the matching objects, thereby obtaining a target association graph corresponding to the target time period.
[0101] In the above embodiments, the similarity of each object in the sub-bipart graph corresponding to each sub-time period is calculated, and objects with similarity exceeding a preset threshold are used as matching objects. Then, the matching objects are associated in the sub-bipart graph corresponding to each sub-time period to obtain the target association graph corresponding to the target time period, thereby improving the accuracy of the obtained target association graph.
[0102] In one embodiment, S208, the matching objects in the sub-bipart graphs corresponding to each sub-time period are associated to obtain the target association graph corresponding to the target time period, including:
[0103] Identify the same objects in the sub-binary graphs corresponding to each sub-time period, and associate the same objects in the sub-binary graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period.
[0104] Specifically, the server can identify identical objects based on the identifiers of objects in each sub-binary graph. When two objects have the same identifier, they are associated, that is, the two objects with the same identifier are treated as object node pairs. Then, all identical pairs of objects in each sub-binary graph are connected to obtain the target association graph corresponding to the target time period. In one embodiment, when two objects in different sub-binary graphs have the same attribute characteristics, the attribute characteristics with the same characteristics can also be connected to obtain the target association graph corresponding to the target time period.
[0105] In the above embodiments, by directly identifying the same objects from the sub-bipart graphs corresponding to each sub-time period and associating the same objects in the sub-bipart graphs corresponding to each sub-time period, a target association graph corresponding to the target time period can be obtained, which can reduce computation and save computational resources.
[0106] In one embodiment, identifying identical objects from the sub-bipartite graphs corresponding to each sub-time period, and associating these identical objects in the sub-bipartite graphs corresponding to each sub-time period, yields a target association graph corresponding to the target time period. This includes the following steps:
[0107] Identify the same objects to be processed from the sub-bipart diagrams corresponding to each sub-time period; associate the same objects to be processed in the sub-bipart diagrams corresponding to each sub-time period according to the time order of each sub-time period to obtain the target association diagram corresponding to the target time period.
[0108] Specifically, the server treats each sub-bipartite graph as the current sub-bipartite graph according to the time sequence of each sub-time period. It then checks whether the objects to be processed in the current sub-bipartite graph are the same as those in other sub-bipartite graphs. If an object identical to the current object exists in another sub-bipartite graph, that sub-bipartite graph is connected to the current sub-bipartite graph. Multiple identical objects can exist between the current and previous sub-bipartite graphs, and each of these identical objects is connected. Alternatively, no identical objects may exist between the current and previous sub-bipartite graphs; in this case, they are not connected. All identical objects in the sub-bipartite graphs are connected according to the time sequence of each sub-time period. That is, when the same object exists in multiple sub-bipartite graphs, the object in the previous sub-bipartite graph is connected to the identical object in the next sub-bipartite graph according to the time sequence. The identical objects can be stored as object node pairs. When all identical objects to be processed in all sub-bipart graphs are connected, the target association graph corresponding to the target time period is obtained.
[0109] In a specific embodiment, such as Figure 5The diagram illustrates the association process for the objects to be processed. Specifically, the generated sub-bipartite graph includes sub-bipartite graph A corresponding to March 2020 and sub-bipartite graph B corresponding to April 2020. Sub-bipartite graphs A and B include user sets and sets of merchants associated with those user sets. The objects to be processed are users, and the target objects are merchants. Sub-bipartite graph A includes user 1 and user 2, and merchant 6 associated with user 1 and user 2. Sub-bipartite graph B includes user 2 and user 4, and merchant 5 associated with user 2 and user 4. Then, the same user is identified from sub-bipartite graphs A and B, namely user 2. At this point, the same object to be processed, user 2, in sub-bipartite graphs A and B is connected, thus obtaining the target association graph for March and April 2020. The target association graph can then be used to extract user semantic representations, which can be used to classify users, such as identifying abnormal users and normal users.
[0110] In the above embodiments, by associating the same objects to be processed in the sub-bipart graphs corresponding to each sub-time period according to the time order of each sub-time period, a target association graph corresponding to the target time period is obtained, thereby improving the accuracy of the obtained target association graph, and thus enabling the semantic representation of the objects to be processed obtained in advance through the graph neural network to be more accurate.
[0111] In one embodiment, common objects are identified from the sub-bipart graphs corresponding to each sub-time period, and these common objects are associated in the sub-bipart graphs corresponding to each sub-time period to obtain a target association graph corresponding to the target time period, including:
[0112] Identify the same target objects in the sub-binary diagrams corresponding to each sub-time period; associate the same target objects in the sub-binary diagrams corresponding to each sub-time period according to the time order of each sub-time period to obtain the target association diagram corresponding to the target time period.
[0113] Specifically, the server treats each sub-bipartite graph as the current sub-bipartite graph according to the time sequence of each sub-time period. It then checks whether the target objects in the current sub-bipartite graph are identical to those in other sub-bipartite graphs. If a target object identical to the target object in the current sub-bipartite graph exists in another sub-bipartite graph, the identical target object in that sub-bipartite graph is connected to the current sub-bipartite graph. Multiple identical target objects can exist in the current sub-bipartite graph, and each of these identical target objects is connected. Alternatively, no identical target objects can exist in the current sub-bipartite graph; in this case, the identical target objects in the current sub-bipartite graph are not connected. All identical target objects in the sub-bipartite graphs are connected according to the time sequence of each sub-time period. That is, when the same target object exists in multiple sub-bipartite graphs, the target object in the previous sub-bipartite graph is connected to the identical target object in the next sub-bipartite graph according to the time sequence. The identical target objects can be stored as object node pairs when connecting. When all identical target objects in all sub-bipart graphs are connected, the target association graph corresponding to the target time period is obtained.
[0114] In a specific embodiment, such as Figure 6 The diagram illustrates the association of target objects. Specifically, the generated sub-bipartite graph includes sub-bipartite graph C corresponding to May 2020 and sub-bipartite graph D corresponding to June 2020. Sub-bipartite graphs C and D include user sets and sets of merchants associated with those user sets. The objects to be processed are users, and the target objects are merchants. Sub-bipartite graph C includes user 1 and user 2, and merchant 7 associated with user 1 and user 2. Sub-bipartite graph D includes user 3 and user 4, and merchant 7 associated with user 3 and user 4. Then, the same merchants in sub-bipartite graphs C and D are identified as merchant 7. At this point, the same target objects (merchants 7) in sub-bipartite graphs C and D are connected to obtain the target association graph for May and June 2020. The target association graph can then be used to extract semantic representations of merchants, and these semantic representations can be used to classify merchants, such as identifying abnormal and normal merchants.
[0115] In the above embodiments, by associating the same target objects in the sub-bipart graphs corresponding to each sub-time period according to the time order of each sub-time period, a target association graph corresponding to the target time period is obtained, thereby improving the accuracy of the obtained target association graph, and thus enabling the semantic representation of the target objects obtained in advance through the graph neural network to be more accurate.
[0116] In one embodiment, common objects are identified from the sub-bipart graphs corresponding to each sub-time period, and these common objects are associated in the sub-bipart graphs corresponding to each sub-time period to obtain a target association graph corresponding to the target time period, including:
[0117] Identify the same objects to be processed and the same target objects in the sub-binary graphs corresponding to each sub-time period; associate the same objects to be processed in the sub-binary graphs corresponding to each sub-time period according to the time order of each sub-time period, and associate the same target objects in the sub-binary graphs corresponding to each sub-time period according to the time order of each sub-time period, to obtain the target association graph corresponding to the target time period.
[0118] Specifically, the server uses each sub-bipartite graph as the current sub-bipartite graph according to the time sequence of each sub-time period, and checks whether the target objects in the current sub-bipartite graph are the same as the target objects in other sub-bipartite graphs. At the same time, it also checks whether the objects to be processed are the same.
[0119] When other sub-bipartite graphs contain the same target object and the same pending object as the target object in the current sub-bipartite graph, the sub-bipartite graph with the same target object in the current sub-bipartite graph is connected, and the sub-bipartite graph with the same pending object in the current sub-bipartite graph is also connected. This sub-bipartite graph and the current sub-bipartite graph can have multiple identical target objects and multiple identical pending objects; in this case, each identical target object and each identical pending object is connected. The server connects identical target objects in all sub-bipartite graphs according to the chronological order of each sub-time period. That is, when the same target object exists in multiple sub-bipartite graphs, the target object in the previous sub-bipartite graph is connected to the identical target object in the next sub-bipartite graph according to chronological order. Furthermore, when the same pending object exists in multiple sub-bipartite graphs, the pending object in the previous sub-bipartite graph is connected to the identical pending object in the next sub-bipartite graph according to chronological order. Connecting can be done by saving identical target objects or identical pending objects as object node pairs. When all identical target objects in all sub-bipart graphs and all objects to be processed are connected, the target association graph corresponding to the target time period is obtained.
[0120] In a specific embodiment, such as Figure 7The diagram illustrates the association of objects in a sub-bipartite graph. Specifically, the generated sub-bipartite graph includes sub-bipartite graph E corresponding to July 2020 and sub-bipartite graph F corresponding to August 2020. Sub-bipartite graphs E and F include user sets and merchant sets associated with those user sets. The objects to be processed are users, and the target objects are merchants. Sub-bipartite graph E includes users 8 and 9, and merchant 6 associated with users 8 and 9. Sub-bipartite graph F includes users 8 and 3, and merchant 6 associated with users 8 and 3. Then, the same merchants and users are identified from sub-bipartite graphs E and F, namely merchant 7 and user 3. At this point, the same target objects, merchant 7 and user 3, in sub-bipartite graphs E and F are connected to obtain the target association graph for July and August 2020. Then, the target association graph can be used to extract semantic representations of merchants and users. Merchants can be classified using the semantic representations of merchants, and users can be classified using the semantic representations of users. For example, it can be used to identify abnormal merchants and normal merchants, as well as to identify abnormal users and abnormal merchants.
[0121] In the above embodiments, by associating the same objects to be processed in the sub-bipart graphs corresponding to each sub-time period according to the time order of each sub-time period, and associating the same target objects in the sub-bipart graphs corresponding to each sub-time period according to the time order of each sub-time period, a target association graph corresponding to the target time period is obtained, thereby improving the accuracy of the obtained target association graph, and thus enabling the accuracy of the semantic representation of the target objects and objects to be processed obtained in advance through the graph neural network.
[0122] In one embodiment, after associating the matching objects in the sub-bipart graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period, the method further includes the following steps:
[0123] The target association graph is input into a graph neural network to extract graph information and obtain the semantic representation of each object node in the target association graph; based on the semantic representation of each object node, the object nodes are classified to obtain the category of each object node.
[0124] The graph neural network is trained in advance using historical data. The semantic representation of an object node is a vector used to represent the semantics of the corresponding object. The category of an object node is the category used to represent the corresponding object; this category can be set according to the business scenario, and different categories can be set for different business scenarios.
[0125] Specifically, the server can use the target association graph as a pre-trained graph neural network. The graph neural network aggregates neighbor nodes to obtain the semantic representation of each object node in the target association graph. Specifically, the target association graph can be vectorized to obtain a vector corresponding to each object node, and then this vector is input into the graph neural network. The server then uses the semantic representation of each object node to classify the object nodes. This can be achieved by linearly transforming the semantic representation of each object node, activating it using an activation function to obtain the probability of each category for each object node, and selecting the category with the highest probability as the category corresponding to that object node.
[0126] In one embodiment, the weights of the edges in the target association graph can be obtained to get the input graph. Then, the weighted target association graph is input into a pre-trained graph neural network for graph information extraction, resulting in a target semantic representation corresponding to each object node in the target association graph. This makes the obtained target semantic representation more accurate. Classification using the target semantic representation then improves classification accuracy. The weights of the edges in the target association graph can be determined based on the association relationships between object nodes. For example, the weights between transaction object nodes can be determined based on the number of transactions corresponding to the transaction relationship. The weights of the edges in the target association graph can also be randomly generated, for example, using a random number generator. Alternatively, the weights of the edges in the target association graph can be pre-set, for example, all edge weights can be set to an initial value of 1.
[0127] In one specific embodiment, the graph neural network can be pre-trained to obtain a trained graph neural network, which can then be deployed and used. Specifically:
[0128] Training data is obtained, including a target association graph and category labels for each object node in the graph. Then, the attribute information of each object node in the target association graph is vectorized to obtain the embedding vector for each object node. Based on the embedding vectors of each object node, the vector corresponding to the target association graph is obtained. That is, the target association graph, in the form of object node pairs, serves as the input to the initial graph neural network. The object nodes in these pairs are represented using their corresponding embedding vectors. This initial graph neural network can be built using a GNN (Graph Neural Network). Alternatively, it can be built using a GraphSAGE network, an inductive learning framework that efficiently generates feature representations of unknown nodes on very large-scale graphs using node attribute information. GraphSAGE (Graph Attention Network) can be used to generate low-dimensional vector representations of nodes. Finally, the initial graph neural network can be built using a GAT network. The initialization parameters in this initial graph neural network can be randomly initialized, initialized to zero, or initialized using a Gaussian distribution. The initial graph neural network (GNN) then passes the initialized network parameters to the input target association graph, obtaining the hidden layer representation of each node, i.e., the semantic representation of each object node. Next, the semantic representation of each object node undergoes a linear transformation, followed by activation calculation using an activation function to obtain the training class probability corresponding to the object node. The activation function can be a sigmoid activation function, a ReLU (Rectified Linear Unit) activation function, or a Tanh (hyperbolic) activation function. Then, the cross-entropy loss function is used to calculate the error between the training class probability and the corresponding class label, obtaining the loss information. This loss information is used to update the initial GNN using a gradient descent algorithm. After multiple iterations, when the training completion condition is met, the trained GNN is obtained. The training completion condition can be reaching the maximum number of iterations, the loss information reaching a pre-set threshold, or the network parameters of the GNN no longer changing, etc. Finally, the server can deploy the trained GNN and use it to predict the object category.
[0129] In the above embodiments, by inputting the target association graph into a graph neural network to extract graph information, the semantic representations corresponding to each object node in the target association graph are obtained, which can improve the accuracy of the obtained semantic representations. Then, the semantic representations corresponding to each object node are used to classify the object nodes and obtain the categories corresponding to each object node, thereby improving the accuracy of object classification.
[0130] In one embodiment, such as Figure 8 As shown, the data processing method also includes:
[0131] S802, obtain the user object set and transaction object set corresponding to the target time period, and the user objects in the user object set and the corresponding transaction objects in the transaction object set have a transaction relationship.
[0132] The user object set includes various user objects, which can be represented by corresponding user identifiers or by corresponding user attribute information. This user attribute information can include basic user attributes, behavioral attributes, etc. The transaction object set includes various transaction objects, which can be merchant objects. These merchant objects can be represented by corresponding merchant identifiers or by corresponding merchant attribute information. A transaction relationship exists between the user object and the transaction object; this transaction relationship means that a transaction has occurred between the user and the corresponding merchant.
[0133] Specifically, the server can retrieve transaction data from the database, identify individual user objects and the transaction objects with which they have transaction relationships, and then obtain a set of user objects and a set of transaction objects. Alternatively, the server can directly obtain the set of user objects corresponding to the target time period and then retrieve the set of transaction objects with which they have transaction relationships. The server can also obtain the set of user objects and the set of transaction objects corresponding to the target time period from the business service provider.
[0134] S804, determine the subset of user objects corresponding to each sub-time period from the set of user objects, and determine the subset of transaction objects corresponding to each sub-time period from the set of transaction objects associated with the set of user objects.
[0135] The user object subset refers to the set of user objects corresponding to a sub-time period. This subset includes all user objects that transact with merchant objects within that sub-time period. User objects within different sub-time periods may contain the same user objects or different user objects. The transaction object subset refers to the set of transaction objects associated with each user object within the user object subset. Each user object subset has a corresponding set of transaction objects.
[0136] Specifically, the server divides the user objects in the user object set according to each sub-time period, obtaining the user objects corresponding to each sub-time period, thus obtaining a subset of user objects for each sub-time period. Then, based on the user objects in the user object subset, it retrieves the transaction objects with transaction relationships from the transaction object set, thus obtaining the transaction object subset corresponding to the user object subset. This process of obtaining the transaction object subset corresponding to each user object subset yields the transaction object subsets for each sub-time period.
[0137] S806, bipartite graphs are generated based on the user object subsets and transaction object subsets associated with each sub-time period, resulting in transaction sub-bipartite graphs for each sub-time period.
[0138] In this context, a transaction sub-bipartite graph refers to a bipartite graph formed based on transaction relationships within a sub-time period. A transaction sub-bipartite graph can also be called a transaction network. Different sub-time periods correspond to different transaction networks.
[0139] Specifically, the server connects each user object in each sub-time period to its corresponding transaction object according to their transaction relationships. Then, it aggregates different edges corresponding to the same nodes. That is, when a user object and a transaction object have multiple transactions within a sub-time period (i.e., multiple transaction relationships), different edges will exist between them. In this case, multiple edges are aggregated into one edge, resulting in the node pair between the user object and the transaction object within that sub-time period. All node pairs corresponding to that sub-time period are then used as the transaction sub-bipartite graph for that sub-time period. The server iterates through each sub-time period to obtain the transaction sub-bipartite graph for each sub-time period.
[0140] S808: Match users in the transaction sub-bipart graphs corresponding to each sub-time period to obtain the target transaction graph corresponding to the target time period.
[0141] The target transaction graph refers to the transaction relationship graph obtained by connecting the matched users in the transaction sub-graphs corresponding to different time periods. The matched users in the target transaction graph are connected.
[0142] Specifically, the server determines matching users from each transaction sub-bipart graph. It can use the attribute information of user objects to calculate the similarity between user objects and determine matching users based on this similarity. Then, the matching users are connected sequentially according to the time order of each sub-time period. The server can also directly use identical users as matching users and connect them sequentially according to the time order of each sub-time period. For example, user 1 in the transaction sub-bipart graph corresponding to March 2020 can be connected to user 1 in the transaction sub-bipart graph corresponding to April 2020, and then connected to user 1 in the transaction sub-bipart graph corresponding to April 2020 and user 1 in the transaction sub-bipart graph corresponding to May 2020. If there is no matching user 1 in the transaction sub-bipart graph corresponding to April 2020, user 1 in the transaction sub-bipart graph corresponding to March 2020 can be directly connected to user 1 in the transaction sub-bipart graph corresponding to May 2020. When all matching users are associated, the target transaction graph corresponding to the target time period is obtained.
[0143] S810, input the target transaction graph into the abnormal population identification model to identify abnormal populations, obtain the abnormality degree of each user object in the target transaction graph, and determine the abnormal user objects from each user object based on the abnormality degree of each user object.
[0144] The abnormal crowd identification model refers to a graph neural network model used to identify abnormal faces. This model consists of two parts: a graph neural network and a classification network. The model is pre-trained using historical target transaction graphs and corresponding historical abnormal user labels and historical normal user labels. Anomaly score characterizes the degree of abnormality of a user object; the higher the anomaly score, the higher the risk of the user object engaging in abnormal transactions.
[0145] Specifically, the server uses the target transaction graph as input to an abnormal user group identification model to identify abnormal user objects among the various user objects in the target transaction graph. The abnormal user group identification model extracts the hidden layer representations corresponding to each user object through a graph neural network, and then uses a classification network to classify each user object according to its hidden layer representation, obtaining the abnormality score for each user object. The abnormality score is then compared with a preset threshold; user objects whose abnormality score exceeds the preset threshold are considered abnormal user objects, while those whose abnormality score does not exceed the preset threshold are considered normal user objects.
[0146] In the above embodiment, by generating transaction sub-bipartite graphs corresponding to each sub-time period, and then associating each matching user in each transaction sub-bipartite graph, a target transaction graph corresponding to the target time period is obtained. Finally, the target transaction graph is input into an abnormal user identification model to identify abnormal users, obtain the abnormality degree corresponding to each user object in the target transaction graph, and determine abnormal user objects from each user object based on the abnormality degree corresponding to each user object, thereby improving the accuracy of the obtained abnormal user objects.
[0147] In one embodiment, such as Figure 9 As shown, the data processing method also includes:
[0148] S902, obtain the video set corresponding to the target time period and the set of viewing objects associated with the video set.
[0149] The video set includes individual videos, and the viewing object set includes individual viewing objects. The viewing object refers to the object that watches the associated video, which can be a user, a virtual object, etc.
[0150] Specifically, the server can directly retrieve the video set corresponding to the target time period and the associated viewing object set from the database. The server can also retrieve the video set corresponding to the target time period and the associated viewing object set from the business service provider. Furthermore, the server can retrieve the video set corresponding to the target time period and the associated viewing object set uploaded by the terminal.
[0151] S904, determine the video subsets corresponding to each sub-time period from the video set, and determine the viewing object subsets corresponding to each sub-time period from the viewing object set associated with the video set.
[0152] Here, a video subset refers to the set of videos corresponding to a sub-time period, meaning the video was watched or was viewed within that sub-time period. A viewer subset refers to the set of viewers corresponding to a sub-time period, meaning the viewers in the subset watched or viewed videos within that sub-time period. Different viewers can watch different videos at different time periods, watch the same video within a single time period, or watch different videos within a single time period.
[0153] Specifically, the server divides the target time period into non-overlapping sub-time periods according to pre-set criteria. Then, it obtains the video viewing data corresponding to each sub-time period and uses this data to determine the videos watched by viewers within each sub-time period, thus obtaining a subset of viewers and a subset of videos. Viewers within the subset of viewers have watched videos from the corresponding subset of videos.
[0154] S906, a bipartite graph is generated based on the video subsets and the viewing object subsets associated with each sub-time period, resulting in a video recommendation sub-bipartite graph corresponding to each sub-time period.
[0155] The video recommendation sub-bipart graph refers to a bipartite graph formed based on the video viewing relationships within a sub-time period. Different sub-time periods correspond to different bipartite graphs.
[0156] Specifically, each video in each sub-time period is connected to its corresponding viewer according to the viewing relationship. Then, different edges corresponding to the same node are aggregated. That is, when a video and a viewer are watched or watched multiple times in a sub-time period, there will be different edges between the video and the viewer. At this time, multiple edges are aggregated into one edge to obtain the node pair between the video and the viewer in that sub-time period. Then, all the node pairs corresponding to that sub-time period are used as the video recommendation sub-bipartite graph for that sub-time period. The server traverses each sub-time period to obtain the video recommendation sub-bipartite graph corresponding to each sub-time period.
[0157] S908: Associate the matching videos in the video recommendation sub-part graph corresponding to each sub-time period to obtain the target video graph corresponding to the target time period.
[0158] The target video graph refers to the video viewing relationship graph obtained by connecting the matched videos in the transaction sub-part graphs corresponding to different time periods. The matched videos in the target video graph are connected to each other.
[0159] Specifically, the server determines matching videos from each video recommendation sub-bipart graph. It can use basic video attribute information to calculate the similarity between videos, determine matching videos based on similarity, and then connect the matching videos. The server can also directly use identical videos as matching videos. When multiple identical videos exist, they need to be connected sequentially according to the time order of each sub-time period. That is, videos from earlier sub-time periods are connected to videos from later sub-time periods. When matching videos exist in the video recommendation sub-bipart graphs of two adjacent sub-time periods, the matching videos of those two adjacent sub-time periods can be directly connected. When matching videos exist in the video recommendation sub-bipart graphs of two non-adjacent sub-time periods, the matching videos of those two non-adjacent sub-time periods can also be directly connected. When all matching videos are connected, the target video graph corresponding to the target time period is obtained.
[0160] S910, the target video graph is input into the video recommendation model to calculate the video recommendation, and the recommendation score of each video in the target video graph is obtained. Based on the recommendation score of each video, the target recommended video is determined from each video.
[0161] The video recommendation model refers to a graph neural network model that identifies whether a video should be recommended. This model comprises both a graph neural network and a classification network. It is pre-trained using a historical target video graph with corresponding video recommendation and non-recommended labels. The recommendation score characterizes how recommendable a video is; a higher score indicates a video is more likely to be recommended to viewers.
[0162] Specifically, the server uses the target video graph as input to the video recommendation model to calculate the recommendation score for each video in the target video graph. That is, the video recommendation model extracts the hidden layer representation for each video using a graph neural network, and then uses a classification network to perform binary classification to determine whether each video is recommended based on its hidden layer representation, thus obtaining the recommendation score for each video. The recommendation score is then compared with a preset threshold. Videos with a recommendation score exceeding the preset threshold are designated as target recommendation videos and can be recommended to new viewers. The target recommendation videos can include at least two videos.
[0163] In the above embodiments, by generating video recommendation sub-bipart graphs corresponding to each sub-time period, and then associating the matching videos in the video recommendation sub-bipart graphs corresponding to each sub-time period, a target video graph corresponding to the target time period is obtained, which improves the accuracy of the obtained target video graph. Then, the target video graph is input into the video recommendation model for video recommendation calculation to obtain the recommendation degree corresponding to each video in the target video graph. Based on the recommendation degree corresponding to each video, the target recommended video is determined from each video, thereby improving the accuracy of the obtained target recommended video.
[0164] In a specific embodiment, such as Figure 10 As shown, a data processing method is provided, which specifically includes the following steps:
[0165] S1002, obtain the set of objects to be processed corresponding to the target time period and the target set of objects associated with the set of objects to be processed.
[0166] S1004, determine the subset of objects to be processed corresponding to each sub-time period from the set of objects to be processed, and determine the subset of target objects corresponding to each sub-time period from the set of target objects associated with the set of objects to be processed. Each sub-time period is obtained by dividing the target time period.
[0167] S1006, determine the current sub-time period from the various sub-time periods, obtain the current subset of objects to be processed corresponding to the current sub-time period, and obtain the current target object subset associated with the current subset of objects to be processed. Establish object node pairs based on the current target objects associated with each current object in the current subset of objects to be processed and the current target objects associated with each current object in the current subset of target objects.
[0168] S1008: Determine the duplicate node pairs and non-duplicate node pairs from each object node pair, remove duplicates from each duplicate node pair, and obtain the aggregate node pairs corresponding to each duplicate node pair. Based on each non-duplicate node pair and the aggregate node pairs, obtain the sub-bipartite graph corresponding to the current sub-time period. Iterate through each sub-time period in turn to obtain the sub-bipartite graph corresponding to each sub-time period.
[0169] S1010: Identify the same objects to be processed and the same target objects from the sub-binary graphs corresponding to each sub-time period. Associate the same objects to be processed in the sub-binary graphs corresponding to each sub-time period according to the chronological order of each sub-time period, and associate the same target objects in the sub-binary graphs corresponding to each sub-time period according to the chronological order of each sub-time period, thus obtaining the target association graph corresponding to the target time period.
[0170] S1012, the target association graph is input into the graph neural network for graph information extraction to obtain the semantic representation of each object node in the target association graph. Based on the semantic representation of each object node, the object nodes are classified to obtain the category of each object node.
[0171] In a specific embodiment, this data processing method is applied to a live streaming platform. Specifically, the live streaming platform collects data spanning a long time period, such as a year's worth of user live streaming viewing data. Then, based on this data, it establishes a viewing relationship graph between users and live streaming objects. Specifically, the platform first divides the year into multiple non-overlapping sub-time periods according to preset conditions, such as dividing it by month, resulting in 12 non-overlapping sub-time periods [T1, T2, ... T12]. Then, it obtains the user live streaming viewing data for each sub-time period, determines the node pairs formed between users and the viewed live streaming objects based on this data, and obtains a sub-bipartite graph corresponding to each sub-time period, resulting in 12 intersecting sub-time periods [G1, G2, ... G12]. Then, it identifies the same node from each sub-time period's bipartite graph and adds an edge between the same node in different sub-bipartite graphs to represent the similarity and correlation between the two nodes, thus obtaining a new graph network, i.e., the target live streaming viewing relationship graph. Compared to a bipartite graph built using user viewing data from a target time period, the target live stream viewing relationship graph has an increased number of edges and nodes, thus enhancing the information contained in its topology. This target live stream viewing relationship graph is then input into the GNN model corresponding to downstream tasks for processing. For example, it can be used to identify abnormal users watching the live stream or to recommend live stream content, thereby improving the accuracy of subsequent task processing, such as improving the accuracy of abnormal user identification and live stream content recommendation.
[0172] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0173] Based on the same inventive concept, this application also provides a data processing apparatus for implementing the data processing method described above. The solution provided by this apparatus is similar to the implementation scheme described in the above method; therefore, the specific limitations in one or more data processing apparatus embodiments provided below can be found in the limitations of the data processing method described above, and will not be repeated here.
[0174] In one embodiment, such as Figure 11 As shown, a data processing apparatus 1100 is provided, including: a data acquisition module 1102, a subset determination module 1104, a sub-bipartite graph generation module 1106, and a bipartite graph association module 1108, wherein:
[0175] Data acquisition module 1102 is used to acquire the set of objects to be processed corresponding to the target time period and the target set associated with the set of objects to be processed;
[0176] The subset determination module 1104 is used to determine the subset of objects to be processed corresponding to each sub-time period from the set of objects to be processed, and to determine the subset of target objects corresponding to each sub-time period from the set of target objects associated with the set of objects to be processed. Each sub-time period is obtained by dividing the target time period.
[0177] The sub-bipart graph generation module 1106 is used to generate a bipart graph based on the subset of objects to be processed and the subset of target objects associated with the subset of objects to be processed corresponding to each sub-time period, so as to obtain the sub-bipart graph corresponding to each sub-time period.
[0178] The bipartite graph association module 1108 is used to associate the matching objects in the sub-bipartite graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period. The target association graph is used to extract graph information through a graph neural network.
[0179] In one embodiment, the data processing apparatus 1100 further includes:
[0180] The merging module is used to merge the sub-bipart graphs corresponding to each sub-time period according to the time order of each sub-time period to obtain a merged bipartite graph. The sub-bipartite graphs in the merged bipartite graph are not connected. The merged bipartite graph is used as the target association graph corresponding to the target time period.
[0181] In one embodiment, the sub-bipart graph generation module 1106 is further configured to determine the current sub-time period from each sub-time period, obtain the current subset of objects to be processed corresponding to the current sub-time period, and obtain the current target object subset associated with the current subset of objects to be processed; establish each object node pair based on the current target objects associated with each current object in the current subset of objects to be processed and each current target object in the current subset of target objects; aggregate each object node pair to obtain the sub-bipart graph corresponding to the current sub-time period; and traverse each sub-time period in turn to obtain the sub-bipart graph corresponding to each sub-time period.
[0182] In one embodiment, the sub-bipart graph generation module 1106 is further configured to determine each duplicate node pair and each non-duplicate node pair from each object node pair, remove duplicates from each duplicate node pair to obtain the aggregate node pair corresponding to each duplicate node pair, and obtain the sub-bipart graph corresponding to the current sub-time period based on each non-duplicate node pair and the aggregate node pair.
[0183] In one embodiment, the bipartite graph association module 1108 is further configured to calculate the similarity of each object in the sub-bipartite graph corresponding to each sub-time period, and to use objects with similarity exceeding a preset threshold as matching objects; and to associate the matching objects in the sub-bipartite graph corresponding to each sub-time period to obtain the target association graph corresponding to the target time period.
[0184] In one embodiment, the bipartite graph association module 1108 is further configured to determine the same objects from the sub-bipartite graphs corresponding to each sub-time period, and associate the same objects in the sub-bipartite graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period.
[0185] In one embodiment, the bipartite graph association module 1108 is further configured to determine the same objects to be processed from the sub-bipartite graphs corresponding to each sub-time period; and to associate the same objects to be processed in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period to obtain the target association graph corresponding to the target time period.
[0186] In one embodiment, the bipartite graph association module 1108 is further configured to determine the same target object from the sub-bipartite graphs corresponding to each sub-time period; and associate the same target object in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period to obtain the target association graph corresponding to the target time period.
[0187] In one embodiment, the bipartite graph association module 1108 is further configured to determine the same objects to be processed and the same target objects from the sub-bipartite graphs corresponding to each sub-time period; associate the same objects to be processed in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period, and associate the same target objects in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period, thereby obtaining the target association graph corresponding to the target time period.
[0188] In one embodiment, the data processing apparatus 1100 further includes:
[0189] The classification module is used to input the target association graph into the graph neural network to extract graph information and obtain the semantic representation of each object node in the target association graph; based on the semantic representation of each object node, the object nodes are classified to obtain the category of each object node.
[0190] In one embodiment, the data processing apparatus 1100 further includes:
[0191] The transaction module is used to obtain the user object set and transaction object set corresponding to the target time period, where user objects in the user object set and corresponding transaction objects in the transaction object set have transaction relationships. It determines the user object subsets corresponding to each sub-time period from the user object set, and the transaction object subsets corresponding to each sub-time period from the associated transaction object sets of the user object set. Based on the user object subsets and associated transaction object subsets of each sub-time period, a bipartite graph is generated to obtain the transaction sub-bipartite graph for each sub-time period. Users are matched and associated in the transaction sub-bipartite graphs of each sub-time period to obtain the target transaction graph for the target time period. The target transaction graph is input into an abnormal user identification model for abnormal user identification, obtaining the abnormality degree of each user object in the target transaction graph, and identifying abnormal user objects from among the user objects based on the abnormality degree of each user object.
[0192] In one embodiment, the data processing apparatus 1100 further includes:
[0193] The recommendation module is used to obtain the video set corresponding to the target time period and the viewing object set associated with the video set; determine the video subset corresponding to each sub-time period from the video set, and determine the viewing object subset corresponding to each sub-time period from the viewing object set associated with the video set; generate a bipartite graph based on the video subset corresponding to each sub-time period and the viewing object subset associated with the video subset, to obtain the video recommendation sub-bipartite graph corresponding to each sub-time period; associate the matching videos in the video recommendation sub-bipartite graph corresponding to each sub-time period to obtain the target video graph corresponding to the target time period; input the target video graph into the video recommendation model to calculate the video recommendation, obtain the recommendation score of each video in the target video graph, and determine the target recommended video from each video based on the recommendation score of each video.
[0194] Each module in the aforementioned data processing device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the operations corresponding to each module.
[0195] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 12 As shown, this computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores a set of objects to be processed and associated target object sets. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements a data processing method.
[0196] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 13As shown, the computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When the computer program is executed by the processor, it implements a data processing method. The display unit of the computer device is used to form a visually visible image. It can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0197] Those skilled in the art will understand that Figure 12 or Figure 13 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0198] In one embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above method embodiments.
[0199] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.
[0200] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.
[0201] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data shall comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0202] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0203] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0204] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A data processing method, characterized in that, The method includes: Obtain the set of objects to be processed corresponding to the target time period and the set of target objects associated with the set of objects to be processed. The set of objects to be processed includes a video set, and the set of target objects includes a set of objects to be viewed. From the set of objects to be processed, determine the subset of objects to be processed corresponding to each sub-time period, and from the set of target objects associated with the set of objects to be processed, determine the subset of target objects corresponding to each sub-time period, wherein each sub-time period is obtained by dividing the target time period; Based on the subset of objects to be processed corresponding to each sub-time period and the subset of target objects associated with the subset of objects to be processed, a bipartite graph is generated to obtain the sub-bipartite graph corresponding to each sub-time period. This includes: determining the current sub-time period from the sub-time periods, obtaining the current subset of objects to be processed corresponding to the current sub-time period, and obtaining the current subset of target objects associated with the current subset of objects to be processed; establishing object node pairs based on each current object to be processed in the current subset of objects to be processed and the current target objects associated with each current object to be processed in the current subset of target objects; aggregating the object node pairs to obtain the sub-bipartite graph corresponding to the current sub-time period; and sequentially traversing each sub-time period to obtain the sub-bipartite graph corresponding to each sub-time period. The matching objects in the sub-bipart graphs corresponding to each sub-time period are associated to obtain the target association graph corresponding to the target time period. The target association graph is used for graph information extraction through a graph neural network, including: merging the sub-bipart graphs corresponding to each sub-time period according to the time order of each sub-time period to obtain a merged bipartite graph, wherein the sub-bipartite graphs in the merged bipartite graph are not connected; using the merged bipartite graph as the target association graph corresponding to the target time period, wherein the target association graph includes a target video graph, which is used as input to a video recommendation model for video recommendation calculation to obtain the recommendation score of each video in the target video graph, and determining the target recommended video from the videos based on the recommendation score of each video.
2. The method according to claim 1, characterized in that, The step of aggregating the various object node pairs to obtain the sub-bipartite graph corresponding to the current sub-time period includes: From the various object node pairs, determine each duplicate node pair and each non-duplicate node pair, remove duplicates from the duplicate node pairs, and obtain the aggregate node pairs corresponding to each duplicate node pair. Based on the non-repeating node pairs and the aggregated node pairs, a sub-bipart graph corresponding to the current sub-time period is obtained.
3. The method according to claim 1, characterized in that, The step of associating the matching objects in the sub-bipart graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period includes: Calculate the similarity of each object in the sub-bipart graph corresponding to each sub-time period, and take the objects whose similarity exceeds a preset threshold as matching objects; The matching objects are associated in the sub-binary graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period.
4. The method according to claim 1, characterized in that, The step of associating the matching objects in the sub-bipart graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period includes: Identify the same objects in the sub-binary graphs corresponding to each of the sub-time periods, and associate the same objects in the sub-binary graphs corresponding to each of the sub-time periods to obtain the target association graph corresponding to the target time period.
5. The method according to claim 4, characterized in that, The step of identifying identical objects from the sub-binary graphs corresponding to each of the sub-time periods, and associating these identical objects in the sub-binary graphs corresponding to each of the sub-time periods to obtain the target association graph corresponding to the target time period includes: Identify the same objects to be processed from the sub-binary diagrams corresponding to each of the sub-time periods; In the sub-binary graphs corresponding to each sub-time period, the same objects to be processed are associated according to the time order of each sub-time period to obtain the target association graph corresponding to the target time period.
6. The method according to claim 4, characterized in that, The step of identifying identical objects from the sub-binary graphs corresponding to each of the sub-time periods, and associating these identical objects in the sub-binary graphs corresponding to each of the sub-time periods to obtain the target association graph corresponding to the target time period includes: Identify the same target object from the sub-binary diagrams corresponding to each of the sub-time periods; In the sub-binary graphs corresponding to each sub-time period, the same target objects are associated according to the time order of each sub-time period to obtain the target association graph corresponding to the target time period.
7. The method according to claim 4, characterized in that, The step of identifying identical objects from the sub-binary graphs corresponding to each of the sub-time periods, and associating these identical objects in the sub-binary graphs corresponding to each of the sub-time periods to obtain the target association graph corresponding to the target time period includes: The same object to be processed and the same target object are identified from the sub-bipart diagrams corresponding to each of the sub-time periods; In the sub-binary graphs corresponding to each sub-time period, the same objects to be processed are associated according to the time order of each sub-time period, and the same target objects are associated in the sub-binary graphs corresponding to each sub-time period according to the time order of each sub-time period, thus obtaining the target association graph corresponding to the target time period.
8. The method according to claim 1, characterized in that, After associating the matching objects in the sub-bipart graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period, the method further includes: The target association graph is input into the graph neural network to extract graph information, thereby obtaining the semantic representation of each object node in the target association graph. Based on the semantic representations corresponding to each object node, object nodes are classified to obtain the categories corresponding to each object node.
9. The method according to claim 1, characterized in that, The method further includes: Obtain the video set corresponding to the target time period and the set of viewing objects associated with the video set; From the video set, determine the video subsets corresponding to each sub-time period, and from the viewing object set associated with the video set, determine the viewing object subsets corresponding to each sub-time period; Based on the video subsets corresponding to each sub-time period and the viewing object subsets associated with the video subsets, a bipartite graph is generated to obtain the video recommendation sub-bipartite graphs corresponding to each sub-time period. By associating the matched videos in the video recommendation sub-binary graph corresponding to each sub-time period, a target video graph corresponding to the target time period is obtained. The target video graph is input into the video recommendation model to perform video recommendation calculation, and the recommendation score of each video in the target video graph is obtained. Based on the recommendation score of each video, the target recommended video is determined from the videos.
10. A data processing apparatus, characterized in that, The device includes: The data acquisition module is used to acquire the set of objects to be processed corresponding to the target time period and the set of target objects associated with the set of objects to be processed. The set of objects to be processed includes a video set, and the set of target objects includes a set of objects to be viewed. The subset determination module is used to determine the subset of objects to be processed corresponding to each sub-time period from the set of objects to be processed, and to determine the subset of target objects corresponding to each sub-time period from the set of target objects associated with the set of objects to be processed, wherein each sub-time period is obtained by dividing the target time period; The sub-bipart graph generation module is used to generate a bipartite graph based on the subset of objects to be processed corresponding to each sub-time period and the subset of target objects associated with the subset of objects to be processed, to obtain the sub-bipartite graph corresponding to each sub-time period. The module includes: determining the current sub-time period from the sub-time periods, obtaining the current subset of objects to be processed corresponding to the current sub-time period, and obtaining the current subset of target objects associated with the current subset of objects to be processed; establishing object node pairs based on each current object to be processed in the current subset of objects to be processed and the current target objects associated with each current object to be processed in the current subset of target objects; aggregating the object node pairs to obtain the sub-bipartite graph corresponding to the current sub-time period; and sequentially traversing each sub-time period to obtain the sub-bipartite graph corresponding to each sub-time period. The bipartite graph association module is used to associate matching objects in the sub-bipartite graphs corresponding to each sub-time period to obtain a target association graph corresponding to the target time period. The target association graph is used for graph information extraction through a graph neural network, including: merging the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period to obtain a merged bipartite graph, wherein the sub-bipartite graphs in the merged bipartite graph are not connected; using the merged bipartite graph as the target association graph corresponding to the target time period, wherein the target association graph includes a target video graph, the target video graph is used to input into a video recommendation model for video recommendation calculation, to obtain the recommendation score corresponding to each video in the target video graph, and to determine the target recommended video from the videos based on the recommendation score corresponding to each video.
11. The apparatus according to claim 10, characterized in that, The sub-bipart graph generation module is further configured to determine each duplicate node pair and each non-duplicate node pair from each object node pair, remove duplicates from each duplicate node pair to obtain the aggregate node pair corresponding to each duplicate node pair, and obtain the sub-bipart graph corresponding to the current sub-time period based on each non-duplicate node pair and the aggregate node pair.
12. The apparatus according to claim 10, characterized in that, The bipartite graph association module is also used to calculate the similarity of each object in the sub-bipartite graph corresponding to each sub-time period, and to take the object with a similarity exceeding a preset threshold as the matching object; and to associate the matching object in the sub-bipartite graph corresponding to each sub-time period to obtain the target association graph corresponding to the target time period.
13. The apparatus according to claim 10, characterized in that, The bipartite graph association module is further configured to identify the same objects from the sub-bipartite graphs corresponding to each sub-time period, and associate the same objects in the sub-bipartite graphs corresponding to each sub-time period to obtain the target association graph corresponding to the target time period.
14. The apparatus according to claim 13, characterized in that, The bipartite graph association module is further configured to identify the same objects to be processed from the sub-bipartite graphs corresponding to each sub-time period; and to associate the same objects to be processed in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period to obtain the target association graph corresponding to the target time period.
15. The apparatus according to claim 13, characterized in that, The bipartite graph association module is further configured to determine the same target objects from the sub-bipartite graphs corresponding to each sub-time period; and to associate the same target objects in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period to obtain the target association graph corresponding to the target time period.
16. The apparatus according to claim 13, characterized in that, The bipartite graph association module is further configured to determine the same objects to be processed and the same target objects from the sub-bipartite graphs corresponding to each sub-time period; associate the same objects to be processed in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period; and associate the same target objects in the sub-bipartite graphs corresponding to each sub-time period according to the time order of each sub-time period, thereby obtaining the target association graph corresponding to the target time period.
17. The apparatus according to claim 10, characterized in that, The device further includes: The classification module is used to input the target association graph into the graph neural network to extract graph information and obtain the semantic representation of each object node in the target association graph; and to classify the object nodes based on the semantic representation of each object node to obtain the category of each object node.
18. The apparatus according to claim 10, characterized in that, The device further includes: The recommendation module is used to obtain the video set corresponding to the target time period and the viewing object set associated with the video set; determine the video subset corresponding to each sub-time period from the video set, and determine the viewing object subset corresponding to each sub-time period from the viewing object set associated with the video set; generate a bipartite graph based on the video subset corresponding to each sub-time period and the viewing object subset associated with the video subset, to obtain the video recommendation sub-bipartite graph corresponding to each sub-time period; associate the matching videos in the video recommendation sub-bipartite graph corresponding to each sub-time period to obtain the target video graph corresponding to the target time period; input the target video graph into the video recommendation model to perform video recommendation calculation, obtain the recommendation score corresponding to each video in the target video graph, and determine the target recommended video from the videos based on the recommendation score corresponding to each video.
19. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 9.
20. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 9.
21. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 9.
Citation Information
Patent Citations
Method and device for allocating embedded vectors to nodes in bipartite graph
CN111176838A
Scientific article recommendation algorithm based on bipartite graph
CN112948697A