CN115809365A - Resource recommendation method and device, electronic equipment and storage medium - Google Patents

Resource recommendation method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN115809365A
CN115809365A CN202211346493.5A CN202211346493A CN115809365A CN 115809365 A CN115809365 A CN 115809365A CN 202211346493 A CN202211346493 A CN 202211346493A CN 115809365 A CN115809365 A CN 115809365A
Authority
CN
China
Prior art keywords
network
object network
target object
node
initial
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211346493.5A
Other languages
Chinese (zh)
Inventor
熊寿久
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Eswin Computing Technology Co Ltd
Haining Eswin IC Design Co Ltd
Original Assignee
Beijing Eswin Computing Technology Co Ltd
Haining Eswin IC Design Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Eswin Computing Technology Co Ltd, Haining Eswin IC Design Co Ltd filed Critical Beijing Eswin Computing Technology Co Ltd
Priority to CN202211346493.5A priority Critical patent/CN115809365A/en
Publication of CN115809365A publication Critical patent/CN115809365A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The application relates to the technical field of artificial intelligence, in particular to a resource recommendation method, a resource recommendation device, electronic equipment and a storage medium, which are used for improving the community division effect and the resource recommendation accuracy. The method comprises the following steps: acquiring a network scale corresponding to an initial object network constructed based on a plurality of objects, wherein each node in the network corresponds to one object; selecting a community division path matched with the network scale, and performing network folding on the initial object network to obtain at least one target object network; the community division path representation carries out node combination on the initial object network based on at least one folding strategy; respectively extracting the characteristics of at least one target object network based on a depth self-encoder; and carrying out community division on the corresponding target object network based on the target data characteristics of at least one target object network, and recommending resources according to the community division result. Based on the method, the community division effect and the resource recommendation accuracy can be improved.

Description

Resource recommendation method and device, electronic equipment and storage medium
Technical Field
The present application relates to the field of artificial intelligence technologies, and in particular, to a resource recommendation method and apparatus, an electronic device, and a storage medium.
Background
With the rapid development of scientific technology, the number of network users under different scenes is increasing, for example, there are intelligent household appliance network users, mobile phone network users, notebook network users, etc., and in the process of browsing resources by using the network, the user network can be analyzed by using an intelligent recommendation system to recommend resources to the user.
With the rapid development of the recommendation learning theory, the intelligent recommendation system is widely applied to various fields and achieves great effect, taking a smart Television (TV) recommendation system as an example: when a user watches TV programs, advertisements and the like, commodity recommendation can be carried out on the user based on the intelligent TV recommendation system and by combining potential information mined in a user network, so that the commercial benefit is maximized.
However, in reality, the network structure of TV users is becoming more complex, and the original small simple TV user network is gradually changed into a large complex TV user network structure, so that a large amount of computing time is consumed in the community division process, and further, the community division effect is not good, and the recommendation is not accurate.
Therefore, how to improve the community division effect and the resource recommendation accuracy is a critical solution.
Disclosure of Invention
The resource recommendation method, the resource recommendation device, the electronic equipment and the storage medium are used for improving the community division effect and the resource recommendation accuracy. The resource recommendation method provided by the embodiment of the application comprises the following steps:
acquiring a network scale corresponding to an initial object network constructed based on a plurality of objects, wherein each node in the initial object network corresponds to one object;
selecting a community division path matched with the network scale, and performing network folding on the initial object network to obtain at least one target object network; the community division path representation carries out node combination on the initial object network based on at least one folding strategy;
respectively extracting the characteristics of at least one target object network based on a depth self-encoder;
and carrying out community division on the corresponding target object network based on the target data characteristics of at least one target object network, and carrying out resource recommendation according to the community division result.
Optionally, the selecting a community division path matched with the network scale includes:
if the network scale belongs to a first preset scale, selecting a first community dividing path, and performing node merging on the initial object network based on a folding strategy for the first community dividing path representation;
if the network scale belongs to a second preset scale, selecting a second community division path, wherein the second community division path represents that node merging is carried out on the initial object network based on a plurality of different folding strategies;
wherein the first predetermined scale is greater than the second predetermined scale.
Optionally, if the network scale belongs to a first preset scale, the network folding the initial object network to obtain at least one target object network includes:
based on the folding strategy, carrying out node merging processing on the initial object network at least once to obtain at least one target object network corresponding to the initial object network;
wherein the number of nodes in the target object network is less than the initial object network.
Optionally, if the network scale belongs to a second preset scale, performing network folding on the initial object network to obtain at least one target object network includes:
respectively carrying out at least one node merging treatment on the initial object network based on the plurality of different folding strategies to obtain at least one group of object networks corresponding to the initial object network; the network sizes of a plurality of object networks included in each object network group are the same;
and taking each object network as a target object network.
Optionally, if the network scale belongs to a second preset scale, performing network folding on the initial object network to obtain at least one target object network includes:
respectively carrying out at least one node combination treatment on the initial object network based on the plurality of different folding strategies to obtain at least one group of object networks corresponding to the initial object network; the network sizes of a plurality of object networks included in each object network group are the same;
and carrying out random combination on a plurality of object networks belonging to the same group at least once to obtain at least one target object network.
Optionally, the randomly combining the multiple object networks belonging to the same group at least once to obtain at least one target object network includes:
the following procedure is performed for each random combination:
selecting at least two object networks from the object networks belonging to the same group as object networks to be combined;
and combining the characteristics of the nodes with the characteristic similarity reaching a preset threshold value in the object network to be combined to obtain a target object network.
Optionally, the feature extraction is performed on at least one target object network based on the depth self-encoder, and includes:
for each target object network, the following operations are respectively executed:
acquiring a low-dimensional data feature output by a middle layer of a depth self-encoder when a target object network is used as the input of the depth self-encoder and a reconstructed target object network is used as the output of the depth self-encoder, and using the low-dimensional data feature as a target data feature of the target object network;
wherein the node characteristic difference of the one reconstructed target object network and the one target object network is within a certain range.
Optionally, before performing community division on the corresponding target object network based on the target data feature of at least one target object network, the method further includes:
for each target object network, the following operations are respectively executed:
performing at least one network restoration on a current object network to be restored corresponding to a target object network; in the first network restoration process, the current object network to be restored is the target object network; and in each network reduction process, the current target network to be reduced is the target network obtained in the last reduction.
Optionally, before the selecting a community dividing path matched with the network scale, and performing network folding on the initial object network to obtain at least one target object network, the method further includes:
and performing matrix transformation on the adjacent matrix corresponding to the initial object network based on a preset transformation strategy, and adjusting the network scale based on the transformed adjacent matrix.
An embodiment of the present application provides a resource recommendation device, including:
a network scale obtaining unit, configured to obtain a network scale corresponding to an initial object network constructed based on a plurality of objects, where each node in the initial object network corresponds to one object;
the network folding unit is used for selecting a community division path matched with the network scale, and performing network folding on the initial object network to obtain at least one target object network; the community division path representation carries out node combination on the initial object network based on at least one folding strategy;
the feature extraction unit is used for respectively extracting features of at least one target object network based on the depth self-encoder;
and the resource recommending unit is used for carrying out community division on the corresponding target object network based on the target data characteristics of at least one target object network and carrying out resource recommendation according to the community division result.
Optionally, the network folding unit is specifically configured to:
if the network scale belongs to a first preset scale, selecting a first community division path, wherein the first community division path represents that node merging is carried out on the initial object network based on a folding strategy;
if the network scale belongs to a second preset scale, selecting a second community division path, wherein the second community division path represents that node merging is carried out on the initial object network based on a plurality of different folding strategies;
wherein the first predetermined scale is greater than the second predetermined scale.
Optionally, if the network size belongs to a first preset size, the network folding unit is specifically configured to:
based on the folding strategy, carrying out node merging processing on the initial object network at least once to obtain at least one target object network corresponding to the initial object network;
wherein the number of nodes in the target object network is less than the initial object network.
Optionally, if the network scale belongs to a second preset scale, the network folding unit is specifically configured to:
respectively carrying out at least one node merging treatment on the initial object network based on the plurality of different folding strategies to obtain at least one group of object networks corresponding to the initial object network; the network sizes of a plurality of object networks contained in each object network group are the same;
and taking each object network as a target object network.
Optionally, if the network scale belongs to a second preset scale, the network folding unit is specifically configured to:
respectively carrying out at least one node merging treatment on the initial object network based on the plurality of different folding strategies to obtain at least one group of object networks corresponding to the initial object network; the network sizes of a plurality of object networks included in each object network group are the same;
and carrying out random combination on a plurality of object networks belonging to the same group at least once to obtain at least one target object network.
Optionally, the network folding unit is specifically configured to:
the following procedure is performed for each random combination:
selecting at least two object networks from the object networks belonging to the same group as object networks to be combined;
and combining the characteristics of the nodes of which the corresponding characteristic similarity reaches a preset threshold value in the object network to be combined to obtain a target object network.
Optionally, the feature extraction unit is specifically configured to:
for each target object network, the following operations are performed respectively:
acquiring a low-dimensional data feature output by a middle layer of a depth self-encoder when a target object network is used as the input of the depth self-encoder and a reconstructed target object network is used as the output of the depth self-encoder, and using the low-dimensional data feature as a target data feature of the target object network;
wherein the difference of the node characteristics of the one reconstructed target object network and the one target object network is within a certain range.
Optionally, the apparatus further comprises:
the network restoration unit is configured to, before the resource recommendation unit performs community division on the corresponding target object network based on the target data feature of at least one target object network, respectively perform the following operations for each target object network:
performing at least one network restoration on a current object network to be restored corresponding to a target object network; in the first network restoration process, the current object network to be restored is the target object network; and in each network reduction process, the current target network to be reduced is the target network obtained in the last reduction.
Optionally, the apparatus further comprises:
and the network adjusting unit is used for selecting a community division path matched with the network scale in the network folding unit, carrying out network folding on the initial object network to obtain at least one target object network, carrying out matrix transformation on an adjacent matrix corresponding to the initial object network based on a preset transformation strategy, and adjusting the network scale based on the transformed adjacent matrix.
An electronic device provided in an embodiment of the present application includes a processor and a memory, where the memory stores a computer program, and when the computer program is executed by the processor, the processor is caused to execute any one of the steps of the resource recommendation method.
A computer-readable storage medium includes a computer program, and when the computer program runs on an electronic device, the computer program is configured to enable the electronic device to perform any of the steps of the resource recommendation method.
A computer program product provided by an embodiment of the present application includes a computer program, where the computer program is stored in a computer-readable storage medium; when the processor of the electronic device reads the computer program from the computer-readable storage medium, the processor executes the computer program, so that the electronic device performs the steps of any one of the resource recommendation methods described above.
The beneficial effects of this application are as follows:
the embodiment of the application provides a resource recommendation method and device, electronic equipment and a storage medium. In the embodiment of the application, based on the network scale of the object network, various community division paths can be selected, and not only a small-scale network but also a large-scale network can be processed; according to the community division path, different folding strategies are adopted, so that the community division error caused by different network scales is reduced, and the expansibility and the fault tolerance are increased; in addition, the method and the device are further based on the depth self-encoder, so that the low-dimensional characteristics of the network node data can be well extracted, the community division effect is improved, and further the resource recommendation accuracy is improved.
Additional features and advantages of the present application will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the present application. The objectives and other advantages of the application may be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the application and together with the description serve to explain the application and not to limit the application.
Fig. 1 is a schematic view of an application scenario in an embodiment of the present application;
fig. 2 is a flowchart of an implementation of a resource recommendation method in an embodiment of the present application;
FIG. 3 is a schematic diagram of an initial object network in an embodiment of the present application;
FIG. 4 is a schematic diagram of a community partition path in an embodiment of the present application;
FIG. 5 is a schematic diagram of an adjusted initial object network in an embodiment of the present application;
FIG. 6 is a schematic diagram of a very large network scale community partitioning path in an embodiment of the present application;
FIG. 7 is a schematic diagram of a large-scale network community partitioning path in an embodiment of the present application;
fig. 8 is a schematic diagram of a small and medium network scale community division path in an embodiment of the present application;
FIG. 9a is a diagram illustrating a first target object network in an embodiment of the present application;
FIG. 9b is a diagram illustrating a second example of a target network in an embodiment of the present application;
FIG. 10 is a schematic diagram of a combined target object network in an embodiment of the present application;
fig. 11 is a schematic diagram of a target object network after feature extraction in an embodiment of the present application;
fig. 12a is a schematic flowchart of an implementation of a resource recommendation method in an embodiment of the present application;
fig. 12b is a schematic flowchart illustrating an implementation of a resource recommendation method in an embodiment of the present application;
fig. 12c is a schematic flowchart illustrating a specific implementation process of a resource recommendation method in an embodiment of the present application;
fig. 12d is a schematic flowchart illustrating an implementation of a resource recommendation method in an embodiment of the present application;
fig. 13 is a schematic structural diagram of a resource recommendation device in an embodiment of the present application;
fig. 14 is a schematic structural diagram of an electronic device in an embodiment of the present application;
fig. 15 is a schematic diagram of a hardware component of a computing device to which an embodiment of the present invention is applied.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are some embodiments, but not all embodiments, of the technical solutions of the present application. All other embodiments obtained by a person skilled in the art without any inventive step based on the embodiments described in the present application are within the scope of the protection of the present application.
Some concepts related to the embodiments of the present application are described below.
Resource: representing information content such as advertisements, goods, videos, songs, etc. that may be distributed, delivered, stored to the outside world in a network.
Object networks and communities: an object network is a network composed of a plurality of nodes (objects), and the connection relationship between the nodes in the network is determined based on whether there is a certain relationship between the attributes of the corresponding objects. The object network is composed of communities with different sizes, and a subgraph formed by nodes with similar attributes is called a community when one object network is given. The embodiment of the application relates to an initial object network, a target object network and a reconstructed object network; and reconstructing the object network as the output of the depth self-encoder based on the depth self-encoder.
Depth auto-encoder and low dimensional features: the depth self-encoder is characterized by a deep learning model which takes high-dimensional data as input and takes reconstructed high-dimensional data as output, the difference between the reconstructed high-dimensional data and the initial high-dimensional data is in a certain range, and low-dimensional data can be obtained in the intermediate processing process of the depth self-encoder. In the embodiment of the present application, when the high-dimensional feature of the target object network node is used as the input of the depth self-encoder, and the high-dimensional feature of the reconstructed target object network node is used as the output of the depth self-encoder, the middle layer of the depth self-encoder outputs the low-dimensional feature of the target object network node.
Community division: given an object network, the network is divided into several sub-communities according to the data characteristics of the network nodes. For example, a network is divided into several sub-communities based on having the same interests, and the members within each sub-community have similar interests, and the members in the communities have as little common interests as possible.
Adjacency matrix: a matrix representing the adjacency relationship between vertices. For example, for an object network containing N objects, it is represented by an N × N adjacency matrix, where if there is a certain relation between two objects, the corresponding position in the adjacency matrix is set to 1, and otherwise, it is set to 0.
And (3) transformation strategy: and the preset matrix transformation strategy is used for transforming the adjacent matrix of the object network and is used for matrix transformation of the adjacent matrix. For example, when a large amount of data 0 exists in the adjacent matrix and calculation is difficult, matrix transformation may be performed using a modularity function, an euclidean distance function, or the like to convert the data 0 into data other than 0 (e.g., decimal between 0 and 1) by matrix transformation, thereby solving the calculation difficulty due to sparsity caused by a large amount of 0.
Folding strategy: and the preset strategy is used for folding the object network and combining the corresponding nodes with similar object attribute characteristics in the object network. For example, merging nodes of common neighbors may be employed.
The preferred embodiments of the present application will be described below with reference to the accompanying drawings of the specification, it should be understood that the preferred embodiments described herein are merely for illustrating and explaining the present application, and are not intended to limit the present application, and that the embodiments and features of the embodiments in the present application may be combined with each other without conflict.
The resource recommendation method provided by the exemplary embodiment of the present application is described below with reference to the accompanying drawings in conjunction with the application scenarios described above, it should be noted that the application scenarios described above are only shown for the convenience of understanding the spirit and principles of the present application, and the embodiments of the present application are not limited in this respect.
Fig. 1 is a schematic view of an application scenario according to an embodiment of the present application. The application scenario diagram includes two terminal devices 110 and a server 120.
In the embodiment of the present application, the terminal device 110 includes, but is not limited to, a mobile phone, a tablet computer, a notebook computer, a desktop computer, an e-book reader, an intelligent voice interaction device, an intelligent household appliance, a vehicle-mounted terminal, and other devices; the terminal device may be installed with a client related to resource recommendation, where the client may be software (e.g., a browser, video software, shopping software, music software, etc.), or a web page, an applet, etc., and the server 120 is a background server corresponding to the software, the web page, the applet, etc., or a server specially used for resource recommendation, which is not limited in this application. The server 120 may be an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, or a cloud server providing basic cloud computing services such as cloud service, a cloud database, cloud computing, a cloud function, cloud storage, network service, cloud communication, middleware service, domain name service, security service, content Delivery Network (CDN), big data, and an artificial intelligence platform.
It should be noted that the resource recommendation method in the embodiments of the present application may be executed by an electronic device, and the electronic device may be the terminal device 110 or the server 120, that is, the method may be executed by the terminal device 110 or the server 120 alone, or may be executed by both the terminal device 110 and the server 120.
In an alternative embodiment, terminal device 110 and server 120 may communicate via a communication network.
In an alternative embodiment, the communication network is a wired network or a wireless network.
It should be noted that fig. 1 is only an example, and the number of the terminal devices and the servers is not limited in practice, and is not specifically limited in the embodiment of the present application.
Referring to fig. 2, which is a flowchart illustrating an implementation of a resource recommendation method according to an embodiment of the present application, taking a terminal device as an execution subject, a specific implementation process of the method includes the following steps S21 to S24:
s21: the terminal equipment acquires a network scale corresponding to an initial object network constructed based on a plurality of objects.
Wherein each node in the initial object network corresponds to an object.
In the embodiment of the application, under different application scenarios, the objects (such as users) are different. For example, in a TV network scenario, the object may be a user turning on a TV; in a short video network scenario, the object may be a user that registers the short video software; in a commodity shopping network scenario, the object may be a user who registers the commodity shopping software. Correspondingly, the resource can be advertisements and programs which can be recommended when the user watches the television; when a user browses short video software, recommendable short videos and advertisements; but also recommended goods and the like when television shopping is carried out.
It should be noted that the TV network scene, the short video network scene, the commodity shopping network scene, and the like listed above are only simply descriptions, and the present disclosure is not particularly limited. The following is mainly described in detail by taking program recommendation in a TV network scenario as an example:
specifically, the network scale corresponding to the initial object network represents the number of nodes in the initial object network; an optional division manner is that the network scale can be divided into a small network scale, a medium network scale, a large network scale, a super large network scale and the like according to the number of nodes. The small network scale belongs to a first quantity interval, the medium network scale belongs to a second quantity interval, the large network scale belongs to a third quantity interval, and the super-large network scale belongs to a fourth quantity interval.
The first quantity interval to the fourth quantity interval are sequentially increased, and the first quantity interval represents 10 ten thousand to 100 ten thousand; the second quantity interval represents within 100 to 1000 ten thousand; the third quantity interval represents within 1000 ten thousand to 1 hundred million; the fourth quantity interval represents more than 1 hundred million.
It should be noted that the division of the number intervals is only a simple example, and any number interval division manner is applicable to the embodiment of the present application, and is not described in detail herein.
Fig. 3 is a schematic diagram of an initial object network according to an embodiment of the present application. The number of the nodes in the schematic diagram is 12, namely node 1-node 12, wherein an edge exists between node 1 and node 2, the characteristic that a connection relation exists between node 1 and node 2, the characteristic that no edge exists between node 2 and node 3, and the characteristic that a connection relation does not exist between node 2 and node 3, \ 8230;, and so on. According to the number interval division mode, the initial object network belongs to a small network scale.
It should be noted that the initial object network node number 12 listed above is only a simple example, and is not limited in detail herein.
In the above manner, the size of the network scale can be obtained according to the number of nodes in the object network.
S22: and selecting a community division path matched with the network scale, and performing network folding on the initial object network to obtain at least one target object network.
And the community division path representation carries out node combination on the initial object network based on at least one folding strategy.
In the embodiment of the present application, the folding policy includes, but is not limited to, a modularity gain policy, a custom merge policy, and the like. The customized merging strategy is a folding strategy set by a user according to actual requirements, and the common neighbor folding strategy is taken as an example in the text:
if node i and node j both have the same neighbor p, node i and node j may be merged into one node.
An optional implementation manner is that a community division path matched with the network scale is selected in the following manner:
and if the network scale belongs to a first preset scale, selecting a first community division path, and performing node combination on the initial object network based on a folding strategy by the first community division path representation.
And if the network scale belongs to a second preset scale, selecting a second community division path, and representing the second community division path to perform node combination on the initial object network based on multiple different folding strategies.
In the embodiment of the present application, the first preset scale may represent a very large network scale, that is, under the condition that the network scale is large, the number of nodes in the object network is large, and it is not suitable for performing node merging on the initial object network simultaneously by using a plurality of different folding strategies; namely, the first community dividing path represents a super-large network scale community dividing path; further, the second preset scale may represent any one of a large network scale, a medium network scale and a small network scale, that is, under the condition that the network scale is relatively small, a plurality of different folding strategies may be adopted, and node merging may be performed on the initial object network; that is, the second community dividing path may be applicable to a plurality of cases where the network scale is relatively small, and may be further divided into a plurality of different sub-paths based on the sizes of different network scales, for example, the second community dividing path includes two sub-paths, which are respectively a large network scale community dividing sub-path and a medium and small network scale community dividing sub-path.
It should be noted that the relationship between the two preset sizes listed above and the four network sizes listed above, and the division of the second community division path are only examples, and are not specifically limited herein.
Taking fig. 3 as an example, if there are 12 nodes of the initial object network and the nodes belong to a small network scale in the second preset scale, the small and medium network scale community partition sub-path in the second community partition path is selected.
S23: and respectively extracting the characteristics of at least one target object network based on the depth self-encoder.
In the embodiment of the application, on the basis of a series of small-scale object networks (namely target object networks) obtained based on different folding strategies, a deep self-encoder can be used for extracting low-dimensional data features of the networks.
One practical way is to perform feature extraction on at least one target object network respectively based on a depth self-encoder, and perform the following operations for each target object network respectively:
and when a target object network is used as the input of the depth self-encoder and a reconstructed target object network is used as the output of the depth self-encoder, the low-dimensional data characteristics output by the middle layer of the depth self-encoder are obtained, and the low-dimensional data characteristics are used as the target data characteristics of the target object network. Wherein, the node characteristic difference of one reconstructed target object network and one target object network is in a certain range.
In the embodiment of the application, the low-dimensional data features are used for characterizing some related information of the nodes, such as whether a certain node is connected with other nodes or not, whether a certain node has common interests and hobbies with other nodes or not, and the like.
S24: and carrying out community division on the corresponding target object network based on the target data characteristics of at least one target object network, and recommending resources according to the community division result.
In the embodiment of the present application, based on the target data characteristics of the target object network, the social division of the target object network may specifically adopt the following rules: taking a TV object network as an example, according to whether the TV object network has the same interest and hobby data characteristics, community division is carried out, and 3 communities are divided, wherein community 1 represents a user who likes to watch an integrated program in users watching TV, community 2 represents a user who likes to watch a sports program in users watching TV, and community 3 represents a user who likes to watch a series program in users watching TV.
It should be noted that the above listed object network community partitions are only simple examples, and are not limited in this document.
In the embodiment of the application, resource recommendation is characterized according to the community division result by having various community division results, evaluating the various community division results based on a preset community division evaluation standard, and selecting the optimal community division result for resource recommendation.
The following description will be made by taking the drawings as examples of the community division path:
fig. 4 is a schematic diagram illustrating a community partition path in the embodiment of the present application. The initial community division path is suitable for the condition that the number of objects in the object network is small and the corresponding network scale is small, such as the order of magnitude of less than 10 ten thousand, and the initial object network can be directly subjected to community division under the condition. And in the initial community division path, directly carrying out community division on the initial object network, and carrying out intelligent recommendation according to the division result.
If the number of objects in the object network is relatively large and the corresponding network scale is large, the network scale needs to be further reduced, and community division is performed on the reduced network. For example, the magnitude order of 10 ten thousand or more is obtained, in this case, an initial object network is preprocessed, wherein the step of preprocessing is optional, then the object network is folded, two paths are provided after the network is folded, one path is a series of target object networks obtained after the network is folded, the target object networks are subjected to feature extraction based on a deep self-encoder, then the object network is subjected to network restoration, finally community division is performed, and intelligent recommendation is performed according to a division result. And the other path is that after the network is folded, a plurality of groups of target object networks are obtained, the plurality of object networks in the same group are subjected to network combination, the combined object networks are subjected to feature extraction based on a depth self-encoder, then the object networks are subjected to network restoration, finally community division is carried out, and intelligent recommendation is carried out according to the division result.
At least one folding policy, such as a folding algorithm a, a folding algorithm B, a folding algorithm N, and the like listed in fig. 4, may be adopted when performing network folding, and each folding algorithm is a folding policy.
Before selecting a community division path matched with the network scale and performing network folding on an initial object network to obtain at least one target object network, an optional implementation manner is as follows: preprocessing an initial object network, specifically, performing matrix transformation on an adjacent matrix corresponding to the initial object network based on a preset transformation strategy, and adjusting the network scale based on the transformed adjacent matrix.
In the embodiment of the present application, the preset transformation policy includes, but is not limited to, a modularity function transformation, an euclidean distance function transformation, and the like. The adjacency matrix corresponding to the initial object network may be denoted as a, and the transformed adjacency matrix may be denoted as a'. Taking a modularity function as an example, the function is a method for measuring the structural strength of the network community, and may have various calculation formulas, and a certain modularity formula is taken as an example below:
Figure BDA0003917389940000101
wherein Q is a modularity function; for an undirected network, m represents the sum of the weights of all edges in the network, and if the undirected network is the directed network, the sum is half of the sum of the weights of all edges in the network; a. The ij Representing the weight of the edge between the node i and the node j; k i Representing the weight sum of all edges pointing to the node i; delta (C) i ,C j ) Indicates that if node i and node j are within the same community, then δ (C) i ,C j ) Equal to 1; otherwise it equals 0.
In the examples of the present applicationIf the node i and the node j have a certain relation, the corresponding weight is 1, otherwise, the weight is 0. For example, taking node 1 and node 2 as an example, the two nodes have a connection relationship, and the corresponding weight value a 12 Is 1; taking node 2 and node 3 as an example, the two nodes do not have a connection relationship, and the corresponding weight A 23 Is 0; and so on.
It should be noted that the above listed modularity function transformation strategy is only an example, and is not specifically limited herein. In addition, the object network in the embodiment of the present application may be an undirected network or a directed network, and may be flexibly set according to an actual application scenario, which is not specifically limited herein.
For each node in the initial object network, the following operations are respectively performed: determining each target element corresponding to a node from the converted adjacency matrix; combining other nodes corresponding to the maximum value in each target element with one node to reduce the network scale of the initial object network; further, the network obtained by node combination of the initial object network is used as a new initial object network, that is, the initial object network after the preprocessing.
Wherein each target element characterizes the closeness of association between a node and one other node to which it is connected.
In the embodiment of the application, the association closeness represents the connection strength between the nodes in the object network, and the greater the association closeness, the greater the connection strength between the represented nodes.
Based on Q in the above formula, a can be converted into a ', where the data in a' are all fractional numbers between 0 and 1, and the data in a are all 0 or 1, by which the sparsity problem caused by the adjacency matrix a is avoided. Still taking fig. 3 as an example, the weight between node 1 and node 2 is 1, the weight between node 1 and node 3 is 1, the weight between node 1 and node 5 is 1, and it is assumed that through calculation by the modularity function formula, the associated affinity a 'between node 1 and node 2 can be obtained' 12 =0.8, closeness of association A 'between node 1 and node 3' 13 =0.7, association tightness A 'between node 1 and node 5' 15 =0.6Based on this, the closeness of association between the node 1 and the node 2 is obtained to be greater than the closeness of association between the node 1 and the node 3, and greater than the closeness of association between the node 1 and the node 5, the strength of association between the node 1 and the node 2 is greater.
In the embodiment of the present application, the node merging represents that between a certain node and nodes connected with the node, a node with the highest strength of connection with the node is selected for merging, and based on this, the node 1 and the node 2 are merged to form a new node, which may be called a supernode. In the above manner, the nodes can be fused into a super node by Q, thereby reducing the network scale.
Fig. 5 is a schematic diagram illustrating an adjusted initial object network according to an embodiment of the present application. The graph is an object network obtained by transforming an initial object network based on a modularity function, wherein a node 1' is obtained by combining a node 1 and a node 2, a node 6' is obtained by combining a node 6 and a node 12, and a node 10' is obtained by combining a node 8 and a node 10.
In the above manner, based on a preset transformation strategy, the adjacent matrix corresponding to the initial object network is subjected to matrix transformation, and based on the transformed adjacent matrix, an adjusted object network is obtained, so that the difficulty in calculation caused by sparsity due to a large number of 0 s is solved, and meanwhile, the correlation between objects can be reflected.
In the embodiment of the present application, for different network scales, different community division paths may be adopted to implement more accurate community division, and various situations are exemplified below:
if the network size belongs to the first predetermined size, as shown in fig. 6, it is a very large community partitioning path in the embodiment of the present application, and the specific steps of the path are as follows:
(1) and carrying out network preprocessing on the initial object network, wherein the network preprocessing is optional.
(2) An optional implementation is adopted to perform network folding on the object network to obtain at least one target object network: and based on a folding strategy, carrying out node merging processing on the initial object network at least once to obtain at least one target object network corresponding to the initial object network. Wherein the number of nodes in the target object network is less than the initial object network. In the embodiment of the present application, the following process may be performed for each node merging process: merging at least two nodes with common neighbors in an object network to be merged currently, and taking the merged object network as a target object network; and in each node merging processing process, the current object network to be merged is the target object network obtained by the last merging.
(3) And performing feature extraction on the folded object network (namely the target object network) based on the depth encoder.
(4) And carrying out network restoration on the target object network. In an optional embodiment, before performing community partition on a corresponding target object network based on target data characteristics of at least one target object network, for each target object network, the following operations are respectively performed:
performing at least one network restoration on a current object network to be restored corresponding to a target object network; in the first network restoration process, the current object network to be restored is a target object network; in each network restoration process, the current target network to be restored is the target network obtained in the last restoration.
In the embodiment of the application, the network restoration processing characteristic restores the target object network to the previous layer network by using the deep learning model, and the initial object network is obtained step by step. The deep learning model takes the GCN model as an example:
g is to be i Representation of layer network node as G' i-1 Pre-representation of layer network nodes, obtaining G 'after the processing of GCN model' i-1 True representation of layer network nodes, further, G' i-1 Node representation of layer network as G' i-2 Pre-representation of layer network nodes.
If the number of objects in the initial object network is excessively large, and the node characteristic information in the object network cannot be obtained by the related technology, the object network can obtain a series of small-scale target object networks based on at least one folding strategy, respectively use the series of small-scale target object networks as the input of a depth self-encoder, obtain a series of object networks representing low-dimensional data characteristics based on the depth self-encoder, and further perform a series of network restoration processing, so as to obtain the characteristic information in the object network.
In the embodiment of the application, the characteristics of the upper network can be further obtained through network restoration processing, so that the characteristics of the initial object network are gradually obtained, and the error of the network characteristics is smaller and smaller.
(5) And carrying out community division on the restored object network, and carrying out intelligent recommendation according to a division result.
In this step, at least one partition method may be adopted for partitioning, for example, fig. 6 shows N types of community partition results obtained by respectively adopting N types of partition methods, namely community partition results 1, 2, \ 8230, and N, and based on a preset community partition evaluation criterion, an optimal community partition result is selected from the N types of community partition results, and resource recommendation is performed.
(ii) if the network size belongs to a second predetermined size, referring to fig. 7, it is a sub-path for dividing the community with large network size in the embodiment of the present application, and the specific steps of the path are as follows:
(1) and carrying out network preprocessing on the initial object network, wherein the network preprocessing is optional.
(2) Network folding is performed on the object network by adopting an optional implementation mode to obtain at least one target object network: respectively carrying out node combination processing on the initial object network at least once based on a plurality of different folding strategies to obtain at least one group of object networks corresponding to the initial object network; the network sizes of the plurality of object networks included in each object network group are the same. And taking each object network as a target object network.
(3) And performing feature extraction on the folded object network (namely the target object network) based on the depth self-encoder.
(4) And carrying out network restoration on the target object network. An optional implementation manner is that, before community division is performed on the corresponding target object network based on the target data characteristics of at least one target object network, the following operations are respectively performed on each target object network:
performing at least one network restoration on a current object network to be restored corresponding to a target object network; in the first network restoration process, the current object network to be restored is a target object network; in each network restoration process, the current target network to be restored is the target network obtained in the last restoration.
(5) And carrying out community division on the restored object network, and carrying out intelligent recommendation according to a division result.
In this step, at least one division mode may be adopted for division, for example, fig. 7 shows N community division results, namely community division results 1, 2, 8230, obtained by respectively performing community division on restored target object networks obtained based on different folding policies, and N, based on a preset community division evaluation standard, an optimal community division result is selected from the N community division results, and resource recommendation is performed.
(iii) if the network size belongs to the second preset size, as shown in fig. 8, it is a sub-path for dividing the medium and small-scale community in the embodiment of the present application, and the specific steps of the path are as follows:
(1) and carrying out network preprocessing on the initial object network, wherein the network preprocessing is optional.
(2) With an optional implementation, the object network is network-folded to obtain at least one target object network: respectively carrying out at least one node combination treatment on the initial object network based on a plurality of different folding strategies to obtain at least one group of object networks corresponding to the initial object network; the network sizes of a plurality of object networks included in each object network group are the same;
(3) and randomly combining the object networks belonging to the same group at least once to obtain at least one target object network.
(4) And performing feature extraction on the combined object network based on a depth encoder.
(5) And carrying out community division on the combined object network, and carrying out intelligent recommendation according to a division result.
In this step, at least one partition method may be adopted for partitioning, for example, fig. 8 shows N types of community partition results obtained by respectively adopting N types of partition methods, namely community partition results 1, 2, \ 8230, and N, and based on a preset community partition evaluation criterion, an optimal community partition result is selected from the N types of community partition results, and resource recommendation is performed.
In the mode, different community division paths are selected according to the size of the network scale, so that not only small-scale networks but also large-scale networks can be processed.
Taking a medium-small network scale of a second preset scale as an example, specifically, in the embodiment of the present application, the target object network characterization is obtained by performing multiple node combinations on an initial object network through multiple preset folding strategies, so as to obtain multiple groups of a series of target object networks
Figure BDA0003917389940000131
Wherein, the initial object network is represented by G, and based on the folding strategy A, the G obtains the target object network G through multiple node combination i 1 (ii) a Based on folding strategy B, G, obtaining target object network G through multiple node combination i 2 (ii) a Based on the folding strategy C, G, a target object network G is obtained through multiple node combination i 3 8230and so on; target object network G in the same group i 1 ,G i 2 ,…,G i n The network sizes of (a) are equal in size within a certain range.
In the embodiment of the present application, taking a folding policy a and a folding policy B as examples, performing node merging on an initial object network once respectively to obtain a group of object networks corresponding to the initial object network, where the group of object networks is denoted as R, and the sizes of the network scales in the group of object networks are equal as examples.
Still taking fig. 3 as an example, the node 2 and the node 3 have a common neighbor node 1, and the node 2 and the node 3 are merged to obtain a node 23'; the node 3 and the node 4 have a common neighbor node 5, and the node 3 and the node 4 are merged to obtain a node 34'.
Fig. 9a is a schematic diagram of a first target object network in the embodiment of the present application, where an initial object network performs network folding based on a folding policy a, and a node 2 and a node 3 in the initial object network are merged by one node to obtain a target object network G 1 1
Fig. 9B is a schematic diagram of a second target object network in the embodiment of the present application, where an initial object network performs network folding based on a folding policy B, and a node 3 and a node 4 in the initial object network are merged by one node to obtain a target object network G 1 2
Wherein G is 1 1 And G 1 2 The network sizes are equal.
It should be noted that, the above two folding policies and one node merging are only simple examples, and the number of folding policies and the number of node merging are not specifically limited herein.
Carrying out random combination on a plurality of object networks belonging to the same group at least once to obtain at least one target object network, wherein the following processes are executed in each random combination:
selecting at least two object networks from a plurality of object networks belonging to the same group as object networks to be combined; and performing characteristic combination on nodes corresponding to the characteristic similarity reaching a preset threshold value in the object network to be combined to obtain a target object network.
In the embodiment of the application, the random combination represents that the nodes with the characteristic similarity reaching the preset threshold in the object network to be combined are combined with the characteristics.
Taking two object networks to be combined as an example, specifically taking fig. 9a and 9b as examples, G 1 1 Intermediate nodes 23' and G 1 2 When the feature similarity of the middle node 2 reaches a preset threshold, the node 23' and the node 2Combining the features to obtain a node 23"; g 1 1 Middle nodes 4 and G 1 2 When the feature similarity of the middle node 34 'reaches a preset threshold, the features of the node 4 and the node 34' are combined to obtain a node 34 ″.
FIG. 10 is a schematic diagram of a combined target object network in the embodiment of the present application, G 1 1 And G 1 2 And after the networks are randomly combined, obtaining a target object network GG. Taking fig. 10 as an example, one target object network GG obtained by random combination is used as an input of the depth encoder, and one reconstructed target object network GG' is used as an output of the depth encoder. Assume that node 1 and node 34 "have the same interest, node 23" and node 5 have the same interest, nodes 10 and 11 have the same interest, and node 7, node 8 and node 9 have the same interest.
Fig. 11 is a schematic diagram of a target object network after feature extraction in this embodiment. The network node represents low-dimensional feature data, and the features of the node 1 and the node 34 'are combined to obtain a node 134'; combining the characteristics of the node 23 'and the node 5 to obtain a node 235'; combining the characteristics of the node 10 and the node 11 to obtain a node 1011'; and combining the characteristics of the node 7, the node 8 and the node 9 to obtain a node 789'.
In the mode, based on the depth self-encoder, the low-dimensional characteristics of the network can be obtained, and the community division effect is improved. In the embodiment of the application, different community division paths can be selected according to different network scales, so that an optimal division result is obtained.
The following describes resource recommendation processes corresponding to various paths in conjunction with several community division paths listed in fig. 4 and fig. 6 to fig. 8:
if the number of objects in the initial object network is small, the initial object network may be directly network-folded, that is, the initial community dividing path shown in fig. 4 is adopted.
Referring to fig. 12a, the community partition path shown in fig. 4 is a schematic view of a specific implementation flow of a resource recommendation method in the embodiment of the present application. The specific implementation flow of the method is as follows:
step S1201a: acquiring an initial object network;
step S1202a: based on the data characteristics of the object networks, directly carrying out community division on the corresponding object networks, and selecting an optimal community division result;
step S1203a: and based on the intelligent recommendation module, recommending resources according to the corresponding community division result.
If the initial object network belongs to a medium and small network scale, a medium and small network scale community division path may be adopted, that is, the community division path shown in fig. 8 is adopted.
Referring to fig. 12b, a detailed implementation flow diagram of a resource recommendation method in the embodiment of the present application is shown for the community partition path shown in fig. 8. The method comprises the following specific implementation flows:
step S1201b: acquiring an initial object network;
step S1202b: based on the network preprocessing module, adjusting the initial object network;
step S1203b: at a network folding module, node combination is carried out on an initial object network based on a plurality of folding strategies to obtain at least one group of target object networks;
step S1204b: in the combination module, randomly combining a plurality of object networks belonging to the same group at least once;
step S1205b: based on a depth self-encoder, extracting the characteristics of the combined target object network;
step S1206b: based on the target data characteristics of the target object network, directly carrying out community division on the corresponding object network, and selecting an optimal community division result;
step S1207b: and based on the intelligent recommendation module, recommending resources according to the corresponding community division result.
Step S1202b is represented by a dashed box, and it is characterized that this step may be omitted, and the initial object network may be adjusted based on the network preprocessing module and then network-folded, or the initial object network may be directly network-folded.
If the initial object network belongs to a large network scale, a large network scale community division path may be adopted, that is, the community division path shown in fig. 7 is adopted.
Referring to fig. 12c, the community partition path shown in fig. 7 is a schematic diagram of a specific implementation flow of a resource recommendation method in the embodiment of the present application. The method comprises the following specific implementation flows:
step S1201c: acquiring an initial object network;
step S1202c: based on the network preprocessing module, adjusting the initial object network;
step S1203c: at a network folding module, node combination is carried out on an initial object network based on a plurality of folding strategies to obtain at least one target object network;
step S1204c: based on a depth autoencoder, extracting the characteristics of the folded target object network;
step S1205c: in the network restoration module, carrying out at least one network restoration on the target object network after any one feature is extracted;
step S1206c: based on the target data characteristics of the target object network, directly carrying out community division on the corresponding object network, and selecting an optimal community division result;
step S1207c: and based on the intelligent recommendation module, recommending resources according to the corresponding community division result. The step S1202c is represented by a dashed-line frame, and it is characterized in that the step may be omitted, and the step may be performed by performing network folding after the initial object network is adjusted based on the network preprocessing module, or may be performed by directly performing network folding on the initial object network.
If the initial object network belongs to a super-large network scale, a super-large network scale community division path, that is, the community division path shown in fig. 6, may be adopted.
Referring to fig. 12d, the community partition path shown in fig. 6 is a schematic diagram of a specific implementation flow of a resource recommendation method in the embodiment of the present application. The specific implementation flow of the method is as follows:
step S1201d: acquiring an initial object network;
step S1202d: based on the network preprocessing module, adjusting the initial object network;
step S1203d: at a network folding module, node combination is carried out on an initial object network based on a folding strategy to obtain at least one target object network;
step S1204d: based on a depth autoencoder, extracting the characteristics of the folded target object network;
step S1205d: in the network restoration module, carrying out at least one network restoration on the target object network after any one feature is extracted;
step S1206d: based on the target data characteristics of the target object network, directly carrying out community division on the corresponding object network, and selecting an optimal community division result;
step S1207d: and based on the intelligent recommendation module, recommending resources according to the corresponding community division result.
The step S1202d is represented by a dashed box, and it is characterized that the step may be omitted, and the step may be performed by performing network folding after the initial object network is adjusted based on the network preprocessing module, or may be performed by directly performing network folding on the initial object network.
Based on the same inventive concept, the embodiment of the application also provides a resource recommendation device. As shown in fig. 13, which is a schematic structural diagram of a resource recommendation apparatus 1300, the resource recommendation apparatus may include:
a network scale obtaining unit 1301, configured to obtain a network scale corresponding to an initial object network constructed based on a plurality of objects, where each node in the initial object network corresponds to one object;
a network folding unit 1302, configured to select a community division path matching the network scale, and perform network folding on the initial object network to obtain at least one target object network; the representation of the community division path carries out node combination on the initial object network based on at least one folding strategy;
a feature extraction unit 1303, configured to perform feature extraction on at least one target object network based on the depth autoencoder;
and the resource recommending unit 1304 is configured to perform community division on the corresponding target object network based on the target data feature of at least one target object network, and perform resource recommendation according to a community division result.
Optionally, the network folding unit 1302 is specifically configured to:
if the network scale belongs to a first preset scale, selecting a first community division path, wherein the first community division path represents that node merging is carried out on the initial object network based on a folding strategy;
if the network scale belongs to a second preset scale, selecting a second community division path, and representing the second community division path to carry out node combination on the initial object network based on multiple different folding strategies;
wherein the first predetermined scale is greater than the second predetermined scale.
Optionally, if the network scale belongs to the first preset scale, the network folding unit 1302 is specifically configured to:
based on a folding strategy, carrying out at least one node merging treatment on the initial object network to obtain at least one target object network corresponding to the initial object network;
wherein the number of nodes in the target object network is less than the initial object network.
Optionally, if the network scale belongs to a second preset scale, the network folding unit 1302 is specifically configured to:
respectively carrying out node combination processing on the initial object network at least once based on a plurality of different folding strategies to obtain at least one group of object networks corresponding to the initial object network; the network sizes of a plurality of object networks contained in each object network group are the same;
and taking each object network as a target object network.
Optionally, if the network scale belongs to a second preset scale, the network folding unit 1302 is specifically configured to:
respectively carrying out at least one node combination treatment on the initial object network based on a plurality of different folding strategies to obtain at least one group of object networks corresponding to the initial object network; the network sizes of a plurality of object networks included in each object network group are the same;
and randomly combining the object networks belonging to the same group at least once to obtain at least one target object network.
Optionally, the network folding unit 1302 is specifically configured to:
the following procedure is performed for each random combination:
selecting at least two object networks from a plurality of object networks belonging to the same group as object networks to be combined;
and performing characteristic combination on nodes corresponding to the characteristic similarity reaching a preset threshold value in the object network to be combined to obtain a target object network.
Optionally, the feature extraction unit 1303 is specifically configured to:
for each target object network, the following operations are performed respectively:
acquiring low-dimensional data characteristics output by a middle layer of a depth self-encoder when a target object network is used as the input of the depth self-encoder and a reconstructed target object network is used as the output of the depth self-encoder, and taking the low-dimensional data characteristics as the target data characteristics of the target object network;
wherein, the node characteristic difference of one reconstructed target object network and one target object network is in a certain range.
Optionally, the network restoring unit 1305 is configured to, before the resource recommending unit 1304 performs community division on the corresponding target object networks based on the target data feature of at least one target object network, respectively perform the following operations for each target object network:
performing at least one network restoration on a current object network to be restored corresponding to a target object network; in the first network restoration process, the current object network to be restored is a target object network; in each network restoration process, the current target network to be restored is the target network obtained in the last restoration.
The network restoring unit 1305 is represented by a dashed box, and represents that the unit is a newly added unit when the corresponding optional step is executed. Here, the method is only a simple example, and the new method may be adopted, or other methods may also be adopted, and the present disclosure is not limited specifically.
Optionally, the network adjusting unit 1306 is configured to select a community division path matching the network scale from the network folding unit 1302, perform network folding on the initial object network, perform matrix transformation on the adjacent matrix corresponding to the initial object network based on a preset transformation policy before obtaining at least one target object network, and adjust the network scale based on the transformed adjacent matrix.
The network adjusting unit 1306 is represented by a dashed box, and represents that the unit is a newly added unit when the corresponding optional step is executed. Here, the method is only a simple example, and the new method may be adopted, or other methods may also be adopted, and the present disclosure is not limited specifically.
For convenience of description, the above parts are separately described as modules (or units) according to functional division. Of course, the functionality of the various modules (or units) may be implemented in the same one or more pieces of software or hardware when the application is implemented.
Having described the resource recommendation method and apparatus of the exemplary embodiments of the present application, an electronic device according to another exemplary embodiment of the present application is next described.
As will be appreciated by one skilled in the art, aspects of the present application may be embodied as a system, method or program product. Accordingly, various aspects of the present application may be embodied in the form of: an entirely hardware embodiment, an entirely software embodiment (including firmware, microcode, etc.) or an embodiment combining hardware and software aspects that may all generally be referred to herein as a "circuit," module "or" system.
The electronic equipment is based on the same inventive concept as the method embodiment, and the embodiment of the application also provides the electronic equipment. In this embodiment, the structure of the electronic device can be as shown in fig. 14, including a memory 1401, a communication module 1403 and one or more processors 1402.
A memory 1401 for storing computer programs executed by the processor 1402. The memory 1401 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, a program required for running an instant messaging function, and the like; the storage data area can store various instant messaging information, operation instruction sets and the like.
The memory 1401 may be a volatile memory (volatile memory), such as a random-access memory (RAM); the memory 1401 may also be a non-volatile memory (non-volatile memory), such as a read-only memory (rom), a flash memory (flash memory), a hard disk (HDD) or a solid-state drive (SSD); or the memory 1401 is any other medium that can be used to carry or store a desired computer program in the form of instructions or data structures and that can be accessed by a computer, but is not limited to such. The memory 1401 may be a combination of the above memories.
The processor 1402 may include one or more Central Processing Units (CPUs), or be a digital processing unit, etc. The processor 1402 is configured to implement the above-described register application information generation method when calling a computer program stored in the memory 1401.
The communication module 1403 is used for communicating with the terminal device and other servers.
The embodiment of the present application does not limit the specific connection medium among the memory 1401, the communication module 1403 and the processor 1402. In the embodiment of the present application, the memory 1401 and the processor 1402 are connected through the bus 1404 in fig. 14, the bus 1404 is depicted by a thick line in fig. 14, and the connection manner between other components is merely illustrative and is not limited. The bus 1404 may be divided into an address bus, a data bus, a control bus, and the like. For ease of description, only one thick line is depicted in fig. 14, but not only one bus or one type of bus.
The memory 1401 stores a computer storage medium, and the computer storage medium stores computer-executable instructions for implementing the resource recommendation method according to the embodiment of the present application. The processor 1402 is configured to perform the resource recommendation method described above, as shown in FIG. 2.
A computing device 1500 according to this embodiment of the present application is described below with reference to fig. 15. The computing arrangement 1500 of fig. 15 is only one example and should not impose any limitations on the functionality or scope of use of embodiments of the present application.
As with fig. 15, computing device 1500 is embodied in the form of a general purpose computing device. Components of computing device 1500 may include, but are not limited to: the at least one processing unit 1501, the at least one memory unit 1502, and a bus 1503 connecting different system components (including the memory unit 1502 and the processing unit 1501).
Bus 1503 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, and a processor or local bus using any of a variety of bus architectures.
The storage unit 1502 may include readable media in the form of volatile memory, such as Random Access Memory (RAM) 1521 and/or cache memory 1522, and may further include Read Only Memory (ROM) 1523.
The storage unit 1502 may also include a program/utility 1525 having a set (at least one) of program modules 1524, such program modules 1524 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which, or some combination thereof, may comprise an implementation of a network environment.
The computing apparatus 1500 may also communicate with one or more external devices 1504 (e.g., keyboard, pointing device, etc.), with one or more devices that enable a user to interact with the computing apparatus 1500, and/or with any devices (e.g., router, modem, etc.) that enable the computing apparatus 1500 to communicate with one or more other computing apparatuses. Such communication may occur via input/output (I/O) interface 1505. Moreover, the computing device 1500 can also communicate with one or more networks (e.g., a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network, such as the internet) through the network adapter 1506. As shown in fig. 15, the network adapter 1506 communicates with other modules for the computing device 1500 via bus 1503. It should be understood that although not shown, other hardware and/or software modules may be used in conjunction with computing device 1500, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID systems, tape drives, and data backup storage systems, to name a few.
In some possible embodiments, the aspects of the resource recommendation method provided in this application may also be implemented in the form of a program product including a computer program for causing an electronic device to perform the steps in the resource recommendation method according to various exemplary embodiments of this application described above in this specification when the program product is run on the electronic device, for example, the electronic device may perform the steps as shown in fig. 2.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable 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 disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The program product of embodiments of the present application may employ a portable compact disc read only memory (CD-ROM) and include a computer program, and may be run on a computing device. However, the program product of the present application is not limited thereto, and in this document, a readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with a command execution system, apparatus, or device.
Readable signal media may include a propagated data signal with a readable computer program embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A readable signal medium may be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with a command execution system, apparatus, or device.
The computer program embodied on the readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Computer programs for carrying out operations of the present application may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The computer program may execute entirely on the user computing device, partly on the user's equipment, as a stand-alone software package, partly on the user computing device and partly on a remote computing device, or entirely on the remote computing device or server. In situations involving remote computing devices, the remote computing devices may be connected to the user computing device through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., through the internet using an internet service provider).
It should be noted that although several units or sub-units of the apparatus are mentioned in the above detailed description, such division is merely exemplary and not mandatory. Indeed, the features and functions of two or more of the units described above may be embodied in one unit, according to embodiments of the application. Conversely, the features and functions of one unit described above may be further divided into embodiments by a plurality of units.
Further, while the operations of the methods of the present application are depicted in the drawings in a particular order, this does not require or imply that these operations must be performed in this particular order, or that all of the illustrated operations must be performed, to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having a computer-usable computer program embodied therein.
While the preferred embodiments of the present application have been described, additional variations and modifications of these embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including the preferred embodiment and all changes and modifications that fall within the scope of the present application.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present application without departing from the spirit and scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include such modifications and variations as well.

Claims (10)

1. A method for resource recommendation, the method comprising:
acquiring a network scale corresponding to an initial object network constructed based on a plurality of objects, wherein each node in the initial object network corresponds to one object;
selecting a community division path matched with the network scale, and performing network folding on the initial object network to obtain at least one target object network; wherein the community partitioning path characterization performs node merging on the initial object network based on at least one folding strategy;
respectively extracting the characteristics of at least one target object network based on a depth self-encoder;
and performing community division on the corresponding target object network based on the target data characteristics of at least one target object network, and performing resource recommendation according to community division results.
2. The method of claim 1, wherein the selecting the community partition path matching the network size comprises:
if the network scale belongs to a first preset scale, selecting a first community division path, wherein the first community division path represents that node merging is carried out on the initial object network based on a folding strategy;
if the network scale belongs to a second preset scale, selecting a second community division path, wherein the second community division path represents that node merging is carried out on the initial object network based on a plurality of different folding strategies;
wherein the first predetermined scale is greater than the second predetermined scale.
3. The method of claim 2, wherein if the network size belongs to a first preset size, the performing network folding on the initial object network to obtain at least one target object network comprises:
based on the folding strategy, carrying out at least one node merging treatment on the initial object network to obtain at least one target object network corresponding to the initial object network;
wherein the number of nodes in the target object network is less than the initial object network.
4. The method of claim 2, wherein if the network size belongs to a second preset size, the performing network folding on the initial object network to obtain at least one target object network comprises:
respectively carrying out at least one node merging treatment on the initial object network based on the plurality of different folding strategies to obtain at least one group of object networks corresponding to the initial object network; the network sizes of a plurality of object networks included in each object network group are the same;
and taking each object network as a target object network.
5. The method of claim 2, wherein if the network size belongs to a second predetermined size, the performing network folding on the initial object network to obtain at least one target object network comprises:
respectively carrying out at least one node merging treatment on the initial object network based on the plurality of different folding strategies to obtain at least one group of object networks corresponding to the initial object network; the network sizes of a plurality of object networks included in each object network group are the same;
and randomly combining the object networks belonging to the same group at least once to obtain at least one target object network.
6. The method according to claim 5, wherein the randomly combining the object networks belonging to the same group at least once to obtain at least one target object network comprises:
the following procedure is performed for each random combination:
selecting at least two object networks from the object networks belonging to the same group as object networks to be combined;
and combining the characteristics of the nodes of which the corresponding characteristic similarity reaches a preset threshold value in the object network to be combined to obtain a target object network.
7. The method of claim 1, wherein the depth-based self-encoder, respectively performing feature extraction on at least one of the target object networks, comprises:
for each target object network, the following operations are performed respectively:
acquiring a low-dimensional data feature output by a middle layer of a depth self-encoder when a target object network is used as the input of the depth self-encoder and a reconstructed target object network is used as the output of the depth self-encoder, and using the low-dimensional data feature as a target data feature of the target object network;
wherein the node characteristic difference of the one reconstructed target object network and the one target object network is within a certain range.
8. The method according to claim 3 or 4, wherein before said community partitioning the respective target object network based on the target data characteristics of at least one of the target object networks, further comprising:
for each target object network, the following operations are respectively executed:
performing at least one network restoration on a current object network to be restored corresponding to a target object network; in the first network restoration process, the current object network to be restored is the target object network; and in each network restoration process, the current object network to be restored is the target object network obtained by the last restoration.
9. The method according to any one of claims 1 to 7, wherein before said selecting a community partition path matching the network size, and performing network folding on the initial object network to obtain at least one target object network, further comprising:
and performing matrix transformation on the adjacent matrix corresponding to the initial object network based on a preset transformation strategy, and adjusting the network scale based on the transformed adjacent matrix.
10. An apparatus for resource recommendation, the apparatus comprising:
a network scale obtaining unit, configured to obtain a network scale corresponding to an initial object network constructed based on a plurality of objects, where each node in the initial object network corresponds to one object;
the network folding unit is used for selecting a community division path matched with the network scale, and performing network folding on the initial object network to obtain at least one target object network; the community division path representation carries out node combination on the initial object network based on at least one folding strategy;
the feature extraction unit is used for respectively extracting features of at least one target object network based on the depth self-encoder;
and the resource recommendation unit is used for carrying out community division on the corresponding target object network based on the target data characteristics of at least one target object network and carrying out resource recommendation according to the community division result.
CN202211346493.5A 2022-10-31 2022-10-31 Resource recommendation method and device, electronic equipment and storage medium Pending CN115809365A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211346493.5A CN115809365A (en) 2022-10-31 2022-10-31 Resource recommendation method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211346493.5A CN115809365A (en) 2022-10-31 2022-10-31 Resource recommendation method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN115809365A true CN115809365A (en) 2023-03-17

Family

ID=85482874

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211346493.5A Pending CN115809365A (en) 2022-10-31 2022-10-31 Resource recommendation method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115809365A (en)

Similar Documents

Publication Publication Date Title
US10609433B2 (en) Recommendation information pushing method, server, and storage medium
US10839255B2 (en) Load-balancing training of recommender system for heterogeneous systems
Zhang et al. Temporal QoS-aware web service recommendation via non-negative tensor factorization
US20160259857A1 (en) User recommendation using a multi-view deep learning framework
Zhang et al. User community discovery from multi-relational networks
Yang et al. Estimating time-varying graphical models
EP2377080A1 (en) Machine optimization devices, methods, and systems
CN110009486B (en) Method, system, equipment and computer readable storage medium for fraud detection
Dakhel et al. A social recommender system using item asymmetric correlation
CN112989169B (en) Target object identification method, information recommendation method, device, equipment and medium
US20240211991A1 (en) Data processing method, apparatus, and computer-readable storage medium
CN113592593B (en) Training and application method, device, equipment and storage medium of sequence recommendation model
Paleti et al. Approaching the cold-start problem using community detection based alternating least square factorization in recommendation systems
Zhan et al. Identification of top-K influential communities in big networks
US11379743B2 (en) Recommendation system
CN114943279A (en) Method, device and system for predicting bidding cooperative relationship
Yu et al. Neural personalized ranking via poisson factor model for item recommendation
US20220027434A1 (en) Providing recommendations via matrix factorization
CN114511024B (en) Node classification method, apparatus, device, medium and computer program product
CN114092162B (en) Recommendation quality determination method, and training method and device of recommendation quality determination model
CN116975427A (en) Method, device and computing equipment for determining interest degree of object in resource information
CN115730143A (en) Recommendation system, method, terminal and medium based on task alignment meta learning and augmentation graph
Zou et al. Hybrid collaborative filtering with semi-stacked denoising autoencoders for recommendation
CN115757962A (en) Content recommendation method and device, electronic equipment and storage medium
CN115809365A (en) Resource recommendation method and device, electronic equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Country or region after: China

Address after: 314400 Building 1, Juanhu Science and Technology Innovation Park, No. 500, Shuiyueting East Road, Xiashi Street, Haining City, Jiaxing City, Zhejiang Province

Applicant after: Haining Yisiwei Computing Technology Co.,Ltd.

Applicant after: Beijing ESWIN Computing Technology Co.,Ltd.

Address before: 314400 Building 1, Juanhu Science and Technology Innovation Park, No. 500, Shuiyueting East Road, Xiashi Street, Haining City, Jiaxing City, Zhejiang Province

Applicant before: Haining yisiwei IC Design Co.,Ltd.

Country or region before: China

Applicant before: Beijing ESWIN Computing Technology Co.,Ltd.

CB02 Change of applicant information