Data processing method and device, equipment and medium
By counting the frequency and association relationships in the object relationship network and selecting the propagation object of the active object, the problem of inaccurate selection of propagation objects is solved, and the widespread dissemination of business activities and the improvement of recommendation effects is achieved.
Patent Information
- Application Number
- CN202410171547.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-02-06
- Publication Date
- 2025-08-08
AI Technical Summary
In the existing business activity communication scenarios, the method of selecting the communication object based on interactive intimacy may lead to the communication object being uninterested in the business activity, resulting in limited communication scope and affecting the recommendation effect.
By obtaining the object relationship network, count the frequency of occurrence and association of business objects, determine the business object with the highest occurrence frequency and strong association relationship as the active object, and select the propagation object from it, improving the accuracy of selection of propagation objects.
It improves the accuracy of selection of communication objects, expands the scope of dissemination of business activities, and improves the effectiveness of business recommendations.
Smart Images

Figure CN120448621A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of artificial intelligence technology, and in particular to a data processing method, apparatus, device, and medium. Background Art
[0002] Current business applications often launch occasional business activities (e.g., card collection events) and encourage active users to recommend these activities to their target audiences. When the target audience participates in the business activities, the business application will simultaneously distribute corresponding rewards (e.g., game coins, raffle tickets, etc.) to both the active user and the target audience, thereby attracting more business users to visit the business application and improving user retention.
[0003] In current business activity dissemination scenarios, active objects are typically selected from business objects in a business application. The interaction intimacy between the active objects and other business objects in the application is then measured. Several business objects with high interaction intimacy are randomly selected as dissemination targets. The business activity is then recommended to these dissemination targets through the active objects, thereby expanding the dissemination scope of the business activity. However, this method of selecting dissemination targets based on interaction intimacy may result in selected dissemination targets being uninterested in the business activity, resulting in a limited dissemination scope for the business activity and, in turn, affecting the effectiveness of the recommendation. Summary of the Invention
[0004] The embodiments of the present application provide a data processing method, apparatus, device, and medium, which can improve the accuracy of selecting communication objects and thereby enhance the effectiveness of service recommendations.
[0005] An embodiment of the present application provides a data processing method, including:
[0006] Obtaining an object relationship network, sampling business objects in the object relationship network, and obtaining a first sub-network set; the object relationship network includes multiple business objects and connection edges between business objects having association relationships;
[0007] Counting the first occurrence frequency of each business object in the first sub-network set, and determining the business object corresponding to the largest first occurrence frequency as the first active object;
[0008] Adding the subnetwork including the first active object in the first subnetwork set to the second subnetwork set, and determining the business objects other than the first active object in the second subnetwork set as first candidate objects;
[0009] A second occurrence frequency of the first candidate object in the second sub-network set is counted, and based on the second occurrence frequency of the first candidate object and the association relationship between the first active object and the first candidate object, a propagation object corresponding to the first active object is determined in the first candidate objects; the propagation object corresponding to the first active object is used to receive the recommended service sent by the first active object.
[0010] In one aspect, an embodiment of the present application provides a data processing device, including:
[0011] An object sampling module is used to obtain an object relationship network and sample business objects in the object relationship network to obtain a first sub-network set; the object relationship network includes multiple business objects and connection edges between business objects with association relationships;
[0012] an active object determination module, configured to count the first occurrence frequency of each business object in the first sub-network set, and determine the business object corresponding to the largest first occurrence frequency as the first active object;
[0013] a candidate object determination module, configured to add the subnetwork containing the first active object in the first subnetwork set to the second subnetwork set, and determine the business objects other than the first active object in the second subnetwork set as first candidate objects;
[0014] The first propagation object determination module is configured to count a second occurrence frequency of the first candidate object in the second sub-network set, and determine a propagation object corresponding to the first active object in the first candidate objects based on the second occurrence frequency of the first candidate object and the association relationship between the first active object and the first candidate object; the propagation object corresponding to the first active object is configured to receive a recommended service sent by the first active object.
[0015] The object sampling module is specifically used to:
[0016] Obtain n business objects in a business application, and obtain historical interaction information of n business objects in the business application; n is an integer greater than 1;
[0017] If the historical interaction information indicates that business object a and business object b in the business object set have an association relationship, then a connection edge is established between business object a and business object b;
[0018] An object relationship network is constructed based on n business objects and the connection edges between the n business objects.
[0019] Among them, the object sampling module is specifically used to:
[0020] Get object log files of n business objects in business applications;
[0021] The communication relationship and object interaction information between n business objects are obtained in the object log file, and the communication relationship and object interaction information are determined as historical interaction information of the n business objects in the business application.
[0022] The object relationship network includes n business objects; n is an integer greater than 1; the object sampling module is specifically used to:
[0023] Get the number k of neighbors of the i-th business object in the object relationship network among n business objects i , for the number of neighbors k i Perform logarithmic processing to obtain the neighbor logarithm result corresponding to the i-th business object; i is a positive integer less than or equal to n;
[0024] Accumulate the neighbor logarithm results corresponding to n business objects to obtain the total value of the neighbor logarithm;
[0025] Obtain parameter logarithm results corresponding to the sampling parameters, determine a sampling reference value based on the parameter logarithm results and the total value of the neighbor logarithm, and determine the number of sampling times corresponding to the object relationship network based on the sampling reference value; the sampling number is greater than the sampling reference value;
[0026] The business objects in the object relationship network are sampled according to the sampling number to obtain θ sub-networks, and the θ sub-networks are added to the first sub-network set; one sub-network is obtained by sampling once, and θ is an integer greater than 1.
[0027] Among them, the object sampling module is specifically used to:
[0028] Perform square root operation on half of the sum of the parameter logarithm result and the total value of the neighbor logarithms to obtain the first candidate sampling value;
[0029] Determine half of the result obtained after performing a square root operation on the parameter logarithm as the second candidate sampling value;
[0030] A sampling reference value is determined according to the square of the sum of the first candidate sampling value and the second candidate sampling value.
[0031] Among them, the object sampling module is specifically used to:
[0032] Determine the starting activation object of the ath sampling in the object relationship network, and add the neighbor objects of the starting activation object in the object relationship network to the first neighbor object set; a is a positive integer less than or equal to θ;
[0033] Obtaining an activation threshold corresponding to a business object in the first neighbor object set, and obtaining an edge weight between the starting activation object and the business object in the first neighbor object set, and determining the business object in the first neighbor object set whose edge weight is greater than the activation threshold as the first activation object;
[0034] Eliminate the initial activated object from the object relationship network to obtain an object sampling network, and add the neighbor objects of the first activated object in the object sampling network to the second neighbor object set;
[0035] Obtaining an activation threshold corresponding to a business object in the second neighbor object set, and obtaining an edge weight between the first activated object and the business object in the second neighbor object set;
[0036] If there is no business object with an edge weight greater than the activation threshold in the second neighbor object set, an ath subnetwork is generated according to the association relationship between the initial activation object and the first activation object.
[0037] The object sampling module is specifically used to:
[0038] Determine the starting activation object of the ath sampling in the object relationship network, and add the neighbor objects of the starting activation object in the object relationship network to the first neighbor object set; a is a positive integer less than or equal to θ;
[0039] Obtaining an activation threshold corresponding to a business object in the first neighbor object set, and obtaining an edge weight between the starting activation object and the business object in the first neighbor object set, and determining the business object in the first neighbor object set whose edge weight is greater than the activation threshold as the first activation object;
[0040] Adding neighbor objects of the first activated object in the object relationship network except the initial activated object to a third neighbor object set, and determining the activated neighbor object corresponding to the x-th business object in the third neighbor object set in the object relationship network; x is a positive integer;
[0041] If the sum of the edge weights between the x-th business object and the activated neighbor objects is less than the activation threshold corresponding to the x-th business object, the x-th business object is determined to be an inactive object;
[0042] If all the service objects in the third neighbor object set are inactive objects, then an ath subnetwork is generated according to the association relationship between the initial active object and the first active object.
[0043] There are multiple first candidate objects; and the first propagation object determination module is specifically configured to:
[0044] Adding multiple first candidate objects to a first candidate object set, removing first candidate objects that have no association relationship with the first active object from the first candidate object set, and obtaining a second candidate object set;
[0045] Sort the first candidate objects in the second candidate object set in descending order according to the second occurrence frequency to obtain a candidate object list;
[0046] The first y first candidate objects in the candidate object list are determined as the propagation objects corresponding to the first active object; y is a positive integer.
[0047] The data processing device further includes a second propagation target determination module, which is configured to:
[0048] Add the first active object to the active object set, and update the first sub-network set according to the second sub-network set to obtain a third sub-network set; the third sub-network set does not include the sub-networks in the second sub-network set;
[0049] Counting the third occurrence frequencies of each business object in the third sub-network set, and determining the business object corresponding to the largest third occurrence frequency as the second active object;
[0050] Adding the subnetwork containing the second active object in the third subnetwork set to the fourth subnetwork set, and determining the business objects other than the second active object in the fourth subnetwork set as second candidate objects;
[0051] Counting a fourth occurrence frequency of the second candidate object in the fourth sub-network set, and determining a propagation object corresponding to the second active object in the second candidate objects based on the fourth occurrence frequency of the second candidate object and an association relationship between the second active object and the second candidate object;
[0052] The second active object is added to the active object set until the number of objects in the active object set reaches a number threshold, and the updating of the first sub-network set is stopped.
[0053] The data processing device further includes a propagation object sending module, which is configured to:
[0054] The propagation object corresponding to the first active object is sent to the terminal device corresponding to the first active object, so that the terminal device displays the propagation object corresponding to the first active object in the business application; the terminal device is used to send recommended services associated with the business application to the propagation object selected by the first active object.
[0055] In one aspect, an embodiment of the present application provides a computer device, including a memory and a processor, wherein the memory is connected to the processor, the memory is used to store a computer program, and the processor is used to call the computer program so that the computer device executes the method provided in the above aspect of the embodiment of the present application.
[0056] On one hand, an embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored. The computer program is suitable for being loaded and executed by a processor, so that a computer device with a processor executes the method provided in the above aspect of the embodiment of the present application.
[0057] According to one aspect of the present application, a computer program product or computer program is provided, the computer program product or computer program including computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the method provided in the above aspect.
[0058] In an embodiment of the present application, the business objects in the object relationship network can be sampled to obtain a first sub-network set, the first occurrence frequency of each business object in the first sub-network set is counted, and the business object corresponding to the largest first occurrence frequency is determined as the first active object; the business object that appears in the same sub-network as the first active object is determined as the first candidate object, and the number of common occurrences of the first active object and the first candidate object in the sub-network (the second occurrence frequency) is counted, and then based on the number of common occurrences of the first active object and the first candidate object, and the association relationship between the first active object and the first candidate object, the propagation object corresponding to the first active object is determined from the first candidate object. In other words, two business objects with an association relationship and in the same sub-network influence each other in the propagation process of the recommended business. The more common occurrences in the sub-network, the greater the possibility that the two business objects with an association relationship influence each other. Based on the number of common occurrences of the first active object and the first candidate object, and the association relationship between the first active object and the first candidate object, the propagation object corresponding to the first active object is determined, which can improve the selection accuracy of the propagation object corresponding to the first active object, thereby improving the business recommendation effect. BRIEF DESCRIPTION OF THE DRAWINGS
[0059] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0060] Figure 1 This is a schematic diagram of a network architecture provided by an embodiment of the present application;
[0061] Figure 2 This is a schematic diagram of a communication recommendation service provided by an embodiment of the present application;
[0062] Figure 3 This is a flow diagram of a data processing method provided in an embodiment of the present application. Figure 1 ;
[0063] Figure 4 This is a schematic diagram of building an object relationship network provided by an embodiment of the present application;
[0064] Figure 5 This is a schematic diagram of determining a propagation target for an active object provided by an embodiment of the present application;
[0065] Figure 6 This is a schematic diagram of an interface of an object recommendation list provided in an embodiment of the present application;
[0066] Figure 7 This is a flow diagram of a data processing method provided in an embodiment of the present application. Figure 2 ;
[0067] Figure 8 This is a sample diagram of an object relationship network provided by the embodiment of the present application. Figure 1 ;
[0068] Figure 9 This is a sample diagram of an object relationship network provided by the embodiment of the present application. Figure 2 ;
[0069] Figure 10 is a structural diagram of a data processing device provided in an embodiment of the present application;
[0070] Figure 11 It is a structural diagram of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0071] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0072] The embodiments of this application primarily involve the implementation of artificial intelligence (AI) technology, specifically machine learning within AI. For example, the partitioning of object relationship networks can be achieved through influence propagation models, such as the independent cascade model (IC) and the linear threshold model (LT).
[0073] Artificial intelligence (AI) refers to the theories, methods, techniques, and application systems that use digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, to perceive the environment, acquire knowledge, and use that knowledge to achieve optimal results. In other words, AI is a comprehensive technology within computer science that seeks to understand the essence of intelligence and produce new intelligent machines that can respond in a manner similar to human intelligence. AI also encompasses the study of the design principles and implementation methods of various intelligent machines, enabling them to possess the capabilities of perception, reasoning, and decision-making.
[0074] Artificial intelligence (AI) technology is a comprehensive discipline encompassing a wide range of fields, encompassing both hardware and software technologies. Foundational AI technologies generally include sensors, specialized AI chips, cloud computing, distributed storage, big data processing, operating / interaction systems, and mechatronics. AI software technologies primarily encompass computer vision, speech processing, natural language processing, and machine learning / deep learning.
[0075] See Figure 1 , Figure 1 This is a schematic diagram of a network architecture provided by an embodiment of the present application. The network architecture may include a server 10d and a terminal cluster. The terminal cluster may include one or more terminal devices. There is no limit on the number of terminal devices included in the terminal cluster. Figure 1 As shown, the terminal cluster may specifically include terminal device 10a, terminal device 10b, and terminal device 10c, etc.; all terminal devices in the terminal cluster (for example, terminal device 10a, terminal device 10b, and terminal device 10c, etc.) may be connected to the server 10d through a network connection, so that each terminal device may exchange data with the server 10d through the network connection.
[0076] in, Figure 1 The server 10d shown can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers. It can also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms. This application does not limit the type of server.
[0077] Figure 1The terminal devices in the terminal cluster shown may include but are not limited to: smart phones, tablet computers, laptops, PDAs, mobile internet devices (MIDs), wearable devices (such as smart watches, smart bracelets, etc.), smart voice interaction devices, smart home appliances (such as smart TVs, etc.), vehicle-mounted devices, aircraft and other electronic devices. The embodiments of this application do not limit the type of terminal devices.
[0078] It is understandable that if Figure 1 Each terminal device in the terminal cluster shown can be installed with a business application, which can be an application client, web page or applet that can provide recommended services (for example, card collection activities, etc.); when the business application runs in each terminal device, it can be respectively connected to the above Figure 1 The service applications running in each terminal device may be independent clients or embedded sub-clients integrated in a client, which is not limited in the present embodiment.
[0079] When a business application is an application client, it may include, but is not limited to, in-vehicle clients, smart home clients, entertainment clients (e.g., game clients), multimedia clients (e.g., video clients), interactive clients, and information clients (e.g., news clients), which provide business activities (e.g., card collection activities). If the terminal device included in the terminal cluster is an in-vehicle device, then the in-vehicle device can be an intelligent terminal in a smart transportation scenario, and the business application running on the in-vehicle device can be called an in-vehicle client.
[0080] It is understandable that the recommended services provided by the business application may include but are not limited to social conversion promotion activities, return activities, and high-activity-low-activity activities, for example, the duration may be 7 to 10 days, or it may be a card collection activity within other time ranges. In an embodiment of the present application, the recommended service can be sent to the dissemination object through the active object (active participant, AP). When the dissemination object participates in the business activity, the business application will simultaneously issue corresponding rewards to the active object and the dissemination object to attract more business objects to visit the business application, thereby improving the user retention rate of the business application. Among them, the active object can also be called a seed object, which can refer to a business object with great dissemination influence in the business application. In an embodiment of the present application, the dissemination influence of the business object can be measured by the range of objects to which the business activity can be spread when the business object initiates the recommendation of the business activity. The larger the diffusion range, the greater the dissemination influence. The active object can actively respond to and disseminate the recommended service in the business application, driving more business objects to participate in the recommended service to expand the dissemination range of the recommended service, thereby improving the business recommendation effect. Active objects can serve as the left endpoint in business activities, that is, active objects can be the first to invite business objects to participate in business activities; dissemination objects can serve as the right endpoint in recommendation services, that is, active objects can be invited by active objects to participate in recommendation services.
[0081] See Figure 2 , Figure 2 This is a schematic diagram of a communication recommendation service provided by an embodiment of the present application. Figure 2 As shown, business object a may be an active object. After determining the propagation object corresponding to business object a, the propagation object corresponding to business object a may be sent to the terminal device corresponding to business object a. After receiving the propagation object corresponding to business object a, the terminal device corresponding to business object a may display the propagation object corresponding to business object a in the business application, for example, business object b and business object c ( Figure 2 (not shown). Business object a can invite one or more propagation objects to participate in the recommendation service. For example, business object b and business object c can be invited to participate in the recommendation service. In actual service, both business object b and business object c can participate in the recommendation service. Figure 2 As shown, business object a can send a recommendation service to business object b, inviting business object b to participate in the recommendation service. Business object b participates in the recommendation service through the invitation of business object a, thereby achieving an effective dissemination of the recommendation service from business object a to the dissemination business object b. When business object b participates in the recommendation service, business object b can also be determined as an active object, and its corresponding dissemination object can be determined for business object b, for example, business object c and business object d ( Figure 2(not shown), the business object b invites the business object c and the business object d to participate in the recommended service, so as to realize the layer-by-layer propagation of the recommended service.
[0082] In current business activity dissemination scenarios, active objects (for example, business object a) are usually selected from the business objects in the business application, and then the interaction intimacy between business object a and other business objects in the business application is obtained. Several business objects with high interaction intimacy (for example, business object b and business object c) are randomly selected as dissemination objects. However, this method of selecting dissemination objects based on interaction intimacy may result in the selected dissemination objects being uninterested in the recommended business. For example, business objects b and c are not interested in the recommended business sent by business object a, and will not participate in the recommended business. Similarly, they will not further disseminate the recommended business, resulting in a limited dissemination range of the business activity, which in turn affects the recommendation effect of the business activity.
[0083] To solve the above problems, the embodiment of the present application determines the corresponding propagation object of the active object based on the number of co-occurrences of the active object and the business objects associated with it in the same sub-network, so as to improve the selection accuracy of the propagation object corresponding to the active object, thereby improving the business recommendation effect.
[0084] The following describes in detail the method for determining the propagation object involved in the embodiment of the present application. Figure 3 , Figure 3 This is a flow diagram of a data processing method provided in an embodiment of the present application. Figure 1 It is understood that the data processing method is performed by a computer device (e.g. Figure 1 The server 10d) shown is executed.
[0085] The data processing method may include the following steps S101 to S104:
[0086] Step S101: Acquire an object relationship network, sample business objects in the object relationship network, and obtain a first sub-network set.
[0087] In the embodiments of the present application, an object-relationship network refers to a graph consisting of multiple business objects in a business application and the relationships between each business object. The object-relationship network includes multiple nodes and multiple connecting edges. Each node in the object-relationship network represents a business object, and the existence of a connecting edge between two business objects indicates that the two business objects have an associated relationship. In other words, the object-relationship network can include multiple business objects and connecting edges between business objects with associated relationships. The object-relationship network can be used to represent the relationships between various business objects in a business application.
[0088] Business applications can refer to terminal devices (e.g. Figure 1 The application client (for example, various types of application clients, such as entertainment clients, video clients, interactive clients, etc.) installed on any terminal device in the terminal cluster shown, or a website (for example, a browser website) to which the terminal device has access rights, etc. This application does not limit the type of business application. A business object can refer to an object in a business application that has been logged in or accessed.
[0089] The object relationship network can be a network constructed by multiple business objects in a single business application and the association relationships between each business object; or it can also be a network constructed by multiple business objects in multiple related business applications and the association relationships between each business object. This embodiment of the application is not limited to this.
[0090] It is understood that the aforementioned association relationship may refer to the mutual association of two business objects in a business application, or another business application bound to the business application. The mutual binding of two business applications can be understood as the same business object using the same account information in both business applications. The association relationship between different business objects may include, but is not limited to: being friends, being in the same group, having an interactive relationship (e.g., chatting, teaming, playing games, etc.), etc., and the embodiments of this application do not limit this.
[0091] In an embodiment of the present application, an object relationship network can be constructed based on a set of business objects in a business application and the historical interaction information of each business object in the business object set within the business application. The business object set may include n business objects, where n represents the number of business objects and is an integer greater than 1. The specific value of n may be 2, 3, 4, 10, or 100. The historical interaction information between each business object can be understood as the interaction data of each business object in the business application.
[0092] The historical interaction information of each business object in a business application may refer to the communication relationship between each business object, where the communication relationship refers to being friends with each other, following each other, or being in the same group. Alternatively, the historical interaction information of each business object in a business application may refer to object interaction information. Taking the business application as an instant messaging application, the object interaction information refers to: information contained in interactive behaviors such as chatting, grouping, liking, sharing, forwarding, and commenting initiated between each business object; taking the business application as a game application, the object interaction information refers to: information contained in interactive behaviors such as team formation and games initiated between each business object. Optionally, the historical interaction information of each business object in a business application may include both the communication relationship and object interaction information between each business object.
[0093] The communication relationship and object interaction information between each business object can be obtained from the object log file in the business application. The object log file stores the usage records of each business object in the business application. The object log file may include the communication relationship between each business object (for example, friend relationship log, group log), as well as object interaction information such as object chat log, object sharing log, object game log, object team information, etc. The object log file can be stored in a local database or a cloud database, and the object log file can be obtained from the local database or cloud database of the business application. Optionally, in order to ensure the timeliness of the constructed object relationship network, the communication relationship and / or object interaction information between each business object within the business time range can be selected from the object log file as the historical interaction information corresponding to each business object. The business time range can be a pre-set time range. Information within the business time range has high timeliness, and information outside the business time range has low timeliness; for example, the business time range can be the past 7 days, or the past 10 days, or the past 15 days, or the past 3 months, etc. The business time range can be set according to the actual scenario requirements.
[0094] After obtaining the historical interaction information between each business object, it can be determined from the historical interaction information whether there is an association relationship between each business object. For ease of description, the embodiment of the present application takes n business objects, which may include business object a and business object b, as an example to illustrate whether business object a and business object b have an association relationship. Optionally, when the historical interaction information indicates that business object a and business object b are friends or in the same group, it can be determined that there is a communication relationship between business object a and business object b, and then it can be determined that there is an association relationship between business object a and business object b. Optionally, when the historical interaction information indicates that there are interactive behaviors such as chatting, grouping, liking, sharing, forwarding, commenting, teaming or playing games between business object a and business object b, it can be determined that there is an interaction relationship between business object a and business object b, and then it can be determined that there is an association relationship between business object a and business object b. Optionally, when business object a and business object b have a communication relationship and an interaction relationship, it is determined that there is an association relationship between business object a and business object b.
[0095] When historical interaction information indicates that business object a and business object b have an association relationship, a connection edge is established between business object a and business object b; when historical interaction information indicates that business object a and business object b do not have an association relationship, no connection edge is generated for business object a and business object b. Similarly, the same method can be used to establish connection edges between other business objects among n business objects. Furthermore, an object relationship network can be constructed based on n business objects and the connection edges between n business objects. The object relationship network can be expressed as G = (V, E), where V (|V| = n) represents the node set (including n nodes) in the object relationship network G, and each node represents a business object; Represents the set of connected edges, connected edge v ab ∈E indicates that there is an association relationship between business object a (i.e., node a) and business object b (i.e., node b). It can be seen that determining whether each business object has an association relationship based on historical interaction information and then constructing an object network based on the association relationships between each business object can improve the efficiency of generating object relationship networks.
[0096] It is understood that the edge weights of each connecting edge in an object-relational network can be equal, for example, each connecting edge can have an edge weight of 0.5 or 1. The edge weights of each connecting edge can also be unequal, for example, the edge weight between business objects a and b can be 0.8, while the edge weight between business objects a and c can be 0.5. The edge weights of each connecting edge can be determined based on the number of interactions or interaction duration between each business object. If the number of interactions or interaction duration between two business objects is high, the edge weight of the connecting edge between the two business objects is high. If the number of interactions or interaction duration between the two business objects is low, the edge weight of the connecting edge between the two business objects is low.
[0097] For example, the edge weights of the connecting edges between business objects can be determined based on the number of interactions between them. Specifically, the number of interactions can be divided into different levels, and each level can be assigned a different weight. The edge weights of each connecting edge can be determined based on the weights associated with the level corresponding to the number of interactions between business objects. For example, the number of interactions can be divided into the following five levels: 0 interactions: weight 0; 1-5 interactions: weight 0.2; 6-10 interactions: weight 0.4; 11-20 interactions: weight 0.6; and 11-20 interactions: weight 0.8. Assuming that the interaction between business objects a and b is a team game, and the number of team games between them is 10, i.e., the number of interactions between them is 10, then the edge weight of the connecting edge between them is 0.4.
[0098] In addition, the connection edges contained in the object relationship network constructed by the embodiment of the present application can be directed edges or undirected edges. The embodiment of the present application does not limit the type of connection edges. When the connection edge is a directed edge, the direction of the connection edge can be from the business object that actively initiates the interaction behavior to another business object; for example, if business object a actively initiates a team game behavior to business object b, then the connection edge v between business object a and business object b is ab The direction is from business object a to business object b.
[0099] For ease of understanding, the embodiment of the present application takes the business application as an example of a game application to describe in detail the process of constructing an object relationship network. The game application can be any one of a third-person shooting (TPS) game, a first-person shooting (FPS) game, a multiplayer online tactical competitive game (MOBA), a massively multiplayer online role-playing game (MMORPG), a strategy game, etc. In the game application, the player can be considered as the business object mentioned above, the game log file can be considered as the object log file, and the friendship between the players can be considered as the communication relationship between the business objects; in the game application, the main interaction between the players is to play against each other or to form a team, so the team game information between the players can be determined as the object interaction information.
[0100] Specifically, see Figure 4 , Figure 4This is a schematic diagram of a construction object relationship network provided by an embodiment of the present application. Figure 4 As shown, n = 14 business objects can be randomly selected in the game application, and the friend relationship information and team game information of these 14 business objects in the past three months can be filtered out from the game log as historical interaction information. In this embodiment of the application, if two business objects are friends and have teamed up to play games, then the two business objects can be considered to have an association relationship. For example, it can be determined from the friend relationship information that the business objects that have a friend relationship with business object 3 include: business object 1, business object 2, business object 4, business object 13 and business object 14; it can be determined from the team game information that the business objects that have a team game behavior with business object 3 include: business object 2, business object 4, business object 6, business object 11, business object 13 and business object 14; it can be determined that the business objects that have an association relationship with business object 3 include: business object 2, business object 4, business object 13 and business object 14, and then the connection edge between business object 3 and business object 2 can be established, the connection edge between business object 3 and business object 4 can be established, the connection edge between business object 3 and business object 13 can be established, and the connection edge between business object 3 and business object 14 can be established. Similarly, the connection edges between other business objects can be established in the same way, and then according to each business object and the connection edges between each business object, the following is constructed. Figure 4 The object association network shown.
[0101] After obtaining the object-relationship network, business objects in the object-relationship network can be sampled to obtain a first sub-network set comprising multiple sub-networks. The sub-networks in the first sub-network set are part of the object-relationship network. That is, the business objects in the object-relationship network include the business objects in the sub-networks, and the connection edges in the object-relationship network include the connection edges in the sub-networks.
[0102] The business objects included in the subnetworks of the first subnetwork set are one or more business objects with significant influence in the object-relationship network. In other words, the purpose of sampling business objects in the object-relationship network is to select one or more business objects as active objects in the object-relationship network. Leveraging the communication influence of these active objects, the recommended services are spread to a greater number of business objects, thereby maximizing the influence (IM) of the selected active objects. In other words, the process of acquiring a subnetwork in the first subnetwork set essentially simulates the set of business objects that a particular business object can cover during the propagation of a recommended service. The propagation influence of a business object is positively correlated with the number of subnetworks it covers. The greater the number of subnetworks a business object covers, the greater its influence. Therefore, by generating a sufficient number of subnetworks, we can simulate the various propagation paths and modes of business objects in the object-relationship network, thereby obtaining the distribution of the influence of each business object. The number of subnetworks in the first subnetwork set is positively correlated with the number of sampling times. A greater number of sampling times results in a greater number of subnetworks in the first subnetwork set. For example, the number of subnetworks in the first subnetwork set may be equal to the number of sampling times. When the number of sampling times is 500, the first subnetwork set may include 500 subnetworks.
[0103] In an embodiment of the present application, reverse influence sampling (RIS) can be performed on the business objects in the object-relational network according to the number of sampling times to obtain a first sub-network set. In this case, the sub-networks in the first sub-network set can be called a reverse reachable set (RRset), and the first sub-network set can be called a reverse reachable set set; the reverse reachable set can be understood as a set of business objects that can reach other business objects through a series of paths starting from the starting object in the object-relational network. The model adopted by the reverse influence sampling can be called an influence propagation model. The influence propagation model can be used to describe the process of how the recommended business propagates from one business object to other business objects in the object-relational network. The influence propagation model can include but is not limited to: independent cascade model (IC), linear threshold model (LT), trigger model (TR) and other models.
[0104] Step S102: Counting the first occurrence frequencies of each business object in the first sub-network set, and determining the business object corresponding to the largest first occurrence frequency as the first active object.
[0105] Step S103: adding the subnetwork containing the first active object in the first subnetwork set to the second subnetwork set, and determining the business objects other than the first active object in the second subnetwork set as first candidate objects.
[0106] Step S104: Counting the second occurrence frequency of the first candidate object in the second sub-network set, and determining the propagation object corresponding to the first active object in the first candidate objects based on the second occurrence frequency of the first candidate object and the association relationship between the first active object and the first candidate object.
[0107] Among them, the first occurrence frequency of the business object can refer to the number of times the business object appears in the first sub-network set; the first active object can refer to the business object with the greatest dissemination influence in the object relationship network. By spreading the recommended business through the first active object, the dissemination scope of the recommended business can be significantly expanded, thereby improving the business recommendation effect.
[0108] In the embodiment of the present application, the first sub-network set containing multiple sub-networks can be sampled to obtain the distribution of the communication influence of each business object, and then the first active object for disseminating the recommended business can be determined based on the communication influence of each business object. Assuming that the business object v is a randomly selected business object in the object relationship network, the calculation process of the communication influence σ(v) of the business object v can be shown as the following formula (1):
[0109]
[0110] Where σ(v) represents the communication influence of business object v; R represents the subnetwork in the first subnetwork set; Indicates that there is an intersection between the business object v and the subnetworks in the first subnetwork set, represents the probability that there is an intersection between the business object v and the subnetworks in the first subnetwork set; n represents the number of business objects.
[0111] According to formula (1), the dissemination influence σ(v) of the business object v is positively correlated with the number of intersections between the business object v and the subnetworks in the first subnetwork set. The number of intersections here can be understood as the number of subnetworks covered by the business object v mentioned above. More generally, it can be understood as the number of occurrences of the business object v in the first subnetwork set (first occurrence frequency). Therefore, in an embodiment of the present application, the dissemination influence σ(v) of the business object v can be determined by counting the first occurrence frequency of the business object v in the first subnetwork set. Since the first occurrence frequency of the business object is positively correlated with the dissemination influence of the business object, after obtaining the first occurrence frequency of each business object in the first subnetwork set, the business object with the largest first occurrence frequency can be found. This business object is the business object with the largest dissemination influence, and the business object is determined as the first active object.
[0112] Among them, the propagation object corresponding to the first active object can be used to receive the recommended business sent by the first active object. In other words, the first active object sends the recommended business to its corresponding propagation object, and after receiving the recommended business, its corresponding propagation object sends the recommended business to other business objects to realize the propagation of the recommended business.
[0113] In an embodiment of the present application, the propagation object corresponding to the first active object is one or more business objects that have the strongest willingness to interact with the first active object. That is to say, when selecting a propagation object for the first active object, it is necessary to select business objects that are willing to participate in the recommended business as much as possible as the propagation object corresponding to the first active object. Since the acquisition process of the sub-network simulates the propagation path of the recommended business, if business object a and business object b appear in the same sub-network, it means that business object a and business object b influence each other in this propagation. The more times business object a and business object b appear together in the sub-network, the greater the possibility that business object a and business object b influence each other, and the stronger the willingness of the two to interact, the more likely they are to participate in the recommended business from each other. It should be noted that when selecting a propagation object for the first active object, it is also necessary to consider whether the selected business object has an association relationship with the first active object. In other words, it is also necessary to consider whether the selected business object is a neighbor object of the first active object in the object relationship graph. If a business object (for example, business object w) that has no association with the first active object is selected as the propagation object, when the first active object sends a recommended business to business object w, business object w will most likely not respond to the recommended business and it will be difficult to continue to propagate the recommended business.
[0114] Based on this, we can select the business object that appears in the same sub-network as the first active object as the first candidate object, and then determine the propagation object corresponding to the first active object from the first candidate objects based on the number of co-occurrences of the first active object and the first candidate object, as well as the association relationship between the first active object and the first candidate object, so that the selected propagation object is highly likely to participate in the recommended business sent by the first active object, thereby improving the business recommendation effect.
[0115] Specifically, after determining the first active object, the subnetwork containing the first active object in the first subnetwork set can be added to the second subnetwork set. At this time, each subnetwork included in the second subnetwork set contains the first active object. That is, the business objects in the second subnetwork set other than the first active object are business objects that appear in the same subnetwork as the first active object. Therefore, the business objects in the second subnetwork set other than the first active object can be determined as the first candidate objects.
[0116] In an embodiment of the present application, the number of times the first candidate object appears in the second sub-network set is the number of times the first active object and the first candidate object appear together. The number of times the first candidate object appears in the second sub-network set can be referred to as the second occurrence frequency of the first candidate object. After obtaining the first candidate object, the second occurrence frequency of the first candidate object in the second sub-network set can be counted. When there are multiple first candidate objects, multiple first candidate objects can be added to the first candidate object set, and first candidate objects that have no association relationship with the first active object can be removed from the first candidate object set to obtain a second candidate object set. In this case, the first candidate objects included in the second candidate object set are all business objects that have an association relationship with the first active object. Furthermore, the first candidate objects in the second candidate object set can be sorted in descending order according to the second occurrence frequency to obtain a candidate object list. The higher the first candidate object in the candidate object list is ranked, the greater the probability that the first active object will send a recommended service to it; and then the first y first candidate objects in the candidate object list are determined as the propagation objects corresponding to the first active object; y represents the number of propagation objects corresponding to the first active object, y is a positive integer, and y can take values of 1, 2, 5 or 10, etc. Its specific value can be determined according to actual conditions. For example, the number of propagation objects y can be consistent with the number of recommended display positions in the business application.
[0117] See Figure 5 , Figure 5 This is a schematic diagram of determining a propagation object for an active object provided by an embodiment of the present application. Figure 5As shown, after constructing an object relationship network 30a including business objects 1, 2, 3, 4, 5, and 6, the business objects in the object relationship network 30a can be sampled to obtain a first subnetwork set 30b. The first subnetwork set 30b includes six subnetworks: subnetwork R1, subnetwork R2, subnetwork R3, subnetwork R4, subnetwork R5, and subnetwork R6. Subnetwork R1 includes business object 1, subnetwork R2 includes business objects 4 and 6, subnetwork R3 includes business objects 1 and 3, subnetwork R4 includes business objects 1, 2, and 3, subnetwork R5 includes business objects 1, 3, 4, 5, and 6, and subnetwork R6 includes business object 6. In this case, statistics show that the first occurrence frequency of business object 1 is 4, the first occurrence frequency of business object 2 is 1, the first occurrence frequency of business object 3 is 3, the first occurrence frequency of business object 4 is 2, the first occurrence frequency of business object 5 is 1, and the first occurrence frequency of business object 6 is 3. It can be seen that the business object with the highest first occurrence frequency is business object 1. In other words, business object 1 is the business object with the greatest dissemination influence among all business objects. Therefore, business object 1 can be determined as the most active object.
[0118] like Figure 5As shown, after selecting business object 1 as the first active object, a subnetwork containing business object 1 can be searched from first subnetwork set 30b and added to second subnetwork set 30c. Since subnetworks R1, R3, R4, and R5 in first subnetwork set 30b all contain business object 1, subnetworks R1, R3, R4, and R5 can be added to second subnetwork set 30c. Since each subnetwork in second subnetwork set 30c contains business object 1, the business objects in second subnetwork set 30c other than business object 1 are those that appear in the same subnetwork as business object 1. Therefore, the business objects in second subnetwork set 30c other than business object 1 can be determined as first candidate objects. Second subnetwork set 30c includes business objects 1, 2, 3, 4, 5, and 6. Business objects 2, 3, 4, 5, and 6 can be identified as first candidate objects and added to first candidate object set 30d. Specifically, business objects 1 and 2 appear together in subnetwork R4; business objects 1 and 3 appear together in subnetworks R3, R4, and R5; business objects 1 and 4 appear together in subnetwork R5; business objects 1 and 5 appear together in subnetwork R5; and business objects 1 and 6 appear together in subnetwork R6.
[0119] Furthermore, the second occurrence frequency of each business object included in the first candidate object set in the second sub-network set 30c can be counted, wherein the second occurrence frequency of business object 2 is 1, the second occurrence frequency of business object 3 is 3, the second occurrence frequency of business object 4 is 1, the second occurrence frequency of business object 5 is 1, and the second occurrence frequency of business object 6 is 1.
[0120] like Figure 5 As shown, the neighbor objects of business object 1 in the object relationship network 30a include business object 2 and business object 3. That is, business object 2 and business object 3 have an association relationship with business object 1, while business object 4, business object 5, and business object 6 in the first candidate object set 30d do not have an association relationship with business object 1. Business object 4, business object 5, and business object 6 can be removed from the first candidate object set 30d to obtain a second candidate object set 30e containing business object 2 and business object 3. Then, the first candidate objects (business object 2 and business object 3) in the second candidate object set 30e can be sorted in descending order according to the second occurrence frequency to obtain a candidate object list 30f. Figure 5As shown, since the second occurrence frequency of business object 3 is greater than the second occurrence frequency of business object 2, business object 3 is ranked higher than business object 2 in candidate object list 30f. Assuming that the number of propagation objects y is 1, business object 3 can be determined as the propagation object corresponding to business object 1.
[0121] Optionally, after obtaining the propagation object corresponding to the first active object, the propagation object corresponding to the first active object can be sent to the terminal device corresponding to the first active object. After receiving the propagation object, the terminal device corresponding to the first active object can display the propagation object corresponding to the first active object in the business application. The first active object can perform an object selection operation on one or more propagation objects displayed in the business application. In response to the object selection operation, the terminal device sends a recommended business associated with the business application to the propagation object selected by the first active object, inviting the propagation object to participate in the recommended business, thereby expanding the dissemination range of the recommended business and improving the effectiveness of the business recommendation.
[0122] See Figure 6 , Figure 6 This is a schematic diagram of an interface of an object recommendation list provided in an embodiment of the present application. Taking the business application as an example, for the first active object s i The corresponding object recommendation list display interface is described, and the object recommendation list includes the first active object s i One or more corresponding propagation objects. Figure 6 The current interface shown is the recommendation list display interface 40f corresponding to the recommended service in the game application. i After the corresponding propagation object, the first active object s i The corresponding propagation object is displayed to the first active object s i ,like Figure 6 As shown, it can be displayed as the first active object s in the area 40e of the recommendation list display interface 40f. i The corresponding propagation objects include, for example, propagation object 40a, propagation object 40b, propagation object 40c, and propagation object 40d.
[0123] In the embodiment of the present application, the recommended service may be a limited-time event, a game copy, a game challenge event, a virtual prop, or a virtual map, etc. Figure 6 As shown, the recommended service can be a greeting card drawing activity in a game application, and the first active object s i One or more communication objects can be invited from the communication objects displayed in area 40e to participate in the greeting card drawing activity. The object recommendation list display interface 40f can also display the activity rules corresponding to the greeting card drawing activity in the game application. The activity rules may include but are not limited to: the first active object si You can invite your friends to draw greeting cards. If your friends click to participate in the card drawing activity, the first active object s i Both you and your friends can receive rewards, which can be skins, skills, trial play time, and game coins in the game application, etc. I will not give examples one by one here.
[0124] For example, if the first active object s i Select the communication object 40a in the invitation area 40e to participate in the greeting card drawing activity, then the first active object s i The broadcast object 40a can be clicked, and the game application can respond to the first active object s i In response to the click operation of the communication object 40a, an invitation request for the greeting card drawing activity is sent to the communication object 40a. The communication object 40a can i View the first active object in the interactive page 40h i The invitation request can trigger the "click to participate" control 40i to participate in the greeting card drawing activity. At this time, the first active object s i And the communication object 40a issues rewards to expand the communication degree of the greeting card drawing activity.
[0125] like Figure 6 As shown, the number of propagation objects displayed in the area 40e of the object recommendation list display interface 40f is limited. If the first active object s i If you do not want to invite the communication objects displayed in the current area 40e to participate in the greeting card drawing activity, you can trigger the "Change Batch" control 40g in the object recommendation list display interface 40f to update the communication objects displayed in the area 40e, and then select the communication objects you want to invite to participate in the greeting card drawing activity.
[0126] In an embodiment of the present application, the business objects in the object relationship network can be sampled to obtain a first sub-network set, the first occurrence frequency of each business object in the first sub-network set is counted, and the business object corresponding to the largest first occurrence frequency is determined as the first active object; the business object that appears in the same sub-network as the first active object is determined as the first candidate object, and the number of common occurrences of the first active object and the first candidate object in the sub-network (the second occurrence frequency) is counted, and then based on the number of common occurrences of the first active object and the first candidate object, and the association relationship between the first active object and the first candidate object, the propagation object corresponding to the first active object is determined from the first candidate object. In other words, two business objects with an association relationship and in the same sub-network influence each other in the propagation process of the recommended business. The more common occurrences in the sub-network, the greater the possibility that the two business objects with an association relationship influence each other. Based on the number of common occurrences of the first active object and the first candidate object, and the association relationship between the first active object and the first candidate object, the propagation object corresponding to the first active object is determined, which can improve the selection accuracy of the propagation object corresponding to the first active object, and thus improve the business recommendation effect.
[0127] See Figure 7 , Figure 7 This is a flow diagram of a data processing method provided in an embodiment of the present application. Figure 2 It is understood that the data processing method is performed by a computer device (e.g. Figure 1 The data processing method may include the following steps S201 to S212:
[0128] Step S201: Obtain an object relationship network, and obtain the number k of neighbors of the ith business object in the object relationship network among n business objects. i , for the number of neighbors k i Perform logarithmic processing to obtain the neighbor logarithm result corresponding to the i-th business object.
[0129] Step S202: Accumulate the neighbor logarithm results corresponding to the n business objects to obtain the total value of the neighbor logarithm.
[0130] Step S203: Obtain parameter logarithm results corresponding to the sampling parameters, determine a sampling reference value based on the parameter logarithm results and the total value of the neighbor logarithm, and determine the number of sampling times corresponding to the object relationship network based on the sampling reference value.
[0131] Step S204: sampling the business objects in the object relationship network according to the sampling times to obtain θ sub-networks, and adding the θ sub-networks to the first sub-network set.
[0132] In the embodiment of the present application, an object relationship network can be constructed based on n business objects in the business application and the historical interaction information between n business objects. For the specific construction process, please refer to Figure 3 The description of step S101 shown in step 10 is not repeated here. Furthermore, the n business objects included in the object relationship network can be sampled to obtain a first sub-network set. Then, based on the sub-networks in the first sub-network set, one or more active objects with significant dissemination influence are selected from the n business objects to initially disseminate the recommended service. The number k of active objects can be a parameter pre-set by the business application, and its specific value can be determined based on actual circumstances, and is not limited in this embodiment of the present application.
[0133] The accuracy of selecting active objects is positively correlated with the number of subnetworks θ included in the first subnetwork set. The larger the number of subnetworks θ included in the first subnetwork set, the higher the accuracy of selecting active objects. Therefore, it is often hoped that the number of subnetworks θ included in the first subnetwork set is as large as possible. In other words, it is hoped that the number of sampling times θ is as large as possible to ensure that the approximate solution of the optimal coverage of the first subnetwork set is close to the approximate solution of the influence maximization problem. However, if the number of sampling times θ (θ is an integer greater than 1) is too large, there will be excessive storage pressure and generation time complexity. In an embodiment of the present application, the sampling reference value θ corresponding to the sampling number θ can be calculated based on the concentration characteristics of a random process called a martingale. max Make an estimate and then sample the reference value θ max The sampling times θ are set to ensure the accuracy of active object selection while reducing the generation time of the sub-networks in the first sub-network set.
[0134] The sampling reference value θ can be determined based on the total value of the neighbor logarithms corresponding to the n business objects and the parameter logarithm corresponding to the sampling parameters. max The total value of the neighbor pairs corresponding to n business objects is the result of accumulating the neighbor pairs corresponding to n business objects. For the i-th business object among n business objects, the number of neighbors k of the i-th business object in the object relationship network can be obtained. i , for the number of neighbors k i Perform logarithmic processing to obtain the neighbor logarithm result corresponding to the i-th business object; the i-th business object is any one of the n business objects, and i is a positive integer greater than 1. Similarly, use the same method to obtain the neighbor logarithm results corresponding to n business objects, and accumulate the neighbor logarithm results corresponding to the n business objects to obtain the total neighbor logarithm value.
[0135] Furthermore, the parameter logarithm result corresponding to the sampling parameter can be obtained, and the square root operation can be performed on half of the sum of the parameter logarithm result and the total value of the neighbor logarithms to obtain the first candidate sampling value; half of the result obtained after the square root operation of the parameter logarithm result is determined as the second candidate sampling value; and then the sampling reference value θ can be determined according to the square of the sum of the first candidate sampling value and the second candidate sampling value. max The sampling parameter can be a pre-set parameter, and its specific value can be determined according to the actual situation. As an example, the sampling reference value θ max The calculation process can be shown as the following formula (2):
[0136]
[0137] Among them, θ max Indicates the sampling reference value; represents the sampling parameter, δ is the probability of failing to achieve relative accuracy ∈; ln represents the logarithmic processing with base e; Indicates the result of parameter logarithm; k i represents the number of neighbors of the i-th business object in the object relationship network; ln(k i ) represents the neighbor logarithm result corresponding to the i-th business object; Represents the total value of neighbor pairs.
[0138] It can be understood that the sampling reference value θ max It is ensured that the sub-networks in the first sub-network set can reach the theoretical optimal solution of the problem of maximizing the propagation influence with a probability of 1-δ / 3, which is 1-1 / e. In practical applications, the number of sampling times θ can be set to a value greater than the sampling reference value θ max For example, the sampling frequency θ can be set to 2θ max or 3θ max etc.
[0139] After obtaining the sampling number θ, the business objects in the object-relational network can be sampled based on the sampling number θ to obtain θ sub-networks, which are then added to the first sub-network set. During a sampling process, the activation state of business objects in the object-relational network can be either activated or inactivated. When a business object is activated, its activation state switches from inactivated to activated, and this activated state remains until the propagation completes. Business objects in the activated state are referred to as activated objects, while those in the inactivated state are referred to as inactivated objects. The sampling process involves selecting a business object from the object-relational network as the starting activation object, and then searching the object-relational network using this starting activation object as the starting search object. Whether the activation state of each neighbor object can switch to activated depends on the edge weight between the two business objects and the activation threshold of the business object. The search stops when there are no new activated objects in the object-relational network. The sub-network for that sampling is then generated based on the relationships between all activated objects during that sampling process. In other words, a sampling process can be understood as finding all business objects in the object-relational network that are in the activated state. Among them, the activation threshold corresponding to the business object can reflect the difficulty of the business object being activated by its neighbor objects. The larger the activation threshold corresponding to the business object, the more difficult it is for the business object to be activated by its neighbor objects. Conversely, the smaller the activation threshold corresponding to the business object, the easier it is for the business object to be activated by its neighbor objects.
[0140] It is understandable that the sampling process is similar for each sampling. The difference between different batches of sampling lies in the different starting activation objects selected and the different activation thresholds corresponding to the business objects sampled each time. Therefore, different batches of sampling may obtain different sub-networks. The specific structure of the sub-network obtained in a particular sampling is related to the activation threshold corresponding to the business objects in the object relationship network in that sampling and the edge weights between each business object. For ease of description, the embodiment of the present application takes the a-th sub-network in the object relationship network as an example to describe the process of obtaining the sub-networks in the first sub-network set, where the a-th sub-network is the sub-network obtained by the a-th sampling of the object relationship network, and a is a positive integer less than or equal to θ.
[0141] In one possible embodiment, the acquisition process of the ath sub-network may include: determining the starting activation object of the ath sampling in the object relationship network, adding the neighbor objects of the starting activation object in the object relationship network to the first neighbor object set; obtaining the activation threshold corresponding to the business objects in the first neighbor object set, and obtaining the edge weight between the starting activation object and the business objects in the first neighbor object set; determining the business objects in the first neighbor object set whose edge weights are greater than the activation threshold as the first activation objects; removing the starting activation object from the object relationship network to obtain the object sampling network, adding the neighbor objects of the first activation object in the object sampling network to the second neighbor object set; obtaining the activation threshold corresponding to the business objects in the second neighbor object set, and obtaining the edge weights between the first activation object and the business objects in the second neighbor object set; if there is no business object with an edge weight greater than the activation threshold in the second neighbor object set, generating the ath sub-network according to the association relationship between the starting activation object and the first activation object.
[0142] See Figure 8 , Figure 8 This is a sample diagram of an object relationship network provided by the embodiment of the present application. Figure 1 .like Figure 8 As shown, object relationship network 50a includes business objects 1, 2, 3, and 4. During the a-th sampling process, an activation threshold can be randomly generated for each business object in object relationship network 50a. For example, the activation threshold corresponding to business object 1 can be 0.2, the activation threshold corresponding to business object 2 can be 0.3, the activation threshold corresponding to business object 3 can be 0.4, and the activation threshold corresponding to business object 4 can be 0.5. Based on the activation threshold corresponding to each business object and the edge weights between each business object, the active object can be determined among the business objects. The active object is a business object whose activation state is activated during the a-th sampling process, specifically, a business object whose edge weight is greater than the activation threshold corresponding to the business object.
[0143] like Figure 8 As shown, a business object (for example, business object 1) can be selected in the object relationship network 50a as the starting activation object for the a-th sampling. The starting activation object can be a randomly selected business object or a business object selected according to an activation threshold. For example, business object 1 with the smallest activation threshold can be selected as the starting activation object for the a-th sampling. At this time, the activation state corresponding to business object 1 is switched from an unactivated state to an activated state, and the activation states corresponding to business objects 2, 3, and 4 are all unactivated states, that is, business object 1 is activated, and business objects 2, 3, and 4 have not yet been activated.
[0144] Furthermore, the neighbor objects (including business objects 3 and 4) corresponding to business object 1 can be traversed in the object relationship network 50a and added to the first neighbor object set. The edge weight between business object 1 and business object 3 in the first neighbor object set can be compared with the activation threshold corresponding to business object 3. The edge weight between business object 1 and business object 4 in the first neighbor object set can be compared with the activation threshold corresponding to business object 4, and the business object in the first neighbor object set whose edge weight is greater than the activation threshold is determined as the first activated object. Among them, the edge weight between business object 1 and business object 3 is 0.8, the activation threshold corresponding to business object 3 is 0.3, the edge weight between business object 1 and business object 4 is 0.5, the activation threshold corresponding to business object 4 is 0.4, and the edge weights corresponding to business object 3 and business object 4 are both greater than the activation threshold. At this time, the activation status corresponding to business object 3 and business object 4 is updated from the unactivated state to the activated state, that is, business object 3 and business object 4 are activated, and business object 3 and business object 4 are determined as the first activated object. Assuming that there is no business object with an edge weight greater than the activation threshold in the first neighbor object set, the sampling ends, the only activated object is business object 1, and the ath subnetwork is the subnetwork containing only business object 1.
[0145] After obtaining the first activated object (including business object 3 and business object 4), the initial activated object (business object 1) can be removed from the object relationship network 50a to obtain the object sampling network 50b. Figure 8 As shown, object sampling network 50b includes business objects 3, 4, and 2, as well as edges connecting business objects 3 and 4, and edges connecting business objects 4 and 2. Neighbor objects corresponding to business objects 3 and 4 can be traversed in object sampling network 50b and added to the second neighbor object set. Business object 4 is the neighbor object corresponding to business object 3. Since business object 4 is in the activated state, to save computation time, business object 4 can be omitted from the second neighbor object set. In other words, the second neighbor object set only includes business object 2.
[0146] Furthermore, the edge weight between business object 4 and business object 2 in the second neighbor object set can be compared with the activation threshold corresponding to business object 2. The edge weight between business object 4 and business object 2 is 0.3, and the activation threshold corresponding to business object 2 is 0.5. The edge weight corresponding to business object 2 is less than the activation threshold corresponding to business object 2. At this time, there is no business object with an edge weight greater than the activation threshold in the second neighbor object set, and the sampling can be ended. At this time, business object 1 (starting activation object), business object 3 (first activation object) and business object 4 (first activation object) are all activated objects. According to the association relationship between business object 1, business object 3 and business object 4, the following is generated: Figure 8 The sub-network 50c shown is the sub-network obtained by the a-th sampling (the a-th sub-network).
[0147] Assuming that the edge weight corresponding to business object 2 is greater than the activation threshold corresponding to business object 2, business object 2 can be determined as the activated object. Since all business objects in the object relationship network 50a have been traversed, this sampling is completed. At this time, business object 1, business object 2, business object 3 and business object 4 are all activated objects. Then, based on the association relationship between business object 1, business object 2, business object 3 and business object 4, the ath sub-network can be generated. At this time, the ath sub-network is the object relationship network 50a.
[0148] It is understandable that in the sampling process of the embodiment of the present application, when a business object in the object relationship network is activated, the business object will try to activate its inactivated neighbor objects with a certain probability. This attempt is only performed once, and these attempts are independent of each other. Figure 8 In the object relationship network 50a shown, when both business object 1 and business object 3 are activated, business object 1 can attempt to activate business object 4, and business object 3 can also attempt to activate business object 4. However, if business object 1 fails to successfully activate business object 4, business object 1 will no longer participate in the activation process when business object 3 attempts to activate business object 4. In other words, in this embodiment of the present application, the activation of another business object by one business object is not affected by the other business objects. The activation actions of each business object are independent of each other. This independence can effectively handle concurrent activation events and help improve the accuracy and stability of the selection of the activated object.
[0149] In one possible embodiment, the acquisition process of the ath sub-network may include: determining the starting activation object of the ath sampling in the object relationship network, adding the neighbor objects of the starting activation object in the object relationship network to the first neighbor object set; obtaining the activation threshold corresponding to the business objects in the first neighbor object set, and obtaining the edge weight between the starting activation object and the business objects in the first neighbor object set, and determining the business objects in the first neighbor object set whose edge weight is greater than the activation threshold as the first activation object; adding the neighbor objects of the first activation object other than the starting activation object in the object relationship network to a third neighbor object set, and determining the activated neighbor object corresponding to the xth business object in the third neighbor object set in the object relationship network; x is a positive integer; if the sum of the edge weights between the xth business object and the activated neighbor objects is less than the activation threshold corresponding to the xth business object, then determining the xth business object as an inactive object; if all the business objects in the third neighbor object set are inactive objects, then generating the ath sub-network based on the association relationship between the starting activation object and the first activation object.
[0150] It is understandable that in the embodiment of the present application, when determining the activation object, the cumulative effect of the propagation influence in the object relationship network is taken into account, and whether the business object is the activation object can be determined by the sum of the propagation influences corresponding to the business objects, thereby improving the accuracy of selecting the activation object. Among them, the propagation influence can be measured by the edge weight. The greater the edge weight, the greater the propagation influence. In the embodiment of the present application, the activation object has more than one opportunity to activate other business objects. The activation object can continuously activate its neighbor objects. The propagation influence exerted by multiple activation objects trying to activate the same business object at the same time will be continuously accumulated. When the sum of the propagation influences of the business object is greater than the activation threshold corresponding to the business object, the activation state of the business object is switched from the unactivated state to the activated state.
[0151] See Figure 9 , Figure 9 This is a sample diagram of an object relationship network provided by the embodiment of the present application. Figure 2 .like Figure 9As shown, object relationship network 60a includes business objects 1, 2, 3, and 4. During the a-th sampling process, an activation threshold can be randomly generated for each business object in object relationship network 60a. For example, the activation threshold corresponding to business object 1 can be 0.2, the activation threshold corresponding to business object 2 can be 0.3, the activation threshold corresponding to business object 3 can be 0.7, and the activation threshold corresponding to business object 4 can be 0.5. A business object can be selected from object relationship network 60a as the starting activation object for the a-th sampling process. For example, business object 1 can be selected as the starting activation object for the a-th sampling process. At this point, the activation state corresponding to business object 1 switches from inactive to activated, while the activation states corresponding to business objects 2, 3, and 4 remain inactive. That is, business object 1 is activated, while business objects 2, 3, and 4 are not yet activated.
[0152] Furthermore, the neighbor objects corresponding to business object 1 (including business object 3 and business object 4) can be traversed in the object relationship network 60a and added to the first neighbor object set. The edge weight between business object 1 and business object 3 in the first neighbor object set can be compared with the activation threshold corresponding to business object 3. The edge weight between business object 1 and business object 4 in the first neighbor object set can be compared with the activation threshold corresponding to business object 4. The business object in the first neighbor object set whose edge weight is greater than the activation threshold is determined as the first activated object. Here, the edge weight between business object 1 and business object 3 is 0.8, the activation threshold corresponding to business object 3 is 0.3, the edge weight between business object 1 and business object 4 is 0.3, and the activation threshold corresponding to business object 4 is 0.7. The edge weight corresponding to business object 3 is greater than its corresponding activation threshold, and the edge weight corresponding to business object 4 is less than its corresponding activation threshold. At this time, the activation state corresponding to business object 3 is updated from the inactive state to the activated state, and the activation state corresponding to business object 4 remains the inactive state. That is, business object 3 is activated, while business object 4 is not yet activated. Therefore, business object 3 is determined as the first activated object. Assuming that there is no business object with an edge weight greater than the activation threshold in the first neighbor object set, the sampling ends. At this time, only business object 1 is active in the object set, and the ath subnetwork is the subnetwork containing only business object 1.
[0153] After obtaining the first activation object, the first activation object can be removed from the object relationship network by removing the initial activation object ( Figure 9 Neighbor objects other than the business object 1) shown in FIG are added to the third neighbor object set. For example, for Figure 9In the object relationship network 60a shown, the first activated object is business object 3. Business object 3's neighbor objects in object relationship network 60a include business object 1 and business object 4. The initial activated object is business object 1, and the third set of neighbor objects may include business object 4. Business object 4's neighbor objects in object relationship network 60a include business object 1 and business object 3. Both business object 1 and business object 3 are in the activated state. Therefore, business object 1 and business object 3 are both activated objects, and business object 1 and business object 3 are activated neighbor objects of business object 4. The activation threshold corresponding to business object 4 is 0.7, the edge weight between business object 4 and business object 1 is 0.3, the edge weight between business object 4 and business object 3 is 0.2, and the sum of the edge weights between business object 4 and business object 1 and business object 3 is 0.5; since the edge weights between business object 4 and business object 1 and business object 3 are less than the activation threshold corresponding to business object 4, at this time, the sum of the propagation influence corresponding to business object 4 is less than its activation threshold, and the activation state of business object 4 is inactive. Therefore, business object 4 is an inactive object; since business object 4 is an inactive object, its neighbor object 2 cannot be activated. Therefore, this sampling is completed, and the objects that can be activated include business object 1 and business object 3. According to the association relationship between business object 1 and business object 3, the following is generated: Figure 9 The sub-network 60b shown is the sub-network obtained by the a-th sampling (the a-th sub-network).
[0154] Step S205: Count the first occurrence frequencies of each business object in the first sub-network set, and determine the business object corresponding to the largest first occurrence frequency as the first active object.
[0155] After obtaining the first sub-network set, k business objects with the highest communication influence can be selected from the n business objects in the object relationship network as active objects based on the sub-networks in the first sub-network set. In other words, it is necessary to select k business objects from the n business objects so that the k business objects cover the largest number of sub-networks, that is, the k business objects appear the most frequently in the sub-networks, thereby maximizing the communication influence of the selected k active objects. Among them, the first active object is the active object with the greatest communication influence among the above k active objects. The selection process of the first active object can refer to Figure 3 The description of step S102 is omitted here.
[0156] Step S206: adding the subnetwork containing the first active object in the first subnetwork set to the second subnetwork set, and determining the business objects other than the first active object in the second subnetwork set as first candidate objects.
[0157] Step S207: Counting the second occurrence frequency of the first candidate object in the second sub-network set, and determining the propagation object corresponding to the first active object in the first candidate objects based on the second occurrence frequency of the first candidate object and the association relationship between the first active object and the first candidate object.
[0158] After obtaining the first active object, the business object that appears in the same sub-network as the first active object can be selected as the first candidate object. Then, based on the number of co-occurrences of the first active object and the first candidate object, and the association relationship between the first active object and the first candidate object, the propagation object corresponding to the first active object can be determined from the first candidate objects. The specific implementation process can be referred to Figure 3 The description of step S103 and step S104 shown is not repeated here.
[0159] Step S208: adding the first active object to the active object set, and updating the first sub-network set according to the second sub-network set to obtain a third sub-network set.
[0160] After obtaining the propagation object corresponding to the first active object, the first active object can be added to the active object set, thereby determining the second active object and the propagation object corresponding to the second active object. The second active object is the business object with the second highest propagation influence among the k active objects. It is understandable that because the subnetworks included in the second subnetwork set are already covered by the first active object, the second subnetwork cannot be used as a valid coverage to estimate the propagation influence corresponding to the business object. The second subnetwork set is required to update the first subnetwork set to obtain a third subnetwork set, and then determine the second active object based on the subnetworks in the third subnetwork set; the third subnetwork set does not include the subnetworks in the second subnetwork set.
[0161] Specifically, Figure 5 Taking the first sub-network set 30b as an example, after determining business object 1 as the first active object and business object 3 and business object 2 as the propagation objects of business object 1, the first sub-network set 30b can be obtained according to the second sub-network set 30c. Specifically, the sub-networks included in the second sub-network set 30c can be deleted from the first sub-network set 30b. Figure 5 As shown, the first subnetwork set 30b includes subnetwork R1, subnetwork R3, subnetwork R4, subnetwork R5 and subnetwork R6, the second subnetwork set 30c includes subnetwork R1, subnetwork R2, subnetwork R3, subnetwork R4 and subnetwork R5, and the third subnetwork set includes subnetwork R2 and subnetwork R6.
[0162] Step S209: Count the third occurrence frequencies of each business object in the third sub-network set, and determine the business object corresponding to the largest third occurrence frequency as the second active object.
[0163] Step S210: adding the subnetwork containing the second active object in the third subnetwork set to the fourth subnetwork set, and determining the business objects other than the second active object in the fourth subnetwork set as second candidate objects.
[0164] Step S211: Counting the fourth occurrence frequency of the second candidate object in the fourth sub-network set, and determining the propagation object corresponding to the second active object in the second candidate objects based on the fourth occurrence frequency of the second candidate object and the association relationship between the second active object and the second candidate object.
[0165] In this embodiment of the present application, the third occurrence frequency can be understood as the number of occurrences of each business object in the subnetworks of the third subnetwork set. The third subnetwork set includes subnetworks R2 and R6, subnetwork R2 includes business objects 4 and 6, and subnetwork R6 includes business object 6. The third occurrence frequency of business object 4 is 1, and the third occurrence frequency of business object 6 is 2. It can be seen that the business object with the highest third occurrence frequency is business object 6. In other words, the dissemination influence of business object 6 is second only to business object 1. Therefore, business object 6 can be determined as the second most active object.
[0166] After selecting business object 6 as the second-hop object, the subnetworks in the third subnetwork set that contain business object 6 can be added to the fourth subnetwork set. Since both subnetworks R2 and R6 in the third subnetwork set contain business object 6, subnetworks R2 and R6 can be added to the fourth subnetwork set. Since every subnetwork in the fourth subnetwork set contains business object 6, that is, the business objects in the fourth subnetwork set other than business object 6 are business objects that appear in the same subnetwork as business object 6, the business objects in the fourth subnetwork set other than business object 6 can be determined as second candidate objects. The fourth subnetwork set contains business object 4 and business object 6, so business object 4 can be determined as the second candidate object. The fourth occurrence frequency of business object 4 in the fourth subnetwork set is 1.
[0167] Since business object 6 is Figure 5 The neighbor objects in the object relationship network 30a shown include business object 4 and business object 5, that is, business object 6 and business object 4 have an association relationship, and since the second candidate object corresponding to business object 6 only includes business object 4, business object 4 can be determined as the propagation object corresponding to business object 6.
[0168] Step S212: adding the second active object to the active object set until the number of objects in the active object set reaches a threshold, and then stopping updating the first sub-network set.
[0169] After obtaining the propagation object corresponding to the second active object, the second active object can be added to the active object set. If the quantity threshold k is 2, the active object set contains the first active object and the second active object, and the number of objects is 2, which reaches the quantity threshold k, then the updating of the first sub-network set can be stopped. If the number of objects in the active object set does not reach the quantity threshold k at this time, the first sub-network set is updated until the number of objects in the active object set reaches the quantity threshold k. After obtaining k active objects and the propagation objects corresponding to the k active objects, the propagation objects corresponding to each active object can be sent to the terminal device corresponding to each active object, so that the active object invites its corresponding propagation object to participate in the recommendation service, thereby expanding the propagation range of the recommended service and improving the service recommendation effect.
[0170] The method for determining the dissemination target proposed in the embodiment of this application (hereinafter referred to as this solution for ease of description) can be applied to the dissemination process of recommended services in game applications. This solution and the round-robin-based dissemination influence maximization (RR-OPIM) algorithm were subjected to online A / B testing, with the click-through rate of the recommended service and the average number of shares per person as evaluation indicators. The performance of this solution and the RR-OPIM algorithm are shown in Table 1 below:
[0171] Table 1
[0172] algorithm Click-through rate Average number of shares per person This program 84.39% 1.77 RR-OPIM algorithm 81.52% 1.57
[0173] As shown in Table 1, compared with the RR-OPIM algorithm, this solution increased the click-through rate of recommended services by 3.7% and the average number of people sharing recommended services by 12.7%, indicating that this solution can improve the effectiveness of service recommendations.
[0174] In an embodiment of the present application, the business objects in the object relationship network can be sampled to obtain a first sub-network set, the first occurrence frequency of each business object in the first sub-network set is counted, and the business object corresponding to the largest first occurrence frequency is determined as the first active object; the business object that appears in the same sub-network as the first active object is determined as the first candidate object, and the number of common occurrences of the first active object and the first candidate object in the sub-network (the second occurrence frequency) is counted, and then based on the number of common occurrences of the first active object and the first candidate object, and the association relationship between the first active object and the first candidate object, the propagation object corresponding to the first active object is determined from the first candidate object. In other words, two business objects with an association relationship and in the same sub-network influence each other in the propagation process of the recommended business. The more common occurrences in the sub-network, the greater the possibility that the two business objects with an association relationship influence each other. Based on the number of common occurrences of the first active object and the first candidate object, and the association relationship between the first active object and the first candidate object, the propagation object corresponding to the first active object is determined, which can improve the selection accuracy of the propagation object corresponding to the first active object, and thus improve the business recommendation effect.
[0175] It is understandable that in the specific implementation of this application, relevant information of users in business applications (for example, communication relationships between different users, interaction information between different users, etc.) may be involved. When the above embodiments of this application are applied to specific products or technologies, the user's permission or consent must be obtained, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards in the relevant regions.
[0176] See Figure 10 , Figure 10 is a structural diagram of a data processing device provided in an embodiment of the present application; it can be understood that the data processing device can be applied in Figure 1 In the server 10d shown in FIG. Figure 10 As shown, the data processing device 1 may include: an object sampling module 11, an active object determination module 12, a candidate object determination module 13 and a first propagation object determination module 14, wherein:
[0177] The object sampling module 11 is used to obtain an object relationship network and sample business objects in the object relationship network to obtain a first sub-network set; the object relationship network includes multiple business objects and connection edges between business objects with association relationships;
[0178] An active object determination module 12 is configured to count the first occurrence frequencies of each business object in the first sub-network set, and determine the business object corresponding to the largest first occurrence frequency as the first active object;
[0179] A candidate object determination module 13 is configured to add the subnetwork containing the first active object in the first subnetwork set to the second subnetwork set, and determine the business objects other than the first active object in the second subnetwork set as first candidate objects;
[0180] The first propagation object determination module 14 is configured to count a second occurrence frequency of the first candidate object in the second sub-network set, and determine a propagation object corresponding to the first active object in the first candidate objects based on the second occurrence frequency of the first candidate object and the association relationship between the first active object and the first candidate object; the propagation object corresponding to the first active object is configured to receive the recommended service sent by the first active object.
[0181] In a possible implementation, the object sampling module 11 is specifically configured to:
[0182] Obtain n business objects in a business application, and obtain historical interaction information of n business objects in the business application; n is an integer greater than 1;
[0183] If the historical interaction information indicates that business object a and business object b in the business object set have an association relationship, then a connection edge is established between business object a and business object b;
[0184] An object relationship network is constructed based on n business objects and the connection edges between the n business objects.
[0185] In a possible implementation, the object sampling module 11 is specifically configured to:
[0186] Get object log files of n business objects in business applications;
[0187] The communication relationship and object interaction information between n business objects are obtained in the object log file, and the communication relationship and object interaction information are determined as historical interaction information of the n business objects in the business application.
[0188] In a possible implementation, the object relationship network includes n business objects, where n is an integer greater than 1; the object sampling module 11 is specifically configured to:
[0189] Get the number k of neighbors of the i-th business object in the object relationship network among n business objects i , for the number of neighbors k i Perform logarithmic processing to obtain the neighbor logarithm result corresponding to the i-th business object; i is a positive integer less than or equal to n;
[0190] Accumulate the neighbor logarithm results corresponding to n business objects to obtain the total value of the neighbor logarithm;
[0191] Obtain parameter logarithm results corresponding to the sampling parameters, determine a sampling reference value based on the parameter logarithm results and the total value of the neighbor logarithm, and determine the number of sampling times corresponding to the object relationship network based on the sampling reference value; the sampling number is greater than the sampling reference value;
[0192] The business objects in the object relationship network are sampled according to the sampling times to obtain θ sub-networks, and the θ sub-networks are added to the first sub-network set; one sub-network is obtained by sampling once, and θ is an integer greater than 1.
[0193] In a possible implementation, the object sampling module 11 is specifically configured to:
[0194] Perform square root operation on half of the sum of the parameter logarithm result and the total value of the neighbor logarithms to obtain the first candidate sampling value;
[0195] Determine half of the result obtained after performing a square root operation on the parameter logarithm as the second candidate sampling value;
[0196] A sampling reference value is determined according to the square of the sum of the first candidate sampling value and the second candidate sampling value.
[0197] In a possible implementation, the object sampling module 11 is specifically configured to:
[0198] Determine the starting activation object of the ath sampling in the object relationship network, and add the neighbor objects of the starting activation object in the object relationship network to the first neighbor object set; a is a positive integer less than or equal to θ;
[0199] Obtaining an activation threshold corresponding to a business object in the first neighbor object set, and obtaining an edge weight between the starting activation object and the business object in the first neighbor object set, and determining the business object in the first neighbor object set whose edge weight is greater than the activation threshold as the first activation object;
[0200] Eliminate the initial activated object from the object relationship network to obtain an object sampling network, and add the neighbor objects of the first activated object in the object sampling network to the second neighbor object set;
[0201] Obtaining an activation threshold corresponding to a business object in the second neighbor object set, and obtaining an edge weight between the first activated object and the business object in the second neighbor object set;
[0202] If there is no business object with an edge weight greater than the activation threshold in the second neighbor object set, an ath subnetwork is generated according to the association relationship between the initial activation object and the first activation object.
[0203] In a possible implementation, the object sampling module 11 is specifically configured to:
[0204] Determine the starting activation object of the ath sampling in the object relationship network, and add the neighbor objects of the starting activation object in the object relationship network to the first neighbor object set; a is a positive integer less than or equal to θ;
[0205] Obtaining an activation threshold corresponding to a business object in the first neighbor object set, and obtaining an edge weight between the starting activation object and the business object in the first neighbor object set, and determining the business object in the first neighbor object set whose edge weight is greater than the activation threshold as the first activation object;
[0206] Adding neighbor objects of the first activated object in the object relationship network except the initial activated object to a third neighbor object set, and determining the activated neighbor object corresponding to the x-th business object in the third neighbor object set in the object relationship network; x is a positive integer;
[0207] If the sum of the edge weights between the x-th business object and the activated neighbor objects is less than the activation threshold corresponding to the x-th business object, the x-th business object is determined to be an inactive object;
[0208] If all the service objects in the third neighbor object set are inactive objects, then an ath subnetwork is generated according to the association relationship between the initial active object and the first active object.
[0209] In a possible implementation, there are multiple first candidate objects; the first propagation object determination module 14 is specifically configured to:
[0210] Adding multiple first candidate objects to a first candidate object set, removing first candidate objects that have no association relationship with the first active object from the first candidate object set, and obtaining a second candidate object set;
[0211] Sort the first candidate objects in the second candidate object set in descending order according to the second occurrence frequency to obtain a candidate object list;
[0212] The first y first candidate objects in the candidate object list are determined as the propagation objects corresponding to the first active object; y is a positive integer.
[0213] In a possible implementation, the data processing apparatus further includes a second propagation target determining module 15, and the second propagation target determining module 15 is configured to:
[0214] Add the first active object to the active object set, and update the first sub-network set according to the second sub-network set to obtain a third sub-network set; the third sub-network set does not include the sub-networks in the second sub-network set;
[0215] Counting the third occurrence frequencies of each business object in the third sub-network set, and determining the business object corresponding to the largest third occurrence frequency as the second active object;
[0216] Adding the subnetwork containing the second active object in the third subnetwork set to the fourth subnetwork set, and determining the business objects other than the second active object in the fourth subnetwork set as second candidate objects;
[0217] Counting a fourth occurrence frequency of the second candidate object in the fourth sub-network set, and determining a propagation object corresponding to the second active object in the second candidate objects based on the fourth occurrence frequency of the second candidate object and an association relationship between the second active object and the second candidate object;
[0218] The second active object is added to the active object set until the number of objects in the active object set reaches a number threshold, and the updating of the first sub-network set is stopped.
[0219] In a possible implementation, the data processing device further includes a propagation object sending module 16, which is configured to:
[0220] The propagation object corresponding to the first active object is sent to the terminal device corresponding to the first active object, so that the terminal device displays the propagation object corresponding to the first active object in the business application; the terminal device is used to send recommended services associated with the business application to the propagation object selected by the first active object.
[0221] In the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program that has a predetermined function and works together with other related parts to achieve a predetermined goal, and can be implemented in whole or in part by using software, hardware (such as processing circuits or memories) or a combination thereof. Similarly, a processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be part of an overall module or unit that includes the function of the module or unit.
[0222] According to an embodiment of the present application, the steps involved in the data processing method shown above can be Figure 10 The data processing device 1 shown in FIG. 1 is executed by each module. For example, Figure 3 The step S101 shown can be performed by Figure 10 The object sampling module 11 shown is executed, Figure 3 Step S102 shown can be performed by Figure 10 The active object determination module 12 shown is executed, Figure 3 Step S103 shown can be performed by Figure 10 The candidate object determination module 13 shown is executed, Figure 3Step S104 shown can be performed by Figure 10 The first propagation object determination module 14 shown is used to perform the following operations.
[0223] According to one embodiment of the present application, Figure 10 The various modules in the data processing device 1 shown can be individually or all combined into one or several units to constitute, or one (some) of the units can be further split into at least two functionally smaller sub-units, which can achieve the same operation without affecting the realization of the technical effects of the embodiments of the present application. The above modules are divided based on logical functions. In actual applications, the functions of one module can also be implemented by at least two units, or the functions of at least two modules can be implemented by one unit. In other embodiments of the present application, the data processing device 1 may also include other units. In actual applications, these functions can also be implemented with the assistance of other units, and can be implemented by the collaboration of at least two units.
[0224] In an embodiment of the present application, the business objects in the object relationship network can be sampled to obtain a first sub-network set, the first occurrence frequency of each business object in the first sub-network set is counted, and the business object corresponding to the largest first occurrence frequency is determined as the first active object; the business object that appears in the same sub-network as the first active object is determined as the first candidate object, and the number of common occurrences of the first active object and the first candidate object in the sub-network (the second occurrence frequency) is counted, and then based on the number of common occurrences of the first active object and the first candidate object, and the association relationship between the first active object and the first candidate object, the propagation object corresponding to the first active object is determined from the first candidate object. In other words, two business objects with an association relationship and in the same sub-network influence each other in the propagation process of the recommended business. The more common occurrences in the sub-network, the greater the possibility that the two business objects with an association relationship influence each other. Based on the number of common occurrences of the first active object and the first candidate object, and the association relationship between the first active object and the first candidate object, the propagation object corresponding to the first active object is determined, which can improve the selection accuracy of the propagation object corresponding to the first active object, and thus improve the business recommendation effect.
[0225] See Figure 11 , Figure 11 This is a schematic diagram of the structure of a computer device provided in an embodiment of the present application. Figure 11 As shown, the computer device 1000 can be Figure 1The server 10d in the corresponding embodiment, the computer device 1000 may include: a processor 1001, a network interface 1004 and a memory 1005. In addition, the computer device 1000 may also include: a user interface 1003, and at least one communication bus 1002. The communication bus 1002 is used to realize the connection and communication between these components. The user interface 1003 may also include a standard wired interface and a wireless interface. The network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1005 may be a high-speed RAM memory or a non-volatile memory, such as at least one disk memory. The memory 1005 may optionally be at least one storage device located away from the aforementioned processor 1001. As Figure 11 As shown, the memory 1005 as a computer-readable storage medium may include an operating system, a network communication module, a user interface module, and a device control application.
[0226] The network interface 1004 in the computer device 1000 can also provide network communication functions. Figure 11 In the computer device 1000 shown, the network interface 1004 can provide network communication functions; the user interface 1003 is mainly used to provide an interface for user input; and the processor 1001 can be used to call the device control application stored in the memory 1005 to achieve:
[0227] Obtaining an object relationship network, sampling business objects in the object relationship network, and obtaining a first sub-network set; the object relationship network includes multiple business objects and connection edges between business objects having association relationships;
[0228] Counting the first occurrence frequency of each business object in the first sub-network set, and determining the business object corresponding to the largest first occurrence frequency as the first active object;
[0229] Adding the subnetwork including the first active object in the first subnetwork set to the second subnetwork set, and determining the business objects other than the first active object in the second subnetwork set as first candidate objects;
[0230] A second occurrence frequency of the first candidate object in the second sub-network set is counted, and based on the second occurrence frequency of the first candidate object and the association relationship between the first active object and the first candidate object, a propagation object corresponding to the first active object is determined in the first candidate objects; the propagation object corresponding to the first active object is used to receive the recommended service sent by the first active object.
[0231] It should be understood that the computer device 1000 described in the embodiment of the present application can execute the above Figure 3 and Figure 7 The description of the data processing method in any corresponding embodiment can also be performed as described above. Figure 10 The description of the data processing device 1 in the corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of adopting the same method will not be repeated here either.
[0232] In addition, it should be noted that: the embodiment of the present application also provides a computer-readable storage medium, and the computer-readable storage medium stores a computer program executed by the data processing device 1 mentioned above, and the computer program includes program instructions. When the processor executes the program instructions, it can execute the above-mentioned Figure 3 and Figure 7 The description of the data processing method in any corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of adopting the same method will not be repeated. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM) or a random access memory (RAM), etc. For technical details not disclosed in the computer-readable storage medium embodiment involved in this application, please refer to the description of the method embodiment of this application. As an example, the program instructions can be deployed on a computing device for execution, or on multiple computing devices located at one location, or on multiple computing devices distributed at multiple locations and interconnected by a communication network. Multiple computing devices distributed at multiple locations and interconnected by a communication network can constitute a blockchain system.
[0233] In addition, it should be noted that: the embodiment of the present application also provides a computer program product or computer program, which may include computer instructions, which may be stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor may execute the computer instructions, so that the computer device performs the above Figure 3 and Figure 7 The description of the data processing method in any corresponding embodiment will not be repeated here. In addition, the description of the beneficial effects of using the same method will not be repeated here. For technical details not disclosed in the computer program product or computer program embodiments involved in this application, please refer to the description of the method embodiments of this application.
[0234] It should be noted that for the aforementioned various method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that this application is not limited by the order of the actions described, because according to this application, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by this application.
[0235] The steps in the method of the embodiment of the present application can be adjusted in order, combined and deleted according to actual needs.
[0236] The modules in the device of the embodiment of the present application can be merged, divided and deleted according to actual needs.
[0237] Those skilled in the art will appreciate that all or part of the processes in the above-described method embodiments can be implemented by instructing related hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When executed, the program can include the processes in the above-described method embodiments. The storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).
[0238] The above disclosure is only a preferred embodiment of the present application, and certainly cannot be used to limit the scope of rights of the present application. Therefore, equivalent changes made according to the claims of the present application are still within the scope covered by the present application.
Claims
1. A data processing method, characterized in that: include: Acquire an object relationship network, sample business objects in the object relationship network, and obtain a first sub-network set; The object relationship network includes multiple business objects and connection edges between business objects with association relationships; Counting the first occurrence frequency of each business object in the first sub-network set, and determining the business object corresponding to the largest first occurrence frequency as a first active object; Adding the subnetwork containing the first active object in the first subnetwork set to a second subnetwork set, and determining the business objects in the second subnetwork set other than the first active object as first candidate objects; counting a second occurrence frequency of the first candidate object in the second sub-network set, and determining, in the first candidate objects, a propagation object corresponding to the first active object based on the second occurrence frequency of the first candidate object and an association relationship between the first active object and the first candidate object; The propagation object corresponding to the first active object is used to receive the recommended service sent by the first active object.
2. The method according to claim 1, characterized in that The obtaining of the object relationship network includes: Obtain n business objects in a business application, and obtain historical interaction information of the n business objects in the business application; n is an integer greater than 1; If the historical interaction information indicates that the business object a and the business object b in the business object set have an association relationship, establishing a connection edge between the business object a and the business object b; The object relationship network is constructed according to the n business objects and the connection edges between the n business objects.
3. The method according to claim 2, characterized in that The acquiring of historical interaction information of each business object in the business object set in the business application includes: Obtain object log files of the n business objects in the business application; The communication relationship and object interaction information between the n business objects are obtained in the object log file, and the communication relationship and the object interaction information are determined as historical interaction information of the n business objects in the business application.
4. The method according to claim 1, wherein The object relationship network includes n business objects, where n is an integer greater than 1; The sampling of the business objects in the object relationship network to obtain a first sub-network set includes: Get the number k of neighbors of the i-th business object in the object relationship network among the n business objects i , for the number of neighbors k i Perform logarithmic processing to obtain a neighbor logarithm result corresponding to the i-th business object; i is a positive integer less than or equal to n; Accumulate the neighbor logarithm results corresponding to the n business objects to obtain the total value of the neighbor logarithm; Obtaining a parameter logarithm result corresponding to a sampling parameter, determining a sampling reference value based on the parameter logarithm result and the total value of the neighbor logarithm, and determining a sampling number corresponding to the object relationship network based on the sampling reference value; the sampling number is greater than the sampling reference value; The business objects in the object relationship network are sampled according to the sampling times to obtain θ sub-networks, and the θ sub-networks are added to the first sub-network set; one sub-network is obtained by sampling once, and θ is an integer greater than 1.
5. The method according to claim 4, characterized in that The determining of a sampling reference value according to the parameter logarithm result and the total value of the neighbor logarithm includes: Performing a square root operation on half of the sum of the parameter logarithm result and the total value of the neighbor logarithms to obtain a first candidate sampling value; Determine half of the result obtained after performing a square root operation on the parameter logarithm as the second candidate sampling value; The sampling reference value is determined according to the square of the sum of the first candidate sampling value and the second candidate sampling value.
6. The method according to claim 4, characterized in that The sampling of the business objects in the object relationship network according to the sampling times to obtain θ sub-networks includes: Determine the starting active object of the ath sampling in the object relationship network, and add neighbor objects of the starting active object in the object relationship network to a first neighbor object set; a is a positive integer less than or equal to θ; Obtaining an activation threshold corresponding to a business object in the first neighbor object set, and obtaining an edge weight between the starting activation object and the business object in the first neighbor object set, and determining a business object in the first neighbor object set whose edge weight is greater than the activation threshold as a first activation object; Eliminating the initial activated object from the object relationship network to obtain an object sampling network, and adding neighbor objects of the first activated object in the object sampling network to a second neighbor object set; Obtaining an activation threshold corresponding to a business object in the second neighbor object set, and obtaining an edge weight between the first activated object and a business object in the second neighbor object set; If there is no business object with an edge weight greater than the activation threshold in the second neighbor object set, an ath subnetwork is generated according to the association relationship between the starting activation object and the first activation object.
7. The method according to claim 4, characterized in that The sampling of the business objects in the object relationship network according to the sampling times to obtain θ sub-networks includes: Determine the starting active object of the ath sampling in the object relationship network, and add neighbor objects of the starting active object in the object relationship network to a first neighbor object set; a is a positive integer less than or equal to θ; Obtaining an activation threshold corresponding to a business object in the first neighbor object set, and obtaining an edge weight between the starting activation object and the business object in the first neighbor object set, and determining a business object in the first neighbor object set whose edge weight is greater than the activation threshold as a first activation object; Adding neighbor objects of the first activated object in the object relationship network except the initial activated object to a third neighbor object set, and determining an activated neighbor object corresponding to an x-th business object in the third neighbor object set in the object relationship network; x is a positive integer; If the sum of the edge weights between the x-th business object and the activated neighbor objects is less than the activation threshold corresponding to the x-th business object, the x-th business object is determined to be an inactive object; If all the business objects in the third neighbor object set are inactive objects, then an ath subnetwork is generated according to the association relationship between the initial active object and the first active object.
8. The method according to claim 1, characterized in that There are multiple first candidate objects; The determining, based on the second occurrence frequency of the first candidate object and the association relationship between the first active object and the first candidate object, a propagation object corresponding to the first active object in the first candidate objects includes: Adding multiple first candidate objects to a first candidate object set, and removing first candidate objects that have no association relationship with the first active object from the first candidate object set to obtain a second candidate object set; Sort the first candidate objects in the second candidate object set in descending order according to the second occurrence frequency to obtain a candidate object list; The first y first candidate objects in the candidate object list are determined as the propagation objects corresponding to the first active object; y is a positive integer.
9. The method according to claim 1, characterized in that The method further comprises: Adding the first active object to the active object set, and updating the first subnetwork set according to the second subnetwork set to obtain a third subnetwork set; the third subnetwork set does not include the subnetworks in the second subnetwork set; Counting the third occurrence frequencies of each business object in the third sub-network set, and determining the business object corresponding to the largest third occurrence frequency as the second active object; adding the subnetwork containing the second active object in the third subnetwork set to a fourth subnetwork set, and determining the business objects other than the second active object in the fourth subnetwork set as second candidate objects; counting a fourth occurrence frequency of the second candidate object in the fourth sub-network set, and determining, in the second candidate objects, a propagation object corresponding to the second active object based on the fourth occurrence frequency of the second candidate object and an association relationship between the second active object and the second candidate object; The second active object is added to the active object set until the number of objects in the active object set reaches a number threshold, and the updating of the first sub-network set is stopped.
10. The method according to claim 1, characterized in that The method further comprises: The propagation object corresponding to the first active object is sent to the terminal device corresponding to the first active object, so that the terminal device displays the propagation object corresponding to the first active object in the business application; the terminal device is used to send the recommended business associated with the business application to the propagation object selected by the first active object.
11. A data processing device, characterized in that: include: An object sampling module is used to obtain an object relationship network, sample business objects in the object relationship network, and obtain a first sub-network set; The object relationship network includes multiple business objects and connection edges between business objects with association relationships; an active object determination module, configured to count a first occurrence frequency of each business object in the first sub-network set, and determine a business object corresponding to the largest first occurrence frequency as a first active object; a candidate object determining module, configured to add the subnetwork containing the first active object in the first subnetwork set to a second subnetwork set, and determine the business objects other than the first active object in the second subnetwork set as first candidate objects; a propagation object determination module, configured to count a second occurrence frequency of the first candidate object in the second sub-network set, and determine a propagation object corresponding to the first active object in the first candidate objects based on the second occurrence frequency of the first candidate object and an association relationship between the first active object and the first candidate object; The propagation object corresponding to the first active object is used to receive the recommended service sent by the first active object.
12. A computer device, characterized in that: including memory and processor; The memory is connected to the processor, the memory is used to store a computer program, and the processor is used to call the computer program so that the computer device executes the method according to any one of claims 1 to 10.
13. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, which is suitable for being loaded and executed by a processor, so that a computer device having the processor executes the method according to any one of claims 1 to 10.
14. A computer program product, characterized in that The method comprises a computer program / instruction, which implements the method according to any one of claims 1 to 10 when executed by a processor.