Content recommendation method, apparatus, device, and program
The method addresses data sparseness and cold start issues in recommender systems by mapping user interests across domains, improving content recommendation accuracy and resource efficiency.
Patent Information
- Application Number
- JP2025517287
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2022-11-29
- Filing Date
- 2023-09-12
- Publication Date
- 2025-11-19
- Estimated Expiration
- 2043-09-12
AI Technical Summary
Recommender systems face challenges with data sparseness and cold start issues, where limited interaction data for users and new users hinder accurate content recommendation, leading to inefficient resource utilization.
A content recommendation method that utilizes transfer learning by mapping user interests across domains through personalized clustering and feature extraction, using a mapping relationship function to bridge feature representations between platforms, enabling accurate content recommendation for users with sparse data.
Enhances personalized content recommendation accuracy by leveraging user interactions from other domains, addressing data sparseness and cold start problems, and optimizing resource utilization.
Smart Images

Figure 0007773677000008 
Figure 0007773677000009 
Figure 0007773677000010
Abstract
Description
[Technical Field]
[0001] [Related Applications] This application claims priority to a Chinese patent application filed with the China Patent Office on November 29, 2022, bearing application number 2022115160629 and entitled "Content recommendation method, apparatus, device, medium, and program product," the entire text of which is incorporated herein by reference.
[0002] [Technical field] TECHNICAL FIELD Embodiments of the present application relate to the field of computers, specifically to the field of machine learning, and more particularly to content recommendation methods, apparatus, devices, media, and program products. [Background technology]
[0003] Users can access desired information content from different platforms via networks, but due to the huge amount of information content available on the platforms, it is difficult for users to filter through it to access the information content they want.
[0004] In the related technology, after authorization, a personalized recommendation system collects the user's attributes and historical interaction data on the platform to capture the user's interest characteristics, and generates a specific recommendation list for the user through a designed recommendation algorithm to recommend personalized content to the user.
[0005] However, recommender systems suffer from two problems: data sparseness and cold start. The data sparseness problem refers to the lack of historical interaction data for users, while the cold start problem refers to the lack of historical interaction data for new users after they enter the system. Because recommender systems cannot accurately analyze users' interests and preferences, they cannot push accurate content to users. Furthermore, resources supporting the content push function are wasted, resulting in low resource utilization. Summary of the Invention
[0006] According to the embodiments of the present application, a content recommendation method, an apparatus, a device, a medium, and a program product are proposed.
[0007] According to one aspect, there is provided a content recommendation method executed by a computing device, the method comprising: acquiring attribute data of a first user on a first function platform, and performing feature extraction based on the attribute data to acquire a first feature representation of the first user; obtaining a second feature representation of a second user on the first function platform, and performing clustering analysis on the first feature representation and the second feature representation to obtain a cluster center corresponding to the first user; Obtaining second historical interaction data of the first user on a second function platform, and performing feature extraction based on the second historical interaction data to obtain an out-of-domain feature representation of the first user; obtaining a mapping relationship function corresponding to the cluster center, and obtaining an in-domain feature representation of the first user by mapping the out-of-domain feature representation with the mapping relationship function, wherein the mapping relationship function indicates a mapping relationship of feature representations between the second function platform and the first function platform; The method includes determining a target feature representation for the first user based on the in-domain feature representation and the first feature representation, determining target content matching the first user from a candidate content recommendation pool based on the target feature representation, and pushing the target content to the first user.
[0008] According to another aspect, a content recommendation device is proposed, the device comprising: an extraction module configured to acquire attribute data of a first user on a first function platform, and perform feature extraction based on the attribute data to acquire a first feature representation of the first user; a clustering analysis module configured to obtain a second feature representation of a second user in the first function platform, and perform clustering analysis on the first feature representation and the second feature representation to obtain a cluster center corresponding to the first user; The extraction module is further configured to obtain second historical interaction data of the first user on a second function platform, and perform feature extraction based on the second historical interaction data to obtain an out-of-domain feature representation of the first user; The content recommendation device an acquiring module configured to acquire a mapping relationship function corresponding to the cluster center, and acquire an in-domain feature representation of the first user by mapping the out-of-domain feature representation with the mapping relationship function, wherein the mapping relationship function indicates a mapping relationship of feature representations between the second function platform and the first function platform; and a recommendation module configured to determine a target feature representation for the first user based on the in-domain feature representation and the first feature representation, determine target content matching the first user from a candidate content recommendation pool based on the target feature representation, and push the target content to the first user.
[0009] According to another aspect, a computer device is proposed, the computer device including a processor and a memory, wherein the memory stores computer-readable instructions, and when the computer-readable instructions are loaded and executed by the processor, a content recommendation method according to each embodiment of the present application is realized.
[0010] According to another aspect, there is proposed a computer-readable storage medium having computer-readable instructions stored thereon, which, when loaded and executed by a processor, results in the content recommendation method according to each embodiment of the present application being realized.
[0011] According to another aspect, a computer program product is proposed, which includes computer-readable instructions, which, when executed by a processor, result in the content recommendation method according to each embodiment of the present application being realized.
[0012] The details of one or more embodiments of the application are set forth in the drawings and description below. Other features and advantages of the application will become apparent from the description, drawings, and claims. [Brief explanation of the drawings]
[0013] In order to more clearly explain the technical solutions of the embodiments of the present application, the following will briefly describe the drawings necessary for explaining the embodiments. Needless to say, the drawings in the following description are merely some embodiments of the present application, and those skilled in the art can obtain other drawings based on these drawings without any creative work. [Figure 1] FIG. 2 is a schematic diagram illustrating personalized content recommendations to designated users proposed in an exemplary embodiment of the present application; [Figure 2] 1 is a schematic diagram illustrating a proposed implementation environment in an exemplary embodiment of the present application; [Figure 3] 1 is a flowchart of a content recommendation method proposed in an exemplary embodiment of the present application; [Figure 4] FIG. 2 is a schematic diagram illustrating personalized content recommendation based on intra-domain features to a first user proposed in an exemplary embodiment of the present application; [Figure 5] 1 is a flowchart of a method for training a personalized mapping relationship function proposed in an exemplary embodiment of the present application; [Figure 6]1 is a flowchart of a clustering analysis method proposed in an exemplary embodiment of the present application; [Figure 7] FIG. 1 is a schematic diagram illustrating obtaining a second cluster distribution result by performing a discrete analysis process on a first cluster distribution result proposed in an exemplary embodiment of the present application; [Figure 8] 1 is a flowchart of a method for obtaining an out-of-domain feature representation of a first user proposed in an exemplary embodiment of the present application; [Figure 9] 1 is a schematic diagram of a heterogeneous graph proposed in an exemplary embodiment of the present application; [Figure 10] FIG. 1 is a schematic diagram illustrating the meta-path based folding of heterogeneous graphs proposed in an exemplary embodiment of the present application; [Figure 11] 1 is a block diagram of a content recommendation device proposed in an exemplary embodiment of the present application; [Figure 12] FIG. 10 is a block diagram of a content recommendation device proposed in another exemplary embodiment of the present application. [Figure 13] FIG. 1 is a block diagram of a computer device proposed in an exemplary embodiment of the present application. DETAILED DESCRIPTION OF THE INVENTION
[0014] Hereinafter, the technical solutions of the embodiments of the present application will be clearly and completely described with reference to the drawings of the embodiments of the present application, and it goes without saying that the embodiments described below are only a part of the embodiments of the present application, not all of them. All other embodiments that can be obtained by a person skilled in the art based on the embodiments of the present application without any creative work shall fall within the scope of protection of the present application.
[0015] Artificial Intelligence Artificial Intelligence (AI) is the theory, method, technology, and application system for using digital computers or machines controlled by digital computers to imitate, extend, and expand human intelligence, sense the environment, acquire knowledge, and use that knowledge to achieve optimal results. In other words, artificial intelligence is a comprehensive technology of computer science that understands the essence of intelligence and attempts to create new smart machines that can respond in a manner similar to human intelligence. AI aims to equip machines with the capabilities of sensing, reasoning, and decision-making by researching the design principles and implementation methods of various smart machines.
[0016] Artificial intelligence technology is a multidisciplinary field that covers a wide range of fields, including hardware and software technologies. The basic technologies of artificial intelligence generally include sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data feature representation extraction technology, operation / interaction systems, mechatronics, etc. Artificial intelligence software technology mainly includes several major aspects such as computer vision technology, speech processing technology, natural language processing technology, and machine learning / deep learning.
[0017] Personalized recommendation systems are a product of the development of the Internet and e-business. They are advanced business intelligence platforms built on massive data mining, providing users with personalized information services and decision support.
[0018] The personalized recommendation system collects user attributes and historical behavior data, builds a user interest model through a designed recommendation algorithm, and generates and pushes specific recommendation lists for each user, thereby achieving the purpose of personalized recommendation.
[0019] However, recommender systems have two long-standing problems: data sparseness and cold start. The data sparse problem refers to the difficulty of properly capturing user interests and item characteristics due to the limited interaction records between users and items. The cold start problem refers to the lack of interaction records for new users or items that have just entered the system. Traditional recommendation algorithms make recommendations based on user-item interaction data, making it difficult to make appropriate recommendations in these two situations.
[0020] Transfer Learning Learning (TL) is a noun in machine learning that refers to the influence of one learning on another, or the influence of a learning experience on the achievement of another behavior. Transfer is widespread in the learning of various knowledge, skills, and social norms.
[0021] Transfer learning is a method that utilizes the rich knowledge and information of the source domain to improve the performance of the target domain and reduce the number of samples required in the target domain. It is widely used in the fields of vision and natural language processing. For example, knowledge (or models) for car identification can be used to improve truck identification.
[0022] Here, the source domain The target domain (SD) refers to the existing knowledge domain, which represents a domain different from the target sample and generally has abundant supervision and label data. The target domain (TD) refers to the domain that needs to be learned, representing the domain where the target samples are located, and generally has little or no label data. The source domain can be the domain that is the source of knowledge to be transferred in transfer learning, and the target domain can be the domain that is the destination of knowledge to be transferred in transfer learning.
[0023] Inspired by transfer learning, the cold start and data sparsity problems can be solved by capturing and analyzing the user's interaction information in another domain (the source domain) to capture the user's preferences in a certain area and enrich the data in the target domain. Alternatively, by increasing the information available to the recommendation system when a new user starts up, the data sparsity and cold start problems can be alleviated, and personalized content can be recommended to the user across domains.
[0024] Here, cross-domain recommendation aims to link data from multiple domains and introduce and supplement information from another domain (source domain) to make recommendations in the target domain, and even in multiple domains. Generally, there may be some overlapping information between different domains. For example, shared users in different domains and the same items in different domains both belong to the category of overlapping information. Generally, such overlapping information is essential for information transfer between different domains.
[0025] Regarding the user cold start problem, the cross-domain recommendation algorithm has a dominant branch of establishing a suitable mapping function to transfer users' interests, i.e., establishing interest mapping from source domain to target domain.
[0026] In this method, it is assumed that there is a mapping relationship between the user's interests in different domains, and in this case, the user's interests in the source domain can be mapped to obtain the interests in the target domain. Even if a user has no activity in the target domain, the interests in the target domain can be obtained from the interests in the source domain using the mapping function, which can further provide appropriate recommendations and alleviate the user's cold start problem.
[0027] However, in the related art, in the cross-domain recommendation algorithm based on mapping, all users share the same mapping function, but because there are differences in personalization between users and the interest mapping from the source domain to the target domain varies greatly, if all users share the same mapping function, it is difficult to model such complex mapping relationships, and the accuracy of the mapping results is low, resulting in poor effectiveness of personalized content recommendation based on the mapping results to users.
[0028] In the present embodiment, a personalized mapping function is designed to map the out-of-domain features of a cold user in a source domain to a target domain through the personalized mapping function, thereby obtaining the in-domain features of the cold user, and then providing personalized content recommendation based on the in-domain features to the cold user. A cold user is a user lacking related information, and is generally a new user.
[0029] 1, attribute data of a sample user 101 on a first function platform is first obtained, feature extraction is performed on the attribute data of the sample user 101 to obtain a second feature representation 102 of the sample user, and clustering analysis is performed on the second feature representation 102 of the sample user to obtain a cluster distribution result 103, which includes multiple clusters, each of which has a corresponding cluster center. Candidate mapping functions are trained based on the cluster centers to obtain a mapping module 104, which includes multiple mapping relationship functions. Here, each mapping relationship function in the mapping module 104 corresponds to one cluster, and once the cluster centers of the clusters are obtained, the corresponding mapping relationship functions can be indexed based on the cluster centers.
[0030] Attribute data of the designated user 111 on the first function platform is acquired, and feature extraction is performed on the attribute data of the designated user 111 to acquire a first feature representation 112 of the designated user. Here, the designated user 111 may be a cold user, i.e., a user for whom no historical interaction data exists on the first function platform, or a return user, i.e., a user for whom no historical interaction data exists in a historical cycle but whose historical interaction data exists in a recent cycle on the first function platform.
[0031] Second historical interaction data of the designated user 111 on the second function platform is acquired, and feature extraction is performed on the historical interaction data of the designated user 111 to acquire an out-of-domain feature representation 113 of the designated user.
[0032] The similarity between the first feature representation 112 of the designated user and the cluster center in the cluster distribution result 103 is calculated, and the cluster center corresponding to the designated user 111 is obtained based on the similarity. The target mapping relation function 114 suitable for the designated user 111 is obtained from the mapping module 104 based on the cluster center corresponding to the designated user 111.
[0033] The out-of-domain feature representation 113 of the designated user is input to a target mapping relation function 114 for mapping to obtain in-domain features 115 of the designated user 111, and the in-domain features 115 of the designated user 111 and the first feature representation 112 of the designated user are stitched together to form a target feature representation 116 of the designated user.
[0034] Based on the target feature representation 116 of the designated user, personalized content 117 that may be of interest to the designated user 111 is filtered, and the personalized content 117 is recommended to the designated user 111 .
[0035] It should be particularly noted that the above-mentioned user attribute data and historical interaction data are data that are voluntarily uploaded by the user or data that are obtained after individual permission from the user.
[0036] It is particularly important to note that the information (including, but not limited to, user attribute information, user interaction history information between the first function platform and the second function platform, etc.) and data (including, but not limited to, analytical data, stored data, and displayed data, etc.) related to this application have all been individually authorized by the user or fully authorized by each party, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. For example, the attribute data related to this application has been obtained with sufficient authorization.
[0037] Next, an implementation environment according to an embodiment of the present application will be described. Schematically, referring to Fig. 2, the implementation environment includes a terminal 210 and a server 220, and the terminal 210 and the server 220 are connected via a communication network 230.
[0038] In some embodiments, the terminal 210 is configured to transmit at least one of the first feature representation or the second feature representation of the user and the out-of-domain feature representation to the server 220. In some embodiments, the terminal 210 is installed with an application having a feature mapping function (e.g., a function of mapping the out-of-domain feature representation to the in-domain feature representation), and generally, the terminal 210 is installed with an application having a personalized mapping function. For example, the terminal 210 is installed with a search engine program, a travel application, a life assistance application, an instant messaging application, a video program, a game program, a news application, a content recommendation application, etc., and the embodiments of the present application are not limited thereto.
[0039] After obtaining the first feature representation, the second feature representation, and the out-of-domain feature representation of the user, the server 220 performs feature analysis on the first feature representation, the second feature representation, and the out-of-domain feature representation of the user to obtain an in-domain feature representation of the user, and based on the in-domain feature representation of the user, filters personalized content that may be of interest to the user for downstream applications such as aggregating users based on in-domain features and recommending personalized content to users.
[0040] After obtaining the first feature representation, the second feature representation and the out-of-domain feature representation of the user, the server 220 returns the in-domain feature representation to the terminal 210 so as to correspond to the in-domain feature representation of the user, and finally filters personalized content based on the in-domain feature representation by the terminal 210, and recommends the content to the user. Here, the personalized content includes in-domain information stream content that the user may be interested in, such as information stream articles, videos, music, etc.
[0041] The above-mentioned terminals may be various types of terminal devices such as mobile phones, tablets, desktop computers, portable laptops, smart TVs, in-car terminals, smart home devices, etc., and the embodiments of the present application are not limited thereto.
[0042] It is particularly noted that the above-mentioned servers may be standalone physical servers, or may be server clusters or distributed systems consisting of multiple physical servers, and may be cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, content delivery networks, etc. Cloud computing services include cloud delivery networks (CDNs), and big data and artificial intelligence platforms.
[0043] Here, cloud technology Cloud computing technology refers to hosting technology that integrates a set of resources, such as hardware, software, and networks, on a wide-area network or local-area network to enable data computing, storage, processing, and sharing. Cloud technology is a collective term for network technology, information technology, integration technology, management platform technology, and application technology based on the application of cloud computing business models. It allows for resource pooling, which is flexible and convenient to use as needed. Cloud computing technology is an important foundation. Background services for technical network systems, such as video websites, image websites, and more portal sites, require large amounts of computing and storage resources. With the rapid development and application of the Internet industry, in the future, each item may have its own identifier, which will need to be transmitted to the background system for logical processing. Different levels of data will be processed separately, and each type of industry data will require strong system support, which can only be achieved through cloud computing.
[0044] In some embodiments, the servers described above may also be implemented as nodes in a blockchain system.
[0045] The content recommendation method proposed in this application will be described in conjunction with the above-mentioned noun interpretation and application scenarios. This method may be executed by a server or a terminal, or may be executed jointly by a server and a terminal. In the embodiment of this application, this method is executed by a server. As shown in Figure 3, this method includes the following steps:
[0046] Step 310: Obtain attribute data of the first user on the first function platform, and perform feature extraction based on the attribute data to obtain a first feature representation of the first user.
[0047] The first user is a specific user, a user to whom content is pushed. The first user may be called a designated user or a target user. The attribute data is data for describing the characteristics of a user. The attribute data of the first user is data for describing the user characteristics of the first user. The attribute data of the first user on the first function platform is attribute data generated or stored by the first user on the first function platform. The first feature representation is a feature representation of the first user.
[0048] The first functional platform includes different types of platform elements, and the first user can interact with the platform elements in the first functional platform.
[0049] Optionally, the type of the first functional platform includes, but is not limited to, a gaming platform, a social platform, and a shopping platform.
[0050] Optionally, the types of platform elements included in the first functional platform include, but are not limited to, video elements such as movie dramas and animated videos, image elements which are images containing information stream content, music elements such as songs and musical accompaniments, and text elements such as articles in periodicals and e-books.
[0051] Optionally, services that can be provided by the first function platform include, but are not limited to, online live stream push, channel content push, article push by subscription account, or communication community push.
[0052] Alternatively, there is no valid interaction between the first user and the platform element in the first functional platform, that is, there is no valid historical interaction data of the first user on the first functional platform, specifically including but not limited to the following situations:
[0053] (1) The first user is a newly registered user on the first function platform, i.e., a cold user, and therefore has no historical interaction data.
[0054] (2) The first user is a return user on the first functional platform and has not logged in to the first functional platform for more than a preset time, so the historical interaction data has been erased.
[0055] (3) The login frequency of the first user on the first function platform is lower than a frequency threshold, and the number of historical interaction data is lower than a threshold.
[0056] (4) The time elapsed since the first user registered with the first function platform has not reached the elapsed time threshold, so the validity of the historical interaction data within the elapsed time threshold is low.
[0057] Optionally, the method of generating historical interaction data through the interaction between the first user and the first function platform includes, but is not limited to:
[0058] (1) A first user browses at least one of content pushed from a first functional platform, such as an article, a video, or live stream content.
[0059] (2) The first user performs a transaction-related activity on the first functional platform, such as shopping, selling or rating a product.
[0060] (3) A first user voluntarily uploads content, such as at least one of an article, an image, or a video, to a first functional platform.
[0061] Optionally, the attribute data of the first user on the first functional platform may include the age information of the first user, the IP address (Internet Protocol Address), the first user's gender information, or the first user's device specifications.
[0062] In general, a feature extraction network is used to perform feature extraction on attribute data of a first user on a first function platform, thereby obtaining a first feature representation of the first user.
[0063] Step 320: Obtain a cluster center corresponding to the first user by performing clustering analysis on the first feature representation and the second feature representation of the second user in the first function platform.
[0064] The first function platform includes a first user and at least one second user, and each user has corresponding attribute data. The second feature representation is a feature representation of the second user.
[0065] The computing device can extract a second feature representation of the second user based on the attribute data of the second user on the first functional platform.
[0066] Here, the second feature representation of the second user and the first feature representation of the first user belong to the same type of feature representation or are feature representations extracted by the same feature extraction network, and are used to represent the features of the attribute data on the user's first functional platform.
[0067] The computing device can obtain a plurality of clusters by performing a clustering analysis on the second user based on the second feature representation of the second user, where each second user corresponds to a cluster, the central point of the cluster is a cluster center, and each cluster includes a corresponding cluster center.
[0068] The computing device can obtain a similarity between the first feature representation and the cluster center, and determine a cluster center corresponding to the first user based on the similarity.
[0069] In one embodiment, the step of obtaining the similarity of the first feature representation with the cluster center and determining the cluster center corresponding to the first user based on the similarity includes the step of calculating the distance of the first feature representation with each of the cluster centers and determining the cluster center with the smallest distance from the first feature representation as the cluster center corresponding to the first user. In this embodiment, by measuring the similarity of the first feature representation with the cluster center using the distance of the first feature representation with the cluster center, it is possible to easily find a more appropriate cluster center and perform accurate pushing, thereby avoiding wasting resources supporting the content push function.
[0070] In one embodiment, the step of acquiring the similarity of the first feature representation with the cluster center and determining the cluster center corresponding to the first user based on the similarity includes the steps of calculating the similarity of the first feature representation with each of the cluster centers, determining the probability that the first user belongs to each of the clusters based on the similarity, and filtering the determined probabilities to find the maximum probability and determining the cluster center corresponding to the first user based on the maximum probability. In this embodiment, the similarity is used to calculate the probability that the first user belongs to each of the clusters, filtering the maximum probability, and the cluster center of the cluster to which the first user belongs when the probability is maximized is determined to be the cluster center corresponding to the first user. This embodiment also enables more accurate content push and avoids wasting resources supporting the content push function.
[0071] Step 330: Obtain second historical interaction data of the first user on the second function platform, and perform feature extraction based on the second historical interaction data to obtain an out-of-domain feature representation of the first user.
[0072] The second functional platform also includes different types of platform elements, and the first user can interact with the platform elements in the second functional platform.
[0073] Here, the relationship between the first function platform and the second function platform includes, but is not limited to, the following: (1) different function modules within the same software and an account through which the first user is logged in to the software; (2) different function modules within the same website and an account through which the first user is logged in to the website, or the first user is a user corresponding to the terminal identification code currently browsing the website; and (3) the first user's account on the first function platform and the first user's account on the second function platform are associated, for example, the first user logs in to the first function platform using the first account and logs in to the second function platform using the second account, and a binding relationship between the first account and the second account is established between the first function platform and the second function platform.
[0074] Optionally, there is valid interaction behavior between the first user and the platform elements in the second functional platform, that is, there is valid historical interaction data of the first user on the second functional platform, specifically including but not limited to the following:
[0075] (1) The time elapsed since the first user registered with the second function platform exceeds the elapsed time threshold.
[0076] (2) The logon frequency of the first user on the second function platform is higher than the frequency threshold.
[0077] (3) The number of historical interaction data of the first user on the second function platform exceeds a threshold.
[0078] Second historical interaction data of the first user on the second functional platform is acquired, and a feature extraction process is performed on the historical interaction data to acquire an out-of-domain feature representation of the first user.
[0079] Here, "outside the domain" refers to a range other than the first functional platform, and "outside the domain feature representation" refers to historical interaction data generated by the first user not on the first functional platform but on another functional platform.
[0080] It is particularly important to note that the first user can interact with platform elements in any type of functional platform; in other words, the first user's historical interaction data can exist on any type of functional platform; the feature representation obtained by performing feature extraction processing on the historical interaction data generated by the interaction between the first user and platform elements in an area other than the first functional platform is an extra-domain feature representation, and this embodiment is not limited to this.
[0081] Step 340: Obtain a mapping relation function corresponding to the cluster center, and obtain the first user's in-domain feature representation by mapping the out-of-domain feature representation according to the mapping relation function.
[0082] Here, the mapping relationship function indicates a mapping relationship of feature representations between the second function platform and the first function platform. The mapping relationship function corresponding to a cluster center is a mapping relationship function that matches the cluster center. The computer device can input the out-of-domain feature representation to the mapping relationship function and map it to obtain the in-domain feature representation of the first user output from the mapping relationship function.
[0083] In some embodiments, obtaining a mapping relation function corresponding to a cluster center and mapping the out-of-domain feature representation with the mapping relation function to obtain an in-domain feature representation of the first user includes: performing parameter substitution on a pre-generated parameter-containing mapping function based on the cluster center corresponding to the first user to obtain the mapping relation function corresponding to the cluster center; and mapping the out-of-domain feature representation with the mapping relation function to obtain an in-domain feature representation of the first user.
[0084] The computing device can obtain a mapping relation function corresponding to the cluster center by performing parameter substitution on the parameter-containing mapping function based on the cluster center corresponding to the first user, and can obtain an in-domain feature representation of the first user by mapping the out-of-domain feature representation using the mapping relation function.
[0085] In one embodiment, the step of obtaining a mapping relation function corresponding to the cluster center by performing parameter substitution on a pre-generated parameter-containing mapping function based on the cluster center corresponding to the first user includes the steps of obtaining a parameter-containing mapping function, wherein the parameter-containing mapping function includes designated parameter positions awaiting filling; and obtaining a mapping relation function corresponding to the cluster center by substituting the cluster center as a parameter into the designated parameter position, and matching the mapping relation function with the cluster center as a search keyword.
[0086] The computer device can obtain sample data in advance and train based on the sample data to determine a number of discrete cluster centers, determine a mapping relationship function corresponding to each cluster center, and extract parameter values from the mapping relationship function based on the configuration of the parameter-containing mapping function, i.e., the designated parameter positions waiting to be filled, thereby forming a mapping relationship between the preset cluster centers and the parameter values, so that the extracted parameter values correspond to the corresponding cluster centers.
[0087] Furthermore, the computer device can determine a parameter value to be replaced based on the cluster center corresponding to the first user and the predetermined mapping relationship, and can obtain a mapping relationship function corresponding to the cluster center by substituting the parameter value into the parameter-containing mapping function. Furthermore, the computer device can obtain and output an in-domain feature representation of the first user by inputting and mapping the out-of-domain feature representation into the mapping relationship function.
[0088] In another embodiment, the mapping relationship function may be a neural network model and the parameter-containing mapping function may be a neural network model with substitutable model parameters.
[0089] In one embodiment, the cluster center can be used as a search keyword to match the mapping relation function. Each mapping relation function corresponds to one Key value for indexing, and the computer device can use the current cluster center as a search keyword to match each target cluster center corresponding to the search key (Key). If the match is successful, the search value (Value) corresponding to the target cluster center becomes the mapping relation function corresponding to the current cluster center.
[0090] It should be particularly noted that the type of parameter-containing mapping function may be any type, and the method of performing parameter substitution on the parameter-containing mapping function based on the cluster centers may be any type, and this embodiment does not limit the same.
[0091] Step 350: Determine a target feature representation of the first user based on the in-domain feature representation and the first feature representation, determine target content matching the first user from a candidate content recommendation pool based on the target feature representation, and push the target content to the first user.
[0092] Here, the target feature representation is a feature representation determined based on the in-domain feature representation and the first feature representation, and is the basis for matching with content in the candidate content recommendation pool. The target content is content to be pushed to the first user.
[0093] The computing device can obtain a target feature representation for the first user by combining the in-domain feature representation with the first feature representation, obtain target content by matching the first user with a candidate content recommendation pool based on the target feature representation, and push the target content in the candidate content recommendation pool to the first user.
[0094] The intra-domain feature representation of the first user obtained in the above step 340 can represent the interaction behavior of the first user that may occur on the first function platform, where there is no historical interaction data of the first user on the first function platform. In other words, the intra-domain feature representation means mapping the features of the first user's interaction with platform elements on the second function platform onto the first function platform.
[0095] Optionally, the computing device can obtain a target feature representation for the first user by stitching together the in-domain feature representation and the first feature representation, where the target feature representation is for recommending personalized content to the first user.
[0096] In outline, as shown in FIG. 4, a first feature representation 402 and an out-of-domain feature representation 403 of a first user 401 are obtained, a graph is constructed, the first feature representation 402 and the out-of-domain feature representation 403 are represented in the form of a graph, the in-domain feature representation 404 of the first user 401 is obtained by mapping the out-of-domain feature representation 403 using a mapping function, a candidate content recommendation pool 405 is obtained, and a similarity matching result 406 is obtained by similarity matching the in-domain feature representation 404 with the content in the candidate content recommendation pool 405, and the contents with the top M similarity corresponding numerical values from the similarity matching result 406 are set as target content 407, and the target content 407 is recommended to the first user 401.
[0097] It should be particularly noted that the method for linking the intra-domain feature representation with the first feature representation may be arbitrary, the types and number of contents included in the candidate content recommendation pool may be arbitrary, the method for similarity matching the intra-domain feature representation with the contents in the candidate content recommendation pool may be arbitrary, and the number and types of target contents when selecting target content based on the similarity matching result may be arbitrary, and these are not limited in this embodiment.
[0098] To summarize, the method proposed in this application performs clustering analysis on all users on a first function platform to obtain the clusters to which each user belongs and the cluster centers corresponding to each user, and then obtains a personalized mapping relationship function based on the cluster centers. The personalized mapping relationship function enables a mapping process from out-of-domain feature representations to in-domain feature representations for different users, thereby improving the accuracy of the mapping results. A first feature representation of a first user and an out-of-domain feature representation obtained by performing feature extraction on the first user's historical interaction data on a second function platform are obtained, and a cluster center corresponding to the first user is found based on the first feature representation. A mapping relationship function corresponding to the first user is obtained based on the cluster centers corresponding to the first user. The out-of-domain feature representation of the first user is input into the mapping relationship function for mapping, thereby obtaining the in-domain feature representation of the first user. When historical interaction data exists for a first user only on the second functional platform but no historical interaction data exists on the first functional platform, the interaction features of the first user on the first functional platform can be obtained, and personalized content recommendations can be made to the first user on the first functional platform based on the first user's in-domain feature representation and the first feature representation, thereby solving the cold user problem and data sparseness problem, making the recommended content more consistent with the first user's true interests, improving the recommendation effect, and avoiding the waste of resources supporting the content push function.
[0099] In the method proposed in this embodiment, parameter substitution is performed on the parameter-containing mapping function, and the parameters in the parameter-containing mapping function are replaced with cluster centers corresponding to the first user to find a personalized mapping relationship function that meets the mapping requirements of the first user. Then, the out-of-domain feature representation of the first user is mapped using the mapping relationship function to obtain the in-domain feature representation of the first user. In this way, when there is no historical interaction data for the first user in the domain, the features of the first user in the domain can be understood, and feature transfer for the first user can be realized. Furthermore, the personalized mapping function can be used to perform feature mapping for different first users, which also improves the accuracy and efficiency of feature mapping, makes the targeted content pushed to the first user more tailored to the needs of the first user, and reduces the waste of resources supporting the content push function.
[0100] In the method proposed in this embodiment, attribute data of all second users in the first function platform is obtained, and feature extraction is performed to obtain second feature expressions that can represent each second user, and clustering analysis is performed on the second users based on the second feature expressions to generate multiple clusters, thereby quickly classifying the second users in the first function platform, each with a corresponding cluster center, and obtaining the cluster to which the first user belongs and its corresponding cluster center based on the similarity between the cluster center of the first feature expression of the first user and the first user, thereby obtaining highly accurate clustering analysis results, so that the targeted content pushed to the first users is more tailored to the needs of the first users, and reducing the waste of resources supporting the content push function.
[0101] When mapping the out-of-domain feature representation of a first user to the in-domain feature representation, it is necessary to filter a personalized mapping function suitable for the first user. As shown in FIG. 5, FIG. 5 illustrates a flowchart of a method for training a personalized mapping relation function proposed in an exemplary embodiment of the present application, which includes the following steps 510 to 560. Here, steps 510 to 550 can be a process of obtaining a parameter-containing mapping function. The parameter-containing mapping function includes designated parameter positions waiting to be filled.
[0102] Step 510: Obtain first historical interaction data of the sample user on the first functional platform, and perform feature extraction based on the first historical interaction data to obtain a sample domain feature representation of the sample user, and a sample cluster center corresponds to the sample user.
[0103] Here, a sample user corresponds to a sample cluster center.
[0104] The first functional platform includes at least one sample user, and there is interaction behavior between the sample user and platform elements in the first functional platform; in other words, there is historical interaction data of the sample user in the first functional platform.
[0105] In general, a feature extraction network is used to perform feature extraction on first historical interaction data of the sample user on a first functional platform to obtain an out-of-sample domain feature representation of the sample user.
[0106] Step 520: Obtain second historical interaction data of the sample user on the second functional platform, and perform feature extraction based on the second historical interaction data to obtain an out-of-sample domain feature representation of the sample user.
[0107] This is similar to step 510 described above.
[0108] Historical interaction data also exists for the sample user on both the first and second function platforms.
[0109] It is particularly noted that in some embodiments, the method of obtaining the in-domain feature representation and the out-of-domain feature representation by performing feature extraction on the sample user may be any method, including, but not limited to, the method using the feature extraction network described above. When using a feature extraction network to perform feature extraction on the historical interaction data of the sample user, the feature extraction network used may be any method, and this embodiment is not limited thereto.
[0110] Step 530: Obtain a candidate mapping function, and input the out-of-sample domain feature representation of the sample user into the candidate mapping function for mapping to obtain an in-sample domain mapping feature corresponding to the sample user.
[0111] A feature analysis is performed on the attribute data of the sample users to obtain sample feature expressions of the sample users. A clustering analysis is performed on the sample users based on the sample feature expressions to obtain multiple clusters.
[0112] Each sample user corresponds to its cluster, the central point of the cluster is the cluster center, and each cluster contains its cluster center.
[0113] The distance between the sample feature expression of the sample user and the cluster center is calculated, and the cluster center with the smallest distance between the sample feature expression and the cluster center is determined as the sample cluster center corresponding to the sample user.
[0114] A candidate mapping function is obtained. The candidate mapping function is a pre-defined function that has the ability to map the out-of-domain features of the sample user to the in-domain features. The in-domain mapping features obtained by inputting the sample out-of-domain feature representation of the sample user into the candidate mapping function and mapping them have low accuracy.
[0115] There is a difference between the in-domain mapping features and the in-domain feature representation of the sample user himself.
[0116] It should be particularly noted that the type of candidate mapping function may be arbitrary, and this embodiment does not limit the type.
[0117] Step 540: Obtain a reconstruction loss based on the sample user's intra-domain feature representation and the sample user's intra-domain mapping feature.
[0118] Based on the difference between the sample user's in-domain feature representation and the in-domain mapping feature, the reconstruction loss (L reconstruction ) to get the
[0119] In summary, the reconstruction loss can be obtained by using the mean squared error loss (Mean The MSE is used, in other words, the sum of squares of the distances between the sample user's in-domain feature representation and the sample user's in-domain mapping feature.
[0120] It is particularly noted that in some embodiments, the reconstruction loss may be obtained in any manner, including but not limited to the above-mentioned mean squared error loss method, which is not limited in this embodiment.
[0121] Step 550: Obtain mapping relation functions corresponding to the sample cluster centers by training candidate mapping functions based on the reconstruction loss.
[0122] By performing clustering analysis on the sample users, sample cluster centers corresponding to each sample user are obtained.
[0123] A target cluster corresponding to the same sample cluster center is obtained, and a sample user in the target cluster is selected to train a candidate mapping function.
[0124] The out-of-sample domain feature representation of the sample user is input into a candidate mapping function to obtain and output the in-domain mapping features of the sample user, and the candidate mapping function is trained based on the reconstruction loss between the in-domain mapping features and the sample user's in-domain feature representation. When the obtained candidate mapping function is used to perform feature mapping for all sample users belonging to the target cluster, the accuracy rate is high.
[0125] There is a correspondence between candidate mapping functions, or mapping relation functions, trained using sample users in different clusters and the sample cluster centers corresponding to the sample users used during training.
[0126] The mapping relation functions obtained by training each cluster are recorded in the form of a table as shown in Table 1 below.
[0127] [Table 1] Here, Value represents a different mapping relation function, and for each mapping relation function, a Key value is associated to represent the index corresponding to this mapping relation function.
[0128] A candidate mapping function is trained using sample users in the first cluster, where the cluster center of the first cluster is the first sample cluster center. The first mapping function obtained by the above training process is applied to the feature mapping of the first user corresponding to the first sample cluster center. The reconstruction loss ensures that the in-domain mapping feature obtained by the mapping is close to the original in-domain feature representation of the sample user. Training stops when the reconstruction loss meets any one of the following conditions:
[0129] (1) The reconstruction loss is lower than the preset threshold. (2) The reconstruction loss converges.
[0130] The parameter-containing mapping function obtained by loss training includes designated parameter positions waiting to be filled. If the contents filled in the designated parameter positions are different, the mapping features and mapping effects of the obtained parameter-containing mapping function will also be different. In other words, by adjusting the parameters at the designated parameter positions, a corresponding personalized parameter-containing mapping function can be obtained, and different parameter-containing mapping functions are applicable to different types of users.
[0131] It should be particularly noted that the method for training the parameter-containing mapping function based on the reconstruction loss may be arbitrary, and the conditions for determining whether to stop the training may be arbitrary, and these are not limited in this embodiment.
[0132] Step 560: The cluster centers are substituted as parameters into the designated parameter positions to obtain the mapping relation functions corresponding to the cluster centers.
[0133] Here, the cluster centers are used as search keywords to match the mapping relation functions.
[0134] In Table 1, each mapping relationship function corresponds to one Key value for indexing. The current cluster center is used as a search keyword to match with each of the target cluster centers corresponding to the Key values in Table 1. If the match is successful, the Value value corresponding to that target cluster center becomes the mapping relationship function corresponding to the current cluster center.
[0135] By performing parameter substitution operations on the parameter-containing mapping functions obtained by training in the above steps 510 to 550, different types of mapping relation functions can be obtained, and these different types of mapping relation functions form a mapping module.
[0136] Each cluster has a corresponding cluster center, and the cluster center of each cluster is substituted as a parameter into the parameter-containing mapping function to obtain a personalized mapping relationship function, and the mapping module contains as many mapping relationship functions as the number of cluster centers.
[0137] For the mapping relationship function corresponding to the cluster center, feature mapping can be performed on the out-of-domain feature representations of all users in the cluster to which the cluster center belongs, thereby obtaining the in-domain mapping features of these users. In other words, to obtain the in-domain features of a user on the first function platform, the cluster center of the cluster can be obtained based on the cluster in which the user is located, and then the mapping relationship function corresponding to the cluster center can be found from the mapping module using the cluster center as an index.
[0138] To summarize, the method proposed in this application obtains a personalized mapping relationship function based on cluster centers. The personalized mapping relationship function obtained by using cluster centers as parameters at specified positions of the candidate mapping function can realize a mapping process from out-of-domain feature representations to in-domain feature representations for different types of users, thereby improving the accuracy of the mapping results. The user's out-of-domain feature representation is input into the mapping relationship function for mapping, thereby obtaining the user's in-domain feature representation. When historical interaction data for a user exists only on the second function platform but not on the first function platform, the user's interaction features on the first function platform can be obtained, and personalized content recommendations can be made to the user on the first function platform based on the user's in-domain feature representation and the first feature representation. This solves the cold user problem and data sparseness problem, allows recommended content to be more in line with the user's true interests, improves recommendation effectiveness, and avoids wasting resources supporting the content push function.
[0139] In the method proposed in this embodiment, a plurality of sample users having historical interaction data on both the first and second functional platforms are acquired, and feature analysis is performed on the historical interaction data to acquire the in-domain feature representation of the sample users on the first functional platform and the out-of-domain feature representation of the sample users on the second functional platform. A candidate mapping function having a mapping function is pre-defined, and the out-of-domain feature representation is input into the candidate mapping function to acquire the mapped in-domain mapping features. The candidate mapping function is then trained based on the reconstruction loss between the in-domain mapping features and the in-domain feature representation, so that the in-domain mapping features are close to the true in-domain feature representation of the sample users, and a parameter-containing mapping function that performs accurate mapping is acquired, and the sample users' interest features in one domain can be transferred to another domain, thereby improving the accuracy and effectiveness of mapping.
[0140] In the method proposed in this embodiment, parameter substitution is performed on designated positions of the parameter-containing mapping function, and cluster centers are substituted as parameters into designated parameter positions to obtain personalized mapping relationship functions with individual mapping effects. When mapping different types of out-of-domain feature representations of users, the in-domain mapping features obtained are closer to the users' true in-domain feature representations, and can accurately represent the features of the users' interactions with platform elements in the first function platform. As a result, even if a user has no historical interaction data in the first function platform, the user's in-domain feature representation can be obtained, improving the accuracy of mapping and solving the cold user problem and data sparseness problem. When recommending content based on the in-domain mapping features, the recommended content is more consistent with the user's true interests, improving the recommendation effect and avoiding the waste of resources supporting the content push function.
[0141] The first functional platform includes multiple users, and performs clustering analysis on the first user and the second user on the platform to find the cluster to which each user belongs and obtain the corresponding cluster center. As shown in Figure 6, Figure 6 is a flowchart of the clustering analysis method proposed in an exemplary embodiment of the present application, and the method includes the following steps:
[0142] Step 610: Obtain clustering information, which is used to indicate the location information of the initial cluster centers.
[0143] Optionally, the method for obtaining the location information of the initial cluster center includes, but is not limited to, the following methods: 1. Perform random initialization; 2. Specify the location of the initial cluster center.
[0144] When performing clustering analysis based on the location information of initial cluster centers for all users in the first functional platform, the cluster centers are learned through batch training.
[0145] Batch training, also known as batch training, divides a complete set of training data into several batches for training, and for each batch, selects n_num(total data) / n_batch(batch) data from the data until training on the complete set of data is completed.
[0146] Schematically, the cluster center μ j is obtained by random initialization, where j is 1, 2, 3...K.
[0147] Here, the number of cluster centers is K, where K is a positive integer.
[0148] It should be particularly noted that the number of cluster centers corresponds to the number of clusters, and the number of cluster centers may be any specified value, and is not limited thereto in this embodiment.
[0149] Step 620: Obtain the similarity of the second feature representation with the initial cluster centers, and determine a first cluster distribution result based on the similarity between the second feature representation and the initial cluster centers, where the first cluster distribution result includes a feature distribution corresponding to each of the initial cluster centers.
[0150] Here, the first cluster distribution result includes a feature distribution corresponding to each initial cluster center.
[0151] In step 610, the initial cluster centers {μ j} j=1 k After obtaining the cluster centers, a clustering analysis is performed on the second users in the platform based on the initial cluster centers to find the clusters to which each user belongs.
[0152] Schematically, the Student's T distribution The similarity between the second user's second feature representation and the initial cluster center is obtained using T-distribution, and the probability that the second user belongs to a certain cluster is obtained based on the similarity. The cluster with the highest probability correspondence value and the initial cluster center are used as the second user's initial classification result, and they jointly form the first cluster distribution result.
[0153] In probability theory and statistics, the Student's T-distribution, or T-distribution, is used to estimate the mean of a population with a normal distribution and unknown variance from small samples. When the population variance is known (e.g., when the sample size is large enough), the normal distribution should be used to estimate the population mean.
[0154] Specifically, it is as shown in the following formula 1.
[0155]
number
[0156] In summary, taking the first second user as an example, the second feature representation corresponding to the first second user is h1, and the initial cluster center {μ j} j=1 k The similarity between the first and second users is calculated one by one, thereby obtaining a set of similarities array1[j] corresponding to the first and second users, where j is 1, 2, 3, . . . K.
[0157] All similarity values in the similarity group array1[j] are summed to obtain the similarity sum, and each similarity value in the similarity group array1[j] is divided by the similarity sum to obtain the probability q that the first second user belongs to each of the clusters. ij is obtained, and the cluster with the largest probability correspondence value is determined as the cluster corresponding to the first second user, and the initial cluster center corresponding to this cluster is determined as the initial cluster center corresponding to the first second user.
[0158] By repeatedly performing the above steps for each second user, the clusters to which each second user belongs are obtained, and these clusters jointly form the first cluster distribution result.
[0159] It is particularly noted that in some embodiments, the method for obtaining the similarity between the second feature representation of the second user and the initial cluster center may be any method, including but not limited to the Student's T-distribution method described above, and the method for obtaining the probability that each user belongs to a cluster may be any method, and this embodiment does not limit the method.
[0160] Step 630: Obtain a second cluster distribution result by performing a discrete analysis on the first cluster distribution result, and determine a plurality of clusters based on the second cluster distribution result, wherein the second cluster distribution result includes cluster centers corresponding to each of the second feature representations.
[0161] Here, the second cluster distribution result includes cluster centers corresponding to each of the second feature representations.
[0162] The reliability of the first cluster distribution result obtained in step 620 is low, and the probability that each second user belongs to the corresponding cluster is low. In order to obtain a sharper cluster distribution result, in other words, to achieve that each second feature representation of each second user is closer to the corresponding initial cluster center, it is necessary to set a target cluster distribution result with higher reliability, and through discrete analysis processing, it is possible to achieve that the first cluster distribution result is closer to the target cluster distribution result.
[0163] The step of performing a discrete analysis process on the first cluster distribution result includes the following steps.
[0164] (1) A discrete value corresponding to the i-th initial cluster center is obtained by performing a discrete analysis on the feature distribution corresponding to the i-th initial cluster center in the first cluster distribution result.
[0165] (2) Update the i-th initial cluster center based on the discrete value corresponding to the i-th initial cluster center to obtain a second cluster distribution result, and update the feature extraction network to extract the user's feature representation.
[0166] (3) Obtain multiple clusters based on the second cluster distribution result and the updated feature extraction network.
[0167] Schematically, this is shown in Equation 2 below.
[0168]
number
[0169] Schematically, the KL divergence (KL-Divergence) By using the divergence function, the first cluster distribution result is closer to the target cluster distribution result, as shown in Equation 3 below.
[0170]
number
[0171] Regarding the target cluster distribution result, i.e., the second cluster distribution result, after the second cluster distribution result is obtained in the above steps, multiple clusters are obtained based on the second cluster distribution result, and each cluster has its corresponding cluster center.
[0172] Schematically, as shown in FIG. 7, FIG. 7 is a schematic diagram illustrating obtaining a second cluster distribution result by performing a discrete analysis process on the first cluster distribution result.
[0173] The first cluster distribution result 701 includes clusters formed based on multiple initial cluster centers, and after performing a discrete analysis on the first cluster distribution result 701 using KL divergence 702, a more reliable second cluster distribution result 703 is obtained.
[0174] The first cluster distribution result 701 includes an initial cluster center 704 and a second feature representation 705 that belongs to the same cluster, and the distance between the initial cluster center 704 and the second feature representation 705 is large, so the formed clusters are dispersed.
[0175] The second cluster distribution result 703 includes a cluster center 706 and an updated second feature representation 707 that belongs to the same cluster, and the distance between the cluster center 706 and the updated second feature representation 707 is small, so the formed cluster is compact.
[0176] To summarize, the method proposed in this application performs clustering analysis on all users on a first function platform to obtain the clusters to which each user belongs and the cluster centers corresponding to each user, and then obtains a personalized mapping relationship function based on the cluster centers. The personalized mapping relationship function enables a mapping process from out-of-domain feature representations to in-domain feature representations for different users, thereby improving the accuracy of the mapping results. A first feature representation of a first user and an out-of-domain feature representation obtained by performing feature extraction on the first user's historical interaction data on a second function platform are obtained, and a cluster center corresponding to the first user is found based on the first feature representation. A mapping relationship function corresponding to the first user is obtained based on the cluster centers corresponding to the first user. The out-of-domain feature representation of the first user is input into the mapping relationship function for mapping, thereby obtaining the in-domain feature representation of the first user. Based on the first user's in-domain feature representation and the first feature representation, personalized content recommendation is performed for the first user on the first function platform, the cold user problem and data sparseness problem are solved, the recommended content is more consistent with the first user's true interests, the recommendation effect is improved, and the waste of resources supporting the content push function is avoided.
[0177] In the method proposed in this embodiment, the location information of the initial cluster centers is obtained by random initialization, and a clustering analysis is performed on all users in the first functional platform based on the initial cluster centers to obtain a first clustering analysis result. Then, a discrete analysis is performed on the first clustering analysis result to obtain a second cluster distribution result with higher reliability, and the clusters to which each user belongs and the corresponding cluster centers are found, thereby enabling accurate classification for all users. Furthermore, a personalized mapping function can be found based on the classification results to make the mapping results more accurate.
[0178] In the method proposed in this embodiment, a discrete analysis is performed on each cluster in the first cluster distribution result to obtain a discrete value corresponding to each initial cluster center, and the initial cluster centers are updated based on the discrete values to obtain a more reliable second cluster distribution result.Then, the feature extraction network is updated to obtain a more accurate second feature representation and the relationship between each second feature representation and the cluster to which it belongs.
[0179] When extracting a user's out-of-domain feature representation or in-domain feature representation based on the user's historical interaction data on any functional platform, a heterogeneous graph needs to be introduced to obtain the historical interaction data, and the user's in-domain or out-of-domain feature representation can be further extracted. As shown in FIG. 8, FIG. 8 is a flowchart of a method for obtaining a first user's out-of-domain feature representation. Specifically, the step of obtaining the first user's second historical interaction data on a second functional platform and performing feature extraction based on the historical interaction data to obtain the first user's out-of-domain feature representation includes the following steps:
[0180] Step 810: Obtain second historical interaction data of the first user on the second functional platform, and obtain a heterogeneous graph based on the historical interaction data, where the target heterogeneous graph representing the historical interaction relationship between the first user and the platform elements in the second functional platform includes multiple meta paths.
[0181] Here, the target heterogeneous graph representing the historical interaction relationship between the first user and the elements in the second function platform includes multiple meta-paths.
[0182] A heterogeneous graph is also called a heterogeneous network, in which the types of nodes and edges are not uniform but diverse.
[0183] A Meta-Path can be understood as a path that connects nodes of different types, and different Meta-Paths have different path types, and the so-called path types are usually represented by node type paths.
[0184] Schematically, as shown in Figure 9, Figure 9 is a schematic diagram of a heterogeneous graph.
[0185] In the heterogeneous graph 900, there is a target domain 910, a source domain 920, and a platform user 930.
[0186] In the present embodiment, the target domain 910 refers to a first functional platform, the source domain 920 refers to a second functional platform, the platform users 930 include a first user and a second user, and the first user is represented as a first user node 931 in the heterogeneous graph 900.
[0187] A plurality of first platform elements exist in the target domain 910, and in the heterogeneous graph 900, the first platform elements are represented as first element nodes 911. A plurality of second platform elements also exist in the source domain 920, and in the heterogeneous graph 900, the second platform elements are represented as second element nodes 921.
[0188] Here, the first element node 911, the second element node 921, and the first user node 931 are of different types.
[0189] Historical interaction data exists between the first user and the second platform element in the second functional platform, which is represented by a meta path in the heterogeneous graph 900. Specifically, a line connects the first user node 931 and the second element node 921, which indicates that an interaction relationship exists between the first user node 931 and the second element node 921. The first user node 931, the second element node 921, and the connecting line between them jointly constitute a meta path belonging to the heterogeneous graph 900 in which the first user is located.
[0190] Here, the meta-paths generated based on historical interaction data with the source domain 920 centered on the first user node 931 include, but are not limited to:
[0191] (1)u1-i2.
[0192] (2)u1-i2-u2.
[0193] (3)u1-i2-u2-i2-u3.
[0194] (4)u1-i2-u4.
[0195] (5)u1-i2-u2-i2-u5.
[0196] Here, u1 denotes the first user node 931, i2 denotes the second element node 921 in the source domain 920, and u2, u3, u4, and u5 denote user nodes corresponding to the second user among the platform users 930.
[0197] Here, i2 is the primary neighboring node of u1, and u2 and u4 are the secondary neighboring nodes of u1. By analogy, if the number of nodes u1 passes through to reach the target node is N, the target node is u1's (N-1)th neighboring node. All target nodes that can be reached via the meta path centered on u1 are u1's neighboring nodes. The target node is a specific node.
[0198] In the heterogeneous graph 900, in addition to the meta path centered on the first user node 931, it also includes a meta path centered on a user node corresponding to a second user among the platform users 930, and the meta paths centered on the first user node 931 jointly constitute a target heterogeneous graph; in other words, the target heterogeneous graph is a part of the heterogeneous graph 900.
[0199] It should be particularly noted that the number and types of meta paths included in the heterogeneous graph may be arbitrary, the number of nodes and edges included in the heterogeneous graph may be arbitrary, the types of nodes may be arbitrary, the number of nodes and edges included in the meta path may be arbitrary, and the degree and number of adjacent nodes of the central node in the meta path may be arbitrary, and these are not limited in this embodiment.
[0200] In some embodiments, the number and types of user nodes included in the target heterogeneous graph may be arbitrary, the number and types of source domains may be arbitrary, the number and types of target domains may be arbitrary, platforms available as source domains include, but are not limited to, a second functional platform, the number and types of first element nodes in the first functional platform may be arbitrary, and the number and types of second element nodes in the second functional platform may be arbitrary, and these are not limited in this embodiment.
[0201] Step 820: Extract a path feature representation corresponding to the meta-path in the heterogeneous graph.
[0202] We extract path feature representations of meta-paths and perform feature extraction for each meta-path in the target heterogeneous graph using a graph attention network as the aggregation mechanism.
[0203] Graph Neural Networks A neural network (GNN) is a general term for algorithms that use neural networks to learn graph-structured data, extract and discover features and patterns in the graph-structured data, and meet the needs of graph learning tasks such as clustering, classification, prediction, segmentation, and generation.
[0204] In this embodiment, analysis of the target heterogeneous graph is performed using a graph neural network.
[0205] Graph Attention Network The Graph Attention Network (GAT) is a type of graph neural network that uses a method similar to self-attention in a transformer to calculate the attention for each of a node's neighbors in a graph, and then uses the series connection of the node's own features and the attention features to define the node's features, and uses this to perform tasks such as node classification.
[0206] The second historical interaction data of the first user on the second functional platform is represented in the form of meta-paths in the target heterogeneous graph, and each meta-path has semantic information to indicate the characteristics of the first user's interactions on the second functional platform and their interests and preferences.
[0207] There are different types of meta-paths in the target heterogeneous graph, and for different types of meta-paths, we capture the rich semantic information contained in each meta-path by convolution of the heterogeneous graph, and add a node-level attention mechanism to distinguish the importance of each neighboring node to the central node (first user node).
[0208] In some embodiments, extracting a path feature representation corresponding to a meta path in the heterogeneous graph includes obtaining node attentions for each path node in the meta path, where the path node represents a platform element that has a historical interaction relationship with the first user; and performing an aggregation process on the node attentions to obtain a path feature representation of the meta path.
[0209] Schematically, as shown in Fig. 10, Fig. 10 is a schematic diagram illustrating the convolution of heterogeneous graphs based on meta-paths.
[0210] With the first user node 1000 corresponding to the first user as the center, the first adjacent node 1010 and the second adjacent node 1020 of the first user node 1000 in the meta-path are acquired in sequence.
[0211] The order of obtaining the node-level attention of each neighbor node is the reverse of the order of obtaining the neighbor nodes.
[0212] The graph attention network 1030 first obtains the node attention of the second-degree neighboring node 1020, then obtains the node attention of the first-degree neighboring node 1010, and finally obtains the node attention of the first user node 1000.
[0213] After obtaining the node attention of all nodes, an aggregation process is first performed on the node attention of the secondary adjacent node 1020 to obtain the embedding of the primary adjacent node 1010, and then an aggregation process is performed on the node attention of the primary adjacent node 1010 to obtain the embedding of the first user node 1000.
[0214] Here, each of the neighboring nodes (first-order neighboring node 1010 and second-order neighboring node 1020) has a different degree of importance to the central node (first user node 1000). After aggregating the node attentions of each neighboring node, a node representation is finally formed, specifically as shown in Equation 4 below.
[0215]
number
[0216] Each meta-path has multiple nodes, and by aggregating all the node expressions on this meta-path so that they correspond to multiple node expressions, we obtain the path feature expression of this meta-path, which is specifically shown in Equation 5 below.
[0217]
number
[0218] It should be noted that although the above examples relate only to first-order and second-order neighboring nodes, in some embodiments, the node degree of the meta-path may be arbitrary, and when performing attention analysis on neighboring nodes to obtain node attention, attention analysis may be performed only on specified neighboring nodes or on all neighboring nodes, and the method used to perform attention analysis to obtain node attention may be arbitrary, including but not limited to the graph attention network method described above. In this embodiment, these are not limited thereto.
[0219] Step 830: Obtain the first user's out-of-domain feature representation by aggregating the path feature representations corresponding to the meta-path.
[0220] The meta path obtained from the second historical interaction data of the first user on the second functional platform is aggregated to obtain an out-of-domain feature representation of the first user. The out-of-domain refers to a region other than the source domain, i.e., the first functional platform. In some embodiments, the out-of-domain may be a region of any functional platform, provided that the source domain contains historical interaction data of the first user, which reflects the interaction characteristics, interests, and preferences of the first user on the source domain.
[0221] The number of meta paths included in the target heterogeneous graph corresponding to the first user is at least one, and by using the method of step 820 described above, feature extraction is performed by convolving the heterogeneous graph based on the meta paths for each meta path to obtain multiple path feature representations, and after performing an average pooling process on the path feature representations of the multiple meta paths, the feature representation of the first user on the second function platform, i.e., the out-of-domain feature representation of the first user, is obtained.
[0222] Here, the concept of pooling comes from the visual mechanism and is a process of information abstraction. The essence of pooling is sampling, and the pooling layer extracts the input feature The calculation speed can be increased by using some method to reduce the dimensions of the map and compress it.
[0223] A commonly used pooling process is Max Pooling. Examples include average pooling and mean pooling.
[0224] Here, average pooling can be understood as finding the average value of the content input to the pooling layer.
[0225] In general, assume that the number of path feature representations input to the pooling layer is 100, represented in the form of a 10x10 grid, and each path feature representation corresponds to one of the grids. The 10x10 grid is compressed into a larger 2x2 grid, that is, the 100 grids are divided into four groups, each containing 25 grids. The average value of the path feature representations in the grids in each group is taken, and the average value is used to represent the path feature representation corresponding to each larger grid. This process is called average pooling.
[0226] It is particularly noted that in steps 810 to 830, the first user is taken as an example to obtain the out-of-domain feature representation of the first user. In some embodiments, if the first user's historical interaction data exists in another domain, i.e., on another function platform, the method of steps 810 to 830 described above can also be used to obtain the out-of-domain feature representation or the in-domain feature representation of the first user on another function platform.
[0227] Any domain can be used as the target domain, and any domain can be used as the source domain. The methods for obtaining the in-domain feature representation and the out-of-domain feature representation are the same and are applied to each user, including but not limited to the first user and the second user.
[0228] Whether it is an in-domain feature representation or an out-of-domain feature representation, it is intended to represent the interest features and interaction features of the current user in a certain domain. Typically, a domain with sparse or no historical interaction data with the current user is used as the target domain, while a domain with some or a large amount of historical interaction data is used as the source domain.
[0229] It is particularly noted that the content recommendation method proposed in this application includes the following three parts:
[0230] (1) A learning process for content recommendation to sample users in a target domain, where the recommendation loss (L rec ) related to, (2) A learning process for clustering based on sample feature representations of sample users, where the clustering loss (L clustering ) related to, (3) A learning process in which the sample out-of-domain feature representation of the sample user is transformed into the in-domain mapping feature by the mapping relation function, and the in-domain mapping feature is approximated to the in-domain feature representation, and the reconstruction loss (L reconstruction ) related to.
[0231] Here, the learning process of making content recommendations to sample users is related to the personalized recommendation module.
[0232] In some embodiments, before making content recommendations to the first user based on the similarity matching result, it is necessary to train the personalized recommendation module based on the loss between the recommended target content and the content that the user actually interests, as shown in the following Equation 6:
[0233]
number
[0234] By training the personalized recommendation mechanism based on the recommendation loss, when similarity matching is performed with elements in a candidate content recommendation pool based on the first user's in-domain feature representation, the similarity matching result accurately represents the content that the first user is truly interested in, and content recommendations can be made to the first user.
[0235] Alternatively, training stops when the recommendation loss meets any one of the following conditions:
[0236] (1) The reconstruction loss is lower than the preset threshold, and (2) the reconstruction loss converges.
[0237] The above three stages adopt a joint training method, in other words, training each process based on recommendation loss, clustering loss, and reconstruction loss is synchronous.
[0238] It is particularly noted that the method for training the personalized recommendation module based on the recommendation loss may be arbitrary, and the conditions for determining whether to stop training may be arbitrary, and these are not limited in this embodiment.
[0239] To summarize, the method proposed in this application represents the historical interaction data of the first user on the second functional platform in the form of a heterogeneous graph, thereby enabling intuitive observation of the interaction features of the first user on the second functional platform, represents each historical interaction data by a meta-path in the heterogeneous graph, obtains the first user's interests and preferences on the second functional platform based on the path feature representation of the meta-path, and further obtains the first user's out-of-domain feature representation, thereby providing a solid basis for feature mapping and improving the accuracy of feature transfer and the effectiveness of personalized content recommendation for the first user by obtaining the in-domain feature representation based on the out-of-domain feature representation.
[0240] In the method proposed in this embodiment, a target heterogeneous graph is obtained based on the second historical interaction data of the first user on the second functional platform, and the target heterogeneous graph includes multiple meta paths, which can intuitively and concisely represent the historical interaction relationships of the first user with elements in the second functional platform. After extracting path feature representations corresponding to the meta paths in the target heterogeneous graph and then performing an aggregation process on the path feature representations corresponding to the meta paths, the out-of-domain feature representation of the first user obtained has high accuracy.
[0241] In the method proposed in this embodiment, attention analysis is performed on the path nodes of each meta-path in the heterogeneous graph using a graph attention network to obtain the attention representation of each path node, and the importance of each path node relative to the central node is obtained based on the attention representation of the path nodes. The node attention of each path node in the meta-path is then aggregated to obtain the path feature representation of the entire meta-path, which can understand the interaction characteristics of the first user on the second function platform and the interests and preferences expressed by the first user on the second function platform. Furthermore, the out-of-domain feature representation obtained from the path feature representation of the meta-path can more accurately reflect the interest characteristics of the first user on the second function platform.
[0242] 11 is a block diagram of a content recommendation device proposed in an exemplary embodiment of the present application. As shown in FIG. 11, the device includes: an extraction module 1110 configured to obtain attribute data of a first user on a first functional platform, and perform feature extraction based on the attribute data to obtain a first feature representation of the first user; a clustering analysis module 1120 configured to obtain a second feature representation of a second user in the first function platform, and perform clustering analysis on the first feature representation and the second feature representation to obtain cluster centers corresponding to the first user; The extraction module 1110 is further configured to obtain second historical interaction data of the first user on the second function platform, and perform feature extraction based on the second historical interaction data to obtain an out-of-domain feature representation of the first user; Such a device comprises: an acquiring module 1130 configured to acquire a mapping relationship function corresponding to a cluster center, and acquire an in-domain feature representation of the first user by mapping the out-of-domain feature representation with the mapping relationship function, where the mapping relationship function indicates a mapping relationship of the feature representation between the second function platform and the first function platform; and a recommendation module 1140 configured to determine a target feature representation for the first user based on the in-domain feature representation and the first feature representation, determine target content matching the first user from a candidate content recommendation pool based on the target feature representation, and push the target content to the first user.
[0243] In one alternative embodiment, as shown in FIG. 12, the acquisition module 1130: a parameter substitution unit 1131 configured to perform parameter substitution on the pre-generated parameter-containing mapping function according to the cluster center corresponding to the first user to obtain a mapping relation function corresponding to the cluster center; and a mapping unit 1132 configured to obtain an in-domain feature representation of the first user by mapping the out-of-domain feature representation with a mapping relation function.
[0244] In an alternative embodiment, the parameter substitution unit 1131 is further configured to: obtain a parameter-containing mapping function, where the parameter-containing mapping function includes a designated parameter position waiting to be filled; obtain a mapping relation function corresponding to the cluster center by substituting the cluster center as a parameter into the designated parameter position; and match the mapping relation function with the cluster center as a search keyword.
[0245] In an alternative embodiment, the acquisition module 1130 is further configured to: acquire first historical interaction data of a sample user on a first functional platform, and perform feature extraction based on the first historical interaction data to acquire an in-sample domain feature representation of the sample user, where a sample cluster center corresponds to the sample user; acquire second historical interaction data of the sample user on a second functional platform, and perform feature extraction based on the second historical interaction data to acquire an out-of-sample domain feature representation of the sample user; acquire a candidate mapping function, and input the out-of-sample domain feature representation of the sample user into the candidate mapping function for mapping, thereby acquiring an in-sample domain mapping feature corresponding to the sample user; acquire a reconstruction loss based on the in-sample domain feature representation of the sample user and the in-sample domain mapping feature; train the candidate mapping function based on the reconstruction loss to acquire a mapping relationship function corresponding to the sample cluster center.
[0246] In one alternative embodiment, the clustering analysis module 1120 is further configured to: obtain attribute data of a second user in the first functional platform, and perform feature extraction based on the attribute data of the second user to obtain a second feature representation of the second user; perform clustering analysis based on the second feature representation of the second user to obtain multiple clusters, each of which includes a cluster center; obtain a similarity between the first feature representation and the cluster center, and determine a cluster center corresponding to the first user based on the similarity.
[0247] In one alternative embodiment, the clustering analysis module 1120 is further configured to: obtain clustering information, where the clustering information is used to indicate location information of initial cluster centers; obtain similarities of second feature representations to the initial cluster centers; determine a first cluster distribution result based on the similarities of the second feature representations to the initial cluster centers, where the first cluster distribution result includes feature distributions corresponding to each of the initial cluster centers; obtain a second cluster distribution result by performing a discrete analysis on the first cluster distribution result; and determine a plurality of clusters based on the second cluster distribution result, where the second cluster distribution result includes cluster centers corresponding to each of the second feature representations.
[0248] In one alternative embodiment, the clustering analysis module 1120 is further configured to: obtain a discrete value corresponding to the i-th initial cluster center by performing a discrete analysis on a feature distribution corresponding to the i-th initial cluster center in the first cluster distribution result; obtain a second cluster distribution result by updating the i-th initial cluster center based on the discrete value corresponding to the i-th initial cluster center, and update a feature extraction network for extracting user feature representations; and obtain multiple clusters based on the second cluster distribution result and the updated feature extraction network.
[0249] In one alternative embodiment, the clustering analysis module 1120 is further configured to: calculate a distance between the first feature representation and each of the cluster centers, and determine the cluster center having the smallest distance between the first feature representation and the cluster center corresponding to the first user.
[0250] In one alternative embodiment, the clustering analysis module 1120 is further configured to: calculate a similarity of the first feature representation with each of the cluster centers; determine a probability that the first user belongs to each of the clusters based on the similarity; filter the maximum probability from the determined probabilities, and determine a cluster center corresponding to the first user based on the maximum probability.
[0251] In an alternative embodiment, the extraction module 1110 is further configured to: obtain second historical interaction data of the first user on a second functional platform; obtain a heterogeneous graph based on the historical interaction data, where the target heterogeneous graph representing historical interaction relationships between the first user and platform elements in the second functional platform includes multiple meta paths; extract path feature representations corresponding to the meta paths in the heterogeneous graph; and obtain an out-of-domain feature representation of the first user by aggregating the path feature representations corresponding to the meta paths.
[0252] In an alternative embodiment, the extraction module 1110 is further configured to: obtain node attentions for each path node in the meta path, where the path node represents a platform element that has a historical interaction relationship with the first user; and perform an aggregation process on the node attentions to obtain a path feature representation of the meta path.
[0253] To summarize, the device proposed in this embodiment performs clustering analysis on all users on the first function platform to obtain the clusters to which each user belongs and the cluster centers corresponding to each user, and then obtains a personalized mapping relationship function based on the cluster centers. The personalized mapping relationship function enables a mapping process from out-of-domain feature representations to in-domain feature representations for different users, thereby improving the accuracy of the mapping results. The out-of-domain feature representation obtained by performing feature extraction on at least one of the first feature representation and the second feature representation of the first user and the first user's historical interaction data on the second function platform is obtained. A cluster center corresponding to the first user is found based on the first feature representation and the second feature representation, and a mapping relationship function corresponding to the first user is obtained based on the cluster centers corresponding to the first user. The out-of-domain feature representation of the first user is input into the mapping relationship function for mapping, thereby obtaining the in-domain feature representation of the first user. When historical interaction data exists for a first user only on the second functional platform but no historical interaction data exists on the first functional platform, the interaction features of the first user on the first functional platform can be obtained, and personalized content recommendations can be made to the first user on the first functional platform based on the first user's in-domain feature representation and the first feature representation, thereby solving the cold user problem and data sparseness problem, making the recommended content more consistent with the first user's true interests, improving the recommendation effect, and avoiding the waste of resources supporting the content push function.
[0254] It is particularly important to note that although the content recommendation device proposed in the above-mentioned embodiments has been described using only the functional modules divided as described above as examples, in actual applications, the above-mentioned functions can be allocated to different functional modules as needed to achieve them; in other words, the internal structure of the device can be divided into different functional modules to achieve all or part of the functions described above.
[0255] 13 is a block diagram of a computer device 1300 proposed in an exemplary embodiment of the present application. The computer device 1300 may be a laptop or desktop computer. The computer device 1300 may also be called a user device, a mobile terminal, a laptop terminal, a desktop terminal, or the like.
[0256] The computing device 1300 typically includes a processor 1301 and a memory 1302 .
[0257] The processor 1301 may include one or more processing cores, and may be, for example, a 4-core processor, an 8-core processor, etc. The processor 1301 may include a DSP (Digital Signal Processor). Signal Processing, FPGA (Field-Programmable Gate Array), PLA (Programmable The processor 1301 may include a main processor and a coprocessor, the main processor being a processor for processing data in an awake state, and a CPU (Central Processing Unit). In some embodiments, the processor 1301 is a GPU (Graphics Processing Unit), also known as a central processor, and is a low-power processor for processing data while the coprocessor is in standby mode. In some embodiments, the processor 1301 may be integrated with an Artificial Intelligence (AI) Processing Unit (GPU), which performs the rendering and drawing of content to be displayed on a display screen. The AI processor may also include an artificial intelligence (AI) processor that handles computational operations related to machine learning.
[0258] The memory 1302 may include one or more computer-readable storage media, which may be non-transitory. The memory 1302 may include high-speed random access memory, non-volatile memory, such as one or more magnetic disk storage devices, flash memory storage devices, etc. In some embodiments, the non-transitory computer-readable storage media in the memory 1302 is configured to store at least one instruction that, when executed by the processor 1301, results in the content recommendation method proposed in the method embodiments of the present application.
[0259] In some embodiments, computing device 1300 further includes other components. Those skilled in the art will appreciate that the configuration shown in Figure 13 is not intended to limit computing device 1300, and that computing device 1300 may include more or fewer components than shown, combine some components, or use different component arrangements.
[0260] In a further embodiment of the present application, a computing device is proposed, including a processor and a memory, wherein the memory stores at least one instruction, computer-readable instruction, code set or instruction set, and when the at least one instruction, computer-readable instruction, code set or instruction set is loaded and executed by the processor, the content recommendation method proposed in each of the above method embodiments is realized.
[0261] In a further embodiment of the present application, a computer-readable storage medium is proposed, which stores at least one instruction, computer-readable instruction, code set or instruction set, and when the at least one instruction, computer-readable instruction, code set or instruction set is loaded and executed by a processor, the content recommendation method proposed in each of the above method embodiments is realized.
[0262] In a further embodiment of the present application, a computer program product or a computer program is proposed, which includes computer instructions stored in a computer-readable storage medium, and when a processor of a computing device reads and executes the computer instructions from the computer-readable storage medium, the computing device performs the content recommendation method according to any one of the above embodiments.
[0263] Optionally, such computer readable storage medium may include read only memory (ROM) Only Memory), Random Access Memory (RAM), Solid State Hard Disk (SSD) Examples of random access memories include resistive random access memories (ReRAMs, Resistance Random Access Memory). Random Access Memory (DRAM), Dynamic Random Access Memory The numbers of the above-mentioned embodiments of the present application are merely for the purpose of explanation and do not represent the superiority or inferiority of the embodiments.
[0264] It should be understood by those skilled in the art that all or part of the steps in the above-described embodiments may be achieved by hardware, or related hardware may be instructed to achieve the steps by a program, and the program may be stored in a computer-readable storage medium, and the above-described storage medium may be a read-only memory, a magnetic disk, an optical disk, etc.
[0265] The above description is merely a selection example of the present application and does not limit the present application. Various amendments, equivalent replacements, improvements, etc. made within the scope of the present application without departing from the spirit and principles of the present application are all intended to be included in the scope of protection of the present application.
Claims
1. 1. A content recommendation method executed by a computing device, comprising: acquiring attribute data of a first user on a first function platform, and performing feature extraction based on the attribute data to obtain a first feature representation of the first user; obtaining a second feature representation of a second user on the first function platform, and performing clustering analysis on the first feature representation and the second feature representation to obtain a cluster center corresponding to the first user; Obtaining second historical interaction data of the first user on a second function platform, and performing feature extraction based on the second historical interaction data to obtain an out-of-domain feature representation of the first user; obtaining a mapping relationship function corresponding to the cluster center, and obtaining an in-domain feature representation of the first user by mapping the out-of-domain feature representation with the mapping relationship function, wherein the mapping relationship function indicates a mapping relationship between feature representations of the second function platform and the first function platform; determining a target feature representation for the first user based on the in-domain feature representation and the first feature representation, determining target content matching the first user from a candidate content recommendation pool based on the target feature representation, and pushing the target content to the first user.
2. obtaining a mapping relation function corresponding to the cluster center and mapping the out-of-domain feature representation by the mapping relation function to obtain an in-domain feature representation of the first user; performing parameter substitution on a pre-generated parameter-containing mapping function based on the cluster center corresponding to the first user to obtain a mapping relation function corresponding to the cluster center; and obtaining the in-domain feature representation of the first user by mapping the out-of-domain feature representation through the mapping relation function.
3. The step of obtaining a mapping relation function corresponding to the cluster center by performing parameter substitution on a pre-generated parameter-containing mapping function based on the cluster center corresponding to the first user includes: obtaining a parameter-containing mapping function, the parameter-containing mapping function including designated parameter positions waiting to be filled; 3. The method of claim 2, further comprising: substituting the cluster centers as parameters into the designated parameter positions to obtain mapping relation functions corresponding to the cluster centers; and matching the mapping relation functions with the cluster centers as search keywords.
4. Obtaining first historical interaction data of a sample user on the first functional platform, and performing feature extraction based on the first historical interaction data to obtain a sample domain feature representation of the sample user, wherein a sample cluster center corresponds to the sample user; obtaining second historical interaction data of the sample user on the second function platform, and performing feature extraction based on the second historical interaction data to obtain an out-of-sample domain feature representation of the sample user; obtaining a candidate mapping function, and inputting the out-of-sample domain feature representation of the sample user into the candidate mapping function for mapping to obtain an in-sample domain mapping feature corresponding to the sample user; obtaining a reconstruction loss based on the sample user's intra-domain feature representation and the sample domain mapping feature; The method of claim 2 or 3, further comprising: obtaining the mapping relation functions corresponding to the sample cluster centers by training the candidate mapping functions based on the reconstruction loss.
5. The step of obtaining a second feature representation of a second user on the first function platform and performing a clustering analysis on the first feature representation and the second feature representation to obtain a cluster center corresponding to the first user includes: acquiring attribute data of a second user in the first function platform, and performing feature extraction based on the attribute data of the second user to acquire the second feature representation of the second user; performing a clustering analysis based on the second feature representation on the second user to obtain a plurality of clusters, each of the clusters including a cluster center; The method of claim 1 , further comprising: obtaining a similarity between the first feature representation and the cluster center; and determining the cluster center corresponding to the first user based on the similarity.
6. The step of acquiring a plurality of clusters by performing a clustering analysis based on the second feature representation on the second user includes: obtaining clustering information, the clustering information being used to indicate location information of initial cluster centers; obtaining a similarity between the second feature representation and the initial cluster center; determining a first cluster distribution result based on the similarity of the second feature representation to the initial cluster centers, the first cluster distribution result including a feature distribution corresponding to each of the initial cluster centers; 6. The method of claim 5, further comprising: a step of obtaining a second cluster distribution result by performing a discrete analysis on the first cluster distribution result; and determining a plurality of clusters based on the second cluster distribution result, wherein the second cluster distribution result includes the cluster centers corresponding to each of the second feature representations.
7. The step of obtaining a second cluster distribution result by performing a discrete analysis on the first cluster distribution result and determining a plurality of clusters based on the second cluster distribution result includes: performing a discrete analysis on a feature distribution corresponding to an i-th initial cluster center in the first cluster distribution result to obtain a discrete value corresponding to the i-th initial cluster center; updating the i-th initial cluster center based on the discrete value corresponding to the i-th initial cluster center to obtain the second cluster distribution result, and updating a feature extraction network to extract user feature representations; and obtaining a plurality of clusters based on the second cluster distribution result and an updated feature extraction network.
8. The step of obtaining a similarity between the first feature representation and the cluster center and determining the cluster center corresponding to the first user based on the similarity includes:
6. The method of claim 5, further comprising the step of calculating a distance between the first feature representation and each of the cluster centers, and determining the cluster center with the smallest distance between the first feature representation and each of the cluster centers as the cluster center corresponding to the first user.
9. The step of obtaining a similarity between the first feature representation and the cluster center and determining the cluster center corresponding to the first user based on the similarity includes: calculating a similarity between the first feature representation and each of the cluster centers; determining a probability that the first user belongs to each of the clusters based on the similarity; and filtering a maximum probability from the determined probabilities and determining the cluster center corresponding to the first user based on the maximum probability.
10. The step of obtaining second historical interaction data of the first user on a second function platform and performing feature extraction based on the second historical interaction data to obtain an out-of-domain feature representation of the first user includes: Obtaining second historical interaction data of the first user on a second function platform, and obtaining a heterogeneous graph based on the second historical interaction data, wherein the heterogeneous graph representing historical interaction relationships between the first user and platform elements in the second function platform includes a plurality of meta paths; extracting a path feature representation corresponding to a meta-path in the heterogeneous graph; The method of claim 1 , further comprising: aggregating path feature representations corresponding to the meta-paths to obtain an out-of-domain feature representation of the first user.
11. The step of extracting a path feature representation corresponding to a meta-path in the heterogeneous graph comprises: obtaining node attention for each path node in the meta path, the path node representing the platform element with which a historical interaction relationship with the first user exists; and performing an aggregation process on the node attentions to obtain a path feature representation of the meta path.
12. A content recommendation device, an extraction module configured to acquire attribute data of a first user on a first function platform, and perform feature extraction based on the attribute data to acquire a first feature representation of the first user; a clustering analysis module configured to obtain a second feature representation of a second user on the first function platform, and perform clustering analysis on the first feature representation and the second feature representation to obtain a cluster center corresponding to the first user; The extraction module is further configured to obtain second historical interaction data of the first user on a second function platform, and perform feature extraction based on the second historical interaction data to obtain an out-of-domain feature representation of the first user; The content recommendation device an acquisition module configured to acquire a mapping relationship function corresponding to the cluster center, and to acquire an in-domain feature representation of the first user by mapping the out-of-domain feature representation with the mapping relationship function, wherein the mapping relationship function indicates a mapping relationship of feature representations between the second function platform and the first function platform; The device further includes a recommendation module configured to determine a target feature representation for the first user based on the in-domain feature representation and the first feature representation, determine target content matching the first user from a candidate content recommendation pool based on the target feature representation, and push the target content to the first user.
13. A computing device including a processor and a memory, A computer device, wherein the memory stores computer-readable instructions, and when the computer-readable instructions are loaded and executed by the processor, the content recommendation method according to any one of claims 1 to 3 is implemented.
14. A computer program product that, when loaded and executed by a processor, causes the computer program product to implement the content recommendation method according to any one of claims 1 to 3.
Citation Information
Patent Citations
Cross-platform theme association method, cross-platform theme association device and equipment thereof
CN107341222A
Recommendation generation method, program, and server device
JP2018018504A
Personalized products recommendation using deep learning
JP2018181326A
Information processing system, information processing method, and recording medium
JP2021193469A