User matching method and device, electronic equipment and readable storage medium
By matching user actions and activity levels, the problem of poor evaluation reliability caused by user clustering was solved, resulting in more stable A/B grouping and evaluation results.
Patent Information
- Application Number
- CN202010075813.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-01-22
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2040-01-22
AI Technical Summary
In existing technologies, clustering users into different clusters as the basis for A/B grouping leads to poor evaluation reliability.
Users are initially divided into candidate test and candidate control groups based on whether they interact with the target object. The user activity distribution curve is determined using an activity prediction model, and the test and control groups are matched with users based on their activity range.
This improves the controllability and reliability of A/B grouping, ensuring the stability of grouping results, especially when user characteristics are highly variable.
Smart Images

Figure CN111309994B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] Embodiments of the present application relate to the technical field of data processing, and in particular, to a user matching method and device, electronic equipment and readable storage medium. BACKGROUND
[0002] With the wide popularity of the Internet, various Internet products have emerged. At present, there are various types of Internet products, such as various social APPs, online shopping APPs, and online car-hailing APPs. Each Internet product can include sub-products of various service forms to help the Internet product win a larger user group and thus increase revenue. In practice, product evaluation is generally performed on newly launched sub-products to facilitate operation personnel to determine whether to continue to put the newly launched products online according to the evaluation results.
[0003] In related technologies, the effect of a newly launched product is evaluated through AB experiment, that is, users are divided into group A and group B, and the effect of the newly launched product in group A and group B is compared for evaluation. In this method, users are clustered into different clusters, and different clusters are used as the basis for AB grouping. However, for clustering, the number of clustering points greatly affects the AB grouping result. For example, the AB grouping result obtained by selecting clustering points such as user occupation and gender is greatly different from the AB grouping result obtained by selecting clustering points such as user age, height, and gender, thus making the evaluation less reliable. SUMMARY
[0004] Embodiments of the present application provide a user matching method and device, electronic equipment and readable storage medium to solve the problem of less reliable evaluation caused by clustering users into different clusters and using different clusters as the basis for AB grouping in related technologies.
[0005] A first aspect of embodiments of the present application provides a user matching method, which includes:
[0006] dividing each user into a candidate test class user and a candidate control class user according to whether an operation on a target object is detected;
[0007] determining the activity of each user in the candidate test class user to obtain a first activity distribution curve, and determining the activity of each user in the candidate control class user to obtain a second activity distribution curve;
[0008] comparing the first activity distribution curve and the second activity distribution curve to determine a test class user from the candidate test class user and a control class user from the candidate control class user, and the distribution range of the activity of the control class user is the same as the distribution range of the activity of the test class user.
[0009] determining a control class user matched with each test class user according to the activity of each of the test class user and the control class user.
[0010] Optionally, the determining the activity of each of the candidate test class users comprises:
[0011] inputting the behavior feature sequence of each of the candidate test class users into an activity prediction model to obtain the activity of each of the candidate test class users;
[0012] Optionally, the activity prediction model is obtained by training a long short-term memory model with the behavior feature sequence of each of a plurality of sample users as a training sample.
[0013] Optionally, the activity is an activity in a preset period; and the dividing the users into the candidate test class users and the candidate control class users according to whether an operation on a target object is detected comprises:
[0014] dividing the users into the candidate test class users and the candidate control class users according to whether an operation on a target object is detected in the preset period.
[0015] Optionally, after the determining the control class user matched with each test class user, the method further comprises:
[0016] counting the preset type of data generated by each test class user and the control class user corresponding to the test class user;
[0017] comparing the preset type of data of each test class user and the preset type of data of each control class user to obtain an increment corresponding to the target object.
[0018] Optionally, after the obtaining the increment corresponding to the target object, the method further comprises:
[0019] in a case where the increment corresponding to the target object is greater than a preset threshold, pushing recommendation information of the target object to user terminals of a plurality of other users.
[0020] An embodiment of the present application provides a user matching device, and the device comprises:
[0021] a user dividing module configured to divide the users into candidate test class users and candidate control class users according to whether an operation on a target object is detected;
[0022] The active degree distribution curve obtaining module is configured to determine the active degree of each user in the candidate test class users to obtain a first active degree distribution curve, and determine the active degree of each user in the candidate control class users to obtain a second active degree distribution curve.
[0023] The user determining module is configured to compare the first active degree distribution curve and the second active degree distribution curve, determine test class users from the candidate test class users, and determine control class users from the candidate control class users, wherein the distribution range of the active degree of the control class users is the same as the distribution range of the active degree of the test class users.
[0024] The user matching module is configured to determine a control class user matched with each test class user according to the active degree of each of the test class user and the control class user.
[0025] Optionally, the active degree distribution curve obtaining module comprises:
[0026] The active degree determining unit is configured to input the behavior feature sequence of each user in the candidate test class users into an active degree prediction model to obtain the active degree of each user in the candidate test class users.
[0027] The active degree prediction model is obtained by training a long short-term memory model with the behavior feature sequence of each sample user as a training sample.
[0028] Optionally, the active degree is an active degree in a preset period; and the user dividing module is specifically configured to divide each user into a candidate test class user and a candidate control class user according to whether an operation on a target object is detected in the preset period.
[0029] Optionally, the apparatus further comprises:
[0030] The statistical module is configured to statistically analyze the preset type of data generated by each test class user and the control class user corresponding to the test class user.
[0031] The increment determining module is configured to compare the preset type of data of each test class user and the preset type of data of each control class user to obtain an increment corresponding to the target object.
[0032] Optionally, the apparatus further comprises:
[0033] The recommendation information sending module is configured to push recommendation information of the target object to user terminals of a plurality of other users in a case where the increment corresponding to the target object is greater than a preset threshold.
[0034] The third aspect of the embodiments of the present application provides a computer readable storage medium, which stores a computer program, and the program is executed by a processor to implement the steps in the method according to the first aspect of the present application.
[0035] The fourth aspect of the embodiments of the present application provides an electronic device, which comprises a memory, a processor and a computer program stored in the memory and executable on the processor, and the processor implements the steps in the method according to the first aspect of the present application when executed.
[0036] By using the user matching method provided in the embodiments of the present application, the users can be divided into candidate test class users and candidate control class users according to whether the users operate the target object, and then the first activity distribution curve of the candidate test class users and the second activity distribution curve of the candidate control class users are obtained. Then, the test class users are determined from the candidate test class users and the control class users are determined from the candidate control class users by comparing the first activity distribution curve and the second activity distribution curve. Finally, the control class users matched with the activity of the test class users are determined, and the test class users suitable for the AB experiment and the control class users matched with the test class users are obtained.
[0037] According to the embodiments of the present application, the users are preliminarily clustered according to whether the target object is operated, and then the users after preliminary clustering are further screened according to the activity of each user to obtain the test class users and the control class users. Then, the control class users matched with the test class users are determined according to the activity of each test class user and control class user. On the one hand, the obtained candidate test class users and candidate control class users are closely related to the operation of the target object by the users, and the controllability of the evaluation is improved. On the other hand, since the result after preliminary clustering is finely screened according to the activity of each user, the user matching is realized according to the activity characteristics of the user itself, the result of AB grouping is more stable, and the reliability of the evaluation is improved. BRIEF DESCRIPTION OF DRAWINGS
[0038] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings needed in the description of the embodiments of the present application will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0039] Figure 1 is the overall flowchart of the user matching method according to an embodiment of the present application;
[0040] Figure 2 is the step flowchart of the user matching method according to an embodiment of the present application;
[0041] Figure 3 is a schematic diagram of an activity distribution curve proposed in an embodiment of the present application;
[0042] Figure 4 is a schematic diagram of an overall process of determining the activity of each user in the candidate test class users proposed in an embodiment of the present application;
[0043] Figure 5 is a schematic diagram of a user matching device proposed in an embodiment of the present application. DETAILED DESCRIPTION
[0044] The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are some but not all of the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative work fall within the scope of the present application.
[0045] The inventors of the present application propose the following inventive concept in order to solve the problem of poor reliability of evaluation caused by clustering users into different clusters and taking different clusters as the basis for AB grouping in the related art: taking the activity of a user as a distribution factor to group and match users, thereby performing an AB test, so as to solve the problem of large difference in grouping results and unreliable evaluation caused by setting different clustering points in the related art.
[0046] Referring to Figure 1 , an overall process schematic diagram of a user matching method proposed in an embodiment of the present application is shown, and the user matching method will be described in detail below in combination with Figure 1 .
[0047] Referring to Figure 2 , Figure 2 is a step flowchart of the user matching method proposed in an embodiment of the present application. As shown in Figure 2 , the method can specifically include the following steps:
[0048] Step S21: According to whether an operation on a target object is detected, each user is divided into a candidate test class user and a candidate control class user.
[0049] In the embodiment, the target object can be a specified application running on an application service program, and specifically, the target object can be understood as an application object that needs to be evaluated. For example, if a coupon snatching application running on a shopping APP needs to be evaluated, the coupon snatching application can be taken as the target object.
[0050] In practice, before categorizing users into candidate test users and candidate control users based on whether any action on the target object was detected, the target object can be pushed to each user. This allows for later evaluation of the target object's impact on each user. For example, if the target object is a coupon-grabbing app running on a shopping app, this coupon-grabbing app can be sent to each user in advance.
[0051] In this embodiment, the operation on the target object can refer to the opening operation of the target object by each user. In practice, the user can open the target object by clicking the "Open" control key, or the user can directly click the target object to open the target object.
[0052] In practice, for each user, detecting an operation on the target object means that the target object sent to that user was triggered by that user. In this case, that user can be identified as a candidate test user. Not detecting an operation on the target object means that the target object sent to that user was not triggered by that user or was directly closed by that user. In this case, that user can be identified as a candidate control user. This process can be repeated to classify users.
[0053] by Figure 1 For example, whether an operation on the target object is detected corresponds to... Figure 1 The "whether today's activity has been reached" metric means that if an action on the target object was detected, it is considered "reached today," and if no action on the target object was detected, it is considered "not reached today." Furthermore, among each user group, those who were reached today can be assigned to the experimental group as candidate experimental users, while those who were not reached today can be assigned to the candidate control group as candidate control users.
[0054] Step S22: Determine the activity level of each user in the candidate test class to obtain a first activity level distribution curve, and determine the activity level of each user in the candidate control class to obtain a second activity level distribution curve.
[0055] by Figure 1 To illustrate this step, after segmenting users based on whether they were reached today, we can determine the activity level of each user in the experimental group and the activity level of each user in the candidate control group. Consequently, we obtain the probability distribution of the experimental group (i.e., the first activity distribution curve) and the probability distribution of the control group (i.e., the second activity distribution curve).
[0056] In this embodiment, activity level can characterize the probability of a user triggering the target object. This activity level can be used to predict the probability that a user will trigger the target object after the current time. In practice, this activity level can be represented by a value between 0 and 1; the larger the value, the higher the activity level, and the higher the probability that the user will trigger the target object after the current time.
[0057] In practice, each user's activity level can be determined based on their historical activity level, which represents the actual probability that the user triggered an application object before the current time. This application object can refer to the target object or other application objects; this embodiment does not impose any restrictions on this.
[0058] After determining the activity level of each user in the candidate test group and the activity level of each user in the candidate control group, a first activity distribution curve for the candidate test group and a second activity distribution curve for the candidate control group are obtained. The first activity distribution curve reflects the distribution of activity levels among the candidate test group users, and similarly, the second activity distribution curve reflects the distribution of activity levels among the candidate control group users.
[0059] Reference Figure 3 The diagram shows a schematic representation of an activity distribution curve proposed in one embodiment of this application. Figure 3 In the graph, the X-axis represents activity level, and the Y-axis represents the number of users. The solid line represents the first activity level distribution curve, and the dashed line represents the second activity level distribution curve. Figure 3 The first activity distribution curve can clearly show the distribution of activity levels among candidate test users. Similarly, through... Figure 3 The second activity distribution curve shown can intuitively illustrate the distribution of activity among candidate control users.
[0060] Step S23: Compare the first activity distribution curve and the second activity distribution curve to determine test users from the candidate test users and control users from the candidate control users.
[0061] The activity distribution range of the control group users is the same as that of the test group users.
[0062] In this embodiment, the activity distribution range of candidate test users can be determined using the first activity distribution curve, and the activity distribution range of candidate control users can be determined using the second activity distribution curve. Furthermore, the activity distribution ranges of candidate test users and candidate control users can be compared to determine the overlapping activity distribution ranges. Then, based on these overlapping activity distribution ranges, test users can be determined from the candidate test users, and control users can be determined from the candidate control users, so that the activity distribution range of the control users is the same as that of the test users.
[0063] by Figure 1 To illustrate this step, after obtaining the probability distribution of the experimental group (i.e., the first activity distribution curve) and the probability distribution of the control group (i.e., the second activity distribution curve), the common support (determining the common probability distribution between the two probability distributions) can be calculated to obtain the test users and the control users. After calculating the common support, the test users and the control users have a common probability distribution, that is, they have the same activity distribution range.
[0064] For example, such as Figure 3 As shown, the first activity distribution curve has a minimum activity value of 0.2 and a maximum value of 0.95, thus determining the activity distribution range of candidate test users to be 0.2 to 0.95. The second activity distribution curve has a minimum activity value of 0.15 and a maximum value of 0.88, thus determining the activity distribution range of candidate control users to be 0.15 to 0.88. Therefore, the overlapping activity distribution range of the two is determined to be 0.2-0.88. Thus, users with an activity level of 0.2-0.88 can be selected from the candidate test users as experimental users, and users with an activity level of 0.2-0.88 can also be selected from the candidate control users as control users. The determined activity distribution range of the experimental users is the same as that of the control users.
[0065] Step S24: Based on the activity levels of the test users and the control users, determine the control users that match each test user.
[0066] In this embodiment, for each user in the test group, their activity level can be used as a benchmark. Users in the control group whose activity level differs from the test user's by less than a preset threshold are identified as control users matching the test user. Thus, for a control user matching a test user, the control user's activity level is either the same as or different from the test user's activity level, but the difference between the two is less than the preset threshold.
[0067] In practice, the number of control users matched with each test user can be one or more.
[0068] by Figure 1 To illustrate this step, after calculating the common support and obtaining the test users and control users, we can then use nearest neighbor matching to obtain the control user B (i.e., the control user) corresponding to an experimental user A (i.e., the experimental user). Nearest neighbor matching means that the difference between the activity level of experimental user A and the activity level of control user B is less than a preset threshold.
[0069] For example, such as Figure 3 As shown, taking a preset threshold of 0.04 as an example, for a test user with an activity level of 0.5, among the various control users, those with activity levels between 0.46 and 0.54 can be identified as control users matching the test user. If there is one control user meeting the above requirements, the number of control users matching the test user is 1; if there are two control users meeting the above requirements, the number of control users matching the test user is 2.
[0070] In this embodiment, users are initially clustered based on whether they interact with the target object. Then, candidate test users and candidate control users are selected based on each user's activity level to obtain test users and control users. Control users are then matched to each test user based on their activity level. This approach ensures a close association between the candidate test users and candidate control users and the target object. Since the target object is the application to be evaluated, the final evaluation of the test users and control users is more controllable, making the evaluation results more reliable. Furthermore, since the initial clustering results are refined based on each user's activity level, user matching is based on user behavior characteristics, optimizing the selection of cluster points. Compared to clustering based on user age, height, gender, etc., which results in significantly different groupings, this application can maintain the stability of grouping results even when users have different ages, genders, heights, etc., thereby improving the reliability of the evaluation.
[0071] Reference Figure 4 The diagram illustrates the overall process for determining the activity level of each user in the candidate test class according to an embodiment of this application, which may specifically include the following steps:
[0072] Step S221: Input the behavioral feature sequence of each user in the candidate test class into the activity prediction model to obtain the activity of each user in the candidate test class.
[0073] The activity prediction model is obtained by training a long short-term memory model using the behavioral feature sequences of multiple sample users as training samples.
[0074] In this embodiment, the behavioral feature sequence can be a feature sequence generated when the user operates the target object, or it can refer to a feature sequence generated when the user operates other application objects.
[0075] In one embodiment, each user's behavioral feature sequence can be a sequence of behavioral features of that user within a preset time period prior to the current time. This improves the accuracy of activity tracking because the obtained behavioral feature sequence is acquired within the preset time period. That is, it allows for accurate prediction of the probability that a user will trigger the target object after the current time.
[0076] For example, refer to Figure 4As shown, taking a preset time period of 30 days and a coupon-grabbing app as an example, the number of times a user grabs coupons each day, the corresponding large and small coupon amounts, and the number of times a user shares a coupon are used as behavioral feature sequences within those 30 days. This behavioral feature sequence can thus include the characteristics of users triggering coupon-grabbing apps within the last 30 days. For example, this behavioral feature sequence can be represented as {d1(1, 50, 3, 2), d2(3, 20, 1, 3), ...}, where d1(1, 50, 3, 2) represents the number of times a user grabs coupons, the large and small coupon amounts, and the number of times a user shares a coupon in a single day.
[0077] In this embodiment, the behavioral feature sequence of each user can be input into the activity prediction model to obtain the user's activity level. For example... Figure 4 As shown, the behavioral feature sequence of each user can be input into the input layer of the activity prediction model, and the user's activity level can be obtained through the output layer of the activity prediction model.
[0078] The activity prediction model can be a model obtained by pre-training a long short-term memory model. Figure 4 The diagram shows the structure of this activity prediction model. For example, ... Figure 4 As shown, the activity prediction model includes an input layer, a long short-term memory layer, an attention layer, a full collection layer, and an output layer.
[0079] Specifically, the process of training a long short-term memory model to obtain an activity prediction model can be as follows:
[0080] Obtain behavioral feature sequences for multiple sample users, such as the behavioral feature sequences described in the example above. These sample users can be different from the candidate test users and candidate control users mentioned above.
[0081] By using the behavioral feature sequences of multiple sample users as input, a long short-term memory model is trained to obtain an activity prediction model.
[0082] It should be noted that the process of determining the activity level of each user in the candidate control group can also refer to the process of step S221 above.
[0083] When this implementation method is adopted, the activity level of each user can be determined by the activity prediction model, thereby improving the efficiency of determining the activity level of each user and thus improving the overall efficiency of user matching.
[0084] In conjunction with the above embodiments, in one embodiment proposed in this application, the activity level of each user can be the activity level within a preset period, that is, the activity level of each user can be the user's activity level within the preset week. For example, it can be the user's activity level within one day, or the user's activity level within one week. In this way, the probability of a user triggering a target object within the preset period can be predicted based on the activity level within the preset period. For example, if the preset period is one day and the activity level is 0.58, then the probability of a user triggering a target object within one day is 58%.
[0085] Accordingly, when classifying users into candidate test users and candidate control users based on whether an operation on the target object is detected, the classification can be based on whether an operation on the target object is detected within the preset period.
[0086] In this embodiment, when the activity level is the activity level within a preset period, the process of classifying each user can also be as follows: if an operation of a user on the target object is detected within the preset period, the user is classified into the candidate test class user; if no operation of a user on the target object is detected within the preset period, the user is classified into the candidate control class user.
[0087] For example, with Figure 1 For example, whether an activity was reached today can be understood as using a one-day period as a preset cycle, and the corresponding activity level would be the activity level within that day. Specifically, it checks whether the user performed any actions on the target object within the 24 hours prior to the current time. If the user did perform any actions on the target object within the 24 hours prior to the current time, then that user can be assigned to the experimental group. Otherwise, the user is assigned to the candidate control group. Then, the activity level of a user in the 24 hours following the current time can be determined.
[0088] After obtaining each test group of users and the corresponding control group of users, the test group of users can be designated as group A, and the corresponding control group of users as group B, thus conducting an A / B test to evaluate the target group. Figure 1 As shown, after obtaining the experimental group user A and the control group user B, the experimental results of AB can be statistically analyzed.
[0089] Based on this, in one embodiment of this application, after determining the control group users that match each test group user, the target object can also be evaluated, which may specifically include the following steps:
[0090] Step S25: Perform statistics on the preset types of data generated by each test user and the corresponding control user.
[0091] In this embodiment, the preset type can be a revenue type. Thus, the preset type data for each user can refer to the revenue value brought by the orders placed by that user. In one application scenario, the orders placed by a user can refer to all the orders placed by that user on the platform running the target object. In this case, the preset type data can be the revenue value brought to the platform by all the orders placed by that user.
[0092] For example, if the target is a coupon app that runs on a food delivery platform, and the coupon can be used on the entire platform, then the revenue generated from all orders placed by the user on that platform can be statistically analyzed.
[0093] In another application scenario, the order placed by the user can be an order that is related to the target object.
[0094] For example, if the target is a coupon-grabbing app, and users can enjoy coupons when purchasing napkins, clothing, and shoes, then napkins, clothing, and shoes are identified as products associated with the coupon-grabbing app. Furthermore, the revenue generated from user orders for napkins, clothing, and shoes can be statistically analyzed.
[0095] Step S26: Compare the data of the preset types of each test user with the data of the preset types of each control user to obtain the increment corresponding to the target object.
[0096] In this embodiment, the value obtained by subtracting the preset type data of the control group user from the preset type data of each test group user can be used as the increment corresponding to the target object.
[0097] For example, if the preset data for the test users is 200 and the preset data for the control users is 150, then the increment for the target object is 50.
[0098] The increment corresponding to the target object reflects the difference in revenue between control and experimental users when the target object is deployed. A larger increment indicates that the experimental users are more significantly influenced by the target object and can generate greater revenue, so the target object can continue to be promoted. A smaller increment, or even a negative increment, indicates that the influence of the target object on the experimental users is not much different from that on the control users, and they cannot generate significant revenue, so the promotion of the experimental users can be stopped.
[0099] In one embodiment, the increments of data of a preset type generated by each test user and the corresponding control user can be determined. Then, based on these increments, an average increment can be determined and used as the increment corresponding to the target object. This smooths the increments, making the resulting increments more objective and thus improving the reliability of the evaluation.
[0100] Accordingly, in one application scenario, in order to automatically promote the target object among the user group when the incremental revenue is high, after obtaining the incremental revenue corresponding to the target object, the following steps may also be included:
[0101] Step S27: If the increment corresponding to the target object is greater than a preset threshold, push the recommendation information of the target object to the user terminals of multiple other users.
[0102] In this embodiment, "other users" can refer to users who are different from the candidate test users and candidate control users, or users who are different from the test users and control users. The user terminals of other users can be, but are not limited to, mobile phones, computers, tablets, set-top boxes, etc.
[0103] The preset threshold can be set by the operators based on actual conditions. Recommended information refers to information recommending the target object, which may include the target object's QR code, link, etc.
[0104] In practice, the ROI (Return On Investment) metric can also be obtained based on the increment. ROI refers to the value that should be returned through investment, and the impact on the target object can be evaluated through the ROI metric.
[0105] It should be noted that, for the sake of simplicity, the method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments of the present invention are not limited to the described order of actions, because according to the embodiments of the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions involved are not necessarily essential to the embodiments of the present invention.
[0106] Based on the same inventive concept, one embodiment of this application provides a user matching device. (Reference) Figure 5 , Figure 5 This is a schematic diagram of a user matching device provided in an embodiment of this application. Figure 5 As shown, the device may specifically include the following modules:
[0107] User segmentation module 51 is used to divide users into candidate test users and candidate control users based on whether an operation on the target object is detected.
[0108] The activity distribution curve acquisition module 52 is used to determine the activity level of each user in the candidate test class users to obtain a first activity distribution curve, and to determine the activity level of each user in the candidate control class users to obtain a second activity distribution curve.
[0109] User determination module 53 is used to compare the first activity distribution curve and the second activity distribution curve to determine test users from the candidate test users and to determine control users from the candidate control users, wherein the activity distribution range of the control users is the same as the activity distribution range of the test users.
[0110] User matching module 54 is used to determine the control users matched with each test user based on the activity levels of the test users and the control users.
[0111] Optionally, the activity distribution curve acquisition module may specifically include the following units:
[0112] An activity determination unit is used to input the behavioral feature sequence of each user in the candidate test class into the activity prediction model to obtain the activity of each user in the candidate test class.
[0113] The activity prediction model is obtained by training a long short-term memory model using the behavioral feature sequences of multiple sample users as training samples.
[0114] Optionally, the activity level is the activity level within a preset period; the user segmentation module can be specifically used to divide each user into candidate test users and candidate control users based on whether an operation on the target object is detected within the preset period.
[0115] Optionally, the device may further include the following modules:
[0116] The statistics module is used to perform statistical analysis on the preset types of data generated by each test user and the corresponding control user.
[0117] The increment determination module is used to compare the data of the preset type of each test user and the data of the preset type of each control user to obtain the increment corresponding to the target object.
[0118] Optionally, the device may further include the following modules:
[0119] The recommendation information sending module is used to push recommendation information of the target object to the user terminals of multiple other users when the increment corresponding to the target object is greater than a preset threshold.
[0120] Based on the same inventive concept, another embodiment of this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the method described in any of the above embodiments of this application.
[0121] Based on the same inventive concept, another embodiment of this application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the steps of the method described in any of the above embodiments of this application.
[0122] As the device embodiment is basically similar to the method embodiment, the description is relatively simple, and relevant parts can be found in the description of the method embodiment.
[0123] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.
[0124] Those skilled in the art will understand that embodiments of this application can be provided as methods, apparatus, or computer program products. Therefore, embodiments of this application can take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects. Furthermore, embodiments of this application can take the form of computer program products implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0125] This application describes embodiments with reference to flowchart illustrations and / or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0126] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0127] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal equipment, causing a series of operational steps to be performed on the computer or other programmable terminal equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable terminal equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0128] Although preferred embodiments of the present application have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of the embodiments of the present application.
[0129] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or terminal device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or terminal device. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or terminal device that includes said element.
[0130] The above provides a detailed description of a user matching method, apparatus, storage medium, and electronic device provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A user matching method, characterized in that, The method includes: Based on whether an operation on the target object was detected, users were divided into candidate test users and candidate control users. The activity level of each user in the candidate test group is determined to obtain a first activity level distribution curve, and the activity level of each user in the candidate control group is determined to obtain a second activity level distribution curve. By comparing the first activity distribution curve and the second activity distribution curve, test users are determined from the candidate test users, and control users are determined from the candidate control users. The activity distribution range of the control users is the same as that of the test users. Based on the activity levels of the test users and the control users, a control user is determined to match each test user.
2. The method according to claim 1, characterized in that, Determining the activity level of each user in the candidate test class includes: Input the behavioral feature sequence of each user in the candidate test class into the activity prediction model to obtain the activity level of each user in the candidate test class. The activity prediction model is obtained by training a long short-term memory model using the behavioral feature sequences of multiple sample users as training samples.
3. The method according to claim 1, characterized in that, After determining the control group users that match each test group user, the method further includes: Statistical analysis is performed on the preset types of data generated by each test user and the corresponding control user. The data of the preset type obtained from the statistics of each test user group is compared with the data of the preset type of each control user group to obtain the increment corresponding to the target object.
4. The method according to claim 3, characterized in that, After obtaining the increment corresponding to the target object, the method further includes: If the increment corresponding to the target object is greater than a preset threshold, the recommendation information of the target object is pushed to the user terminals of multiple other users.
5. A user matching device, characterized in that, The device includes: The user segmentation module is used to divide users into candidate test users and candidate control users based on whether an operation on the target object is detected. The activity distribution curve acquisition module is used to determine the activity level of each user in the candidate test class users to obtain a first activity distribution curve, and to determine the activity level of each user in the candidate control class users to obtain a second activity distribution curve. The user determination module is used to compare the first activity distribution curve and the second activity distribution curve to determine test users from the candidate test users and to determine control users from the candidate control users, wherein the activity distribution range of the control users is the same as the activity distribution range of the test users. The user matching module is used to determine the control users that match each test user based on the activity levels of the test users and the control users.
6. The apparatus according to claim 5, characterized in that, The activity distribution curve acquisition module includes: An activity determination unit is used to input the behavioral feature sequence of each user in the candidate test class into the activity prediction model to obtain the activity of each user in the candidate test class. The activity prediction model is obtained by training a long short-term memory model using the behavioral feature sequences of multiple sample users as training samples.
7. The apparatus according to claim 5, characterized in that, The device further includes: The statistics module is used to perform statistical analysis on the preset types of data generated by each test user and the corresponding control user. The increment determination module is used to compare the data of each test user with the preset type of data of each control user with the preset type of data obtained from statistics to obtain the increment corresponding to the target object.
8. The apparatus according to claim 7, characterized in that, The device further includes: The recommendation information sending module is used to push recommendation information of the target object to the user terminals of multiple other users when the increment corresponding to the target object is greater than a preset threshold.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the steps of the method as described in any one of claims 1-4.
10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes, it implements the steps of the method as described in any one of claims 1-4.
Citation Information
Patent Citations
User group matching method and user group matching device
CN103294809A
Coupon distribution method and device, electronic device, and readable storage medium
CN109389431A