A method for determining content joint recommendation and related device
The encryption matrix of different content modules is decrypted through a third-party confidentiality sharing mechanism, and the parameter matrix is trained, which solves the data privacy and security issues between content modules and improves the content recommendation effect.
Patent Information
- Application Number
- CN202211057054.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-30
- Publication Date
- 2025-08-26
- Estimated Expiration
- 2042-08-30
AI Technical Summary
Due to data privacy and security issues, local behavioral data cannot be interacted with between different content modules, resulting in poor content recommendation results.
A third-party confidentiality sharing mechanism is adopted to decrypt and integrate the encryption matrix of both parties of different content modules, train their parameter matrix, and complete the behavior prediction of each content module to determine the joint recommended content.
On the premise of ensuring data privacy and security, the content recommendation effect of different content modules has been improved.
Smart Images

Figure CN117009634B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data processing, and in particular to a method and related apparatus for determining content joint recommendation. Background Art
[0002] Currently, applications installed on terminal devices typically include multiple content modules, each of which provides multiple pieces of content. When recommending content provided by a content module, in addition to the entry data collected by the application, the content module also considers local user behavior data collected by the content module, such as clicks, ratings, and consumption of multiple pieces of content.
[0003] Typically, among the local behavioral data of multiple users for multiple contents collected by the content module, some users have no behavioral data for some contents. The user-based collaborative filtering algorithm and the content-based collaborative filtering algorithm are used to fill in the missing behavioral data to recommend content to users.
[0004] In actual applications, when the users of different content modules in an application are the same, joint content recommendation by different content modules can help improve the content recommendation effect; however, considering the data privacy and security issues of different content modules, different content modules cannot exchange their own collected, local behavioral data of multiple users for multiple contents, and cannot achieve joint content recommendation, resulting in poor content recommendation effect. Summary of the Invention
[0005] In order to solve the above technical problems, the present application provides a method and related devices for determining joint content recommendation. Different content modules do not need to interact with each other's local behavior matrices to ensure data privacy and security. A third-party confidential sharing mechanism is used to fuse the local behavior matrices of different content modules to train their parameter matrices, complete the behavior prediction of each content module, and determine the joint recommendation content of different content modules, thereby jointly improving the content recommendation effect of different content modules.
[0006] The embodiments of this application disclose the following technical solutions:
[0007] In one aspect, the present application provides a method for determining content joint recommendation, the method comprising:
[0008] Obtaining a first encryption matrix, a first object matrix, and a first content matrix sent by a first content module, and a second encryption matrix, a second object matrix, and a second content matrix sent by a second content module; the first encryption matrix is an encryption matrix of a first behavior matrix of an object set for a first content set, and the first object matrix and the first content matrix are parameter matrices of the first behavior matrix; the second encryption matrix is an encryption matrix of a second behavior matrix of a second content set for an object set, and the second object matrix and the second content matrix are parameter matrices of the second behavior matrix;
[0009] Decrypting and fusing the first encryption matrix and the second encryption matrix to obtain a fused behavior matrix of the first behavior matrix and the second behavior matrix;
[0010] Iteratively training the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to a matrix relationship between the parameter matrix and the fused behavior matrix to obtain a first training object matrix, a first training content matrix, a second training object matrix, and a second training content matrix;
[0011] Performing behavior prediction based on the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix to obtain a first target behavior matrix for the object set with respect to the first content set and a second target behavior matrix for the object set with respect to the second content set;
[0012] For any target object in the object set, first target content and second target content jointly recommended to the target object are determined from the first content set and the second content set according to the first target behavior matrix and the second target behavior matrix.
[0013] On the other hand, the present application provides a determination device for content joint recommendation, the device comprising: an acquisition unit, a fusion unit, a training unit, a prediction unit, and a determination unit;
[0014] The acquisition unit is configured to acquire a first encryption matrix, a first object matrix, and a first content matrix sent by a first content module, and a second encryption matrix, a second object matrix, and a second content matrix sent by a second content module; the first encryption matrix is an encryption matrix of a first behavior matrix of an object set for a first content set, and the first object matrix and the first content matrix are parameter matrices of the first behavior matrix; the second encryption matrix is an encryption matrix of a second behavior matrix of a second content set for an object set, and the second object matrix and the second content matrix are parameter matrices of the second behavior matrix;
[0015] The fusion unit is configured to decrypt and fuse the first encryption matrix and the second encryption matrix to obtain a fused behavior matrix of the first behavior matrix and the second behavior matrix;
[0016] The training unit is configured to iteratively train the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to a matrix relationship between the parameter matrix and the fusion behavior matrix to obtain a first training object matrix, a first training content matrix, a second training object matrix, and a second training content matrix;
[0017] The prediction unit is configured to perform behavior prediction based on the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix to obtain a first target behavior matrix for the object set with respect to the first content set and a second target behavior matrix for the object set with respect to the second content set;
[0018] The determining unit is configured to determine, for any target object in the object set, based on the first target behavior matrix and the second target behavior matrix, first target content and second target content to be jointly recommended to the target object from the first content set and the second content set.
[0019] In another aspect, the present application provides a computer device, comprising a processor and a memory:
[0020] The memory is used to store program code and transmit the program code to the processor;
[0021] The processor is configured to execute the method for determining content joint recommendation described in the above aspect according to the instructions in the program code.
[0022] On the other hand, an embodiment of the present application provides a computer-readable storage medium, which is used to store a computer program. When the computer program is executed by a processor, it performs the method for determining content joint recommendation described in the above aspect.
[0023] On the other hand, an embodiment of the present application provides a computer program product, which includes a computer program or instructions; when the computer program or instructions are executed by a processor, the method for determining content joint recommendation described in the above aspect is executed.
[0024] As can be seen from the above technical solution, first, a first encryption matrix, a first object matrix, and a first content matrix sent by the first content module, as well as a second encryption matrix, a second object matrix, and a second content matrix sent by the second content module are obtained. The first encryption matrix and the second encryption matrix are encryption matrices of the first behavior matrix of the object set for the first content set and the second behavior matrix for the second content set, respectively. The first object matrix and the first content matrix are parameter matrices of the first behavior matrix, and the second object matrix and the second content matrix are parameter matrices of the second behavior matrix. Secondly, the first encryption matrix and the second encryption matrix are decrypted and fused to obtain a fused behavior matrix of the first behavior matrix and the second behavior matrix. Then, based on the matrix relationship between the parameter matrix and the fused behavior matrix, the first object matrix, the first content matrix, the second object matrix, and the second content matrix are iteratively trained, and behavior prediction is performed to obtain a first target behavior matrix for the object set for the first content set and a second target behavior matrix for the object set for the second content set. Finally, for any target object in the object set, the first target content and the second target content are determined from the first content set and the second content set to be jointly recommended to the target object using the first target behavior matrix and the second target behavior matrix.
[0025] It can be seen that there is no need for the two sides of the different content modules to exchange local behavior matrices. Instead, the encrypted matrices and parameter matrices of the local behavior matrices are sent to a third party respectively. The encrypted matrices sent by the two sides of the different content modules are decrypted and fused by the third party to obtain the fused behavior matrix. The parameter matrix is then iteratively trained by combining the matrix relationship between the parameter matrix and the fused behavior matrix. The trained parameter matrix is used to predict the behavior matrix of each content module to obtain the predicted behavior matrix of each content module. Based on the predicted behavior matrix of each content module, different content is determined to be jointly recommended to the object from the different content sets provided by different content modules. In this method, there is no need for the two sides of the different content modules to exchange local behavior matrices, ensuring data privacy and security. A third-party confidential sharing mechanism is used to fuse the local behavior matrices of the two sides of the different content modules to train their parameter matrices, complete the behavior prediction of each content module, and determine the jointly recommended content of different content modules, thereby jointly improving the content recommendation effect of different content modules. BRIEF DESCRIPTION OF THE DRAWINGS
[0026] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0027] Figure 1A schematic diagram of an application scenario of a method for determining content joint recommendation provided in an embodiment of the present application;
[0028] Figure 2 A flowchart of a method for determining content joint recommendation provided in an embodiment of the present application;
[0029] Figure 3 A schematic diagram of the process stages for jointly recommending content using different content modules provided in an embodiment of the present application;
[0030] Figure 4 A flowchart of another method for determining content joint recommendation provided in an embodiment of the present application;
[0031] Figure 5 A schematic diagram of a device for determining content joint recommendation provided in an embodiment of the present application;
[0032] Figure 6 A schematic diagram of the structure of a server provided in an embodiment of the present application;
[0033] Figure 7 A schematic diagram of the structure of a terminal device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0034] The embodiments of the present application are described below with reference to the accompanying drawings.
[0035] At present, the travel service programs installed on terminal devices include "discounted refueling" modules and "car wash" modules. The "discounted refueling" module provides multiple refueling coupons, and the "car wash" module provides multiple car wash coupons. When recommending refueling coupons, in addition to the entry data collected by the travel service program, it also involves the behavioral data of multiple local users such as clicks, ratings, and consumption on multiple refueling coupons collected by the "discounted refueling" module. Alternatively, when recommending car wash coupons, in addition to the entry data collected by the travel service program, it also involves the behavioral data of multiple local users such as clicks, ratings, and consumption on multiple car wash coupons collected by the "car wash" module.
[0036] Typically, among the behavioral data on clicks, ratings, and consumption of multiple local users for multiple gas coupons collected by the "Discounted Gas" module, there are cases where some users have no behavioral data for some gas coupons; or, among the behavioral data on clicks, ratings, and consumption of multiple car wash coupons collected by the "Car Wash" module, there are cases where some users have no behavioral data for some car wash coupons; the user-based collaborative filtering algorithm and the content-based collaborative filtering algorithm are used to fill in the missing behavioral data, so as to recommend gas coupons or car wash coupons to users.
[0037] In actual applications, when the users of the "Discounted Gas" module and the "Car Wash" module are the same, the "Discounted Gas" module and the "Car Wash" module jointly recommend gas coupons and car wash coupons to improve the content recommendation effect; however, considering the data privacy and security issues of the "Discounted Gas" module and the "Car Wash" module, the "Discounted Gas" module cannot interact with the behavioral data of multiple local users for multiple gas coupons collected by itself and the behavioral data of multiple local users for multiple car wash coupons collected by the "Car Wash" module itself, and cannot realize the joint recommendation of gas coupons and car wash coupons, resulting in poor content recommendation effect.
[0038] In view of this, the present application proposes a method and related device for determining content joint recommendation. Different content modules do not need to interact with each other's local behavior matrices. Instead, they send encrypted matrices and parameter matrices of the local behavior matrices to a third party respectively. The encrypted matrices sent by different content modules are decrypted and fused by a third party to obtain a fused behavior matrix. The parameter matrix is iteratively trained by combining the matrix relationship between the parameter matrix and the fused behavior matrix. The trained parameter matrix is used to predict the behavior matrix of each content module respectively to obtain a predicted behavior matrix of each content module. Based on the predicted behavior matrix of each content module, different content jointly recommended to the object is determined from different content sets provided by different content modules. In this method, different content modules do not need to interact with each other's local behavior matrices, ensuring data privacy and security. A third-party confidential sharing mechanism is used to fuse the local behavior matrices of different content modules to train their parameter matrices, complete the behavior prediction of each content module, and determine the jointly recommended content of different content modules, thereby jointly improving the content recommendation effect of different content modules.
[0039] In order to facilitate understanding of the technical solution of the present application, the following describes a method for determining content joint recommendation provided in an embodiment of the present application in combination with actual application scenarios.
[0040] See also Figure 1 , Figure 1 A schematic diagram of an application scenario of a method for determining content joint recommendation provided in an embodiment of the present application. Figure 1 In the application scenario shown, the application scenario includes a server 100 , and an application loaded on a terminal device includes a first content module and a second content module. The users of the first content module and the second content module are the same.
[0041] The server 100 obtains the first encryption matrix, the first object matrix and the first content matrix sent by the first content module, and the second encryption matrix, the second object matrix and the second content matrix sent by the second content module; the first encryption matrix is the encryption matrix of the first behavior matrix of the object set for the first content set, and the first object matrix and the first content matrix are the parameter matrices of the first behavior matrix; the second encryption matrix is the encryption matrix of the second behavior matrix of the object set for the second content set, and the second object matrix and the second content matrix are the parameter matrices of the second behavior matrix.
[0042] As an example, the application is a travel service program, the first content module is a "discounted refueling" module, the second content module is a "car wash" module, and the target is users. The "discounted refueling" module collects first rating data from a set of users for a set of refueling coupons, converts the first rating data into a first rating matrix, encrypts the first rating matrix to obtain a first encrypted matrix, and the parameter matrix of the first rating matrix includes a first user matrix and a first coupon matrix. The first encrypted matrix, first object matrix, and first coupon matrix are then sent to the server 100.
[0043] The "car wash" module collects second rating data of the user set for the car wash coupon set, converts the second rating data into a second rating matrix, encrypts the second rating matrix to obtain a second encrypted matrix, and the parameter matrix of the second rating matrix includes a second user matrix and a second coupon matrix. The second encrypted matrix, the second user matrix, and the second coupon matrix are sent to the server 100.
[0044] That is, the server 100 obtains the first encryption matrix, the first user matrix, and the first coupon matrix sent by the "discounted refueling" module, and the second encryption matrix, the second user matrix, and the second coupon matrix sent by the "car wash" module.
[0045] Server 100 decrypts and fuses the first encryption matrix and the second encryption matrix to obtain a fused behavior matrix of the first behavior matrix and the second behavior matrix. Based on the above example, server 100 decrypts and fuses the first encryption matrix and the second encryption matrix to obtain a fused scoring matrix of the first scoring matrix and the second scoring matrix.
[0046] Based on the matrix relationship between the parameter matrix and the fused behavior matrix, the server 100 iteratively trains the first object matrix, the first content matrix, the second object matrix, and the second content matrix to obtain a first training object matrix, a first training content matrix, a second training object matrix, and a second training content matrix. Based on the above example, the server 100 can iteratively train the first user matrix, the first coupon matrix, the second user matrix, and the second coupon matrix based on the matrix relationship between the parameter matrix and the fused rating matrix to obtain a first training user matrix, a first training coupon matrix, a second training user matrix, and a second training coupon matrix.
[0047] Server 100 performs behavior prediction based on the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix, obtaining a first target behavior matrix for the object set with respect to the first content set and a second target behavior matrix for the object set with respect to the second content set. Based on the above example, server 100 can perform behavior prediction based on the first training user matrix, the first training coupon matrix, the second training user matrix, and the second training coupon matrix, obtaining a first target rating matrix for the user set with respect to the gas coupon set and a second target rating matrix for the user set with respect to the car wash coupon set.
[0048] For any target object in the object set, the server 100 determines, based on the first target behavior matrix and the second target behavior matrix, first target content and second target content to be jointly recommended to the target object from the first content set and the second content set. Based on the above example, for any target user in the user set, the server 100 can determine, based on the first target rating matrix and the second target rating matrix, target gas coupons and target car wash coupons to be jointly recommended to the target user from the gas coupon set and the car wash coupon set.
[0049] It can be seen that there is no need for the two sides of the different content modules to exchange local behavior matrices. Instead, the encrypted matrices and parameter matrices of the local behavior matrices are sent to a third party respectively. The encrypted matrices sent by the two sides of the different content modules are decrypted and fused by the third party to obtain the fused behavior matrix. The parameter matrix is then iteratively trained by combining the matrix relationship between the parameter matrix and the fused behavior matrix. The trained parameter matrix is used to predict the behavior matrix of each content module to obtain the predicted behavior matrix of each content module. Based on the predicted behavior matrix of each content module, different content is determined to be jointly recommended to the object from the different content sets provided by different content modules. In this method, there is no need for the two sides of the different content modules to exchange local behavior matrices, ensuring data privacy and security. A third-party confidential sharing mechanism is used to fuse the local behavior matrices of the two sides of the different content modules to train their parameter matrices, complete the behavior prediction of each content module, and determine the jointly recommended content of different content modules, thereby jointly improving the content recommendation effect of different content modules.
[0050] Artificial Intelligence (AI) refers to the theories, methods, techniques, and application systems that use digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, to perceive the environment, acquire knowledge, and use that knowledge to achieve optimal results. In other words, AI is a comprehensive technology within computer science that seeks to understand the essence of intelligence and produce new intelligent machines that can respond in a manner similar to human intelligence. AI also studies the design principles and implementation methods of various intelligent machines, enabling them to possess the capabilities of perception, reasoning, and decision-making.
[0051] Artificial intelligence (AI) is a comprehensive discipline encompassing a wide range of fields, encompassing both hardware and software technologies. Fundamental AI technologies generally include sensors, specialized AI chips, cloud computing, distributed storage, big data processing, operating / interaction systems, and mechatronics. AI software technologies primarily encompass machine learning and other areas.
[0052] The method for determining the content joint recommendation provided in this application mainly involves machine learning in artificial intelligence. Among them, machine learning is a multi-disciplinary interdisciplinary subject that involves probability theory, statistics, approximation theory, convex analysis, algorithm complexity theory and other disciplines. It specializes in studying how computers simulate or implement human learning behavior to acquire new knowledge or skills and reorganize existing knowledge structures to continuously improve their own performance. Machine learning is the core of artificial intelligence and the fundamental way to make computers intelligent. Its applications are spread across all areas of artificial intelligence. Machine learning generally includes artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, teaching learning, federated learning and other technologies.
[0053] The method for determining content joint recommendation provided in this application can be applied to devices for determining content joint recommendation that have data processing capabilities, such as servers and terminal devices. Among them, the server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides cloud computing services, etc., but is not limited to these; terminal devices include but are not limited to mobile phones, tablets, computers, computers, smart cameras, smart voice interaction devices, smart home appliances, vehicle-mounted terminals, aircraft, etc., but are not limited to these. Terminal devices and servers can be directly or indirectly connected through wired or wireless communication, and this application does not impose any restrictions on this.
[0054] The method for determining content joint recommendation provided in this application can be applied to various scenarios, including but not limited to cloud technology, artificial intelligence, in-vehicle scenarios, smart transportation, assisted driving, etc.
[0055] Next, the method for determining content joint recommendation provided by the embodiment of the present application is specifically introduced below, taking a server or a terminal device as a device for determining content joint recommendation.
[0056] See also Figure 2 , which is a flow chart of a method for determining content joint recommendation provided by an embodiment of the present application. Figure 2 As shown, the method for determining the content joint recommendation includes the following steps:
[0057] S201: Obtain the first encryption matrix, the first object matrix and the first content matrix sent by the first content module, and the second encryption matrix, the second object matrix and the second content matrix sent by the second content module; the first encryption matrix is the encryption matrix of the first behavior matrix of the object set for the first content set, and the first object matrix and the first content matrix are the parameter matrices of the first behavior matrix; the second encryption matrix is the encryption matrix of the second behavior matrix of the object set for the second content set, and the second object matrix and the second content matrix are the parameter matrices of the second behavior matrix.
[0058] In related technologies, the application installed on the terminal device includes multiple content modules, each of which provides multiple contents. When recommending the content provided by the content module, in addition to the entry data collected by the application, it also involves the behavioral data of multiple local users on multiple contents, such as clicks, ratings, and consumption, collected by the content module. Even if the users of different content modules in the application are the same, due to the data privacy and security issues of different content modules, different content modules cannot exchange their own collected behavioral data of multiple local users on multiple contents, making it impossible to achieve joint content recommendation among different content modules, resulting in poor content recommendation results.
[0059] Therefore, in the embodiments of the present application, to ensure data privacy and security across different content modules and prevent the exchange of their own locally collected, multiple user behavior data for multiple contents, an independent third party (a device determining content joint recommendation), such as a server or terminal device, is constructed. A third-party confidential sharing mechanism is employed to enable the third party to share the local behavior matrices of both parties across different content modules. Specifically, each of the different content modules converts its own locally collected, multiple user behavior data for multiple contents into a local behavior matrix, and each sends an encrypted version of the local behavior matrix to the third party. The third party then obtains the encrypted matrices sent by both parties across different content modules.
[0060] Specifically, the first content module collects first behavior data from the object set for the first content set, converts the first behavior data into a first behavior matrix, and encrypts the first behavior matrix to obtain a first encrypted matrix. Using a collaborative filtering algorithm, the first behavior matrix is subjected to matrix decomposition to obtain a first object matrix and a first content matrix. Specifically, the first object matrix and the first content matrix are parameter matrices of the first behavior matrix. Based on this, the first content module sends the first encrypted matrix, the first object matrix, and the first content matrix to a third party, which then obtains the first encrypted matrix, the first object matrix, and the first content matrix sent by the first content module.
[0061] The second content module collects second behavior data for the second content set from the object set, converts the second behavior data into a second behavior matrix, and encrypts the second behavior matrix to obtain a second encrypted matrix. The second behavior matrix is then decomposed using a collaborative filtering algorithm to obtain a second object matrix and a second content matrix. Specifically, the second object matrix and the second content matrix are parameter matrices of the second behavior matrix. Based on this, the second content module transmits the second encrypted matrix, the second object matrix, and the second content matrix to a third party, which then obtains the second encrypted matrix, the second object matrix, and the second content matrix transmitted by the second content module.
[0062] As an example, the first row matrix and the second row matrix are expressed as follows:
[0063]
[0064]
[0065] in, The first row is a matrix, represents the first behavior data of the i-th object in the user set for the j-th first content in the first content set, n represents the number of users in the user set, and m represents the number of first contents in the first content set; The second row is the matrix, represents the second behavior data of the i-th object in the user set for the k-th second content in the second content set, and p represents the number of second contents in the second content set. Based on this, the first encryption matrix is The second encryption matrix is
[0066] The first row of the matrix is transformed into Perform matrix decomposition to obtain the first object matrix Q and the first content matrix U, that is, construct the first behavior matrix The mathematical model of its parameter matrix (the first object matrix Q and the first content matrix U) is: The first row represents the matrix Equal to the dot product of the transposed matrix of the first object matrix Q and the first content matrix U; through the collaborative filtering algorithm, the second row matrix Perform matrix decomposition to obtain the second object matrix W and the second content matrix V, that is, construct the second behavior matrix The mathematical model of its parameter matrix (the second object matrix W and the second content matrix V) is: The second row is the matrix Equal to the dot product of the transposed matrix of the second object matrix W and the second content matrix V.
[0067] In actual applications, the first content module can be the "discounted refueling" module included in the travel service program, the first content set can be a refueling coupon set, the first content matrix can be a first coupon matrix, the second content module can be the "car wash" module included in the travel service program, the second content set can be a car wash coupon set, and the second content matrix can be a second coupon matrix; the object can be a user, the object set can be a user set, the first object matrix can be a first user matrix, and the second object matrix can be a second user matrix; the behavior data can be rating data, the first behavior matrix can be a first rating matrix, and the second behavior matrix can be a second rating matrix. Of course, in the embodiment of the present application, the first content module and the second content module can also be two other different content modules that are consistent with the user in an application, that is, the different content modules have strong scalability; in addition, in the embodiment of the present application, the behavior data can also be click data or consumption data, etc., which will not be given one by one in the embodiment of the present application.
[0068] S202: Decrypt and fuse the first encryption matrix and the second encryption matrix to obtain a fused behavior matrix of the first behavior matrix and the second behavior matrix.
[0069] In an embodiment of the present application, after executing S201, the third party obtains the first encryption matrix sent by the first content module and the second encryption matrix sent by the second content module. In order to realize the third party's interaction of local behavior matrices of different content modules, the first encryption matrix and the second encryption matrix can be decrypted and fused, thereby obtaining a fused behavior matrix of the first behavior matrix and the second behavior matrix.
[0070] In the specific implementation of S202, first, since the first encryption matrix is the encryption matrix of the first behavior matrix, and the second encryption matrix is the encryption matrix of the second behavior matrix, it is necessary to decrypt the first and second encryption matrices to obtain the first and second behavior matrices. Then, considering the object identifiers in the object set, the first and second behavior matrices are fused based on the same objects to obtain a fused behavior matrix. Therefore, this application provides a possible implementation method, in which S202 may, for example, include the following S2021-S2022:
[0071] S2021: Decrypt the first encryption matrix and the second encryption matrix to obtain a first behavior matrix and a second behavior matrix.
[0072] S2022: Fusing the first behavior matrix and the second behavior matrix according to the object identifiers in the object set to obtain a fused behavior matrix.
[0073] As an example, based on the above example, the first encryption matrix and the second encryption matrix Decrypt and get the first line matrix as and the second row matrix is According to the object identification in the object set, the first row of the matrix and the second row is the matrix Perform fusion to obtain the fusion behavior matrix The specific expressions are as follows:
[0074]
[0075] In practical applications, when the first behavior matrix is a first scoring matrix and the second behavior matrix is a second scoring matrix, the fused behavior matrix can fuse the scoring matrix.
[0076] S203: Iteratively train the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to the matrix relationship between the parameter matrix and the fusion behavior matrix to obtain a first training object matrix, a first training content matrix, a second training object matrix, and a second training content matrix.
[0077] In an embodiment of the present application, based on the mathematical model of the fusion behavior matrix and the parameter matrix (first object matrix, first content matrix, second object matrix and second content matrix) constructed by the federated learning algorithm, taking into account the principle of minimum loss of iterative training of the parameter matrix in the mathematical model, the matrix relationship between the parameter matrix and the fusion behavior matrix can be derived. Based on this, the parameter matrix is iteratively trained through the matrix relationship between the parameter matrix and the fusion behavior matrix, that is, the first object matrix, the first content matrix, the second object matrix and the second content matrix are iteratively trained. After the training is completed, the first training object matrix, the first training content matrix, the second training object matrix and the second training content matrix can be obtained. Among them, the federated learning algorithm is specifically a vertical federated learning algorithm.
[0078] In particular, considering how to determine the completion of iterative training to stop iterative training during the iterative training of the first object matrix, the first content matrix, the second object matrix, and the second content matrix, there are two ways to obtain the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix. S203 can be implemented in the following two specific ways:
[0079] The first specific implementation method of S203 is as follows: First, through the matrix relationship between the parameter matrix and the fusion behavior matrix, the first object matrix, the first content matrix, the second object matrix, and the second content matrix are iteratively trained to obtain the first object matrix after each training, the first content matrix after each training, the second object matrix after each training, and the second content matrix after each training. Then, in combination with the preset loss function, the loss value corresponding to each training can be calculated. Finally, it is determined that the absolute value of the difference between the loss value corresponding to the t-th training and the loss value corresponding to the t-1-th training is less than the preset difference, that is, the absolute value of the difference between the t-th loss value and the t-1-th loss value is less than the preset difference, indicating that the loss after the t-th training is the smallest, t is a positive integer, t≥1; based on this, the iterative training is stopped after the t-th training, the first object matrix after the t-th training is the first training object matrix, the first content matrix after the t-th training is the first training content matrix, the second object matrix after the t-th training is the second training object matrix, and the second content matrix after the t-th training is the second training content matrix. Therefore, the present application provides a possible implementation method, where S203 may include, for example, the following S2031-S2033:
[0080] S2031: Perform the t-th training on the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to the matrix relationship to obtain the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, and the second content matrix after the t-th training; t is a positive integer, t≥1.
[0081] S2032: Obtain the tth loss value based on the first object matrix after the tth training, the first content matrix after the tth training, the second object matrix after the tth training, the second content matrix after the tth training and the preset loss function.
[0082] Among them, when S2032 is specifically implemented, after executing S2031 to obtain the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, and the second content matrix after the t-th training, first, through the mathematical model of the first behavior matrix and its parameter matrix (the first object matrix and the first content matrix), and through the mathematical model of the second behavior matrix and its parameter matrix (the second object matrix and the second content matrix), the behavior prediction of the object set for the first content set and the behavior prediction of the object set for the second content set can be performed, and the t-th first predicted behavior matrix of the object set for the first content set and the t-th second predicted behavior matrix of the object set for the second content set are obtained; then, through the t-th first predicted behavior matrix and the t-th second predicted behavior matrix, combined with the preset loss function, the loss value corresponding to the t-th training, that is, the t-th loss value, can be calculated. Therefore, the present application provides a possible implementation method, and S2032 can, for example, include the following S1-S2:
[0083] S1: Perform behavior prediction on the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, and the second content matrix after the t-th training to obtain the t-th first predicted behavior matrix of the object set for the first content set and the t-th second predicted behavior matrix of the object set for the second content set.
[0084] S2: Obtain the tth loss value according to the tth first prediction behavior matrix, the tth second prediction behavior matrix and the preset loss function.
[0085] S2033: If the absolute value of the difference between the t-th loss value and the t-1-th loss value is less than the preset difference, the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, and the second content matrix after the t-th training are determined as the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix.
[0086] Among them, when S2 is specifically implemented, the tth first prediction behavior matrix combined with the preset loss function can calculate a loss value, that is, the tth first loss value corresponding to the tth first prediction behavior matrix; the tth second prediction behavior matrix combined with the preset loss function can calculate another loss value, that is, the tth second loss value corresponding to the tth second prediction behavior matrix; therefore, the present application provides a possible implementation method, the tth loss value includes the tth first loss value corresponding to the tth first prediction behavior matrix and the tth second loss value corresponding to the tth second prediction behavior matrix; correspondingly, the absolute value of the difference between the tth loss value and the t-1th loss value in S2033 is less than the preset difference, which can be specifically that the absolute value of the difference between the tth first loss value and the t-1th first loss value is less than the preset difference, and the absolute value of the difference between the tth second loss value and the t-1th second loss value is less than the preset difference.
[0087] As an example, based on the above example, the fusion behavior matrix The mathematical model of the parameter matrix (first object matrix Q, first content matrix U, second object matrix W, and second content matrix V) is expressed as follows:
[0088]
[0089] Considering the principle of minimum loss of iterative training of parameter matrix in mathematical model, the parameter matrix (first object matrix Q, first content matrix U, second object matrix W and second content matrix V) and fusion behavior matrix can be derived. The matrix relationship between them is expressed as follows:
[0090]
[0091] The first object matrix Q and the first content matrix U sent by the first content module obtained by executing S201 are respectively designated as Q0 and U0, and the second object matrix W and the second content matrix V sent by the second content module obtained by executing S201 are respectively designated as W0 and V0; according to the above matrix relationship, the first object matrix Q, the first content matrix U, the second object matrix W and the second content matrix V are trained for the first time, and the first object matrix after the first training is obtained as The first content matrix after the first training is The second object matrix after the first training is And the second content matrix after the first training is
[0092] The first object matrix after the first training is Q1 and the first content matrix after the first training is U1, the second object matrix after the first training is W1 and the second content matrix after the first training is V1 to perform behavior prediction, and obtain the first first predicted behavior matrix of the object set for the first content set and the first second predicted behavior matrix W1 of the object set for the second content set T V1.
[0093] Assuming that the preset loss function is the variance function, through the first prediction behavior matrix And variance function, calculate the first prediction behavior matrix The corresponding first loss value is Through the first second prediction behavior matrix W1 T V1 and variance function, calculate the first second prediction behavior matrix W1 T The first second loss value corresponding to V1 is
[0094] Similarly, the t-th first prediction behavior matrix is calculated The corresponding t-th first loss value is And the t-th second prediction behavior matrix W t T V t The corresponding t-th second loss value is like and The absolute value of the difference is less than the preset difference, and and The absolute value of the difference is less than the preset difference, and the first training object matrix is Q t , the first training content matrix is U t , the second training object matrix is W t And the second training content matrix is V t . Where t is a positive integer, t≥1.
[0095] Second specific implementation of S203: Considering that it may not be possible to determine the iterative training with the minimum loss after multiple iterative trainings using the first specific implementation of S203, in order to avoid long or endless iterative training, the number of iterations for stopping iterative training can be pre-set, i.e., a preset number of iterations. First, through the matrix relationship between the parameter matrix and the fusion behavior matrix, iterative training is performed on the first object matrix, the first content matrix, the second object matrix, and the second content matrix, to obtain the first object matrix after each training, the first content matrix after each training, the second object matrix after each training, and the second content matrix after each training. Then, it is determined that the number of iterations k of the kth training is the preset number of iterations, indicating that the number of iterations of the iterative training has reached the number of iterations for stopping iterative training, k is a positive integer, k≥1. Based on this, iterative training is stopped after the kth training, and the first object matrix after the kth training is the first training object matrix, the first content matrix after the kth training is the first training content matrix, the second object matrix after the kth training is the second training object matrix, and the second content matrix after the kth training is the second training content matrix. Therefore, the present application provides a possible implementation method, where S203 may include, for example, the following S2034-S2035:
[0096] S2034: Perform the k-th training on the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to the matrix relationship to obtain the first object matrix after the k-th training, the first content matrix after the k-th training, the second object matrix after the k-th training, and the second content matrix after the k-th training; k is a positive integer, k≥1.
[0097] S2035: If k is a preset number of iterations, the first object matrix after the k-th training, the first content matrix after the k-th training, the second object matrix after the k-th training, and the second content matrix after the k-th training are determined as the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix.
[0098] As an example, referring to the above example, the parameter matrix (the first object matrix Q, the first content matrix U, the second object matrix W and the second content matrix V) is combined with the fusion behavior matrix The matrix relationship between them is used to train the first object matrix Q, the first content matrix U, the second object matrix W and the second content matrix V for the kth time, and the first object matrix after the kth training is obtained as The first content matrix after the first training is The second object matrix after the first training is And the second content matrix after the first training is Assume that the preset number of iterations is k', if k = k', the first training object matrix is Q k , the first training content matrix is U k , the second training object matrix is W k And the second training content matrix is V k . Wherein, k is a positive integer, k≥1.
[0099] In actual applications, the first object matrix is the first user matrix, the first content matrix is the first coupon matrix, the second object matrix is the second user matrix, and the second content matrix is the second coupon matrix; the first training object matrix can be the first training user matrix, the first training content matrix can be the first training coupon matrix, the second training object matrix can be the second training user matrix, and the second training content matrix can be the second training coupon matrix.
[0100] S204: Perform behavior prediction based on the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix to obtain a first target behavior matrix of the object set for the first content set and a second target behavior matrix of the object set for the second content set.
[0101] In an embodiment of the present application, after executing S203 to obtain the first training object matrix, the first training content matrix, the second training object matrix and the second training content matrix, the behavior of the object set with respect to the first content set and the behavior of the object set with respect to the second content set can be predicted through the mathematical model of the first behavior matrix and its parameter matrix (the first object matrix and the first content matrix) and the mathematical model of the second behavior matrix and its parameter matrix (the second object matrix and the second content matrix), thereby obtaining the first target behavior matrix of the object set with respect to the first content set and the second target behavior matrix of the object set with respect to the second content set.
[0102] In the specific implementation of S204, referring to the mathematical model of the first behavior matrix and its parameter matrix (the first object matrix and the first content matrix), the first training object matrix and the first training content matrix are used to predict the behavior of the object set for the first content set, thereby obtaining the first target behavior matrix of the object set for the first content set; and referring to the mathematical model of the second behavior matrix and its parameter matrix (the second object matrix and the second content matrix), the second training object matrix and the second training content matrix are used to predict the behavior of the object set for the second content set, thereby obtaining the second target behavior matrix of the object set for the second content set. Therefore, the present application provides a possible implementation method, and S204 may, for example, include the following S2041-S2042:
[0103] S2041: Predicting the behavior of the object set with respect to the first content set according to the first training object matrix and the first training content matrix to obtain a first target behavior matrix.
[0104] S2042: Predicting the behavior of the object set with respect to the second content set according to the second training object matrix and the second training content matrix to obtain a second target behavior matrix.
[0105] As an example, based on the above example, the first target behavior matrix is The second target behavior matrix is Alternatively, the first target behavior matrix is The second target behavior matrix is
[0106] In practical applications, when the first behavior matrix is the first scoring matrix and the second behavior matrix is the second scoring matrix, the first target behavior matrix may be the first target scoring matrix and the second target behavior matrix may be the second target scoring matrix.
[0107] S205: For any target object in the object set, determine first target content and second target content to be jointly recommended to the target object from the first content set and the second content set according to the first target behavior matrix and the second target behavior matrix.
[0108] In an embodiment of the present application, after executing S204 to obtain the first target behavior matrix of the object set for the first content set and the second target behavior matrix of the object set for the second content set, since the first target behavior matrix and the second target behavior matrix are the first behavior matrix of the object set for the first content set and the second behavior matrix of the object set for the second content set fused by a third party, the parameter matrix of the first behavior matrix and the parameter matrix of the second behavior matrix are trained to complete the behavior prediction of the object set for the first content set and the behavior prediction of the object set for the second content set, thereby realizing the interaction between the first behavior matrix and the second behavior matrix; therefore, for any target object in the object set, through the first target behavior matrix and the second target behavior matrix, it can be determined from the first content set and the second content set that the first content and the second content are jointly recommended to the target object as the first target content and the second target content.
[0109] When S205 is specifically implemented, first, for any target object in the object set, it is necessary to determine the behavior vector of the target object for the first content set in the first target behavior matrix as the first target behavior vector; it is also necessary to determine the behavior vector of the target object for the second content set in the second target behavior matrix as the second target behavior vector. Then, sort the components of each dimension in the first target behavior vector from high to low to obtain the first sorting result; sort the components of each dimension in the second target behavior vector from high to low to obtain the second sorting result. Finally, since the target object is more interested in the first content corresponding to the component with a higher ranking in the first sorting result, the target object is more interested in the second content corresponding to the component with a higher ranking in the second sorting result; therefore, the first content corresponding to the first component in the first sorting result is determined as the first content to be jointly recommended, that is, the first target content; the second content corresponding to the first component in the second sorting result is determined as the second content to be jointly recommended, that is, the second target content. That is, the present application provides a possible implementation method, and S205 may, for example, include the following S2051-S2053:
[0110] S2051: Determine a first target behavior vector of the target object for the first content set from the first target behavior matrix; and determine a second target behavior vector of the target object for the second content set from the second target behavior matrix.
[0111] S2052: Sort the components of each dimension in the first target behavior vector from high to low to obtain a first sorting result; sort the components of each dimension in the second target behavior vector from high to low to obtain a second sorting result.
[0112] S2053: Determine the first content corresponding to the first component in the first sorting result as the first target content; and determine the second content corresponding to the first component in the second sorting result as the second target content.
[0113] In actual applications, when the object is a user, the first content set is a gas coupon set, and the second content set is a car wash coupon set; the target object is a target user, the first target content can be a target gas coupon, and the second target content can be a target car wash coupon.
[0114] In addition, in the embodiment of the present application, after executing S205 to determine the first target content and the second target content to be jointly recommended to the target object, the first target content and the second target content may be packaged to obtain target packaged content, so as to recommend the target packaged content to the target object, thereby completing the joint recommendation of the content of the first content module and the second content module. Therefore, the present application provides a possible implementation method, and the method may also include the following S3-S4:
[0115] S3: Package the first target content and the second target content to obtain target packaged content.
[0116] S4: Recommend target package content to the target object.
[0117] In actual applications, when the first target content is a target gas coupon and the second target content is a target car wash coupon, the target package content may be the target package coupon.
[0118] In summary, see Figure 3 Figure 1 shows a schematic diagram of the process stages for joint content recommendation across different content modules. The process for joint content recommendation across different content modules is divided into eight stages: local behavior matrix input, federated collaborative filtering model construction, federated collaborative filtering model parameter model construction, third-party sharing mechanism construction, fused behavior matrix construction, parameter model iterative training, local behavior matrix prediction, and joint content recommendation.
[0119] Phase 1: Local behavior matrix input phase. The first content module collects the first behavior data of the object set for the first content set and converts the first behavior data into the first behavior matrix. For the first row, the matrix Encrypt to get the first encryption matrix The first row of the matrix is transformed into Matrix decomposition is performed to obtain a first object matrix Q and a first content matrix U.
[0120] Similarly, the second content module collects the second behavior data of the object set for the second content set and converts the second behavior data into a second behavior matrix For the second row, the matrix Encrypt to get the second encryption matrix The second row is transformed into a matrix through collaborative filtering algorithm Perform matrix decomposition to obtain a second object matrix W and a second content matrix V.
[0121] in, and is represented as follows:
[0122]
[0123]
[0124] Phase 2: Federated collaborative filtering model construction phase. Construct the first behavior matrix The mathematical model of its parameter matrix (the first object matrix Q and the first content matrix U) is: Construct the second row matrix The mathematical model of its parameter matrix (the second object matrix W and the second content matrix V) is: Constructing a fusion behavior matrix through a federated learning algorithm The mathematical model of the parameter matrix (first object matrix Q, first content matrix U, second object matrix W, and second content matrix V) is: That is, the federated collaborative filtering model is expressed as follows:
[0125]
[0126] The third stage: the parameter model construction stage of the federated collaborative filtering model. Considering the principle of minimum loss of iterative training of parameter matrices in the mathematical model, the parameter matrix (first object matrix Q, first content matrix U, second object matrix W and second content matrix V) and the fusion behavior matrix can be derived. The matrix relationship between them, the parameter model of the federated collaborative filtering model is expressed as follows:
[0127]
[0128] The fourth stage: the third-party sharing mechanism construction stage. Build an independent third party, such as a server or terminal device, and adopt a third-party confidentiality sharing mechanism to enable the third party to share the local behavior matrix of both parties in different content modules. The third party obtains the first encrypted matrix sent by the first content module. The first object matrix Q and the first content matrix U, as well as the second encrypted matrix sent by the second content module A second object matrix W and a second content matrix V.
[0129] Phase 5: Fusion Behavior Matrix Construction Phase. Third Party Encryption Matrix and the second encryption matrix Perform decryption fusion to obtain the first line matrix and the second row is the matrix Fusion behavior matrix
[0130] in, is represented as follows:
[0131]
[0132] Phase 6: Parameter model iterative training phase. The third party iteratively trains the first object matrix Q, the first content matrix U, the second object matrix W, and the second content matrix V based on the parameter model of the federated collaborative filtering model to obtain the first training object matrix Q t , the first training content matrix U t , the second training object matrix W t and the second training content matrix Vt .
[0133] The seventh stage: local behavior matrix prediction stage. The third party uses the first training object matrix Q t , the first training content matrix U t , the second training object matrix W t and the second training content matrix V t Perform behavior prediction to obtain the first target behavior matrix of the object set for the first content set and a second target behavior matrix of the object set for the second content set
[0134] The eighth stage: content joint recommendation stage. The third party targets any target object in the object set according to the first target behavior matrix. and the second target behavior matrix Determine first target content and second target content to be jointly recommended to a target object from the first content set and the second content set, package the first target content and the second target content to obtain target packaged content, and recommend the target packaged content to the target object.
[0135] The method for determining content joint recommendation provided in the above embodiment first obtains a first encryption matrix, a first object matrix, and a first content matrix sent by a first content module, and a second encryption matrix, a second object matrix, and a second content matrix sent by a second content module. The first encryption matrix and the second encryption matrix are encryption matrices of a first behavior matrix of an object set with respect to a first content set and a second behavior matrix with respect to a second content set, respectively. The first object matrix and the first content matrix are parameter matrices of the first behavior matrix, and the second object matrix and the second content matrix are parameter matrices of the second behavior matrix. Next, the first encryption matrix and the second encryption matrix are decrypted and fused to obtain a fused behavior matrix of the first behavior matrix and the second behavior matrix. Then, based on the matrix relationship between the parameter matrix and the fused behavior matrix, the first object matrix, the first content matrix, the second object matrix, and the second content matrix are iteratively trained, and behavior prediction is performed to obtain a first target behavior matrix of the object set with respect to the first content set and a second target behavior matrix of the object set with respect to the second content set. Finally, for any target object in the object set, first target content and second target content to be jointly recommended to the target object are determined from the first content set and the second content set using the first target behavior matrix and the second target behavior matrix.
[0136] It can be seen that there is no need for the two sides of the different content modules to exchange local behavior matrices. Instead, the encrypted matrices and parameter matrices of the local behavior matrices are sent to a third party respectively. The encrypted matrices sent by the two sides of the different content modules are decrypted and fused by the third party to obtain the fused behavior matrix. The parameter matrix is then iteratively trained by combining the matrix relationship between the parameter matrix and the fused behavior matrix. The trained parameter matrix is used to predict the behavior matrix of each content module to obtain the predicted behavior matrix of each content module. Based on the predicted behavior matrix of each content module, different content is determined to be jointly recommended to the object from the different content sets provided by different content modules. In this method, there is no need for the two sides of the different content modules to exchange local behavior matrices, ensuring data privacy and security. A third-party confidential sharing mechanism is used to fuse the local behavior matrices of the two sides of the different content modules to train their parameter matrices, complete the behavior prediction of each content module, and determine the jointly recommended content of different content modules, thereby jointly improving the content recommendation effect of different content modules.
[0137] Next, the server or terminal device is used as the device for determining content joint recommendation. Combined with the "discounted refueling" module and "car wash" module included in the travel service program, the users of the "discounted refueling" module and the "car wash" module are the same, so as to specifically introduce the method for determining content joint recommendation provided in the embodiment of the present application.
[0138] See also Figure 4 , which is a flow chart of another method for determining content joint recommendation provided by an embodiment of the present application. Figure 4 As shown, the method for determining the content joint recommendation includes the following steps:
[0139] S401: Obtain the first encryption matrix, first user matrix, and first coupon matrix sent by the "Discounted Refueling" module, as well as the second encryption matrix, second user matrix, and second coupon matrix sent by the "Car Wash" module; the first encryption matrix is an encryption matrix of the first scoring matrix of the user set for the refueling coupon set, and the first user matrix and the first coupon matrix are parameter matrices of the first scoring matrix; the second encryption matrix is an encryption matrix of the second scoring matrix of the user set for the car wash coupon set, and the second user matrix and the second coupon matrix are parameter matrices of the second scoring matrix.
[0140] S402: Decrypt the first encryption matrix and the second encryption matrix to obtain a first scoring matrix and a second scoring matrix.
[0141] S403: According to the user identifiers in the user set, the first scoring matrix and the second scoring matrix are fused to obtain a fused scoring matrix.
[0142] S404: Performing a t-th training on the first user matrix, the first coupon matrix, the second user matrix, and the second coupon matrix according to the matrix relationship between the parameter matrix and the fusion rating matrix to obtain a first user matrix after the t-th training, a first coupon matrix after the t-th training, a second user matrix after the t-th training, and a second coupon matrix after the t-th training; t is a positive integer, t≥1.
[0143] S405: Perform rating prediction on the first user matrix after the t-th training, the first coupon matrix after the t-th training, the second user matrix after the t-th training, and the second coupon matrix after the t-th training to obtain the t-th first predicted rating matrix of the user set for the gas coupon set and the t-th second predicted rating matrix of the user set for the car wash coupon set.
[0144] S406: According to the tth first prediction scoring matrix, the tth second prediction scoring matrix and the preset loss function, obtain the tth first loss value corresponding to the tth first prediction scoring matrix and the tth second loss value corresponding to the tth second prediction scoring matrix.
[0145] S407: If the absolute value of the difference between the t-th first loss value and the t-1-th first loss value is less than the preset difference, and the absolute value of the difference between the t-th second loss value and the t-1-th second loss value is less than the preset difference, the first user matrix after the t-th training, the first coupon matrix after the t-th training, the second user matrix after the t-th training, and the second coupon matrix after the t-th training are determined as the first training user matrix, the first training coupon matrix, the second training user matrix, and the second training coupon matrix.
[0146] S408: Predicting the ratings of the user set for the refueling coupon set based on the first training user matrix and the first training coupon matrix to obtain a first target rating matrix.
[0147] S409: Predicting the ratings of the user set for the car wash coupon set based on the second training user matrix and the second training coupon matrix to obtain a second target rating matrix.
[0148] S410: Determine a first target scoring vector of the target user for the gas coupon set from the first target scoring matrix; and determine a second target scoring vector of the target user for the car wash coupon set from the second target scoring matrix.
[0149] S411: sorting the components of each dimension in the first target score vector from high to low to obtain a first sorting result; sorting the components of each dimension in the second target score vector from high to low to obtain a second sorting result.
[0150] S412: Determine the gas coupon corresponding to the first component in the first sorting result as the target gas coupon; and determine the car wash coupon corresponding to the first component in the second sorting result as the target car wash coupon.
[0151] S413: Package the target gas coupons and the target car wash coupons to obtain target packaged coupons.
[0152] S414: Recommending target packaged coupons to target users.
[0153] It can be seen that the "discounted refueling" module and the "car wash" module do not need to exchange local rating matrices. The encrypted matrix and parameter matrix of the local rating matrix are sent to a third party respectively. The encrypted matrices sent by the "discounted refueling" module and the "car wash" module are decrypted and fused by the third party to obtain a fused rating matrix. The parameter matrix is iteratively trained by combining the matrix relationship between the parameter matrix and the fused rating matrix. The trained parameter matrix is used to predict the rating matrices of the "discounted refueling" module and the "car wash" module respectively, and the predicted rating matrix of the "discounted refueling" module and the predicted rating matrix of the "car wash" module are obtained. In this way, the refueling coupons and car wash coupons jointly recommended to the user are determined from the refueling coupon set provided by the "discounted refueling" module and the car wash coupon set provided by the "car wash" module. In this method, the "discounted refueling" module and the "car wash" module do not need to exchange local rating matrices to ensure data privacy and security. A third-party confidential sharing mechanism is used to integrate the local rating matrices of the "discounted refueling" module and the "car wash" module to train their parameter matrices, complete the rating prediction of the "discounted refueling" module and the rating prediction of the "car wash" module, and determine the joint recommended coupons of the "discounted refueling" module and the "car wash" module, thereby jointly improving the coupon recommendation effect of the "discounted refueling" module and the "car wash" module.
[0154] See also Figure 5 , Figure 5 This is a schematic diagram of a device for determining content joint recommendation provided in an embodiment of the present application. Figure 5 As shown, the content joint recommendation determination device 500 includes: an acquisition unit 501, a fusion unit 502, a training unit 503, a prediction unit 504 and a determination unit 505;
[0155] An acquisition unit 501 is configured to acquire a first encryption matrix, a first object matrix, and a first content matrix sent by a first content module, and a second encryption matrix, a second object matrix, and a second content matrix sent by a second content module; the first encryption matrix is an encryption matrix of a first behavior matrix of an object set for a first content set, and the first object matrix and the first content matrix are parameter matrices of the first behavior matrix; the second encryption matrix is an encryption matrix of a second behavior matrix of a second content set for an object set, and the second object matrix and the second content matrix are parameter matrices of the second behavior matrix;
[0156] A fusion unit 502 is configured to decrypt and fuse the first encryption matrix and the second encryption matrix to obtain a fused behavior matrix of the first behavior matrix and the second behavior matrix;
[0157] A training unit 503 is configured to iteratively train the first object matrix, the first content matrix, the second object matrix, and the second content matrix based on a matrix relationship between the parameter matrix and the fusion behavior matrix to obtain a first training object matrix, a first training content matrix, a second training object matrix, and a second training content matrix;
[0158] A prediction unit 504 is configured to perform behavior prediction based on the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix to obtain a first target behavior matrix of the object set for the first content set and a second target behavior matrix of the object set for the second content set;
[0159] The determination unit 505 is configured to determine, for any target object in the object set, first target content and second target content to be jointly recommended to the target object from the first content set and the second content set according to the first target behavior matrix and the second target behavior matrix.
[0160] As a possible implementation, the fusion unit 502 is specifically configured to:
[0161] Decrypting the first encryption matrix and the second encryption matrix to obtain a first behavior matrix and a second behavior matrix;
[0162] The first behavior matrix and the second behavior matrix are fused according to object identifiers in the object set to obtain a fused behavior matrix.
[0163] As a possible implementation, the training unit 503 is specifically configured to:
[0164] Performing the t-th training on the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to the matrix relationship to obtain the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, and the second content matrix after the t-th training; t is a positive integer, t≥1;
[0165] Obtaining a t-th loss value according to the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, the second content matrix after the t-th training, and a preset loss function;
[0166] If the absolute value of the difference between the t-th loss value and the t-1-th loss value is less than the preset difference, the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, and the second content matrix after the t-th training are determined as the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix.
[0167] As a possible implementation, the training unit 503 is specifically configured to:
[0168] Performing behavior prediction on the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, and the second content matrix after the t-th training to obtain a t-th first predicted behavior matrix of the object set for the first content set and a t-th second predicted behavior matrix of the object set for the second content set;
[0169] A tth loss value is obtained according to the tth first prediction behavior matrix, the tth second prediction behavior matrix and a preset loss function.
[0170] As a possible implementation method, the tth loss value includes the tth first loss value corresponding to the tth first prediction behavior matrix and the tth second loss value corresponding to the tth second prediction behavior matrix; the absolute value of the difference between the tth loss value and the t-1th loss value is less than the preset difference, the absolute value of the difference between the tth first loss value and the t-1th first loss value is less than the preset difference, and the absolute value of the difference between the tth second loss value and the t-1th second loss value is less than the preset difference.
[0171] As a possible implementation, the training unit 503 is specifically configured to:
[0172] Performing a k-th training on the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to the matrix relationship to obtain the first object matrix after the k-th training, the first content matrix after the k-th training, the second object matrix after the k-th training, and the second content matrix after the k-th training; k is a positive integer, k≥1;
[0173] If k is a preset number of iterations, the first object matrix after the kth training, the first content matrix after the kth training, the second object matrix after the kth training, and the second content matrix after the kth training are determined as the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix.
[0174] As a possible implementation, the prediction unit 504 is specifically configured to:
[0175] Performing behavior prediction of the object set for the first content set based on the first training object matrix and the first training content matrix to obtain a first target behavior matrix;
[0176] Behavior prediction of the object set for the second content set is performed based on the second training object matrix and the second training content matrix to obtain a second target behavior matrix.
[0177] As a possible implementation manner, the determining unit 505 is specifically configured to:
[0178] Determine a first target behavior vector of the target object for the first content set from the first target behavior matrix; determine a second target behavior vector of the target object for the second content set from the second target behavior matrix;
[0179] Sort the components of each dimension in the first target behavior vector from high to low to obtain a first sorting result; sort the components of each dimension in the second target behavior vector from high to low to obtain a second sorting result;
[0180] The first content corresponding to the first component in the first sorting result is determined as the first target content; and the second content corresponding to the first component in the second sorting result is determined as the second target content.
[0181] As a possible implementation, the device further includes: a packaging unit and a recommendation unit;
[0182] A packaging unit, configured to package the first target content and the second target content to obtain target packaged content;
[0183] The recommendation unit is used to recommend target package content to the target object.
[0184] The apparatus for determining content joint recommendation provided in the above embodiment first obtains a first encryption matrix, a first object matrix, and a first content matrix sent by a first content module, and a second encryption matrix, a second object matrix, and a second content matrix sent by a second content module. The first encryption matrix and the second encryption matrix are, respectively, encryption matrices of a first behavior matrix of an object set with respect to the first content set and a second behavior matrix of an object set with respect to the second content set. The first object matrix and the first content matrix are parameter matrices of the first behavior matrix, and the second object matrix and the second content matrix are parameter matrices of the second behavior matrix. Secondly, the first encryption matrix and the second encryption matrix are decrypted and fused to obtain a fused behavior matrix of the first and second behavior matrices. Then, based on the matrix relationship between the parameter matrix and the fused behavior matrix, the first object matrix, the first content matrix, the second object matrix, and the second content matrix are iteratively trained, and behavior prediction is performed to obtain a first target behavior matrix of the object set with respect to the first content set and a second target behavior matrix of the object set with respect to the second content set. Finally, for any target object in the object set, first target content and second target content to be jointly recommended to the target object are determined from the first and second content sets using the first and second target behavior matrices.
[0185] It can be seen that different content modules do not need to exchange local behavior matrices. They send the encrypted matrix and parameter matrix of the local behavior matrix to a third party respectively. The encrypted matrices sent by different content modules are decrypted and fused by the third party to obtain the fused behavior matrix. The parameter matrix is iteratively trained based on the matrix relationship between the parameter matrix and the fused behavior matrix. The trained parameter matrix is used to predict the behavior matrix of each content module respectively to obtain the predicted behavior matrix of each content module. Based on the predicted behavior matrix of each content module, different content is determined to be jointly recommended to the object from different content sets provided by different content modules. In this way, different content modules do not need to exchange local behavior matrices to ensure data privacy and security. A third-party confidential sharing mechanism is used to fuse the local behavior matrices of different content modules to train their parameter matrices. The behavior prediction of each content module is completed to determine the jointly recommended content of different content modules, thereby jointly improving the content recommendation effect of different content modules.
[0186] In response to the method for determining content joint recommendation described above, an embodiment of the present application also provides a device for determining content joint recommendation, so that the above-mentioned method for determining content joint recommendation can be implemented and applied in practice. The computer device provided in the embodiment of the present application will be introduced from the perspective of hardware implementation.
[0187] See also Figure 6 , Figure 6This is a schematic diagram of a server structure provided by an embodiment of the present application. The server 600 may have relatively large differences due to different configurations or performances, and may include one or more central processing units (CPUs) 622 (for example, one or more processors) and a memory 632, and one or more storage media 630 (for example, one or more massive storage devices) for storing application programs 642 or data 644. Among them, the memory 632 and the storage medium 630 can be temporary storage or permanent storage. The program stored in the storage medium 630 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations on the server. Furthermore, the central processing unit 622 can be configured to communicate with the storage medium 630 to execute a series of instruction operations in the storage medium 630 on the server 600.
[0188] The server 600 may also include one or more power supplies 626, one or more wired or wireless network interfaces 650, one or more input and output interfaces 658, and / or one or more operating systems 641, such as Windows Server 2000. TM , Mac OS X TM , Unix TM , Linux TM , FreeBSD TM etc.
[0189] The steps performed by the server in the above embodiment can be based on the Figure 6 The server structure shown.
[0190] The CPU 622 is configured to execute the following steps:
[0191] Obtaining a first encryption matrix, a first object matrix, and a first content matrix sent by the first content module, and a second encryption matrix, a second object matrix, and a second content matrix sent by the second content module; the first encryption matrix is an encryption matrix of the object set for the first behavior matrix of the first content set, and the first object matrix and the first content matrix are parameter matrices of the first behavior matrix; the second encryption matrix is an encryption matrix of the object set for the second behavior matrix of the second content set, and the second object matrix and the second content matrix are parameter matrices of the second behavior matrix;
[0192] Decrypting and fusing the first encryption matrix and the second encryption matrix to obtain a fused behavior matrix of the first behavior matrix and the second behavior matrix;
[0193] Iteratively training the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to a matrix relationship between the parameter matrix and the fusion behavior matrix to obtain a first training object matrix, a first training content matrix, a second training object matrix, and a second training content matrix;
[0194] Performing behavior prediction based on the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix to obtain a first target behavior matrix of the object set for the first content set and a second target behavior matrix of the object set for the second content set;
[0195] For any target object in the object set, first target content and second target content jointly recommended to the target object are determined from the first content set and the second content set according to the first target behavior matrix and the second target behavior matrix.
[0196] Optionally, the CPU 622 may also execute the method steps of any specific implementation of the method for determining content joint recommendation in the embodiments of the present application.
[0197] See also Figure 7 , Figure 7 This is a schematic diagram of the structure of a terminal device provided in an embodiment of the present application. For ease of explanation, only the parts related to the embodiment of the present application are shown. For specific technical details not disclosed, please refer to the method section of the embodiment of the present application. The terminal device can be any terminal device including a mobile phone, tablet computer, PDA, etc. Taking the terminal device as a mobile phone as an example:
[0198] Figure 7 The block diagram shows a partial structure of a mobile phone related to the terminal device provided in the embodiment of the present application. Figure 7 The mobile phone includes components such as a radio frequency (RF) circuit 710, a memory 720, an input unit 730, a display unit 740, a sensor 750, an audio circuit 760, a wireless fidelity (WiFi) module 770, a processor 780, and a power supply 790. Those skilled in the art will understand that Figure 7 The mobile phone structure shown in the figure does not constitute a limitation to the mobile phone, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.
[0199] The following combination Figure 7 A detailed introduction to the various components of a mobile phone:
[0200] The RF circuit 710 can be used to receive and send signals during information transmission or calls. In particular, after receiving the downlink information from the base station, it is sent to the processor 780 for processing; in addition, the designed uplink data is sent to the base station. Generally, the RF circuit 710 includes but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (LNA), a duplexer, etc. In addition, the RF circuit 710 can also communicate with the network and other devices through wireless communication. The above-mentioned wireless communication can use any communication standard or protocol, including but not limited to Global System of Mobile communication (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (LTE), email, Short Messaging Service (SMS), etc.
[0201] The memory 720 can be used to store software programs and modules. The processor 780 implements various functional applications and data processing of the mobile phone by running the software programs and modules stored in the memory 720. The memory 720 may mainly include a program storage area and a data storage area. The program storage area may store an operating system and at least one application required for a function (such as a sound playback function, an image playback function, etc.); the data storage area may store data created based on the use of the mobile phone (such as audio data, a phone book, etc.). In addition, the memory 720 may include high-speed random access memory and non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage device.
[0202] The input unit 730 can be used to receive input digital or character information, and to generate key signal input related to the user settings and function control of the mobile phone. Specifically, the input unit 730 may include a touch panel 731 and other input devices 732. The touch panel 731, also known as a touch screen, can collect user touch operations on or near it (such as operations performed by the user using any suitable object or accessory such as a finger, stylus, etc. on or near the touch panel 731) and drive the corresponding connection device according to a pre-set program. Optionally, the touch panel 731 may include two parts: a touch detection device and a touch controller. Among them, the touch detection device detects the user's touch direction and detects the signal caused by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device and converts it into touch point coordinates, which are then sent to the processor 780. It can also receive commands sent by the processor 780 and execute them. In addition, the touch panel 731 can be implemented using various types such as resistive, capacitive, infrared and surface acoustic wave. In addition to the touch panel 731, the input unit 730 may further include other input devices 732. Specifically, the other input devices 732 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, and a joystick.
[0203] The display unit 740 can be used to display information input by the user or information provided to the user and various menus of the mobile phone. The display unit 740 may include a display panel 741. Optionally, the display panel 741 may be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), etc. Further, the touch panel 731 may cover the display panel 741. When the touch panel 731 detects a touch operation on or near it, it is transmitted to the processor 780 to determine the type of touch event. Subsequently, the processor 780 provides corresponding visual output on the display panel 741 according to the type of touch event. Although in Figure 7 In the embodiment, the touch panel 731 and the display panel 741 are used as two independent components to realize the input and output functions of the mobile phone, but in some embodiments, the touch panel 731 and the display panel 741 can be integrated to realize the input and output functions of the mobile phone.
[0204] The mobile phone may also include at least one sensor 750, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 741 according to the brightness of the ambient light, and the proximity sensor may turn off the display panel 741 and / or the backlight when the mobile phone is moved to the ear. As a type of motion sensor, the accelerometer sensor can detect the magnitude of acceleration in all directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used for applications that identify the posture of the mobile phone (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc.; as for other sensors that the mobile phone can also be configured with, such as gyroscopes, barometers, hygrometers, thermometers, infrared sensors, etc., they will not be described here.
[0205] Audio circuit 760, speaker 761, and microphone 762 provide an audio interface between the user and the phone. Audio circuit 760 converts received audio data into electrical signals and transmits them to speaker 761, which then converts them into sound signals for output. Microphone 762, on the other hand, converts collected sound signals into electrical signals, which are then received by audio circuit 760 and converted into audio data. The audio data is then processed by processor 780 and transmitted to, for example, another phone via RF circuit 710, or stored in memory 720 for further processing.
[0206] WiFi is a short-range wireless transmission technology. The mobile phone can help users send and receive emails, browse the web and access streaming media through the WiFi module 770. It provides users with wireless broadband Internet access. Figure 7 A WiFi module 770 is shown, but it is understandable that it is not an essential component of the mobile phone and can be omitted as needed without changing the essence of the invention.
[0207] Processor 780 is the control center of the mobile phone, connecting all parts of the mobile phone using various interfaces and circuits. By running or executing software programs and / or modules stored in memory 720 and accessing data stored in memory 720, it performs various functions of the mobile phone and processes data, thereby providing overall control of the mobile phone. Optionally, processor 780 may include one or more processing units; preferably, processor 780 may integrate an application processor and a modem processor, wherein the application processor primarily handles the operating system, user interface, and application programs, while the modem processor primarily handles wireless communications. It is understood that the modem processor does not need to be integrated into processor 780.
[0208] The mobile phone also includes a power supply 790 (such as a battery) for supplying power to various components. Preferably, the power supply can be logically connected to the processor 780 through a power management system, thereby managing charging, discharging, and power consumption management functions through the power management system.
[0209] Although not shown, the mobile phone may also include a camera, a Bluetooth module, etc., which will not be described in detail here.
[0210] In the embodiment of the present application, the memory 720 included in the mobile phone can store program codes and transmit the program codes to the processor.
[0211] The processor 780 included in the mobile phone can execute the content joint recommendation determination method provided in the above embodiment according to the instructions in the program code.
[0212] An embodiment of the present application further provides a computer-readable storage medium for storing a computer program, wherein the computer program is used to execute the method for determining content joint recommendation provided in the above embodiment.
[0213] Embodiments of the present application also provide a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the method for determining content joint recommendation provided in various optional implementations of the above-mentioned aspects.
[0214] A person skilled in the art will understand that all or part of the steps of implementing the above-mentioned method embodiment can be completed by hardware related to program instructions, and the above-mentioned program can be stored in a computer-readable storage medium. When the program is executed, it executes the steps of the above-mentioned method embodiment; and the above-mentioned storage medium can be at least one of the following media: read-only memory (ROM), random access memory (RAM), magnetic disk or optical disk, etc., various media that can store program codes.
[0215] It should be noted that the various embodiments in this specification are described in a progressive manner, and the same or similar parts between the various embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the device and system embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiments. The device and system embodiments described above are merely schematic, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules can be selected according to actual needs to achieve the purpose of the scheme of this embodiment. A person of ordinary skill in the art can understand and implement it without expending creative work.
[0216] The above is merely one specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in this application should be included in the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.
Claims
1. A method for determining content joint recommendation, characterized in that: The method comprises: Obtaining a first encryption matrix, a first object matrix, and a first content matrix sent by a first content module, and a second encryption matrix, a second object matrix, and a second content matrix sent by a second content module; the first encryption matrix is an encryption matrix of a first behavior matrix of an object set for a first content set, and the first object matrix and the first content matrix are parameter matrices of the first behavior matrix; the second encryption matrix is an encryption matrix of a second behavior matrix of a second content set for an object set, and the second object matrix and the second content matrix are parameter matrices of the second behavior matrix; Decrypting and fusing the first encryption matrix and the second encryption matrix to obtain a fused behavior matrix of the first behavior matrix and the second behavior matrix; Iteratively training the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to a matrix relationship between the parameter matrix and the fused behavior matrix to obtain a first training object matrix, a first training content matrix, a second training object matrix, and a second training content matrix; Performing behavior prediction based on the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix to obtain a first target behavior matrix for the object set with respect to the first content set and a second target behavior matrix for the object set with respect to the second content set; For any target object in the object set, first target content and second target content jointly recommended to the target object are determined from the first content set and the second content set according to the first target behavior matrix and the second target behavior matrix.
2. The method according to claim 1, characterized in that The iterative training of the first object matrix, the first content matrix, the second object matrix, and the second content matrix based on the matrix relationship between the parameter matrix and the fusion behavior matrix to obtain a first training object matrix, a first training content matrix, a second training object matrix, and a second training content matrix includes: performing a t-th training on the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to the matrix relationship, to obtain a first object matrix after the t-th training, a first content matrix after the t-th training, a second object matrix after the t-th training, and a second content matrix after the t-th training; t is a positive integer, t≥1; Obtaining a t-th loss value according to the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, the second content matrix after the t-th training, and a preset loss function; If the absolute value of the difference between the t-th loss value and the t-1-th loss value is less than the preset difference, the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, and the second content matrix after the t-th training are determined as the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix.
3. The method according to claim 2, characterized in that The obtaining of a t-th loss value according to the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, the second content matrix after the t-th training, and a preset loss function includes: Performing behavior prediction on the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, and the second content matrix after the t-th training to obtain a t-th first predicted behavior matrix of the object set for the first content set and a t-th second predicted behavior matrix of the object set for the second content set; The tth loss value is obtained according to the tth first prediction behavior matrix, the tth second prediction behavior matrix and the preset loss function.
4. The method according to claim 3, characterized in that The tth loss value includes the tth first loss value corresponding to the tth first prediction behavior matrix and the tth second loss value corresponding to the tth second prediction behavior matrix; the absolute value of the difference between the tth loss value and the t-1th loss value is less than the preset difference, the absolute value of the difference between the tth first loss value and the t-1th first loss value is less than the preset difference, and the absolute value of the difference between the tth second loss value and the t-1th second loss value is less than the preset difference.
5. The method according to claim 1, characterized in that The iterative training of the first object matrix, the first content matrix, the second object matrix, and the second content matrix based on the matrix relationship between the parameter matrix and the fusion behavior matrix to obtain a first training object matrix, a first training content matrix, a second training object matrix, and a second training content matrix includes: performing a k-th training on the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to the matrix relationship, to obtain a first object matrix after the k-th training, a first content matrix after the k-th training, a second object matrix after the k-th training, and a second content matrix after the k-th training; k is a positive integer, k≥1; If k is a preset number of iterations, the first object matrix after the k-th training, the first content matrix after the k-th training, the second object matrix after the k-th training, and the second content matrix after the k-th training are determined as the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix.
6. The method according to claim 1, characterized in that The performing behavior prediction based on the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix to obtain a first target behavior matrix for the object set with respect to the first content set and a second target behavior matrix for the object set with respect to the second content set includes: performing behavior prediction of the object set with respect to the first content set based on the first training object matrix and the first training content matrix to obtain the first target behavior matrix; Behavior prediction of the object set with respect to the second content set is performed based on the second training object matrix and the second training content matrix to obtain the second target behavior matrix.
7. The method according to claim 1, characterized in that The step of determining, for any target object in the object set, first target content and second target content to be jointly recommended to the target object from the first content set and the second content set according to the first target behavior matrix and the second target behavior matrix, includes: determining a first target behavior vector of the target object for the first content set from the first target behavior matrix; determining a second target behavior vector of the target object for the second content set from the second target behavior matrix; Sort the components of each dimension in the first target behavior vector from high to low to obtain a first sorting result; sort the components of each dimension in the second target behavior vector from high to low to obtain a second sorting result; The first content corresponding to the first component in the first sorting result is determined as the first target content; and the second content corresponding to the first component in the second sorting result is determined as the second target content.
8. The method according to claim 1, characterized in that The decrypting and fusing the first encryption matrix and the second encryption matrix to obtain a fused behavior matrix of the first behavior matrix and the second behavior matrix includes: decrypting the first encryption matrix and the second encryption matrix to obtain the first behavior matrix and the second behavior matrix; The first behavior matrix and the second behavior matrix are fused according to the object identifiers in the object set to obtain the fused behavior matrix.
9. The method according to any one of claims 1 to 8, characterized in that The method further comprises: Packaging the first target content and the second target content to obtain target packaged content; The target packaged content is recommended to the target object.
10. A device for determining content joint recommendation, characterized in that: The device comprises: an acquisition unit, a fusion unit, a training unit, a prediction unit and a determination unit; The acquisition unit is configured to acquire a first encryption matrix, a first object matrix, and a first content matrix sent by a first content module, and a second encryption matrix, a second object matrix, and a second content matrix sent by a second content module; the first encryption matrix is an encryption matrix of a first behavior matrix of an object set for a first content set, and the first object matrix and the first content matrix are parameter matrices of the first behavior matrix; the second encryption matrix is an encryption matrix of a second behavior matrix of a second content set for an object set, and the second object matrix and the second content matrix are parameter matrices of the second behavior matrix; The fusion unit is configured to decrypt and fuse the first encryption matrix and the second encryption matrix to obtain a fused behavior matrix of the first behavior matrix and the second behavior matrix; The training unit is configured to iteratively train the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to a matrix relationship between the parameter matrix and the fusion behavior matrix to obtain a first training object matrix, a first training content matrix, a second training object matrix, and a second training content matrix; The prediction unit is configured to perform behavior prediction based on the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix to obtain a first target behavior matrix for the object set with respect to the first content set and a second target behavior matrix for the object set with respect to the second content set; The determining unit is configured to determine, for any target object in the object set, based on the first target behavior matrix and the second target behavior matrix, first target content and second target content to be jointly recommended to the target object from the first content set and the second content set.
11. The device according to claim 10, characterized in that The training unit is specifically used to: performing a t-th training on the first object matrix, the first content matrix, the second object matrix, and the second content matrix according to the matrix relationship, to obtain a first object matrix after the t-th training, a first content matrix after the t-th training, a second object matrix after the t-th training, and a second content matrix after the t-th training; t is a positive integer, t≥1; Obtaining a t-th loss value according to the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, the second content matrix after the t-th training, and a preset loss function; If the absolute value of the difference between the t-th loss value and the t-1-th loss value is less than the preset difference, the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, and the second content matrix after the t-th training are determined as the first training object matrix, the first training content matrix, the second training object matrix, and the second training content matrix.
12. The device according to claim 11, characterized in that The training unit is specifically used to: Performing behavior prediction on the first object matrix after the t-th training, the first content matrix after the t-th training, the second object matrix after the t-th training, and the second content matrix after the t-th training to obtain a t-th first predicted behavior matrix of the object set for the first content set and a t-th second predicted behavior matrix of the object set for the second content set; The tth loss value is obtained according to the tth first prediction behavior matrix, the tth second prediction behavior matrix and the preset loss function.
13. A computer device, characterized in that: The computer device includes a processor and a memory: The memory is used to store program code and transmit the program code to the processor; The processor is configured to execute the content joint recommendation determination method according to any one of claims 1 to 9 according to instructions in the program code.
14. A computer-readable storage medium, characterized in that The computer-readable storage medium is used to store a computer program. When the computer program is executed by a processor, the method for determining content joint recommendation according to any one of claims 1 to 9 is executed.
15. A computer program product, characterized in that The method comprises a computer program or an instruction; when the computer program or the instruction is executed by a processor, the method for determining the content joint recommendation according to any one of claims 1 to 9 is executed.
Citation Information
Patent Citations
Personalized recommendation method and system based on interactive data clustering
CN110162706A
Model training method and device, user identification method and device and electronic equipment
CN111275472A