CN115795104A - Target subgraph searching method in bipartite graph and related equipment - Google Patents
Target subgraph searching method in bipartite graph and related equipment Download PDFInfo
- Publication number
- CN115795104A CN115795104A CN202211441505.2A CN202211441505A CN115795104A CN 115795104 A CN115795104 A CN 115795104A CN 202211441505 A CN202211441505 A CN 202211441505A CN 115795104 A CN115795104 A CN 115795104A
- Authority
- CN
- China
- Prior art keywords
- target
- vertex
- lower bound
- value
- vertexes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000010586 diagram Methods 0.000 claims description 20
- 230000009467 reduction Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 241000606545 Biplex Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000002904 solvent Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention discloses a target subgraph searching method in a bipartite graph and related equipment. The method comprises the following steps: obtaining an original bipartite graph, wherein the original bipartite graph comprises a plurality of first vertexes and a plurality of second vertexes; updating the first lower bound value, updating the second lower bound value according to the current target optimal solution, and deleting part of vertexes in the original bipartite graph according to the first lower bound value and the second lower bound value to obtain a reduced bipartite graph; updating the target optimal solution according to the local optimal solution; updating the first lower bound value and the second lower bound value, and re-executing the step of deleting part of vertexes in the original bipartite graph to obtain a reduced bipartite graph until the first lower bound value is not greater than the minimum preset lower bound; and taking the latest optimal target solution as a target subgraph, wherein the target subgraph is the subgraph with the maximum number of top points contained in the subgraph meeting the target condition in the original bipartite graph. The invention can extract partial data of the user and the content with larger relevance as much as possible from a large amount of many-to-many data based on the missing number in the corresponding relation.
Description
Technical Field
The invention relates to the technical field of data analysis, in particular to a target subgraph searching method in a bipartite graph and related equipment.
Background
In practical applications, many data are not simply one-to-one but many-to-many, for example, the correspondence between the users of the platform and the content, and in order to implement the product recommendation function, it is necessary to extract and analyze as many data of the correspondence between the users and the content having a large correlation as possible from among a large number of many-to-many data. However, in the prior art, methods for efficiently extracting partial data of users and products with the greatest relevance as possible from a large amount of many-to-many data are rare, and no extraction method based on the number of missing data in the corresponding relationship exists.
Thus, there is a need for improvements and enhancements in the art.
Disclosure of Invention
Aiming at the defects in the prior art, the invention provides a target subgraph searching method in a bipartite graph, aiming at solving the problem that in the prior art, the method for efficiently extracting partial data of users and products with larger relevance as much as possible from a large amount of many-to-many data is few.
In order to solve the technical problems, the technical scheme adopted by the invention is as follows:
the first aspect of the present invention provides a method for searching a target subgraph in a bipartite graph, where the method includes:
acquiring an original bipartite graph, wherein the original bipartite graph comprises a plurality of first vertexes and a plurality of second vertexes, any two first vertexes are not connected with each other, any two second vertexes are not connected with each other, and degrees of the first vertexes and the second vertexes are acquired;
updating a first lower bound value, updating a second lower bound value according to the current target optimal solution, and deleting partial vertexes in the original bipartite graph according to the degrees of the first vertexes, the degrees of the second vertexes, the first lower bound value and the second lower bound value to obtain a reduced bipartite graph;
obtaining a local optimal solution according to the degrees of the first vertex and the degrees of the second vertex in the reduced bipartite graph, and updating the target optimal solution according to the local optimal solution;
re-executing the step of updating the first lower bound value and updating the second lower bound value according to the current target optimal solution until the first lower bound value is not greater than the minimum preset lower bound, wherein the initial value of the first lower bound value is the sum of the maximum degree of the first vertex and the first preset threshold, and the initial value of the local optimal solution is an empty map;
and taking the latest target optimal solution as the target subgraph, wherein the target subgraph is the subgraph with the maximum number of top points contained in the subgraph meeting target conditions in the original subgraph, and the target conditions are that the degree of each first top point in the subgraph is not less than the difference between the number of second top points in the subgraph and a first preset threshold value, and the degree of each second top point in the subgraph is not less than the difference between the number of first top points in the subgraph and a second preset threshold value.
In a second aspect of the present invention, a device for searching a target subgraph in a bipartite graph is provided, which includes:
an initial solution generating module, configured to obtain an original bipartite graph, where the original bipartite graph includes a plurality of first vertices and a plurality of second vertices, where any two of the first vertices are not connected to each other, and any two of the second vertices are not connected to each other, and degrees of the first vertices and the second vertices are obtained;
the bipartite graph reduction module is used for updating a first lower bound value, updating a second lower bound value according to a current target optimal solution, and deleting partial vertexes in an original bipartite graph according to the degrees of the first vertexes, the degrees of the second vertexes, the first lower bound value and the second lower bound value to obtain a reduced bipartite graph;
the local optimal solution acquisition module is used for obtaining a local optimal solution according to the degrees of the first vertex and the degrees of the second vertex in the reduced bipartite graph and updating the target optimal solution according to the local optimal solution;
an iteration module, configured to re-execute the step of updating the first lower bound value and update a second lower bound value according to the current target optimal solution until the first lower bound value is not greater than a minimum preset lower bound, where an initial value of the first lower bound value is a sum of a maximum degree of the first vertex and the first preset threshold, an initial value of the second lower bound value is a difference between the initial value of the local optimal solution and the initial value of the first lower bound value, and the initial value of the local optimal solution is an empty map;
a subgraph obtaining module, configured to use the latest optimal target solution as the target subgraph, where the target subgraph is a subgraph with the largest number of vertices included in a subgraph satisfying a target condition in the original subgraph, and the target condition is that the degree of each first vertex in the subgraph is not less than the difference between the number of second vertices in the subgraph and a first preset threshold, and the degree of each second vertex is not less than the difference between the number of first vertices in the subgraph and a second preset threshold.
In a third aspect of the present invention, a terminal is provided, where the terminal includes a processor, and a computer-readable storage medium communicatively connected to the processor, where the computer-readable storage medium is adapted to store a plurality of instructions, and the processor is adapted to call the instructions in the computer-readable storage medium to perform steps of implementing the target subgraph searching method in the bipartite graph according to any one of the foregoing descriptions.
In a fourth aspect of the present invention, a computer-readable storage medium is provided, where one or more programs are stored, and the one or more programs are executable by one or more processors to implement the steps of the target subgraph searching method in the bipartite graph described in any one of the above.
Compared with the prior art, the method for searching the target subgraph in the bipartite graph and the related equipment thereof provided by the invention have the advantages that the problem of extracting partial data of users and contents with the largest relevance as possible from a large amount of many-to-many data is converted into the problem of searching the subgraph with the largest number of vertexes in the subgraph, wherein the degree of each first vertex is not less than the difference between the number of second vertexes in the subgraph and a first preset threshold value, and the degree of each second vertex is not less than the difference between the number of first vertexes in the subgraph and a second preset threshold value, and the effect of efficiently extracting the partial data of the users and the contents with the largest relevance as possible from the large amount of many-to-many data is realized.
Drawings
FIG. 1 is a flowchart of an embodiment of a method for searching a target subgraph in a bipartite graph according to the invention;
FIG. 2 (a) is a first schematic diagram of a bipartite graph and a bipartite graph subgraph;
FIG. 2 (b) is a second schematic diagram of the bipartite graph and the bipartite graph;
FIG. 2 (c) is a third schematic diagram of a bipartite graph and a bipartite graph subgraph;
FIG. 3 is a schematic diagram of pseudo codes of an overall algorithm in an embodiment of a target subgraph searching method in a bipartite graph provided by the invention;
FIG. 4 is a schematic diagram of pseudo codes of an algorithm for obtaining a reduced bipartite graph in an embodiment of a target subgraph searching method in the bipartite graph provided by the invention;
FIG. 5 is a schematic diagram of an algorithm pseudo code for obtaining a locally optimal solution in an embodiment of the method for searching for a target sub-graph in a bipartite graph provided by the present invention;
FIG. 6 is a schematic structural diagram of an embodiment of a target subgraph searching device in a bipartite graph according to the present invention;
fig. 7 is a schematic diagram of an embodiment of a terminal provided in the present invention.
Detailed Description
In order to make the objects, technical solutions and effects of the present invention clearer and clearer, the present invention is further described in detail below with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are merely illustrative of the invention and do not limit the invention.
The target subgraph searching method in the bipartite graph provided by the invention can be applied to a terminal with computing power, the terminal can execute the target subgraph searching method in the bipartite graph to obtain the target subgraph, and the terminal can be but not limited to various computers, mobile terminals, intelligent household appliances, wearable devices and the like.
Example one
The structure of the graph is widely applied to social science and social networks, and an important direction in graph theory is the discovery of dense subgraphs. The exploration and discovery of the maximum clique (clique) attract the research of a large number of scholars over the years, and the maximum target means that the total number of vertexes contained in the subgraph is maximum. Since the structure of the cluster has high requirement on the compactness of the graph, the relaxation based on different conditions expands the dense subgraphs of other structures, such as models of k-core (k-kernel), k-plex (k-cluster) and the like, thereby extending the maximum subgraph search problem for different models.
The embodiment provides a new dense subgraph model of a bipartite graph: (a, b) -biplex. The (a, b) -biplex model is extended from k-plex in a simple graph in a bipartite graph, and allows vertices of two parts in a dense subgraph of the bipartite graph to be missing by a certain degree, namely, a vertex set L = | n = n L L and R = | n R In the (a, b) -biplex graph composed of L, the degree of the midpoint in L is at least | n R I-a, the degree of the midpoint in R is at least | n L And l-b. By finding the maximum (a, b) -biplex algorithm in the bipartite graph, the properties of the model are fused in the Branch-and-Bound method, and a progressive bounding framework is used to improve the search efficiency. The method and the device are used for searching the corresponding relation between the user and the content in the platform, and the content in the platform can be recommended for effective groups, so that greater benefit is obtained. The (a, b) -biplex graph is defined as the target word graph which needs to be searched from the bipartite graph in the embodiment, and the specific steps are as follows.
As shown in fig. 1, in an embodiment of the method for searching for a target sub-graph in a bipartite graph, the method includes the steps of:
s100, obtaining an original bipartite graph, wherein the original bipartite graph comprises a plurality of first vertexes and a plurality of second vertexes, any two of the first vertexes are not connected with each other, any two of the second vertexes are not connected with each other, and degrees of the first vertexes and the second vertexes are obtained.
The original bipartite graph is obtained based on corresponding relation data of users and contents of one or more platforms, the contents can be commodities, videos, articles and the like, and the contents can be commodities if the platforms are different and different based on different properties of the platforms, for example, if the platforms are shopping platforms, the contents can be commodities, if the platforms are social platforms, the contents can be blog articles, created videos and the like. Each first vertex in the original bipartite graph may correspond to a user in a platform, each second vertex in the original bipartite graph may correspond to a content in the platform, and an edge in the original bipartite graph is obtained based on an association relationship between the user and the content in the platform, for example, when the user purchases, collects, browses, or approves a certain content, a connecting edge exists between the first vertex corresponding to the user and the second vertex corresponding to the content. The number of edges connecting each vertex to other vertices is referred to as the degree of the vertex.
In order to facilitate a user in the platform to quickly access content needed or interested by the user, many platforms adopt a recommendation mode, that is, content possibly needed or interested by the user is determined according to historical associated content of the user or personal information of the user and is displayed on a page of the user. In this embodiment, recommendation is implemented by finding a target subgraph in the original bipartite graph, where the target subgraph is a maximum (a, b) -biplex graph, so that a maximum connection relationship between a specific population and specific content can be found given a and b to implement a product recommendation function, a and b can be set according to actual recommendation needs of a platform, a smaller range of recommendation is required, a smaller range of recommendation can be set for a and b, a larger range of recommendation is required, a larger range of recommendation can be set for a and b, specifically, the correlation between all first vertices and all second vertices in the target subgraph is strong, and users corresponding to all first vertices in the target subgraph can be considered to have similar selection orientations, and content corresponding to the second vertices in the target subgraph is recommended to users corresponding to the first vertices in the target subgraph to implement more accurate recommendation of content.
Fig. 2 (a), 2 (b), and 2 (c) are examples of the present embodiment, and it is assumed that fig. 2 (a) is a given original bipartite graph, fig. 2 (b) is the maximum (1, 1) -biplex in fig. 2 (a), and fig. 2 (c) is one (1, 1) -biplex in fig. 2 (a). Such a problem is abbreviated as MBIP (MaximumBiplexProblem) in the present embodiment.
After the original bipartite graph is obtained according to the user and the corresponding content in the platform, the following steps are carried out:
s200, updating a first lower bound value, updating a second lower bound value according to the current target optimal solution, and deleting partial vertexes in the original bipartite graph according to the degrees of the first vertexes, the degrees of the second vertexes, the first lower bound value and the second lower bound value to obtain a reduced bipartite graph.
Wherein the updating the first lower bound value is updating the first lower bound value to a first value, wherein the first value is smaller than the current first lower bound value;
the updating the second lower bound value according to the current target optimal solution includes:
and updating the second lower bound value as the difference between the number of the vertexes in the current target optimal solution and the current first lower bound value.
For a bipartite graph, the size of the optimal solution depends on the number of first vertices and second vertices. In the present embodiment, two integer values lb are used R I.e. the first lower bound and lb L Namely, the second lower bound value is used as a lower bound of two-side sizes to restrict the number of two-side vertices of each subgraph.
After the original bipartite graph is obtained, inputting the original bipartite graph G = (L £ R, E), where L is a first vertex set, R is a second vertex set, and E is a number of edges, an integer a (in this embodiment, a is defined as a first preset threshold), and an integer b (in this embodiment, b is defined as a second preset threshold) into an algorithm, so as to find a target optimal solution, that is, maximum (a, b) -biplex, in the original bipartite graph.
In this embodiment, the overall algorithm framework is shown in FIG. 3.
In the first line of the algorithm shown in fig. 3, the first and second lower-bound values are initialized, then the first and second lower-bound values are updated in a loop (line 3) and the bipartite graph is reduced using a reduction algorithm based on the first and second lower-bound values, resulting in the reduced bipartite graph G' (line 4). The BRANCH AND BOUND method BRANCH _ AND _ BOUND (line 5) solving for the maximum (a, b) -biplex is then used on the reduced bipartite graph G', AND after the loop ends the maximum (a, b) -biplex of the original bipartite graph, i.e. the target subgraph, is returned.
Referring to fig. 4, the algorithm block shown in fig. 4 is a detailed description of the algorithm block shown in fig. 3. First, a local optimal solution is initialized using null maps(line 1), i.e., the initial value of the local optimal solution is null, and the first lower limit lb is determined by the degree of the point with the largest degree in the first vertex set L R Initializing the sum of the maximum degree of the first vertex and the first preset threshold value:(G) + a, and the second vertex number: the larger number in R is used as the initial value of the first lower bound value (row 2), and the second lower bound value is updated according to the current target optimal solution and the current first lower bound value, where the second lower bound value receives the influence of the optimal solution and the first lower bound value in each iteration, specifically, the updated second lower bound value is the difference between the current local optimal solution and the current first lower bound value, and the first lower bound value is updated to the first value according to the preset rule in each iteration, where the first value is smaller than most of the current first lower bound values, and in one embodiment, the preset rule may be halving, that is, the first lower bound value is halved in each iteration (row 5).
This step is the 7 th line of the algorithm shown in fig. 4, and partial vertexes in the original bipartite graph are deleted according to the degrees of the first vertex and the second vertex, and the first lower bound value and the second lower bound value, so as to obtain a reduced bipartite graph.
Deleting part of the vertexes in the original bipartite graph according to the degrees of the first vertexes, the degrees of the second vertexes, the first lower bound values and the second lower bound values, and including:
s210, when the degree of the first vertex is smaller than a first difference value, deleting the first vertex from the original bipartite graph, wherein the first difference value is the difference between the first lower bound value and the first preset threshold value;
and S220, when the degree of the second vertex is smaller than a second difference value, deleting the second vertex from the original bipartite graph, wherein the second difference value is the difference between the second lower bound value and the second preset threshold value.
In particular, in said original bipartite graph G = (L ≡ R, E), if there is one said first vertex u ∈ L satisfying deg (u)<lb R A, then said first vertex u does not exist at a first lower limit lb R In (a, b) -biplex, which is the lower bound, deg (u) is the degree of vertex u. Similarly, if there is one said second vertex v ∈ R satisfying deg (v)<lb L B, then said second vertex v is absent at a second lower limit lb L In (a, b) -biplex, which is the lower bound, deg (v) is the degree of vertex v.
Deleting part of the vertexes in the original bipartite graph according to the degrees of the first vertexes, the degrees of the second vertexes, the first lower bound values and the second lower bound values, and further comprising:
s230, when the number of first neighbors of the first vertex is smaller than the second lower bound value, deleting the first vertex from the original bipartite graph, wherein when the number of common adjacent points between the two first vertices is not smaller than a third difference value, the two first vertices are the first neighbors of each other, and the third difference value is 2 times the difference between the first lower bound value and the first preset threshold value;
and S240, when the number of second neighbors of the second vertex is smaller than the first lower bound value, deleting the second vertex from the original bipartite graph, wherein when the number of common adjacent points between the two second vertices is not smaller than a fourth difference value, the two second vertices are the second neighbors, and the fourth difference value is 2 times the difference between the second lower bound value and the second preset threshold value.
In particular, in said original bipartite graph G = (L ═ u R, E), if there are two of said first vertices u 1 ,u 2 Epsilon L satisfies delta (u) 1 ,u 2 )≥lb R 2a, then u 1 And u 2 Are the first neighbors of each other, wherein Δ (u) 1 ,u 2 ) To represent said first vertex u 1 And u 2 A set of common neighbors (neighbors). Similarly, if there are two secondary vertices v 1 ,v 2 e.R satisfies Δ (v) 1 ,v 2 )≥lb L 2b, then v 1 And v 2 Are the second neighbors of each other. Where u is 1 And u 2 、v 1 And v 2 The same vertex can be represented.
In said original bipartite graph G = (L ≧ R, E), if one of said first vertices u ∈ L exists, the number of said first neighbors thereof is less than said second lower bound value lb L If u does not exist at the second lower limit lb L (a, b) -biplex in the lower bound. Similarly, if there is a vertex v ∈ R, the number of said second neighbors is smaller than the corresponding first lower-bound value lb R Then v does not exist at the first lower bound lb R (a, b) -biplex in the lower bound.
And deleting the vertexes which do not meet the conditions from the original bipartite graph to obtain a reduced bipartite graph generated by the iteration.
Referring to fig. 1, the target sub-graph searching method in the bipartite graph further includes the steps of:
s300, obtaining a local optimal solution according to the degrees of the first vertex and the degrees of the second vertex in the reduced bipartite graph, and updating the target optimal solution according to the local optimal solution.
An algorithm block diagram for updating the target optimal solution according to the local optimal solution is shown in fig. 5, the whole algorithm is a recursive function, the selected set F and the set U to be selected are respectively input, and the first preset threshold a and the first preset threshold b, and the current solution size currbest, currbest are the local optimal solution. The purpose of the algorithm box is to find the solution with the largest cardinality, so solutions that are undersized curbest will be pruned. The algorithm lines 1-15 consider the case when the selected set F is not (a, b) -biplex, the selected set F and the candidate set U constitute a larger (a, b) -biplex, the selected set F is larger than the current solution size currest, and the candidate set U is empty, respectively. In lines 17-25 of the algorithm, two pruning methods are proposed based on inference, adding F to the vertices v in the candidate set U and removing from the branches. Lines 27-35 describe a specific implementation based on the two-branch approach. The concrete implementation steps are as follows:
s310, adding all the vertexes in the reduced bipartite graph into a to-be-selected set, and setting the selected set as an empty set to serve as an initial branching graph.
And setting the initial selected set F as an empty set, adding all vertexes in the reduced bipartite graph to a to-be-selected set U, and forming an image by the current selected set F and the current to-be-selected set U to serve as an initial branching graph.
S320, adding vertexes meeting a first preset condition to a current selected set, wherein the first preset condition is that points, which are not adjacent to the vertexes in the current branch graph, of the vertexes are first-type vertexes, the first-type vertexes are points meeting a second preset condition in the current branch graph, and the second preset condition is that the degree of the first vertexes is not less than the difference between the number of the second vertexes in the current branch graph and the first preset threshold value, or the degree of the second vertexes is not less than the difference between the number of the first vertexes in the current branch graph and the second preset threshold value.
In particular, the amount of the solvent to be used, at the current branch graph F ═ U = (L- i ∪R i ,E i ) If there is one of said first vertices u e L i Satisfying deg (u) gtoreq | R i If u is the first type point, otherwise it is the second type point. Similarly, if one of said second vertices v ∈ R i Meet the requirement that deg (v) is more than or equal to | L i I-b, then v is called the first type point, otherwise, v is called the second type point.
If in the currently selected setAnd the current candidate setIf there is a vertex of said first type and all non-adjacent vertices are of said second type, then this vertex can be added directly to the branch of which F is the selected set
That is, the vertices in the current branching map that satisfy the first preset condition are added to the selected set.
S340, deleting the first vertex or the second vertex that meets a third preset condition from the current branching graph, where the third preset condition is that the number of nonadjacent vertices of the first vertex in the selected set is greater than the first preset threshold, or that the number of nonadjacent vertices of the second vertex in the selected set is greater than the second preset threshold.
Specifically, the current branching diagram F $ U = (L) i ∪R i ,E i ) If there is one of said first vertices u e L i If the number of non-adjacent vertices in the selected set F is greater than the first preset threshold a, the first vertex u cannot be added to the branch with F as the selected set, and the first vertex u can be directly deleted from the current branch graph. Similarly, if there is one said second vertex v ∈ R i If the number of non-adjacent vertices in the selected set is greater than the second preset threshold b, v cannot be added to the branch with F as the selected set, and the second vertex v can be deleted directly from the current branch graph.
S340, selecting a second type vertex in each branch graph as a root node, wherein the second type vertex is a point which does not meet the second preset condition in the current branch graph, generating at least one branch according to a set where the root node is located, and updating the selected set, wherein each branch comprises a branch graph.
Wherein the generating at least one branch according to the set in which the root node is located and updating the selected set includes:
s321, when the root node is in the selected set, obtaining a fifth difference value and a target vertex set corresponding to the root node, where the fifth difference value is a difference between the first preset threshold and the quantity of non-adjacent vertices of the root node in the selected set, and is denoted as q, and the target vertex set is a set of non-adjacent vertices of the root node in the to-be-selected set;
and S322, generating q +1 first branches according to the fifth difference and the target vertex set, wherein in the ith first branch of the first q branches, the first i-1 vertices of the target vertex set are added into the selected set, and the ith vertex is deleted from the current branch diagram, wherein i is a positive integer not greater than q, in the q +1 first branch, the first q vertices of the target vertex set are added into the selected set, and all the remaining points in the target vertex set are deleted from the current branch diagram.
Specifically, in this embodiment, there are two branch rules, where the first branch rule is that, when there is the second type point w in the selected set F, the second type point w is selected as a root node to perform branch expansion. Without loss of generality, taking the branch based on the first vertex as an example, when w is the first vertex, letWherein a is the first preset threshold value,representing the number of vertices for which vertex w has no immediate neighbors in the selected set F,representing the number of vertices w that do not have a direct adjacency in said candidate set U, p is readily known>q is calculated. Make itThe order of its vertices is not required. Here, q +1 of said first branches are generated, setting i to a positive integer not greater than q:
first branch 1: deleting point x from current branching diagram 1 That is, when i =1, the point x is directly deleted in the current branching diagram 1 ;
First branch 2-first branch q: in the ith said first branch, let said selected set F = F ≡ x 1 ,x 2 ,...,x i-1 The vertex { x ] in the candidate set is replaced by the vertex { x } 1 ,x 2 ,...,x i-1 Add to the selected set and delete x from the current branching map i ;
First branch q +1: let the selected set F = F ^ F ^ x ^ y 1 ,x 2 ,...,x q I.e. vertex { x) in the candidate set 1 ,x 2 ,...,x i-1 Add to the selected set and delete { x from the current branching map q+1 ,x q+2 ,...,x p }。
And S323, when the root node is in the candidate set, generating two second branches, wherein one second branch is used for deleting the root node from the current branch graph, and the other second branch is used for adding the root node into the selected set.
In this embodiment, the second branch rule is that, when there is no second type point in the selected set F, the second type point w is selected from the candidate set as a root node, and 2 second branches are generated:
second branch 1: deleting the second type vertex w from the current branching map.
Second branch 2: let the selected set F = F ≡ w, i.e. the second type vertex w is added to the current selected set, where the second type vertex appears in the selected set F, and then branching may be performed according to a first branching rule.
And S350, re-executing the step of adding the vertex meeting the first preset condition into the currently selected set until the second type vertex does not exist in the branch graph, and setting the second type vertex as a target branch graph.
And re-executing the step of adding the vertex meeting the second preset condition in the current branch graph into the selected set in the branch graph F U generated by all the branches, and continuously generating new branches until the second type vertex does not exist in the branch graph, and setting the new branches as target branch graphs.
S360, selecting the graph with the maximum number of vertexes from all the target branch graphs as the local optimal solution.
In this embodiment, one of the locally optimal solutions is generated in each of the reduced bipartite graphs.
Referring to fig. 1 again, in this embodiment, the method for searching for a target subgraph in a bipartite graph further includes the steps of:
s400, the step of updating the first lower bound value is executed again, and the step of updating the second lower bound value according to the current target optimal solution is executed until the first lower bound value is not larger than the minimum preset lower bound, wherein the initial value of the first lower bound value is the sum of the maximum degree of the first vertex and the first preset threshold, and the initial value of the local optimal solution is an empty figure.
Referring again to FIG. 4, the algorithm block of FIG. 4 loops lines 4-13 iteratively update the first and second lower bound values and calculate the corresponding optimal solution using a branch and bound method. The second lower limit value lb L Receiving the local optimal solution sum of the last time and the first lower limit value lb of the last time in each iteration R Wherein the first lower limit value lb R And halving each iteration until a preset condition is met, wherein the preset condition is that the first lower bound value is not greater than a minimum preset lower bound. In the k-th iteration, the currently generated local optimal solution and the target optimal solution generated in the last iteration are compared, the solution with the largest base number is selected as the target optimal solution of the current iteration, and the loop is returned when the loop stops. Due to the update law of the first lower bound value in the algorithm, the maximum (a, b) -biplex of the original biplex is covered by the target optimal solution generated at each iteration. Until the first lower bound value is not greater than the minimum preset lower bound, as shown in the 4 th row in the algorithm box shown in fig. 4, the minimum preset lower bound is 1. And when the first lower bound value is not greater than 1, ending the iteration, wherein the target optimal solution at this time is the target sub-graph to be searched by the embodiment.
S500, the latest target optimal solution is taken as the target subgraph, the target subgraph is the subgraph with the largest number of top points contained in the subgraph which meets the target condition in the original subgraph, and the target condition is that the degree of each first top point in the subgraph is not less than the difference between the number of second top points in the subgraph and a first preset threshold value, and the degree of each second top point in the subgraph is not less than the difference between the number of first top points in the subgraph and a second preset threshold value.
And obtaining a target crowd and target content according to the searched target subgraph, the crowd corresponding to each first vertex in the target subgraph and the content corresponding to each second vertex, and recommending the target content to the target crowd in a platform to realize a product recommendation function.
In summary, the present embodiment provides a method for searching a target sub-graph in a bipartite graph, which converts a problem of implementing a product recommendation function according to a correspondence between users and contents in a platform into a problem of searching for a maximum (a, b) -biplex target sub-graph in an original bipartite graph. So that the maximum connection relationship of a specific crowd with specific content can be found given a and b to realize the product recommendation function.
It should be understood that, although the steps in the flowcharts shown in the drawings of the present specification are shown in sequence as indicated by the arrows, the steps are not necessarily performed in sequence as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least a portion of the steps in the flowcharts may include multiple sub-steps or multiple stages, which are not necessarily performed at the same time, but may be performed at different times, and the order of performing the sub-steps or stages is not necessarily sequential, but may be performed alternately or alternately with other steps or at least a portion of the sub-steps or stages of other steps.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above may be implemented by hardware instructions of a computer program, which may be stored in a non-volatile computer-readable storage medium, and when executed, may include the processes of the embodiments of the methods described above. Any reference to memory, storage, databases or other media used in the embodiments provided herein may include non-volatile and/or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically Programmable ROM (EPROM), electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double Data Rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous Link DRAM (SLDRAM), rambus (Rambus) direct RAM (RDRAM), direct Rambus Dynamic RAM (DRDRAM), and Rambus Dynamic RAM (RDRAM), among others.
Example two
Based on the foregoing embodiment, the present invention further provides a device for searching for a target sub-graph in a bipartite graph, where, as shown in fig. 6, the device for searching for a target sub-graph in a bipartite graph includes:
an initial solution generating module, configured to obtain an original bipartite graph, where the original bipartite graph includes a plurality of first vertices and a plurality of second vertices, where any two of the first vertices are not connected to each other and any two of the second vertices are not connected to each other, and degrees of the first vertices and the second vertices are obtained, which is specifically described in embodiment one;
a bipartite graph reduction module, configured to update a first lower bound value, update a second lower bound value according to a current target optimal solution, and delete a part of vertices in an original bipartite graph according to the degrees of the first vertex and the degrees of the second vertex, and the first lower bound value and the second lower bound value, so as to obtain a reduced bipartite graph, as described in embodiment one;
a local optimal solution obtaining module, configured to obtain a local optimal solution according to the degrees of the first vertex and the degrees of the second vertex in the reduced bipartite graph, and update the target optimal solution according to the local optimal solution, which is specifically described in embodiment one;
an iteration module, configured to re-execute the step of updating the first lower bound value and updating a second lower bound value according to the current target optimal solution until the first lower bound value is not greater than a minimum preset lower bound, where an initial value of the first lower bound value is a sum of a maximum degree of the first vertex and the first preset threshold, an initial value of the second lower bound value is a difference between the initial value of the local optimal solution and the initial value of the first lower bound value, and the initial value of the local optimal solution is an empty map, as described in embodiment one;
a subgraph obtaining module, configured to use the latest optimal target solution as the target subgraph, where the target subgraph is a subgraph with the largest number of vertices included in a subgraph that meets a target condition in the original subgraph, and the target condition is that the degree of each first vertex in the subgraph is not less than the difference between the number of second vertices in the subgraph and a first preset threshold, and the degree of each second vertex is not less than the difference between the number of first vertices in the subgraph and a second preset threshold, as in embodiment one.
EXAMPLE III
Based on the above embodiments, the present invention further provides a terminal, as shown in fig. 7, where the terminal includes a processor 10 and a memory 20. Fig. 7 shows only some of the components of the terminal, but it is to be understood that not all of the shown components are required to be implemented, and that more or fewer components may be implemented instead.
The memory 20 may in some embodiments be an internal storage unit of the terminal, such as a hard disk or a memory of the terminal. The memory 20 may also be an external storage device of the terminal in other embodiments, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) card, a flash memory card (FlashCard), etc. provided on the terminal. Further, the memory 20 may also include both an internal storage unit and an external storage device of the terminal. The memory 20 is used for storing application software installed in the terminal and various data. The memory 20 may also be used to temporarily store data that has been output or is to be output. In an embodiment, the memory 20 stores a target subgraph searching program 30 in the bipartite graph, and the target subgraph searching program 30 in the bipartite graph can be executed by the processor 10, so as to implement the target subgraph searching method in the bipartite graph in the present application.
The processor 10 may be a Central Processing Unit (CPU), a microprocessor or other chip in some embodiments, and is used for running program codes stored in the memory 20 or processing data, for example, executing a target subgraph searching method in the bipartite graph.
In one embodiment, when the processor 10 executes the target sub-graph lookup program 30 in the bipartite graph in the memory 20, the following steps are implemented:
acquiring an original bipartite graph, wherein the original bipartite graph comprises a plurality of first vertexes and a plurality of second vertexes, any two first vertexes are not connected with each other, any two second vertexes are not connected with each other, and degrees of the first vertexes and the second vertexes are acquired;
updating a first lower bound value, updating a second lower bound value according to the current target optimal solution, and deleting partial vertexes in the original bipartite graph according to the degrees of the first vertexes, the degrees of the second vertexes, the first lower bound value and the second lower bound value to obtain a reduced bipartite graph;
obtaining a local optimal solution according to the degrees of the first vertex and the degrees of the second vertex in the reduced bipartite graph, and updating the target optimal solution according to the local optimal solution;
re-executing the step of updating the first lower bound value and updating the second lower bound value according to the current target optimal solution until the first lower bound value is not greater than the minimum preset lower bound, wherein the initial value of the first lower bound value is the sum of the maximum degree of the first vertex and the first preset threshold, and the initial value of the local optimal solution is an empty figure;
and taking the latest target optimal solution as the target subgraph, wherein the target subgraph is the subgraph with the largest number of top points contained in the subgraph which meets a target condition in the original subgraph, and the target condition is that the degree of each first top point in the subgraph is not less than the difference between the number of second top points in the subgraph and a first preset threshold value, and the degree of each second top point is not less than the difference between the number of first top points in the subgraph and a second preset threshold value.
Deleting part of the vertexes in the original bipartite graph according to the degrees of the first vertexes, the degrees of the second vertexes, the first lower bound values and the second lower bound values, and including:
deleting the first vertex from the original bipartite graph when the degree of the first vertex is smaller than a first difference value, wherein the first difference value is the difference between the first lower bound value and the first preset threshold value;
and when the degree of the second vertex is smaller than a second difference value, deleting the second vertex from the original bipartite graph, wherein the second difference value is the difference between the second lower bound value and the second preset threshold value.
Deleting part of the vertexes in the original bipartite graph according to the degrees of the first vertexes, the degrees of the second vertexes, the first lower bound values and the second lower bound values, and further comprising:
deleting the first vertex from the original bipartite graph when the number of first neighbors of the first vertex is smaller than the second lower bound value, wherein when the number of common adjacent points between the two first vertices is not smaller than a third difference value, the two first vertices are the first neighbors of each other, and the third difference value is a difference of 2 times of the first lower bound value and the first preset threshold value;
and when the number of second neighbors of the second vertex is smaller than the first lower bound value, deleting the second vertex from the original bipartite graph, wherein when the number of common adjacent points between the two second vertices is not smaller than a fourth difference value, the two second vertices are the second neighbors, and the fourth difference value is 2 times the difference between the second lower bound value and the second preset threshold value.
Obtaining a local optimal solution according to the degrees of the first vertex and the degrees of the second vertex in the reduced bipartite graph, including:
adding all vertexes in the reduced bipartite graph into a to-be-selected set, and setting the selected set as an empty set as an initial branching graph;
adding vertexes meeting a first preset condition into a current selected set, wherein the first preset condition is that points, which are not adjacent to the vertexes in a current branch graph, of the vertexes are first-type vertexes, the first-type vertexes are points meeting a second preset condition in the current branch graph, and the second preset condition is that the degree of the first vertexes is not smaller than the difference between the number of the second vertexes in the current branch graph and the first preset threshold value, or the degree of the second vertexes is not smaller than the difference between the number of the first vertexes in the current branch graph and the second preset threshold value;
deleting the first vertex or the second vertex which meets a third preset condition from the current branching diagram, wherein the third preset condition is that the number of the non-adjacent vertexes of the first vertex in the selected set is greater than the first preset threshold value, or the number of the non-adjacent vertexes of the second vertex in the selected set is greater than the second preset threshold value;
selecting a second type vertex in each branch graph as a root node, wherein the second type vertex is a point which does not meet the second preset condition in the current branch graph, generating at least one branch according to a set in which the root node is located, and updating the selected set, wherein each branch comprises a branch graph;
re-executing the step of adding the vertex meeting the first preset condition into the currently selected set until the second type vertex does not exist in the branching diagram, and setting the second type vertex as a target branching diagram;
and selecting the graph with the maximum number of vertexes from all the target branch graphs as the local optimal solution.
The generating at least one branch according to the set where the root node is located and updating the selected set includes:
when the root node is in the selected set, acquiring a fifth difference value and a target vertex set corresponding to the root node, wherein the fifth difference value is a difference between the first preset threshold value and the quantity of non-adjacent vertices of the root node in the selected set and is marked as q, and the target vertex set is a set of non-adjacent vertices of the root node in the to-be-selected set;
generating q +1 first branches according to the fifth difference value and the target vertex set, wherein in the ith first branch in the first q first branches, the first i-1 vertexes of the target vertex set are added into the selected set, and the ith vertex is deleted from the current branch graph, wherein i is a positive integer not greater than q, in the q +1 first branches, the first q vertexes of the target vertex set are added into the selected set, and all the remaining points in the target vertex set are deleted from the current branch graph;
and when the root node is in the candidate set, generating two second branches, wherein one second branch is used for deleting the root node from the reduced bipartite graph, and the other second branch is used for adding the root node into the selected set.
The updating the target optimal solution according to the local optimal solution includes:
and if the local optimal solution is smaller than the target optimal solution generated by the last iteration, the target optimal solution generated by the last iteration is reserved as the target optimal solution.
The updating the first lower bound value is updating the first lower bound value to a first value, wherein the first value is smaller than the current first lower bound value;
the updating the second lower bound value according to the current target optimal solution includes:
and updating the second lower bound value as the difference between the number of vertexes in the current target optimal solution and the current first lower bound value.
Example four
The present invention also provides a computer readable storage medium, in which one or more programs are stored, the one or more programs being executable by one or more processors to implement the steps of the target subgraph searching method in the bipartite graph as described above.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.
Claims (10)
1. A method for searching a target subgraph in a bipartite graph is characterized by comprising the following steps:
acquiring an original bipartite graph, wherein the original bipartite graph comprises a plurality of first vertexes and a plurality of second vertexes, any two of the first vertexes are not connected with each other, any two of the second vertexes are not connected with each other, and degrees of the first vertexes and the second vertexes are acquired;
updating a first lower bound value, updating a second lower bound value according to the current target optimal solution, and deleting partial vertexes in the original bipartite graph according to the degrees of the first vertexes, the degrees of the second vertexes, the first lower bound value and the second lower bound value to obtain a reduced bipartite graph;
obtaining a local optimal solution according to the degrees of the first vertex and the degrees of the second vertex in the reduced bipartite graph, and updating the target optimal solution according to the local optimal solution;
re-executing the step of updating the first lower bound value and updating the second lower bound value according to the current target optimal solution until the first lower bound value is not greater than the minimum preset lower bound, wherein the initial value of the first lower bound value is the sum of the maximum degree of the first vertex and the first preset threshold, and the initial value of the local optimal solution is an empty figure;
and taking the latest target optimal solution as the target subgraph, wherein the target subgraph is the subgraph with the maximum number of top points contained in the subgraph meeting target conditions in the original subgraph, and the target conditions are that the degree of each first top point in the subgraph is not less than the difference between the number of second top points in the subgraph and a first preset threshold value, and the degree of each second top point in the subgraph is not less than the difference between the number of first top points in the subgraph and a second preset threshold value.
2. The method for searching a target subgraph in a bipartite graph according to claim 1, wherein the deleting of part of the vertices in the original bipartite graph according to the degrees of the first and second vertices and the first and second lower bound values comprises:
deleting the first vertex from the original bipartite graph when the degree of the first vertex is smaller than a first difference value, wherein the first difference value is the difference between the first lower bound value and the first preset threshold value;
and when the degree of the second vertex is smaller than a second difference value, deleting the second vertex from the original bipartite graph, wherein the second difference value is the difference between the second lower bound value and the second preset threshold value.
3. The method for finding a target subgraph in a bipartite graph according to claim 1, wherein the deleting of some vertices in the original bipartite graph according to the degrees of the first and second vertices and the first and second lower bound values further comprises:
deleting the first vertex from the original bipartite graph when the number of first neighbors of the first vertex is smaller than the second lower bound value, wherein when the number of common adjacent points between the two first vertices is not smaller than a third difference value, the two first vertices are the first neighbors of each other, and the third difference value is a difference of 2 times of the first lower bound value and the first preset threshold value;
and when the number of second neighbors of the second vertex is smaller than the first lower bound value, deleting the second vertex from the original bipartite graph, wherein when the number of common adjacent points between the two second vertices is not smaller than a fourth difference value, the two second vertices are the second neighbors, and the fourth difference value is 2 times the difference between the second lower bound value and the second preset threshold value.
4. The method for searching for a target subgraph in a bipartite graph according to claim 1, wherein the obtaining of a local optimal solution according to the degrees of the first vertex and the degrees of the second vertex in the reduced bipartite graph comprises:
adding all vertexes in the reduced bipartite graph into a to-be-selected set, and setting the selected set as an empty set as an initial branching graph;
adding vertexes meeting a first preset condition to a current selected set, wherein the first preset condition is that points, which are not adjacent to the vertexes in a current branch graph, of the vertexes are both first-type vertexes, the first-type vertexes are points meeting a second preset condition in the current branch graph, and the second preset condition is that the degree of the first vertexes is not less than the difference between the number of the second vertexes in the current branch graph and the first preset threshold value, or the degree of the second vertexes is not less than the difference between the number of the first vertexes in the current branch graph and the second preset threshold value;
deleting the first vertex or the second vertex which meets a third preset condition from the current branching diagram, wherein the third preset condition is that the number of the non-adjacent vertexes of the first vertex in the selected set is greater than the first preset threshold value, or the number of the non-adjacent vertexes of the second vertex in the selected set is greater than the second preset threshold value;
selecting a second type vertex in each branch graph as a root node, wherein the second type vertex is a point which does not meet the second preset condition in the current branch graph, generating at least one branch according to a set in which the root node is located, and updating the selected set, wherein each branch comprises a branch graph;
re-executing the step of adding the vertex meeting the first preset condition into the currently selected set until the second type vertex does not exist in the branching diagram, and setting the second type vertex as a target branching diagram;
and selecting the graph with the maximum number of vertexes from all the target branch graphs as the local optimal solution.
5. The method for finding a target subgraph in a bipartite graph according to claim 4, wherein the generating at least one branch according to the set where the root node is located and updating the selected set comprises:
when the root node is in the selected set, acquiring a fifth difference value and a target vertex set corresponding to the root node, wherein the fifth difference value is a difference between the first preset threshold value and the quantity of non-adjacent vertices of the root node in the selected set and is marked as q, and the target vertex set is a set of non-adjacent vertices of the root node in the to-be-selected set;
generating q +1 first branches according to the fifth difference value and the target vertex set, adding the first i-1 vertexes of the target vertex set into the selected set and deleting the ith vertex from the current branch graph in the ith first branch of the first q first branches, wherein i is a positive integer not greater than q, adding the first q vertexes of the target vertex set into the selected set and deleting all the remaining points in the target vertex set from the current branch graph in the q +1 first branches;
and when the root node is in the candidate set, generating two second branches, wherein one second branch is used for deleting the root node from the current branch graph, and the other second branch is used for adding the root node into the selected set.
6. The method for searching for a target subgraph in a bipartite graph according to claim 1, wherein the updating the target optimal solution according to the local optimal solution comprises:
and if the local optimal solution is smaller than the target optimal solution generated by the last iteration, the target optimal solution generated by the last iteration is reserved as the target optimal solution.
7. The method for searching for a target subgraph in a bipartite graph according to claim 1, wherein the updating the first lower limit value is to update the first lower limit value to a first value, wherein the first value is smaller than the current first lower limit value;
the updating the second lower bound value according to the current target optimal solution includes:
and updating the second lower bound value as the difference between the number of the vertexes in the current target optimal solution and the current first lower bound value.
8. A device for searching a target subgraph in a bipartite graph is characterized by comprising the following steps:
an initial solution generating module, configured to obtain an original bipartite graph, where the original bipartite graph includes a plurality of first vertices and a plurality of second vertices, where any two of the first vertices are not connected to each other, and any two of the second vertices are not connected to each other, and degrees of the first vertices and the second vertices are obtained;
the bipartite graph reduction module is used for updating a first lower bound value, updating a second lower bound value according to a current target optimal solution, and deleting partial vertexes in an original bipartite graph according to the degrees of the first vertexes, the degrees of the second vertexes, the first lower bound value and the second lower bound value to obtain a reduced bipartite graph;
a local optimal solution obtaining module, configured to obtain a local optimal solution according to the degrees of the first vertex and the degrees of the second vertex in the reduced bipartite graph, and update the target optimal solution according to the local optimal solution;
an iteration module, configured to re-execute the step of updating the first lower bound value and update a second lower bound value according to the current target optimal solution until the first lower bound value is not greater than a minimum preset lower bound, where an initial value of the first lower bound value is a sum of a maximum degree of the first vertex and the first preset threshold, an initial value of the second lower bound value is a difference between the initial value of the local optimal solution and the initial value of the first lower bound value, and the initial value of the local optimal solution is an empty map;
a subgraph obtaining module, configured to use the latest optimal target solution as the target subgraph, where the target subgraph is a subgraph with the largest number of vertices included in a subgraph satisfying a target condition in the original subgraph, and the target condition is that the degree of each first vertex in the subgraph is not less than the difference between the number of second vertices in the subgraph and a first preset threshold, and the degree of each second vertex is not less than the difference between the number of first vertices in the subgraph and a second preset threshold.
9. A terminal, characterized in that the terminal comprises: a processor, a computer readable storage medium communicatively connected to the processor, the computer readable storage medium adapted to store a plurality of instructions, the processor adapted to call the instructions in the computer readable storage medium to perform the steps of implementing the target subgraph searching method in the bipartite graph of any one of claims 1-7.
10. A computer-readable storage medium, storing one or more programs, the one or more programs being executable by one or more processors to perform the steps of the method for target subgraph lookup in a bipartite graph according to any one of claims 1-7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211441505.2A CN115795104A (en) | 2022-11-17 | 2022-11-17 | Target subgraph searching method in bipartite graph and related equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211441505.2A CN115795104A (en) | 2022-11-17 | 2022-11-17 | Target subgraph searching method in bipartite graph and related equipment |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115795104A true CN115795104A (en) | 2023-03-14 |
Family
ID=85438592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211441505.2A Pending CN115795104A (en) | 2022-11-17 | 2022-11-17 | Target subgraph searching method in bipartite graph and related equipment |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115795104A (en) |
-
2022
- 2022-11-17 CN CN202211441505.2A patent/CN115795104A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Data matching of building polygons at multiple map scales improved by contextual information and relaxation | |
US8645380B2 (en) | Optimized KD-tree for scalable search | |
US20150370919A1 (en) | Graph travelsal operator and extensible framework inside a column store | |
CN108388642B (en) | Sub-graph query method and device and computer readable storage medium | |
US20150370838A1 (en) | Index structure to accelerate graph traversal | |
CN111651641B (en) | Graph query method, device and storage medium | |
CN111259137B (en) | Method and system for generating knowledge graph abstract | |
CN113761124B (en) | Training method of text coding model, information retrieval method and equipment | |
CN109992590B (en) | Approximate space keyword query method and system with digital attributes in traffic network | |
CN115618098B (en) | Cold-chain logistics recommendation method and device based on knowledge enhancement and cavity convolution | |
Hlaoui et al. | Median graph computation for graph clustering | |
CN112199884B (en) | Method, device, equipment and storage medium for generating article molecules | |
Li et al. | An extended depth-first search algorithm for optimal triangulation of Bayesian networks | |
CN106599122B (en) | Parallel frequent closed sequence mining method based on vertical decomposition | |
CN113298234A (en) | Method for generating expression vector of node in multiple relation graph | |
CN115438088B (en) | Target subgraph searching method in directed graph and related equipment | |
CN115795104A (en) | Target subgraph searching method in bipartite graph and related equipment | |
JP5555238B2 (en) | Information processing apparatus and program for Bayesian network structure learning | |
Li et al. | An alternating nonmonotone projected Barzilai–Borwein algorithm of nonnegative factorization of big matrices | |
CN115794884A (en) | Method and device for pre-computing subgraph query based on graph abstract technology | |
CN112685574B (en) | Method and device for determining hierarchical relationship of domain terms | |
Ahmed et al. | Computing source-to-target shortest paths for complex networks in RDBMS | |
Díaz del Río et al. | Computing the component-labeling and the adjacency tree of a binary digital image in near logarithmic-time | |
JP2008305072A (en) | Network generation method, information retrieval method, program, network generation device, and information retrieval device | |
Li et al. | Frequent Subtree Mining Algorithm for Ribonucleic Acid Topological Pattern. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |