Method and apparatus for detecting living body, electronic device, and storage medium
By acquiring historical behavioral data and push notifications from the application, and analyzing user operation information, the problem of data collection difficulties after users have not logged in for a long time has been solved, and efficient and accurate activity determination has been achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- BEIJING QIYI CENTURY SCI & TECH CO LTD
- Filing Date
- 2022-09-27
- Publication Date
- 2026-07-07
AI Technical Summary
In existing technologies, data cannot be collected after users have not logged into the application for a long time, making it impossible to accurately understand user activity. Furthermore, conducting surveys via SMS or telephone is inefficient and unsuitable for large-scale manufacturers.
By acquiring users' historical behavior data in the application, statistically analyzing the time intervals of behavior distribution, and delivering push messages, user operation information can be analyzed to determine activity levels.
It improves the efficiency and accuracy of data collection when users have not logged in for a long time, expands the scope of application, and enhances the ability to determine activity levels.
Smart Images

Figure CN115658448B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a method, apparatus, electronic device and storage medium for detecting liveness. Background Technology
[0002] With the development of technology, smartphones are now widely used, and users have varying interests and choices regarding the numerous apps on their phones. For manufacturers and companies in the internet industry, understanding user experience with apps is crucial, potentially influencing decisions regarding app development, improvement, and resource allocation. Therefore, acquiring user data on app usage is necessary to determine user activity levels within the app.
[0003] However, if a user has not logged into the app for an extended period of time, it is impossible to collect any user data. If we were to investigate the reasons for the user's inactivity one by one through SMS, phone calls, or other means, it would consume a lot of manpower and financial resources, be inefficient, and this research method is not suitable for large-scale manufacturers. Therefore, it is impossible to accurately determine the user's activity level in using the app. Summary of the Invention
[0004] In view of this, in order to solve the problem that if a user has not logged into the APP for a long period of time, it is impossible to collect any user data. If the reason for the user's failure to log in is investigated one by one through SMS, telephone or other means, it will consume a lot of manpower and financial resources and be inefficient. Moreover, this survey method is not suitable for large-scale manufacturers. Therefore, it is impossible to accurately know the user's activity level in using the APP. In this embodiment of the invention, an activity detection method, device, electronic device and storage medium are provided.
[0005] In a first aspect, embodiments of the present invention provide a method for detecting liveness, the method comprising:
[0006] Retrieve historical behavior data of an object in the application;
[0007] The historical behavior data is statistically analyzed, and the time intervals corresponding to the behavior distribution are determined as the delivery time of the push message.
[0008] The push message is delivered to the application during the specified delivery time, so that the object can perform an operation based on the push message displayed by the application;
[0009] Based on the operation information, the activity level of the object on the application is determined, whereby the operation information is generated by the object's operation on the push message.
[0010] In an optional implementation, the step of delivering the push message to the application during the delivery time, so that the object performs an operation based on the push message displayed by the application, includes:
[0011] A first quantity of the delivery time is determined, and the first quantity is compared with a preset target quantity, wherein the target quantity is the number of push messages delivered within a first preset time period;
[0012] The delivery time is processed based on the comparison results to obtain the target delivery time. The processing includes one of the following: adding, filtering, or keeping it unchanged.
[0013] The push message is delivered to the application within the target delivery time so that the object can perform an action based on the push message displayed by the application.
[0014] In an optional implementation, processing the delivery time based on the comparison result to obtain the target delivery time includes:
[0015] If the comparison result shows that the first quantity is equal to the preset target quantity, the delivery time is determined to remain unchanged;
[0016] The aforementioned delivery time is determined as the target delivery time.
[0017] In an optional implementation, processing the delivery time based on the comparison result to obtain the target delivery time includes:
[0018] If the comparison result shows that the first quantity is greater than the preset target quantity, the delivery time of the first quantity is sorted.
[0019] The delivery times are filtered based on the sorting results to obtain the target number of delivery times;
[0020] The time for delivering the target quantity is defined as the target delivery time.
[0021] In an optional implementation, processing the delivery time based on the comparison result to obtain the target delivery time includes:
[0022] If the comparison result shows that the first quantity is less than the preset target quantity, the object information of the object is obtained;
[0023] For each piece of target object information in the pre-stored set of target object information, determine the similarity between the target object information and the object information;
[0024] If the similarity is greater than or equal to a preset similarity threshold, the target object's historical behavior data on the application corresponding to the target object information is obtained.
[0025] Determine the corresponding set of time intervals based on the target's historical behavior data;
[0026] Determine the second number of time intervals in the set of time intervals;
[0027] The first quantity and the second quantity are summed to obtain the total quantity;
[0028] Compare the total quantity with the target quantity;
[0029] If the total quantity is determined to be equal to the target quantity, the delivery time is increased according to the time interval set to obtain the increased delivery time.
[0030] The increased delivery time is determined as the target delivery time.
[0031] In an optional implementation, the method further includes:
[0032] If the total number is less than the target number, then the step of obtaining the object information of the object is executed;
[0033] If the total quantity is greater than the target quantity, then the step of sorting the delivery time of the first quantity is executed.
[0034] In an optional implementation, determining the activity level of the object on the application based on operation information includes:
[0035] The historical behavior data of the object and the operation information are input into a pre-trained activity prediction model to obtain the activity prediction value output by the activity prediction model. The operation information includes at least one operation record of the object on the push message during the delivery period.
[0036] The activity prediction value is determined to be the activity level of the object on the application.
[0037] In an optional implementation, determining the activity level of the object on the application based on operation information includes:
[0038] If the operation information indicates that the object has performed an operation within a preset delivery period, the number of times the object has performed an operation on the push message within the delivery period is determined based on the operation information.
[0039] Determine the number of times the push message will be delivered within the delivery period;
[0040] The activity level of the object on the application is determined based on the number of operations and the number of deployments.
[0041] In an optional implementation, the activity prediction model is obtained in the following manner:
[0042] Acquire training history behavior data of multiple training target objects on the application;
[0043] Based on the training history behavior data, determine the message delivery time for the push message;
[0044] The push message is delivered to the application during the specified message delivery time.
[0045] Obtain a set of target operation information for multiple training target objects within a second preset time period. The set of target operation information includes: multiple second target objects performing operations based on push messages displayed by the application within the second preset time period to obtain at least one target operation information.
[0046] For each target operation information in the target operation information set, the target activity level of the training target object on the application is determined based on the target operation information.
[0047] The preset initial model is trained based on the training history behavior data, the target operation set in the target operation information set, and the target activity level to obtain an activity prediction model.
[0048] Secondly, embodiments of the present invention provide a liveness detection device, the device comprising:
[0049] The data acquisition module is used to acquire historical behavior data of objects in the application.
[0050] The time determination module is used to statistically analyze the time interval of the behavior distribution corresponding to the historical behavior data, and determine the time interval of the behavior distribution as the delivery time of the push message;
[0051] The message delivery module is used to deliver the push message to the application within the delivery time, so that the object can perform an operation based on the push message displayed by the application;
[0052] An activity determination module is used to determine the activity level of the object on the application based on operation information, wherein the operation information is generated by the object performing an operation on the push message.
[0053] Thirdly, embodiments of the present invention provide an electronic device, including: a processor and a memory, wherein the processor is configured to execute a liveness detection program stored in the memory to implement the liveness detection method described in any one of the first aspects.
[0054] Fourthly, embodiments of the present invention provide a storage medium storing one or more programs, which can be executed by one or more processors to implement the liveness detection method described in any one aspect.
[0055] The technical solution provided by this invention involves acquiring historical behavior data of an object on an application; statistically analyzing the time intervals of behavior distribution corresponding to the historical behavior data, and determining these time intervals as the delivery time for push notifications; delivering push notifications to the application during the delivery time, enabling the object to perform actions based on the push notifications displayed by the application; and determining the object's activity level on the application based on the action information. Therefore, even if an object has not logged into the application for a long time, historical behavior data left by the object on the application can still be collected; by analyzing the historical behavior data and delivering push notifications during the delivery time, the efficiency and accuracy of push notifications can be improved compared to conducting surveys of objects one by one via SMS or telephone in existing technologies, and the scope of application is wider; determining activity level based on the object's action information can improve the accuracy of activity level determination. Attached Figure Description
[0056] Figure 1 A flowchart illustrating an embodiment of a liveness detection method provided by this invention;
[0057] Figure 2 A flowchart illustrating another embodiment of the liveness detection method provided by this invention;
[0058] Figure 3 A flowchart illustrating an embodiment of a method for determining target delivery time provided by this invention;
[0059] Figure 4 A flowchart illustrating an embodiment of another method for determining target delivery time provided by this invention;
[0060] Figure 5 A flowchart illustrating another embodiment of the target delivery time determination method provided by this invention;
[0061] Figure 6 A flowchart illustrating an embodiment of an activity prediction model determination method provided by the present invention;
[0062] Figure 7 A block diagram illustrating an embodiment of a liveness detection device provided by this invention;
[0063] Figure 8 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation
[0064] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0065] The detection method provided by the present invention will be further explained and described below with reference to the accompanying drawings and specific embodiments. The embodiments do not constitute a limitation on the embodiments of the present invention.
[0066] See Figure 1 This is a flowchart illustrating an embodiment of a liveness detection method provided by this invention. Figure 1 As shown, the process may include the following steps:
[0067] Step 101: Obtain the object's historical behavior data on the application.
[0068] The aforementioned object can be a user of the application. The aforementioned application refers to a computer program that can interact with the object and provide services to it. It can be a single executable file or a single program installed on an electronic device, such as an application document or video viewing software. The aforementioned electronic device can be a smartphone, tablet computer, etc., and this embodiment of the invention does not limit this.
[0069] The aforementioned historical behavior data refers to data generated by the object during its use of the application, including but not limited to: the frequency and time of the object's login to the application, and the object's usage records on the application (such as consumption records).
[0070] In one embodiment, after an electronic device outputs a visual interface containing an application icon, if a user wants to log in to the application, the object can trigger an operation on the current visual interface. Upon detecting the object's trigger operation, an application login interface is output, allowing the object to log in based on this interface. Thus, the user's historical behavior data on the application can be obtained for logging into the application.
[0071] The aforementioned triggering operation can be a click operation (including single-click or double-click operation) on a specified icon in the visual interface, and this embodiment of the invention does not impose any restrictions on this.
[0072] It should be noted that the embodiments of the present invention do not limit the category, quantity, or time period of historical behavior data. Through the above processing method, historical behavior data left by an object on the application can still be collected even if the object has not logged into the application for a long period of time.
[0073] Step 102: Calculate the time interval of behavior distribution corresponding to historical behavior data, and determine the time interval of behavior distribution as the delivery time of push message.
[0074] The aforementioned push message is used to send any survey message to an application or an object to obtain the object's feedback on the pushed survey message. This push message can be a web page link, a pop-up message, etc., and there are no restrictions on its type.
[0075] As described in step 101, the aforementioned historical behavior data is data generated by the object during its use of the application, and each historical behavior data corresponds to a time interval in which it was generated. Since the object may log into the application at different time intervals within a given time period (e.g., a day), the object's historical behavior data is distributed across different time intervals within that time period. Furthermore, statistical analysis can be performed based on the time intervals corresponding to the historical behavior data to obtain the time intervals in which the object used the application (hereinafter referred to as the behavior distribution time interval). That is, it can be determined that the user used the application within the aforementioned time interval. Therefore, the aforementioned behavior distribution time interval can be determined as the preset push message delivery time.
[0076] As an optional implementation, historical behavior data corresponds to specific time periods. The specific implementation of the aforementioned statistical analysis of the behavior distribution time intervals corresponding to historical behavior data can include: obtaining the statistical behavior distribution time intervals by statistically analyzing the behavior time corresponding to each piece of historical behavior data. These behavior distribution time intervals can be single time intervals or a collection of multiple time intervals; this embodiment of the invention does not limit the number of behavior distribution time intervals.
[0077] For example, suppose the historical behavior data of an object on the application during the period of March 11th is shown in Table 1 below:
[0078] Table 1
[0079] Historical behavioral data Behavioral Time Login application A 8:00 Watch video 8:01—9:09 Browsing shopping interface 9:10—10:00 Consumption 9:20 Login application A 18:00 Watch video 18:00—20:00
[0080] As shown in Table 1, the consumer's purchase at 9:20 occurred while browsing the shopping interface. Based on Table 1, we can see the corresponding time periods for the historical behavior data of the consumer during the period of March 11th. Therefore, according to the above description, the time periods corresponding to each historical behavior data point of the consumer are calculated, resulting in time intervals of [8:00, 10:00] and [18:00, 20:00]. The statistically distributed time intervals for the behavior are: {[8:00, 10:00], [18:00, 20:00]}.
[0081] As an alternative implementation, a time interval statistical model can be pre-trained. The specific implementation of the aforementioned historical behavioral data corresponding to the behavioral distribution time intervals can include: inputting the historical behavioral data into the pre-trained time interval statistical model to obtain the behavioral distribution time intervals output by the model. Through this process, the behavioral distribution time intervals for each object can be quickly calculated when dealing with a large number of people.
[0082] Optionally, the above time interval statistical model can be obtained by: determining a preset number (e.g., 20) of historical behavior data of training objects within a preset time period on the application, statistically analyzing the behavior distribution time intervals corresponding to the historical behavior data, and training the preset initial model based on the historical behavior data and the corresponding behavior distribution time intervals to obtain the time interval statistical model.
[0083] It should be noted that the aforementioned preset quantity (e.g., 10, 20, etc.), preset time period (e.g., one day, one week, etc.), and initial model can be set by the designer or the object, and the embodiments of the present invention do not impose any restrictions on this.
[0084] For example, assuming that the historical behavior data of an object and the corresponding behavior time are as shown in Table 1 above, then, according to the above description, inputting the historical behavior data into the pre-trained time interval statistical model, the behavior distribution time interval output by the time interval statistical model can be obtained as: {[8:00, 10:00], [18:00, 20:00]}.
[0085] In this embodiment of the invention, the above-mentioned behavior distribution time interval is the time when the user uses the application. Therefore, the above-mentioned behavior distribution time interval can be determined as the time for push message delivery, that is, push messages can be delivered within the above-mentioned behavior distribution time interval.
[0086] This approach allows for the prediction of when push notifications will be delivered to an application even if the user has not logged in for an extended period, thus increasing the success rate of surveys aimed at determining the user's activity level in the application.
[0087] Step 103: Deliver push messages to the application during the delivery period so that the object can perform actions based on the push messages displayed by the application.
[0088] Step 104: Determine the activity level of the object on the application based on the operation information, which is generated by the object's operation on the push message.
[0089] The following provides a unified description of steps 103 and 104:
[0090] In one embodiment, the aforementioned operation information is information generated by the object during the operation of push messages displayed by the application. It may be a record of the user's operation on the push messages, and this embodiment of the present invention does not limit it.
[0091] In this embodiment of the invention, after a preset push message is delivered to an application or object within the delivery time, the user can trigger an operation on the push message to leave operation information. Thus, the object's operation information in response to the push data can be obtained.
[0092] Furthermore, the operation information is essentially a record of the object's actions on push messages. Therefore, when there are multiple push messages, the frequency of the object's actions on the push messages can be determined based on the operation information. Then, based on the number of push messages and the aforementioned frequency, the object's activity level in the application can be determined. This process can improve the accuracy of activity level assessment.
[0093] This concludes the process. Figure 1 The process described is as follows.
[0094] pass Figure 1 As shown in the process, in the technical solution of this invention, historical behavior data of an object on the application is obtained, the corresponding time interval of behavior distribution is statistically analyzed, and the time interval of behavior distribution is determined as the delivery time of push messages; push messages are delivered to the application during the delivery time so that the object can perform operations based on the push messages displayed by the application; and the activity level of the object on the application is determined based on the operation information. Therefore, even if an object has not logged into the application for a long time, historical behavior data left by the object on the application can still be collected; by analyzing the historical behavior data and delivering push messages during the delivery time, compared with the prior art of conducting surveys on objects one by one via SMS or telephone, the efficiency and accuracy of push notifications can be improved, and the scope of application is wider; determining the activity level based on the object's operation information can improve the accuracy of activity level determination.
[0095] See Figure 2 This is a flowchart illustrating another embodiment of the liveness detection method provided by this invention. Figure 2 The process shown above Figure 1 Based on the illustrated process, describe in detail how to determine the activity level of an object in the application. For example... Figure 2 As shown, the process may include the following steps:
[0096] Step 201: Obtain historical behavior data of the object on the application.
[0097] Step 202: Calculate the time interval of behavior distribution corresponding to historical behavior data, and determine the time interval of behavior distribution as the delivery time of push message.
[0098] For a description of steps 201 and 202, please refer to the above. Figure 1 The detailed descriptions of steps 101 and 102 are not repeated here.
[0099] Step 203: Determine the first quantity for the delivery time, and compare the first quantity with the preset target quantity, which is the number of messages pushed within the first preset time period.
[0100] Step 204: Process the delivery time according to the comparison results to obtain the target delivery time. The processing includes one of the following: adding, filtering, or keeping it unchanged.
[0101] Step 205: Deliver push messages to the application during the target delivery time so that the object can perform actions based on the push messages displayed by the application.
[0102] The following provides a unified description of steps 203 to 205:
[0103] The first quantity mentioned above refers to the number of time intervals included in the delivery time of the push message. For example, assuming that the behavior distribution time interval exemplified in Table 1 of step 102 above is the delivery time, then the first quantity is the number of time intervals in the behavior distribution time interval, which is 2.
[0104] In this embodiment of the invention, the number of push data to be delivered (hereinafter referred to as the target number) can be predetermined. In practice, since there may be cases where the object does not log in to the application within the predicted time interval, or cases where the object logs in to the application in other time intervals, the first number of delivery times may be greater than or less than the target number, which may result in too much or too little push data being delivered.
[0105] The target delivery time can be determined by comparing the initial quantity with the target quantity and then adjusting the delivery time based on the comparison result. This adjustment can include one of the following: increasing, filtering, or keeping it unchanged.
[0106] In one embodiment, the specific implementation of processing the delivery time based on the comparison results to obtain the target delivery time can be found in [reference needed]. Figure 3 This is a flowchart illustrating an embodiment of a method for determining target delivery time provided by an embodiment of the present invention. Figure 3 As shown, the process may include the following steps:
[0107] Step 301: If the comparison result shows that the first quantity is equal to the preset target quantity, determine that the delivery time remains unchanged.
[0108] Step 302: Determine the delivery time as the target delivery time.
[0109] In this embodiment of the invention, if the comparison result is that the first quantity is equal to the target quantity, that is, the number of objects in the time interval of the application's behavior distribution is equal to the target quantity of push messages, the delivery time can be determined as the target delivery time.
[0110] For example, suppose the time interval for the campaign is {[8:00, 10:00], [18:00, 20:00]}, and the target quantity is 2. Then, according to the above description, the first quantity for each campaign time is determined to be 2. Comparing the first quantity with the target quantity, we can determine that the first quantity equals the target quantity. Therefore, the target campaign time is determined to be: {[8:00, 10:00], [18:00, 20:00]}.
[0111] In another embodiment, the specific implementation of processing the delivery time based on the comparison results to obtain the target delivery time can be found in [reference needed]. Figure 4 This is a flowchart illustrating another embodiment of the target delivery time determination method provided by this invention. Figure 4 As shown, the process may include the following steps:
[0112] Step 401: If the comparison result shows that the first quantity is greater than the preset target quantity, sort the delivery time of the first quantity.
[0113] Step 402: Filter the delivery time according to the sorting results to obtain the delivery time for the target number of times.
[0114] Step 403: Determine the time for the target quantity to be delivered as the target delivery time.
[0115] The following provides a unified description of steps 401 to 403:
[0116] As can be seen from the above description, in this embodiment of the invention, the first number of delivery times is compared with the preset target number. If the comparison result is that the first number is greater than the target number, that is, the number of objects in the application's behavior distribution time interval (i.e., delivery time) is greater than the target number of push messages, then there may be insufficient push data. The delivery times can be filtered to select the target number of delivery times.
[0117] In one embodiment, the delivery time corresponding to the historical behavior data of the object can be scored based on the historical behavior data of the object during the delivery time, and the delivery time can be sorted according to the score to select the delivery time of the target number.
[0118] The sorting can be either sorting the delivery time in descending order based on the rating or sorting it in ascending order based on the rating; this embodiment of the invention does not impose any limitation on this. Accordingly, when sorting the delivery time in descending order, the delivery time for the target quantity ranked first can be selected; when sorting the delivery time in ascending order, the delivery time for the target quantity ranked last can be selected.
[0119] For example, assuming the target quantity is 1, and the delivery time is as shown in Table 1 in step 102 above, which is {[8:00, 10:00], [18:00, 20:00]}, and assuming that the score of delivery time [8:00, 10:00] is 80 and the score of delivery time [18:00, 20:00] is 40, then delivery time [8:00, 10:00] can be determined as the target delivery time.
[0120] Optionally, scores can be assigned based on the activity level during the campaign period according to historical behavioral data.
[0121] For example, assuming the campaign times are as shown in Table 1 of step 102 above, namely {[8:00, 10:00], [18:00, 20:00]}, then, as shown in Table 1, the two campaign times are scored based on the activity level of historical behavioral data within the campaign times [8:00, 10:00] and [18:00, 20:00].
[0122] Optionally, scoring can be based on the number of times the message is displayed within a certain period.
[0123] Optionally, the delivery time can be scored based on the ratio of the delivery time to a preset time interval. It should be noted that the above is merely an exemplary description of scoring the delivery time to filter delivery times. In practice, other methods can also be used, and this embodiment of the invention does not limit this.
[0124] This process allows for the selection of the most likely delivery time to send push messages when the number of delivery times exceeds the target number of push messages, thereby increasing the likelihood of the recipient responding to the push messages.
[0125] In another embodiment, the specific implementation of processing the delivery time based on the comparison results to obtain the target delivery time can be found in [reference needed]. Figure 5 This is a flowchart illustrating another embodiment of the target delivery time determination method provided by the present invention. Figure 5 As shown, the process may include the following steps:
[0126] Step 501: If the comparison result shows that the first quantity is less than the preset target quantity, obtain the object information of the object.
[0127] Step 502: For each target object information in the pre-stored target object information set, determine the similarity between the target object information and the object information.
[0128] Step 503: If the similarity is greater than or equal to the preset similarity threshold, obtain the target object's historical behavior data on the application corresponding to the target object information.
[0129] Step 504: Determine the corresponding time interval set based on the target's historical behavior data.
[0130] Step 505: Determine the second number of time intervals in the time interval set.
[0131] Step 506: Sum the first quantity and the second quantity to obtain the total quantity.
[0132] Step 507: Compare the total quantity with the target quantity.
[0133] Step 508: Given that the total quantity equals the target quantity, the delivery time is increased according to the time interval set to obtain the increased delivery time.
[0134] Step 509: Determine the increased delivery time as the target delivery time.
[0135] The following provides a unified description of steps 501 to 509:
[0136] As can be seen from the above description, in this embodiment of the invention, the first number of delivery times is compared with the preset target number. If the comparison result is that the first number is less than the target number, that is, the number of objects in the application's behavior distribution time interval (i.e., delivery time) is greater than the target number of push messages, then there may be a situation of push data redundancy. In this case, the delivery time can be increased.
[0137] In one embodiment, to increase the delivery time, a first delivery time for other objects similar to the target object can be selected and added to the total delivery time. The increased delivery time is then compared with the target number to determine whether further additions or other processing (e.g., filtering, or keeping it unchanged) are needed. This allows the target number of delivery times to be obtained, enabling successful delivery of push messages.
[0138] Furthermore, object information can be obtained, and for each target object in the pre-stored target object information set, the similarity between the target object information and the object information can be calculated. This object information may include, but is not limited to, occupation, age, gender, and hobbies. The target object refers to any object registered with the application, other than those mentioned above; that is, an object with historical behavioral data within the application.
[0139] In this embodiment of the invention, the similarity is compared with a preset similarity threshold to filter out the target object most similar to the target object, thereby obtaining the target object's historical behavior data on the application, and determining the corresponding time interval set based on the target historical behavior data. The total number is obtained by summing the number of time intervals in the time interval set (hereinafter referred to as the second number) with the first number. The aforementioned time interval set is a set of usage time intervals of the target object on the application, and may include at least one time interval.
[0140] For example, suppose the delivery time of the object is {[8:00, 10:00], [18:00, 20:00]}, and suppose the object information and the target object information in the target object information set are as shown in Table 2 below:
[0141] Table 2
[0142]
[0143]
[0144] Referring to the information shown in Table 2 above, the similarity between the object information and each target object information can be calculated. For example, if the similarity between the object information and each target object information is 23%, 90%, and 80%, respectively, then these similarities can be compared with a preset similarity threshold (85%). It can be determined that the object information of the second target object has the highest similarity value with the object information of the above objects. Then, the target object's historical behavior data on the application can be obtained, and the corresponding time interval set can be determined based on the target historical behavior data. For example, the time interval set is {[6:00, 7:00], [21:00, 11:00]}. Further, by summing the number of time intervals in the time interval set (hereinafter referred to as the second number) with the first number, the total number is 4.
[0145] Furthermore, the total quantity is compared with the target quantity. If the total quantity equals the target quantity, the increased delivery time remains unchanged, and the increased delivery time is determined to be the target delivery time.
[0146] Furthermore, in this embodiment of the invention, if the total quantity is greater than the target quantity, the increased delivery time is filtered, and the above-mentioned procedures are performed. Figure 4 The process shown illustrates the steps to determine the target delivery time after filtering the increased delivery time.
[0147] If the total number is less than the target number, the increased delivery time is increased again, and step 501 above is executed until the number of delivery times after multiple increases meets or exceeds the target number. This process ensures that every push message can be delivered, allowing for accurate calculation of the target's activity level on the application.
[0148] In this embodiment of the invention, after determining the target delivery time, push messages can be delivered to the application within the target delivery time. Upon receiving the push message, the application can display it to the user in a visual format. This allows the user to perform actions based on the push message displayed by the application (e.g., click actions (single click, double click, etc.), thereby obtaining the user's action information. The aforementioned visual format can be a pop-up window, message notification, webpage, etc.
[0149] Step 206: Determine the activity level of the object on the application based on the operation information, which is generated by the object's operation on the push message.
[0150] As can be seen from the above description, in this embodiment of the invention, after obtaining the object's operation information on the push message, the activity level can be calculated based on the object's operation information on the push message. The operation information can be any triggering operation of the object on the push message, such as deletion or message feedback.
[0151] In one embodiment, the specific implementation of determining the activity level of an object on the application based on operation information, where operation information is generated by the object's operation on push messages, may include: if the operation information indicates that the object has performed an operation within a preset delivery period, determining the number of times the object has performed an operation on push messages within the delivery period based on the operation information; determining the number of times push messages are delivered within the delivery period; and determining the activity level of the object on the application based on the number of operations and the number of deliveries.
[0152] Optionally, the activity level of an object on the application can be determined based on the ratio between the number of operations and the number of deliveries. For example, if the number of operations is 8 and the number of deliveries is 10, then the ratio between the number of operations and the number of deliveries is 0.8, which indicates that the activity level of the object on the application is 80%.
[0153] Optionally, the corresponding activity value can be retrieved from a pre-set activity table based on the number of operations and the number of deliveries, and the retrieved activity value can be determined as the object's activity level on the application. For example, the relationship between the pre-set number of operations, the number of deliveries, and the activity level is shown in Table 3 below:
[0154] Table 3
[0155] Number of operations Number of times Activity 5 10 50% 8 10 80% 10 20 50% 20 20 100%
[0156] As shown in Table 3 above, assuming the number of operations is 10 and the number of deployments is 20, then by referring to Table 3, we can determine that the corresponding activity value is 50%, which means that the activity of the object on the application is 50%.
[0157] If the object representing the operation information does not perform any operation within the preset deployment period, the object's historical behavior data and operation information can be input into a pre-trained activity prediction model to obtain an activity prediction value, and the activity prediction value is determined to be the object's activity level on the application.
[0158] In one embodiment, determining the object's activity level on the application based on operation information, where the operation information is generated by the object's interaction with push messages, may specifically include: inputting the object's historical behavior data and operation information into a pre-trained activity prediction model to obtain the activity prediction value output by the activity prediction model. The operation information includes at least one record of the object's interaction with push messages within the delivery period. The activity prediction value is then determined to represent the object's activity level on the application.
[0159] Optionally, the above activity prediction model can be obtained in the following ways, as detailed in [reference needed]. Figure 6This is a flowchart illustrating an embodiment of an activity prediction model determination method provided by the present invention. Figure 6 As shown, the process may include the following steps:
[0160] Step 601: Obtain the training history behavior data of multiple training target objects on the application.
[0161] Step 602: Determine the message delivery time for the push message based on the training history behavior data.
[0162] Step 603: Deliver push messages to the application during the message delivery time.
[0163] Step 604: Obtain a set of target operation information for multiple training target objects within a second preset time period. The set of target operation information includes: multiple second target objects performing operations based on push messages displayed by the application within the second preset time period to obtain at least one target operation information.
[0164] Step 605: For each target operation information in the target operation information set, determine the target activity of the training target object on the application based on the target operation information.
[0165] Step 606: Train the preset initial model based on the training history behavior data, the target operation set in the target operation information set, and the target activity level to obtain the activity prediction model.
[0166] The following provides a unified description of steps 601 to 606:
[0167] The training target objects mentioned above are those already registered on the application and capable of obtaining operational information. The number of training objects is not limited here. The second preset time period can be the delivery cycle for push messages, which can be one week, one month, three months, etc., and this embodiment of the invention does not impose any limitations on this.
[0168] In this embodiment of the invention, training history behavior data of the training target object is obtained, and the message delivery time of the push message is determined based on the historical behavior data, so as to deliver the push message to the application within the message delivery time. The target operation information set of the training target object is obtained, and the target activity is determined based on each operation information in the target operation information set.
[0169] Furthermore, the training history behavior data of the target object, the corresponding target operation information, and the corresponding target activity are used as training samples to train the preset initial model, thereby obtaining the activity prediction model.
[0170] In one embodiment, the specific implementation of determining the target activity level of the training target object on the application based on the target operation information may include: determining the number of times the object operates on the push message within the delivery period based on the target operation information, and then determining the number of times the push message is delivered within the delivery period; determining the activity level of the object on the application based on the number of operations and the number of deliveries. How to determine the activity level of the object on the application based on the number of operations and the number of deliveries has been described in detail above and will not be repeated here.
[0171] This concludes the process. Figure 6 The process described is as follows.
[0172] By using the above processing method, an activity prediction model can be obtained. Therefore, even if an object has not logged into the application for a long time or has not interacted with the pushed messages, the activity prediction model can be used to predict the object's activity level in the application.
[0173] This concludes the process. Figure 2 The process described is as follows.
[0174] In the technical solution of this invention, historical behavior data of an object on an application is acquired, the corresponding behavior distribution time intervals are statistically analyzed, and these time intervals are determined as the delivery time for push messages. A first quantity of delivery times is determined, and this first quantity is compared with a preset target quantity, which is the number of push messages delivered within a first preset time period. Based on the comparison result, the delivery times are processed to obtain a target delivery time. Push messages are delivered to the application within the target delivery time, enabling the object to perform operations based on the push messages displayed in the application. Based on the operation information, the object's activity level on the application is determined; the operation information is generated by the object's actions on the push messages. This improves the accuracy of determining object activity and allows for the acquisition of historical behavior data and prediction of object activity even when the object has not logged into the application for a long period.
[0175] Corresponding to the aforementioned embodiments of the detection method, the present invention also provides an embodiment block diagram of the apparatus.
[0176] See Figure 7 This is a block diagram illustrating an embodiment of a liveness detection device provided by an embodiment of the present invention. Figure 7 As shown, the device includes:
[0177] The data acquisition module 701 is used to acquire historical behavior data of objects on the application.
[0178] The time determination module 702 is used to statistically analyze the time interval of the behavior distribution corresponding to the historical behavior data, and determine the time interval of the behavior distribution as the delivery time of the push message;
[0179] The message delivery module 703 is used to deliver the push message to the application during the delivery time, so that the object can perform an operation based on the push message displayed by the application.
[0180] The activity determination module 704 is used to determine the activity level of the object on the application based on operation information, wherein the operation information is generated by the object performing an operation on the push message.
[0181] In an optional implementation, the message delivery module 703 includes (not shown in the figure):
[0182] A quantity determination unit is used to determine a first quantity for the delivery time, and compare the first quantity with a preset target quantity, wherein the target quantity is the number of push messages delivered within a first preset time period;
[0183] A time determination unit is used to process the delivery time based on the comparison results to obtain the target delivery time. The processing includes one of the following: adding, filtering, or keeping it unchanged.
[0184] A message delivery unit is used to deliver the push message to the application within the target delivery time, so that the object can perform an operation based on the push message displayed by the application.
[0185] In an optional implementation, the time determination unit is specifically used for:
[0186] If the comparison result shows that the first quantity is equal to the preset target quantity, the delivery time is determined to remain unchanged;
[0187] The aforementioned delivery time is determined as the target delivery time.
[0188] In an optional implementation, the time determination unit is specifically used for:
[0189] If the comparison result shows that the first quantity is greater than the preset target quantity, the delivery time of the first quantity is sorted.
[0190] The delivery times are filtered based on the sorting results to obtain the target number of delivery times;
[0191] The time for delivering the target quantity is defined as the target delivery time.
[0192] In an optional implementation, the time determination unit is specifically used for:
[0193] If the comparison result shows that the first quantity is less than the preset target quantity, the object information of the object is obtained;
[0194] For each piece of target object information in the pre-stored set of target object information, determine the similarity between the target object information and the object information;
[0195] If the similarity is greater than or equal to a preset similarity threshold, the target object's historical behavior data on the application corresponding to the target object information is obtained.
[0196] Determine the corresponding set of time intervals based on the target's historical behavior data;
[0197] Determine the second number of time intervals in the set of time intervals;
[0198] The first quantity and the second quantity are summed to obtain the total quantity;
[0199] Compare the total quantity with the target quantity;
[0200] If the total quantity is determined to be equal to the target quantity, the delivery time is increased according to the time interval set to obtain the increased delivery time.
[0201] The increased delivery time is determined as the target delivery time.
[0202] In an optional embodiment, the device further includes (not shown in the figures):
[0203] The first execution module is configured to execute the step of obtaining the object information of the object if the total number is less than the target number;
[0204] The second execution module is used to execute the step of sorting the delivery time of the first quantity if the total quantity is greater than the target quantity.
[0205] In an optional implementation, the activity determination module 704 is specifically used for:
[0206] The historical behavior data of the object and the operation information are input into a pre-trained activity prediction model to obtain the activity prediction value output by the activity prediction model. The operation information includes at least one operation record of the object on the push message during the delivery period.
[0207] The activity prediction value is determined to be the activity level of the object on the application.
[0208] In an optional implementation, the activity determination module 704 is specifically used for:
[0209] If the operation information indicates that the object has performed an operation within a preset delivery period, the number of times the object has performed an operation on the push message within the delivery period is determined based on the operation information.
[0210] Determine the number of times the push message will be delivered within the delivery period;
[0211] The activity level of the object on the application is determined based on the number of operations and the number of deployments.
[0212] In an optional implementation, the activity prediction model is obtained in the following manner:
[0213] Acquire training history behavior data of multiple training target objects on the application;
[0214] Based on the training history behavior data, determine the message delivery time for the push message;
[0215] The push message is delivered to the application during the specified message delivery time.
[0216] Obtain a set of target operation information for multiple training target objects within a second preset time period. The set of target operation information includes: multiple second target objects performing operations based on push messages displayed by the application within the second preset time period to obtain at least one target operation information.
[0217] For each target operation information in the target operation information set, the target activity level of the training target object on the application is determined based on the target operation information.
[0218] The preset initial model is trained based on the training history behavior data, the target operation set in the target operation information set, and the target activity level to obtain an activity prediction model.
[0219] Figure 8 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Figure 8 The illustrated electronic device 800 includes at least one processor 801, a memory 802, at least one network interface 804, and a user interface 803. The various components in the electronic device 800 are coupled together via a bus system 805. It is understood that the bus system 805 is used to implement communication between these components. In addition to a data bus, the bus system 805 also includes a power bus, a control bus, and a status signal bus. However, for clarity, ... Figure 8 The general labeled all buses as Bus System 805.
[0220] The user interface 803 may include a display, keyboard or clicking device (e.g., mouse, trackball), touchpad or touch screen, etc.
[0221] It is understood that the memory 802 in the embodiments of the present invention can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced Synchronous DRAM (ESDRAM), Synchlink DRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The memory 802 described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0222] In some implementations, memory 802 stores elements, executable units or data structures, or subsets thereof, or extended sets thereof: operating system 8021 and application programs 8022.
[0223] The operating system 8021 includes various system programs, such as the framework layer, core library layer, and driver layer, used to implement various basic business functions and handle hardware-based tasks. The application program 8022 includes various applications, such as a media player and a browser, used to implement various application functions. The program implementing the method of this embodiment can be included in the application program 8022.
[0224] In this embodiment of the invention, by calling the program or instructions stored in the memory 802, specifically the program or instructions stored in the application program 8022, the processor 801 executes the method steps provided in each method embodiment, including, for example:
[0225] Retrieve historical behavior data of an object in the application;
[0226] The historical behavior data is statistically analyzed, and the time intervals corresponding to the behavior distribution are determined as the delivery time of the push message.
[0227] The push message is delivered to the application during the specified delivery time, so that the object can perform an operation based on the push message displayed by the application;
[0228] Based on the operation information, the activity level of the object on the application is determined, whereby the operation information is generated by the object's operation on the push message.
[0229] The methods disclosed in the above embodiments of the present invention can be applied to or implemented by processor 801. Processor 801 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware in processor 801 or by instructions in software form. The processor 801 may be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of the present invention. The general-purpose processor may be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of the present invention can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software units in the decoding processor. The software units may be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in memory 802. Processor 801 reads the information in memory 802 and, in conjunction with its hardware, completes the steps of the above method.
[0230] It is understood that the embodiments described herein can be implemented in hardware, software, firmware, middleware, microcode, or a combination thereof. For hardware implementation, the processing unit can be implemented in one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), general-purpose processors, controllers, microcontrollers, microprocessors, other electronic units for performing the functions described herein, or combinations thereof.
[0231] For software implementation, the techniques described herein can be implemented by units that perform the functions described herein. The software code can be stored in memory and executed by a processor. The memory can be implemented in the processor or external to the processor.
[0232] The electronic device provided in this embodiment may be as follows: Figure 8 The electronic device shown can perform the following: Figure 1 , 2 All steps of the active method in the middle, thereby achieving Figure 1 , 2 For details on the technical effects of the active method, please refer to [link / reference]. Figure 1 , 2 The relevant descriptions are presented concisely and will not be elaborated upon here.
[0233] This invention also provides a storage medium (computer-readable storage medium). This storage medium stores one or more programs. The storage medium may include volatile memory, such as random access memory; the memory may also include non-volatile memory, such as read-only memory, flash memory, hard disk, or solid-state drive; the memory may also include combinations of the above types of memory.
[0234] When one or more programs in the storage medium can be executed by one or more processors to implement the above-mentioned liveness detection method executed on the electronic device side.
[0235] The processor is used to execute a liveness detection program stored in memory to implement the following steps of a liveness detection method executed on the electronic device side:
[0236] Retrieve historical behavior data of an object in the application;
[0237] The historical behavior data is statistically analyzed, and the time intervals corresponding to the behavior distribution are determined as the delivery time of the push message.
[0238] The push message is delivered to the application during the specified delivery time, so that the object can perform an operation based on the push message displayed by the application;
[0239] Based on the operation information, the activity level of the object on the application is determined, whereby the operation information is generated by the object's operation on the push message.
[0240] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.
[0241] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented in hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.
[0242] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above description is only a specific embodiment of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A method for detecting liveness, characterized in that, The method includes: Retrieve historical behavior data of an object in the application; The historical behavior data is statistically analyzed, and the time intervals corresponding to the behavior distribution are determined as the delivery time of the push message. The push message is delivered to the application within the specified delivery time, so that the object performs an operation based on the push message displayed by the application. The process of delivering the push message to the application within the specified delivery time to enable the object to perform an operation based on the push message displayed by the application includes: determining a first quantity of the delivery time; comparing the first quantity with a preset target quantity, the target quantity being the number of push messages delivered within a first preset time period; processing the delivery time based on the comparison result to obtain a target delivery time; including: if the comparison result is that the first quantity is less than the preset target quantity, obtaining object information of the object; and targeting a pre-stored set of target object information. For each target object information, determine the similarity between the target object information and the object information; if the similarity is greater than or equal to a preset similarity threshold, obtain the target object's historical behavior data on the application; determine the corresponding time interval set based on the target historical behavior data; determine a second number of time intervals in the time interval set; sum the first number and the second number to obtain a total number; compare the total number with the target number; if the total number is equal to the target number, increase the delivery time based on the time interval set to obtain an increased delivery time; determine the increased delivery time as the target delivery time. Based on the operation information, the activity level of the object on the application is determined, whereby the operation information is generated by the object's operation on the push message.
2. The method according to claim 1, characterized in that, The processing includes one of the following: adding, filtering, or keeping unchanged; the method further includes: The push message is delivered to the application within the target delivery time so that the object can perform an action based on the push message displayed by the application.
3. The method according to claim 1, characterized in that, The step of processing the delivery time based on the comparison result to obtain the target delivery time further includes: If the comparison result shows that the first quantity is equal to the preset target quantity, the delivery time is determined to remain unchanged; The aforementioned delivery time is determined as the target delivery time.
4. The method according to claim 1, characterized in that, The step of processing the delivery time based on the comparison result to obtain the target delivery time further includes: If the comparison result shows that the first quantity is greater than the preset target quantity, the delivery time of the first quantity is sorted. The delivery times are filtered based on the sorting results to obtain the target number of delivery times; The time for delivering the target quantity is defined as the target delivery time.
5. The method according to claim 4, characterized in that, The method further includes: If the total number is less than the target number, then the step of obtaining the object information of the object is executed; If the total quantity is greater than the target quantity, then the step of sorting the delivery time of the first quantity is executed.
6. The method according to claim 1, characterized in that, Determining the activity level of the object on the application based on the operation information includes: The historical behavior data of the object and the operation information are input into a pre-trained activity prediction model to obtain the activity prediction value output by the activity prediction model. The operation information includes at least one operation record of the object on the push message during the delivery time. The activity prediction value is determined to be the activity level of the object on the application.
7. The method according to claim 1, characterized in that, Determining the activity level of the object on the application based on the operation information includes: If the operation information indicates that the object has performed an operation within a preset delivery time, the number of times the object has performed an operation on the push message within the delivery time is determined based on the operation information. Determine the number of times the push message is delivered within the specified delivery time. The activity level of the object on the application is determined based on the number of operations and the number of deployments.
8. The method according to claim 6, characterized in that, The activity prediction model is obtained in the following way: Acquire training history behavior data of multiple training target objects on the application; Based on the training history behavior data, determine the message delivery time for the push message; The push message is delivered to the application during the specified message delivery time. Obtain a set of target operation information for multiple training target objects within a second preset time period. The set of target operation information includes: multiple second target objects performing operations based on push messages displayed by the application within the second preset time period to obtain at least one target operation information. For each target operation information in the target operation information set, the target activity level of the training target object on the application is determined based on the target operation information. The preset initial model is trained based on the training history behavior data, the target operation set in the target operation information set, and the target activity level to obtain an activity prediction model.
9. A liveness detection device, characterized in that, The device includes: The data acquisition module is used to acquire historical behavior data of objects in the application. A time determination module is used to statistically analyze the time interval of the behavior distribution corresponding to the historical behavior data, and determine the time interval of the behavior distribution as the delivery time of the push message; the time determination module is specifically used to: determine a first quantity of delivery time, compare the first quantity with a preset target quantity, the target quantity being the number of push messages delivered within a first preset time period; process the delivery time according to the comparison result to obtain the target delivery time; including: when the comparison result is that the first quantity is less than the preset target quantity, obtaining the object information of the object; for each target object information in the pre-stored target object information set, determining the target object information The similarity between the target information and the target object information is determined; if the similarity is greater than or equal to a preset similarity threshold, the target object's historical behavior data on the application corresponding to the target object information is obtained; a corresponding set of time intervals is determined based on the target historical behavior data; a second number of time intervals in the set of time intervals is determined; the first number and the second number are summed to obtain a total number; the total number is compared with the target number; if the total number is equal to the target number, the delivery time is increased based on the set of time intervals to obtain an increased delivery time; the increased delivery time is determined as the target delivery time. The message delivery module is used to deliver the push message to the application within the delivery time, so that the object can perform an operation based on the push message displayed by the application; An activity determination module is used to determine the activity level of the object on the application based on operation information, wherein the operation information is generated by the object performing an operation on the push message.
10. An electronic device, characterized in that, include: A processor and a memory, the processor being configured to execute a liveness detection program stored in the memory to implement the liveness detection method according to any one of claims 1 to 8.
11. A storage medium, characterized in that, The storage medium stores one or more programs, which can be executed by one or more processors to implement the liveness detection method according to any one of claims 1 to 8.