User recommendation method and device
By acquiring and analyzing user behavior data, calculating user matching and making recommendations, the problem of low user recommendation accuracy in the existing technology is solved, and more accurate and efficient user recommendations are achieved.
Patent Information
- Application Number
- CN201911325671.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-12-20
- Publication Date
- 2025-01-21
- Estimated Expiration
- 2041-01-21
AI Technical Summary
The current user recommendation method has the problem of low user recommendation accuracy. The existing method recommends based on location or popularity, which cannot accurately reflect the user's preferences and interests.
By obtaining the user behavior data corresponding to the user identification, the data is aggregated from multiple network platforms, statistical processing and feature data extraction are performed, user matching is calculated and user recommendations are made.
It improves the accuracy of user recommendations and more accurately reflects user interests and hobbies by analyzing user behavior data, thereby improving the efficiency and user experience of stranger matching recommendations.
Smart Images

Figure CN111125544B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communications, and in particular to a user recommendation method and device. Background Art
[0002] In order to improve user experience and enhance user stickiness, various interactive applications, such as application servers of WeChat and Blog, provide users with user recommendation functions to recommend people that the user may be interested in.
[0003] Currently, when making user recommendations, application servers may recommend nearby people based on location, or they may recommend the most popular people based on popularity. However, the data based on which such recommendation methods are based cannot truly reflect the user's preferences and interests, etc., which will lead to inaccurate user recommendations.
[0004] That is, the current user recommendation method has the technical problem of low user recommendation accuracy. Summary of the invention
[0005] The embodiments of the present application provide a user recommendation method and device to improve the accuracy of user recommendation.
[0006] To solve the above technical problems, the present application provides the following technical solutions:
[0007] The present application provides a user recommendation method, which includes:
[0008] Obtaining user behavior data corresponding to the user identifier; the data sources of the user behavior data include at least two network platforms;
[0009] Performing statistical processing on the user behavior data corresponding to the user identifier to obtain user behavior statistical data;
[0010] According to the user behavior statistical data, obtain the user characteristic data corresponding to the user identification;
[0011] According to the user characteristic data corresponding to the user identifier, a user matching degree of the user corresponding to the user identifier is obtained;
[0012] Recommend users based on their matching degree.
[0013] The present application provides a user recommendation device, which includes:
[0014] An acquisition module, used to acquire user behavior data corresponding to the user identifier; the data sources of the user behavior data include at least two network platforms;
[0015] A statistical module is used to perform statistical processing on the user behavior data corresponding to the user identifier to obtain user behavior statistical data;
[0016] A processing module, used to obtain user feature data corresponding to the user identifier based on user behavior statistical data;
[0017] A matching module, used to obtain a user matching degree of a user corresponding to the user identifier according to user feature data corresponding to the user identifier;
[0018] The recommendation module is used to recommend users based on their matching degree.
[0019] In one embodiment, the acquisition module is specifically used to: obtain the user's authorization parameters for the network platform through the authorization interface; log in to the network platform based on the authorization parameters; and obtain user behavior data from the network platform.
[0020] In one embodiment, the acquisition module is specifically used to: acquire image data containing user behavior data; and identify the image data to obtain the user behavior data.
[0021] In one embodiment, user behavior data includes an operation object and an action type; the statistical module is specifically used to: extract keywords from the operation object to obtain keywords of the operation object; determine the object identifier of the user behavior data based on the keywords of the operation object; determine the action identifier of the user behavior data based on the action type; count the user behavior data corresponding to the user identifier based on the object identifier and action identifier of the user behavior data to obtain user behavior statistical data; the user behavior statistical data includes the user identifier, the object identifier, the action identifier and the corresponding frequency.
[0022] In one embodiment, the processing module is specifically used to: normalize the user behavior statistical data according to the frequency corresponding to the user behavior statistical data to obtain normalized user behavior statistical data; and obtain user feature data corresponding to the user identifier according to the normalized user behavior statistical data.
[0023] In one embodiment, the processing module is specifically used to: construct a tensor data model using normalized user behavior statistical data; decompose the tensor data model to obtain an adjoint matrix corresponding to the tensor data model; filter the adjoint matrix to obtain a user adjoint matrix, the user adjoint matrix including feature vectors corresponding to multiple user identifiers; and determine the feature vector corresponding to each user identifier as user feature data corresponding to the corresponding user identifier.
[0024] In one embodiment, the user recommendation device also includes a simulation module, which is used to obtain a second user whose user matching degree with the first user meets preset conditions; based on the actual user behavior data of the user identifier corresponding to the second user, simulate the simulated user behavior data of the user identifier corresponding to the first user; the matching module is also used to: determine the user matching degree between the first user and the third user based on the simulated user behavior data of the user identifier corresponding to the first user, and the user behavior data of the user identifier corresponding to the third user.
[0025] In one embodiment, the matching module is specifically used to: cluster the user identifiers according to the user feature data corresponding to the user identifiers to obtain user classes; and obtain the user matching degree of the user corresponding to the user identifier for the user identifiers belonging to the same user class.
[0026] In one embodiment, the recommendation module is specifically used to: obtain a second user whose user matching degree with the first user meets preset conditions; determine the object identification corresponding to the matching item between the user behavior data corresponding to the user identifier of the first user and the user behavior data corresponding to the user identifier of the second user; and display the user identifier of the second user, the user matching degree of the first user and the second user, and the object identification corresponding to the matching item to the first user on the recommendation interface.
[0027] In one embodiment, the recommendation module is specifically used to: obtain a second user whose user matching degree with the first user meets preset conditions; determine the object identifier and data source corresponding to the matching item between the user behavior data corresponding to the user identifier of the first user and the user behavior data corresponding to the user identifier of the second user; and display the user identifier of the second user, the object identifier and data source corresponding to the matching item between the first user and the second user to the first user on the recommendation interface.
[0028] An embodiment of the present application provides a server, which includes a processor and a memory, wherein the memory stores a plurality of instructions, and the instructions are suitable for the processor to load to execute the steps in the above method.
[0029] An embodiment of the present application provides a computer-readable storage medium, which stores a plurality of instructions suitable for loading by a processor to execute the steps in the above method.
[0030] The embodiment of the present application provides a new user recommendation method and device, which first obtains user behavior data corresponding to a user identifier, the data source of the user behavior data includes at least two network platforms that provide services in different fields, then statistically processes the user behavior data corresponding to the user identifier to obtain user behavior statistical data, then obtains user feature data corresponding to the user identifier based on the user behavior statistical data, and then obtains the user matching degree of the user corresponding to the user identifier based on the user feature data corresponding to the user identifier, and finally recommends users based on the user matching degree. The present application obtains user feature data from the user behavior data corresponding to the user, determines the user matching degree between users based on the user feature data, and recommends users based on the user matching degree. Since the user behavior data is the user's operation data on the network platform, and these operation data reflect the user's interests and hobbies, etc., the user recommendation based on these data is more accurate, which improves the accuracy of user recommendation, thereby making the matching recommendation efficiency of strangers higher and enhancing the user's experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For those skilled in the art, other drawings can be obtained based on these drawings without creative work.
[0032] Figure 1 It is a network diagram of the communication system provided in the embodiment of the present application.
[0033] Figure 2 This is a first flow chart of the user recommendation method provided in an embodiment of the present application.
[0034] Figure 3 This is a second flow chart of the user recommendation method provided in an embodiment of the present application.
[0035] Figure 4 This is a third flow chart of the user recommendation method provided in an embodiment of the present application.
[0036] Figure 5 It is a structural diagram of a user recommendation device provided in an embodiment of the present application.
[0037] Figure 6 It is a schematic diagram of the structure of the server provided in the embodiment of the present application.
[0038] Figures 7a to 7f It is a schematic diagram of the interface involved in the embodiment of the present application.
[0039] Figure 8a to Figure 8b It is a schematic diagram of the tensor data model involved in the embodiment of the present application. DETAILED DESCRIPTION
[0040] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of this application.
[0041] In the embodiment of the present application, different field services refer to businesses in different fields, for example, a certain friend circle and a certain blog are services in different fields. Different network platforms provided by the same operator can also be different network platforms, for example, a certain friend circle and a certain room under a certain news are different network platforms.
[0042] In an embodiment of the present application, the data source of user behavior data can be a network platform or at least two network platforms providing services in different fields. By acquiring user behavior data across network platforms, user portraits can be portrayed from multiple dimensions, and the obtained user feature data can more accurately reflect the user's interests and hobbies.
[0043] In the embodiments of the present application, user behavior data includes simulated user behavior data and actual user behavior data. Actual user behavior data refers to the actual operation behavior of users using the network platform, such as a user publishing a paper on a certain technology on a certain network platform, liking a travel guide, and other real actions, while simulated user behavior data is data simulated based on the user behavior data of other users. These simulated user behavior data indicate that users will perform these operation behaviors to a great extent, but do not perform these operation behaviors for some reason. In the following, when user behavior data appears, if it is not specified which type of user behavior data it is, it indicates that the user behavior data can be simulated user behavior data, or actual user behavior data, or a mixture of simulated user behavior data and actual user behavior data. If it is specified which type of user behavior data it is, it indicates that the user behavior data is the corresponding type of user behavior data.
[0044] In the embodiment of the present application, user behavior data includes operation objects and action types. Operation objects refer to the content of published comments, video content watched, technical article content liked, etc. The text of these operation objects may be very long. In order to facilitate the establishment of the model, keywords are extracted from these operation objects to obtain the keywords of the operation objects. According to the keywords of the operation objects, the object identifier of the user behavior data is determined; for example, the content of the comment is "I like a certain singer very much", and the corresponding keyword is "a certain singer". The keyword is identified as "00001" in the computer system, then "00001" is used as the object identifier of the user behavior data. The action type refers to the type of action performed by the user on a certain operation object, such as publishing, liking, forwarding, commenting, browsing, etc. Different action types represent the user's preference for the operation object. For example, a user publishing a paper or comment may mean that the user likes the operation object very much, while a user browsing an article may mean that the user has only a little interest in the operation object, etc. In the computer system, the action type also exists in digital form.
[0045] In the embodiment of the present application, keywords can be real things, such as a certain technology, a certain singer, a certain scenic spot, etc., or abstract things, such as lovelorn, unemployment, graduation, etc. As the number of access users increases, the number of keywords will also increase exponentially. In order to reduce the operating burden of the server, the server can set the maximum number of keywords in the keyword library, such as 100,000, and update and maintain the keywords in the keyword library according to user behavior data.
[0046] In an embodiment of the present application, if all the keywords of a certain operation object do not exist in the keyword library, it is determined that the user behavior data has no corresponding object identifier, and the user behavior data is discarded. If multiple keywords of a certain operation object exist in the keyword library at the same time, the object identifier corresponding to the user behavior data is determined according to a preset rule; for example, the identifiers corresponding to these multiple keywords are all used as the object identifier of the user behavior data, that is, multiple valid statistical data are obtained based on one user behavior data; for example, the identifier corresponding to the keyword that appears first is used as the object identifier of the user behavior data; for example, according to the update time of these multiple keywords in the keyword library, the identifier corresponding to the latest keyword is selected as the object identifier of the user behavior data. This is because the update time of the keywords in the keyword library represents the trend of change. For example, the update time of the two keywords 4G and 5G, 5G is newer than 4G, which represents the development trend of communication technology. If the same user behavior data includes the two keywords 4G and 5G, the identifier of 5G is used as the object identifier of the user behavior data.
[0047] In an embodiment of the present application, user behavior statistics include user identification, object identification, action identification and corresponding frequency. The frequency here refers to the number of times the user executes the action identification on the object identification, and also reflects the user's preference for the content corresponding to the object identification. The higher the frequency, the greater the interest.
[0048] It is understandable that in the specific implementation of the present application, data related to user information such as user behavior data, user behavior statistics, user feature data, user portraits, etc., when the embodiments of the present application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of relevant data need to comply with relevant laws, regulations and standards of relevant countries and regions.
[0049] The user recommendation method provided in this application can be implemented through a terminal, can also be implemented through a server, can be implemented through a newly added business server, and can also be implemented as a new function of an existing network platform. The following uses the method implemented through a newly added business server as a scenario to illustrate other scenarios and their types.
[0050] See also Figure 1 , Figure 1 A schematic diagram of a scenario of a communication system provided in an embodiment of the present application, the system may include a user-side device and a service-side device, the user-side device and the service-side device are connected via the Internet composed of various gateways, etc., which will not be repeated here, wherein the user-side device includes multiple terminals 11, and the service-side device includes multiple servers 12; wherein:
[0051] The terminal 11 includes but is not limited to mobile phones, tablets and other portable terminals installed with various network platform applications, as well as computers, query machines, advertising machines and other fixed terminals. It is a service port that users can use and operate, hereinafter referred to as a terminal; for example, a mobile phone with a video downloaded; in this application, the terminal provides users with various functions such as registration, authorization, image data upload, and recommendation result display of user recommendation functions;
[0052] The server 12 provides various business services for users, including a video push server, a user recommendation server, etc., wherein the user recommendation server is used to obtain user behavior data corresponding to the user identifier, perform statistical processing on the user behavior data corresponding to the user identifier, obtain user behavior statistical data, obtain user feature data corresponding to the user identifier based on the user behavior statistical data, obtain the user matching degree of the user corresponding to the user identifier based on the user feature data corresponding to the user identifier, and make user recommendations based on the user matching degree.
[0053] It should be noted that Figure 1The system scenario diagram shown is only an example. The server and scenario described in the embodiment of the present application are intended to more clearly illustrate the technical solution of the embodiment of the present application, and do not constitute a limitation on the technical solution provided in the embodiment of the present application. Ordinary technicians in this field can know that with the evolution of the system and the emergence of new business scenarios, the technical solution provided in the embodiment of the present application is also applicable to similar technical problems.
[0054] Figure 2 This is a first flow chart of the user recommendation method provided in the embodiment of the present application. Please refer to Figure 2 , the user recommendation method comprises the following steps:
[0055] 201: The server obtains the user behavior data corresponding to the user ID.
[0056] In this embodiment, the server provides external business interfaces such as web pages, or recommends application clients. Users access the server through these web pages or recommended application clients. On this basis, the server can obtain user behavior data corresponding to the user identifier.
[0057] In one embodiment, this step can obtain data from the relevant network platform based on user authorization. In this case, this step includes: obtaining the user's authorization parameters for the network platform through the authorization interface; logging into the network platform based on the authorization parameters; and obtaining user behavior data from the network platform. For example, based on user authorization, the server can obtain user behavior data such as the video host followed by a certain user, the video content liked, browsed, or collected, and the video published. These user behavior data include operation objects, such as a certain host, a certain video content, etc., and corresponding action types, such as following, liking, publishing, etc.
[0058] In one embodiment, this step can obtain data from a related network platform based on image recognition technology. In this case, this step includes: obtaining image data containing user behavior data; and recognizing the image data to obtain user behavior data. For example, based on various technologies such as image text recognition technology and computer vision technology, the image data containing user behavior data is recognized to obtain user behavior data.
[0059] For example, the server provides users with Figure 7a The authorization method selection interface shown in the figure, the user clicks the authorization button in the authorization method selection interface to enter Figure 7b In the authorization interface shown, the user selects the network platform he wants to authorize. After the authorization is successful, the server can access the corresponding network platform based on the user's authorized account to obtain the user's user behavior data. For example, if the user clicks to authorize a certain platform, the server can access the corresponding platform based on the user's authorized account to obtain the user's user behavior data such as movie reviews posted by the user, movies followed, and movies liked.
[0060] For some network platforms that cannot be directly authorized, users can click the image button in the authorization method selection interface to enter Figure 7c The image upload interface shown in FIG. 1 guides the user to open the relevant information interface of the network platform to take a long screenshot, perform text scanning on the obtained information page to extract keywords, and then compare it with the relevant database of the network platform to obtain the operation object and display it in the following manner: Figure 7d The interface shown is displayed for further screening by the user. Finally, the keywords that the user is interested in and the corresponding degree are determined based on the user's click operation and click duration, and converted into the data required for user behavior statistics, for example, Figure 7d As shown, the user clicked on the keyword "XXX" for 2 seconds and clicked on the keyword "XXX kr" for 5 seconds, which were converted into user behavior data "XXX; collection" and "XXX kr; forward" respectively.
[0061] 202: Perform statistical processing on the user behavior data corresponding to the user identifier to obtain user behavior statistical data.
[0062] User behavior data is the personalized data of users. These data are varied and all-encompassing. If user recommendations are made directly based on these data, it will be difficult to obtain users who meet the matching conditions. Therefore, it is necessary to convert these data, obtain the core data and perform statistics, and finally obtain user behavior statistics.
[0063] In one embodiment, this step includes: extracting keywords from the operation object to obtain keywords of the operation object; determining the object identifier of the user behavior data based on the keywords of the operation object; determining the action identifier of the user behavior data based on the action type; and counting the user behavior data corresponding to the user identifier based on the object identifier and action identifier of the user behavior data to obtain user behavior statistical data; the user behavior statistical data includes the user identifier, the object identifier, the action identifier and the corresponding frequency.
[0064] Users rarely post multiple identical comments on a network platform, but as long as the keywords of these comments are the same, for example, they are all about 5G technology, these different user behavior data have the same object identifier and action identifier. For example, if user A has published 9 articles about 5G technology, then user behavior statistics can be obtained (user A, 5G technology, published, 9).
[0065] 203: Obtain user feature data corresponding to the user identifier according to the user behavior statistical data.
[0066] This step can be implemented in various ways, such as weight-based, neural network-based, tensor data model-based, etc.
[0067] For example, there are m keywords Cm (m is any number from 1 to m) in the keyword library of the server, and there are n actions An (m is any number from 1 to n). For a certain user, the user behavior statistical data (Cm, An, X) indicates that the number of user behavior data with object identifier Cm (here Cm represents the unique identifier of the keyword in the computer system) and action identifier An in all the user behavior data of the user is X. Based on this embodiment, each user has m*n user behavior statistical data, then the user feature data corresponding to each user identifier includes coordinates of m*n dimensions, among which X of most user behavior statistical data is 0, and then the weight of each user behavior statistical data is set, for example, all are 0.0001, for subsequent operations.
[0068] For example, the keyword library of the server contains m keywords Cm (m is any number from 1 to m), and there are n actions An (m is any number from 1 to n). For a certain user, the user behavior statistical data (Cm, An, X) indicates that the number of user behavior data with object identifier Cm (here Cm represents the unique identifier of the keyword in the computer system) and action identifier An in all the user behavior data of the user is X. Based on this embodiment, each user has m*n user behavior statistical data, and then these data are input into the trained neural network for feature extraction, so as to obtain a user feature vector with a predetermined number of dimensions as the user feature data.
[0069] For example, when obtaining user characteristic data based on a tensor data model, this step includes: using normalized user behavior statistical data to construct a tensor data model; decomposing the tensor data model to obtain an adjoint matrix corresponding to the tensor data model; screening the adjoint matrix to obtain a user adjoint matrix, the user adjoint matrix including eigenvectors corresponding to multiple user identifiers; and determining the eigenvector corresponding to each user identifier as the user characteristic data corresponding to the corresponding user identifier.
[0070] In one embodiment, this step may first normalize the data. In this case, this step includes: normalizing the user behavior statistical data so that X belongs to [0, 1] according to the frequency X corresponding to the user behavior statistical data, and obtaining the normalized user behavior statistical data; and obtaining the user feature data corresponding to the user identifier according to the normalized user behavior statistical data.
[0071] The steps of obtaining user feature data corresponding to the user identifier based on the normalized user behavior statistical data include: using the normalized user behavior statistical data to construct a tensor data model; decomposing the tensor data model to obtain an adjoint matrix corresponding to the tensor data model; screening the adjoint matrix to obtain a user adjoint matrix, the user adjoint matrix including feature vectors corresponding to multiple user identifiers; and determining the feature vector corresponding to each user identifier as the user feature data corresponding to the corresponding user identifier.
[0072] 204: Obtaining a user matching degree of the user corresponding to the user identifier according to the user characteristic data corresponding to the user identifier.
[0073] This step can directly calculate the user matching degree between two users, or can first cluster the users according to user feature data, and then calculate the user matching degree between two users in the same user class according to the clustering result, so as to reduce the burden on the server.
[0074] In one embodiment, this step clusters users to reduce the burden on the server. This step includes: clustering the user identifiers according to the user feature data corresponding to the user identifiers to obtain user classes; for user identifiers belonging to the same user class, obtaining the user matching degree of the user corresponding to the user identifier.
[0075] In one embodiment, clustering is performed on the user identifiers according to the user feature data corresponding to the user identifiers to obtain user classes, including: randomly selecting k elements from multiple users as the centers of the k clusters; respectively calculating the dissimilarity of the remaining users to the centers of the k clusters, and assigning these elements to the clusters with the lowest dissimilarity; recalculating the centers of the k clusters according to the clustering results by taking the arithmetic mean of the dimensions of all elements in the clusters; re-clustering all users according to the new centers; repeating the above steps until the clustering results no longer change; and finally outputting the results. The number of K can be determined based on experience or the total number of users.
[0076] There may be multiple ways to calculate the user matching degree between two users, such as weight-based, neural network-based, matching degree algorithm-based, and other methods.
[0077] For the weight-based method, the above description is followed, and the sum of the weights corresponding to the user behavior statistics with the same or similar frequency values and not 0 is used as the user matching degree. For example, the user behavior statistics of user a are (Xa1, Xa2, ... Xam*n), and the user behavior statistics of user b are (Xb1, Xb2, ... Xbm*n). If Xa1=Xb1≠0, or Xa1≈Xb1≠0, then the user matching degree of user a and user b increases by 0.0001, until the m*n data are matched one by one, and the final user matching degree is output.
[0078] For the neural network-based approach, following the above description, the trained classification neural network, differential neural network, twin neural network, etc. can be called to directly compare the user feature vectors of two users to determine the user matching degree.
[0079] For the method based on the matching algorithm, the matching degree between the user feature data of two users may be calculated based on a matching algorithm such as the Pearson correlation coefficient as the user matching degree.
[0080] 205: Recommend users based on user matching degree.
[0081] There are many ways to implement this step. For example, only the data involved in the recommendation and the user matching degree can be displayed to the user, or the network platform to which the recommended user belongs can be displayed to the user at the same time.
[0082] In one embodiment, when only the data involved in the recommendation and the user matching degree are displayed to the user, this step includes: obtaining a second user whose user matching degree with the first user meets preset conditions; determining the object identification corresponding to the matching item between the user behavior data corresponding to the user identifier of the first user and the user behavior data corresponding to the user identifier of the second user; and displaying the user identifier of the second user, the user matching degree of the first user and the second user, and the object identification corresponding to the matching item to the first user on the recommendation interface.
[0083] In one embodiment, when displaying the data and source involved in the recommendation to the user, this step includes: obtaining a second user whose user matching degree with the first user meets preset conditions; determining the object identifier and data source corresponding to the matching item between the user behavior data corresponding to the user identifier of the first user and the user behavior data corresponding to the user identifier of the second user; and displaying the user identifier of the second user, the object identifier and data source corresponding to the matching item between the first user and the second user to the first user on the recommendation interface.
[0084] In one embodiment, the preset condition may be that the matching degree is greater than a predetermined value (eg, 80%), may be the maximum matching degree, may be that the matching degree is in the top n, and so on.
[0085] For example, Figure 7e As shown, the recommendation interface displays the recommended user's avatar and common keywords between users (including a rumor, a rating, a preview, a tribe, etc.). Users can click on the keywords to enter the other party's corresponding platform's homepage for further understanding and to explore more common topics. At the same time, the matching interface will give a matching score with the user for the user's reference. For example, if the matching degree is 80%, the corresponding score is 80.
[0086] For example, Figure 7f As shown, in the recommendation interface, in addition to displaying the user's matching degree, the source of relevant data (such as Ban, Blog, official accounts, etc.) can also be displayed for users to refer to topic aggregation and find strangers who follow similar keywords. Clicking on the user's avatar in the corresponding keyword can enter the user's homepage. Long pressing the user's avatar can directly enter the user's corresponding platform homepage to further view relevant information.
[0087] In one embodiment, if the source of a user's user behavior data is too single, the user behavior data of the user can be simulated. Figure 2 The illustrated embodiment also includes: obtaining a second user whose user matching degree with the first user meets the preset condition, and the actual user behavior data of the first user's corresponding user identifier on the target network platform is less than a threshold; simulating the simulated user behavior data of the first user's corresponding user identifier on the target network platform based on the actual user behavior data of the second user's corresponding user identifier on the target network platform; determining the user matching degree of the first user and the third user based on the simulated user behavior data of the first user's corresponding user identifier on the target network platform and the user behavior data of the third user's corresponding user identifier on the target network platform. The preset condition is generally a numerical value, such as 80%, etc. If the user matching degree between the two users is greater than the numerical value, it is considered that the preset condition is met, and the threshold can be determined as needed, such as 10, 100, etc. Generally, the actual user behavior data of the first user's corresponding user identifier on the target network platform is often 0.
[0088] Since the data is taken from major network platforms, there is a situation where some users are heavy users of platform 1 (i.e. the first user mentioned above), but basically have no activities on other platforms, such as platform 2, platform 3, etc. (i.e. the target network platform mentioned above). For the data optimization of the recommendation data of such users, the numerical smoothing can be performed by relying on the matching of other users who participate in platform 1, platform 2, and platform 3 at the same time, and the simulated data of the platform without activity can be obtained by using the user-based class collaborative recommendation method. For example, user A (i.e. the first user mentioned above) is an active user of platform 1, user B (i.e. the second user mentioned above) is an active user of both platform 1 and platform 2 (i.e. the target network platform mentioned above), and user C (i.e. the third user mentioned above) is an active user of platform 2. Here, user A and user B have strongly correlated data (i.e. the user matching degree in the above text meets the preset conditions). If user A and user B are matched in the software, then the data of user A on platform 2 (i.e. the simulated user behavior data in the above text) can be simulated according to the matching method such as the Pearson correlation coefficient of user B, thereby smoothing the matching degree of user A and user C.
[0089] This embodiment provides a user recommendation method, in which user feature data is obtained by analyzing user behavior data corresponding to the user, the user matching degree between users is determined based on the user feature data, and user recommendation is performed based on the user matching degree. Since user behavior data is the operation data of users on the network platform, and these operation data reflect the interests and hobbies of users, user recommendations based on these data are more accurate, thereby improving the accuracy of user recommendations, thereby making matching recommendations for strangers more efficient and enhancing the user experience.
[0090] This application is now described by taking the example of processing user behavior data based on a tensor data model and recommending that a server provide an application client.
[0091] Figure 3 This is a second flow chart of the user recommendation method provided in the embodiment of the present application. Please refer to Figure 3 , the user recommendation method comprises the following steps:
[0092] 301: The user terminal registers and logs in to the recommendation server for recommendation service.
[0093] In this embodiment, the recommendation server provides a recommendation application client. After the user terminal downloads and installs the recommendation application client, the user registers and logs in to the recommendation service through the recommendation application client.
[0094] 302: The user terminal sends authorization data to the recommendation server.
[0095] In this embodiment, the user needs the recommendation server to recommend strangers to the user regularly or in real time for making friends, etc. Click the application client, and the terminal displays Figure 7a The authorization method selection interface shown in the figure, the user clicks the authorization button in the authorization method selection interface to enter Figure 7b In the authorization interface shown, the user selects the network platform to be authorized for authorization. After the authorization is successful, the user terminal generates authorization data (including account number, password, etc.) and sends it to the recommended server.
[0096] 303: Recommended server login authorization application server.
[0097] In this embodiment, the recommendation server logs in to the application server according to the authorization data, and the application server returns a success response after successful verification.
[0098] 304: The recommendation server obtains user behavior data.
[0099] In this embodiment, after the recommendation server logs into the application server, it obtains the user behavior data corresponding to the user, including the operation object and action type.
[0100] 305: The recommendation server pre-processes the user behavior data.
[0101] In this embodiment, the recommendation server extracts keywords from the operation object to obtain keywords of the operation object; determines the object identifier of the user behavior data based on the keywords of the operation object; determines the action identifier of the user behavior data based on the action type; and counts the user behavior data corresponding to the user identifier based on the object identifier and action identifier of the user behavior data to obtain user behavior statistical data; the user behavior statistical data includes the user identifier, the object identifier, the action identifier and the corresponding frequency.
[0102] Since it is cross-platform data, the acquired user behavior data is in the form of three-dimensional data. In this embodiment, it can be represented by a high-dimensional array, that is, a tensor, where the data is represented as follows:
[0103] (user1, info2, action3) = x;
[0104] This means that the frequency of user 1 performing action 3 under the keyword of info2 is x (i.e. the total number of times). After normalization, the value range of x is 0≤x≤1.
[0105] 306: The recommendation server builds a tensor data model.
[0106] In this embodiment, the recommendation server constructs the following based on the user behavior statistics in the form of tensor data: Figure 8aThe tensor data model shown.
[0107] 307: The recommendation server decomposes the tensor data model to obtain user feature data.
[0108] In this embodiment, for example Figure 8a For the tensor data model shown, the recommendation server uses a high-order singular value decomposition method to decompose the tensor data and obtain the corresponding adjoint matrix for feature analysis.
[0109] For example, Figure 8b As shown, the recommendation server can use the Tucker method to perform high-order singular value decomposition. The input of this method is a high-order tensor (user, info, action), and the tensor size is Nu*Ni*Na, where Nu represents the number of users, Ni represents the number of keywords, and Na represents the number of action types. After normalization, the value X of each point is between 0 and 1. The output of this method includes the user adjoint matrix Au, and the size is: Nu*Iu, where Nu represents the number of users and Iu represents the length (rank) of the truncated feature vector.
[0110] In the user adjoint matrix Au, each user item in the matrix corresponds to a eigenvector. Thus, the user feature data of each user can be represented by the corresponding eigenvector in the user adjoint matrix.
[0111] 308: The recommendation server clusters the users.
[0112] In this embodiment, each row in the user adjoint matrix Au is taken out, that is, the user feature vector of the corresponding user is obtained, and then the user is clustered using a clustering algorithm such as the kmeans clustering algorithm to obtain the user type.
[0113] For example, when using the kmeans clustering algorithm to cluster users, this step includes the following steps:
[0114] 308-1. Randomly select user feature vectors corresponding to k users from the user feature vectors corresponding to Nu users as the centers of the k clusters.
[0115] 308-2. Calculate the dissimilarity between the user feature vectors corresponding to the remaining users and the centers of the k clusters respectively, and assign these elements to the clusters with the lowest dissimilarity.
[0116] 308-3. According to the clustering results, the centers of the k clusters are recalculated, which may be the arithmetic mean of the dimensions of all elements in the cluster.
[0117] 308-4. Re-cluster the user feature vectors corresponding to the Nu users according to the new k centers.
[0118] 308-5. Repeat step 308-1 until the clustering result does not change.
[0119] 308-6. Output the result.
[0120] 309: The recommendation server calculates the user matching degree.
[0121] In this embodiment, the recommendation server uses a similarity algorithm such as the Pearson correlation coefficient to calculate the similarity of users according to the user adjoint matrix.
[0122] 310: The recommendation server returns the recommendation result to the user terminal.
[0123] In this embodiment, the recommendation result sent by the recommendation server includes: the user identification, avatar, common keywords and matching score of the recommended stranger.
[0124] 311: The user terminal displays a recommendation interface.
[0125] In this embodiment, the user terminal displays Figure 7e The recommendation interface shown in the figure shows, in addition to the avatar of the recommended user, the recommendation interface also has common keywords between users (including a rumor, a rating, a preview, a tribe, etc.). Users can click on the keywords to enter the homepage of the other party's corresponding platform for further understanding and digging out more common topics. At the same time, the matching interface will give a matching score with the user for the user's reference. For example, the matching degree is 80%, and the corresponding score is 80.
[0126] This embodiment provides a user recommendation method, which implements stranger recommendation based on a recommendation application client.
[0127] The present application is now described by taking the example of processing user behavior data based on a tensor data model and a recommendation server providing recommended web pages.
[0128] Figure 4 This is a third flow chart of the user recommendation method provided in the embodiment of the present application. Please refer to Figure 4 , the user recommendation method comprises the following steps:
[0129] 401: The user terminal obtains a recommended web page from a recommendation server.
[0130] In this embodiment, the recommendation server provides a recommended web page, and the user terminal obtains the recommended web page based on the web page address.
[0131] 402: The user terminal registers and logs in to the recommendation server for recommendation service.
[0132] In this embodiment, after the user terminal obtains the recommended web page, the user registers and logs in to the recommended service through the recommended web page.
[0133] 403: The user terminal sends authorization data to the recommendation server.
[0134] In this embodiment, the user needs the recommendation server to recommend strangers to the user regularly or in real time for making friends, etc. Click the recommended web page, and the terminal displays Figure 7a The authorization method selection interface shown in the figure, the user clicks the authorization button in the authorization method selection interface to enter Figure 7b In the authorization interface shown, the user selects the network platform to be authorized for authorization. After the authorization is successful, the user terminal generates authorization data (including account number, password, etc.) and sends it to the recommended server.
[0135] 404: Recommended server login authorization application server.
[0136] In this embodiment, the recommendation server logs in to the application server according to the authorization data, and the application server returns a success response after successful verification.
[0137] 405: The recommendation server obtains user behavior data.
[0138] In this embodiment, after the recommendation server logs into the application server, it obtains the user behavior data corresponding to the user, including the operation object and action type.
[0139] 406: The recommendation server pre-processes the user behavior data.
[0140] In this embodiment, the recommendation server extracts keywords from the operation object to obtain keywords of the operation object; determines the object identifier of the user behavior data based on the keywords of the operation object; determines the action identifier of the user behavior data based on the action type; and counts the user behavior data corresponding to the user identifier based on the object identifier and action identifier of the user behavior data to obtain user behavior statistical data; the user behavior statistical data includes the user identifier, the object identifier, the action identifier and the corresponding frequency.
[0141] Since it is cross-platform data, the acquired user behavior data is in the form of three-dimensional data. In this embodiment, it can be represented by a high-dimensional array, that is, a tensor, where the data is represented as follows:
[0142] (user1, info2, action3) = x;
[0143] This means that the frequency of user 1 performing action 3 under the keyword of info2 is x (i.e. the total number of times). After normalization, the value range of x is 0≤x≤1.
[0144] 407: It is recommended that the server build a tensor data model.
[0145] In this embodiment, the recommendation server constructs the following based on the user behavior statistics in the form of tensor data: Figure 8a The tensor data model shown.
[0146] 408: The recommendation server decomposes the tensor data model to obtain user feature data.
[0147] In this embodiment, for example Figure 8a For the tensor data model shown, the recommendation server uses a high-order singular value decomposition method to decompose the tensor data and obtain the corresponding adjoint matrix for feature analysis.
[0148] For example, Figure 8b As shown, the recommendation server can use the Tucker method to perform high-order singular value decomposition. The input of this method is a high-order tensor (user, info, action), and the tensor size is Nu*Ni*Na, where Nu represents the number of users, Ni represents the number of keywords, and Na represents the number of action types. After normalization, the value X of each point is between 0 and 1. The output of this method includes the user adjoint matrix Au, and the size is: Nu*Iu, where Nu represents the number of users and Iu represents the length (rank) of the truncated feature vector.
[0149] In the user adjoint matrix Au, each user item in the matrix corresponds to a eigenvector. Thus, the user feature data of each user can be represented by the corresponding eigenvector in the user adjoint matrix.
[0150] 409: The server is recommended to cluster users.
[0151] In this embodiment, each row in the user adjoint matrix Au is taken out, that is, the user feature vector of the corresponding user is obtained, and then the user is clustered using a clustering algorithm such as the kmeans clustering algorithm to obtain the user type.
[0152] For example, when using the kmeans clustering algorithm to cluster users, this step includes the following steps:
[0153] 409-1. Randomly select user feature vectors corresponding to k users from the user feature vectors corresponding to Nu users as the centers of the k clusters.
[0154] 409-2. Calculate the dissimilarity between the user feature vectors corresponding to the remaining users and the centers of the k clusters, and assign these elements to the clusters with the lowest dissimilarity.
[0155] 409-3. According to the clustering results, the centers of the k clusters are recalculated, which may be the arithmetic mean of the dimensions of all elements in the cluster.
[0156] 409-4. Re-cluster the user feature vectors corresponding to the Nu users according to the new k centers.
[0157] 409-5. Repeat step 308-1 until the clustering result does not change.
[0158] 409-6. Output the result.
[0159] 410: The recommendation server calculates the user matching degree.
[0160] In this embodiment, the recommendation server uses a similarity algorithm such as the Pearson correlation coefficient to calculate the similarity of users according to the user adjoint matrix.
[0161] 411: The recommendation server returns the recommendation result to the user terminal.
[0162] In this embodiment, the recommendation result sent by the recommendation server includes: the user ID, avatar, common keywords, matching score and source of relevant data of the recommended stranger.
[0163] 412: The user terminal displays a recommendation interface.
[0164] In this embodiment, the user terminal displays Figure 7f The recommendation interface shown in the figure can not only display the user's matching degree, but also display the source of relevant data (such as Ban, Blog, official account, etc.) for users to refer to topic aggregation and find strangers who follow similar keywords. Clicking the user avatar in the corresponding keyword can enter the user's homepage. Long pressing the user avatar can directly enter the user's corresponding platform homepage to further view relevant information.
[0165] This embodiment provides a user recommendation method, which implements stranger recommendation based on a web page.
[0166] Accordingly, Figure 5 This is a schematic diagram of the structure of the user recommendation device provided in the embodiment of the present application. Figure 5 , the user recommendation device includes the following modules:
[0167] An acquisition module 501 is used to acquire user behavior data corresponding to a user identifier, where the data sources of the user behavior data include at least two network platforms;
[0168] A statistics module 502 is used to perform statistical processing on the user behavior data corresponding to the user identifier to obtain user behavior statistical data;
[0169] Processing module 503, used to obtain user characteristic data corresponding to the user identifier according to the user behavior statistical data;
[0170] A matching module 504, configured to obtain a user matching degree of a user corresponding to the user identifier according to user characteristic data corresponding to the user identifier;
[0171] The recommendation module 505 is used to make user recommendations based on user matching degrees.
[0172] In one embodiment, the acquisition module 501 is specifically used to: acquire the user's authorization parameters for the network platform through the authorization interface; log in to the network platform based on the authorization parameters; and acquire user behavior data from the network platform.
[0173] In one embodiment, the acquisition module 501 is specifically used to: acquire image data including user behavior data; and identify the image data to obtain the user behavior data.
[0174] In one embodiment, user behavior data includes operation objects and action types; the statistical module 502 is specifically used to: extract keywords from the operation objects to obtain keywords of the operation objects; determine the object identifier of the user behavior data based on the keywords of the operation objects; determine the action identifier of the user behavior data based on the action type; count the user behavior data corresponding to the user identifier based on the object identifier and action identifier of the user behavior data to obtain user behavior statistical data; the user behavior statistical data includes the user identifier, the object identifier, the action identifier and the corresponding frequency.
[0175] In one embodiment, the processing module 503 is specifically used to: normalize the user behavior statistical data according to the frequency corresponding to the user behavior statistical data to obtain normalized user behavior statistical data; and obtain user feature data corresponding to the user identifier according to the normalized user behavior statistical data.
[0176] In one embodiment, the processing module 503 is specifically used to: use normalized user behavior statistical data to construct a tensor data model; decompose the tensor data model to obtain an adjoint matrix corresponding to the tensor data model; filter the adjoint matrix to obtain a user adjoint matrix, the user adjoint matrix including feature vectors corresponding to multiple user identifiers; and determine the feature vector corresponding to each user identifier as user feature data corresponding to the corresponding user identifier.
[0177] In one embodiment, if Figure 5As shown, the user recommendation device also includes a simulation module 506, which is used to obtain a second user whose user matching degree with the first user meets preset conditions; based on the actual user behavior data of the user identifier corresponding to the second user, simulate the simulated user behavior data of the user identifier corresponding to the first user; the matching module 504 is also used to: determine the user matching degree between the first user and the third user based on the simulated user behavior data of the user identifier corresponding to the first user, and the user behavior data of the user identifier corresponding to the third user.
[0178] In one embodiment, the matching module 504 is specifically used to: perform clustering processing on the user identifiers according to the user feature data corresponding to the user identifiers to obtain user classes; and obtain user matching degrees of users corresponding to the user identifiers for user identifiers belonging to the same user class.
[0179] In one embodiment, the recommendation module 505 is specifically used to: obtain a second user whose user matching degree with the first user meets preset conditions; determine the object identification corresponding to the matching item between the user behavior data corresponding to the user identifier of the first user and the user behavior data corresponding to the user identifier of the second user; and display the user identifier of the second user, the user matching degree of the first user and the second user, and the object identification corresponding to the matching item to the first user on the recommendation interface.
[0180] In one embodiment, the recommendation module 505 is specifically used to: obtain a second user whose user matching degree with the first user meets preset conditions; determine the object identifier and data source corresponding to the matching item between the user behavior data corresponding to the user identifier of the first user and the user behavior data corresponding to the user identifier of the second user; and display the user identifier of the second user, the object identifier and data source corresponding to the matching item between the first user and the second user to the first user on the recommendation interface.
[0181] Accordingly, the embodiment of the present application also provides a server, such as Figure 6 As shown, the server may include a radio frequency (RF) circuit 601, a memory 602 including one or more computer-readable storage media, an input unit 603, a display unit 604, a sensor 605, an audio circuit 606, a wireless fidelity (WiFi) module 607, a processor 608 including one or more processing cores, and a power supply 609. Those skilled in the art will appreciate that Figure 6 The server structure shown in the figure does not constitute a limitation on the server, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently. Among them:
[0182] RF circuit 601 can be used for receiving and sending signals during information transmission or calls. In particular, after receiving the downlink information of the base station, it is handed over to one or more processors 608 for processing; in addition, the data related to the uplink is sent to the base station. The memory 602 can be used to store software programs and modules. The processor 608 executes various functional applications and data processing by running the software programs and modules stored in the memory 602. The input unit 603 can be used to receive input digital or character information, and generate keyboard, mouse, joystick, optical or trackball signal input related to user settings and function control.
[0183] The display unit 604 may be used to display information input by a user or information provided to a user and various graphical user interfaces of the server. These graphical user interfaces may be composed of graphics, texts, icons, videos and any combination thereof.
[0184] The server may also include at least one sensor 605, such as a light sensor, a motion sensor, and other sensors. The audio circuit 606 includes a speaker and a microphone to provide an audio interface between the user and the server.
[0185] WiFi is a short-range wireless transmission technology. The server can help users send and receive emails, browse web pages, and access streaming media through WiFi module 607, which provides users with wireless broadband Internet access. Figure 6 A WiFi module 607 is shown, but it is understandable that it is not a necessary component of the server and can be omitted as needed without changing the essence of the application.
[0186] Processor 608 is the control center of the server, which uses various interfaces and lines to connect various parts of the entire mobile phone. It executes various functions of the server and processes data by running or executing software programs and / or modules stored in memory 602, and calling data stored in memory 602, thereby monitoring the mobile phone as a whole.
[0187] The server also includes a power supply 609 (such as a battery) for supplying power to various components. Preferably, the power supply can be logically connected to the processor 608 through a power management system, so that the power management system can manage charging, discharging, power consumption and other functions.
[0188] Although not shown, the server may also include a camera, a Bluetooth module, etc., which will not be described in detail here. Specifically in this embodiment, the processor 608 in the server will load the executable files corresponding to the processes of one or more applications into the memory 602 according to the following instructions, and the processor 608 will run the application stored in the memory 602, thereby achieving the following functions:
[0189] Obtaining user behavior data corresponding to the user identifier; the data sources of the user behavior data include at least two network platforms;
[0190] Performing statistical processing on the user behavior data corresponding to the user identifier to obtain user behavior statistical data;
[0191] According to the user behavior statistical data, obtain the user characteristic data corresponding to the user identification;
[0192] According to the user characteristic data corresponding to the user identifier, a user matching degree of the user corresponding to the user identifier is obtained;
[0193] Recommend users based on their matching degree.
[0194] In one embodiment, the functions are implemented:
[0195] Obtain the user's authorization parameters for the network platform through the authorization interface;
[0196] Based on the authorization parameters, log in to the network platform;
[0197] Obtain user behavior data from online platforms.
[0198] In one embodiment, the functions are implemented:
[0199] Obtain image data containing user behavior data;
[0200] Identify image data and obtain user behavior data.
[0201] In one embodiment, the functions are implemented:
[0202] Extract keywords from the operation object to obtain keywords of the operation object;
[0203] Determine the object identifier of the user behavior data based on the keywords of the operation object;
[0204] Determine the action identifier of the user behavior data according to the action type;
[0205] According to the object identifier and action identifier of the user behavior data, the user behavior data corresponding to the user identifier is counted to obtain user behavior statistical data; the user behavior statistical data includes the user identifier, the object identifier, the action identifier and the corresponding frequency.
[0206] In one embodiment, the functions are implemented:
[0207] Normalizing the user behavior statistical data according to the frequencies corresponding to the user behavior statistical data to obtain normalized user behavior statistical data;
[0208] According to the normalized user behavior statistical data, the user characteristic data corresponding to the user identification is obtained.
[0209] In one embodiment, the functions are implemented:
[0210] Use normalized user behavior statistics to build a tensor data model;
[0211] Decomposing the tensor data model to obtain the adjoint matrix corresponding to the tensor data model;
[0212] The adjoint matrix is screened to obtain a user adjoint matrix, where the user adjoint matrix includes eigenvectors corresponding to multiple user identifiers;
[0213] The feature vector corresponding to each user identification is determined as the user feature data corresponding to the corresponding user identification.
[0214] In one embodiment, the functions are implemented:
[0215] Acquire a second user whose user matching degree with the first user meets a preset condition, and the actual user behavior data of the user identifier corresponding to the first user on the target network platform is less than a threshold;
[0216] According to the actual user behavior data of the user identifier corresponding to the second user on the target network platform, simulate and obtain the simulated user behavior data of the user identifier corresponding to the first user on the target network platform;
[0217] The user matching degree between the first user and the third user is determined based on the simulated user behavior data of the user identifier corresponding to the first user on the target network platform and the user behavior data of the user identifier corresponding to the third user on the target network platform.
[0218] In one embodiment, the functions are implemented:
[0219] According to the user characteristic data corresponding to the user identifier, the user identifier is clustered to obtain a user class;
[0220] For user identifiers belonging to the same user class, the user matching degree of the user corresponding to the user identifier is obtained.
[0221] In one embodiment, the functions are implemented:
[0222] Acquire a second user whose user matching degree with the first user meets a preset condition;
[0223] Determine an object identifier corresponding to a match between user behavior data corresponding to a user identifier of a first user and user behavior data corresponding to a user identifier of a second user;
[0224] The user ID of the second user, the user matching degree between the first user and the second user, and the object ID corresponding to the matching item are displayed to the first user on the recommendation interface.
[0225] In one embodiment, the functions are implemented:
[0226] Acquire a second user whose user matching degree with the first user meets a preset condition;
[0227] Determine an object identifier and a data source corresponding to a matching item between user behavior data corresponding to a user identifier of a first user and user behavior data corresponding to a user identifier of a second user;
[0228] The user identifier of the second user, the object identifier corresponding to the matching items of the first user and the second user, and the data source are displayed to the first user on the recommendation interface.
[0229] In the above embodiments, the description of each embodiment has its own emphasis. For the part that is not described in detail in a certain embodiment, please refer to the detailed description above and will not be repeated here.
[0230] A person of ordinary skill in the art will appreciate that all or part of the steps in the various methods of the above embodiments may be completed by instructions, or by controlling related hardware through instructions. The instructions may be stored in a computer-readable storage medium and loaded and executed by a processor.
[0231] To this end, an embodiment of the present application provides a storage medium, in which a plurality of instructions are stored, and the instructions can be loaded by a processor to implement the following functions:
[0232] Obtaining user behavior data corresponding to the user identifier; the data sources of the user behavior data include at least two network platforms;
[0233] Performing statistical processing on the user behavior data corresponding to the user identifier to obtain user behavior statistical data;
[0234] According to the user behavior statistical data, obtain the user characteristic data corresponding to the user identification;
[0235] According to the user characteristic data corresponding to the user identifier, a user matching degree of the user corresponding to the user identifier is obtained;
[0236] Recommend users based on their matching degree.
[0237] In one embodiment, the functions are implemented:
[0238] Obtain the user's authorization parameters for the network platform through the authorization interface;
[0239] Based on the authorization parameters, log in to the network platform;
[0240] Obtain user behavior data from online platforms.
[0241] In one embodiment, the functions are implemented:
[0242] Obtain image data containing user behavior data;
[0243] Identify image data and obtain user behavior data.
[0244] In one embodiment, the functions are implemented:
[0245] Extract keywords from the operation object to obtain keywords of the operation object;
[0246] Determine the object identifier of the user behavior data based on the keywords of the operation object;
[0247] Determine the action identifier of the user behavior data according to the action type;
[0248] According to the object identifier and action identifier of the user behavior data, the user behavior data corresponding to the user identifier is counted to obtain user behavior statistical data; the user behavior statistical data includes the user identifier, the object identifier, the action identifier and the corresponding frequency.
[0249] In one embodiment, the functions are implemented:
[0250] Normalizing the user behavior statistical data according to the frequencies corresponding to the user behavior statistical data to obtain normalized user behavior statistical data;
[0251] According to the normalized user behavior statistical data, the user characteristic data corresponding to the user identification is obtained.
[0252] In one embodiment, the functions are implemented:
[0253] Use normalized user behavior statistics to build a tensor data model;
[0254] Decomposing the tensor data model to obtain the adjoint matrix corresponding to the tensor data model;
[0255] The adjoint matrix is screened to obtain a user adjoint matrix, where the user adjoint matrix includes eigenvectors corresponding to multiple user identifiers;
[0256] The feature vector corresponding to each user identification is determined as the user feature data corresponding to the corresponding user identification.
[0257] In one embodiment, the functions are implemented:
[0258] Acquire a second user whose user matching degree with the first user meets a preset condition, and the actual user behavior data of the user identifier corresponding to the first user on the target network platform is less than a threshold;
[0259] According to the actual user behavior data of the user identifier corresponding to the second user on the target network platform, simulate and obtain the simulated user behavior data of the user identifier corresponding to the first user on the target network platform;
[0260] The user matching degree between the first user and the third user is determined based on the simulated user behavior data of the user identifier corresponding to the first user on the target network platform and the user behavior data of the user identifier corresponding to the third user on the target network platform.
[0261] In one embodiment, the functions are implemented:
[0262] According to the user characteristic data corresponding to the user identifier, the user identifier is clustered to obtain a user class;
[0263] For user identifiers belonging to the same user class, the user matching degree of the user corresponding to the user identifier is obtained.
[0264] In one embodiment, the functions are implemented:
[0265] Acquire a second user whose user matching degree with the first user meets a preset condition;
[0266] Determine an object identifier corresponding to a match between user behavior data corresponding to a user identifier of a first user and user behavior data corresponding to a user identifier of a second user;
[0267] The user ID of the second user, the user matching degree between the first user and the second user, and the object ID corresponding to the matching item are displayed to the first user on the recommendation interface.
[0268] In one embodiment, the functions are implemented:
[0269] Acquire a second user whose user matching degree with the first user meets a preset condition;
[0270] Determine an object identifier and a data source corresponding to a matching item between user behavior data corresponding to a user identifier of a first user and user behavior data corresponding to a user identifier of a second user;
[0271] The user identifier of the second user, the object identifier corresponding to the matching items of the first user and the second user, and the data source are displayed to the first user on the recommendation interface.
[0272] The specific implementation of the above operations can be found in the previous embodiments, which will not be described in detail here.
[0273] The storage medium may include: a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.
[0274] Since the instructions stored in the storage medium can execute the steps in any method provided in the embodiments of the present application, the beneficial effects that can be achieved by any method provided in the embodiments of the present application can be achieved. Please refer to the previous embodiments for details and will not be repeated here.
[0275] The above is a detailed introduction to a user recommendation method and device, a server and a computer-readable storage medium provided in an embodiment of the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea; at the same time, for technical personnel in this field, according to the idea of the present application, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.
Claims
1. A user recommendation method, characterized in that: include: Obtain user behavior data corresponding to the user ID; The data sources of the user behavior data include at least two network platforms, and the user behavior data include simulated user behavior data and actual user behavior data; Performing statistical processing on the user behavior data corresponding to the user identifier to obtain user behavior statistical data; Obtaining user feature data corresponding to the user identifier according to the user behavior statistical data; Calculating the user matching degree between two users according to the user feature data corresponding to the user identifier, including: clustering the user identifier according to the user feature data corresponding to the user identifier to obtain a user class; calculating the user matching degree between two users in the same user class, wherein the user matching degree between two users is calculated by taking the sum of weights corresponding to the user behavior statistical data with the same frequency value and not 0 as the user matching degree between the two users; Acquire a second user whose user matching degree with the first user meets a preset condition, the actual user behavior data of the user identifier corresponding to the first user on the target network platform is less than a threshold, the first user is an active user of the first network platform, the first network platform is different from the target network platform, the second user is an active user of both the first network platform and the target network platform, and the third user is an active user of the target network platform; According to the actual user behavior data of the user identifier corresponding to the second user on the target network platform, simulate and obtain the simulated user behavior data of the user identifier corresponding to the first user on the target network platform, so as to smoothly process the user matching degree between the first user and the third user; Determine a user matching degree between the first user and the third user according to the simulated user behavior data corresponding to the user identifier of the first user on the target network platform and the user behavior data corresponding to the user identifier of the third user on the target network platform; User recommendations are made based on the user matching degree.
2. The user recommendation method according to claim 1, characterized in that: The step of obtaining user behavior data corresponding to the user identifier includes: Obtaining the user's authorization parameters for the network platform through the authorization interface; Based on the authorization parameters, log in to the network platform; The user behavior data is obtained from the network platform.
3. The user recommendation method according to claim 1, characterized in that: The step of obtaining user behavior data corresponding to the user identifier includes: Acquire image data containing the user behavior data; The image data is identified to obtain the user behavior data.
4. The user recommendation method according to claim 1, characterized in that: The user behavior data includes an operation object and an action type; the step of performing statistical processing on the user behavior data corresponding to the user identifier to obtain user behavior statistical data includes: Extracting keywords from the operation object to obtain keywords of the operation object; Determining an object identifier of the user behavior data according to a keyword of the operation object; Determining an action identifier of the user behavior data according to the action type; According to the object identifier and action identifier of the user behavior data, the user behavior data corresponding to the user identifier is counted to obtain the user behavior statistical data; the user behavior statistical data includes the user identifier, the object identifier, the action identifier and the corresponding frequency.
5. The user recommendation method according to claim 4, characterized in that: The step of obtaining user characteristic data corresponding to the user identifier according to the user behavior statistical data includes: Normalizing the user behavior statistical data according to the frequencies corresponding to the user behavior statistical data to obtain normalized user behavior statistical data; The user characteristic data corresponding to the user identification is obtained according to the normalized user behavior statistical data.
6. The user recommendation method according to claim 5, characterized in that: The step of obtaining user characteristic data corresponding to the user identifier according to the normalized user behavior statistical data includes: Using the normalized user behavior statistical data, constructing a tensor data model; Decomposing the tensor data model to obtain an adjoint matrix corresponding to the tensor data model; Screening the adjoint matrix to obtain a user adjoint matrix, wherein the user adjoint matrix includes eigenvectors corresponding to a plurality of user identifiers; The feature vector corresponding to each user identification is determined as the user feature data corresponding to the corresponding user identification.
7. The user recommendation method according to claim 1, characterized in that: The step of recommending users according to the user matching degree comprises: Acquire a second user whose user matching degree with the first user meets a preset condition; Determine an object identifier corresponding to a match between the user behavior data corresponding to the user identifier of the first user and the user behavior data corresponding to the user identifier of the second user; The user ID of the second user, the user matching degree between the first user and the second user, and the object ID corresponding to the matching item are displayed to the first user on the recommendation interface.
8. The user recommendation method according to claim 1, characterized in that: The step of recommending users according to the user matching degree comprises: Acquire a second user whose user matching degree with the first user meets a preset condition; Determine an object identifier and a data source corresponding to a matching item between the user behavior data corresponding to the user identifier of the first user and the user behavior data corresponding to the user identifier of the second user; The user ID of the second user, the object IDs corresponding to the matching items of the first user and the second user, and the data sources are displayed to the first user on the recommendation interface.
9. A user recommendation device, characterized in that: include: An acquisition module, used to acquire user behavior data corresponding to a user identifier; The data sources of the user behavior data include at least two network platforms, and the user behavior data include simulated user behavior data and actual user behavior data; A statistical module, used to perform statistical processing on the user behavior data corresponding to the user identifier to obtain user behavior statistical data; A processing module, used to obtain user feature data corresponding to the user identifier according to the user behavior statistical data; A matching module, for calculating the user matching degree between two users according to the user feature data corresponding to the user identifier, comprising: clustering the user identifier according to the user feature data corresponding to the user identifier to obtain a user class; calculating the user matching degree between two users in the same user class, wherein the user matching degree between two users is calculated by taking the sum of weights corresponding to the user behavior statistical data with the same frequency value and not 0 as the user matching degree between the two users; A simulation module is used to obtain a second user whose user matching degree with the first user meets a preset condition, the actual user behavior data of the user identifier corresponding to the first user on the target network platform is less than a threshold, the first user is an active user of the first network platform, the first network platform is different from the target network platform, the second user is an active user of both the first network platform and the target network platform, and the third user is an active user of the target network platform; based on the actual user behavior data of the user identifier corresponding to the second user on the target network platform, simulate and obtain the simulated user behavior data of the user identifier corresponding to the first user on the target network platform to smoothly process the user matching degree between the first user and the third user; the matching module is also used to: determine the user matching degree between the first user and the third user based on the simulated user behavior data of the user identifier corresponding to the first user on the target network platform and the user behavior data of the user identifier corresponding to the third user on the target network platform; The recommendation module is used to make user recommendations based on the user matching degree.
10. The user recommendation device according to claim 9, characterized in that: The acquisition module is specifically used for: acquiring the user's authorization parameters for the network platform through the authorization interface; logging into the network platform based on the authorization parameters; and acquiring user behavior data from the network platform.
11. The user recommendation device according to claim 9, characterized in that: The acquisition module is specifically used to: acquire image data containing user behavior data; and identify the image data to obtain the user behavior data.
12. The user recommendation device according to claim 9, characterized in that: The user behavior data includes an operation object and an action type; the statistical module is specifically used to: extract keywords from the operation object to obtain keywords of the operation object; determine the object identifier of the user behavior data according to the keywords of the operation object; determine the action identifier of the user behavior data according to the action type; According to the object identifier and action identifier of the user behavior data, the user behavior data corresponding to the user identifier is counted to obtain user behavior statistical data; the user behavior statistical data includes the user identifier, the object identifier, the action identifier and the corresponding frequency.
13. The user recommendation device according to claim 12, characterized in that: The processing module is specifically used to: normalize the user behavior statistical data according to the frequency corresponding to the user behavior statistical data to obtain the normalized user behavior statistical data; and obtain user feature data corresponding to the user identifier according to the normalized user behavior statistical data.
14. The user recommendation device according to claim 13, characterized in that: The processing module is specifically used to: use normalized user behavior statistical data to construct a tensor data model; decompose the tensor data model to obtain an adjoint matrix corresponding to the tensor data model; filter the adjoint matrix to obtain a user adjoint matrix, the user adjoint matrix includes feature vectors corresponding to multiple user identifiers; and determine the feature vector corresponding to each user identifier as user feature data corresponding to the corresponding user identifier.
15. The user recommendation device according to claim 9, characterized in that: The recommendation module is specifically used to: obtain a second user whose user matching degree with the first user meets preset conditions; determine the object identification corresponding to the matching item between the user behavior data corresponding to the user identifier of the first user and the user behavior data corresponding to the user identifier of the second user; and display the user identifier of the second user, the user matching degree of the first user and the second user, and the object identification corresponding to the matching item to the first user on the recommendation interface.
16. The user recommendation device according to claim 9, characterized in that: The recommendation module is specifically used to: obtain a second user whose user matching degree with the first user meets preset conditions; determine the object identifier and data source corresponding to the matching item between the user behavior data corresponding to the user identifier of the first user and the user behavior data corresponding to the user identifier of the second user; and display the user identifier of the second user, the object identifier and data source corresponding to the matching item of the first user and the second user to the first user on the recommendation interface.
17. A server, characterized in that: The method comprises a processor and a memory, wherein the memory stores a plurality of instructions, and the instructions are suitable for being loaded by the processor to execute the steps in the method according to any one of claims 1 to 8.
18. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a plurality of instructions, and the instructions are suitable for being loaded by a processor to execute the steps in the method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Multimedia resource recommendation method and device
CN106294830A
Personalized information retrieval method and device
CN107133290A
Account recommendation method and device, server, terminal and storage medium
CN109544396A