CN108833458B - Application recommendation method, device, medium and equipment - Google Patents

Application recommendation method, device, medium and equipment Download PDF

Info

Publication number
CN108833458B
CN108833458B CN201810284503.4A CN201810284503A CN108833458B CN 108833458 B CN108833458 B CN 108833458B CN 201810284503 A CN201810284503 A CN 201810284503A CN 108833458 B CN108833458 B CN 108833458B
Authority
CN
China
Prior art keywords
user
application
target user
applications
recommended
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810284503.4A
Other languages
Chinese (zh)
Other versions
CN108833458A (en
Inventor
陈彦其
段志云
向辉
周东谕
罗超凡
代继洪
赵增
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810284503.4A priority Critical patent/CN108833458B/en
Publication of CN108833458A publication Critical patent/CN108833458A/en
Application granted granted Critical
Publication of CN108833458B publication Critical patent/CN108833458B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0631Item recommendations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user

Abstract

The invention belongs to the technical field of intelligent recommendation, and provides an application recommendation method, device, medium and equipment, wherein in the technical scheme provided by the invention, the application with the preference degree larger than a first threshold value in the applications used by a target user is determined as the preferred application of the target user; taking the application with the similarity larger than a second threshold value with the preference application as a first type of application to be recommended; determining the user with cosine similarity greater than a third threshold value with the target user as a similar user of the target user; taking the application which is not used by the target user in the applications used by the similar users as a second type of application to be recommended; recommending the first type of application to be recommended and the second type of application to be recommended to a target user. The invention can improve the conversion rate of the application recommended to the target user to a certain extent.

Description

Application recommendation method, device, medium and equipment
Technical Field
The present application relates to the field of intelligent recommendation technologies, and in particular, to an application recommendation method, apparatus, medium, and device.
Background
At the present stage, applications recommended to different users are the same, that is, applications to be recommended determined for different users are the same, characteristics of the users themselves are not considered in the process of determining the applications to be recommended, different applications to be recommended cannot be generated for different users, and therefore the problem that the conversion rate of the recommended applications is low is caused. Therefore, how to make personalized recommendations of applications to different users is a problem to be considered.
Disclosure of Invention
The application recommendation method, device, medium and equipment are used for solving the problem that the recommended application conversion rate is low in the prior art.
In a first aspect, an embodiment of the present application provides an application recommendation method, including: determining applications with the preference degrees larger than a first threshold value in the applications used by a target user as preference applications of the target user; taking the application with the similarity larger than a second threshold value with the preference application as a first type of application to be recommended; determining the user with cosine similarity greater than a third threshold value with the target user as a similar user of the target user; taking the application which is not used by the target user in the applications used by the similar users as a second type of application to be recommended; recommending the first type of application to be recommended and the second type of application to be recommended to the target user. In this embodiment, the probability that the application similar to the application preferred by the target user is also the application preferred by the target user is higher, and the probability that the application to be used by the target user is the application used by the user similar to the target user is higher, so that the conversion rate of the application recommended to the target user can be improved to a certain extent.
As a possible implementation manner, the preference of the application is determined according to the number of days that the target user logs in the application within a preset time period, the time length of logging in the application, and the number of times the application is used.
As a possible implementation, the preference of the application is: and the target user logs in the application in a preset time period according to the weighted summation result of the number of days, the time length and the number of times of using the application.
As a possible implementation manner, determining a user whose cosine similarity with the target user is greater than a third threshold as a similar user of the target user specifically includes: for each user except the target user, determining the number of applications used by the user and the target user together; determining cosine similarity between the user and the target user according to the number of applications used by the user and the target user together, the number of applications used by the user and the number of applications used by the target user; and determining users with cosine similarity greater than a third threshold value with the target user from the users except the target user as similar users of the target user.
As a possible implementation manner, recommending the first type of application to be recommended and the second type of application to be recommended to the target user specifically includes: respectively carrying out duplicate removal processing on the first type of application to be recommended and the second type of application to be recommended; selecting a first number of applications to be recommended from the first class of applications to be recommended after the deduplication processing according to the sequence of the retention rate of the next day from high to low, and recommending the applications to be recommended to the target user; and selecting a second number of applications to be recommended from the second type of applications to be recommended after the deduplication processing according to the sequence of the retention rate of the next day from high to low, and recommending the second number of applications to be recommended to the target user. According to the implementation mode, the same application can be avoided from appearing in the applications recommended to the target user, the applications with higher retention rate of the next day are recommended to the target user, and the quality of the applications recommended to the target user can be guaranteed.
As a possible implementation manner, the application recommendation method provided in the embodiment of the present application further includes: and evaluating the first type of applications to be recommended according to the determined evaluation indexes, wherein the evaluation indexes comprise at least one of accuracy, recall rate, coverage and novelty. Such an embodiment may evaluate the reliability of the first type of application to be recommended.
As a possible implementation manner, the evaluating the first type of application to be recommended specifically includes: determining that the first type of application to be recommended is reliable if the accuracy exceeds an accuracy threshold, the recall exceeds a recall threshold, the coverage exceeds a coverage threshold, and/or the novelty exceeds a novelty threshold. This embodiment may enable the evaluation of the reliability of the first type of application to be recommended in case that at least one evaluation index is greater than its corresponding threshold.
As a possible embodiment, the evaluation indicator is determined in the following manner: determining the ratio of the sum of the first parameter corresponding to each target user to the sum of the second parameter corresponding to each target user as the accuracy, wherein the first parameter corresponding to the target user is the number of preference applications of the target user contained in the first type of applications to be recommended to the target user, and the second parameter corresponding to the target user is the number of applications to be recommended contained in the first type of applications to be recommended to the target user; determining the ratio of the sum of the first parameter corresponding to each target user to the sum of the third parameter corresponding to each target user as the recall rate, wherein the third parameter corresponding to the target user is the number of preference applications of the target user; determining the ratio of the sum of the second parameters corresponding to each target user to the total number of applications in the database as the coverage; and determining the ratio of the sum of the fourth parameter corresponding to each target user to the sum of the second parameter corresponding to each target user as the novelty, wherein the fourth parameter corresponding to the target user is the number of popular applications contained in the first type of applications to be recommended to the user.
In a second aspect, an embodiment of the present application provides an application recommendation apparatus, including: the first determining module is used for determining the applications with the preference degrees larger than a first threshold value in the applications used by the target user as the preferred applications of the target user; the second determining module is used for taking the application with the similarity larger than a second threshold value with the preferred application as a first type of application to be recommended; a third determining module, configured to determine, as a similar user to the target user, a user whose cosine similarity to the target user is greater than a third threshold; a fourth determining module, configured to use an application that is not used by the target user among the applications used by the similar users as a second type of application to be recommended; and the recommending module is used for recommending the first type of application to be recommended and the second type of application to be recommended to the target user.
As a possible implementation manner, the preference of the application is determined according to the number of days that the target user logs in the application within a preset time period, the time length of logging in the application, and the number of times the application is used.
As a possible implementation, the preference of the application is: and the target user logs in the application in a preset time period according to the weighted summation result of the number of days, the time length and the number of times of using the application.
As a possible implementation manner, the third determining module specifically includes: a first determining unit, configured to determine, for each user other than the target user, the number of applications used by the user in common with the target user; a second determining unit, configured to determine cosine similarity between the user and the target user according to the number of applications used by the user and the target user together, the number of applications used by the user, and the number of applications used by the target user; a third determining unit, configured to determine, as a similar user to the target user, a user whose cosine similarity with the target user is greater than a third threshold, among the users other than the target user.
As a possible implementation manner, the recommendation module specifically includes: the duplication removing unit is used for respectively carrying out duplication removing processing on the first type of application to be recommended and the second type of application to be recommended; the first selecting unit is used for selecting a first number of applications to be recommended from the first type of applications to be recommended after the deduplication processing according to the sequence of the retention rate of the next day from high to low and recommending the applications to the target user; and the second selection unit is used for selecting a second number of applications to be recommended from the second type of applications to be recommended after the deduplication processing according to the sequence of the retention rate of the next day from high to low and recommending the second number of applications to be recommended to the target user.
As a possible implementation manner, the application recommendation apparatus provided in this application further includes: and the evaluation module is used for evaluating the first type of applications to be recommended according to the determined evaluation indexes, and the evaluation indexes comprise at least one of accuracy, recall rate, coverage and novelty.
As a possible implementation, the evaluation module is specifically configured to: determining that the first type of application to be recommended is reliable if the accuracy exceeds an accuracy threshold, the recall exceeds a recall threshold, the coverage exceeds a coverage threshold, and/or the novelty exceeds a novelty threshold.
As a possible implementation manner, the application recommendation apparatus provided in this application further includes: an index determination module to determine the evaluation index as follows: determining the ratio of the sum of the first parameter corresponding to each target user to the sum of the second parameter corresponding to each target user as the accuracy, wherein the first parameter corresponding to the target user is the number of preference applications of the target user contained in the first type of applications to be recommended to the target user, and the second parameter corresponding to the target user is the number of applications to be recommended contained in the first type of applications to be recommended to the target user; determining the ratio of the sum of the first parameter corresponding to each target user to the sum of the third parameter corresponding to each target user as the recall rate, wherein the third parameter corresponding to the target user is the number of preference applications of the target user; determining the ratio of the sum of the second parameters corresponding to each target user to the total number of applications in the database as the coverage; and determining the ratio of the sum of the fourth parameter corresponding to each target user to the sum of the second parameter corresponding to each target user as the novelty, wherein the fourth parameter corresponding to the target user is the number of popular applications contained in the first type of applications to be recommended to the user.
In a third aspect, an embodiment of the present application provides another application recommendation method, including: determining a first user group with a preference degree of a target application larger than a first threshold value; respectively determining similar users of which the cosine similarity with each user in the first user group is greater than a third threshold; determining a target user which does not use the target application in each similar user; and recommending the target application to each determined target user. In this embodiment, the probability that the target application is also preferred by users similar to the first user group preferred by the target application is high, and at this time, a user who does not use the target application among the similar users is taken as the target user, and the target application is recommended to the target user, so that the conversion rate of the target application can be improved to a certain extent.
In a fourth aspect, an embodiment of the present application provides another application recommendation apparatus, including: the user group determining module is used for determining a first user group of which the preference degree of the target application is greater than a first threshold value; a similar user determining module, configured to determine similar users whose cosine similarity to each user in the first user group is greater than a third threshold, respectively; the target user determining module is used for determining target users which do not use the target application in all similar users; and the recommending module is used for recommending the target application to each determined target user.
In a fifth aspect, an embodiment of the present application provides a non-volatile computer storage medium, where the computer storage medium stores an executable program, and the executable program is executed by a processor to implement any of the steps of the application recommendation method provided in the first aspect.
In a sixth aspect, an embodiment of the present application provides a computer device, including: a memory, a processor and a computer program stored on the memory, the processor implementing the steps of any of the application recommendation methods provided in the first aspect when executing the program.
In a seventh aspect, an embodiment of the present application provides a non-volatile computer storage medium, where the computer storage medium stores an executable program, and the executable program is executed by a processor to implement the steps of the application recommendation method provided in the third aspect.
In an eighth aspect, an embodiment of the present application provides a computer device, including: a memory, a processor and a computer program stored on the memory, the processor implementing the steps of the application recommendation method provided in the third aspect when executing the program.
According to the application recommendation method, device, medium and equipment provided by the embodiment of the application recommendation method, device, medium and equipment, the unused application of the target user is used as the application personalized recommendation result for the target user according to the application similar to the application preferred by the target user and the application used by the similar user of the target user, and the application is recommended to the target user, wherein the probability that the application similar to the application preferred by the target user is higher, and the probability that the application to be used by the target user is the application used by the similar user of the target user is higher, so that the conversion rate of the application recommended to the target user can be improved to a certain extent. And the probability that the target application is preferred by the users similar to the first user group preferred by the target application is higher, and at the moment, the users who do not use the target application in all the similar users are taken as the target users, and the target application is recommended to the target users, so that the conversion rate of the target application can be improved to a certain extent.
Drawings
The above and other objects, features and advantages of exemplary embodiments of the present application will become readily apparent from the following detailed description read in conjunction with the accompanying drawings. Several embodiments of the present application are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which:
fig. 1 is a schematic view of an application scenario of an application recommendation method provided in an embodiment of the present application;
fig. 2 is a schematic flowchart of an application recommendation method according to an embodiment of the present application;
fig. 3 is a flowchart illustrating a method for determining similar users of a target user according to an embodiment of the present application;
fig. 4 is a flowchart illustrating a method for recommending an application to be recommended to a target user according to an embodiment of the present application;
FIG. 5 is a schematic diagram of an implementation process for implementing game recommendation according to an embodiment of the present application;
fig. 6 is a flowchart illustrating another application recommendation method according to an embodiment of the present application;
fig. 7 is a schematic structural diagram of an application recommendation device according to an embodiment of the present application;
fig. 8 is a schematic structural diagram of another application recommendation device according to an embodiment of the present application;
fig. 9 is a schematic hardware structure diagram of a computer device according to an embodiment of the present application.
Detailed Description
To make the objects, technical solutions and advantages of the present application more clear, embodiments of the present application will be described in further detail below with reference to the accompanying drawings.
Reference herein to "a plurality" means two or more. "and/or" describes the association relationship of the associated objects, meaning that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship.
In this document, it is to be understood that any number of elements in the figures are provided by way of illustration and not limitation, and any nomenclature is used for differentiation only and not in any limiting sense. For convenience of understanding, terms referred to in the embodiments of the present application are explained below.
Applications used by the user: the application logged in by the user in the preset time period and the registered application.
Retention rate on the next day: the ratio of the number of users who used an application on the current day to the number of users who used the application on the current day, among users who used the application on the current day, who also used the application on the next day of the current day.
Hot application: the method refers to the application mainly pushed by an application operator and the application with the user number exceeding a certain value.
Accuracy: the proportion of the user's preference application in the applications recommended to the user.
The recall ratio is as follows: the proportion of applications recommended to the user in the user's preferred applications.
Coverage degree: the applications recommended to the user account for the proportion of all applications.
Novelty: the percentage of popular applications among applications recommended to the user.
Preference degree: the system is used for reflecting the user's preference degree of the application and is in direct proportion to the user's preference degree of the application.
The inventor finds that, in the prior art, the characteristics of the user cannot be considered in the process of determining the application to be recommended, different applications to be recommended cannot be generated for different users, and application personalized recommendation results for different users cannot be generated, which may cause a problem of low conversion rate of recommended applications.
To this end, an application recommendation method provided in an embodiment of the present application references an application preferred by a target user and an application used by a user similar to the target user in an implementation process, so as to be able to generate an application-customized recommendation result for the target user, and the method may include: determining the applications with the preference degrees larger than a first threshold value in the applications used by the target user as the preferred applications of the target user; taking the application with the similarity larger than a second threshold value with the preference application as a first type of application to be recommended; determining the user with cosine similarity greater than a third threshold value to be a similar user of the target user; taking the application which is not used by the target user in the applications used by the similar users as a second type of application to be recommended; recommending the first type of application to be recommended and the second type of application to be recommended to a target user.
According to the application recommendation method provided by the embodiment of the application, the application personalized recommendation result for the target user is determined according to the application similar to the application preferred by the target user and the application not used by the target user in the applications used by the similar users of the target user, and the application personalized recommendation result is recommended to the target user, wherein the probability that the application similar to the application preferred by the target user is higher, and the probability that the application to be used by the target user is the application used by the similar users of the target user is higher, so that the conversion rate of the application recommended to the target user can be improved to a certain extent.
The application recommendation scheme provided in the embodiment of the present application is described below with reference to the application scenario provided in fig. 1.
As shown in fig. 1, includes a database server 101, a computing server 102, and a client 103. The database server 101 stores therein historical application data of each user for a preset time period. The calculation server 102 acquires historical application data of the user from the database server 101; determining applications used by each user according to historical application data of the user; determining the applications with the preference degrees larger than a first threshold value in the applications used by the target user as the preference applications of the target user; taking the application with the similarity larger than a second threshold value with the preference application as a first type of application to be recommended; determining the user with cosine similarity greater than a third threshold value to be a similar user of the target user; taking the application which is not used by the target user in the applications used by the similar users as a second type of application to be recommended; and sending the first type of application to be recommended and the second type of application to be recommended to the client 103 logged in by the target user. The target user can view the first type of application to be recommended and the second type of application to be recommended, which are recommended to the target user by the computing server 102, in the client 103.
In fig. 1, the database server 101 and the computing server 102 may communicate via a communication network such as a local area network, a wide area network, or a mobile internet, and the computing server 102 and the client 103 may communicate via a communication network such as a local area network, a wide area network, or a mobile internet. The database server 101, the server apparatus 102, and the client 103 may be portable devices (e.g., mobile phones, tablet computers, notebook computers, etc.) or Personal Computers (PCs).
As another application scenario, the database server and the computation server in fig. 1 may be the same computing device, that is, the database server may have the function of the computation server, and the computation server may have the function of the database server.
It should be noted that the above-mentioned application scenarios are merely illustrated for the convenience of understanding the spirit and principles of the present application, and the embodiments of the present application are not limited in this respect. Rather, the embodiments of the present application may be applied to any applicable scenario.
The following describes an application recommendation method provided in an embodiment of the present application with reference to fig. 2. It should be noted that the target user related in the embodiment of the present application is any user of the application to be recommended, and in practical application, the application recommendation method provided in the embodiment of the present application may be executed for each target user.
As shown in fig. 2, the application recommendation method provided in the embodiment of the present application may include the following steps:
step 201, determining the applications with the preference degrees larger than the first threshold value in the applications used by the target user as the preferred applications of the target user.
In specific implementation, historical application data of a target user in a preset time period can be acquired; extracting applications used by a target user from the acquired historical application data; and determining the preference degree of the target user for each used application, and taking the application with the preference degree larger than a first threshold value in the applications used by the user as the preferred application of the target user.
In specific implementation, the historical application data of the target user in the preset time period includes time for logging in the application, duration for logging in the application, and the number of times for logging in the application, and for each application used by the target user, the number of days for logging in the application, the duration for logging in the application, and the number of times for using the application by the target user in the preset time period are counted from the historical application data of the target user in the preset time period, where the duration for logging in the application is the total duration for logging in the application by the target user in the preset time period, and the number of times for using the application by the target user in the preset time period.
For each application used by a target user, determining the preference of the application according to at least two of the counted number of days for the target user to log in the application in a preset time period, the time length for logging in the application and the number of times for using the application, wherein the preference of the application is the preference of the target user to the application, so that the preference of the target user to each used application is obtained; and determining the applications with the preference degrees larger than the first threshold value in the applications used by the target user as the preferred applications of the target user. Optionally, the preference of the application is determined according to the number of days that the target user logs in the application within a preset time period, the duration of logging in the application, and the number of times the application is used. The application preference determined by combining the three factors is more accurate and reliable.
The preset time period is a time period before the current time, and the duration corresponding to the preset time period may be set according to an actual application scenario, which is not limited herein, for example, the duration corresponding to the preset time period is three months, two months, and the like. The size of the first threshold may be set according to actual requirements, and is not limited herein.
In particular, the preference of the application may be determined as follows:
calculating the weighted summation result of the number of days for the target user to log in the application, the time length for logging in the application and the number of times for using the application in a preset time period aiming at each application used by the target user; and taking the weighted summation result as the preference degree of the target user to the application. That is, the application preference is: and the weighted summation result of the number of days that the target user logs in the application in the preset time period, the time length for logging in the application and the number of times that the application is used.
In specific implementation, weights can be set in advance for the number of days for logging in the application, the duration for logging in the application, and the number of times the application is used. The corresponding weight sizes of the three can be set according to the number of days for logging in the application, the time length for logging in the application and the importance degree of the times for using the application, and the specific values of the weights of the three are not limited here. Alternatively, the factors for which the application preference is more important are weighted more heavily than the factors for which the user is not important to the application preference. In practical applications, the number of days of logging in the application is a factor that is important for measuring the preference of the user for the application, and therefore, in the embodiment of the present application, the weight of the number of days of logging in the application may be set to be greater than the weight of the duration of logging in the application and the number of times of using the application, for example, the weight of the number of days of logging in the application is set to 4, and the weights of the duration of logging in the application and the number of times of using the application are both set to 3.
Optionally, it may also be determined that the preference of the application is greater than the first threshold in the following manner:
for each application used by a target user, if the number of days for the target user to log in the application in a preset time period is larger than a number of days threshold, the time length for logging in the application is larger than a time length threshold, and the number of times for using the application is larger than a number of times threshold, determining that the preference degree of the application is larger than a first threshold; alternatively, the first and second electrodes may be,
for each application used by a target user, if the number of days for the target user to log in the application in a preset time period is larger than a threshold of the number of days, determining that the preference degree of the application is larger than a first threshold; or if the number of days that the target user logs in the application in the preset time period is equal to the number of days threshold, and the number of times that the target user logs in the application in the preset time period is greater than the number of times threshold, determining that the preference degree of the application is greater than the first threshold; or if the number of days that the target user logs in the application in the preset time period is equal to the number of days threshold, the number of times that the target user logs in the application in the preset time period is equal to the number of times threshold, and the duration that the target user logs in the application in the preset time period is greater than the duration threshold, determining that the preference degree of the application is greater than the first threshold.
The application related to the embodiment of the present application may be a game or office software application.
Step 202, the applications with the similarity greater than the second threshold value with the preference applications are used as the first type of applications to be recommended.
In specific implementation, the similarity between the application and the preferred application of the user can be determined for each application except the preferred application of the target user; and taking the application with the similarity larger than a second threshold value with the preference application of the target user as the first type of application to be recommended.
Wherein the similarity of two applications can be determined in the following way, wherein one of the two applications is called a first application and the other application is called a second application:
the first method is as follows: determining a user set which prefers a first application and a user set which prefers a second application in all users; determining the number of users in a user set which prefers the first application as the first user number; determining the number of users in the user set with preference to the second application as a second user number; determining the number of users in the intersection of the user set which prefers the first application and the user set which prefers the second application as a third user number; according to the first user number, the second user number and the third user number, determining cosine similarity of the first application and the second application as the similarity of the first application and the second application, wherein a specific cosine similarity calculation formula is as follows:
Figure BDA0001615627520000121
wherein, wabRepresenting cosine similarity between application a and application b, m (a) representing a set of users that prefer application a, m (b) representing a set of users that prefer application b, | m (a) | m (b) | representing a third number of users, | m (a) | representing a first number of users, | m (b) | representing a second number of users, a representing a first of the two applications, b representing a second of the two applications.
In general, in the process of recommending applications, the number of users preferring hot applications is relatively large, that is, the recommended weight of the hot applications is high
Figure BDA0001615627520000122
The value of (d) is increased to lower the recommendation priority of the hot application, which is advantageous for recommending the non-hot application to the user, thereby increasing the exposure of the non-hot application. In addition, cosine similarity between applications is used as the similarity of the two applications, and more long-tail applications can be mined.
The second method comprises the following steps: determining a user set which prefers a first application and a user set which prefers a second application in all users; determining the number of users in the intersection of the user set which prefers the first application and the user set which prefers the second application as a third user number; determining the number of users in the union of the user set with preference for the first application and the user set with preference for the second application as a fourth user number, and taking the ratio of the third user number to the fourth user number as the similarity of the first application and the second application, wherein a specific calculation formula is as follows:
Figure BDA0001615627520000123
wherein r isabRepresenting a similarity between application a and application b, m (a) representing a set of users that prefer application a, m (b) representing a set of users that prefer application b, | m (a) # m (b) | representing a third user number, | m (a) # m (b) | representing a fourth user number, a representing a first of the two applications, b representing a second of the two applications.
In general, in the process of recommending applications, the number of users preferring hot applications is relatively large, that is, the recommendation weight of hot applications is highabThe calculation formula can punish the recommendation weight of the hot application, and as long as the hot application exists in the two applications, the value of the denominator | M (a) U (m) (b) (i) is increased, so that the recommendation priority of the hot application is reduced, the non-hot application is favorably recommended to a user, and the exposure rate of the non-hot application is improved.
Step 203, determining the user whose cosine similarity with the target user is greater than the third threshold as the similar user of the target user.
In specific implementation, for each user except the target user, the cosine similarity between the user and the target user is determined, and the user with the cosine similarity larger than the third threshold value with the target user is taken as the similar user of the target user. The cosine similarity of the two users can be determined according to the application behavior data of the users, the user attributes and other information, or the cosine similarity of the two users can be determined in other manners, which is not limited herein. More specifically, the cosine similarity of the two users is determined according to historical application data of the two users.
And step 204, taking the application which is not used by the target user in the applications used by the similar users as a second type of application to be recommended.
In the specific implementation, the probability that two similar users have a common preference is high, and at this time, the application used by the user similar to the target user is a desired application of the target user or a used application is high, so in this step, the unused application of the target user is extracted from the applications used by the respective similar users of the target user as the second type of application to be recommended.
It should be noted that the execution sequence of steps 201 to 202 and steps 203 to 204 is not limited, and steps 203 to 204 may be executed first, and then steps 201 to 202 are executed, or steps 203 to 204 and steps 201 to 202 are executed simultaneously.
Step 205, recommending the first type of application to be recommended and the second type of application to be recommended to the target user.
In specific implementation, all the applications in the first type of application to be recommended and the second type of application to be recommended may be recommended to the target user, or a certain number of applications may be selected from a union of the first type of application to be recommended and the second type of application to be recommended and recommended to the target user, or step 205 may be implemented in other manners, which is not limited herein.
According to the application recommendation method provided by the embodiment of the application recommendation method, the unused application of the target user is used as the application personalized recommendation result for the target user and recommended to the target user according to the application similar to the application preferred by the target user and the application used by the similar user of the target user, wherein the probability that the application similar to the application preferred by the target user is also the application preferred by the target user is higher, and the probability that the application to be used by the target user is the application used by the similar user of the target user is higher, so that the conversion rate of the application recommended to the target user can be improved to a certain extent.
As a possible implementation manner, according to the content provided in fig. 3, the user whose cosine similarity with the target user is greater than the third threshold is determined as a similar user of the target user:
step 301, for each user other than the target user, determining the number of applications used by the user and the target user together.
Step 302, determining the cosine similarity between the user and the target user according to the number of applications used by the user and the target user together, the number of applications used by the user, and the number of applications used by the target user.
In specific implementation, according to historical application data of a user in a preset time period, determining a set of applications used by a target user in the preset time period and a set of applications used by each user except the target user in the preset time period; for each user except the target user, taking the number of applications in the intersection of the set of applications used by the user in a preset time period and the set of applications used by the target user in the preset time period as the number of applications used by the user and the target user together, taking the number of applications in the set of applications used by the target user in the preset time period as the number of applications used by the target user, and taking the number of applications in the set of applications used by the user in the preset time period as the number of applications used by the user.
The cosine similarity between any user other than the target user and the target user can be determined according to the following formula: for applications
Figure BDA0001615627520000151
Where u represents a target user, v represents any user other than the target user, | wuvL represents cosine similarity between any user other than the target user and the target user, | n (u) n (v) | represents the number of applications used by any user other than the target user and the target user, | n (u) | represents the number of applications used by the target user, | n (v) | represents the number of applications used by any user other than the target user, n (u) is a set of applications used by the target user, and n (v) is a set of applications used by any user other than the target user.
It should be noted that the execution order of step 301 and step 302 is not limited, step 302 may be executed first and then step 302 may be executed, or step 301 and step 302 may be executed simultaneously.
Step 303, determining users, among the users other than the target user, whose cosine similarity with the target user is greater than a third threshold as similar users of the target user.
As a possible implementation manner, according to the content provided in fig. 4, the first type of application to be recommended and the second type of application to be recommended are recommended to the target user:
step 401, performing deduplication processing on the first type of application to be recommended and the second type of application to be recommended respectively.
In specific implementation, when the preference application of the target user includes a plurality of preference applications, the application similar to the preference application is determined for each preference application, and the application similar to each preference application is used as the first type of application to be recommended, at this time, repeated applications do not occur in the first type of application to be recommended, so that the first type of application to be recommended is subjected to deduplication processing in this step, and two identical applications do not exist in the deduplicated first type of application to be recommended, wherein the application similar to the preference application is an application with a similarity greater than a second threshold value with the preference application. For example, the application similar to the preferred application a includes an application a and an application B, and the application similar to the preferred application B includes an application a and an application c, the first type of application to be recommended before deduplication is the application a, the application B, the application a, and the application c, and the first type of application to be recommended after deduplication is the application a, the application B, and the application c, that is, only one repeated application a is reserved in the first type of application to be recommended.
When a plurality of similar users (hereinafter referred to as similar users) of the target user are included, determining, for each similar user, an unused application of the target user in the applications used by the similar user, and taking the unused application of the target user in the applications used by each similar user as a second type of application to be recommended, at this time, repeated applications are not avoided in the second type of application to be recommended, so that the second type of application to be recommended is subjected to deduplication processing in this step, and two identical applications do not exist in the deduplicated second type of application to be recommended. For example, the applications used by the similar user a but not used by the target user include the application 1 and the application 2, and the applications used by the similar user B but not used by the target user include the application 1 and the application 3, then the second type of applications to be recommended before deduplication is the application 1, the application 2, the application 1, and the application 3, and the second type of applications to be recommended after deduplication is the application 1, the application 2, and the application 3, that is, only one duplicate application 1 is reserved in the second type of applications to be recommended.
Step 402, selecting a first number of applications to be recommended from the first type of applications to be recommended after the deduplication processing according to the sequence of the retention rate of the next day from high to low, and recommending the applications to the target user.
And step 403, selecting a second number of applications to be recommended from the second type of applications to be recommended after the deduplication processing according to the sequence of the retention rate of the next day from high to low, and recommending the second number of applications to be recommended to the target user.
In specific implementation, the next-day retention rate of each application in the first class of applications to be recommended after the duplication removal is calculated respectively, and a first number of applications to be recommended are selected from the first class of applications to be recommended after the duplication removal and recommended to the target user according to the sequence from high to low of the next-day retention rate. The first number may be set empirically, and is not limited herein, for example, 8, 10, etc.
Respectively calculating the next-day retention rate of each application in the second type of application to be recommended after the duplication removal, and selecting a second number of applications to be recommended from the second type of application to be recommended after the duplication removal to recommend the applications to the target user according to the sequence from high to low of the next-day retention rate. The second number may be set empirically, and is not limited herein, for example, 8, 9, etc. The first number and the second number may be the same or different.
According to the implementation mode, the same application can be avoided from appearing in the applications recommended to the target user, the applications with higher retention rate of the next day are recommended to the target user, and the quality of the applications recommended to the target user can be guaranteed.
The order of execution of steps 402 and 403 is not limited, and step 403 may be executed first and then step 402 may be executed, or step 402 and step 403 may be executed simultaneously.
In practical application, if a first number of applications to be recommended selected from the first class of applications to be recommended after the duplication removal and a second number of applications to be recommended selected from the second class of applications to be recommended after the duplication removal have repeated applications, selecting the applications to be recommended from the applications not selected currently in the first class of applications to be recommended after the duplication removal in the order from high retention rate to low retention rate of the next day to replace the repeated applications; or selecting applications to be recommended from the second type of applications to be recommended after the duplication removal according to the sequence of the retention rate of the next day from high to low, and replacing repeated applications with the applications not currently selected. For example, the applications to be recommended selected from the first class of applications to be recommended after the deduplication processing are application a and application 1, and the applications to be recommended selected from the second class of applications to be recommended after the deduplication processing are application a and application 2, where the application a is a repeated application, the application c may be selected from the first class of applications to be recommended after the deduplication processing, and the application a selected from the first class of applications to be recommended after the deduplication processing is replaced, at this time, the applications to be recommended selected from the first class of applications to be recommended after the deduplication processing are updated to be application c and application 1, and at this time, the applications recommended to the user are application c, application 1, application a, and application 2.
As a possible implementation manner, the application recommendation method provided in the embodiment of the present application may further include a manner of evaluating reliability of the first type of application to be recommended, that is: and evaluating the first type of applications to be recommended according to the determined evaluation indexes, wherein the evaluation indexes comprise at least one of accuracy, recall rate, coverage and novelty.
In specific implementation, the reliability of the determined first type of application to be recommended to the target user can be evaluated. If at least one evaluation index in each evaluation index is larger than the threshold corresponding to the corresponding index, determining that the first type of application to be recommended is reliable, that is, if at least one of the accuracy, the recall rate, the coverage and the novelty is larger than the respective corresponding threshold, determining that the first type of application to be recommended is reliable, for example: and if the accuracy is greater than the accuracy threshold, the recall rate is greater than the recall rate threshold, the coverage is greater than the coverage threshold or the novelty is greater than the novelty threshold, determining that the first type of application to be recommended is reliable. In practical applications, when the determined recommendation result is evaluated, the accuracy and the recall rate are two indexes with important reference significance, and therefore, optionally, the evaluation index at least includes two items of the accuracy and the recall rate.
Optionally, the evaluation of the first type of application to be recommended is performed in the following manner:
and if the accuracy exceeds an accuracy threshold, the recall rate exceeds a recall rate threshold, the coverage exceeds a coverage threshold and/or the novelty exceeds a novelty threshold, determining that the first type of application to be recommended is reliable, wherein the reliability of the estimated first type of application to be recommended can be more accurate by considering the evaluation modes of the four evaluation indexes.
Optionally, the first type of application to be recommended may also be evaluated in the following manner:
and calculating a weighted summation result of each evaluation index, and if the weighted summation result is greater than a result threshold value, determining that the first type of application to be recommended is reliable. For example, in the case that the evaluation index includes accuracy, recall rate, coverage and novelty at the same time, determining a weighted summation result of the accuracy, recall rate, coverage and novelty, and if the weighted summation result is greater than a result threshold, determining that the first type of application to be recommended is reliable. In this case, the weight of the index having a relatively large influence on the reliability of the first type of application to be recommended may be set relatively large.
In specific implementation, each evaluation index can be determined according to each parameter corresponding to each target user who recommends an application by using the application recommendation method provided by the embodiment of the application, wherein the first parameter corresponding to the target user is the number of the preference applications of the target user contained in the first type of applications to be recommended to the target user; the second parameter corresponding to the target user is the number of applications to be recommended contained in the first type of applications to be recommended to the target user; the third parameter corresponding to the target user is the number of the preference applications of the target user; the fourth parameter corresponding to the target user is the number of popular applications contained in the first type of applications to be recommended to the target user. The corresponding evaluation index may be determined based on the above parameters in the following manner:
determining the ratio of the sum of the first parameters corresponding to each target user to the sum of the second parameters corresponding to each target user as accuracy; determining the ratio of the sum of the first parameter corresponding to each target user to the sum of the third parameter corresponding to each target user as a recall rate; determining the ratio of the sum of the second parameters corresponding to each target user to the total number of applications in the database as the coverage; and determining the ratio of the sum of the fourth parameter corresponding to each target user to the sum of the second parameter corresponding to each target user as the novelty.
In specific implementation, the accuracy calculation formula is as follows:
Figure BDA0001615627520000191
u represents a target user, K represents the total number of the target users, r (u) represents a set of first-class applications to be recommended to the target user u, t (u) represents a set of preference applications of the target user u, | r (u) | represents a second parameter corresponding to the target user u, that is, the number of applications to be recommended included in the first-class applications to be recommended to the target user u, | r (u) # t (u) | represents a first parameter corresponding to the target user u, that is, the number of preference applications of the target user u included in the first-class applications to be recommended to the target user u.
In specific implementation, the calculation formula of the recall rate is as follows:
Figure BDA0001615627520000192
u represents a target user, K represents the total number of the target users, r (u) represents a set of first-class applications to be recommended to the target user u, t (u) represents a set of preference applications of the target user u, | t (u) | represents a third parameter corresponding to the target user u, that is, the number of the preference applications of the target user u, | r (u) # t (u) | represents a first parameter corresponding to the target user u, that is, the number of the preference applications of the target user u included in the first-class applications to be recommended to the target user u.
In specific implementation, the calculation formula of the coverage is as follows:
Figure BDA0001615627520000193
u represents a target user, K represents the total number of the target users, r (U) represents a set of first-class applications to be recommended to the target user U, | r (U) | represents a second parameter corresponding to the target user U, that is, the number of applications to be recommended included in the first-class applications to be recommended to the target user U, and U represents the total number of applications in the database. In a specific implementation, the database is used for storing all applications that the application operator may recommend for the user, for example, the applications in the database may be all applications in an application market or all applications operated by the application operator.
In specific implementation, the calculation formula of the novelty is as follows:
Figure BDA0001615627520000201
u represents a target user, K represents the total number of the target users, r (u) represents a set of first-class applications to be recommended to the target user u, | r (u) | represents a second parameter corresponding to the target user u, that is, the number of applications to be recommended included in the first-class applications to be recommended to the target user u, g (u) represents a set of popular applications, | r (u) | g (u) | represents a fourth parameter corresponding to the target user u, that is, the number of popular applications included in the first-class applications to be recommended to the target user.
The following describes a specific implementation process for implementing game recommendation by using the application recommendation method provided by the embodiment of the present application when the application related to the embodiment of the present application is a game type application.
As shown in fig. 5, a flowchart of an implementation process of the game recommendation method provided in the embodiment of the present invention includes:
step 501, for each game played by a target user, if the number of days for which the target user logs in the game in a preset time period is greater than a number of days threshold, the time length for logging in the game is greater than a time length threshold, and the number of times for which the target user plays the application is greater than a number of times threshold, it is determined that the preference degree of the target user for the game is greater than a first threshold.
It is emphasized that in the case where the application involved in the implementation of the present invention is a game, the application used by the user is the game that the user has played.
Step 502, determining the game played by the target user with the preference degree greater than the first threshold as the preferred game of the target user.
Step 503, the game with the similarity to the preferred game of the target user greater than the second threshold is taken as the first type of game to be recommended.
Step 504, for each user other than the target user, determining the number of games played by the user and the target user together.
Step 505, determining the cosine similarity between the user and the target user according to the number of games played by the user and the target user, the number of games played by the user and the number of games played by the target user.
Step 506, determining the user with the cosine similarity greater than the third threshold with the target user as the similar user of the target user.
Step 507, the games which are not played by the target user in the games played by the similar users of the target user are used as the second type of games to be recommended.
And step 508, performing duplicate removal processing on the first type of game to be recommended and the second type of game to be recommended respectively.
Step 509, according to the sequence from high to low of the retention rate of the next day, a first number of games to be recommended are selected from the first class of games to be recommended after the de-duplication processing and recommended to the target user, and according to the sequence from high to low of the retention rate of the next day, a second number of games to be recommended are selected from the second class of games to be recommended after the de-duplication processing and recommended to the target user.
Another application recommendation method provided in the embodiment of the present application is described below with reference to fig. 6, and as shown in fig. 6, the method includes:
step 601, determining a first user group with a preference degree applied to a target greater than a first threshold.
The method for determining the preference of the user for the target application refers to the method for determining the game preference provided in the above embodiment, which is not described herein again.
Step 602, determining similar users whose cosine similarity with each user in the first user group is greater than the third threshold, respectively.
In specific implementation, for each user in the first user group, a user whose cosine similarity with the user is greater than a third threshold is determined and is taken as a similar user of the user, so as to obtain a similarity user of each user in the first user group.
Step 603, determining a target user who does not use the target application among similar users whose cosine similarity with each user in the first user group is greater than a third threshold.
In specific implementation, the user who uses the target application is taken as the target user from the similarity users of the users in the first user group.
And step 604, recommending the target application to each determined target user.
In this embodiment, the probability that the target application is also preferred by users similar to the first user group preferred by the target application is high, and at this time, a user who does not use the target application among the similar users is taken as the target user, and the target application is recommended to the target user, so that the conversion rate of the target application can be improved to a certain extent.
An application recommendation device provided in the embodiment of the present application is described below with reference to fig. 7.
As shown in fig. 7, a schematic structural diagram of an application recommendation device provided in an embodiment of the present application includes:
a first determining module 701, configured to determine, as a preferred application of a target user, an application with a preference degree greater than a first threshold in applications used by the target user;
a second determining module 702, configured to use an application with similarity to a preferred application greater than a second threshold as a first type of application to be recommended;
a third determining module 703, configured to determine, as a similar user to the target user, a user whose cosine similarity with the target user is greater than a third threshold;
a fourth determining module 704, configured to use an application that is not used by the target user among applications used by similar users as a second type of application to be recommended;
the recommending module 705 is configured to recommend the first type of application to be recommended and the second type of application to be recommended to the target user.
As a possible implementation, the preference of the application is determined according to the number of days that the target user logs in the application within a preset time period, the duration of logging in the application, and the number of times the application is used.
As a possible implementation, the application preference is: and the weighted summation result of the number of days that the target user logs in the application in the preset time period, the time length for logging in the application and the number of times that the application is used.
As a possible implementation manner, the third determining module 703 specifically includes:
a first determining unit 7031, configured to determine, for each user other than the target user, the number of applications used by the user in common with the target user;
a second determining unit 7032, configured to determine a cosine similarity between the user and the target user according to the number of applications used by the user and the target user together, the number of applications used by the user, and the number of applications used by the target user;
third determining unit 7033 is configured to determine, as a similar user to the target user, a user whose cosine similarity with the target user is greater than a third threshold, among users other than the target user.
As a possible implementation manner, the recommending module 705 specifically includes:
a duplicate removal unit 7051, configured to perform duplicate removal processing on the first type of application to be recommended and the second type of application to be recommended respectively;
a first selecting unit 7052, configured to select, according to the order from high to low of the retention rate of the next day, a first number of applications to be recommended from the first class of applications to be recommended after the deduplication processing, and recommend the first number of applications to be recommended to the target user; and
a second selecting unit 7053, configured to select a second number of applications to be recommended from the second type of applications to be recommended after the deduplication processing according to a sequence from a high retention rate to a low retention rate of the next day, and recommend the second number of applications to be recommended to the target user.
As a possible implementation manner, the application recommendation apparatus provided in this application further includes:
the evaluation module 706 is configured to evaluate the first type of application to be recommended according to the determined evaluation index, where the evaluation index includes at least one of accuracy, recall rate, coverage, and novelty.
As a possible implementation, the evaluation module 706 is specifically configured to:
and if the accuracy exceeds an accuracy threshold, the recall exceeds a recall threshold, the coverage exceeds a coverage threshold and/or the novelty exceeds a novelty threshold, determining that the first type of application to be recommended is reliable.
As a possible implementation manner, the application recommendation apparatus provided in this application further includes:
an index determination module 707 configured to determine an evaluation index in the following manner:
determining the ratio of the sum of the first parameters corresponding to each target user to the sum of the second parameters corresponding to each target user as accuracy, wherein the first parameters corresponding to the target users are the number of preference applications of the target users contained in the first type of applications to be recommended to the target users, and the second parameters corresponding to the target users are the number of applications to be recommended contained in the first type of applications to be recommended to the target users; and
determining the ratio of the sum of the first parameters corresponding to each target user to the sum of the third parameters corresponding to each target user as a recall rate, wherein the third parameters corresponding to the target users are the number of preference applications of the target users; and
determining the ratio of the sum of the second parameters corresponding to each target user to the total number of applications in the database as the coverage; and
and determining the ratio of the sum of the fourth parameter corresponding to each target user to the sum of the second parameter corresponding to each target user as novelty, wherein the fourth parameter corresponding to the target user is the number of popular applications contained in the first type of applications to be recommended to the user.
Next, another application recommendation apparatus provided in the embodiment of the present application is described with reference to fig. 8.
As shown in fig. 8, a schematic structural diagram of another application recommendation apparatus is provided for the embodiment of the present application, including:
a user group determining module 801, configured to determine a first user group whose preference degree for the target application is greater than a first threshold;
a similar user determining module 802, configured to determine similar users whose cosine similarity to each user in the first user group is greater than a third threshold, respectively;
a target user determining module 803, configured to determine a target user who does not use the target application among the similar users;
and the recommending module 804 is used for recommending the target application to each determined target user.
Having described the application recommendation method and apparatus provided in the embodiments of the present application, a non-volatile computer storage medium provided in the embodiments of the present application is described below.
The embodiment of the application provides a non-volatile computer storage medium, wherein an executable program is stored in the computer storage medium, and the executable program is executed by a processor to realize the steps of any application recommendation method provided by the embodiment.
After introducing the application recommendation method, apparatus, and medium provided by the embodiment of the present application, a computer device provided by the embodiment of the present application is introduced below.
The embodiment of the present application further provides a computer device, which includes a memory, a processor, and a computer program stored in the memory, and when the processor executes the computer program, the processor implements the steps of any of the application recommendation methods in the above embodiments.
An embodiment of the present application further provides a computer device, configured to execute any application recommendation method in the foregoing embodiments, as shown in fig. 9, which is a schematic diagram of a hardware structure of the computer device in the implementation of the present application, where the computer device may specifically be a desktop computer, a portable computer, a smart phone, a tablet computer, and the like. Specifically, the computer device may include a memory 901, a processor 902 and a computer program stored on the memory, the processor implementing the steps of any of the application recommendation methods in the above embodiments when executing the program. Memory 901 may include, among other things, Read Only Memory (ROM) and Random Access Memory (RAM), and provides processor 902 with program instructions and data stored in memory 901.
Further, the computer device described in the embodiment of the present application may further include an input device 903, an output device 904, and the like. The input device 903 may include a keyboard, mouse, touch screen, etc.; the output device 904 may include a Display device such as a Liquid Crystal Display (LCD), a Cathode Ray Tube (CRT), a touch screen, or the like. The memory 901, the processor 902, the input device 903 and the output device 904 may be connected by a bus or other means, and fig. 9 illustrates the connection by a bus as an example.
The processor 902 calls the program instructions stored in the memory 901 and executes any of the application recommendation methods provided by the above embodiments according to the obtained program instructions.
By utilizing the application recommendation method, the application recommendation device, the application recommendation medium and the application recommendation equipment provided by the embodiment of the application, at least the following beneficial effects are achieved: and recommending the target user as an application personalized recommendation result for the target user according to the application similar to the application preferred by the target user and the application not used by the target user in the applications used by the similar users of the target user, wherein the probability that the application similar to the application preferred by the target user is also the application preferred by the target user is higher, and the probability that the application to be used by the target user is the application used by the similar users of the target user is higher, so that the conversion rate of the application recommended to the target user can be improved to a certain extent. And the probability that the target application is preferred by the users similar to the first user group preferred by the target application is higher, and at the moment, the users who do not use the target application in all the similar users are taken as the target users, and the target application is recommended to the target users, so that the conversion rate of the target application can be improved to a certain extent.
It should be noted that although several modules of the application recommendation device are mentioned in the above detailed description, such division is merely exemplary and not mandatory. Indeed, the features and functionality of two or more of the modules described above may be embodied in one module according to embodiments of the application. Conversely, the features and functions of one module described above may be further divided into embodiments by a plurality of modules.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While the preferred embodiments of the present application have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all alterations and modifications as fall within the scope of the application.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present application without departing from the spirit and scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include such modifications and variations as well.

Claims (15)

1. An application recommendation method, comprising:
determining applications with the preference degrees larger than a first threshold value in the applications used by a target user as preference applications of the target user; the preference degree is the preference degree of the target user to the application;
taking the application with the similarity larger than a second threshold value with the preference application as a first type of application to be recommended; wherein the similarity of the two applications is determined in the following manner: determining a set of users of all users who prefer a first application of the two applications and a set of users who prefer a second application of the two applications; determining the number of users in a user set which prefers the first application as a first user number, determining the number of users in a user set which prefers the second application as a second user number, and determining the number of users in an intersection of the user set which prefers the first application and the user set which prefers the second application as a third user number; determining cosine similarity of the first application and the second application according to the first user number, the second user number and the third user number, wherein the cosine similarity of the first application and the second application is in a direct proportion relation with the third user number and in an inverse proportion relation with the first user number and the second user number; and
determining the user with cosine similarity greater than a third threshold with the target user as a similar user of the target user; wherein the cosine similarity of a user to the target user is determined according to the number of applications used by the user and the target user together, the number of applications used by the user, and the number of applications used by the target user, and the cosine similarity of the user to the target user is in direct proportion to the number of applications used by the user and the target user together, and in inverse proportion to the number of applications used by the user and the number of applications used by the target user;
taking the application which is not used by the target user in the applications used by the similar users as a second type of application to be recommended;
and selecting at least one application to be recommended from the first type of application to be recommended and the second type of application to be recommended according to the sequence of the retention rate of the next day from high to low, and recommending the at least one application to be recommended to the target user.
2. The method of claim 1, wherein the preference of the application is determined according to the number of days the target user logs in the application within a preset time period, the duration of logging in the application, and the number of times the application is used.
3. The method of claim 2, wherein the application preference is: and the target user logs in the application for a preset time period, the time length of logging in the application and the times of using the application are weighted and summed.
4. The method according to claim 1, wherein determining the user whose cosine similarity with the target user is greater than a third threshold as a similar user of the target user specifically comprises:
for each user except the target user, determining the number of applications used by the user and the target user together;
determining cosine similarity between the user and the target user according to the number of applications used by the user and the target user together, the number of applications used by the user and the number of applications used by the target user;
and determining users with cosine similarity greater than a third threshold value with the target user from the users except the target user as similar users of the target user.
5. The method according to claim 1, wherein recommending the first type of application to be recommended and the second type of application to be recommended to the target user specifically includes:
respectively carrying out duplicate removal processing on the first type of application to be recommended and the second type of application to be recommended;
selecting a first number of applications to be recommended from the first class of applications to be recommended after the deduplication processing according to the sequence of the retention rate of the next day from high to low, and recommending the applications to be recommended to the target user; and
and selecting a second number of applications to be recommended from the second type of applications to be recommended after the deduplication processing according to the sequence of the retention rate of the next day from high to low, and recommending the second number of applications to be recommended to the target user.
6. The method of claim 1, further comprising:
and evaluating the first type of applications to be recommended according to the determined evaluation indexes, wherein the evaluation indexes comprise at least one of accuracy, recall rate, coverage and novelty.
7. The method according to claim 6, wherein the evaluating of the first type of application to be recommended specifically comprises:
determining that the first type of application to be recommended is reliable if the accuracy exceeds an accuracy threshold, the recall exceeds a recall threshold, the coverage exceeds a coverage threshold, and/or the novelty exceeds a novelty threshold.
8. The method according to claim 6 or 7, characterized in that the evaluation index is determined in the following way:
determining the ratio of the sum of the first parameter corresponding to each target user to the sum of the second parameter corresponding to each target user as the accuracy, wherein the first parameter corresponding to the target user is the number of preference applications of the target user contained in the first type of applications to be recommended to the target user, and the second parameter corresponding to the target user is the number of applications to be recommended contained in the first type of applications to be recommended to the target user; and
determining the ratio of the sum of the first parameter corresponding to each target user to the sum of the third parameter corresponding to each target user as the recall rate, wherein the third parameter corresponding to the target user is the number of preference applications of the target user; and
determining the ratio of the sum of the second parameters corresponding to each target user to the total number of applications in the database as the coverage; and
and determining the ratio of the sum of the fourth parameter corresponding to each target user to the sum of the second parameter corresponding to each target user as the novelty, wherein the fourth parameter corresponding to the target user is the number of popular applications contained in the first type of applications to be recommended to the user.
9. An application recommendation method, comprising:
determining a first user group with a preference degree of a target application larger than a first threshold value;
respectively determining similar users of which the cosine similarity with each user in the first user group is greater than a third threshold; wherein the cosine similarity of a first user and a second user is determined according to the number of applications used by the first user and the second user together, the number of applications used by the first user and the number of applications used by the second user, and the cosine similarity of the first user and the second user is in a direct proportion relation with the number of applications used by the first user and the second user together and in an inverse proportion relation with the number of applications used by the first user and the number of applications used by the second user, the first user and the second user being different users in the first user group;
determining a target user which does not use the target application in each similar user;
and recommending the target application to each determined target user.
10. An application recommendation device, comprising:
the first determining module is used for determining the applications with the preference degrees larger than a first threshold value in the applications used by the target user as the preferred applications of the target user;
the second determining module is used for taking the application with the similarity larger than a second threshold value with the preferred application as a first type of application to be recommended; wherein the similarity of the two applications is determined in the following manner: determining a set of users of all users who prefer a first application of the two applications and a set of users who prefer a second application of the two applications; determining the number of users in a user set which prefers the first application as a first user number, determining the number of users in a user set which prefers the second application as a second user number, and determining the number of users in an intersection of the user set which prefers the first application and the user set which prefers the second application as a third user number; determining cosine similarity of the first application and the second application according to the first user number, the second user number and the third user number, wherein the cosine similarity of the first application and the second application is in a direct proportion relation with the third user number and in an inverse proportion relation with the first user number and the second user number;
a third determining module, configured to determine, as a similar user to the target user, a user whose cosine similarity to the target user is greater than a third threshold; wherein the cosine similarity of a user to the target user is determined according to the number of applications used by the user and the target user together, the number of applications used by the user, and the number of applications used by the target user, and the cosine similarity of the user to the target user is in direct proportion to the number of applications used by the user and the target user together, and in inverse proportion to the number of applications used by the user and the number of applications used by the target user;
a fourth determining module, configured to use an application that is not used by the target user among the applications used by the similar users as a second type of application to be recommended;
and the recommending module is used for selecting at least one application to be recommended from the first type of application to be recommended and the second type of application to be recommended to recommend to the target user according to the sequence of the retention rate of the next day from high to low.
11. An application recommendation device, comprising:
the user group determining module is used for determining a first user group of which the preference degree of the target application is greater than a first threshold value;
a similar user determining module, configured to determine similar users whose cosine similarity to each user in the first user group is greater than a third threshold, respectively; wherein the cosine similarity of a first user and a second user is determined according to the number of applications used by the first user and the second user together, the number of applications used by the first user and the number of applications used by the second user, and the cosine similarity of the first user and the second user is in a direct proportion relation with the number of applications used by the first user and the second user together and in an inverse proportion relation with the number of applications used by the first user and the number of applications used by the second user, the first user and the second user being different users in the first user group;
the target user determining module is used for determining target users which do not use the target application in all similar users;
and the recommending module is used for recommending the target application to each determined target user.
12. A non-transitory computer storage medium storing an executable program for execution by a processor to perform the steps of the method of any one of claims 1 to 8.
13. A computer device comprising a memory, a processor and a computer program stored on the memory, the processor implementing the steps of the method of any one of claims 1 to 8 when executing the program.
14. A non-transitory computer storage medium storing an executable program for execution by a processor to perform the steps of the method of claim 9.
15. A computer device comprising a memory, a processor and a computer program stored on the memory, the processor implementing the steps of the method of claim 9 when executing the program.
CN201810284503.4A 2018-04-02 2018-04-02 Application recommendation method, device, medium and equipment Active CN108833458B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810284503.4A CN108833458B (en) 2018-04-02 2018-04-02 Application recommendation method, device, medium and equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810284503.4A CN108833458B (en) 2018-04-02 2018-04-02 Application recommendation method, device, medium and equipment

Publications (2)

Publication Number Publication Date
CN108833458A CN108833458A (en) 2018-11-16
CN108833458B true CN108833458B (en) 2021-08-06

Family

ID=64155304

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810284503.4A Active CN108833458B (en) 2018-04-02 2018-04-02 Application recommendation method, device, medium and equipment

Country Status (1)

Country Link
CN (1) CN108833458B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109614549B (en) * 2018-12-10 2019-11-12 北京字节跳动网络技术有限公司 Method and apparatus for pushed information
CN109636538A (en) * 2018-12-20 2019-04-16 成都知数科技有限公司 Bank product recommended method, device and server
CN110390605B (en) * 2019-07-25 2021-11-30 新奥(中国)燃气投资有限公司 Transformation scheme pushing method and device
CN110532473A (en) * 2019-08-30 2019-12-03 车智互联(北京)科技有限公司 A kind of content recommendation method and calculate equipment
CN114286999A (en) * 2019-11-05 2022-04-05 深圳市欢太科技有限公司 Push content processing method and device, electronic equipment and storage medium
CN111444438B (en) * 2020-03-24 2023-09-01 北京百度网讯科技有限公司 Method, device, equipment and storage medium for determining quasi-recall rate of recall strategy
CN113590925A (en) * 2020-04-30 2021-11-02 中国移动通信集团北京有限公司 User determination method, device, equipment and computer storage medium
CN112365290A (en) * 2020-11-26 2021-02-12 上海触乐信息科技有限公司 Method, device, storage medium and server for improving user retention rate of application
CN113434779B (en) * 2021-07-22 2023-01-03 咪咕数字传媒有限公司 Interactive reading method and device capable of intelligent recommendation, computing equipment and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104765751A (en) * 2014-01-07 2015-07-08 腾讯科技(深圳)有限公司 Application recommendation method and device
CN106997358A (en) * 2016-01-22 2017-08-01 中移(杭州)信息技术有限公司 Information recommendation method and device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102999588A (en) * 2012-11-15 2013-03-27 广州华多网络科技有限公司 Method and system for recommending multimedia applications
CN104504084B (en) * 2014-12-24 2018-07-31 小米科技有限责任公司 Determine the method and device of user's retention ratio
CN107122990A (en) * 2017-03-22 2017-09-01 广州优视网络科技有限公司 Using recommendation method, client, server and system
CN107239524A (en) * 2017-05-26 2017-10-10 四川九洲电器集团有限责任公司 A kind of object recommendation method and apparatus
CN107566358B (en) * 2017-08-25 2020-10-30 腾讯科技(深圳)有限公司 Risk early warning prompting method, device, medium and equipment
CN107562917B (en) * 2017-09-12 2021-04-06 广州酷狗计算机科技有限公司 User recommendation method and device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104765751A (en) * 2014-01-07 2015-07-08 腾讯科技(深圳)有限公司 Application recommendation method and device
CN106997358A (en) * 2016-01-22 2017-08-01 中移(杭州)信息技术有限公司 Information recommendation method and device

Also Published As

Publication number Publication date
CN108833458A (en) 2018-11-16

Similar Documents

Publication Publication Date Title
CN108833458B (en) Application recommendation method, device, medium and equipment
CN113610239B (en) Feature processing method and feature processing system for machine learning
CN110442712B (en) Risk determination method, risk determination device, server and text examination system
CN108322317B (en) Account identification association method and server
CN108021673A (en) A kind of user interest model generation method, position recommend method and computing device
CN110675017A (en) Performance evaluation method and device based on artificial intelligence
WO2019019649A1 (en) Method and apparatus for generating investment portfolio product, storage medium and computer device
CN104598539A (en) Internet event hot degree calculation method and terminal
CN111612581A (en) Method, device and equipment for recommending articles and storage medium
CN110580265B (en) ETL task processing method, device, equipment and storage medium
CN110633304B (en) Combined feature screening method, device, computer equipment and storage medium
CN112215473A (en) Distribution pressure data obtaining method and device and electronic equipment
CN113516065B (en) Data weight measuring and calculating method and device based on block chain, server and storage medium
US9122705B1 (en) Scoring hash functions
CN114925275A (en) Product recommendation method and device, computer equipment and storage medium
CN115185606A (en) Method, device, equipment and storage medium for obtaining service configuration parameters
CN111625720B (en) Method, device, equipment and medium for determining execution strategy of data decision item
CN113934894A (en) Data display method based on index tree and terminal equipment
CN111598390B (en) Method, device, equipment and readable storage medium for evaluating high availability of server
CN114021642A (en) Data processing method and device, electronic equipment and storage medium
CN113360218A (en) Service scheme selection method, device, equipment and storage medium
Charest et al. Using balanced iterative reducing and clustering hierarchies to compute approximate rank statistics on massive datasets
CN110009397A (en) A kind of method and device of precision marketing
CN114615092B (en) Network attack sequence generation method, device, equipment and storage medium
CN108229572A (en) A kind of parameter optimization method and computing device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant