Data processing method and related device
By screening the edge of the maximum influence expansion in social network diagrams, the collection of propaganda objects is determined to solve the problem of smaller influence of communication, and the scope of communication is maximized and the promotion of social interaction.
Patent Information
- Application Number
- CN202310902075.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-20
- Publication Date
- 2025-01-24
AI Technical Summary
When determining the object of transmission, the prior art can easily lead to a small influence of transmission, resulting in insufficient scope of transmission, and the inability to maximize the promotion of social interaction between multiple initial objects in the application.
By obtaining multiple target objects from multiple initial objects of the application, and based on the edge set of the target object in the social network graph, excluding the selected edge set to obtain the candidate edge set, and filtering the candidate edges with the greatest influence expansion as The selected edges are gradually added to the selected edge set until the preset number is reached, and the propagation object set is determined.
Maximize the spread of communication objects and promote social interaction between multiple initial objects in the application.
Smart Images

Figure CN119357482A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a data processing method and related devices. Background Art
[0002] Currently, applications usually launch some communication activities to multiple target objects among multiple initial objects, guiding the multiple target objects to conduct communication social activities with multiple communication objects determined among the multiple initial objects, so as to promote social interaction among the multiple initial objects.
[0003] In the related art, a method for determining a communication object means that for each target object, a plurality of other objects with higher social intimacy can be determined from among a plurality of other objects as a plurality of communication objects based on the social intimacy between the target object and each other object.
[0004] However, the method of determining multiple other objects with high social intimacy as multiple communication objects in the above method is likely to result in the determined communication objects having a smaller communication influence, thereby resulting in a smaller communication range of the communication activity, and failing to maximize the promotion of social interaction between multiple initial objects in the application. Summary of the invention
[0005] In order to solve the above technical problems, the present application provides a data processing method and related devices to determine the communication object with the maximum communication influence, so as to maximize the communication range of the communication object.
[0006] The embodiments of the present application disclose the following technical solutions:
[0007] On the one hand, an embodiment of the present application provides a data processing method, the method comprising:
[0008] Acquire multiple target objects from multiple initial objects of the application, and determine a preset number of multiple propagation objects for each of the target objects;
[0009] According to the plurality of edge sets corresponding to the plurality of target objects in the social network graph formed by the plurality of initial objects, excluding the selected edge set, a candidate edge set is obtained; the edge set includes an edge from the target object as a head node to a neighboring node of the head node as a tail node;
[0010] In the candidate edge set, the candidate edge with the largest influence extension degree under the condition of the selected edge set is determined as the selected edge;
[0011] adding the selected edge to the selected edge set;
[0012] Return to the step of excluding the selected edge set to obtain the candidate edge set, until the number of selected edges corresponding to each first-category object in the selected edge set reaches the preset number, and the selected edge set includes the edge set of each second-category object; the first-category object is a target object whose edge number in the edge set among the multiple target objects is greater than or equal to the preset number, and the second-category object is a target object whose edge number in the edge set among the multiple target objects is less than the preset number;
[0013] A propagation object set of the plurality of target objects is determined according to the selected edge set.
[0014] On the other hand, an embodiment of the present application provides a data processing device, the device comprising: an acquisition unit, an exclusion unit, a determination unit, and an addition unit;
[0015] The acquisition unit is used to acquire multiple target objects from multiple initial objects of the application program, and determine a preset number of multiple propagation objects for each of the target objects;
[0016] The exclusion unit is used to exclude the selected edge set from the multiple edge sets corresponding to the multiple target objects in the social network graph formed by the multiple initial objects to obtain a candidate edge set; the edge set includes the edge from the target object as the head node to the neighbor node of the head node as the tail node;
[0017] The determining unit is configured to determine, in the candidate edge set, a candidate edge with the largest influence extension under the condition of the selected edge set as a selected edge;
[0018] The adding unit is used to add the selected edge to the selected edge set;
[0019] The returning unit is used to return to the step of excluding the selected edge set to obtain the candidate edge set, until the number of selected edges corresponding to each first-category object in the selected edge set is the preset number, and the selected edge set includes the edge set of each second-category object; the first-category object is a target object whose edge number in the edge set among the multiple target objects is greater than or equal to the preset number, and the second-category object is a target object whose edge number in the edge set among the multiple target objects is less than the preset number;
[0020] The determining unit is further configured to determine a propagation object set of the plurality of target objects according to the selected edge set.
[0021] On the other hand, an embodiment of the present application provides a computer device, the computer device comprising a processor and a memory:
[0022] The memory is used to store a computer program and transmit the computer program to the processor;
[0023] The processor is configured to execute the method described in any one of the preceding aspects according to instructions in the computer program.
[0024] On the other hand, an embodiment of the present application provides a computer-readable storage medium, which is used to store a computer program. When the computer program runs on a computer device, the computer device executes the method described in any one of the above aspects.
[0025] On the other hand, an embodiment of the present application provides a computer program product, including a computer program, which, when executed on a computer device, enables the computer device to execute the method described in any one of the aforementioned aspects.
[0026] It can be seen from the above technical solution that multiple target objects are obtained from multiple initial objects of the application, and a preset number of multiple propagation objects is determined for each target object. Based on the multiple target objects in the social network graph formed by the multiple initial objects, multiple edge sets are respectively used as head nodes to the neighbor nodes of the head nodes as tail nodes, and the selected edge set is excluded to obtain the candidate edge set; the candidate edge with the largest influence expansion degree under the conditions of the selected edge set in the candidate edge set is taken as the selected edge, and the selected edge is added to the selected edge set; this method excludes the candidate edge set of the selected edge set from the multiple edge sets each time, and screens the candidate edge added to the selected edge set so that the influence expansion degree has the largest increment, so as to improve the propagation influence. Return to the step of excluding the selected edge set to obtain the candidate edge set, until the selected edge set includes a preset number of selected edges for each first-category object, and an edge set for each second-category object, wherein the first-category object is a target object whose edge number in the edge set is greater than a preset number among multiple target objects, and the second-category object is a target object whose edge number in the edge set is less than or equal to a preset number among multiple target objects; determine a propagation object set for multiple target objects through the selected edge set; this method enables the propagation object set to maximize the propagation range of the propagation object set on the basis of including less than or equal to a preset number of propagation objects for each target object, so as to subsequently guide each target object to conduct social propagation with its multiple propagation objects based on the propagation object set, thereby maximizing the promotion of social interaction between multiple initial objects in the application. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technical members in this field, other drawings can be obtained based on these drawings without paying creative labor.
[0028] Figure 1 A schematic diagram of a system architecture of a data processing method provided in an embodiment of the present application;
[0029] Figure 2 A flowchart of a data processing method provided in an embodiment of the present application;
[0030] Figure 3 A partial schematic diagram of a social network graph formed by multiple initial objects provided in an embodiment of the present application;
[0031] Figure 4 A partial schematic diagram of multiple random reverse reachable sets provided in an embodiment of the present application;
[0032] Figure 5 A partial schematic diagram of a target object displaying multiple propagation objects of the target object provided by an embodiment of the present application;
[0033] Figure 6 A flowchart of another data processing method provided in an embodiment of the present application;
[0034] Figure 7 A relationship diagram between a preset number and a propagation range when using different algorithms to determine propagation objects in an application under multiple public social data sets provided in an embodiment of the present application;
[0035] Figure 8 A graph showing the relationship between the preset number and the calculation time when using different algorithms to determine the propagation objects in an application under multiple public social data sets provided in an embodiment of the present application;
[0036] Fig. 9 A schematic diagram of an embodiment of the present application providing a method of using RR-OPIM+ and social intimacy to determine the dissemination range and active duration of a dissemination object in an application;
[0037] Fig.10 A structural diagram of a data processing device provided in an embodiment of the present application;
[0038] Fig.11 A structural diagram of a server provided in an embodiment of the present application;
[0039] Fig.12A structural diagram of a terminal provided in an embodiment of the present application. DETAILED DESCRIPTION
[0040] The embodiments of the present application are described below in conjunction with the accompanying drawings.
[0041] At present, in order to promote social interaction between multiple initial objects, the application can guide multiple target objects among the multiple initial objects to communicate socially with multiple communication objects determined among the multiple initial objects through communication activities. When determining multiple communication objects, usually for each target object, the social intimacy between the target object and each other object can be used as multiple communication objects of the target object.
[0042] However, after research, it was found that the social intimacy between the target object and other objects in the above method represents the social relationship between the target object and other objects, but cannot represent the size of the communication influence of other objects. It is easy to lead to a smaller communication influence of the determined communication object, thereby resulting in a smaller communication range of the communication activity, and cannot maximize the promotion of social interaction between multiple initial objects in the application.
[0043] The embodiment of the present application provides a data processing method, which obtains multiple target objects from multiple initial objects of an application, and determines a preset number of multiple propagation objects for each target object. Based on the multiple target objects in the social network graph formed by the multiple initial objects, multiple edge sets are respectively used as head nodes to the neighbor nodes of the head nodes as tail nodes, and the selected edge set is excluded to obtain the candidate edge set; the candidate edge with the largest influence expansion degree under the conditions of the selected edge set in the candidate edge set is used as the selected edge, and the selected edge is added to the selected edge set; this method excludes the candidate edge set of the selected edge set from the multiple edge sets each time, and screens the candidate edge added to the selected edge set so that the influence expansion degree has the largest increment, so as to improve the propagation influence. Return to the step of excluding the selected edge set to obtain the candidate edge set, until the selected edge set includes a preset number of selected edges for each first-category object, and an edge set for each second-category object, wherein the first-category object is a target object whose edge number in the edge set is greater than a preset number among multiple target objects, and the second-category object is a target object whose edge number in the edge set is less than or equal to a preset number among multiple target objects; determine a propagation object set for multiple target objects through the selected edge set; this method enables the propagation object set to maximize the propagation range of the propagation object set on the basis of including less than or equal to a preset number of propagation objects for each target object, so as to subsequently guide each target object to conduct social propagation with its multiple propagation objects based on the propagation object set, thereby maximizing the promotion of social interaction between multiple initial objects in the application.
[0044] Next, the system architecture of the data processing method will be introduced. Figure 1 , Figure 1 A schematic diagram of a system architecture of a data processing method provided in an embodiment of the present application, wherein the system architecture includes a server 100, and the server 100 is used to determine a propagation object in an application.
[0045] The server 100 obtains multiple target objects from multiple initial objects of the application, and determines a preset number of multiple propagation objects for each target object. As an example, the initial object set formed by the multiple initial objects is V, and the target object set formed by the multiple target objects is A, then the server 100 can obtain A from V, and determine a preset number of multiple propagation objects for each u∈A as k.
[0046] The server 100 excludes the selected edge set from the multiple edge sets corresponding to the multiple target objects in the social network graph formed by the multiple initial objects to obtain the candidate edge set; the edge set includes the edge from the target object as the head node to the neighbor node of the head node as the tail node. As an example, the selected edge set is S, and S is initialized to an empty set. Based on the above example, the social network graph formed by the multiple initial objects in V is G, G = (V, E), E is the edge set of the social network graph, and the edge set of each u∈A is C u , C u ∈E, the server 100 can use multiple u∈A in G as the head node to the neighbor nodes of the head node as multiple C nodes of the tail node. u , exclude S to get the candidate edge set.
[0047] The server 100 determines the candidate edge with the largest influence extension degree under the condition of the selected edge set as the selected edge in the candidate edge set. As an example, based on the above example, the server 100 determines the candidate edge with the largest influence extension degree under the condition of the selected edge set as the selected edge. u,v As selected side.
[0048] The server 100 adds the selected edge to the selected edge set. As an example, based on the above example, the server 100 can add the selected edge to the selected edge set. u,v Increase to S, that is, S = S ∪ {e u,v}.
[0049] The server 100 returns to the step of excluding the selected edge set to obtain the candidate edge set until the number of selected edges corresponding to each first-category object in the selected edge set is a preset number, and the selected edge set includes the edge set of each second-category object; the first-category object is a target object whose edge number in the edge set is greater than or equal to the preset number among multiple target objects, and the second-category object is a target object whose edge number in the edge set is less than the preset number among multiple target objects. As an example, based on the above example, the server 100 may return to the step of excluding S to obtain the candidate edge set until S includes k selected edges of each first-category object and C selected edges of each second-category object. u ; Among them, the first type of objects are u whose edge number in the edge set of A is greater than or equal to k, and the second type of objects are u whose edge number in the edge set of A is less than k.
[0050] The server 100 determines the propagation object sets of the multiple target objects according to the selected edge sets. As an example, based on the above example, the server 100 can determine the propagation object set of A through S.
[0051] That is to say, multiple target objects are obtained from multiple initial objects of the application, and a preset number of multiple propagation objects is determined for each target object. In the social network graph formed by multiple initial objects, multiple target objects are respectively used as multiple edge sets from the head node to the neighbor node of the head node as the tail node, and the selected edge set is excluded to obtain the candidate edge set; the candidate edge with the largest influence extension degree under the conditions of the selected edge set in the candidate edge set is taken as the selected edge, and the selected edge is added to the selected edge set; this method excludes the candidate edge set of the selected edge set from the multiple edge sets each time, and screens the candidate edge added to the selected edge set so that the influence extension degree has the largest increment, so as to improve the propagation influence. Return to the step of excluding the selected edge set to obtain the candidate edge set, until the selected edge set includes a preset number of selected edges for each first-category object, and an edge set for each second-category object, wherein the first-category object is a target object whose edge number in the edge set is greater than a preset number among multiple target objects, and the second-category object is a target object whose edge number in the edge set is less than or equal to a preset number among multiple target objects; determine a propagation object set for multiple target objects through the selected edge set; this method enables the propagation object set to maximize the propagation range of the propagation object set on the basis of including less than or equal to a preset number of propagation objects for each target object, so as to subsequently guide each target object to conduct social propagation with its multiple propagation objects based on the propagation object set, thereby maximizing the promotion of social interaction between multiple initial objects in the application.
[0052] It should be noted that in the embodiments of the present application, the computer device may be a server or a terminal, and the method provided in the embodiments of the present application may be executed by the terminal or the server alone, or by the terminal and the server in cooperation. Figure 1 The corresponding embodiments are mainly introduced by taking the server executing the method provided in the embodiments of the present application as an example.
[0053] In addition, when the method provided in the embodiment of the present application is executed by a terminal alone, its execution method is the same as Figure 1 The corresponding embodiments are similar, mainly replacing the server with a terminal. In addition, when the terminal and the server cooperate to execute the method provided in the embodiment of the present application, the steps that need to be reflected on the front-end interface can be executed by the terminal, and some steps that require background calculation and do not need to be reflected on the front-end interface can be executed by the server.
[0054] Among them, the terminal can be a smart phone, a tablet computer, a laptop computer, a desktop computer, an intelligent voice interaction device, a vehicle terminal or an aircraft, etc., but is not limited to this. The server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud computing services, but is not limited to this. The terminal and the server can be directly or indirectly connected via wired or wireless communication, and this application does not limit this. For example, the terminal and the server can be connected via a network, which can be a wired or wireless network.
[0055] In addition, the embodiments of the present application can be applied to various scenarios, including but not limited to cloud technology, artificial intelligence, smart transportation, audio and video, assisted driving, etc.
[0056] Next, the data processing method provided in the embodiment of the present application will be described in detail by taking the server executing the method provided in the embodiment of the present application as an example and combining the accompanying drawings. Figure 2 , Figure 2 A flowchart of a data processing method provided in an embodiment of the present application, the method comprising:
[0057] S201: Acquire multiple target objects from multiple initial objects of an application, and determine a preset number of multiple propagation objects for each target object.
[0058] In the application, in order to promote social interaction among multiple initial objects, multiple target objects among the multiple initial objects are guided to engage in social communication with multiple communication objects determined among the multiple initial objects through communication activities. The multiple target objects refer to some of the initial objects determined from the multiple initial objects, for example, some of the initial objects whose activity in participating in the communication activities is greater than the preset activity among the multiple initial objects, and the activity of the initial objects in participating in the communication activities is determined based on the participation time and frequency of the initial objects in the communication activities; in addition, the number of objects of the multiple target objects is much smaller than the number of objects of the multiple initial objects; the multiple communication objects of each target object refer to all or part of the other objects determined from the multiple other objects that have social relations with the target object.
[0059] In the related art, the method for determining the communication object is to determine, for each target object, multiple other objects with higher social intimacy from multiple other objects through the social intimacy between the target object and each other object as multiple communication objects. However, the social intimacy between the target object and other objects indicates the social relationship between the target object and other objects, and cannot indicate the communication influence of other objects, which easily leads to a smaller communication influence of the determined communication object, thereby resulting in a smaller communication range of the communication activity, and cannot maximize the promotion of social interaction between multiple initial objects in the application.
[0060] In an embodiment of the present application, in order to solve the above-mentioned problem, it is necessary to determine, for each target object, multiple other objects with greater influence from multiple other objects that have social relationships with the target object as multiple propagation objects; based on this, the server first needs to obtain multiple target objects from multiple initial objects of the application, so as to subsequently determine multiple propagation objects for each target object based on the multiple target objects, and the multiple propagation objects corresponding to the multiple target objects form a propagation object set, so as to maximize the social influence of the propagation object set, that is, to maximize the propagation range of the propagation object set.
[0061] In addition, considering that the number of other objects that have social relationships with the target object is likely to be large, in order to avoid determining multiple communication objects for each target object from occupying more computing resources, and to avoid each target object from engaging in communication socially with multiple communication objects in the subsequent social communication process, occupying more communication resources, etc., it is also possible to pre-configure a preset number of communication objects for each target object to maximize the influence of the preset number of communication objects; based on this, the server also needs to obtain the preset number of multiple communication objects determined for each target object, and the preset number refers to the limited number of objects for determining multiple communication objects for each target object.
[0062] As an example, the application is a game application, the multiple initial objects are multiple game users, and the multiple target objects are multiple active users among the multiple game users who actively participate in the dissemination activities, that is, some game users among the multiple game users whose activity in participating in the dissemination activities is greater than a preset activity; then S201 can be: obtaining multiple active users among the multiple game users of the game application, and determining a preset number of multiple dissemination users for each active user.
[0063] S202: According to multiple edge sets corresponding to multiple target objects in the social network graph formed by multiple initial objects, excluding the selected edge set to obtain a candidate edge set; the edge set includes an edge from the target object as a head node to a neighbor node of the head node as a tail node.
[0064] S203: In the candidate edge set, a candidate edge with the largest influence extension degree under the condition of the selected edge set is determined as the selected edge.
[0065] S204: Add the selected edge to the selected edge set.
[0066] In the embodiment of the present application, after executing S201 to obtain multiple target objects from multiple initial objects of the application, and determining a preset number of multiple propagation objects for each target object, the server needs to determine, for each target object, multiple propagation objects less than or equal to the preset number from multiple other objects that have social relationships with the target object. On the basis that multiple initial objects form a social network graph, in which network nodes represent initial objects and edges represent social relationships between initial objects; the server determines multiple propagation objects to be: in each target object, from the target object as a head node to the neighbor node of the head node as a tail node, through multiple edge sets corresponding to multiple target objects, based on the need to maximize the influence extension of multiple edges, determine the selected edge sets of multiple target objects, so that the influence extension of the selected edge sets is maximized, and the selected edge set includes the optimal edge set of each target object, and the number of edges of the optimal edge set is less than or equal to the preset number; based on this, the optimal edge set of each target object in the selected edge set can be used to determine multiple propagation objects for each target object.
[0067] Among them, the influence extension of multiple edges refers to the union number of neighbor nodes of multiple tail nodes corresponding to the multiple edges in the social network graph; the optimal edge set for each target object includes multiple selected edges whose head nodes are the target objects among the multiple selected edges in the selected edge set.
[0068] Considering that maximizing the influence extension of the selected edge set as an optimization function has submodularity, that is, as the selected edges in the selected edge set increase, the increment of the influence extension of the selected edge set decreases; therefore, the server can approximate the optimal solution of the selected edge set through a greedy algorithm. On the basis of initializing the selected edge set as an empty set, each time from multiple edge sets corresponding to multiple target objects, the edge with the largest influence extension under the conditions of the selected edge set is selected as the selected edge, and the selected edge is added to the selected edge set.
[0069] Further consideration is given to avoid the presence of selected edges in the selected edge set in the multiple edge sets corresponding to the multiple target objects, which would affect the subsequent calculation of the influence extension degree, the server also needs to exclude the selected edge set from the multiple edge sets corresponding to the multiple target objects to obtain the candidate edge set. In fact, the server selects the candidate edge with the largest influence extension degree under the condition of the selected edge set from the candidate edge set each time as the selected edge, and adds the selected edge to the selected edge set.
[0070] The implementation method of the above S202-S204 is to determine the selected edge sets of multiple target objects based on the requirement of maximizing the influence expansion of multiple edges in the multiple edge sets corresponding to the multiple target objects, so as to maximize the influence expansion of the selected edge set. In fact, each time the candidate edge set of the selected edge set is excluded from the multiple edge sets, the candidate edges that are added to the selected edge set so that the influence expansion has the largest increment are screened as the selected edges, that is, under the premise of considering the multiple selected edges of the selected edge set, the candidate edges that can have the largest increment in influence expansion are screened, and finally the selected edge set is obtained, which is the optimal solution for the multiple target objects.
[0071] As an example, based on the above example where the multiple initial objects are multiple game users and the multiple target objects are multiple active users, S202-S204 can be: based on multiple edge sets in a social network graph formed by multiple game users, with multiple active users as head nodes and neighbor nodes of the head nodes as tail nodes, excluding the selected edge sets to obtain the candidate edge sets; taking the candidate edge in the candidate edge set that has the largest influence expansion degree under the conditions of the selected edge set as the selected edge, and adding the selected edge to the selected edge set.
[0072] Among them, see Figure 3 , Figure 3A partial schematic diagram of a social network graph formed by multiple initial objects provided in an embodiment of the present application. Among them, network node 1, network node 2, network node 3, network node 4, network node 5, network node 6 and network node 7 represent 7 initial objects, such as 7 game users, and the edges represent the social relationships between the initial objects, such as friend relationships, dialogue relationships or game relationships between game users.
[0073] S205: Return to the step of excluding the selected edge set to obtain the candidate edge set, until the number of selected edges corresponding to each first-category object in the selected edge set is a preset number, and the selected edge set includes an edge set for each second-category object; the first-category object is a target object whose edge number in the edge set among the multiple target objects is greater than or equal to the preset number, and the second-category object is a target object whose edge number in the edge set among the multiple target objects is less than the preset number.
[0074] S206: Determine a propagation object set of multiple target objects according to the selected edge set.
[0075] In the embodiment of the present application, considering that there are target objects whose edge number of the edge set is greater than or equal to the preset number among multiple target objects, that is, first-class objects, for each first-class object, it is necessary to filter the preset number of edges from the edge set of the first-class object as selected edges; and there may also be target objects whose edge number of the edge set is less than the preset number among multiple target objects, that is, second-class objects, for each second-class object, it is necessary to take all the edges in the edge set of the second-class object as selected edges. Based on this, after executing S204 to add the selected edges to the selected edge set, it is necessary to determine whether the number of selected edges corresponding to each first-class object in the selected edge set is the preset number, and whether the selected edge set includes the edge set of each second-class object. If so, the propagation object sets of multiple target objects are determined by the selected edge set, so as to determine the multiple propagation objects of each target object. If not, it is necessary to return to S202 to exclude the selected edge set to obtain the candidate edge set, and continue to execute S203-S204.
[0076] As an example, based on the above example where the multiple initial objects are multiple game users and the multiple target objects are multiple active users, the first category of objects are first category users, that is, the number of edges in the edge set among the multiple active users is greater than or equal to a preset number of active users, and the second category of objects are second category users, that is, the number of edges in the edge set among the multiple active users is less than a preset number of active users; then S205, for example, can be a step of returning to the step of excluding the selected edge set to obtain the candidate edge set, until the number of selected edges corresponding to the first category of users in the selected edge set is the preset number, and the selected edge set includes the edge set of the second category of users, and determining the propagation user set of the multiple active users according to the selected edge set.
[0077] Based on the above description, in the embodiment of the present application, when the server executes S202-S205 to approximate the optimal solution of the selected edge set by using a greedy algorithm, at least two different greedy algorithms may be used, as shown below:
[0078] A specific implementation method of S202-S205 is: on the basis of initializing the selected edge set as an empty set, each time based on the union of multiple edge sets corresponding to multiple target objects, the edges with the greatest influence under the conditions of the selected edge set are screened as selected edges, and added to the selected edge set; until the number of selected edges corresponding to each first-category object in the selected edge set is a preset number, and the selected edge set includes the edge set of each second-category object.
[0079] The specific process is as follows: for the first union obtained by calculating the union of multiple edge sets corresponding to multiple target objects, the selected edge set is excluded to obtain the candidate edge set; the candidate edge with the largest influence extension degree under the conditions of the selected edge set is selected from the candidate edge set as the selected edge, and the selected edge is added to the selected edge set.
[0080] If the number of selected edges corresponding to each target object in the selected edge set is less than the preset number, it at least means that the preset number of edges have not been screened as selected edges for each first-class object, then it is necessary to return to the step of excluding the selected edge set for the first union to obtain the candidate edge set; if the number of selected edges corresponding to the first-class object in the selected edge set is the preset number, it means that the preset number of edges have been screened as selected edges for the first-class object, and there is no need to continue screening edges in the edge set of the first-class object, then it is necessary to exclude the edge set of the first-class object from the first union to update the first union, and on this basis, return to the step of excluding the selected edge set from the first union to obtain the candidate edge set; until the number of selected edges corresponding to each first-class object in the selected edge set is the preset number, and the selected edge set includes the edge set of each second-class object, then the candidate edge set obtained by excluding the selected edge set for the first union is an empty set. Therefore, the present application provides a possible implementation method, and S202 may, for example, include the following S2021-S2022 (not shown in the figure):
[0081] S2021: Calculate the union of multiple edge sets to obtain a first union.
[0082] S2022: Excluding the selected edge set from the first union set, obtain a candidate edge set.
[0083] Correspondingly, the step of returning to exclude the selected edge set to obtain the candidate edge set in S205 may include, for example, the following S2051 or S2052-S2053 (not shown in the figure):
[0084] S2051: If the number of selected edges corresponding to each target object in the selected edge set is less than a preset number, return to the step of excluding the selected edge set from the first union to obtain a candidate edge set.
[0085] S2052: If the number of selected edges corresponding to the first type of object in the selected edge set is a preset number, excluding the edge set of the first type of object in the first union set;
[0086] S2053: Return to the step of excluding the selected edge set from the first union set to obtain the candidate edge set.
[0087] Correspondingly, until the number of selected edges corresponding to each first-category object in the selected edge set reaches a preset number and the selected edge set includes an edge set of each second-category object, for example, until the candidate edge set is an empty set.
[0088] As an example, the application is a social application, the initial object set formed by multiple initial objects is V, the target object set formed by multiple target objects is A, the selected edge set is S, the social network graph formed by multiple initial objects in V is G, G = (V, E), E is the edge set of the social network graph, and the edge set of each u∈A is C u , C u ∈E. When the server obtains A in V and determines the preset number of multiple propagation objects for each u∈A as k, let Based on multiple u∈A in G as the head node and the neighboring nodes of the head node as the tail node, multiple C u , get the first union of multiple edge sets calculated as C = ∪ u∈A C u , exclude S from C to obtain the candidate edge set C\S. Select the candidate edge e with the largest influence extension from C\S to S u,v As the selected side, and e u,v Increase to S, that is, S = S ∪ {e u,v}. If the number of selected edges in S corresponding to each u∈A is t u <k, return to the step of eliminating S from C to obtain C\S; if t u ≥k, exclude C u , that is, C=C\C u , return to the step of eliminating S from C to obtain C\S; until
[0089] Another specific implementation method of S202-S205 is: on the basis of initializing the selected edge set as an empty set, a polling scheduling method is adopted for each target object, each time based on the edge set of each target object, the edge with the greatest influence under the conditions of the selected edge set is screened as the selected edge, and added to the selected edge set; until the number of selected edges corresponding to each first-category object in the selected edge set is a preset number, and the selected edge set includes the edge set of each second-category object.
[0090] The specific process is as follows: multiple target objects are determined as a preset object set; for each preset object in the preset object set, the edge set of the preset object is excluded from the selected edge set to obtain a candidate edge set; the candidate edge with the largest influence extension degree under the conditions of the selected edge set is selected from the candidate edge set as the selected edge, and the selected edge is added to the selected edge set.
[0091] If the number of selected edges corresponding to the preset object in the selected edge set is less than the preset number, and the edge set of the preset object excluding the selected edge set is not an empty set, it means that when multiple edges in the edge set of the preset object are not all filtered as selected edges, the preset number of edges have not been filtered as selected edges for the preset object, and it is necessary to return to the step of excluding the selected edge set from the edge set of the preset object to obtain the candidate edge set; if the number of multiple selected edges corresponding to the preset object in the selected edge set is the preset number, it means that the preset number of edges have been filtered as selected edges for the preset object, and there is no need to continue filtering edges for the preset object; or, the edge set of the preset object excluding the selected edge set is an empty set, which means that multiple edges in the edge set of the preset object are all filtered as selected edges, and it is impossible to continue filtering edges for the preset object; then it is necessary to exclude the preset object from the preset object set to update the preset object set. On this basis, return to the step of excluding the selected edge set from the edge set of the preset object for each preset object in the preset object set to obtain the candidate edge set; until the number of selected edges corresponding to each first-class object in the selected edge set is the preset number, and the selected edge set includes the edge set of each second-class object, then the preset object set is an empty set. Therefore, the present application provides a possible implementation method, and S202 may include the following S2023-S2024 (not shown in the figure):
[0092] S2023: Determine the multiple target objects as a preset object set.
[0093] S2024: For each preset object in the preset object set, exclude the selected edge set from the edge set of the preset object to obtain a candidate edge set.
[0094] Correspondingly, the step of returning to exclude the selected edge set to obtain the candidate edge set in S205 may include, for example, the following S2054 or S2055-S2056 (not shown in the figure):
[0095] S2054: If the number of selected edges corresponding to the preset object in the selected edge set is less than the preset number, and the edge set of the preset object excluding the selected edge set is not an empty set, return to the step of excluding the selected edge set from the edge set of the preset object to obtain a candidate edge set.
[0096] S2055: If the number of the multiple selected edges corresponding to the preset object in the selected edge set is the preset number, or the edge set of the preset object excluding the selected edge set is an empty set, the preset object is excluded from the preset object set.
[0097] S2056: Return to the step of obtaining a candidate edge set by excluding the selected edge set from the edge set of each preset object in the preset object set.
[0098] Correspondingly, until the number of selected edges corresponding to each first-category object in the selected edge set reaches a preset number and the selected edge set includes an edge set of each second-category object, for example, until the preset object set is an empty set.
[0099] As an example, the application is a social application, the initial object set formed by multiple initial objects is V, the target object set formed by multiple target objects is A, the selected edge set is S, the social network graph formed by multiple initial objects in V is G, G = (V, E), E is the edge set of the social network graph, and the edge set of each u∈A is C u , C u ∈E. When the server obtains A in V and determines the preset number of multiple propagation objects for each u∈A as k, let The multiple target objects in A are determined as a preset object set L, that is, L = A; for each u∈L, C u Excluding S, the candidate edge set is C. u \S. From C u \S selects and adds candidate edges e with the largest influence extension degree to S u,v As the selected side, and e u,v Increase to S, that is, S = S ∪ {e u,v}. If the number of selected edges corresponding to u in S is t u <k, and C u \S is not an empty set, return C u Eliminate S and get C u \S steps; if t u ≥ k or, Exclude u from L, that is, L = L\{u}, and return C for each u∈L.u Eliminate S and get C u \S steps; until
[0100] The specific implementation method of the above S2021-S2022, S2051-S2053 is to approximate the optimal solution of the selected edge set through the greedy algorithm MG-Greedy, and the specific implementation method of the above S2023-S2024, S2054-S2056 is to approximate the optimal solution of the selected edge set through the greedy algorithm RR-Greedy; since the candidate edge set for screening each time by MG-Greedy is obtained by excluding the selected edge set from the first union calculated based on the union of multiple edge sets corresponding to multiple target objects, and the candidate edge set for screening each time by RR-greedy is obtained by excluding the selected edge set from the edge set of each target object, the computational complexity of RR-greedy is reduced by d times compared with MG-greedy, where d is the number of multiple target objects.
[0101] In addition, in the embodiment of the present application, when S203 is specifically implemented, the step of calculating the influence extension degree of the selected edge set includes at least the following two implementation methods:
[0102] A method for calculating the influence spread of a selected edge set refers to: simulating the propagation process of the selected edge set based on multiple target objects through a Monte Carlo simulation method to obtain the number of nodes activated during the propagation process; since the nodes activated in one simulated propagation process are accidental, the nodes activated in multiple simulated propagation processes are more reference-based. Based on this, in a specific implementation, based on the Monte Carlo simulation method, the propagation process of the selected edge set based on multiple target objects is simulated multiple times to obtain the number of nodes activated in multiple propagation processes; the average of the number of nodes activated in multiple propagation processes is used as the influence spread of the selected edge set. Therefore, the present application provides a possible implementation method, and the calculation steps of the influence spread of the selected edge set in S203 may, for example, include the following S1-S2 (not shown in the figure):
[0103] S1: Simulate the propagation process of the selected edge set multiple times to obtain the number of nodes activated during the multiple propagation processes.
[0104] In the specific implementation of S1, it is necessary to simulate the propagation process of the selected edge set multiple times through the influence propagation model to obtain the number of nodes activated in the multiple propagation processes. Among them, the influence propagation model refers to a propagation model that describes the influence in the social network graph formed by multiple initial objects, that is, the state of the network node in the social network graph affects the state of the neighboring nodes of the network node to propagate the state of the network node in the social network graph; the influence propagation model can be an independent cascade model or a linear threshold model, etc. The activated node refers to the network node activated by the tail node of the selected edge in the selected edge set during the simulated propagation process. In fact, the activated node is the neighbor node of the tail node of the selected edge, and the tail node of the selected edge is the neighbor node of the head node of the selected edge.
[0105] S2: Calculate the average number of nodes activated in multiple propagation processes to obtain the influence extension of the selected edge set.
[0106] Another way to calculate the influence spread of the selected edge set is: when the scale of the social network graph is large, the influence spread of the selected edge set is calculated by Monte Carlo simulation, which requires a large number of multiple simulations and mean calculations, resulting in extremely low calculation efficiency; considering that multiple random reverse reachable sets can be obtained for network nodes in the social network graph, the random reverse reachable set of a network node refers to the network node set obtained by randomly reversing the influence propagation from the network node; when multiple random reverse reachable sets are obtained uniformly, multiple selected edges in the selected edge set correspond to multiple tail nodes to form a tail node set, and the more nodes in the intersection of the tail node set and the multiple random reverse reachable sets, the greater the influence of the selected edge set. Based on this, in order to improve the calculation efficiency of the influence spread of the selected edge set, on the basis of obtaining multiple random reverse reachable sets for network nodes in the social network graph, the multiple intersections of the tail node set corresponding to the selected edge set and the multiple random reverse reachable sets can be calculated, and the influence spread of the selected edge set can be calculated by the probability of the intersection of the multiple intersections not being an empty set and the number of objects of the multiple initial objects. Therefore, the present application provides a possible implementation method, in which the step of calculating the influence extension degree of the selected edge set in S203 may include, for example, the following S3-S5 (not shown in the figure):
[0107] S3: According to the network nodes in the social network graph, multiple random reverse reachable sets are obtained.
[0108] As an example, see Figure 4 , Figure 4 A partial schematic diagram of multiple random reverse reachable sets provided in an embodiment of the present application. Figure 3 Based on the partial schematic diagram of the social network graph shown, Figure 4(a) represents the random reverse reachable set of network node 6, i.e., {network node 2, network node 3, network node 4}; Figure 4 (b) represents the random reverse reachable set of network node 5, i.e., {network node 6, network node 6, network node 7}.
[0109] S4: Perform intersection calculations on the tail node set corresponding to the selected edge set and multiple random reverse reachable sets to obtain multiple intersections.
[0110] S5: Perform a first calculation on the probability of intersections of the multiple intersections being non-empty sets and the number of objects of the multiple initial objects to obtain the influence extension degree of the selected edge set.
[0111] As an example, based on the above example, the influence extension of S is σ(S), and the calculation formula is as follows:
[0112]
[0113] Where R represents multiple random reverse reachable sets, S' represents the set of tail nodes corresponding to S, then represents the probability that the intersection of S' and multiple intersections of multiple random reverse reachable sets in R are not empty sets, and n represents the number of objects of multiple initial objects.
[0114] The specific implementation methods represented by the above S2021-S2022 and S2051-S2053 are combined with the specific implementation methods represented by S3-S5 to approximate the optimal solution of the selected edge set through the greedy algorithm MG-Greedy and the algorithm OPIM based on the reverse pair of reachable sets, which is denoted as MG-OPIM; the specific implementation methods represented by the above S2023-S2024 and S2054-S2056 are combined with the specific implementation methods represented by S3-S5 to approximate the optimal solution of the selected edge set through the greedy algorithm RR-Greedy and the algorithm OPIM based on the reverse pair of reachable sets, which is denoted as RR-OPIM.
[0115] In addition, in the embodiment of the present application, after executing S205 to determine multiple initial corresponding propagation object sets, in order to further push multiple propagation objects of each target object to the target object, so as to guide each target object to communicate socially with multiple propagation objects through propagation activities; it is also possible to determine multiple propagation objects of each target object through the propagation object set, send multiple propagation objects corresponding to the target object to each target object, thereby guiding the target object to communicate socially with multiple propagation objects, so as to promote social interaction between multiple initial objects in the application. Therefore, the present application provides a possible implementation method, and the method may also include S6-S7 (not shown in the figure):
[0116] S6: Determine multiple propagation objects corresponding to each target object in the propagation object set.
[0117] S7: Send multiple propagation objects corresponding to each target object to each target object.
[0118] As an example, based on the above example where the multiple initial objects are multiple game users and the multiple target objects are multiple active users, after executing S205 to determine the propagation user set of the multiple active users according to the selected side set; multiple propagation users corresponding to each active user are determined in the propagation user set, and multiple propagation users corresponding to the target object are sent to each active user, so that the multiple propagation users of the active user are displayed for the active user. Figure 5 , Figure 5 A partial schematic diagram of a target object displaying multiple propagation objects of a target object provided in an embodiment of the present application. Wherein, the target object is an active user, such as user 1, and the multiple propagation objects of user 1 are multiple propagation users, such as user 2, user 3, user 5, user 6, user 8, user 9, user 11, ..., and multiple propagation users including user 2, user 3, user 5, user 6, user 8, and user 9 are displayed for user 1. Based on this, through the propagation activity of "invite to join the game to get rewards", user 1 is guided to play a game with user 2, user 3, user 5, user 6, user 8, and user 9 to promote social interaction between multiple game users in the game application. In addition, clicking "Change" can display multiple propagation users including user 11, ... for user 1.
[0119] It can be seen from the above technical solution that multiple target objects are obtained from multiple initial objects of the application, and a preset number of multiple propagation objects is determined for each target object. Based on the multiple target objects in the social network graph formed by the multiple initial objects, multiple edge sets are respectively used as head nodes to the neighbor nodes of the head nodes as tail nodes, and the selected edge set is excluded to obtain the candidate edge set; the candidate edge with the largest influence expansion degree under the conditions of the selected edge set in the candidate edge set is taken as the selected edge, and the selected edge is added to the selected edge set; this method excludes the candidate edge set of the selected edge set from the multiple edge sets each time, and screens the candidate edge added to the selected edge set so that the influence expansion degree has the largest increment, so as to improve the propagation influence. Return to the step of excluding the selected edge set to obtain the candidate edge set, until the selected edge set includes a preset number of selected edges for each first-category object, and an edge set for each second-category object, wherein the first-category object is a target object whose edge number in the edge set is greater than a preset number among multiple target objects, and the second-category object is a target object whose edge number in the edge set is less than or equal to a preset number among multiple target objects; determine a propagation object set for multiple target objects through the selected edge set; this method enables the propagation object set to maximize the propagation range of the propagation object set on the basis of including less than or equal to a preset number of propagation objects for each target object, so as to subsequently guide each target object to conduct social propagation with its multiple propagation objects based on the propagation object set, thereby maximizing the promotion of social interaction between multiple initial objects in the application.
[0120] In addition, in the specific implementation method represented by S3-S5 in the above embodiment, on the basis of calculating the influence extension of the selected edge set, under the condition of satisfying the relative accuracy of approximating the influence extension of the selected edge set, the smaller the number of sets of multiple random reverse reachable sets, the higher the calculation efficiency of the influence extension of the selected edge set. Based on this, in order to further improve the calculation efficiency of the influence extension of the selected edge set, first, the number of sets of multiple random reverse reachable sets can be randomly estimated through the number of multiple edges corresponding to the multiple edge sets, the estimated number of edges between the multiple target objects and the propagation objects in the propagation object set, the number of objects excluding the multiple target objects from the multiple initial objects, the aforementioned relative accuracy and the preset probability of not reaching the relative accuracy, to determine the maximum number of sets and the initial number of sets of the multiple random reverse reachable sets. Secondly, two sets including multiple random reverse reachable sets are generated, both of which have the same number of initial sets, i.e., the first set and the second set; starting from the initial number of sets, the data processing method in the above embodiment is called to obtain the selected edge set, and the approximate estimate of the influence extension degree of the selected edge set is verified through the first set and the second set to see whether it meets the relative accuracy; if so, the approximate estimate of the selected edge set can be achieved through the minimum initial number of multiple random reverse reachable sets, so as to determine the propagation object set of multiple target objects through the selected edge set; if not, it is necessary to increase the number of sets of multiple random reverse reachable sets in the first set on the basis of the initial number of sets and the maximum number of sets, and return to the step of calling the data processing method in the above embodiment to obtain the selected edge set.
[0121] Among them, it is verified whether the approximate estimate of the influence extension degree of the selected edge set through the first set and the second set meets the relative accuracy. Specifically, it is necessary to first randomly estimate the upper and lower bounds of the influence extension degree of the selected edge set through the selected edge set, the first set, the number of sets of random reverse reachable sets in the first set, the second set, the number of sets of random reverse reachable sets in the second set, the failure probability of the random reverse reachable sets and the target number, and obtain the upper bound and lower bound of the influence extension degree of the selected edge set; then judge whether the upper bound and the lower bound of the influence extension degree meet the accuracy condition determined by relative accuracy, or whether the number of calls is the maximum number of calls; wherein, the failure probability is determined by the preset probability and the maximum number of calls, and the maximum number of calls is determined by the maximum number of sets and the initial number of sets.
[0122] See also Figure 6 , Figure 6 A flowchart of another data processing method provided in an embodiment of the present application, the method comprising:
[0123] S601: According to the number of edges corresponding to the multiple edge sets, the estimated number of edges between the multiple target objects and the propagation objects in the propagation object set, the target number, the relative accuracy and the preset probability of not reaching the relative accuracy, the set number of multiple random reverse reachable sets is randomly estimated to obtain the maximum set number and the initial set number of the multiple random reverse reachable sets; the target number is the number of objects excluding the multiple target objects from the multiple initial objects.
[0124] The present application provides a possible implementation method, where S601 may include, for example, the following S6011-S6012 (not shown in the figure):
[0125] S6011: According to the edge quantities, estimated quantities, target quantities, relative precisions and preset probabilities corresponding to the edge sets, the set quantities of the multiple random reverse reachable sets are randomly estimated to obtain the maximum set quantity.
[0126] S6012: Perform a second calculation based on the maximum set number, the target number and the relative accuracy to determine the initial set number.
[0127] As an example, the calculation formulas for the maximum number of collections and the initial number of collections are as follows:
[0128]
[0129] Among them, ∈ is the relative accuracy, χ is the number of estimates, n p is the target number, that is, the number of objects where multiple initial objects exclude multiple target objects, δ is the preset probability of not reaching ∈, |C u | is the edge set C u The corresponding number of edges, k is the preset number.
[0130] S602: Generate a first set of random reverse reachable sets including the initial number of sets and a second set of random reverse reachable sets including the initial number of sets.
[0131] S603: Calling a data processing method according to the first set to obtain a selected edge set.
[0132] S604: According to the selected edge set, the first set, the number of sets of random reverse reachable sets in the first set, the second set, the number of sets of random reverse reachable sets in the second set, the failure probability of the random reverse reachable sets and the target number, the upper and lower bounds of the influence extension degree of the selected edge set are randomly estimated to obtain the upper and lower bounds of the influence extension degree of the selected edge set; the failure probability is determined based on the preset probability and the maximum number of calls, and the maximum number of calls is determined based on the maximum number of sets and the initial number of sets.
[0133] In the specific implementation of S604, the selected edge set, the target edge set, the first set, the set number of random reverse reachable sets in the first set, the failure probability and the target number are used to randomly estimate the upper bound of the influence extension of the selected edge set to obtain the upper bound of the influence extension, wherein the number of intersection edges of the target edge set and the edge set of each target object meets the quantity condition, and the quantity condition is determined according to the number of edges in the edge set of each target object and the value range configured based on the preset quantity. The selected edge set, the second set, the set number of random reverse reachable sets in the second set, the failure probability and the target number are used to randomly estimate the lower bound of the influence extension of the selected edge set to obtain the lower bound of the influence extension. The present application provides a possible implementation method, and S604 may, for example, include the following S6041-S6042 (not shown in the figure):
[0134] S6041: According to the selected edge set, the target edge set, the first set, the set number of random reverse reachable sets in the first set, the failure probability and the target number, the upper bound of the influence extension of the selected edge set is randomly estimated to obtain the upper bound of the influence extension; the number of intersection edges of the target edge set and the edge set of each target object meets the quantity condition, and the quantity condition is determined according to the number of edges in the edge set of each target object and the value range configured based on the preset quantity.
[0135] S6042: According to the selected edge set, the second set, the number of sets of random reverse reachable sets in the second set, the failure probability and the number of targets, a lower bound of the influence extension of the selected edge set is randomly estimated to obtain a lower bound of the influence extension.
[0136] As an example, based on the above example, the upper bound of influence extension σ u (S * ) and the lower bound of influence extension σ l The calculation formula of (S) is as follows:
[0137]
[0138]
[0139]
[0140] Among them, R1 is the first set; p f is the failure probability, generally p f =δ / 3i max ,δ is the preset probability of not reaching relative accuracy∈, i max is the maximum number of calls; S t is the target edge set, S t Satisfaction|S t ∩Cu |=min(|C u |,t), θ1 is the number of random reverse reachable sets in the first set; n p is the target number, that is, the number of objects where multiple initial objects exclude multiple target objects; R2 is the second set; θ2 is the number of sets of random reverse reachable sets in the second set.
[0141] S605: If the upper bound and the lower bound of the influence extension degree do not meet the precision condition, and the number of calls is less than the maximum number of calls, the number of sets of random reverse reachable sets in the first set and the second set is increased, and the step of calling the data processing method according to the first set to obtain the selected edge set is returned; the precision condition is determined according to the relative precision.
[0142] S606: If the upper bound of the influence extension and the lower bound of the influence extension meet the precision condition, or the number of calls is the maximum number of calls, determine the propagation object set according to the selected edge set.
[0143] As an example, the number of calls is i. Based on the above example, if And i max , increase the number of random reverse reachable sets in R1 and R2, and return to the step of obtaining S by calling the data processing method by R1; if Or, i=i max , determine the set of propagation objects of A through S.
[0144] The specific implementation method represented by the above S601-S6066 is actually to approximate the optimal solution of the selected edge set through the greedy algorithm MG-Greedy and the optimized reverse algorithm OPIM+ for reachable sets, which is recorded as MG-OPIM+; or, to approximate the optimal solution of the selected edge set through the greedy algorithm RR-Greedy and the optimized reverse algorithm OPIM+ for reachable sets, which is recorded as RR-OPIM+.
[0145] Based on the above multiple embodiments, as an example, see Figure 7 , Figure 7 A relationship diagram between the preset number and the spread range when different algorithms are used to determine the spread objects in an application under multiple public social data sets is provided for an embodiment of the present application. Among them, DNC, Blog, Twitch, Orkut and Twitter are multiple public social data sets, k is the preset number, spread is the spread range, and the spread ranges of MG-Greedy, RR-Greedy, MG-OPIM, RR-OPIM and RR-OPIM+ in the embodiments of the present application are significantly better than the spread ranges of the traditional heuristic algorithms OPMI-C, Degree and PageRank. For example, when the preset number k=10, the spread range of RR-Greedy on DNC is increased by 27% relative to the spread range of Degree, and the spread range of RR-OPIM+ on Orkut is increased by 39% relative to the spread range of Degree.
[0146] Based on the above embodiment, as an example, see Figure 8 , Figure 8 A graph of the relationship between the preset number and the computing time when different algorithms are used to determine the propagation objects in an application under multiple public social data sets provided in the embodiment of the present application. Among them, DNC, Blog, Twitch, Orkut and Twitter are multiple public social data sets, k is the preset number, running time is the computing time, and the computing time using RR-OPIM+ is better than the computing time using other algorithms in all cases. For example, the computing time using RR-OPIM+ on Twitch is two orders of magnitude lower than the computing time using RR-OPIM or MG-OPIM.
[0147] Based on the above embodiment, as an example, see Fig. 9 , Fig. 9 A schematic diagram of the dissemination range and active duration of a dissemination object in an application using RR-OPIM+ and social intimacy respectively provided for an embodiment of the present application. Among them, when RR-OPIM+ is used to determine the dissemination range of the dissemination object in an application, the dissemination range of the dissemination object is increased by 6.5% compared with when social intimacy is used to determine the dissemination object in an application; and when RR-OPIM+ is used to determine the active duration of the dissemination object in an application, the active duration of the dissemination object in an application is also correspondingly increased compared with when social intimacy is used to determine the dissemination object in an application.
[0148] It should be noted that, based on the implementation methods provided in the above aspects, this application can also be further combined to provide more implementation methods.
[0149] based on Figure 2 Corresponding to the data processing method provided in the embodiment, the embodiment of the present application also provides a data processing device, see Fig.10 , Fig.10 A structural diagram of a data processing device provided in an embodiment of the present application, the data processing device 1000 includes: an acquisition unit 1001, an exclusion unit 1002, a determination unit 1003, an addition unit 1004 and a return unit 1005;
[0150] An acquisition unit 1001 is used to acquire multiple target objects from multiple initial objects of an application program, and to determine a preset number of multiple propagation objects for each target object;
[0151] An excluding unit 1002 is configured to exclude a selected edge set from a plurality of edge sets corresponding to a plurality of target objects in a social network graph formed by a plurality of initial objects to obtain a candidate edge set; the edge set includes an edge from the target object as a head node to a neighboring node of the head node as a tail node;
[0152] A determining unit 1003 is used to determine, in the candidate edge set, a candidate edge with the largest influence extension under the condition of the selected edge set as the selected edge;
[0153] An adding unit 1004, used to add the selected edge to the selected edge set;
[0154] The return unit 1005 is used to return to the step of excluding the selected edge set to obtain the candidate edge set, until the number of selected edges corresponding to each first-category object in the selected edge set is a preset number, and the selected edge set includes an edge set of each second-category object; the first-category object is a target object whose edge number in the edge set is greater than or equal to the preset number among the multiple target objects, and the second-category object is a target object whose edge number in the edge set is less than the preset number among the multiple target objects;
[0155] The determining unit 1003 is further configured to determine a propagation object set of multiple target objects according to the selected edge set.
[0156] In a possible implementation, the exclusion unit 1002 is specifically configured to:
[0157] Calculate the union of multiple edge sets to obtain the first union;
[0158] The candidate edge set is obtained by excluding the selected edge set from the first union.
[0159] In a possible implementation, the returning unit 1005 is specifically configured to:
[0160] If the number of selected edges corresponding to each target object in the selected edge set is less than the preset number, return to the step of obtaining the candidate edge set by excluding the selected edge set from the first union;
[0161] If the number of selected edges corresponding to the first type of objects in the selected edge set is a preset number, the edge set of the first type of objects is excluded from the first union; and the step of excluding the selected edge set from the first union to obtain the candidate edge set is returned.
[0162] In a possible implementation, the exclusion unit 1002 is specifically configured to:
[0163] Determine the plurality of target objects as a preset object set;
[0164] For each preset object in the preset object set, the edge set of the preset object is excluded from the selected edge set to obtain a candidate edge set.
[0165] In a possible implementation, the returning unit 1005 is specifically configured to:
[0166] If the number of selected edges corresponding to the preset object in the selected edge set is less than the preset number, and the edge set of the preset object excluding the selected edge set is not an empty set, return to the step of excluding the selected edge set from the edge set of the preset object to obtain the candidate edge set;
[0167] If the number of multiple selected edges corresponding to the preset object in the selected edge set is the preset number, or the edge set of the preset object excluding the selected edge set is an empty set, the preset object is excluded from the preset object set; return to the step of excluding the selected edge set from the edge set of the preset object for each preset object in the preset object set to obtain a candidate edge set.
[0168] In a possible implementation, the apparatus further includes: a first computing unit;
[0169] The first computing unit is specifically configured to:
[0170] Simulate the propagation process of the selected edge set multiple times to obtain the number of nodes activated during multiple propagation processes;
[0171] The number of nodes activated in multiple propagation processes is averaged to obtain the influence extension of the selected edge set.
[0172] In a possible implementation, the apparatus further includes: a second computing unit;
[0173] The second computing unit is specifically configured to:
[0174] According to the network nodes in the social network graph, multiple random reverse reachable sets are obtained;
[0175] The tail node set corresponding to the selected edge set is respectively calculated with multiple random reverse reachable sets to obtain multiple intersections;
[0176] A first calculation is performed on the probability of intersections of the multiple intersections being non-empty sets and the number of objects of the multiple initial objects to obtain the influence extension degree of the selected edge set.
[0177] In a possible implementation, the apparatus further includes: an estimating unit, a generating unit, and a calling unit;
[0178] an estimating unit, configured to randomly estimate the number of sets of multiple random reverse reachable sets according to the number of edges corresponding to the multiple edge sets, the estimated number of edges between the multiple target objects and the propagation objects in the propagation object set, the target number, the relative accuracy, and the preset probability of not reaching the relative accuracy, so as to obtain the maximum number of sets and the initial number of sets of multiple random reverse reachable sets; the target number is the number of objects excluding the multiple target objects from the multiple initial objects;
[0179] A generating unit, configured to generate a first set of random reverse reachable sets including the number of the initial set and a second set of random reverse reachable sets including the number of the initial set;
[0180] A calling unit, configured to call a data processing method according to the first set to obtain a selected edge set;
[0181] The estimation unit is further used to randomly estimate the upper bound and the lower bound of the influence extension degree of the selected edge set according to the selected edge set, the first set, the set number of random reverse reachable sets in the first set, the second set, the set number of random reverse reachable sets in the second set, the failure probability of the random reverse reachable sets, and the target number, so as to obtain the upper bound and the lower bound of the influence extension degree of the selected edge set; the failure probability is determined according to the preset probability and the maximum number of calls, and the maximum number of calls is determined according to the maximum number of sets and the initial number of sets;
[0182] The adding unit 1004 is further configured to increase the number of sets of random reverse reachable sets in the first set and the second set if the upper bound of the influence extension degree and the lower bound of the influence extension degree do not meet the precision condition and the number of calls is less than the maximum number of calls, and return to the step of calling the data processing method according to the first set to obtain the selected edge set; the precision condition is determined according to the relative precision;
[0183] The determination unit 1003 is further configured to determine the propagation object set according to the selected edge set if the upper bound of the influence extension degree and the lower bound of the influence extension degree meet the precision condition, or the number of calls is the maximum number of calls.
[0184] In a possible implementation, the estimation unit is specifically configured to:
[0185] According to the edge quantities, estimated quantities, target quantities, relative precisions and preset probabilities corresponding to the edge sets, the set quantities of the multiple random reverse reachable sets are randomly estimated to obtain the maximum set quantity;
[0186] A second calculation is performed based on the maximum set number, the target number, and the relative accuracy to determine the initial set number.
[0187] In a possible implementation, the estimation unit is specifically configured to:
[0188] According to the selected edge set, the target edge set, the first set, the number of sets of random reverse reachable sets in the first set, the failure probability and the target number, the upper bound of the influence extension of the selected edge set is randomly estimated to obtain the upper bound of the influence extension; the number of intersection edges of the target edge set and the edge set of each target object meets the quantity condition, and the quantity condition is determined according to the number of edges of the edge set of each target object and the value range configured based on the preset quantity;
[0189] According to the selected edge set, the second set, the number of sets of random reverse reachable sets in the second set, the failure probability and the number of targets, the lower bound of the influence extension of the selected edge set is randomly estimated to obtain the lower bound of the influence extension.
[0190] In a possible implementation, the device further includes: a sending unit;
[0191] The determining unit 1003 is further configured to determine a plurality of propagation objects corresponding to each target object in the propagation object set;
[0192] The sending unit is used to send multiple propagation objects corresponding to each target object to each target object.
[0193] It can be seen from the above technical solution that multiple target objects are obtained from multiple initial objects of the application, and a preset number of multiple propagation objects is determined for each target object. Based on the multiple target objects in the social network graph formed by the multiple initial objects, multiple edge sets are respectively used as head nodes to the neighbor nodes of the head nodes as tail nodes, and the selected edge set is excluded to obtain the candidate edge set; the candidate edge with the largest influence expansion degree under the conditions of the selected edge set in the candidate edge set is taken as the selected edge, and the selected edge is added to the selected edge set; this method excludes the candidate edge set of the selected edge set from the multiple edge sets each time, and screens the candidate edge added to the selected edge set so that the influence expansion degree has the largest increment, so as to improve the propagation influence. Return to the step of excluding the selected edge set to obtain the candidate edge set, until the selected edge set includes a preset number of selected edges for each first-category object, and an edge set for each second-category object, wherein the first-category object is a target object whose edge number in the edge set is greater than a preset number among multiple target objects, and the second-category object is a target object whose edge number in the edge set is less than or equal to a preset number among multiple target objects; determine a propagation object set for multiple target objects through the selected edge set; this method enables the propagation object set to maximize the propagation range of the propagation object set on the basis of including less than or equal to a preset number of propagation objects for each target object, so as to subsequently guide each target object to conduct social propagation with its multiple propagation objects based on the propagation object set, thereby maximizing the promotion of social interaction between multiple initial objects in the application.
[0194] The present application also provides a computer device, which may be a server. Fig.11 , Fig.11 A structural diagram of a server provided in an embodiment of the present application, the server 1100 may have relatively large differences due to different configurations or performances, and may include one or more processors, such as CPU 1122, and memory 1132, one or more storage media 1130 (such as one or more mass storage devices) storing application programs 1142 or data 1144. Among them, the memory 1132 and the storage medium 1130 can be short-term storage or persistent storage. The program stored in the storage medium 1130 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations in the server. Furthermore, the central processing unit 1122 can be configured to communicate with the storage medium 1130 and execute a series of instruction operations in the storage medium 1130 on the server 1100.
[0195] The server 1100 may also include one or more power supplies 1126, one or more wired or wireless network interfaces 1150, one or more input and output interfaces 1158, and / or one or more operating systems 1141, such as Windows Server 2003. TM , Mac OS X TM , Unix TM ,Linux TM , FreeBSD TM etc.
[0196] In this embodiment, the central processor 1122 in the server 1100 can execute the methods provided in various optional implementations of the above embodiments.
[0197] The computer device provided in the embodiment of the present application may also be a terminal. Fig.12 , Fig.12 A structural diagram of a terminal provided for an embodiment of the present application. Taking a smartphone as an example, the smartphone includes: a radio frequency (RF) circuit 1210, a memory 1220, an input unit 1230, a display unit 1240, a sensor 1250, an audio circuit 1260, a wireless fidelity (WiFi) module 1270, a processor 1280, and a power supply 12120 and other components. The input unit 1230 may include a touch panel 1231 and other input devices 1232, the display unit 1240 may include a display panel 1241, and the audio circuit 1260 may include a speaker 1261 and a microphone 1262. Those skilled in the art will appreciate that Fig.12 The structure of the smartphone shown in the figure does not constitute a limitation of the smartphone, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.
[0198] The memory 1220 can be used to store software programs and modules. The processor 1280 executes various functional applications and data processing of the smartphone by running the software programs and modules stored in the memory 1220. The memory 1220 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area may store data created according to the use of the smartphone (such as audio data, a phone book, etc.), etc. In addition, the memory 1220 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices.
[0199] The processor 1280 is the control center of the smartphone, which uses various interfaces and lines to connect various parts of the entire smartphone, and executes various functions of the smartphone and processes data by running or executing software programs and / or modules stored in the memory 1220, and calling data stored in the memory 1220. Optionally, the processor 1280 may include one or more processing units; preferably, the processor 1280 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 1280.
[0200] In this embodiment, the processor 1280 in the smart phone can execute the methods provided in various optional implementations of the above embodiments.
[0201] According to one aspect of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium is used to store a computer program. When the computer program is executed on a computer device, the computer device executes the methods provided in various optional implementations of the above embodiments.
[0202] According to one aspect of the present application, a computer program product is provided, the computer program product comprising a computer program, the computer program being stored in a computer-readable storage medium. A processor of a computer device reads the computer program from the computer-readable storage medium, and the processor executes the computer program, so that the computer device executes the method provided in various optional implementations of the above-mentioned embodiments.
[0203] The descriptions of the processes or structures corresponding to the above-mentioned figures have different emphases. For parts that are not described in detail in a certain process or structure, please refer to the relevant descriptions of other processes or structures.
[0204] The terms "first", "second", etc. in the specification of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequential order. It should be understood that the data used in this way can be interchangeable in appropriate circumstances, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein, for example. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, the process, method, system, product or equipment comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or equipment.
[0205] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0206] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0207] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0208] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a computer device to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), RAM, disk or optical disk and other media that can store computer programs.
[0209] As described above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, ordinary technical members in the art should understand that they can still modify the technical solutions recorded in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A data processing method, characterized in that: The method comprises: Acquire multiple target objects from multiple initial objects of the application, and determine a preset number of multiple propagation objects for each of the target objects; According to the plurality of edge sets corresponding to the plurality of target objects in the social network graph formed by the plurality of initial objects, excluding the selected edge set, a candidate edge set is obtained; the edge set includes an edge from the target object as a head node to a neighboring node of the head node as a tail node; In the candidate edge set, the candidate edge with the largest influence extension degree under the condition of the selected edge set is determined as the selected edge; adding the selected edge to the selected edge set; Return to the step of excluding the selected edge set to obtain the candidate edge set, until the number of selected edges corresponding to each first-category object in the selected edge set reaches the preset number, and the selected edge set includes the edge set of each second-category object; the first-category object is a target object whose edge number in the edge set among the multiple target objects is greater than or equal to the preset number, and the second-category object is a target object whose edge number in the edge set among the multiple target objects is less than the preset number; A propagation object set of the plurality of target objects is determined according to the selected edge set.
2. The method according to claim 1, characterized in that The step of excluding the selected edge set from the plurality of edge sets corresponding to the plurality of target objects in the social network graph formed by the plurality of initial objects to obtain the candidate edge set comprises: Performing a union calculation on the plurality of edge sets to obtain a first union; The candidate edge set is obtained by excluding the selected edge set from the first union set.
3. The method according to claim 2, characterized in that The step of returning the step of excluding the selected edge set to obtain the candidate edge set comprises: If the number of selected edges corresponding to each of the target objects in the selected edge set is less than the preset number, returning to the step of excluding the selected edge set from the first union set to obtain the candidate edge set; If the number of selected edges corresponding to the first type of objects in the selected edge set is the preset number, the edge set of the first type of objects is excluded from the first union, and the process returns to the step of excluding the selected edge set from the first union to obtain the candidate edge set.
4. The method according to claim 1, characterized in that The step of excluding the selected edge set from the plurality of edge sets corresponding to the plurality of target objects in the social network graph formed by the plurality of initial objects to obtain the candidate edge set comprises: Determining the plurality of target objects as a preset object set; For each preset object in the preset object set, the candidate edge set is obtained by excluding the selected edge set from the edge set of the preset object.
5. The method according to claim 4, characterized in that The step of returning the step of excluding the selected edge set to obtain the candidate edge set comprises: If the number of selected edges corresponding to the preset object in the selected edge set is less than the preset number, and the edge set of the preset object excluding the selected edge set is not the empty set, returning to the step of obtaining the candidate edge set by excluding the selected edge set from the edge set of the preset object; If the number of multiple selected edges corresponding to the preset object in the selected edge set is the preset number, or the edge set of the preset object excluding the selected edge set is the empty set, the preset object is excluded from the preset object set, and the step of excluding the selected edge set from the edge set of the preset object for each preset object in the preset object set is returned to obtain the candidate edge set.
6. The method according to any one of claims 1 to 5, characterized in that: The step of calculating the influence extension degree of the selected edge set includes: Simulating the propagation process of the selected edge set multiple times to obtain the number of nodes activated during the multiple propagation processes; The number of nodes of activated nodes in multiple propagation processes is averaged to obtain the influence extension of the selected edge set.
7. The method according to any one of claims 1 to 5, characterized in that: The step of calculating the influence extension degree of the selected edge set includes: According to the network nodes in the social network graph, a plurality of random reverse reachable sets are obtained; Performing intersection calculations on the tail node set corresponding to the selected edge set and the plurality of random reverse reachable sets respectively to obtain a plurality of intersections; A first calculation is performed on the probability that the multiple intersections are not the intersections of the empty sets and the number of objects of the multiple initial objects to obtain the influence extension degree of the selected edge set.
8. The method according to claim 1, characterized in that The method further comprises: According to the number of edges corresponding to the plurality of edge sets, the estimated number of edges between the plurality of target objects and the propagation objects in the propagation object set, the target number, the relative accuracy and the preset probability of not reaching the relative accuracy, the number of sets of the plurality of random reverse reachable sets is randomly estimated to obtain the maximum number of sets and the initial number of sets of the plurality of random reverse reachable sets; the target number is the number of objects excluding the plurality of target objects from the plurality of initial objects; Generate a first set of random reverse reachable sets including the number of the initial set and a second set of random reverse reachable sets including the number of the initial set; Calling the data processing method according to the first set to obtain the selected edge set; According to the selected edge set, the first set, the number of sets of random reverse reachable sets in the first set, the second set, the number of sets of random reverse reachable sets in the second set, the failure probability of the random reverse reachable sets and the target number, the upper bound and the lower bound of the influence extension degree of the selected edge set are randomly estimated to obtain the upper bound and the lower bound of the influence extension degree of the selected edge set; the failure probability is determined according to the preset probability and the maximum number of calls, and the maximum number of calls is determined according to the maximum number of sets and the initial number of sets; If the upper bound of the influence extension degree and the lower bound of the influence extension degree do not meet the precision condition, and the number of calls is less than the maximum number of calls, the number of sets of random reverse reachable sets in the first set and the second set is increased, and the process returns to the step of calling the data processing method according to the first set to obtain the selected edge set; the precision condition is determined according to the relative precision; If the upper bound of the influence extension degree and the lower bound of the influence extension degree meet the precision condition, or the number of calls is the maximum number of calls, the propagation object set is determined according to the selected edge set.
9. The method according to claim 8, characterized in that The step of randomly estimating the number of sets of multiple random reverse reachable sets according to the number of edges corresponding to the multiple edge sets, the estimated number of edges between the multiple target objects and the propagation objects in the propagation object set, the target number, the relative accuracy, and the preset probability of not reaching the relative accuracy, and obtaining the maximum number of sets and the initial number of sets of the multiple random reverse reachable sets includes: According to the number of edges corresponding to the plurality of edge sets, the estimated number, the target number, the relative accuracy and the preset probability, the number of sets of the plurality of random reverse reachable sets is randomly estimated to obtain the maximum number of sets; A second calculation is performed based on the maximum set number, the target number, and the relative accuracy to determine the initial set number.
10. The method according to claim 8, characterized in that The step of randomly estimating an upper bound and a lower bound of the influence spread of the selected edge set according to the selected edge set, the first set, the number of sets of random reverse reachable sets in the first set, the second set, the number of sets of random reverse reachable sets in the second set, the failure probability of the random reverse reachable sets, and the target number, to obtain an upper bound and a lower bound of the influence spread of the selected edge set, comprising: According to the selected edge set, the target edge set, the first set, the number of sets of random reverse reachable sets in the first set, the failure probability and the target number, the upper bound of the influence extension of the selected edge set is randomly estimated to obtain the upper bound of the influence extension; the number of intersection edges of the target edge set and the edge set of each target object meets the quantity condition, and the quantity condition is determined according to the number of edges of the edge set of each target object and the value range configured based on the preset number; According to the selected edge set, the second set, the number of sets of random reverse reachable sets in the second set, the failure probability and the target number, a lower bound of the influence extension degree of the selected edge set is randomly estimated to obtain the lower bound of the influence extension degree.
11. The method according to claim 1, characterized in that: The method further comprises: Determining a plurality of propagation objects corresponding to each of the target objects in the propagation object set; Sending multiple propagation objects corresponding to the target object to each of the target objects.
12. A data processing device, characterized in that: The device comprises: an acquisition unit, an exclusion unit, a determination unit, an addition unit and a return unit; The acquisition unit is used to acquire multiple target objects from multiple initial objects of the application program, and determine a preset number of multiple propagation objects for each of the target objects; The exclusion unit is used to exclude the selected edge set from the multiple edge sets corresponding to the multiple target objects in the social network graph formed by the multiple initial objects to obtain a candidate edge set; the edge set includes the edge from the target object as the head node to the neighbor node of the head node as the tail node; The determining unit is configured to determine, in the candidate edge set, a candidate edge with the largest influence extension under the condition of the selected edge set as a selected edge; The adding unit is used to add the selected edge to the selected edge set; The returning unit is used to return to the step of excluding the selected edge set to obtain the candidate edge set, until the number of selected edges corresponding to each first-category object in the selected edge set is the preset number, and the selected edge set includes the edge set of each second-category object; the first-category object is a target object whose edge number in the edge set among the multiple target objects is greater than or equal to the preset number, and the second-category object is a target object whose edge number in the edge set among the multiple target objects is less than the preset number; The determining unit is further configured to determine a propagation object set of the plurality of target objects according to the selected edge set.
13. A computer device, characterized in that: The computer device comprises a processor and a memory: The memory is used to store a computer program and transmit the computer program to the processor; The processor is configured to execute the method according to any one of claims 1 to 11 according to the instructions in the computer program.
14. A computer-readable storage medium, characterized in that: The computer-readable storage medium is used to store a computer program, and when the computer program is executed on a computer device, the computer device executes the method according to any one of claims 1 to 11.
15. A computer program product comprising a computer program, characterized in that When the computer program is executed on a computer device, the computer device is caused to execute the method according to any one of claims 1 to 11.