Data Association Relationship Determination Method, System, Device, Medium and Program Product
Through graph sampling and target polynomial representation of frequency domain convolution kernel, the problem of accuracy and efficiency of association determination in hyperscale graph data is solved, and efficient and accurate data association recognition is achieved.
Patent Information
- Application Number
- CN202510162788.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-14
- Publication Date
- 2025-06-03
- Estimated Expiration
- 2045-02-14
AI Technical Summary
When processing ultra-large-scale graph data, the prior art is difficult to ensure the determination accuracy of data association relationships and task execution efficiency at the same time, and cannot meet user needs.
The graph sampling method is used to collect small batch nodes from large-scale graph data for processing, and the frequency domain convolution kernel is represented by the target polynomial to approximate the spectrum filter of the graph neural network to reduce computing overhead and memory consumption.
By reducing the number of nodes and edges processed, the memory requirements and computational costs of large-scale graph data are reduced, while maintaining the characteristics of local convolution operations, ensuring the accuracy and efficiency of the results of the associated task.
Smart Images

Figure CN119646525B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of artificial intelligence, and particularly to a method, a system, an electronic device, a non-volatile storage medium, and a computer program product for determining data association relationships. Background Art
[0002] With the rapid development of the field of artificial intelligence technology, the data involved in the execution of machine learning tasks includes not only data represented by Euclidean representations arranged in an orderly manner, but also data represented by complex non-Euclidean data, such as graph data. This type of data contains the dependency relationships between data, which leads to the need to determine data association relationships.
[0003] With the rapid growth of the scale of graph data, in the process of determining data association relationships for ultra-large graph data in related technologies, it is impossible to ensure both the accuracy of determining association relationships and the task execution efficiency, and thus cannot meet the user's needs.
[0004] In view of this, on the basis of improving the task execution efficiency of determining data association relationships, ensuring the accuracy of the final output data association relationship results is a technical problem that needs to be solved by those skilled in the art.
[0005] It should be noted that the information disclosed in the above background art section is only used to enhance the understanding of the background of the present application, and thus may include information that does not constitute the prior art known to those of ordinary skill in the art. Summary of the Invention
[0006] The present invention provides a method, a system, an electronic device, a non-volatile storage medium, and a computer program product for determining data association relationships, which can ensure the accuracy of the data association relationship determination results on the basis of improving the task execution efficiency of determining data association relationships.
[0007] To solve the above technical problems, the present invention provides the following technical solutions:
[0008] On the one hand, the present invention provides a method for determining data association relationships, including:
[0009] Receive a data association task that includes at least data to be associated and associated data information, and use the source data of the data to be associated and the associated data information as node features and input them into a pre-trained association relationship recognition model; wherein, the association relationship recognition model is based on a graph neural network model and uses a target polynomial to represent a frequency domain convolution kernel; perform graph sampling on the association relationship recognition model, aggregate the feature information of each sampled node and its adjacent neighbor nodes based on the target polynomial, and determine the association relationship recognition results between the sampled nodes corresponding to the current graph sampling according to the current aggregated features; according to each association relationship recognition result, determine target data with an association relationship for the data to be associated in the associated data information.
[0010] In a first exemplary implementation manner, aggregating the feature information of each sampled node and its adjacent neighbor nodes based on the target polynomial includes: for the current sampled node, using the edge features between the neighbor nodes of the current layer and the adjacent layer, the input feature of the current layer, and the weight parameter of the current layer as the input of the target polynomial, and using the calculation result of the target polynomial as the output feature of the current layer; wherein, the input feature of the current layer is the output feature of the previous layer; determine the aggregated feature of the current sampled node according to the output feature of the last layer, and obtain the current aggregated feature according to the aggregated features of the sampled nodes of the current graph sampling.
[0011] In a second exemplary implementation manner, the target polynomial is a Chebyshev polynomial, and using the edge features between the neighbor nodes of the current layer and the adjacent layer, the input feature of the current layer, and the weight parameter of the current layer as the input of the target polynomial includes: generating an adjacency list according to the edge features between the neighbor nodes of the adjacent layer, and performing a Laplace transform on the adjacency list to obtain a Laplace matrix; inputting the Laplace matrix into the Chebyshev polynomial to approximate the adjacency matrix of wavelet calculation.
[0012] In a third exemplary implementation manner, using the edge features between the neighbor nodes of the current layer and the adjacent layer, the input feature of the current layer, and the weight parameter of the current layer as the input of the target polynomial includes: multiplying the Laplace matrix corresponding to the neighbor nodes of the current layer and the adjacent layer by the input feature of the current layer to obtain the node feature of the current layer; using the product result of the node feature and the weight parameter of the current layer as the feature information of the current layer and inputting it into the target polynomial.
[0013] In a fourth exemplary embodiment, the edge features between the current layer and the neighbor nodes of the adjacent layer, the input features of the current layer, and the weight parameters of the current layer are used as the inputs of the target polynomial, including: pre-constructing an adjacency matrix table, an input feature matrix table, and an output feature matrix table; the adjacency matrix table includes a first region, a second region, a third region, and a fourth region, the first region and the third region, the second region and the fourth region are aligned vertically, the first region and the second region are in the same horizontal direction, and the third region and the fourth region are in the same direction; the input feature matrix table includes a fifth region and a sixth region aligned vertically, and the output feature matrix table includes a seventh region and an eighth region aligned vertically; the sum of the matrix products of the adjacency matrix table and the input feature table is stored in the corresponding region of the output feature matrix table; the feature information of the neighbor nodes with connected edges is stored in the second region, and the input features of the current layer are stored in the sixth region; the information in the seventh region of the output feature matrix table is read as the input of the target polynomial.
[0014] In a fifth exemplary embodiment, aggregating the feature information of each sampling node and its adjacent neighbor nodes based on the target polynomial includes: generating sampled subgraph data according to each sampling node and the multi-order neighbor nodes of each sampling node; using a direction from outside to inside, based on the target polynomial, sequentially passing the node features of each layer of the sampled subgraph data to the node features of the previous layer until reaching each sampling node, to obtain the aggregated features of each sampling node corresponding to the current graph sampling.
[0015] In a sixth exemplary embodiment, determining the recognition result of the association relationship between each sampling node corresponding to the current graph sampling based on the current aggregated features includes: inputting the current aggregated features corresponding to the current graph sampling into a fully connected layer, and obtaining the recognition result of the association relationship between each sampling point corresponding to the current graph sampling according to the output of the fully connected layer.
[0016] In a seventh exemplary embodiment, it further includes: when receiving a calculation scale adjustment instruction, obtaining the target sampling number and / or the target sampling layer number by parsing the calculation scale adjustment instruction; based on the target sampling layer number and the target sampling number, sampling the corresponding number of nodes in the target layer of the association relationship recognition model to obtain the sampling nodes of the current graph sampling.
[0017] In an eighth exemplary embodiment, the training process of the association relationship recognition model includes: obtaining an association task graph data training set; each graph sample data in the association task graph data training set has a label for annotating the association relationship; using each graph sample data in the association task graph data training set as a node, performing graph sampling on the association task graph data training set to obtain sampling data; constructing a plurality of training subprocesses, each training subprocess reads a corresponding number of sampling nodes and their adjacent neighbor nodes from the sampling data according to a preset batch size, aggregates the feature information of each sampling node and its adjacent neighbor nodes based on a target polynomial, and determines the association relationship recognition result between each sampling node corresponding to the current graph sampling according to the current aggregated feature; according to the association relationship recognition results of each training subprocess, obtaining the predicted labels of each graph sample data in the association task graph data training set.
[0018] The present invention also provides an electronic device, including a processor, and the processor is used to implement the steps of the data association relationship determination method as described in any one of the previous items when executing a computer program stored in a memory.
[0019] The present invention also provides a non-volatile storage medium, on which a computer program is stored, and the computer program is used to implement the steps of the data association relationship determination method as described in any one of the previous items when executed by a processor.
[0020] The present invention also provides a computer program product, including a computer program / instructions, and the computer program / instructions are used to implement the steps of the data association relationship determination method as described in any one of the previous items when executed by a processor.
[0021] The present invention finally also provides a data association relationship determination system, including a first computing device and a second computing device; the first computing device is connected to the second computing device through a target bus, and the second computing device has parallel computing capabilities; wherein, the first computing device is configured to receive a data association task including at least to-be-associated data and association data information, and send the to-be-associated data and the association data information to the second computing device through a target bus interface, and the second computing device is configured to perform graph sampling on the association relationship recognition model, aggregate the feature information of each sampling node and its adjacent neighbor nodes based on the target polynomial, determine the association relationship recognition result between each sampling node corresponding to the current graph sampling according to the current aggregated feature, and send the association relationship recognition result to the first computing device through the target bus interface; the association relationship recognition model is based on a graph neural network model and uses the target polynomial to represent a frequency domain convolution kernel; the first computing device is further configured to determine target data having an association relationship for the to-be-associated data in the association data information according to each association relationship recognition result.
[0022] In a first exemplary embodiment, the second computing device includes a controller, a data memory, and an output result buffer; the controller, the data memory, and the output result buffer communicate through a network on a chip, and the second computing device communicates with the target bus interface through the network on a chip; wherein, the controller is configured to perform graph sampling on the association relationship recognition model, aggregate the feature information of each sampled node and its adjacent neighbor nodes based on the target polynomial, and determine the association relationship recognition result between the sampled nodes corresponding to the current graph sampling according to the current aggregated features; the data memory is configured to store the feature data corresponding to the sampled nodes and their neighbor nodes sent by the first computing device, and the weight parameters of each layer of the association relationship recognition model; the output result buffer is configured to store the association relationship recognition results between the sampled nodes obtained by each graph sampling.
[0023] In a second exemplary embodiment, the controller of the second computing device includes an instruction executor, a processor array, a non-linear processor, an intermediate result buffer, and a weight data buffer; the instruction executor is respectively connected to the data memory, the processor array, and the non-linear processor, the processor array is respectively connected to the weight data buffer, the intermediate result buffer, and the non-linear processor, and the intermediate result buffer is connected to the output result buffer; the weight data buffer is configured to read the weight parameters of each layer of the association relationship recognition model from the data memory; the instruction executor, upon receiving a write start instruction, reads the adjacency list from the data memory and sends an adjacency matrix generation instruction carrying the adjacency list to the processor array, and the processor array performs Laplace transform calculation on the adjacency list and stores the adjacency matrix in the intermediate result buffer; the instruction executor reads the input features of each layer from the data memory and reads the weight parameters of the corresponding layer from the weight data buffer, and at the same time sends a node feature information generation instruction carrying the same to the processor array, and the processor array calculates the product result of the input features and the weight parameters of the current layer and stores it as the node feature information of the current layer in the intermediate result buffer; the instruction executor sends an aggregated feature generation instruction to the processor array, and the processor array inputs the node feature information and the adjacency matrix into the target polynomial for calculation, outputs the calculation result of the target polynomial to the non-linear processor for non-linear processing to obtain the aggregated feature of the current layer, and stores the aggregated feature of the current layer in the intermediate result buffer.
[0024] The advantages of the technical solution provided by the present invention are as follows: when performing a data association task, a small batch of nodes are collected from large-scale graph data through a graph sampling method for processing, and at the same time, the features of the neighbor nodes of the sampled nodes are involved in the calculation. This can not only reduce the memory requirements for large-scale graph data by reducing the number of nodes and edges to be processed, but also maintain the characteristics of local convolution operations, ensuring the accuracy of the association task results. Further, the association relationship recognition model uses a target polynomial to replace the convolution kernel in the spectral domain, and approximates the spectral filter through polynomial approximation, thereby reducing the computational overhead during the execution of the association task, improving the execution efficiency of the data association task, reducing the computational cost and memory consumption during the execution of the association task, and thus being able to ensure a high-precision data association relationship result for the final output on the basis of improving the execution efficiency of the data association relationship determination task.
[0025] In addition, the present invention also provides a corresponding implementation system, electronic device, non-volatile storage medium, and computer program product for the data association relationship determination method, further making the method more practical, and the system, electronic device, non-volatile storage medium, and computer program product have corresponding advantages.
[0026] The technical features mentioned above, the technical features to be mentioned below, and the technical features shown separately in the drawings can be arbitrarily combined with each other as long as the combined technical features are not contradictory. All feasible feature combinations are the technical contents clearly recorded in this article. Any one of the multiple sub-features included in the same statement can be independently applied without necessarily being applied together with other sub-features. It should be understood that the above general description and the following detailed description are only exemplary and cannot limit the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] In order to more clearly illustrate the technical solutions of the present invention or related technologies, the following will briefly introduce the drawings required for use in the description of the embodiments or related technologies. Obviously, the drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0028] Figure 1 It is a schematic flowchart of a method for determining a data association relationship provided by the present invention;
[0029] Figure 2 It is a schematic diagram of an exemplary model structure of an association relationship recognition model provided by the present invention;
[0030] Figure 3 It is a schematic diagram of a graph convolution operation in an exemplary application scenario provided by the present invention;
[0031] Figure 4 Schematic diagram of a two-dimensional convolution operation in an exemplary application scenario provided by the present invention;
[0032] Figure 5 Schematic diagram of graph sampling in an exemplary application scenario provided by the present invention;
[0033] Figure 6 Schematic diagram of feature aggregation in an exemplary application scenario provided by the present invention;
[0034] Figure 7 Schematic diagram of feature aggregation in another exemplary application scenario provided by the present invention;
[0035] Figure 8 Schematic diagram of message propagation in an exemplary application scenario provided by the present invention;
[0036] Figure 9 Schematic diagram of the training process of the association relationship recognition model provided by the present invention in an exemplary application scenario;
[0037] Figure 10 Structure framework diagram of the data association relationship determination device provided by the present invention under an exemplary embodiment;
[0038] Figure 11 Structure diagram of an exemplary embodiment of the electronic device provided by the present invention;
[0039] Figure 12 Structure diagram of an exemplary embodiment of the data association relationship determination system provided by the present invention;
[0040] Figure 13 Schematic diagram of the structure framework of an exemplary second computing device provided by the present invention;
[0041] Figure 14 Schematic diagram of the data processing flow of an exemplary controller provided by the present invention. Detailed implementation manners
[0042] In order to enable those skilled in the art to better understand the technical solutions of the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific implementation manners. Among them, the terms "first", "second", "third", "fourth", etc. in the specification and the above-mentioned drawings are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion. The term "exemplary" means "serving as an example, embodiment or illustration". Any embodiment described as "exemplary" here does not have to be construed as superior to or better than other embodiments.
[0043] In the field of artificial intelligence technology, machine learning tasks such as image classification, speech recognition, and natural language processing process Euclidean data with a certain size, dimension, and ordered arrangement. There is also a class of machine learning tasks that process data represented by complex non-Euclidean data, such as graph data. This type of data not only includes the data itself but also the dependencies between the data, such as social networks, protein molecular structures, and customer data in e-commerce platforms. For related fields of such data and applications, such as social media, e-commerce, knowledge graphs, etc., related technologies usually use graph neural networks to perform corresponding tasks.
[0044] As the scale of graph data continues to increase, the scale of graph neural networks also continues to increase, which requires higher computing power and storage of hardware, and the software implementation efficiency of its algorithms is very low. For ultra-large-scale graph data, although related technologies solve their demand for computing resources through hardware acceleration methods, they cannot guarantee prediction accuracy. It can be seen that there are still problems that cannot balance computing power requirements, memory requirements, and prediction accuracy loss when related technologies use graph neural networks to process data association tasks. In view of this, in the process of identifying data association relationships, the present invention controls the number of nodes and edges of the graph currently participating in the calculation through graph sampling, reduces the computing cost and memory consumption, and at the same time uses the target polynomial calculation method to approximately calculate the wavelet calculation in the frequency domain of the graph neural network to ensure the task execution accuracy. This not only accelerates the processing efficiency of the association relationship recognition model for graph data but also ensures the processing accuracy of the association relationship recognition model for graph data by introducing neighbor node features. Thus, on the basis of improving the execution efficiency of the data association relationship determination task, the accuracy of the finally output data association relationship result can be guaranteed. After introducing the technical solution of the present invention, various non-limiting embodiments of the present invention will be described in detail below. To better illustrate the present invention, numerous specific details are given in the following specific embodiments. Those skilled in the art should understand that the present invention can also be implemented without these specific details. In other instances, methods, means, elements, and circuits well-known to those skilled in the art are not described in detail to highlight the gist of the present invention.
[0045] First, please refer to Figure 1 , Figure 1 which is a schematic flowchart of a method for determining a data association relationship provided in this embodiment. This embodiment may include the following content:
[0046] S101: Receive a data association task including at least to-be-associated data and associated data information, and use the source data of the to-be-associated data and the associated data information as node features and input them into a pre-trained association relationship recognition model.
[0047] In this step, the data association task is a user task to be executed. When the user issues this task, at least the data to be associated and the associated data information need to be issued simultaneously. The data to be associated is the execution target of the data association task, that is, the association relationship identification is carried out for this target. The associated data information is the execution scope of the data association task, that is, within which scope to identify the data having an association relationship with the data to be associated. The associated data information is usually a series of data, such as a data set or a database. For the convenience of description, each data in it is defined as source data. The data to be associated and the associated data information can be text data, image data, audio-video data. The data association task can be the association relationship between text data, such as the citation relationship between papers, or the association relationship between text data and audio-video data, such as the emotion recognition task, the subtitle matching task. The emotion recognition task is to determine the emotion recognition result from the emotion description text database according to the audio data or video data. It can also be the association relationship between text data and image data, such as the gene annotation task based on gene expression data, the text-gene matching task. Of course, it can also be the association relationship recognition between audio-video data and between image data, such as the similar video retrieval task and the similar image retrieval task in the duplicate checking task.
[0048] In this embodiment, the association relationship recognition model is built based on a graph neural network model, that is, its essence is a graph neural network model. The association relationship recognition model can represent a set of entities and the relationships between each entity. The entities are the nodes of the graph, and the relationships between entities form the edges of the graph. If there is an edge between the two, it indicates that there is a connection relationship between the two entities. The association relationship recognition model can be expressed as G = {V, E}, where G is the association relationship recognition model, V represents the set of nodes, and E represents the set of edges. Taking a social network as an example, users can be used as nodes, and the friendship relationship between users can be used as edges. Correspondingly, the source data of the data to be associated and the associated data information are used as the node features of the association relationship recognition model. The association relationship recognition model identifies which source data in the data to be associated and the associated data information has an edge by performing graph data processing on the source data of the data to be associated and the associated data information, so as to determine the target data associated with the data to be associated. The target data is the source data in the associated data information that has an association relationship with the data to be associated. Taking the emotion task as an example, the association relationship recognition model can process the unstructured information in the emotion data, such as emotion tendency, emotion intensity, etc. These information exist in the form of nodes and edges in the graph structure. By mapping the emotion data into the graph neural network structure, the powerful ability of the graph neural network structure of the association relationship recognition model is used to capture the complex relationships and patterns between emotions. Further, each node of the association relationship recognition model also has the degree of the vertex, that is, the number of edges associated with the node. In a directed graph, the degree of a node is equal to the sum of the in-degree and out-degree of the node. The in-degree of a node is the number of directed edges with the node as the end point, and the out-degree of a node is the number of directed edges with the node as the starting point. For an undirected graph, the degree of a node is equal to the in-degree of the node and also equal to the out-degree of the node.
[0049] Exemplarily, the association relationship recognition model may at least include an input layer, a graph convolution module, and an output layer. Among them, the graph convolution module is a combination of multiple groups of graph convolution layers and activation function layers, that is, an activation function layer is connected after each graph convolution layer, and the activation function layer of the current layer is connected to the graph convolution layer of the next layer. The activation function layer may be, for example, Relu (Linear rectification function), as Figure 2 shown, the graph convolution module may include a first graph convolution layer, a first activation function layer, a second graph convolution layer, and a second activation function layer, and the output layer may be a fully connected layer. The graph structure data and the node feature data corresponding to the data to be associated and each source data are input into the first graph convolution layer through the input layer, as Figure 3As shown in the figure, the first graph convolutional layer samples the features of the surrounding nodes of the current node using the nearest neighbor function, calculates the average value, and processes the obtained intermediate result through the first activation function layer. Then, the output of the first activation function layer is input to the second graph convolutional layer until the correlation relationship between the data to be associated and each source data is output. The graph convolutional layer of the graph convolutional module is different from the two-dimensional convolutional layer. During the processing, the neighbor nodes of the current node are uncertain and disordered, belonging to non-Euclidean data, while the two-dimensional convolutional layer samples the features of the surrounding nodes using a convolutional kernel and calculates the weighted average value. The number of its adjacent nodes is determined and ordered, belonging to Euclidean data, such as Figure 4 shown in the figure. To implement the aggregation of node features, the graph convolutional module also needs to perform graph sampling operations. Correspondingly, it may also include the network model structure used for corresponding graph sampling. Taking DGL sampling as an example, the graph convolutional module may also include the Blocks subgraph structure of DGL, which is a unidirectional subgraph. Of course, the correlation relationship recognition model can use any graph neural network model structure, and the present invention does not make any limitations in this regard. Correspondingly, any matching training method can be used to train the correlation relationship recognition model accordingly.
[0050] Among them, the frequency-domain processing process of the graph neural network is based on the graph Fourier transform to realize the conversion of the graph signal from the spatial domain to the frequency domain, and then perform graph convolution operations in the frequency domain. The graph Fourier transform uses the eigenvectors and eigenvalues of the graph Laplacian matrix as the basis functions and frequencies to convert the graph signal from the spatial domain to the frequency domain. When calculating in the frequency domain, the spatial-domain signal and the convolution kernel are converted to the frequency domain for multiplication operations, and then the result is converted back to the spatial domain through the inverse Fourier transform. For example, GCN (Graph Convolutional Network) converts the input signal and convolution kernel parameters to the frequency domain through the graph Fourier transform, multiplies them, and then obtains the convolution result through the inverse transform. Although the association relationship recognition model can adopt this frequency-domain calculation method, however, as the scale of the graph data to be processed increases, that is, the number of source data contained in the association relationship information is increasing, the frequency-domain calculation of the graph structure of the association relationship recognition model becomes more and more difficult. In order to meet the processing of large-scale data, the scale of the association relationship recognition model will increase accordingly. As the number of layers of the association relationship recognition model increases, the calculation cost increases exponentially. Saving the information of the entire graph and the representation of each node in each layer requires a large amount of memory space, which leads to a large demand for computing resources and memory resources. And if the method of not using the information of the entire graph and the representation of each node in each layer is used, the execution accuracy of the data association task will be lost. Traditional spectral-domain graph convolution is a graph convolution method defined in the frequency domain. Although it can intuitively understand graph convolution and has good local properties, etc., due to the need to perform Fourier transform, inverse transform, and matrix decomposition, these frequency-domain operations with relatively large computational overheads, the computational complexity of the basic spectral-domain graph convolution is usually high, especially when dealing with large graph data. In addition, parameters in the spectral-domain method, such as the convolution kernel size, sampling method, etc., have a great impact on performance, but adjusting these parameters usually requires certain experience or attempts and is difficult to intuitively understand. As the amount of graph-structured data is too large, it is difficult to directly operate on the parameters of the convolution kernel and feature decomposition is needed. Although the graph wavelet basis can be calculated using graph Laplacian eigen-decomposition, the entire graph-structured adjacency matrix is generally an N×N matrix, where N is the order of the graph-structured adjacency matrix. When the network uses the wavelet calculation method to calculate the entire graph-structured adjacency matrix, it takes time, occupies too much memory and video memory resources, etc., and it is impossible to complete the calculation of the adjacency matrix for ultra-large graph data. It can be seen that this method also has a high calculation cost and cannot process unconnected graphs.Therefore, in order to balance the efficiency, computational cost, and task accuracy of the association relationship recognition model in performing data association tasks, the association relationship recognition model of the present invention uses a target polynomial to represent the frequency-domain convolution kernel. The target polynomial can be, for example, a Bernstein polynomial, a Chebyshev polynomial, or the least squares method, which can represent the convolution kernel in the spectral domain in the form of a polynomial. By using the target polynomial as an approximation function, the complex calculation of the original function can be transformed into a simple calculation of the polynomial, thereby accelerating the calculation speed and achieving efficient convolution operations. That is, by approximating the spectral filter through polynomial approximation and approximating the convolution kernel in the spectral domain through the target polynomial to optimize the traditional spectral-domain convolution operation, the complex eigenvalue decomposition process is avoided, the computational complexity and the amount of calculation are reduced, thereby reducing the computational overhead and improving the task execution efficiency. In addition, the polynomial approximation method not only reduces the computational complexity but also retains the ability of local aggregation, making the association relationship recognition model more effective in processing graph data and improving the accuracy of the association relationship finally output by the association relationship recognition model. In addition, using the target polynomial instead of the convolution kernel in the spectral domain can not only replace the time-consuming and resource-consuming wavelet calculation but also facilitate the application on an FPGA (Field Programmable Gate Array) with limited resources.
[0051] S102: Perform graph sampling on the association relationship recognition model, aggregate the feature information of each sampled node and its adjacent neighbor nodes based on the target polynomial, and determine the association relationship recognition results between the sampled nodes corresponding to the current graph sampling according to the current aggregated features.
[0052] Based on the approximation of the wavelet calculation in the frequency domain of the graph neural network using the target polynomial calculation method in this embodiment, in order to further reduce the requirements for computing resources and storage resources during the data processing of the association relationship recognition model, this step also performs graph sampling on the association relationship recognition model, significantly reducing the memory requirements and computing requirements for large-scale graphs by processing small batches of nodes one by one. To further improve the accuracy of the data association task execution and maintain the characteristics of local convolution operations, multiple neighbor node features are also obtained simultaneously to participate in the graph convolution operation, making full use of the local information of each node. Any graph sampling method can be used for graph sampling. The graph can use DGL (Deep Graph Library, a graph sampler) to perform graph sampling on the association relationship recognition model. Of course, other sampling methods can also be adopted, such as local message compensation. This method can compensate for the problem of missing neighbors of edge nodes caused by subgraph sampling, ensuring that the performance of the model trained on the subgraph is equivalent to that of the full graph and can solve the problem of accuracy loss. Through graph sampling, the association relationship recognition model can significantly reduce the number of nodes and edges to be processed, thereby reducing the computing cost and memory consumption and effectively coping with the computing power and memory problems. In addition, although the graph is essentially a sparse structure, through graph sampling, the graph data can be transformed into a format more suitable for computing devices such as FPGAs and graphics processors to process, improving the computing efficiency and thus alleviating the problems caused by hardware limitations to a certain extent. By reducing the computing complexity and memory occupancy, the data association task can be completed within a reasonable time, and high performance can be maintained even in resource-constrained environments.
[0053] Among them, when sampling the association relationship recognition model, for example, L layers can be sampled, and dozens of nodes are sampled in each layer. To embed the target node, which is the sampled node participating in the current calculation, to obtain a low-dimensional vector representation of the graph, the convolutional kernel in the spectral domain is expressed using the target polynomial, and the node features of each layer are continuously aggregated to the target node to obtain the aggregated feature of the target node. The aggregation operation is sequentially performed on each sampled node obtained from the first graph sampling, and the aggregated features of all sampled nodes obtained from this graph sampling are used as the current aggregated feature, that is, the aggregated feature obtained from this graph sampling is defined as the current aggregated feature. Based on the current aggregated feature information, the label of the sampled node obtained from this graph sampling can be predicted, that is, whether there is an association relationship between each sampled node. This process is repeated until all nodes of the association relationship recognition model have been sampled, and the labels of all nodes of the association relationship recognition model are obtained.
[0054] S103: According to each association relationship recognition result, determine the target data with an association relationship for the data to be associated in the associated data information.
[0055] After obtaining the labels of the nodes of the association relationship recognition model in the previous step, determine the data associated with the data to be associated according to whether there is an association relationship between the nodes. Exemplarily, a fully connected layer can be used to identify graph tasks for the features. Correspondingly, for the current aggregated feature obtained by each graph sampling, it can be input into the fully connected layer, that is, the current aggregated feature corresponding to the current graph sampling is input into the fully connected layer, and the recognition result of the association relationship between the sampling points corresponding to the current graph sampling is obtained according to the output of the fully connected layer.
[0056] In the technical solution provided in this embodiment, when performing the data association task, a small batch of nodes are collected from the large-scale graph data through the graph sampling method for processing, and at the same time, the neighbor node features of the sampled nodes are involved in the calculation. This can not only reduce the memory requirements of the large-scale graph data by reducing the number of processed nodes and edges, but also maintain the characteristics of local convolution operations to ensure the accuracy of the association task results. Further, the association relationship recognition model uses a target polynomial instead of the convolution kernel in the spectral domain, and approximates the spectral filter through polynomial approximation, thereby reducing the computational overhead during the execution of the association task, improving the execution efficiency of the data association task, reducing the computational cost and memory consumption during the execution of the association task, and thus being able to ensure the high-precision data association relationship result of the final output on the basis of improving the execution efficiency of the data association relationship determination task.
[0057] Considering that the network structure for graph sampling in the graph convolution module of the association relationship recognition model is a unidirectional subgraph, and the graph data belongs to the non-Euclidean data type, with sparse matrices and random node positions, if the node aggregation method of message propagation is used, it will lead to irregular storage access and it is difficult to reuse data. Based on the above embodiments, the present invention also gives an exemplary aggregation method, which may include the following content:
[0058] For the current sampled node, use the edge features between the neighbor nodes of the current layer and the adjacent layer, the input feature of the current layer, and the weight parameter of the current layer as the input of the target polynomial, and use the calculation result of the target polynomial as the output feature of the current layer; where the input feature of the current layer is the output feature of the previous layer; according to the output feature of the last layer, determine the aggregated feature of the current sampled node, and obtain the current aggregated feature according to the aggregated features of the sampled nodes of the current graph sampling.
[0059] Among them, the edge features between the current layer and the neighbor nodes of the adjacent layer are used as the feature data for generating the adjacency matrix. The adjacency matrix, the input features of the current layer, and the weight parameters of the current layer are input into the target polynomial, and the target polynomial is calculated to obtain the output features of the current layer. The output features of the current layer are used as the input features for the next time and input into the next layer. At the same time, the edge features between the next layer and the neighbor nodes of its adjacent layer and the weight parameters of the next layer are input and continuously transmitted until the last layer is reached. The output features of the last layer are the aggregation features of the current sampling node.
[0060] As can be seen from the above, in this embodiment, by processing small batches of nodes and their neighbors one by one, the memory requirements for large-scale graphs are significantly reduced, while maintaining the characteristics of local convolution operations, which better meets the requirements of small-batch processing of large-scale graph data in practical applications. At the same time, when implementing graph convolution, the local information of each node is fully utilized, which can not only improve the execution accuracy of data association tasks but also enhance the execution accuracy of data association tasks.
[0061] The above embodiment illustrates the aggregation process from the input and output of the target polynomial and the data flow of the network model structure of the association relationship recognition model. This embodiment also describes the aggregation process from another perspective, which may include the following content:
[0062] According to each sampling node and the multi-order neighbor nodes of each sampling node, sampled subgraph data is generated; in the direction from the outside to the inside, based on the target polynomial, the node features of each layer of the sampled subgraph data are sequentially transmitted to the node features of the previous layer until transmitted to each sampling node, and the aggregation features of each sampling node corresponding to the current graph sampling are obtained.
[0063] In this embodiment, L-layer graph sampling is performed on the association relationship recognition model to obtain multiple sampling nodes, and the L-order neighbor nodes of each sampling node are obtained to form the subgraph data after sampling. For the convenience of description, it is defined as sampled subgraph data, and aggregation is performed from the outermost layer to the innermost layer to obtain the aggregated features of these multiple sampling nodes. As Figure 5 shown, taking L = 2 and the target polynomial as the Chebyshev polynomial as an example, the first-order neighbor nodes and second-order neighbor nodes of each sampling node are obtained, the adjacency list is constructed with the edges between the second-order neighbor nodes and the first-order neighbor nodes, the Laplace transform is performed on it, and it is placed into the adjacency matrix for approximating wavelet calculation by the Chebyshev polynomial. The edge information between the first-order neighbor nodes and the sampling nodes is used to perform the above operations, and the node features of the outermost layer are transmitted layer by layer to the sampling nodes to obtain the aggregated feature information of the sampling nodes. As Figure 6 shown, the aggregation of neighbor tags numbered 0 and the aggregation of neighbor tags numbered 1 represent the output of aggregation features of different orders. Aggregation is performed from the outside to the inside, the second-order neighbor features are aggregated to the first-order neighbors, and then the first-order neighbors are aggregated to the current sampling node.
[0064] As can be seen from the above, the L-layer network structure is designed in this embodiment, corresponding to the L-layer neighbors of the sampling nodes, and aggregating from the outer layer to the inner layer in the form of matrix multiplication, which is beneficial to running the correlation relationship recognition model on low-frequency multi-computation units.
[0065] The above embodiment does not make any limitation on the type of the target polynomial. Exemplarily, the Chebyshev polynomial can be adopted as the target polynomial. The frequency-domain convolution kernel is represented by the Chebyshev polynomial, and the convolution kernel has only K + 1 learnable parameters. Generally, K is much smaller than N, and both K and N are constants, where N is the order of the adjacency matrix of the traditional graph structure, and the complexity of the parameters is greatly reduced. After adopting the Chebyshev polynomial to replace the spectral-domain convolution kernel, there is no need to perform the eigen-decomposition operation on the Laplacian matrix, and the most time-consuming step is omitted. The convolution kernel has strict spatial locality, and K is the "receptive field radius" of the convolution kernel, that is, the K-order neighbor nodes of the central vertex are used as the neighborhood nodes. Exemplarily, the above embodiment does not make any limitation on the generation of the adjacency matrix. In this embodiment, the adjacency list can be generated according to the edge features between the neighbor nodes of adjacent layers, and the Laplacian transform is performed on the adjacency list to obtain the Laplacian matrix, that is, the Laplacian matrix is used as the adjacency matrix, and the Laplacian matrix is input into the Chebyshev polynomial to approximate the adjacency matrix of wavelet calculation.
[0066] Exemplarily, in order to further improve the task execution efficiency, the Laplacian calculation relation can be stored in advance, and the Laplacian transform is performed on the adjacency list by using the Laplacian transform calculation relation to obtain the Laplacian matrix, where the Laplacian calculation relation is shown in the following relation (5), and the determination process of the Laplacian calculation relation can be as follows:
[0067] The Laplacian operator is a second-order differential operator for functions in the n-dimensional Euclidean space, and it is a scalar. The Laplacian operator of the two-dimensional function f(x, y) can be expressed by the following relation (1). Based on the fact that the adjacent two independent variables of the discrete function f(x, y) have an interval of 1, the first-order derivative can be expressed by the following relation (2), and the second-order derivative can be expressed by the following relation (3). Correspondingly, the Laplacian operator of the one-dimensional discrete function f(x) can be expressed by the following relation (4), and the Laplacian operator of the two-dimensional discrete function f(x, y) can be expressed by the following relation (5):
[0068] ; (1)
[0069] ; (2)
[0070] ; (3)
[0071] ; (4)
[0072] ; (5)
[0073] Wherein, x and y represent coordinate values in two-dimensional data. represents the Laplace operator, and the Laplace operator is implemented on the adjacency list.
[0074] Exemplarily, in order to further improve the task execution efficiency, the Chebyshev calculation relation can be pre-stored, and the Laplace matrix is input into the Chebyshev calculation relation and calculated. Among them, the generation process of the Chebyshev calculation relation may include the following content:
[0075] First, the Chebyshev polynomial can be expressed as the following relation (6):
[0076] ; (6)
[0077] Wherein, k represents the order of the Chebyshev polynomial, and x represents the input eigenvector. is the Chebyshev polynomial of order k. For the graph wavelet convolution operation, this embodiment uses the Chebyshev polynomial to approximate the graph Laplace filter g(A). Given a graph Laplace matrix L and the maximum eigenvalue , the graph convolution can be approximated as the following relation (7):
[0078] ; (7)
[0079] Wherein,[[]] ,[[]] are the coefficients of the Chebyshev polynomial, K is the maximum order of the Chebyshev polynomial that can be set, the value of K is greater than or equal to k, I represents the diagonal matrix of the adjacency matrix,[[]] is the formula calculation result representation of the matrix L. Taking the input signal as X,[[]] is the calculation result representation of X, and the operation of the graph convolution can be expressed as the following relation (8):
[0080] ; (8)
[0081] Based on relation (8), each term of relation (6)[[]] can be recursively calculated to obtain the Chebyshev calculation relation, and the Chebyshev calculation relation can be expressed as the following relation (9):
[0082] . (9)
[0083] As can be seen from the above, for complex calculations such as derivatives in Laplace calculations in this embodiment, discrete Laplace approximation calculations can be used to simplify the calculation process and the amount of calculation. This can not only reduce the task execution time of the correlation relationship recognition model, but also facilitate applications in scenarios with limited resources. By using Chebyshev polynomials to replace the convolution kernels in the spectral domain and replacing time-consuming and resource-consuming wavelet calculations, dynamic, brand-new, and unknown node types in large-scale graphs can be predicted. Moreover, it is specifically optimized for graphs with a large number of nodes and rich node features, reducing memory overhead and calculation overhead, which is also beneficial for applications in scenarios with limited resources.
[0084] Exemplarily, the Laplace matrix corresponding to the neighbor nodes of the current layer and the adjacent layer can be multiplied by the input features of the current layer first to obtain the node features of the current layer; the product result of the node features and the weight parameters of the current layer is used as the feature information of the current layer and input into the target polynomial.
[0085] For example, take sampling batch (batch size) nodes for the correlation relationship recognition network and taking the L-order neighbor nodes of the sampled nodes as an example. Figure 7 As shown in L = 2. After graph sampling in S102, an L-layer network can be obtained, and L Blocks (block information) data blocks are constructed, which at least include input node features, output node features, and unidirectional edge information. The adjacency list of each layer of the network is constructed through the corresponding Block information, and the adjacency matrix L is obtained through Laplace calculation. The features X of the input nodes are multiplied by the weight data of each layer to obtain the features , and L and are sent into the Chebyshev polynomial approximation graph convolution formula to calculate the output features of each layer, which are the output node features after aggregation of the input node features. The features of each layer are aggregated in turn to obtain the features after aggregation of batch sampled nodes, and classification is performed through a fully connected layer to obtain the classification results of batch nodes.
[0086] As can be seen from the above, this embodiment optimizes the network structure and operator as matrix multiplication, which is beneficial to the efficient application of the correlation relationship recognition model on computing devices with low clock and multiple computing cores, such as FPGAs, and thus is suitable for applications in scenarios with limited resources.
[0087] It can be understood that the graph convolutional network updates the feature vector by multiplying the node feature vector with the adjacency matrix, so that the feature vector can contain the information of neighboring nodes. This process is essentially part of message propagation, that is, the mechanism of information transmission and update in graph neural networks. Message propagation allows nodes to update their states or representations by exchanging information, usually based on the adjacency matrix and node features, and can be achieved by means of summation, weighted summation, etc. Matrix multiplication and message propagation work together in the graph convolutional network to achieve effective processing and analysis of graph data. Although this method helps to capture the structural information of graph data and the complex relationships between nodes, when implementing it on computing devices such as FPGAs, it is necessary to process the information exchange of multiple single nodes, and frequently process small amounts of data, which is not conducive to the low-clock multi-compute-core method. In order to meet its normal operation in actual hardware devices, in this embodiment, for the unidirectional message propagation method, a sampled adjacency list is used to calculate the neighbor matrix, which may include the following content:
[0088] Pre-construct an adjacency matrix table, an input feature matrix table, and an output feature matrix table; store the feature information of neighboring nodes with connected edges in the second area, and store the input features of the current layer in the sixth area; read the information in the seventh area of the output feature matrix table as the input of the target polynomial.
[0089] Among them, as Figure 8 shown, the adjacency matrix table includes a first area A1, a second area A2, a third area A3, and a fourth area A4. The first area A1 and the third area A3, and the second area A2 and the fourth area A4 are aligned vertically. The first area A1 and the second area A2 are in the same horizontal direction, and the third area A3 and the fourth area A4 are in the same direction. Sample the association relationship recognition model, and put the corresponding features of dst (target node) and src (source node) obtained into the A2 area of the adjacency matrix table. In this way, only the A2 area has values, and the A1, A3, and A4 areas are all 0. The input feature matrix table includes a fifth area X1 and a sixth area X2 that are aligned vertically, and the output feature matrix table includes a seventh area O1 and an eighth area O2 that are aligned vertically; regard each area as an element of the matrix, perform matrix multiplication calculation on the data of the adjacency matrix table and the input feature table according to matrix multiplication, and store the sum of the matrix products of the adjacency matrix table and the input feature table in the corresponding area of the output feature matrix table; multiply the adjacency matrix Adj after Laplace transform by the node feature X, where the X1 area is 0 and the X2 area has values. For the output feature matrix table of the sum of matrix products, the seventh area O1 has values and the O2 area has values of 0, which satisfies the message propagation of neighboring nodes, aggregates the features of the source node to the features of the target node, and completes the message propagation of neighboring nodes.
[0090] As can be seen from the above, in this embodiment, a one-way adjacency matrix is established without using the traditional message propagation method. This not only facilitates the application of matrix operations of graph convolution on computing devices with low clocks and multiple computing cores, but also reduces the number of nodes and edges to be processed, thereby reducing the computing cost and memory consumption.
[0091] Furthermore, in order to improve the flexibility of the association relationship recognition model and make it applicable to environments with various computing resources and storage resources, the present invention also supports adjusting the data processing volume of the association relationship recognition model, which may include the following:
[0092] When a computing scale adjustment instruction is received, the target sampling number and / or the target sampling layer number are obtained by parsing the computing scale adjustment instruction; based on the target sampling layer number and the target sampling number, the corresponding number of nodes in the target layer of the association relationship recognition model are sampled to obtain the sampled nodes of the current graph sampling.
[0093] In this embodiment, the maximum number of sampling neighbors per order can be flexibly set according to the actual application scenario to limit the number of nodes participating in the calculation each time. In this way, the adjacency matrix and node feature data established have a fixed size, which can keep the intermediate data volume of the entire network within a reasonable range, ensure the normal operation of the association relationship recognition model, and have better practicability.
[0094] The above embodiments do not make any limitations on the training process of the association relationship recognition model. To make those skilled in the art more clearly understand the implementation manner of the present invention, the present invention also provides an exemplary training implementation manner of the association relationship recognition model, which may include the following:
[0095] Obtain an association task graph data training set; use the graph sample data of the association task graph data training set as nodes, perform graph sampling on the association task graph data training set to obtain sampled data; construct multiple training subprocesses, and each training subprocess reads the corresponding number of sampled nodes and their adjacent neighbor nodes from the sampled data according to a preset batch size, aggregates the feature information of each sampled node and its adjacent neighbor nodes based on a target polynomial, and determines the association relationship recognition result between the sampled nodes corresponding to the current graph sampling according to the current aggregated features; obtain the predicted labels of the graph sample data of the association task graph data training set according to the association relationship recognition results of each training subprocess.
[0096] In this embodiment, each graph sample data in the associated task graph data training set has a label with an annotation association relationship. Taking the data association task as the paper citation relationship as an example, the associated task graph data training set can be ogbn-papers100M (dataset name) containing more than 100 million nodes and 1 billion edges. The ogbn-papers100M dataset is a paper citation network, a directed graph, including 111 million papers, representing the citation relationship between computer science papers on arxiv (a repository for preprints of academic papers). The nodes in ogbn-papers100M represent papers, and the edges represent the citation relationship between papers, which can truly reflect the citation relationship between papers in the academic network. Each paper has an average 128-dimensional feature vector obtained on the word2vec (a model for generating word vectors) model through the embedding amount of words in the title and abstract. The entire dataset is divided into 172 categories according to the field of computer science.
[0097] Such as Figure 9As shown, taking graph sampling using DGL as an example, read the entire associated task graph data training set and split it into a training set, a validation set, and a test set according to a certain ratio, such as a 7:2:1 ratio. Then set the training parameters of the association relationship recognition model, such as batch (batch size), optimizer, number of iterations, gradient, etc. The main process loads the adjacency list adj information of the entire graph and the node IDs of the associated task graph data training set to construct a sampler during training. This process can be implemented using the methods provided by the DGL framework. For example, randomly sample b points from the associated task graph data training set, find the first- and second-order neighbor information through the graph structure, and construct the adjacency list adj with the edge information between nodes. The main process allocates data to M child processes, where M represents the number of processes, and this value can be the same as the number of computing units of the computing device running the training task, such as the number of graphics processing unit cards participating in training being the same. Each child process obtains the training batch of node information and its L-order neighbor node information from the sampler to form the Blocks information related to the L-layer network. Each Block contains the source node and target node features and edge structures. Use the edges between the L-order neighbors and the L-1-order neighbor nodes to construct the adjacency list adj, and perform a Laplace transform on this adjacency list. Substitute the obtained Laplace matrix into the Chebyshev polynomial to approximate the adjacency matrix of wavelet calculation, aggregate the feature information from the neighborhood, and transfer the node features of the outer layer to the L-1-order neighbor nodes. Repeat this process until the feature information of batch nodes is aggregated. Use the aggregated feature information of batch nodes as the input of the fully connected layer to predict the labels of the target batch nodes. During the data training process of the association task recognition model, continuously update the network model parameters of the association task recognition model. When the model training stop condition is reached, such as the number of iterations reaching the preset total number of iterations, use the currently obtained association task recognition model as the association task recognition model in the above-mentioned embodiment S101 to perform the data association task.
[0098] It should be noted that there is no strict order of execution between the steps in the present invention. As long as it conforms to the logical order, these steps can be executed simultaneously or in a certain preset order. Figure 1 and Figure 9 This is just a schematic way and does not mean that it can only be in such an execution order.
[0099] The present invention also provides a corresponding apparatus for the method of determining data association relationships, further making the method more practical. Among them, the apparatus can be described from the perspective of functional modules and hardware respectively. The data association relationship determination apparatus provided by the present invention will be introduced below. The apparatus is used to implement the data association relationship determination method provided by the present invention. In this embodiment, the data association relationship determination apparatus may include or be divided into one or more program modules. The one or more program modules are stored in a storage medium and executed by one or more processors to complete the data association relationship determination method disclosed in Embodiment 1. The program modules referred to in this embodiment refer to a series of computer program instruction segments that can complete specific functions, and are more suitable for describing the execution process of the data association relationship determination apparatus in the storage medium than the program itself. The following description will specifically introduce the functions of each program module in this embodiment. The data association relationship determination apparatus described below can be correspondingly referred to the data association relationship determination method described above.
[0100] From the perspective of functional modules, refer to Figure 10 , Figure 10 which is a structural diagram of the data association relationship determination apparatus provided in this embodiment in a specific implementation manner. The apparatus may include:
[0101] A task receiving module 101, configured to receive a data association task including at least data to be associated and association data information.
[0102] A task execution module 102, configured to use the source data of the data to be associated and the association data information as node features and input them into a pre-trained association relationship recognition model; wherein, the association relationship recognition model is based on a graph neural network model and uses a target polynomial to represent the frequency domain convolution kernel; perform graph sampling on the association relationship recognition model, aggregate the feature information of each sampled node and its adjacent neighbor nodes based on the target polynomial, and determine the association relationship recognition results between the sampled nodes corresponding to the current graph sampling according to the current aggregated features; according to each association relationship recognition result, determine the target data having an association relationship in the association data information for the data to be associated.
[0103] Exemplarily, in some implementation manners of this embodiment, the above task execution module 102 may also be configured to: for the current sampled node, use the edge features between the current layer and the neighbor nodes of the adjacent layer, the input feature of the current layer, and the weight parameter of the current layer as the input of the target polynomial, and use the calculation result of the target polynomial as the output feature of the current layer; wherein, the input feature of the current layer is the output feature of the previous layer; determine the aggregated feature of the current sampled node according to the output feature of the last layer, and obtain the current aggregated feature according to the aggregated features of the sampled nodes of the current graph sampling.
[0104] As an exemplary implementation manner of the above embodiment, the task execution module 102 may further be configured to: generate an adjacency list according to edge features between neighbor nodes of adjacent layers, perform a Laplace transform on the adjacency list to obtain a Laplace matrix; input the Laplace matrix into a Chebyshev polynomial to approximate the adjacency matrix of wavelet calculation.
[0105] As an exemplary implementation manner of the above embodiment, the task execution module 102 may further be configured to: multiply the Laplace matrix corresponding to the neighbor nodes of the current layer and the adjacent layer by the input features of the current layer to obtain the node features of the current layer; use the product result of the node features and the weight parameters of the current layer as the feature information of the current layer and input it into the target polynomial.
[0106] As another exemplary implementation manner of the above embodiment, the task execution module 102 may further be configured to: pre-construct an adjacency matrix table, an input feature matrix table, and an output feature matrix table; the adjacency matrix table includes a first region, a second region, a third region, and a fourth region, the first region and the third region, the second region and the fourth region are aligned in the vertical direction respectively, the first region and the second region are in the same horizontal direction, and the third region and the fourth region are in the same direction; the input feature matrix table includes a fifth region and a sixth region aligned in the vertical direction, and the output feature matrix table includes a seventh region and an eighth region aligned in the vertical direction; the sum of the matrix products of the adjacency matrix table and the input feature table is stored in the corresponding region of the output feature matrix table; store the feature information of the neighbor nodes with connected edges in the second region, and store the input features of the current layer in the sixth region; read the information in the seventh region of the output feature matrix table as the input of the target polynomial.
[0107] Exemplarily, in some other implementation manners of this embodiment, the task execution module 102 may further be configured to: generate sampled subgraph data according to each sampling node and multi-order neighbor nodes of each sampling node; in the direction from the outside to the inside, sequentially transfer the node features of each layer of the sampled subgraph data to the node features of the previous layer based on the target polynomial until it is transferred to each sampling node to obtain the aggregation features of each sampling node corresponding to the current graph sampling.
[0108] Exemplarily, in some other implementation manners of this embodiment, the task execution module 102 may further be configured to: input the current aggregation feature corresponding to the current graph sampling into a fully connected layer, and obtain the recognition result of the association relationship between each sampling point corresponding to the current graph sampling according to the output of the fully connected layer.
[0109] Exemplarily, in some other embodiments of this embodiment, the above device further includes a parameter adjustment module, which is configured to, when receiving a calculation scale adjustment instruction, obtain a target sampling number and / or a target sampling layer number by parsing the calculation scale adjustment instruction; and based on the target sampling layer number and the target sampling number, sample a corresponding number of nodes for the target layer of the association relationship recognition model to obtain the sampling nodes of the current graph sampling.
[0110] Exemplarily, in some other embodiments of this embodiment, the above device further includes a model training module, which can be used to: obtain an associated task graph data training set; each graph sample data of the associated task graph data training set has a label for annotating the association relationship; use each graph sample data of the associated task graph data training set as a node, perform graph sampling on the associated task graph data training set to obtain sampling data; construct a plurality of training sub-processes, each training sub-process reads a corresponding number of sampling nodes and their adjacent neighbor nodes from the sampling data according to a preset batch size, aggregates the feature information of each sampling node and its adjacent neighbor nodes based on a target polynomial, and determines the association relationship recognition result between the sampling nodes corresponding to the current graph sampling according to the current aggregated features; and obtain the predicted labels of each graph sample data of the associated task graph data training set according to the association relationship recognition results of each training sub-process.
[0111] The data association relationship determination device mentioned above is described from the perspective of functional modules. Further, the present invention also provides an electronic device, which is described from the perspective of hardware. Figure 11 The following is a schematic structural diagram of the electronic device provided by the embodiment of the present invention in one embodiment. As Figure 11 shown, the electronic device includes a memory 110 for storing a computer program; a processor 111 for implementing the steps of the data association relationship determination method as mentioned in any of the above embodiments when executing the computer program.
[0112] Among them, the processor 111 may include one or more processing cores, such as a 4-core processor or an 8-core processor. The processor 111 may also be a controller, a microcontroller, a microprocessor, or other data processing chips. The processor 111 may be implemented in at least one hardware form of DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), or PLA (Programmable Logic Array). The processor 111 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the wake state, also known as the CPU (Central Processing Unit); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 111 may be integrated with a GPU (Graphics Processing Unit), and the GPU is responsible for rendering and drawing the content to be displayed on the display screen. In some embodiments, the processor 111 may also include an AI (Artificial Intelligence) processor, and the AI processor is used to process computational operations related to machine learning.
[0113] The memory 110 may include one or more computer non-volatile storage media, which may be non-transitory. The memory 110 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices and flash storage devices. The memory 110 may be an internal storage unit of an electronic device in some embodiments, such as the hard disk of a server. The memory 110 may also be an external storage device of an electronic device in other embodiments, such as a plug-in hard disk equipped on a server, a Smart Media Card (SMC), a Secure Digital (SD) card, a Flash Card, etc. Further, the memory 110 may include both an internal storage unit and an external storage device of an electronic device. The memory 110 can be used not only to store application software installed on the electronic device and various types of data, such as the code of the program during the execution of the data association relationship determination method, etc., but also to temporarily store data that has been output or will be output. In this embodiment, the memory 110 is at least used to store the following computer program 1101, wherein, after the computer program is loaded and executed by the processor 111, it can implement the relevant steps of the data association relationship determination method disclosed in any of the foregoing embodiments. In addition, the resources stored in the memory 110 may also include an operating system 1102 and data 1103, etc., and the storage method may be temporary storage or permanent storage. Among them, the operating system 1102 may include Windows, Unix, Linux, etc. The data 1103 may include, but is not limited to, data corresponding to the data association relationship determination result, etc.
[0114] In some embodiments, the electronic device may further include a display screen 112, an input / output interface 113, a communication interface 114 or a network interface, a power supply 115 and a communication bus 116. Among them, the display screen 112 and the input / output interface 113, such as a keyboard, belong to the user interface, and exemplary user interfaces may also include standard wired interfaces, wireless interfaces, and the like. Optionally, in some embodiments, the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, and an OLED (Organic Light-Emitting Diode) touch device, and the like. The display may also be appropriately referred to as a display screen or a display unit, which is used to display information processed in the electronic device and to display a visual user interface. The communication interface 114 may exemplarily include a wired interface and / or a wireless interface, such as a WI-FI interface, a Bluetooth interface, and the like, which are generally used to establish a communication connection between the electronic device and other electronic devices. The communication bus 116 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, and the like. The bus may be divided into an address bus, a data bus, a control bus, and the like. For ease of representation, Figure 11 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0115] Those skilled in the art will understand that Figure 11 The structure shown in the figure does not constitute a limitation on the electronic device, and may include more or fewer components than shown in the figure, for example, it may also include a sensor 117 to implement various functions.
[0116] It can be understood that if the data association relationship determination method in the above embodiments is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a non-volatile storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the related technology, or all or part of this technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and executes all or part of the steps of the methods in various embodiments of the present invention. The foregoing storage medium includes, but is not limited to: USB flash drive, mobile hard disk, read-only memory (ROM), random access memory (RAM), electrically erasable programmable ROM, register, hard disk, multimedia card, card-type memory (such as SD or DX memory, etc.), magnetic memory, removable disk, CD-ROM, magnetic disk or optical disc, etc., various media that can store program codes. Based on this, the present invention also provides a non-volatile storage medium, on which a computer program is stored. When the computer program is executed by a processor, it performs the steps of the data association relationship determination method recorded in any one of the above embodiments.
[0117] It can be understood that if the data association relationship determination method in the above embodiments is implemented in the form of a software functional unit and sold or used as an independent product, this computer software product may not need to be stored in a physical storage medium. For example, it can be directly transmitted to a device with information processing capabilities, such as a computer, through a wired network or a wireless network to execute all or part of the steps of the methods in various embodiments of the present invention. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the related technology, or all or part of this technical solution, can be embodied in the form of a software product. Based on this, the present invention also provides a computer program product, which stores a computer program. When the computer program is executed by a processor, it performs the steps of the data association relationship determination method recorded in any one of the above embodiments.
[0118] It can be understood that due to the characteristics of the association relationship recognition model for processing non-Euclidean data, whether training the association relationship recognition model or running the association relationship recognition model to perform data association tasks, there are relatively high requirements for the computing power and storage capacity of the hardware environment in which it runs. Coupled with the current limitations of software implementation in terms of efficiency, in order to meet the computing resources and storage resources requirements of the association relationship recognition model, while balancing computing throughput and memory bandwidth to ensure the effective utilization of resources, avoid waste, and ultimately achieve the best performance, the present invention also provides a hardware environment for training the association relationship recognition model and performing data association tasks through the association relationship recognition model. Please refer to Figure 12 , the present invention also provides a data association relationship determination system, which may include:
[0119] The data association relationship determination system may include a first computing device 121 and a second computing device 122. The first computing device 121 and the second computing device 122 are connected through a target bus such as PCIE (Peripheral Component Interconnect Express, high-speed serial computer expansion bus). For example, the second computing device 122 is connected to the PCIe Gen5×16 of the first computing device 121. The second computing device 122 has parallel computing capabilities. The first computing device 121 may be, for example, a device with a CPU as a processor, such as a server. The second computing device 122 may be, for example, a computing device with limited resources such as FPGA or GPU and adopting a low-clock multi-computing core method. Among them, the first computing device 121 is configured to receive a data association task including at least the data to be associated and the associated data information, and send the data to be associated and the associated data information to the second computing device 122 through the target bus interface. The second computing device 122 is configured to perform graph sampling on the association relationship recognition model, aggregate the feature information of each sampled node and its adjacent neighbor nodes based on the target polynomial, determine the association relationship recognition result between each sampled node corresponding to the current graph sampling according to the current aggregated features, and send the association relationship recognition result to the first computing device 121 through the target bus interface; the first computing device 121 is further configured to determine the target data having an association relationship in the associated data information for the data to be associated according to each association relationship recognition result.
[0120] As can be seen from the above, through lightweight graph sampling processing, the number of nodes for each training or inference is reduced, thereby effectively reducing the computational amount and memory occupancy, and meeting the requirements of computational complexity and memory overhead for large-scale graph data. At the same time, by utilizing the parallel processing capabilities of the second computing device, the sampling of neighbor nodes and the feature calculation process are accelerated, realizing efficient graph data processing and maintaining a high execution accuracy rate for data association tasks.
[0121] In order to further improve the efficiency and accuracy of the second computing device in running the association relationship recognition model, based on the above embodiments, the present invention also provides an exemplary structure of the second computing device, which may include the following:
[0122] The second computing device 122 may include a controller, a data memory, and an output result buffer; the controller, the data memory, and the output result buffer communicate through a network on chip, and the second computing device 122 and the target bus interface communicate through a NOC (Network-on-Chip). In order to further improve the data communication efficiency inside the second computing device and between the second computing device and the first computing device, such as Figure 13As shown, all components inside the second computing device 122 are interconnected through a NoC with high bandwidth. The NoC can also be connected to Ethernet (400GE Ethernet). On this basis, the RoCE-Lite (protocol name) protocol can be carried over Ethernet, enabling remote storage access through high-speed Ethernet to support graph computing for a large number of nodes.
[0123] Among them, the controller is configured to perform graph sampling on the association relationship recognition model, aggregate the feature information of each sampled node and its adjacent neighbor nodes based on the target polynomial, and determine the recognition result of the association relationship between each sampled node corresponding to the current graph sampling according to the current aggregated features; the data memory is configured to store the feature data corresponding to the sampled nodes and their neighbor nodes sent by the first computing device, and the weight parameters of each layer of the association relationship recognition model; the data memory can adopt DDR (Double Data Rate) for example to store the high-speed access data required during the processing of the association relationship recognition model. To improve the data reading efficiency, the DDR Ctrl (Double Data Rate Controller) is used to control the read and write operations of the DDR. The output result buffer is configured to store the recognition results of the association relationships between each sampled node obtained from each graph sampling.
[0124] Furthermore, to further improve the execution efficiency of the data association task and the training efficiency of the association relationship recognition model, based on the above embodiments, the present invention also gives an exemplary result of the controller, as Figure 14 shown, which may include the following contents:
[0125] The controller of the second computing device 122 may include an instruction executor, a processor array, a non-linear processor, an intermediate result buffer, and a weight data buffer. The instruction executor is respectively connected to the data memory, the processor array, and the non-linear processor. The processor array is respectively connected to the weight data buffer, the intermediate result buffer, and the non-linear processor. The intermediate result buffer is connected to the output result buffer.
[0126] Among them, the controller is used to implement the operations of establishing an adjacency matrix, calculating the Laplacian, Chebyshev polynomials, and fully connected layer calculations. Considering the characteristics of devices with a low clock and multiple computing cores, such as FPGAs, a PE (Processing Element) array can be used to execute these operations. The PE array consists of many PEs (Processing Elements). Generally, each PE includes a multiply-accumulate unit, a small number of registers, and a small amount of control logic. That is, the PE array performs operations such as calculating the Laplacian of the adjacency matrix for graph convolution, Chebyshev polynomials, matrix multiplication, and fully connected layer operations. The weight data buffer is configured to read the weight parameters of each layer of the association relationship recognition model from the data memory, and the intermediate result buffer stores the results generated during the intermediate processing for use in the next iteration.
[0127] Among them, the instruction executor is used to execute pre-specified operations at a specified time. In this embodiment, when the instruction executor receives a write start instruction, it reads the adjacency list from the data memory and sends an adjacency matrix generation instruction carrying the adjacency list to the processing element array. The processing element array performs Laplace transform calculation on the adjacency list and stores the adjacency matrix in the intermediate result buffer; the instruction executor reads the input features of each layer from the data memory, reads the weight parameters of the corresponding layer from the weight data buffer, and at the same time sends a node feature information generation instruction carrying the node feature information to the processing element array. The processor array calculates the product result of the input features and weight parameters of the current layer and stores it as the node feature information of the current layer in the intermediate result buffer; the instruction executor sends an aggregated feature generation instruction to the processing element array. The processing element array inputs the node feature information and the adjacency matrix into the target polynomial for calculation, outputs the calculation result of the target polynomial to the non-linear processor for non-linear processing to obtain the aggregated feature of the current layer, and stores the aggregated feature of the current layer in the intermediate result buffer. It can be seen that the above instruction executor controls the instruction execution process, controls the calculation processes of the Laplacian, matrix multiplication, and Chebyshev polynomials, controls the non-linear calculation of the calculation results by the activation function layer, and finally stores the intermediate results in the intermediate result buffer. It also needs to control the intermediate features of the nodes, that is, calculate the matrix product of the graph convolution result and the weight calculation matrix in the weight data buffer, and output the final result to the output result buffer through the fully connected layer.
[0128] To make those skilled in the art more clear about the entire implementation process, the present invention also takes a data association relationship determination system composed of a CPU and an FPGA, uses the data association relationship determination system to execute the training process of the association relationship recognition model, and takes DGL for graph sampling as an example to elaborate the data processing flow of the entire data association relationship determination system, which may include the following content:
[0129] The CPU-side program executes, reads the entire associated task graph data training set, and splits it into a training set, a validation set, and a test set according to a certain ratio, and then sets the training parameters of the associated relationship recognition model. The main process loads the adjacency list adj information of the entire graph and the node IDs of the associated task graph data training set to construct a sampler during training. Allocate data to the corresponding number of child processes according to the number of FPGA cards. Each child process obtains training batch node information and its L-order neighbor node information from the sampler to form Blocks information related to the L-layer network. Each Block contains source node and target node features and edge structures. Write the batch node and its neighbor node feature data F and weight data W into the FPGA's DDR through the PCIE interface or Ethernet. Use the unidirectional edges between the L-order neighbors and the L-1-order neighbor nodes to construct a unidirectional adjacency list adj, and write the adjacency list adj into the FPGA's DDR through PCIE or Ethernet. Write the start command to make the instruction executor run, calculate the Laplacian matrix in the PE array, and put the adjacency matrix data into the intermediate result buffer. The instruction executor controls the instruction to fetch the L-order node feature data X0 from the DDR and the L-layer weight data W0 from the weight data buffer, and execute the matrix multiplication of the node feature data and the weight data on the PE array to obtain the intermediate data X1 and put it into the intermediate result buffer. Take out the adjacency matrix and X1 data from the intermediate result buffer, and the instruction executor controls the instruction to input the adjacency matrix and X1 into the Chebyshev polynomial for calculation, aggregate the feature information from the neighborhood, and then execute the activation function operation to obtain the intermediate data X2 and put it into the intermediate result buffer, and transfer the node features of the outermost layer L to the L-1-order neighbor nodes. Repeat the above process to calculate the feature information of the nodes from the L-1 order to the L-2 order until the feature information of the final batch of nodes is aggregated and put into the output result buffer. The CPU-side takes out the aggregated feature information of the batch of nodes from the output result buffer as the input of the fully connected layer to obtain the association relationship between the sampling points of the current graph sampling. Continuously repeat the above process until the association relationship between the training samples of the associated task graph data training set is obtained.
[0130] As can be seen from the above, in this embodiment, by optimizing the network structure of the associated relationship recognition model, the associated relationship recognition model better fits the resources of the FPGA, and the parallel computing power of the FPGA can be used to process the Laplacian, Chebyshev polynomial, and matrix multiplication calculation processes of the associated relationship recognition model. Using the PE array to process the matrix multiplication can better handle large amounts of calculations, reduce resource consumption, and accelerate the execution efficiency and result accuracy of the data association task.
[0131] The above has introduced in detail a method, system, electronic device, non-volatile storage medium and computer program product for determining a data association relationship. The various embodiments in this specification are described in a progressive manner. Each embodiment focuses on the differences from other embodiments. For the same or similar parts among the various embodiments, reference can be made to each other. Whether the units and algorithm steps of each example described in the disclosed embodiments are executed in the form of electronic hardware or computer software depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods for each specific application to implement the described functions, and such implementation should not be considered to exceed the scope of the present invention. Without departing from the principle of the present invention, several improvements and modifications can also be made to the present invention, and these improvements and modifications also fall within the protection scope of the present invention.
Claims
1. A method for determining a data association relationship, characterized in that: include: Receive a data association task including at least data to be associated and associated data information, and use the source data of the data to be associated and the associated data information as node features, and input them into a pre-trained association relationship recognition model; wherein the association relationship recognition model is based on a graph neural network model, and uses a target polynomial to represent a frequency domain convolution kernel; the data to be associated and the associated data information are text data, image data, or audio and video data; Performing graph sampling on the association relationship recognition model, aggregating feature information of each sampling node and its adjacent neighbor nodes based on the target polynomial, and determining an association relationship recognition result between each sampling node corresponding to the current graph sampling according to the current aggregated feature; According to the identification results of each association relationship, determining target data having an association relationship in the associated data information for the data to be associated; The one-way message propagation method of the association relationship identification model adopts the method of calculating the neighbor matrix using the adjacency matrix table: Pre-constructing an adjacency matrix table, an input feature matrix table, and an output feature matrix table; storing the sum of the matrix product of the adjacency matrix table and the input feature table in the corresponding area of the output feature matrix table; storing the feature information of the neighboring nodes with connecting edges in the second area, and storing the input features of the current layer in the sixth area; reading the information of the seventh area of the output feature matrix table as the input of the target polynomial; Among them, the adjacency matrix table includes a first area and a second area located in the same direction, a third area and a fourth area located in the same direction, and the first area and the third area, the second area and the fourth area are respectively aligned in the vertical direction; the input feature matrix table includes a fifth area and a sixth area aligned in the vertical direction, and the output feature matrix table includes a seventh area and an eighth area aligned in the vertical direction.
2. The method for determining a data association relationship according to claim 1, characterized in that: Aggregating feature information of each sampling node and its adjacent neighbor nodes based on the target polynomial includes: For the current sampling node, the edge features between the neighbor nodes of the current layer and the adjacent layer, the input features of the current layer and the weight parameters of the current layer are used as the input of the target polynomial, and the calculation result of the target polynomial is used as the output feature of the current layer; wherein the input feature of the current layer is the output feature of the previous layer; According to the output features of the last layer, the aggregation features of the current sampling node are determined, and the current aggregation features are obtained according to the aggregation features of each sampling node sampled in the current graph.
3. The method for determining data association relationship according to claim 2, characterized in that: The target polynomial is a Chebyshev polynomial, and the edge features between the neighbor nodes of the current layer and the adjacent layer, the input features of the current layer, and the weight parameters of the current layer are used as inputs of the target polynomial, including: Generate an adjacency list according to edge features between neighbor nodes of adjacent layers, and perform Laplace transformation on the adjacency list to obtain a Laplace matrix; The Laplace matrix is input into the Chebyshev polynomials to approximate the adjacency matrix for wavelet computation.
4. The method for determining data association relationship according to claim 3, characterized in that: The edge features between the neighbor nodes of the current layer and the adjacent layer, the input features of the current layer and the weight parameters of the current layer are used as inputs of the target polynomial, including: Multiply the Laplacian matrix corresponding to the neighbor nodes of the current layer and the adjacent layer by the input features of the current layer to obtain the node features of the current layer; The product of the node feature and the weight parameter of the current layer is used as the feature information of the current layer and input into the target polynomial.
5. The method for determining data association relationship according to claim 1, characterized in that: Aggregating feature information of each sampling node and its adjacent neighbor nodes based on the target polynomial includes: Generate sampling subgraph data according to each sampling node and the multi-order neighbor nodes of each sampling node; From outside to inside, the node features of each layer of the sampled subgraph data are sequentially transferred to the node features of the previous layer based on the target polynomial until they are transferred to each sampling node, thereby obtaining the aggregated features of each sampling node corresponding to the current graph sampling.
6. The method for determining data association relationship according to claim 1, characterized in that: The association relationship recognition result between the sampling nodes corresponding to the current graph sampling is determined according to the current aggregation feature, including: The current aggregated features corresponding to the current graph sampling are input into the fully connected layer, and the association relationship recognition result between the sampling points corresponding to the current graph sampling is obtained according to the output of the fully connected layer.
7. The method for determining data association relationship according to claim 1, characterized in that: Also includes: When receiving a calculation scale adjustment instruction, obtaining a target sampling number and / or a target sampling layer number by parsing the calculation scale adjustment instruction; Based on the target number of sampling layers and the target sampling number, a corresponding number of nodes are sampled on the target layer of the association relationship recognition model to obtain sampling nodes for current graph sampling.
8. The method for determining a data association relationship according to any one of claims 1 to 7, characterized in that: The training process of the association relationship recognition model includes: Obtaining a training set of associated task graph data; each graph sample data of the training set of associated task graph data has a label that marks the associated relationship; Taking each graph sample data of the associated task graph data training set as a node, performing graph sampling on the associated task graph data training set to obtain sampling data; Constructing multiple training subprocesses, each training subprocess reads a corresponding number of sampling nodes and their adjacent neighbor nodes from the sampling data according to a preset batch size, aggregates feature information of each sampling node and its adjacent neighbor nodes based on a target polynomial, and determines an association relationship recognition result between each sampling node corresponding to the current graph sampling according to the current aggregated feature; According to the association relationship identification results of each training sub-process, the predicted label of each graph sample data of the associated task graph data training set is obtained.
9. An electronic device, characterized in that: The method comprises a processor and a memory, wherein the processor is used to implement the steps of the method for determining a data association relationship as claimed in any one of claims 1 to 8 when executing a computer program stored in the memory.
10. A non-volatile storage medium, characterized in that: The non-volatile storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method for determining a data association relationship according to any one of claims 1 to 8 are implemented.
11. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instruction is executed by a processor, the steps of the method for determining a data association relationship according to any one of claims 1 to 8 are implemented.
12. A data association relationship determination system, characterized in that: The device comprises a first computing device and a second computing device; the first computing device and the second computing device are connected via a target bus, and the second computing device has parallel computing capability; Among them, the first computing device is configured to receive a data association task that includes at least data to be associated and associated data information, and send the data to be associated and the associated data information to the second computing device through the target bus interface; the second computing device is configured to perform graph sampling on the association relationship recognition model, aggregate the feature information of each sampling node and its adjacent neighbor nodes based on the target polynomial, determine the association relationship recognition result between each sampling node corresponding to the current graph sampling according to the current aggregated feature, and send the association relationship recognition result to the first computing device through the target bus interface; the association relationship recognition model is based on a graph neural network model, and the target polynomial is used to represent the frequency domain convolution kernel; the first computing device is also configured to determine the target data with an association relationship in the associated data information for the data to be associated according to each association relationship recognition result; the data to be associated and the associated data information are text data or image data or audio and video data; The second computing device uses an adjacency matrix table to calculate a neighbor matrix to propagate neighbor node messages: pre-construct an adjacency matrix table, an input feature matrix table, and an output feature matrix table; the sum of the matrix products of the adjacency matrix table and the input feature table is stored in the corresponding area of the output feature matrix table; the feature information of the neighbor nodes with connecting edges is stored in the second area, and the input features of the current layer are stored in the sixth area; the information of the seventh area of the output feature matrix table is read as the input of the target polynomial; wherein the adjacency matrix table includes a first area and a second area located in the same direction, and a third area and a fourth area located in the same direction, and the first area and the third area, and the second area and the fourth area are respectively aligned in the vertical direction; the input feature matrix table includes a fifth area and a sixth area aligned in the vertical direction, and the output feature matrix table includes a seventh area and an eighth area aligned in the vertical direction.
13. The data association relationship determination system according to claim 12, characterized in that: The second computing device includes a controller, a data memory, and an output result buffer; the controller, the data memory, and the output result buffer communicate via an on-chip network, and the second computing device communicates with a target bus interface via the on-chip network; The controller is configured to perform graph sampling on the association relationship recognition model, aggregate feature information of each sampling node and its adjacent neighbor nodes based on the target polynomial, and determine the association relationship recognition result between the sampling nodes corresponding to the current graph sampling according to the current aggregated features; The data storage device is configured to store feature data corresponding to the sampling node and its neighboring nodes and weight parameters of each layer of the association relationship recognition model sent by the first computing device; The output result buffer is configured to store the association relationship identification results between the sampling nodes obtained by each graph sampling.
14. The data association relationship determination system according to claim 12, characterized in that: The controller of the second computing device includes an instruction executor, a processor array, a nonlinear processor, an intermediate result buffer and a weight data buffer; the instruction executor is connected to the data memory, the processor array and the nonlinear processor respectively, the processor array is connected to the weight data buffer, the intermediate result buffer and the nonlinear processor respectively, and the intermediate result buffer is connected to the output result buffer; The weight data buffer is configured to read the weight parameters of each layer of the association relationship recognition model from the data storage; The instruction executor, upon receiving the write start instruction, reads the adjacency list from the data memory, and sends an adjacency matrix generation instruction carrying the adjacency list to the processor array, the processor array performs Laplace transform calculation on the adjacency list, and stores the adjacency matrix in the intermediate result buffer; The instruction executor reads the input features of each layer from the data storage device, and reads the weight parameters of the corresponding layer from the weight data buffer, and sends a node feature information generation instruction to the processor array at the same time. The processor array calculates the product of the input features and weight parameters of the current layer, and stores it in the intermediate result buffer as the node feature information of the current layer; the instruction executor sends an aggregate feature generation instruction to the processor array, and the processor array inputs the node feature information and the adjacency matrix into the target polynomial for calculation, outputs the calculation result of the target polynomial to the nonlinear processor for nonlinear processing, obtains the aggregate feature of the current layer, and stores the aggregate feature of the current layer in the intermediate result buffer.
Citation Information
Patent Citations
Drug analysis method and device, model training method and device, storage medium and equipment
CN114334035A
Techniques for memory-efficient and parameter-efficient graph neural networks
CN115526287A