Recommended methods, apparatus, electronic devices and computer-readable media for templates

By building a complex user network and dividing group collections, the problems of low efficiency and poor matching in the existing technology are solved, and more efficient and accurate template recommendations are achieved, combining the characteristics of promotion objects, reducing personnel workload.

CN112287210BActive Publication Date: 2025-01-14BEIJING WODONG TIANJUN INFORMATION TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202010789826.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-08-07
Publication Date
2025-01-14
Estimated Expiration
2040-08-07

AI Technical Summary

Technical Problem

The prior art is inefficient in template recommendations and cannot effectively combine the characteristics of promotion objects, resulting in the problem of mismatch between the template and promotion objects.

Method used

By building a complex network of users, dividing community sets using modularity, and determining the target network nodes according to the node degree order, and then recommending matching templates.

Benefits of technology

It improves the efficiency and accuracy of template recommendations, can more intelligently combine the characteristics of promotion objects, reduce personnel workload, and standardize the content of template production.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112287210B_ABST
    Figure CN112287210B_ABST
Patent Text Reader

Abstract

The present disclosure relates to a template recommendation method, device, electronic device and computer-readable medium, and belongs to the field of computer technology. The method includes: obtaining objects obtained by each user through ownership acquisition behavior within a preset time period, and using the objects as network nodes to generate a complex network of objects; dividing the network nodes in the complex network into multiple network node sets according to the modularity of the complex network; sorting the network nodes in each network node set according to the node degree, and determining the target network node in each network node set according to the sorting result; obtaining the identification information of each network node in the network node set where the target network node is located according to the identification information of the target network node; determining the recommended template for the object corresponding to the network node according to the identification information of the network node. By combining the aggregation characteristics of the complex network, the present disclosure can provide different templates for objects in different sets, thereby improving the efficiency of template recommendation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to a template recommendation method, a template recommendation device, an electronic device, and a computer-readable medium. Background Art

[0002] In the Internet age, Internet advertising has become the most common form of advertising. In order to improve the efficiency of advertising delivery, many advertisers prefer to create creative advertising through templates.

[0003] Regarding the method of selecting templates, in the prior art, templates are generally recommended by manually marking different label attributes, or based on the number of clicks on the ads that have been placed. However, recommending templates using the above methods is inefficient on the one hand, and on the other hand, it is unable to combine the characteristics and positioning of the promotion object itself, which easily results in a mismatch between the template and the promotion object.

[0004] In view of this, there is an urgent need in the art for a method that can effectively combine the characteristics of an object to perform template recommendation.

[0005] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present disclosure, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention

[0006] The purpose of the present disclosure is to provide a template recommendation method, a template recommendation device, an electronic device and a computer-readable medium, so as to at least to a certain extent be able to recommend templates in combination with the characteristics of an object, thereby improving the efficiency and accuracy of template recommendation.

[0007] According to a first aspect of the present disclosure, a template recommendation method is provided, comprising:

[0008] Obtain objects obtained by each user through ownership acquisition behavior within a preset time period, and use the objects as network nodes to generate a complex network of the objects;

[0009] Dividing the network nodes in the complex network into a plurality of network node sets according to the modularity of the complex network;

[0010] Sorting the network nodes in each of the network node sets according to the node degrees, and determining the target network node in each of the network node sets according to the sorting results;

[0011] Obtaining identification information of each network node in the network node set where the target network node is located according to the identification information of the target network node;

[0012] A recommended template for the object corresponding to the network node is determined according to the identification information of the network node.

[0013] In an exemplary embodiment of the present disclosure, the step of using the object as a network node to generate a complex network of the object includes:

[0014] Putting objects obtained by the same user through ownership acquisition behavior within the preset time period into the same object set;

[0015] The objects are used as network nodes, and network nodes in the same object set are connected in pairs through node connection edges to obtain a complex network of the objects.

[0016] In an exemplary embodiment of the present disclosure, the step of connecting network nodes in the same object set in pairs through node connection edges to obtain a complex network of the objects includes:

[0017] The network nodes in the same object set are connected in pairs through node connection edges, and the weight value of each node connection edge is determined according to the number of times the user obtains the object within the preset time period;

[0018] A complex network of the object is obtained according to the node connection edges whose weight values ​​are greater than a weight threshold and the network nodes connected by the node connection edges.

[0019] In an exemplary embodiment of the present disclosure, dividing the network nodes in the complex network into a plurality of network node sets according to the modularity of the complex network includes:

[0020] Initializing each network node in the complex network into a plurality of separate network node sets;

[0021] Determine the adjacent network nodes of each of the network nodes, and pre-allocate the network nodes to the network node sets where the adjacent network nodes are located;

[0022] Determining a change value of the modularity of the complex network after pre-allocation, and determining a target network node set where adjacent network nodes that maximize the change value of the modularity of the complex network are located;

[0023] The network nodes are allocated to the target network node set, and the network nodes are allocated again according to the change value of the modularity until the network node set where all the network nodes are located does not change any more.

[0024] In an exemplary embodiment of the present disclosure, determining the change value of the modularity of the complex network after pre-allocation includes:

[0025] Determining a first modularity of the set of network nodes where the neighboring network node is located after the network node is pre-allocated to the set of network nodes where the neighboring network node is located;

[0026] Determine a second modularity of a network node set where the network node before pre-allocation is located and a network node set where the neighboring network node is located;

[0027] A change value of the modularity of the complex network after pre-allocation is obtained according to a difference between the first modularity and the second modularity.

[0028] In an exemplary embodiment of the present disclosure, the method for generating the modularity includes:

[0029] Obtaining the number of first node connection edges between each network node in the network node set;

[0030] Obtaining the number of second node connection edges connected to each network node in the network node set;

[0031] The total number of connection edges of the node connection edges in the complex network is obtained, and the modularity of the network node set is obtained according to the total number of connection edges and the first node connection edge number and the second node connection edge number of the network node set.

[0032] In an exemplary embodiment of the present disclosure, sorting the network nodes in each of the network node sets according to the node degree, and determining the target network node in each of the network node sets according to the sorting result, includes:

[0033] Sorting the network nodes in each of the network node sets in descending order of node degree;

[0034] A preset screened number of network nodes are acquired according to the sorting result as target network nodes in the network node set.

[0035] According to a second aspect of the present disclosure, a template recommendation device is provided, comprising:

[0036] A complex network generation module, used to obtain objects obtained by each user through ownership acquisition behavior within a preset time period, and use the objects as network nodes to generate a complex network of the objects;

[0037] A node set division module, used for dividing the network nodes in the complex network into a plurality of network node sets according to the modularity of the complex network;

[0038] a target node determination module, used to sort the network nodes in each of the network node sets according to the node degree, and determine the target network node in each of the network node sets according to the sorting result;

[0039] an identification information determining module, configured to obtain identification information of each network node in the network node set where the target network node is located according to the identification information of the target network node;

[0040] The recommended template determination module is used to determine the recommended template of the object corresponding to the network node according to the identification information of the network node.

[0041] According to a third aspect of the present disclosure, an electronic device is provided, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute any one of the template recommendation methods described above by executing the executable instructions.

[0042] According to a fourth aspect of the present disclosure, a computer-readable medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the method for recommending a template described in any one of the above is implemented.

[0043] The exemplary embodiments of the present disclosure may have the following beneficial effects:

[0044] In the template recommendation method of the example implementation method of the present disclosure, a complex network of objects is constructed through the ownership acquisition behavior of users, and the clustering characteristics of the complex network are used to divide the objects into multiple community sets, and different templates are provided according to the characteristics of the objects in different sets. The template recommendation method in the example implementation method of the present disclosure can, on the one hand, combine the characteristics and positioning of the promotion object to recommend templates more intelligently, thereby attracting users more accurately; on the other hand, by recommending templates that meet the characteristics of the object, it can standardize the content produced by the template, improve the efficiency of template production, and reduce the workload of personnel.

[0045] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0046] The accompanying drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present disclosure, and together with the specification are used to explain the principles of the present disclosure. Obviously, the accompanying drawings described below are only some embodiments of the present disclosure, and for ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without creative work.

[0047] Figure 1A flowchart showing a method for recommending a template according to an exemplary embodiment of the present disclosure is provided;

[0048] Figure 2 A schematic diagram schematically shows a complex network according to a specific embodiment of the present disclosure;

[0049] Figure 3 A schematic diagram showing a process of generating a complex network of objects according to an exemplary embodiment of the present disclosure;

[0050] Figure 4 A schematic diagram showing a flow chart of network node division according to an exemplary embodiment of the present disclosure;

[0051] Figure 5 A schematic diagram showing a flow chart of determining a change value of modularity according to an exemplary embodiment of the present disclosure;

[0052] Figure 6 A schematic diagram of a process of recommending a template according to a specific embodiment of the present disclosure is shown;

[0053] Figure 7 A block diagram showing a template recommendation device according to an exemplary embodiment of the present disclosure;

[0054] Figure 8 A schematic diagram of the structure of a computer system suitable for implementing the electronic device of the embodiment of the present disclosure is shown. DETAILED DESCRIPTION

[0055] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as being limited to the examples set forth herein; on the contrary, these embodiments are provided so that the present disclosure will be more comprehensive and complete, and the concepts of the example embodiments are fully conveyed to those skilled in the art. The described features, structures, or characteristics may be combined in one or more embodiments in any suitable manner. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present disclosure. However, those skilled in the art will appreciate that the technical solutions of the present disclosure may be practiced while omitting one or more of the specific details, or other methods, components, devices, steps, etc. may be adopted. In other cases, known technical solutions are not shown or described in detail to avoid obscuring various aspects of the present disclosure.

[0056] In addition, the accompanying drawings are only schematic illustrations of the present disclosure and are not necessarily drawn to scale. The same reference numerals in the figures represent the same or similar parts, and their repeated description will be omitted. Some of the block diagrams shown in the accompanying drawings are functional entities and do not necessarily correspond to physically or logically independent entities. These functional entities can be implemented in software form, or implemented in one or more hardware modules or integrated circuits, or implemented in different networks and / or processor devices and / or microcontroller devices.

[0057] This example implementation first provides a template recommendation method. Figure 1 As shown, the recommended method for the above template may include the following steps:

[0058] Step S110: Obtain objects obtained by each user through ownership acquisition behavior within a preset time period, and use the objects as network nodes to generate a complex network of objects.

[0059] Step S120: Divide the network nodes in the complex network into multiple network node sets according to the modularity of the complex network.

[0060] Step S130: sort the network nodes in each network node set according to the node degree, and determine the target network node in each network node set according to the sorting result.

[0061] Step S140: Obtain identification information of each network node in the network node set where the target network node is located according to the identification information of the target network node.

[0062] Step S150: Determine a recommended template for an object corresponding to the network node according to the identification information of the network node.

[0063] In the long course of history, the style of advertising has been constantly changing along with the form of business, for example, from the earliest physical advertising and outdoor advertising to the current Internet advertising. Although the form of advertising is constantly changing, the content displayed in the advertisement is still the most concerned part for advertisers. Therefore, how to attract users in a personalized and accurate way and make them form transactions has become the most important part of Internet advertising, so it is particularly important to create excellent advertising ideas. At present, making advertisements through templates has become the preferred method for many advertisers, but how to effectively select pictures and video templates that users like and make these templates conform to the positioning of the products has become the primary problem that advertisers have to solve.

[0064] Different users pursue different qualities of goods. For example, some users are keen on pursuing goods with high cost performance, some users prefer brands with high brand awareness, and some users prefer goods with favorable prices. For example, when buying watches, mobile phones and other goods, users with better economic conditions will choose to buy big brands, while some users who like technology will buy mobile phones and watches with new functions.

[0065] When an advertiser promotes a certain sku (stock keeping unit), the template recommendation method in this example implementation is used to analyze the user's purchase behavior data, group together the same type of goods, and intelligently analyze the attributes of the goods, and then recommend creative templates that match these attributes. For example, when an advertiser creates a creative for a certain brand-name bag, the template recommendation method in this example implementation can select and recommend some creative templates with a relatively high-end and luxurious style.

[0066] In the template recommendation method of the example implementation method of the present disclosure, a complex network of objects is constructed through the ownership acquisition behavior of users, and the clustering characteristics of the complex network are used to divide the objects into multiple community sets, and different templates are provided according to the characteristics of the objects in different sets. The template recommendation method in the example implementation method of the present disclosure can, on the one hand, combine the characteristics and positioning of the promotion object to recommend templates more intelligently, thereby attracting users more accurately; on the other hand, by recommending templates that meet the characteristics of the object, it can standardize the content produced by the template, improve the efficiency of template production, and reduce the workload of personnel.

[0067] Next, combine Figures 2 to 6 The above steps of this exemplary embodiment are described in more detail.

[0068] In step S110, objects obtained by each user through ownership acquisition behavior within a preset time period are obtained, and a complex network of objects is generated using the objects as network nodes.

[0069] In this example implementation, the user's ownership acquisition behavior refers to the user's purchase behavior, and the object obtained by the user through the ownership acquisition behavior is the item or commodity purchased by the user. By obtaining the items purchased by all users within a preset time period, such as a month, a large complex network is constructed using the user's purchase behavior data.

[0070] A complex network generally refers to a network with many nodes and complex connections. Due to its flexible and universal description capabilities, it is widely used in various disciplines. Figure 2The figure shows a schematic diagram of a complex network, in which different objects can be used as network nodes. When the same user buys product A and product B, an edge is generated between node A and node B, and the weight of the edge is increased by one.

[0071] Complex networks have characteristics such as small world and scale-free aggregation. Many complex networks have community structures, that is, the entire network is composed of several communities, the connections between communities are relatively sparse, and the connections within communities are relatively dense. Community discovery uses the information contained in the topological structure of complex network graphs to parse out its modular community structure from complex networks. Figure 2 Demonstrating the clustering of complex networks, Figure 2 It can be seen that the network nodes can be divided into three communities, including community 201, community 202 and community 203.

[0072] The method in this example implementation makes use of the community characteristics of complex networks, abstracts the user's purchase behavior data into a complex network, and uses the modularity optimization method to discover the community structure in the network. It is believed that objects in the same community belong to the same category, and templates of different styles are recommended for products in different communities.

[0073] Based on the above content, Figure 3 As shown, the method of generating a complex network of objects using objects as network nodes may specifically include the following steps:

[0074] Step S310: Put objects obtained by the same user through ownership acquisition behavior within a preset time period into the same object set.

[0075] Step S320: Take the objects as network nodes, and connect the network nodes in the same object set in pairs through node connection edges to obtain a complex network of objects.

[0076] In this example implementation, since the goods purchased by the same user are likely to be of the same type, the objects acquired by the same user within a preset time period can be put into the same object set, and then the network nodes corresponding to the objects in the set can be connected to each other respectively.

[0077] Furthermore, in the case of too much data, network nodes in the same object set can be connected in pairs through node connection edges, and the weight value of each node connection edge can be determined according to the number of times the user obtains the object within a preset time period; the complex network of the object is obtained according to the node connection edges with weight values ​​greater than the weight threshold and the network nodes connected by the node connection edges. In other words, if two items are purchased by the same user, the weight value of the node connection edge between the two items is increased by 1 for each additional simultaneous purchase, and then a weight threshold can be set, such as a weight value greater than or equal to 10, to retain the node connection edges with higher weight values ​​and their corresponding network nodes to generate the final complex network.

[0078] In step S120, network nodes in the complex network are divided into a plurality of network node sets according to the modularity of the complex network.

[0079] In this example implementation, the network nodes in the complex network may be divided into a plurality of network node sets according to the modularity of the complex network, wherein each network node set represents a network community.

[0080] In this example implementation, modularity can be used to optimize community discovery. Modularity is an important indicator for measuring the quality of network division in community detection. The closer its value is to 1, the stronger the strength of the community structure divided by the network, that is, the better the division quality. Therefore, the optimal network community division can be obtained by maximizing modularity. Using the method of optimizing modularity as a recommendation template can greatly improve the accuracy of the recommendation results.

[0081] The Louvain algorithm is used in this example implementation. The theoretical basis of this algorithm is to use the modularity that can best measure the community division results as the starting point. The value range of modularity is (0, 1) and the calculation formula is as follows:

[0082]

[0083] Where m is the total number of edges in the network; i and j represent the index parameters of the network nodes; A ij is the weight of the connecting edge. When there is an edge between node i and node j, the value is 1, otherwise it is 0; k i , k j Represent the degree of node i and node j respectively (the degree of a node represents the number of edges connected to the node); C i ,C j Indicates the community where node i and node j are located; when node i and node j are in the same community, is 1, otherwise it is 0. So another definition of modularity is as follows:

[0084]

[0085] Where ∑in represents the number of first node connection edges between each network node in community C, and ∑tot represents the number of second node connection edges connected to each network node in community C. When calculating the modularity of a network node set, the number of first node connection edges between each network node in the network node set is obtained, and the number of second node connection edges connected to each network node in the network node set is obtained, and the total number of connection edges of node connection edges in the complex network is obtained, and the modularity of the network node set is obtained according to the total number of connection edges and the number of first node connection edges and the number of second node connection edges of the network node set, with reference to the above formula.

[0086] In the process of optimizing the community structure, when finding which community all the nodes are in, the modularity value can be maximized to determine the final community structure. For the same community, it can be assumed that the objects corresponding to the network nodes in the community can attract the same type of users, so the objects in the same community can recommend creative templates with almost the same style.

[0087] like Figure 4 As shown, the method of dividing the network nodes in the complex network into multiple network node sets according to the modularity of the complex network may specifically include the following steps:

[0088] Step S410: Initialize each network node in the complex network into multiple independent network node sets.

[0089] First, each network node in the network is initialized as a separate community.

[0090] Step S420: Determine the adjacent network nodes of each network node, and pre-allocate the network nodes to the network node sets where the adjacent network nodes are located.

[0091] Other network nodes connected to the network node through node connection edges are regarded as adjacent network nodes of the network node, and the network node is pre-allocated to the community where each adjacent network node is located.

[0092] Step S430: Determine the change value of the modularity of the complex network after pre-allocation, and determine the target network node set where the adjacent network nodes that maximize the change value of the modularity of the complex network are located.

[0093] After pre-allocating the network nodes to the communities where the adjacent network nodes are located, the change values ​​of the modularity of the pre-allocated complex network are calculated respectively, and an adjacent network node with the largest change value of the modularity is selected and allocated to the community with the largest change value of the modularity.

[0094] like Figure 5 As shown, the specific method for determining the change value of the modularity of the complex network after pre-allocation is:

[0095] Step S510: Determine a first modularity of the network node set where the adjacent network node is located after the network node is pre-allocated to the network node set where the adjacent network node is located.

[0096] Step S520: Determine a second modularity of the network node set where the network node before pre-allocation is located and the network node set where the adjacent network node is located.

[0097] Step S530: Obtain a change value of the modularity of the complex network after pre-allocation according to the difference between the first modularity and the second modularity.

[0098] The calculation formula of the change value of modularity is divided into two parts. One part is the first modularity after the network node is added to the community where the adjacent network node is located. The other part is the second modularity before the network node is added to the community where the adjacent network node is located. The network node is an independent community and the community where the adjacent network node is located. The difference between the first modularity and the second modularity is used to obtain the change value of modularity. The specific calculation formula of the change value of modularity △Q is as follows:

[0099]

[0100] Among them, K i,in It is the sum of the node connection edges between the network nodes in the community where the adjacent network nodes are located and the network node to be assigned.

[0101] Step S440: Allocate the network nodes to the target network node set, and allocate the network nodes again according to the change value of the modularity until the network node set where all the network nodes are located does not change any more.

[0102] After allocating the network nodes, repeat the above steps in sequence and allocate each network node again until the community structure no longer changes, that is, △Q no longer changes, and the final community structure of the complex network can be obtained.

[0103] In step S130, the network nodes in each network node set are sorted according to the node degree, and the target network node in each network node set is determined according to the sorting result.

[0104] After dividing the community structure of the complex network, the network nodes in each network node set are sorted in descending order according to the node degree, and then a preset number of network nodes are obtained as the target network nodes in the network node set according to the sorting result. In other words, several network nodes with larger node degrees in each community are selected as target network nodes.

[0105] In step S140, identification information of each network node in the network node set where the target network node is located is obtained according to the identification information of the target network node.

[0106] Obtain the identification information of the target network nodes, including the style labels of the commodities corresponding to these nodes, as the identification information of all network nodes in the community. For example, if the commodities corresponding to the target network nodes are office-type stationery, obtain the style labels of office-type stationery such as concise and practical as the identification information of all stationery-type network nodes in the community.

[0107] In step S150, a recommended template for an object corresponding to the network node is determined according to the identification information of the network node.

[0108] Finally, when making template recommendations, you can recommend a series of picture templates, video templates, etc. of corresponding styles for template production based on the community to which the recommended object belongs.

[0109] In this example implementation, the recommended templates may include common Internet advertising templates such as picture templates and video templates, wherein different style tags may be reflected in the templates with different pattern designs or layouts. When making the templates, the templates are finally made by adding corresponding copywriting and slogans.

[0110] like Figure 6 The figure is a complete flow chart of a specific implementation of the present disclosure, which is an example of the above steps in this example implementation. The specific steps of the flow chart are as follows:

[0111] Step S610: Build a network.

[0112] First, data processing is performed. The SKUs purchased by users in the past month are used as nodes of the network. Two SKUs purchased by the same user form an edge. Each time a simultaneous purchase is added, the weight of the edge increases by 1. Due to the large amount of data, only edges with weights greater than 10 are retained to form the initial complex network.

[0113] Step S620: Initialize the community.

[0114] Initialize each node in the network as a separate community.

[0115] Step S630: Calculate the change in modularity.

[0116] For each node i, assign it to the community where each adjacent node j is located, so as to calculate the modularity change value (△Q) corresponding to each different partition. The calculation formula is as follows:

[0117]

[0118] Different △Q are obtained according to different allocation methods, and then node i is allocated to the community that maximizes △Q.

[0119] Step S640: Determine whether the modularity has changed.

[0120] Step S630 is repeated in sequence until the community structure no longer changes, that is, ΔQ remains unchanged.

[0121] Step S650: Determine the community structure.

[0122] After dividing the communities, sort the degrees of the nodes in the communities from large to small, and select several nodes with larger degrees in each community.

[0123] Step S660: Obtain brand information.

[0124] Combine the brand information corresponding to these nodes to mark the style label to which the community belongs.

[0125] Step S670: Template recommendation.

[0126] When an advertiser creates a creative promotion object, the community to which the object belongs is determined based on the object, and a series of creative pictures and video templates are recommended for the advertiser to create the template.

[0127] It should be noted that although the steps of the method in the present disclosure are described in a specific order in the drawings, this does not require or imply that the steps must be performed in this specific order, or that all the steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps, etc.

[0128] Furthermore, the present disclosure also provides a template recommendation device. Figure 7 As shown, the template recommendation device may include a complex network generation module 710, a node set division module 720, a target node determination module 730, an identification information determination module 740 and a recommended template determination module 750. Among them:

[0129] The complex network generation module 710 may be used to obtain objects obtained by each user through ownership acquisition behavior within a preset time period, and use the objects as network nodes to generate a complex network of the objects;

[0130] The node set partitioning module 720 may be used to partition the network nodes in the complex network into a plurality of network node sets according to the modularity of the complex network;

[0131] The target node determination module 730 may be used to sort the network nodes in each network node set according to the node degree, and determine the target network node in each network node set according to the sorting result;

[0132] The identification information determination module 740 may be configured to obtain identification information of each network node in the network node set where the target network node is located according to the identification information of the target network node;

[0133] The recommended template determination module 750 may be configured to determine a recommended template for an object corresponding to a network node according to identification information of the network node.

[0134] In some exemplary embodiments of the present disclosure, the complex network generation module 710 may include an object set acquisition unit and a network node connection unit.

[0135] The object set acquisition unit may be used to put objects acquired by the same user through ownership acquisition behavior within a preset time period into the same object set;

[0136] The complex network generation unit can be used to use objects as network nodes, and connect network nodes in the same object set in pairs through node connection edges to obtain a complex network of objects.

[0137] In some exemplary embodiments of the present disclosure, the complex network generation unit may include a weight value determination unit and a network node connection unit.

[0138] The weight value determination unit may be used to connect network nodes in the same object set in pairs through node connection edges, and determine the weight value of each node connection edge according to the number of times the user obtains the object within a preset time period;

[0139] The network node connection unit can be used to obtain a complex network of the object according to the node connection edges whose weight values ​​are greater than the weight threshold and the network nodes connected by the node connection edges.

[0140] In some exemplary embodiments of the present disclosure, the node set partitioning module 720 may include a network node initialization unit, a network node pre-allocation unit, a target node set determination unit, and a network node allocation unit.

[0141] The network node initialization unit can be used to initialize each network node in the complex network into multiple separate network node sets;

[0142] The network node pre-allocation unit may be used to determine the adjacent network nodes of each network node, and pre-allocate the network nodes to the network node sets where the adjacent network nodes are located;

[0143] The target node set determination unit may be used to determine a change value of the modularity of the complex network after pre-allocation, and determine a target network node set where adjacent network nodes that maximize the change value of the modularity of the complex network are located;

[0144] The network node allocation unit may be used to allocate the network nodes to the target network node set, and allocate the network nodes again according to the change value of the modularity until the network node set where all the network nodes are located does not change any more.

[0145] In some exemplary embodiments of the present disclosure, the target node set determination unit may include a first modularity determination unit, a second modularity determination unit, and a modularity change value determination unit.

[0146] The first modularity determination unit may be used to determine a first modularity of the set of network nodes where the adjacent network node is located after the network node is pre-allocated to the set of network nodes where the adjacent network node is located;

[0147] The second modularity determination unit may be used to determine a second modularity of a network node set where the network node before pre-allocation is located and a network node set where an adjacent network node is located;

[0148] The modularity change value determining unit may be configured to obtain a modularity change value of the complex network after pre-allocation according to a difference between the first modularity and the second modularity.

[0149] In some exemplary embodiments of the present disclosure, the node set partitioning module 720 may further include a modularity calculation unit, which may include a first connection edge number determination unit, a second connection edge number determination unit, and a node set modularity determination unit.

[0150] The first connection edge quantity determination unit may be used to obtain the quantity of first node connection edges between each network node in the network node set;

[0151] The second connection edge quantity determination unit may be used to obtain the quantity of second node connection edges connected to each network node in the network node set;

[0152] The node set modularity determination unit can be used to obtain the total number of connection edges of the node connection edges in the complex network, and obtain the modularity of the network node set based on the total number of connection edges and the first node connection edge number and the second node connection edge number of the network node set.

[0153] In some exemplary embodiments of the present disclosure, the target node determination module 730 may include a network node sorting unit and a network node screening unit.

[0154] The network node sorting unit may be used to sort the network nodes in each network node set in descending order of node degree;

[0155] The network node screening unit may be used to obtain a preset screened number of network nodes as target network nodes in the network node set according to the sorting result.

[0156] The specific details of each module / unit in the recommended device of the above template have been described in detail in the corresponding method embodiment part, and will not be repeated here.

[0157] Figure 8 A schematic diagram of the structure of a computer system suitable for implementing an electronic device of an embodiment of the present invention is shown.

[0158] It should be noted that Figure 8 The computer system 800 of the electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.

[0159] like Figure 8 As shown, the computer system 800 includes a central processing unit (CPU) 801, which can perform various appropriate actions and processes according to the program stored in the read-only memory (ROM) 802 or the program loaded from the storage part 808 to the random access memory (RAM) 803. In the RAM 803, various programs and data required for system operation are also stored. The CPU 801, the ROM 802, and the RAM 803 are connected to each other through a bus 804. An input / output (I / O) interface 805 is also connected to the bus 804.

[0160] The following components are connected to the I / O interface 805: an input section 806 including a keyboard, a mouse, etc.; an output section 807 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 808 including a hard disk, etc.; and a communication section 809 including a network interface card such as a LAN card, a modem, etc. The communication section 809 performs communication processing via a network such as the Internet. A drive 810 is also connected to the I / O interface 805 as needed. A removable medium 811, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 810 as needed, so that a computer program read therefrom is installed into the storage section 808 as needed.

[0161] In particular, according to an embodiment of the present invention, the process described below with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present invention includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication section 809, and / or installed from a removable medium 811. When the computer program is executed by a central processing unit (CPU) 801, various functions defined in the system of the present application are executed.

[0162] It should be noted that the computer-readable medium shown in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, device or device. In the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which a computer-readable program code is carried. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than computer-readable storage media, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer-readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, optical cable, RF, etc., or any suitable combination of the above.

[0163] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0164] As another aspect, the present application also provides a computer-readable medium, which may be included in the electronic device described in the above embodiment; or may exist independently without being assembled into the electronic device. The above computer-readable medium carries one or more programs, and when the above one or more programs are executed by an electronic device, the electronic device implements the method described in the following embodiment.

[0165] It should be noted that, although several modules of the device for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present disclosure, the features and functions of two or more modules described above can be concretized in one module. Conversely, the features and functions of one module described above can be further divided into multiple modules to be concretized.

[0166] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. This application is intended to cover any modifications, uses or adaptations of the present disclosure, which follow the general principles of the present disclosure and include common knowledge or customary technical means in the art that are not disclosed in the present disclosure.

[0167] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims

1. A template recommendation method, characterized in that: include: Obtain objects obtained by each user through ownership acquisition behavior within a preset time period, and put the objects obtained by the same user through ownership acquisition behavior within the preset time period into the same object set; The objects are used as network nodes, and network nodes in the same object set are connected in pairs through node connection edges to obtain a complex network of the objects; Dividing the network nodes in the complex network into a plurality of network node sets according to the modularity of the complex network; Sorting the network nodes in each of the network node sets according to the node degrees, and determining the target network node in each of the network node sets according to the sorting results; Obtaining identification information of each network node in the network node set where the target network node is located according to the identification information of the target network node; A recommended template for the object corresponding to the network node is determined according to the identification information of the network node.

2. The template recommendation method according to claim 1, characterized in that: The network nodes in the same object set are connected in pairs through node connection edges to obtain a complex network of the objects, including: The network nodes in the same object set are connected in pairs through node connection edges, and the weight value of each node connection edge is determined according to the number of times the user obtains the object within the preset time period; A complex network of the object is obtained according to the node connection edges whose weight values ​​are greater than a weight threshold and the network nodes connected by the node connection edges.

3. The template recommendation method according to claim 1, characterized in that: The dividing the network nodes in the complex network into a plurality of network node sets according to the modularity of the complex network includes: Initializing each network node in the complex network into a plurality of separate network node sets; Determine the adjacent network nodes of each of the network nodes, and pre-allocate the network nodes to the network node sets where the adjacent network nodes are located; Determining a change value of the modularity of the complex network after pre-allocation, and determining a target network node set where adjacent network nodes that maximize the change value of the modularity of the complex network are located; The network nodes are allocated to the target network node set, and the network nodes are allocated again according to the change value of the modularity until the network node set where all the network nodes are located does not change any more.

4. The template recommendation method according to claim 3, characterized in that: The determining of the change value of the modularity of the complex network after pre-allocation includes: Determining a first modularity of the set of network nodes where the neighboring network node is located after the network node is pre-allocated to the set of network nodes where the neighboring network node is located; Determine a second modularity of a network node set where the network node before pre-allocation is located and a network node set where the neighboring network node is located; A change value of the modularity of the complex network after pre-allocation is obtained according to a difference between the first modularity and the second modularity.

5. The template recommendation method according to claim 1, characterized in that: The method for generating the modularity includes: Obtaining the number of first node connection edges between each network node in the network node set; Obtaining the number of second node connection edges connected to each network node in the network node set; The total number of connection edges of the node connection edges in the complex network is obtained, and the modularity of the network node set is obtained according to the total number of connection edges and the first node connection edge number and the second node connection edge number of the network node set.

6. The template recommendation method according to claim 1, characterized in that: The step of sorting the network nodes in each of the network node sets according to the node degrees, and determining the target network node in each of the network node sets according to the sorting results, comprises: Sorting the network nodes in each of the network node sets in descending order of node degree; A preset screened number of network nodes are acquired according to the sorting result as target network nodes in the network node set.

7. A template recommendation device, characterized in that: include: A complex network generation module, used to obtain objects obtained by each user through ownership acquisition behavior within a preset time period, and put the objects obtained by the same user through ownership acquisition behavior within the preset time period into the same object set; The objects are used as network nodes, and network nodes in the same object set are connected in pairs through node connection edges to obtain a complex network of the objects; A node set division module, used for dividing the network nodes in the complex network into a plurality of network node sets according to the modularity of the complex network; a target node determination module, used to sort the network nodes in each of the network node sets according to the node degree, and determine the target network node in each of the network node sets according to the sorting result; an identification information determining module, configured to obtain identification information of each network node in the network node set where the target network node is located according to the identification information of the target network node; The recommended template determination module is used to determine the recommended template of the object corresponding to the network node according to the identification information of the network node.

8. An electronic device, characterized in that: include: processor; as well as A memory for storing one or more programs, which, when executed by the one or more processors, enables the one or more processors to implement the template recommendation method according to any one of claims 1 to 6.

9. A computer readable medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the template recommendation method according to any one of claims 1 to 6 is implemented.

Citation Information

Patent Citations

  • Community detection method and device for dynamic network

    CN106780058A

  • Project recommendation method based on complex network collaborative filtering

    CN110727863A