Recommendation method and device based on multiple data sources, electronic device and storage medium

By identifying highly active data sources in a multi-data source recommendation system, generating target feature vectors, and constructing recommendation models, the problems of cold start for new users and changes in interests are solved, resulting in more accurate recommendation services.

CN115495662BActive Publication Date: 2026-03-03AGRICULTURAL BANK OF CHINA
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-10-17
Publication Date
2026-03-03

AI Technical Summary

Technical Problem

Existing recommendation schemes suffer from the cold start problem for new users when analyzing data from a single data source, and fail to effectively address the low recommendation accuracy caused by changes in user interests over time.

Method used

By receiving user identifiers, multiple target data sources with high activity levels are identified, target feature vectors are generated, and a target recommendation model is built based on these data sources. By incorporating changes in user interests, the accuracy of recommendations can be improved.

Benefits of technology

It solves the cold start problem, takes into account changes in user interests, and improves the accuracy and efficiency of recommendation services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115495662B_ABST
    Figure CN115495662B_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a kind of based on the recommendation method, device, electronic equipment and storage medium of multiple data sources, related to computer technology field, the method comprises: receiving the recommendation request sent by the system to be recommended, and recommendation request includes user identifier;At least two target data sources are determined in the corresponding data source generated in business system set according to user identifier;Determine the target feature vector of user identifier in at least two target data sources;At least two target data sources are generated target recommendation model based on, and target feature vector is input into target recommendation model and obtains recommendation result.The present application inputs the mode of target feature vector related to target data source into target recommendation model, on the basis of solving "cold start" problem, the transfer change of user interest is considered, and the beneficial effect of improving recommendation service accuracy is obtained by the recommendation result obtained by the recommendation model provided in the embodiment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present invention relate to the field of computer technology, and in particular to recommendation methods, apparatus, electronic devices and storage media based on multiple data sources. Background Technology

[0002] With the advancement and development of technology, all industries are using big data for data analysis to provide users with more accurate services based on the results of data analysis, such as providing recommendation services.

[0003] When making recommendations to users, existing recommendation schemes typically analyze a single data source within the current business system to obtain analysis results and then make recommendations. However, when making recommendations based on a single data source, a "cold start" problem often exists for new users within the business system (the "cold start" problem refers to the difficulty in providing accurate recommendation services to new users due to a lack of data about them). Some larger companies can provide corresponding recommendation services to users based on data sources obtained from multiple subsystems within the system, which can solve the above-mentioned "cold start" problem to some extent.

[0004] However, when making recommendations based on data sources obtained from multiple subsystems, the changes in user interests over time are not taken into account, resulting in low accuracy of the recommendation service. Summary of the Invention

[0005] This invention provides a recommendation method, apparatus, electronic device, and storage medium based on multiple data sources, which can improve existing solutions for providing recommendation services to users.

[0006] In a first aspect, embodiments of the present invention provide a recommendation method based on multiple data sources, comprising:

[0007] Receive a recommendation request sent by the system to be recommended, wherein the recommendation request includes a user identifier;

[0008] Based on the user identifier, at least two target data sources are determined from the corresponding data sources generated by the business system set;

[0009] Determine the target feature vector of the user identifier in at least two of the target data sources;

[0010] A target recommendation model is generated based on at least two target data sources, and the target feature vector is input into the target recommendation model to obtain the recommendation result.

[0011] Optionally, the set of business systems includes at least two business systems;

[0012] The step of determining at least two target data sources from the corresponding data sources generated by the business system set based on the user identifier includes:

[0013] Determine the activity level of the user identifier in the corresponding data source generated by each of the business systems;

[0014] Data sources whose activity level is greater than or equal to a preset value are identified as the target data source.

[0015] Optionally, determining the activity level of the user identifier in the corresponding data source generated by each of the business systems includes:

[0016] Obtain the access information generated by the user identifier for each of the business systems within a historical time period;

[0017] The activity level of the user identifier in each data source is determined based on the access information.

[0018] Optionally, determining the target feature vector of the user identifier in at least two of the target data sources includes:

[0019] Determine the initial feature vector of the user identifier in each of the target data sources;

[0020] The target feature vector is obtained by fusing features from all the initial feature vectors.

[0021] Optionally, generating the target recommendation model based on at least two target data sources includes:

[0022] Obtain an initial recommendation model trained based on a pre-defined analysis algorithm;

[0023] The weight information of the corresponding model parameters in the initial recommendation model is determined based on the activity value of each target data source.

[0024] The target recommendation model is obtained by adjusting the model parameters based on the weight information.

[0025] Optionally, before receiving the recommendation request sent by the recommendation system, the method further includes:

[0026] Identify the corresponding data source generated by each business system in the set of business systems to obtain the data source identifier;

[0027] Accordingly, after determining at least two target data sources from the corresponding data sources generated by the business system set based on the user identifier, the method further includes:

[0028] Obtain the data source identifiers corresponding to at least two of the target data sources, and obtain the combined identifier of at least two of the target data sources based on the at least two data source identifiers.

[0029] Optionally, after generating the target recommendation model based on at least two of the target data sources, the method further includes:

[0030] The model identifier of the target recommendation model is obtained based on the combined identifier, and the model identifier and the combined identifier are saved to the identifier mapping table, in which the model identifier and the combined identifier correspond one-to-one.

[0031] Secondly, embodiments of the present invention provide a recommendation device based on multiple data sources, the device comprising:

[0032] The recommendation request receiving module is used to receive recommendation requests sent by the system to be recommended, wherein the recommendation request includes a user identifier;

[0033] The data source determination module is used to determine at least two target data sources from the corresponding data sources generated by the business system set based on the user identifier;

[0034] A target feature determination module is used to determine the target feature vector of the user identifier in at least two target data sources;

[0035] The target model generation module is used to generate a target recommendation model based on at least two target data sources, and input the target feature vector into the target recommendation model to obtain the recommendation result.

[0036] Thirdly, embodiments of the present invention also provide an electronic device, the electronic device comprising:

[0037] At least one processor; and

[0038] A memory communicatively connected to the at least one processor; wherein,

[0039] The memory stores a computer program that can be executed by the at least one processor, such that the at least one processor can perform the recommendation method based on multiple data sources as described in any embodiment of the present invention.

[0040] Fourthly, embodiments of the present invention also provide a computer-readable storage medium storing computer instructions that, when executed by a processor, implement the recommendation method based on multiple data sources as described in any embodiment of the present invention.

[0041] The recommendation scheme based on multiple data sources provided in this embodiment of the invention first receives a recommendation request sent by the system to be recommended, which includes a user identifier. Then, based on the user identifier, at least two target data sources are determined from the corresponding data sources generated by the business system set. The current target data source is the data source with higher activity among all data sources generated by the current user. Next, the target feature vectors of the user identifier in the at least two target data sources are determined. Finally, a target recommendation model is generated based on the at least two target data sources, and the target feature vectors are input into the target recommendation model to obtain the recommendation result. The scheme provided in this embodiment, by determining at least two target data sources, generating a target recommendation model based on the target data sources, and inputting the target feature vectors related to the target data sources into the target recommendation model, solves the "cold start" problem of existing solutions while also taking into account the migration and change of user interests. The recommendation results obtained through the recommendation model provided in this embodiment achieve the beneficial effect of improving the accuracy of recommendation services.

[0042] It should be understood that the description in this section is not intended to identify key or important features of the embodiments of the present invention, nor is it intended to limit the scope of the present invention. Other features of the embodiments of the present invention will become readily apparent from the following description. Attached Figure Description

[0043] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0044] Figure 1 This is a flowchart illustrating a recommendation method based on multiple data sources provided in an embodiment of the present invention;

[0045] Figure 2 This is another flowchart illustrating the recommendation method based on multiple data sources provided in this embodiment of the invention;

[0046] Figure 3 This is a schematic diagram of a recommendation device based on multiple data sources provided in an embodiment of the present invention;

[0047] Figure 4 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation

[0048] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.

[0049] The present invention will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and not intended to limit it. Furthermore, it should be noted that, for ease of description, the accompanying drawings show only the parts relevant to the present invention, and not all of the structures.

[0050] Figure 1 This is a flowchart illustrating a recommendation method based on multiple data sources provided in an embodiment of the present invention. This embodiment is applicable to situations where recommendation services are provided to users based on multiple data sources. The method can be executed by a recommendation device based on multiple data sources, which can be implemented in hardware and / or software and can be configured in computer equipment such as servers. (Reference) Figure 1 The method may specifically include the following steps:

[0051] S110. Receive a recommendation request sent by the system to be recommended. The recommendation request includes a user identifier.

[0052] The system to be recommended can be a newly registered system or a system that the user has already registered for. The system to be recommended can be integrated into the mobile terminal or client in the form of an application, mini-program, or web link. There are no restrictions on the specific type and form of the system to be recommended.

[0053] The recommendation request can be generated after a user successfully logs into the system to be recommended, or it can be generated by the user manually clicking the relevant "recommend" button after logging into the system to be recommended. The specific way the recommendation request is generated is not limited here.

[0054] The aforementioned user identifier is an identifier that can uniquely identify a user. For example, it can be a user's national identity card number, decentralized identity (DID), International Mobile Equipment Identity (IMEI), or social network account, etc., and there are no restrictions on the specific user identifier.

[0055] When a user logs in to the recommendation system, they can log in using their user ID and password. When the server receives a recommendation request from the recommendation system, it can determine the current user's identity based on the user ID carried in the request.

[0056] Recommendation systems can provide relevant recommendation services to systems that need to be recommended, based on received recommendation requests. These systems can be integrated into computer devices such as servers. When executing recommendation services, the system can analyze user interests and purchasing behavior based on data sources generated over historical time periods to provide personalized recommendations, suggesting services, friends, products, events, and activities that the user may be interested in. Specific recommendation functions of the system are not limited here.

[0057] S120. Determine at least two target data sources from the corresponding data sources generated by the business system set based on the user identifier.

[0058] The set of business systems includes at least two business systems. At least two business systems can be understood as all business systems registered based on the user identifier. If the number of business systems registered based on the user identifier is small, it can also include business systems registered by relevant friends in the social software or social address book corresponding to the user identifier. The specific types of business systems included in the set of business systems are not limited here.

[0059] When a user registers in a business system, corresponding access information is generated in that system. For example, this information could include viewed content, viewing duration, works liked or commented on, as well as the type of works viewed, the number of times the user logged into the current business system, the number of interactions, and the number of clicks. The data generated based on this access information is called the data source. The types and content of data sources generated by different business systems are all different.

[0060] The recommendation system can use user identifiers as the main body, storing all data sources generated by user identifiers in a set of business systems, and further identifying at least two target data sources from all data sources. Specifically, the method for identifying at least two target data sources can be to determine the activity level of the user identifier in the corresponding data source generated by each business system, and identify the data source with an activity level greater than or equal to a preset value as the target data source.

[0061] Furthermore, a preset number of business systems or business systems with activity levels higher than a preset value can be identified as target business systems. The specific method for identifying target business systems is not limited here.

[0062] It should be noted that the recommendation scheme based on multiple data sources provided in this embodiment includes at least two target data sources. The purpose of this is to perform fusion analysis based on at least two target data sources to solve the "cold start" problem of the recommendation system. Furthermore, the target data sources are relatively active data generated by users in historical time periods, which can take into account changes in user interests. Making recommendations based on data that users are interested in in historical time periods helps to improve the accuracy of recommendation results in subsequent steps.

[0063] Optionally, since the computer devices hosting the recommendation system need to perform complex and massive algorithmic calculations, to avoid data redundancy, the computer devices integrating the recommendation system may not store user identifiers. In this case, the process of determining the activity level of user identifiers in the corresponding data sources generated by each business system can be implemented on the computer devices hosting each business system. The computer devices integrating the recommendation system only need to obtain the activity level values ​​corresponding to the data sources generated by each business system, and further determine at least two target data sources based on the activity level values. This allows for more efficient use of the performance of each computer device and improves storage and computation efficiency. The specific functions performed by each computer device are not limited here.

[0064] S130. Determine the target feature vector of the user identifier in at least two target data sources.

[0065] The method for determining the target feature vector of the current user in at least two target data sources based on the user identifier can be as follows: first, obtain the initial feature vector of the current user in each target data source based on the user identifier, and then fuse all the initial feature vectors to obtain the target feature vector.

[0066] The aforementioned feature vectors can be interest features related to the current user. These interest features could include: products, videos, articles clicked by the user, and search terms entered by the user. The initial feature vectors can be obtained by embedding the corresponding interest features from each target data source into multiple initial feature vectors; then averaging these initial feature vectors to merge them into a single target feature vector, which represents the user's interests. Alternatively, features can be extracted from the user's published text, image information, and browsed content to obtain initial feature vectors for each target data source, and then the user's interest vector, i.e., the target feature vector, can be determined based on the dictionary within the initial feature vectors. The specific methods for obtaining the initial and target feature vectors are limited here.

[0067] S140. Generate a target recommendation model based on at least two target data sources, and input the target feature vector into the target recommendation model to obtain the recommendation result.

[0068] The current target recommendation model is a personalized model generated based on at least two target data sources. One way to generate a target recommendation model based on at least two target data sources is to train an initial recommendation model based on the commonalities of recommendation models, and then adjust the relevant model parameters of the initial recommendation model by combining the data characteristics or initial feature vectors of at least two target data sources, resulting in the subsequent target recommendation model. The advantage of this approach is that the target recommendation model is generated based on the data characteristics of at least two target data sources. After inputting the target feature vectors into the target recommendation model, the resulting recommendations are more aligned with user needs, achieving accurate recommendations.

[0069] The recommendation method based on multiple data sources provided in this embodiment of the invention first receives a recommendation request sent by the system to be recommended, the recommendation request including a user identifier; then, based on the user identifier, at least two target data sources are determined from the corresponding data sources generated by the business system set, the current target data source being the data source with higher activity among all data sources generated by the current user; next, the target feature vectors of the user identifier in the at least two target data sources are determined; finally, a target recommendation model is generated based on the at least two target data sources, and the target feature vectors are input into the target recommendation model to obtain the recommendation result. The solution provided in this embodiment, by determining at least two target data sources, generating a target recommendation model based on the target data sources, and inputting the target feature vectors related to the target data sources into the target recommendation model, solves the "cold start" problem of existing solutions while also taking into account the migration and change of user interests. The recommendation result obtained through the recommendation model provided in this embodiment achieves the beneficial effect of improving the accuracy of recommendation services.

[0070] Figure 2 This is another flowchart illustrating the recommendation method based on multiple data sources provided in this embodiment of the invention. The relationship between this embodiment and the above embodiments further refines the corresponding features of the above embodiments. Figure 2 As shown, the method may include the following steps:

[0071] S210. Receive a recommendation request sent by the system to be recommended. The recommendation request includes a user identifier.

[0072] S220. Determine the activity level of the user identifier in the corresponding data source generated by each business system.

[0073] In one optional embodiment, determining the activity level of a user identifier in the corresponding data source generated by each business system can be achieved by: obtaining access information of the user identifier to each business system during a historical time period; and determining the activity level of the user identifier in each data source based on the access information.

[0074] The current historical time period can be determined based on the amount of data from the required data source. For example, it can be one month, three months, or one year, and the specific duration of the historical time period is not limited here.

[0075] Access information can identify relevant information generated after a user logs into each business system. Current access information may include: viewed content, viewing duration, works liked or commented on, types of works viewed, number of logins, number of interactions, number of clicks, etc. The specific content included in access information is not limited here.

[0076] Furthermore, the user's activity level within each business system is determined based on the extracted access information of the current user in each business system. A higher activity level indicates more frequent use of the current business system and greater user interest.

[0077] If the user does not generate a corresponding data source within the business system, the user activity level is returned as 0.

[0078] For example, a user's activity level can be represented by an integer between 0 and 10, or by a decimal between 0 and 1. The higher the value, the greater the activity level. The specific way of representing activity level is not limited here.

[0079] Taking a business system set comprising 8 data sources generated by these business systems, with the current data sources being data source 1, data source 2, ..., data source 8, as an example, the activity level of user A in each business system's corresponding data source 1-8 can be 1, 8, 9, 1, 2, 3, 2, 8, respectively. The specific number of business systems included in the business system set, and the activity level of the data source corresponding to the user identifier generated by each business system, are not limited here.

[0080] S221. Select data sources whose activity level is greater than or equal to a preset value as target data sources.

[0081] Taking the current preset value of 8 as an example, when the activity levels of data sources 1-8 are 1, 8, 9, 1, 2, 3, 2, 8 respectively, the target data sources are data sources 2, 3 and 8 with activity levels of 8, 9 and 8 respectively.

[0082] Optionally, a preset number of data sources can be selected as target data sources. For example, if the top four data sources with the highest activity values ​​are selected as target data sources, then when the activity values ​​of data sources 1-8 are 1, 8, 9, 1, 2, 3, 2, 8 respectively, the target data sources are data sources 2, 3, 6 and 8 with activity values ​​of 8, 9, 3 and 8 respectively. The specific method of determining the target data sources is not limited here.

[0083] Furthermore, in this step, the target data source is the data source where the user identifier has a high level of activity in the historical time period. The advantage of this selection is that it can take into account the changes in the user's interests in the historical time period, so that when the user is given recommendation services based on the target data source in the future, the recommendation results will be more in line with the user's current needs.

[0084] S230. Determine the initial feature vector of the user identifier in each target data source.

[0085] The initial feature vector can represent the user's interest features in the currently generated target data source. For example, the initial feature vector for each target data source can be obtained by embedding the products, videos, articles, and data sources related to the user's clicked search terms.

[0086] S231. Perform feature fusion on all initial feature vectors to obtain the target feature vector.

[0087] When there are multiple target data sources, there are also multiple initial feature vectors. In this step, feature fusion processing needs to be performed on all initial feature vectors. For example, feature fusion can be performed by concatenating all initial feature vectors to obtain the target feature vector; alternatively, a weight can be assigned to each initial feature vector based on the activity of each target data source, and then a weighted sum of all initial feature vectors can be used to obtain the target feature vector. The specific method of feature fusion for all initial feature vectors is not limited here.

[0088] S240. Obtain the initial recommendation model trained based on the preset analysis algorithm.

[0089] The initial recommendation model can be trained based on a pre-defined analysis algorithm and commonalities among recommendation models. The pre-defined analysis algorithm can be a clustering algorithm or a classification algorithm. For clustering algorithms, K-means clustering or hierarchical clustering can be used to obtain several similar samples. The recommendation model is then trained based on similarity to obtain the initial recommendation model. For classification algorithms, neural network algorithms, k-nearest neighbor (KNN) algorithms, or Bayesian algorithms can be used to train the recommendation model based on user features to obtain an initial feature model. The specific algorithm used to train the initial recommendation model is not limited here.

[0090] S241. Determine the weight information of the corresponding model parameters in the initial recommendation model based on the activity value of each target data source.

[0091] Since different users may have different activity levels for different target data sources, for example, the target data sources for users A and B are both data source 2, data source 3 and data source 8, but user A's corresponding activity levels for data source 2, data source 3 and data source 8 are 9, 6 and 8 respectively; user B's corresponding activity levels for data source 2, data source 3 and data source 8 are 5, 9 and 6 respectively. It can be seen that different users may have different levels of interest in the same data source.

[0092] The parameters of the initial recommendation model can be adjusted based on the activity level of each target data source, making the subsequent target recommendation model more suitable for the current user.

[0093] When adjusting the model parameters in the initial recommendation model, the weight information of the model parameters related to user interests in the initial recommendation model can be determined based on the activity value of each target data source, and the model parameters can be adjusted accordingly. The specific model parameters to be adjusted are not limited here.

[0094] S242. Adjust the model parameters according to the weight information to obtain the target recommendation model.

[0095] The model parameters of the initial recommendation model are adjusted based on the weight information to obtain the target recommendation model. The target recommendation model is a customized recommendation model obtained from data sources with high user activity, which helps to output recommendation results that better meet the user's needs.

[0096] In the current step, the server stores multiple recommendation models for different user identifiers. Whenever a user generates a recommendation request, steps S210 to S242 are repeated to avoid changes in the user's interests. Although the number of recommendation models appears to increase, for each model, the number of samples to be calculated for a specific calculation is reduced because the samples are distributed across the corresponding target recommendation model. Therefore, the computational efficiency can be significantly improved when performing recommendation calculations on massive amounts of data.

[0097] S250. Input the target feature vector into the target recommendation model to obtain the recommendation result.

[0098] One alternative approach is to identify each data source by assigning it a unique identifier, as the server receives multiple user identifiers from multiple data sources across various business systems, resulting in a large volume of data. This identification facilitates the analysis and management of the vast amount of data. A specific implementation method could be:

[0099] Identify the corresponding data source generated by each business system in the set of business systems to obtain the data source identifier.

[0100] Due to differences in system architecture and function among various business systems, the resulting data sources can be of the same type or different types. The current type can be the business type of the business system or the data type that generates the corresponding data source. For example, in the banking sector, business types can include regular banking services, social banking services, securities banking services, and e-commerce banking services, etc., and specific business types are not listed here. Data types can include relational data, key-value data, columnar data, document data, graph data, and semi-structured data, etc., and specific data types are not listed here.

[0101] Optionally, the server may include a data source relationship mapping table with user identifiers as its core. This table can map and store the data source name, business type, and data type corresponding to each data source. The data source name can be the name of the business system that generated the current data source. For example, as shown in Table 1.

[0102] Table 1. Data Source Relationship Mapping Table

[0103] Data source name Business type Data types Data source 1 Bank 1 Relational data Data source 2 Bank 1 Columnar data Data source 3 Bank 2 semi-structured data Data source 4 Bank 2 key-value data Data source 5 Bank 2 Image data Data source 6 Bank 3 Columnar data Data source 7 Bank 3 Relational data Data source 8 Bank 4 Relational data Data source 9 Bank 4 Image data

[0104] As shown in the table above, multiple data sources can be of the same type, such as data sources 1-2 being data sources for banking systems, data sources 3-5 being data sources for social network systems, and data sources 7-8 being relational data sources. They can also be data sources of different types; for example, data sources 1-2 could be relational data and columnar data respectively, and data sources 2-3 could be data sources for banking systems and social networks respectively.

[0105] When managing the corresponding data sources generated by each business system, it is necessary to use unified identification rules to perform relevant preprocessing on each data source. This allows for unified management of various data sources, whether identical or of different types, thereby improving management efficiency. The preprocessing operations mentioned above can include data cleaning or data format conversion, and the specific method of preprocessing the data source is not limited here.

[0106] Specifically, the preprocessed data sources can be identified. The current identification method can be to sort all data sources according to their response speed, data source type, etc., and assign a corresponding data source identifier to each data source using numerical or alphabetical order. The specific type of data source identifier is not limited here.

[0107] The data source identifier corresponding to each data source is stored in the data source relationship mapping table, as shown in Table 2.

[0108] Table 2 Data Source Name Relationship Mapping Table 2

[0109] Data source name Business type Data types Data source ID Data source 1 Bank 1 Relational data 1 Data source 2 Bank 1 Columnar data 2 Data source 3 Bank 2 semi-structured data 3 Data source 4 Bank 2 key-value data 4 Data source 5 Bank 2 Image data 5 Data source 6 Bank 3 Columnar data 6 Data source 7 Bank 3 Relational data 7 Data source 8 Bank 4 Relational data 8 Data source 9 Bank 4 Image data 9

[0110] Alternatively, based on the "obtaining data source identifier" step in the above embodiment, after identifying at least two target data sources, the following steps can also be performed:

[0111] Obtain the data source identifiers corresponding to at least two target data sources, and obtain the combined identifier of at least two target data sources based on the at least two data source identifiers.

[0112] Taking the target data sources obtained as data source 2, data source 3 and data source 8 as an example, the data source identifiers corresponding to data source 2, data source 3 and data source 8 in Table 2 are 2, 3 and 8 respectively. In the current step, the combined identifier of at least two target data sources is obtained based on at least two data source identifiers as "238".

[0113] Another alternative approach, based on the above embodiment of "obtaining a combined identifier of at least two target data sources", after obtaining the target recommendation model, may also perform the following steps:

[0114] The model identifier of the target recommendation model is obtained based on the combined identifier, and the model identifier and the combined identifier are saved to an identifier mapping table, where there is a one-to-one correspondence between the model identifier and the combined identifier. The advantage of this step is that in subsequent steps, when a corresponding target recommendation model needs to be trained based on the target data source, the combined identifier of the target data source can be saved in correspondence with the corresponding model identifier of the target recommendation model. Therefore, when other users have the same target data source as the current user, the same recommendation model can be used to provide recommendation services to other users, eliminating the need to train a new recommendation model, saving server data storage, and improving response speed.

[0115] Since there are multiple recommendation models in this invention, the task of recommendation calculation can be distributed among multiple recommendation models. The computational workload of each recommendation model is relatively small. In implementation, a distributed approach can be adopted, and the training and calculation process of each recommendation model can be implemented on multiple computers. When the request volume of the entire recommendation system is large or a single computer fails, the recommendation scheme provided in this embodiment can still maintain a fast response speed.

[0116] The recommendation method based on multiple data sources provided in this invention solves the cold start problem of recommendation systems by analyzing and mining multiple data sources generated by business systems related to user identification. Furthermore, by identifying the corresponding data sources generated by each business system, it can handle data sources of different business types and data types, effectively breaking down data barriers between heterogeneous data sources. It further uses data sources with high user activity as target data sources, taking into account changes in user interests, which helps to accurately filter data that expresses the user's true interests, thereby improving the accuracy of recommendations. Finally, by constructing target recommendation models that correspond one-to-one with the target data source combinations, the heavy recommendation computation task can be split and distributed, making the computational load of each recommendation model smaller. Even when the overall request volume of the recommendation system is large or a single computer fails, the recommendation system in this invention can still maintain a fast response speed.

[0117] Figure 3 This is a schematic diagram of a recommendation device based on multiple data sources provided in an embodiment of the present invention. This device is suitable for executing the recommendation method based on multiple data sources provided in an embodiment of the present invention. Figure 3 As shown, the device may specifically include: a recommendation request receiving module 310, a data source determination module 320, a target feature determination module 330, and a target model generation module 340, wherein:

[0118] The recommendation request receiving module 310 is used to receive recommendation requests sent by the system to be recommended, wherein the recommendation request includes a user identifier;

[0119] The data source determination module 320 is used to determine at least two target data sources from the corresponding data sources generated by the business system set based on the user identifier;

[0120] The target feature determination module 330 is used to determine the target feature vector of the user identifier in at least two target data sources;

[0121] The target model generation module 340 is used to generate a target recommendation model based on at least two target data sources, and input the target feature vector into the target recommendation model to obtain a recommendation result.

[0122] The recommendation device based on multiple data sources provided in this embodiment of the invention first receives a recommendation request sent by the system to be recommended, the recommendation request including a user identifier; then, based on the user identifier, it determines at least two target data sources from the corresponding data sources generated by the business system set, the current target data source being the data source with higher activity among all data sources generated by the current user; next, it determines the target feature vector of the user identifier in the at least two target data sources; finally, it generates a target recommendation model based on the at least two target data sources and inputs the target feature vector into the target recommendation model to obtain the recommendation result. The solution provided in this embodiment, by determining at least two target data sources, generating a target recommendation model based on the target data sources, and inputting the target feature vector related to the target data sources into the target recommendation model, solves the "cold start" problem of existing solutions while also taking into account the migration and change of user interests. The recommendation result obtained through the recommendation model provided in this embodiment achieves the beneficial effect of improving the accuracy of recommendation services.

[0123] In one embodiment, the set of business systems includes at least two business systems;

[0124] The data source determination module 320 includes: an activity determination unit and a data source determination unit, wherein:

[0125] An activity determination unit is used to determine the activity level of the user identifier in the corresponding data source generated by each of the business systems.

[0126] The data source determination unit is used to determine the data source whose activity value is greater than or equal to a preset value as the target data source.

[0127] In one embodiment, the activity determination unit includes: an information acquisition subunit and an activity determination subunit, wherein:

[0128] The information acquisition subunit is used to acquire access information generated by the user identifier for each of the business systems during a historical time period;

[0129] The activity determination subunit is used to determine the activity level of the user identifier in each of the data sources based on the access information.

[0130] In one embodiment, the target feature determination module 330 includes: an initial feature determination unit and a target feature determination unit, wherein:

[0131] An initial feature determination unit is used to determine the initial feature vector of the user identifier in each of the target data sources;

[0132] The target feature determination unit is used to perform feature fusion on all the initial feature vectors to obtain the target feature vector.

[0133] In one embodiment, the target model generation module 340 includes: an initial model acquisition unit, a weight information determination unit, and a target model acquisition unit, wherein:

[0134] The initial model acquisition unit is used to acquire an initial recommendation model trained based on a preset analysis algorithm.

[0135] The weight information determination unit is used to determine the weight information of the corresponding model parameters in the initial recommendation model based on the activity value of each target data source.

[0136] The target model acquisition unit is used to adjust the model parameters according to the weight information to obtain the target recommendation model.

[0137] In one embodiment, the apparatus further includes: a data source identification module and a combined identification acquisition module, wherein:

[0138] The data source identification module is used to identify the corresponding data source generated by each business system in the business system set and obtain the data source identification.

[0139] The combined identifier acquisition module is used to acquire data source identifiers corresponding to at least two of the target data sources, and to acquire a combined identifier of at least two of the target data sources based on the at least two data source identifiers.

[0140] In one embodiment, the apparatus further includes: a model identifier acquisition module, wherein:

[0141] The model identifier acquisition module is used to obtain the model identifier of the target recommendation model based on the combined identifier, and save the model identifier and the combined identifier to an identifier mapping table, in which the model identifier and the combined identifier correspond one-to-one.

[0142] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional modules is merely an example. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. The specific working process of the functional modules described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0143] This invention also provides an electronic device, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores a computer program executable by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the recommendation method based on multiple data sources as described in any embodiment of this invention.

[0144] This invention also provides a computer-readable medium storing computer instructions that, when executed by a processor, implement the recommendation method based on multiple data sources as described in any embodiment of this invention.

[0145] The following is for reference. Figure 4 It shows a schematic diagram of the structure of a computer system 500 suitable for implementing an electronic device according to embodiments of the present invention. Figure 4 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of use of the embodiments of the present invention.

[0146] like Figure 4 As shown, the computer system 500 includes a central processing unit (CPU) 501, which can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) 502 or programs loaded from storage section 508 into random access memory (RAM) 503. The RAM 503 also stores various programs and data required for the operation of the system 500. The CPU 501, ROM 502, and RAM 503 are interconnected via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.

[0147] The following components are connected to I / O interface 505: an input section 506 including a keyboard, mouse, etc.; an output section 507 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 508 including a hard disk, etc.; and a communication section 509 including a network interface card such as a LAN card, modem, etc. The communication section 509 performs communication processing via a network such as the Internet. A drive 510 is also connected to I / O interface 505 as needed. A removable medium 511, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on drive 510 as needed so that computer programs read from it can be installed into storage section 508 as needed.

[0148] In particular, according to the embodiments disclosed in this invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this invention include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 509, and / or installed from removable medium 511. When the computer program is executed by central processing unit (CPU) 501, it performs the functions defined above in the system of this invention.

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

[0150] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0151] The modules and / or units described in the embodiments of this invention can be implemented in software or hardware. The described modules and / or units can also be housed in a processor; for example, a processor can be described as including a recommendation request receiving module, a data source determination module, a target feature determination module, and a target model generation module. The names of these modules do not necessarily limit the module itself.

[0152] In another aspect, the present invention also provides a computer-readable medium, which may be included in the device described in the above embodiments; or it may exist independently and not assembled into the device. The computer-readable medium carries one or more programs, which, when executed by the device, cause the device to include: receiving a recommendation request sent by a system to be recommended, the recommendation request including a user identifier; determining at least two target data sources from corresponding data sources generated by a set of business systems based on the user identifier; determining a target feature vector of the user identifier in the at least two target data sources; generating a target recommendation model based on the at least two target data sources; and inputting the target feature vector into the target recommendation model to obtain a recommendation result.

[0153] According to the technical solution of the present invention, by determining at least two target data sources, generating a target recommendation model based on the target data sources, and inputting the target feature vectors related to the target data sources into the target recommendation model, the "cold start" problem of existing solutions is solved, while also taking into account the migration and changes of user interests. The recommendation results obtained by the recommendation model provided in this embodiment achieve the beneficial effect of improving the accuracy of recommendation services.

[0154] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can occur depending on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.

Claims

1. A multi-data source based recommendation method, characterized in that, The method comprises: receiving a recommendation request sent by a to-be-recommended system, the recommendation request comprising a user identifier; determining at least two target data sources from corresponding data sources generated by a set of business systems according to the user identifier; determining a target feature vector of the user identifier in at least two target data sources; generating a target recommendation model based on at least two target data sources, and inputting the target feature vector into the target recommendation model to obtain a recommendation result; the set of business systems comprises at least two business systems; determining at least two target data sources from corresponding data sources generated by a set of business systems according to the user identifier comprises: determining the activity of the user identifier in the corresponding data sources generated by each business system; determining the data source whose activity value is greater than or equal to a preset value as the target data source; determining the activity of the user identifier in the corresponding data sources generated by each business system comprises: obtaining access information of the user identifier to each business system in a historical time period; determining the activity of the user identifier in each data source according to the access information; generating a target recommendation model based on at least two target data sources comprises: obtaining an initial recommendation model trained based on a preset analysis algorithm; determining the weight information of the corresponding model parameters in the initial recommendation model according to the value of the activity of each target data source; adjusting the model parameters according to the weight information to obtain the target recommendation model.

2. The method of claim 1, wherein, determining a target feature vector of the user identifier in at least two target data sources comprises: determining an initial feature vector of the user identifier in each target data source; performing feature fusion on all initial feature vectors to obtain the target feature vector.

3. The method of claim 1, wherein, Before receiving a recommendation request sent by a to-be-recommended system, it further comprises: identifying the corresponding data sources generated by each business system in the set of business systems to obtain data source identifiers; correspondingly, after determining at least two target data sources from corresponding data sources generated by a set of business systems according to the user identifier, it further comprises: obtaining data source identifiers corresponding to at least two target data sources, and obtaining a combination identifier of at least two target data sources according to at least two data source identifiers.

4. The method of claim 3, wherein, After generating a target recommendation model based on at least two target data sources, it further comprises: obtaining a model identifier of the target recommendation model according to the combination identifier, and saving the model identifier and the combination identifier to an identifier mapping table, wherein the model identifier and the combination identifier correspond to each other in the identifier mapping table.

5. A multi-data source based recommendation apparatus, comprising: The device comprises: a recommendation request receiving module configured to receive a recommendation request sent by a to-be-recommended system, the recommendation request comprising a user identifier; a data source determining module configured to determine at least two target data sources from corresponding data sources generated by a set of business systems according to the user identifier; a target feature determining module configured to determine a target feature vector of the user identifier in at least two target data sources; The target model generation module is configured to generate a target recommendation model based on the at least two target data sources, and input the target feature vector into the target recommendation model to obtain a recommendation result. The business system set includes at least two business systems. The data source determination module includes an activity determination unit and a data source determination unit, wherein: The activity determination unit is configured to determine the activity of the user identifier in each corresponding data source generated by the business system. The data source determination unit is configured to determine a data source with a value of the activity greater than or equal to a preset value as the target data source. The activity determination unit includes an information acquisition subunit and an activity determination subunit, wherein: The information acquisition subunit is configured to acquire access information of the user identifier to each business system generated in a historical time period. The activity determination subunit is configured to determine the activity of the user identifier in each data source according to the access information. The target model generation module includes an initial model acquisition unit, a weight information determination unit, and a target model obtaining unit, wherein: The initial model acquisition unit is configured to acquire an initial recommendation model trained based on a preset analysis algorithm. The weight information determination unit is configured to determine weight information of a corresponding model parameter in the initial recommendation model according to the value of the activity of each target data source. The target model obtaining unit is configured to adjust the model parameter according to the weight information to obtain the target recommendation model.

6. An electronic device, comprising: The electronic device includes: at least one processor; and a memory connected to the at least one processor in communication; wherein The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to execute the multi-data source based recommendation method of any one of claims 1-4.

7. A computer-readable storage medium having stored thereon a computer program, characterized in that The program is executed by the processor to implement the multi-data source based recommendation method of any one of claims 1-4.

Citation Information

Patent Citations

  • Information recommendation method, device and equipment and storage medium

    CN111125521A

  • Information pushing method and system based on big data service positioning

    CN113326441A