Information pushing method and device, equipment and storage medium
By constructing a periodic activity sequence and extracting features, the problem of incorrect classification of game objects in existing technologies has been solved, enabling more accurate object type identification and activity information push, and improving the activity of game objects.
Patent Information
- Application Number
- CN202410598427.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-05-14
- Publication Date
- 2025-11-14
AI Technical Summary
Existing classification methods based on preset rules are prone to classification errors when the behavior of game objects changes, making it impossible to accurately push information about activities of interest. Furthermore, formulating rules requires a lot of expert knowledge and time, increasing development costs and time.
By using historical operation data of the target object, we determine the periodic activity set under different periodic types, construct the periodic activity sequence, extract features, determine the object type based on historical activity features, and push the corresponding target activity information.
It improves the accuracy of object type recognition, enabling more precise delivery of targeted activity information, increasing the activity level of game objects, and flexibly responding to changes in behavior.
Smart Images

Figure CN120956782A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing technology, and provides an information push method, apparatus, device and storage medium. Background Technology
[0002] Currently, games often push event information to game objects to increase their activity level in the game.
[0003] In related technologies, a classification method based on preset rules can usually be used to identify the type of game object. By pushing different activity information to different types of game objects, the activity level of each game object in the game can be improved.
[0004] For example, the preset rule could be to divide game objects into high-activity objects and low-activity objects based on their activity level in the game, and then push activity information that can maintain the activity level of high-activity objects to low-activity objects, and push activity information that can improve the activity level of low-activity objects to low-activity objects.
[0005] However, the above classification method based on preset rules is not flexible enough. When the game login data or behavior patterns of game objects change, the method may still use the preset rules before the change to classify the game objects. This may lead to incorrect classification of game objects. And the activity information pushed to game objects based on the incorrect type will not improve the activity level of game objects.
[0006] Furthermore, the formulation of preset rules requires a great deal of expert knowledge and time, and will also greatly increase the game development cost and development cycle.
[0007] Therefore, it is urgent to solve the problem of how to push activity information to game objects in a way that can accurately improve their activity level. Summary of the Invention
[0008] This application provides an information push method, apparatus, device, and storage medium to solve the problem of low accuracy in identifying the type of game object, thus making it impossible to push activity information of interest to the game object.
[0009] In a first aspect, embodiments of this application provide an information push method, including:
[0010] Based on the historical operation data of the target object for the target game, the periodic activity sets of the target object under each period type within a set historical time period are determined. Different period types divide the set historical time period in different ways. Each periodic activity represents the degree of game participation of the target object within a given time range when the set historical time period is divided into multiple time ranges according to a period type. Based on the periodic activity sets under each period type, a periodic activity sequence corresponding to the respective period type is constructed, and feature extraction is performed on each periodic activity sequence to obtain the historical activity features of the target object. Based on the historical activity features, the object type to which the target object belongs is determined. The object type is pre-determined by clustering multiple sample push objects based on their respective sample activity features. Based on the preset mapping relationship between object types and target activity information, the target activity information corresponding to the object type is pushed to the target object.
[0011] Secondly, embodiments of this application also provide an information push device, including:
[0012] The activity determination unit is used to determine the periodic activity set of the target object under each period type within a set historical time period based on the historical operation data of the target object for the target game. The period type divides the set historical time period in different ways, and each periodic activity represents the degree of game participation of the target object in a time range when the set historical time period is divided into multiple time ranges according to a period type.
[0013] An activity sequence construction unit is used to construct a corresponding periodic activity sequence based on the periodic activity set under each periodic type.
[0014] The feature extraction unit is used to extract features from the activity sequences of each period to obtain the historical activity features of the object to be pushed.
[0015] The object type determination unit is used to determine the object type to which the object to be pushed belongs based on the historical activity characteristics; the object type is determined in advance by clustering based on the sample activity characteristics of multiple sample push objects.
[0016] The activity information push unit is used to push the target activity information corresponding to the object type to the object to be pushed, based on the preset mapping relationship between the object type and the target activity information.
[0017] In one possible implementation, when the feature extraction unit extracts features from each periodic activity sequence to obtain the historical activity features of the object to be pushed, it specifically performs the following operations for each periodic activity sequence: obtaining the periodic activity features corresponding to each periodic activity sequence, and concatenating the obtained periodic activity features to obtain the historical activity features of the object to be pushed; performing wavelet transform on a periodic activity sequence to extract the frequency features of the periodic activity sequence; obtaining the trend features of the periodic activity sequence by fitting a curve based on the activity change trend of the periodic activity sequence; and determining the periodic activity features of the periodic activity sequence based on the frequency features and the trend features.
[0018] In one possible implementation, the period type includes at least one of daily, weekly, and monthly. When the activity determination unit determines the periodic activity set of the target object under each period type within a set historical time period based on the target object's historical operation data for the target game, it is specifically used for: when the period type includes daily, determining the daily activity set of the target object within the set historical time period based on the target object's historical operation data for the target game; the daily activity set includes the daily activity of the target object for each day within the set historical time period; when the period type includes weekly, determining the weekly activity set of the target object within the set historical time period based on the target object's historical operation data for the target game; the weekly activity set includes the weekly activity of the target object for each week within the set historical time period; when the period type includes monthly, determining the monthly activity set of the target object within the set historical time period based on the target object's historical operation data for the target game; the monthly activity set includes the monthly activity of the target object for each month within the set historical time period.
[0019] In one possible implementation, when the activity sequence construction unit constructs the corresponding periodic activity sequence based on the periodic activity sets under each periodic type, it is specifically used to: construct a daily activity sequence based on each daily activity included in the daily activity set when the periodic activity set includes a daily activity set; construct a weekly activity sequence based on each weekly activity included in the weekly activity set when the periodic activity set includes a weekly activity set; and construct a monthly activity sequence based on each monthly activity included in the monthly activity set when the periodic activity set includes a monthly activity set.
[0020] In one possible implementation, the object type is determined by the object type determination unit through the following method: acquiring the sample activity features of multiple sample push objects; the sample activity features characterize the activity change trend of the sample push objects within a set historical time period; clustering the multiple sample push objects based on the similarity between the sample activity features to obtain multiple initial clusters; determining the feature difference degree between every two sample push objects based on the game interaction data of each of the multiple sample push objects; the information included in the game interaction data is different from that in the historical operation data; determining the cluster difference degree between every two initial clusters based on the feature difference degree between every two sample push objects; merging the initial clusters with a cluster difference degree less than a preset difference threshold to obtain multiple target clusters, and treating each target cluster as an object type.
[0021] In one possible implementation, when the object type determination unit treats each target cluster as an object type, it specifically performs the following operations for each target cluster: dividing the set historical time period into an early stage, a middle stage, and a late stage; determining the middle stage activity change rate and the late stage activity change rate for each sample push object based on the sample activity sequence of each sample push object included in a target cluster; the middle stage activity change rate characterizes the degree of activity change in the middle stage relative to the early stage, and the late stage activity change rate characterizes the degree of activity change in the late stage relative to the middle stage; and determining the object type corresponding to the target cluster based on the middle stage activity change rate and the late stage activity change rate of each sample push object included in the target cluster.
[0022] In one possible implementation, before determining the cluster difference between each two initial clusters based on the feature difference between each pair of sample push objects, the object type determination unit is further configured to: determine a cluster evaluation value for each initial cluster based on the feature difference between each pair of sample push objects; the cluster evaluation value characterizes the degree of feature difference between each sample push object in the corresponding initial cluster; determine a cluster evaluation value based on the cluster evaluation values of each of the multiple initial clusters, and determine that the cluster evaluation value is not less than a preset evaluation threshold; the cluster evaluation value characterizes the degree of feature difference between the initial clusters.
[0023] Thirdly, embodiments of this application also provide a computer device, including a processor and a memory, wherein the memory stores program code, and when the program code is executed by the processor, the processor performs the steps of any of the above-described information push methods.
[0024] Fourthly, embodiments of this application also provide a computer-readable storage medium including program code, which, when the program product is run on a computer device, is used to cause the computer device to perform the steps of any of the above-described information push methods.
[0025] Fifthly, embodiments of this application also provide a computer program product, including computer instructions, which are executed by a processor using the steps of any of the above-described information push methods.
[0026] The beneficial effects of this application are as follows:
[0027] This application provides an information push method, apparatus, device, and storage medium. The method includes: constructing a periodic activity sequence for the object to be pushed under different periodic types by determining the periodic activity set of the object to be pushed under each periodic type. Since the periodic activity sequence can characterize the activity change trend of the object to be pushed under the corresponding periodic type, the extracted historical activity features can include the activity trend of the object to be pushed under different periodic types. This makes the determined object type of the object to be pushed more accurate. Based on accurate classification, more targeted target activity information can be pushed to the object to be pushed, thereby increasing the object's interest in the target game, that is, increasing the activity of the object to be pushed in the target game.
[0028] Furthermore, since the historical time period and cycle type can be determined according to the actual situation, even if the game behavior of the target object changes, its object type can be re-determined based on the target object's recent operation data. Compared with the classification method based on preset rules in related technologies, it is more flexible and the determined object type is more accurate.
[0029] Other features and advantages of this application will be set forth in the description which follows, and will be apparent in part from the description, or may be learned by practicing the application. The objectives and other advantages of this application may be realized and obtained by means of the structures particularly pointed out in the written description, claims, and drawings. Attached Figure Description
[0030] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0031] Figure 1 This is an optional schematic diagram of an application scenario in the embodiments of this application;
[0032] Figure 2 A flowchart illustrating the information push method provided in this application embodiment;
[0033] Figure 3 This is a schematic diagram of the periodic activity sequence provided in an embodiment of this application;
[0034] Figure 4 A flowchart illustrating the method for obtaining historical activity characteristics provided in this application embodiment;
[0035] Figure 5 An exemplary flowchart of the object type determination method provided in the embodiments of this application;
[0036] Figure 6 This is a schematic diagram of an ascending sample active sequence provided in an embodiment of this application;
[0037] Figure 7 This is a schematic diagram of the active sequence of descending samples provided in an embodiment of this application;
[0038] Figure 8 This is a schematic diagram of active sequences of stationary samples provided in an embodiment of this application;
[0039] Figure 9 This is a schematic diagram of the active sequence of samples with an initial rise followed by a fall, provided in an embodiment of this application.
[0040] Figure 10 This is a schematic diagram of the active sequence of a sample with a first decrease followed by an increase, provided in an embodiment of this application.
[0041] Figure 11A One of the schematic diagrams of the active sequence of a sample with a first decrease followed by an increase provided in this application;
[0042] Figure 11B One of the schematic diagrams of the active sequence of a sample with a first decrease followed by an increase provided in this application;
[0043] Figure 11C One of the schematic diagrams of the active sequence of a sample with a first decrease followed by an increase provided in this application;
[0044] Figure 12 A schematic diagram illustrating the process of setting activity information provided in this application embodiment;
[0045] Figure 13 This is a schematic diagram of the structure of an information push device provided in an embodiment of this application;
[0046] Figure 14 This is a schematic diagram of the hardware structure of a computer device according to an embodiment of this application;
[0047] Figure 15 This is a schematic diagram of the hardware structure of another computer device that applies an embodiment of this application. Detailed Implementation
[0048] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings of the embodiments of this application. Obviously, the described embodiments are only some embodiments of the technical solutions of this application, and not all embodiments. Based on the embodiments recorded in this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the technical solutions of this application.
[0049] The following explanations of some terms used in the embodiments of this application are provided to facilitate understanding by those skilled in the art.
[0050] (1) Activity level: The frequency and depth of interaction between the user of the product or service and the corresponding product or service within a certain period of time.
[0051] (2) Activity sequence: A series of data points representing activity in this application arranged in chronological order, that is, a time series with activity as data.
[0052] (3) Outliers: These are values that are significantly different from those in the dataset. Outliers are usually caused by statistical errors or special circumstances.
[0053] (4) Wavelet transform: A mathematical tool used to analyze signals or data at multiple scales. It can be used to detect frequency components in activity sequences.
[0054] The design concept of the embodiments of this application is briefly introduced below:
[0055] Currently, games typically push event information to game objects to increase their activity level within the game. These game objects are those that participate in the game.
[0056] In related technologies, a classification method based on preset rules can usually be used to identify the type of game object. By pushing different activity information to different types of game objects, the activity level of each game object in the game can be improved.
[0057] For example, the preset rule could be to divide game objects into high-activity objects and low-activity objects based on their activity level in the game, and then push activity information that can maintain the activity level of high-activity objects to low-activity objects, and push activity information that can improve the activity level of low-activity objects to low-activity objects.
[0058] However, the above classification method based on preset rules is not flexible enough. When the game login data or behavior patterns of game objects change, the method may still use the preset rules before the change to classify the game objects. This may lead to incorrect classification of game objects. And the activity information pushed to game objects based on the incorrect type will not improve the activity level of game objects.
[0059] Furthermore, the formulation of preset rules requires a great deal of expert knowledge and time, and will also greatly increase the game development cost and game development cycle.
[0060] In view of this, embodiments of this application provide an information push method, apparatus, device, and storage medium. The method includes: determining the periodic activity sets of the target object under different periodic types within a set historical time period based on historical operation data of the target object for a target game; constructing periodic activity sequences corresponding to each periodic type based on the periodic activity sets under each periodic type, and extracting features from each periodic activity sequence to obtain the historical activity features of the target object; then determining the object type to which the target object belongs based on the historical activity features, and pushing target activity information corresponding to the object type to the target object.
[0061] By constructing the periodic activity sequence of the target object under different periodic types, the extracted historical activity features can include the activity features of the target object under different periodic types. This makes the determination of the target object's object type more accurate. Based on accurate classification, more targeted target activity information can be pushed to the target object, thereby increasing the target object's interest in the target game and increasing its activity in the target game.
[0062] The preferred embodiments of this application are described below with reference to the accompanying drawings. It should be understood that the preferred embodiments described herein are for illustration and explanation only and are not intended to limit this application. Furthermore, the embodiments and features in the embodiments of this application can be combined with each other without conflict.
[0063] Figure 1 This illustration shows an application scenario of the information push method provided in this application embodiment. The application scenario may include a terminal device 110 and a server 120. Each terminal device 110 can establish a communication connection with the server 120 via a wired or wireless network. A target game can be installed on the terminal device 110. The recipient can launch the target game on the terminal device 110 and log in with their personal account. The terminal device 110 can generate historical operation data based on the recipient's historical operations in the target game and send this historical operation data to the server 120.
[0064] Server 120 can determine the periodic activity set of the target object under each periodic type within a set historical time period based on the historical operation data of the target object in the target game. Then, based on the periodic activity set of each periodic type, it constructs the corresponding periodic activity sequence for each periodic type and extracts features from each periodic activity sequence to obtain the historical activity features of the target object. Next, based on the historical activity features, it determines the object type to which the target object belongs. Finally, based on the preset mapping relationship between object types and target activity information, it pushes the target activity information corresponding to that object type to the target object's personal account, so that the target object can view the target activity information when logging into its personal account in the target game on terminal device 110.
[0065] The embodiments of this application can be applied to various scenarios, including but not limited to cloud technology, artificial intelligence, smart transportation, and assisted driving. The number of terminal devices and servers in the embodiments of this application can be set according to actual conditions, and this application does not limit this.
[0066] The terminal device 110 in this application embodiment includes, but is not limited to, mobile phones, computers, smart voice interaction devices, smart home appliances, vehicle terminals, aircraft, etc.
[0067] The server 120 in this application embodiment can be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDN), and big data and artificial intelligence platforms. This application does not impose any restrictions on these services.
[0068] based on Figure 1 For the application scenarios shown, please refer to [link / reference]. Figure 2 This is an exemplary flowchart of the information push method provided in the embodiments of this application. This process can be applied to... Figure 1 The server 120 shown may include the following steps 201-204:
[0069] Step 201: Based on the historical operation data of the target object for the target game, determine the periodic activity set of the target object under each periodic type within the set historical time period.
[0070] Different cycle types have different methods for dividing the set historical time period, meaning that different cycle types correspond to different cycle lengths. The activity level of each cycle represents the degree of game participation of the target audience within a given time range when the set historical time period is divided into multiple time ranges according to a cycle type. The set historical time period can be configured based on actual circumstances or experience; for example, it could be a complete season of the target game or a complete season year of the target game, etc. This application does not impose any limitations on this.
[0071] In one possible implementation, the period type may include at least one of day, week, and month.
[0072] When the period type includes day and hour, the daily activity set of the target object within a set historical time period can be determined based on the historical operation data of the target object for the target game. The daily activity set includes the daily activity of the target object for each day within the set historical time period.
[0073] When the period type includes week, based on the historical operation data of the target object for the target game, the weekly activity set of the target object within a set historical time period is determined. The weekly activity set includes the weekly activity of the target object for each week within the set historical time period.
[0074] When the period type includes a month, the monthly activity set of the target object within a set historical time period is determined based on the historical operation data of the target object for the target game. This monthly activity set includes the monthly activity of the target object for each month within the set historical time period.
[0075] In one example, assuming the period type includes daily and weekly, and the historical time period is set to January 1, 2022 to March 31, 2022, the daily activity level on January 1, 2022, the daily activity level on January 2, 2022, ..., the daily activity level on March 31, 2022 can be determined based on the daily historical operation data of the target object for the target game between January 1, 2022 and March 31, 2022, and a daily activity level set including the above daily activity levels can be formed.
[0076] Assuming the week begins on Monday, the weekly activity levels for the target game are determined based on the historical weekly activity data of the target user from January 1, 2022 to March 31, 2022. The weekly activity levels for January 3, 2022 to January 9, 2022, January 10, 2022 to January 16, 2022, ..., March 21, 2022 to March 27, 2022. A set of weekly activity levels including the above-mentioned weekly activity levels is then formed.
[0077] Among them, January 1, 2022 and January 2, 2022 are Saturday and Sunday, and March 28, 2022 and March 31, 2022 are Monday to Thursday. These do not constitute a complete week, so the historical operation data for these days may not be used to calculate the weekly activity. Alternatively, when determining the weekly activity, the historical operation data of the target object for the target game between December 27, 2021 and December 31, 2021, and April 1, 2022 and April 3, 2022 can be used to determine the weekly activity for December 27, 2021 and January 2, 2022, and the weekly activity for March 28, 2022 and April 3, 2022, and these two weekly activity values can be added to the weekly activity set.
[0078] In another example, assuming the period type includes daily, weekly, and monthly, and the historical time period is set to January 1, 2022 to March 31, 2022, then based on the above-mentioned daily activity set and weekly activity set, the monthly activity for January 1, 2022 to January 31, 2022, the monthly activity for February 1, 2022 to February 28, 2022, and the monthly activity for March 1, 2022 to March 31, 2022 are determined according to the monthly historical operation data of the target object for the target game between January 1, 2022 and March 31, 2022, respectively, and a monthly activity set including the above-mentioned monthly activity is formed.
[0079] It should be noted that the cycle type can also include day and month, week and month, day, week, month, etc. The way to form the corresponding cycle activity set can be referred to the description in the above embodiments, and will not be repeated here.
[0080] In addition to daily, weekly, and monthly cycles, the cycle type can also be set according to actual circumstances or experience, such as half-month, five-day, half-year, year, etc. This application does not limit this.
[0081] Taking a period type including half-month as an example, when the historical time period is set to January 1, 2022 to March 31, 2022, the half-month activity of the target game can be determined based on the historical operation data of the target object for each half-month between January 1, 2022 and March 31, 2022. The half-month activity of January 1, 2022 to January 15, 2022, January 16, 2022 to January 31, 2022, ..., March 16, 2022 to March 31, 2022, and a half-month activity set including the above half-month activity is formed.
[0082] It should be noted that half a month can refer to fifteen days or half a month, and can be defined according to actual circumstances or experience. This application does not limit this definition. When half a month is defined as half a month, and the number of days in a month cannot be divided equally, the number of days in the month can be divided into two parts with a difference of no more than one day, and each part can be regarded as half a month.
[0083] Optionally, historical operation data may include: within a set historical time period, the login duration, single-time stay duration, and access behavior of the target object in the target game, as well as its access behavior to various modules in the target game. Modules in the target game may include activity modules, battle modules, task modules, friend interaction modules, etc., and access behavior may include the number of visits and the duration of a single visit. For example, access behavior to various modules in the target game may include the number of visits to the activity module and the duration of a single visit to the friend interaction module.
[0084] In one possible implementation, when the server determines the periodic activity set of the target object under each period type within a set historical time period based on the historical operation data of the target object for the target game, it can standardize each historical operation data within the period and obtain the corresponding periodic activity by weighted summation.
[0085] In one example, assuming historical operation data includes login duration, number of visits to module 1, number of visits to module 2, etc., the periodic activity of the corresponding period type can be calculated as shown in formula (1).
[0086] A T =w1*online_time+w2*click_1+w3*click_2+… Formula (1)
[0087] Among them, A T This indicates the periodic activity level. `online_time` represents the login duration within that period, `click_1` represents the number of visits to module 1, and `click_2` represents the number of visits to module 2. The login duration, number of visits to module 1, and number of visits to module 2 are all standardized data. `w1`, `w2`, and `w3` are the weights corresponding to each historical operation data point, and the sum of all weights is 1.
[0088] It should be noted that relevant staff can assign corresponding weights based on the importance of each historical operation data item. For example, if relevant staff believe that the number of visits to module 2 is the most important and the login duration is the least important among the various historical operation data items, then the weights can be configured as w1=0.1, w2=0.3, and w3=0.6.
[0089] Optionally, the historical operational data can be standardized using a z-score method. The specific process involves dividing the difference between a historical operational data point and its mean by the standard deviation of that historical operational data point. The standardized z-score of a historical operational data point can then be used to represent its relative position within the population.
[0090] For example, taking login duration as an example, the login duration for each period can be equal to (login duration of the target object in that period - average login duration in that period) / standard deviation of login duration in that period. Here, the average login duration in that period can be the average login duration of all game objects participating in the target game in that period, or it can be the average login duration of all game objects included in a preset set of game objects in that period. The standard deviation of login duration in that period is similar and will not be elaborated further here.
[0091] In one implementation, before calculating the corresponding periodic similarity, the acquired historical operation data can be cleaned, for example, by removing outliers, missing values, and duplicate data from the historical operation data.
[0092] Step 202: Based on the periodic activity sets under each periodic type, construct the periodic activity sequences corresponding to the respective periodic types, and extract features from each periodic activity sequence to obtain the historical activity features of the object to be pushed.
[0093] In one implementation, when the server constructs a corresponding periodic activity sequence based on the periodic activity set for each periodic type, if the periodic activity set includes a daily activity set, a daily activity sequence is constructed based on the daily activity values included in the daily activity set. If the periodic activity set includes a weekly activity set, a weekly activity sequence is constructed based on the weekly activity values included in the weekly activity set. If the periodic activity set includes a monthly activity set, a monthly activity sequence is constructed based on the monthly activity values included in the monthly activity set.
[0094] See Figure 3 This is a schematic diagram of a periodic activity sequence provided in an embodiment of this application. Figure 3 As shown, in this embodiment, the activity sequence is represented in the form of a time-activity curve. Taking the daily activity sequence as an example, Figure 3 The sequence of daily activity of a target to be pushed is shown from July 2, 2023 to September 15, 2023. The horizontal axis shows the time in the form of dates, and the vertical axis is the daily activity calculated by formula (1).
[0095] In some embodiments, after constructing the periodic activity series, each periodic activity series can be analyzed, including but not limited to stationarity tests, seasonality detection, and trend analysis.
[0096] When performing a stationarity test on each periodic activity sequence, the problem of spurious regression can be avoided by checking whether each data point in the activity sequence is stationary.
[0097] Seasonal detection is performed on each periodic activity sequence, that is, seasonal changes are identified in the periodic activity sequence. For example, based on the periodic activity sequence, if it is determined that the daily activity of a certain target object increases in July and August each year compared to other times, it can be determined that the target object has seasonal variation characteristics, and it can be further determined that the target object is a game object with high activity during the summer vacation.
[0098] When performing trend analysis on each periodic activity sequence, it can be determined whether the periodic activity sequence has an upward or downward trend.
[0099] In one possible implementation, see Figure 4 This is a flowchart illustrating the method for obtaining historical activity characteristics provided in an embodiment of this application. Figure 4 As shown, the process may include steps 401 and 402:
[0100] Step 401: For each periodic activity sequence, perform steps 4011-4013 respectively to obtain the periodic activity features corresponding to each periodic activity sequence:
[0101] Step 4011: Perform wavelet transform on a periodic activity sequence to extract the frequency features of the periodic activity sequence.
[0102] Wavelet transform can effectively extract frequency features from periodic activity sequences through local transformations in time and frequency. For example, the extracted frequency feature could be a trend in the periodic activity sequence where each occurrence is an initial increase followed by a decrease, and then a sudden increase.
[0103] Based on the above scheme, wavelet transform can be used to extract features from the periodic activity sequence that cannot be extracted manually, thereby making the extracted features more accurate and thus more accurately determining the object type of the object to be pushed.
[0104] Step 4012: Based on the activity change trend of a periodic activity sequence, obtain the trend characteristics of a periodic activity sequence by fitting a curve.
[0105] The activity trend of a periodic activity sequence can be determined by segmented variance. That is, the historical time period is divided into multiple time intervals, and the activity trend of the periodic activity sequence is determined by calculating the variance of each time interval.
[0106] In some embodiments, after determining the activity change trend of a periodic activity sequence, a suitable function can be used to fit the curve, such as an exponential function or a polynomial function. After obtaining the fitted curve, relevant personnel can define the features that may affect the activity change trend as trend features based on the activity change trend in each curve, and extract them. For example, trend features may include content consumption, social interaction, and activity participation within the target game.
[0107] The method for fitting the curve can be found in related technologies, and will not be elaborated here.
[0108] It should be noted that steps 4011 and 4012 are two parallel steps, and this application does not specify the execution order of steps 4011 and 4012. For example, steps 4011 and 4012 can be executed simultaneously, or steps 4011 can be executed first and then steps 4012, or steps 4012 can be executed first and then steps 4011.
[0109] Step 4013: Based on frequency and trend characteristics, determine the periodic activity characteristics of a periodic activity sequence.
[0110] The server can obtain the periodic activity features of a periodic activity sequence by concatenating frequency features and trend features.
[0111] In one possible implementation, when the period type includes daily, the daily activity characteristics of the daily activity sequence can be obtained through steps 4011-4013. When the period type includes weekly, the weekly activity characteristics of the weekly activity sequence can be obtained through steps 4011-4013. When the period type includes monthly, the monthly activity characteristics of the monthly activity sequence can be obtained through steps 4011-4013.
[0112] Step 402: Concatenate the obtained periodic active features to obtain the historical active features of the object to be pushed.
[0113] In one example, assuming the period type includes daily, weekly, and monthly, the daily active features, weekly active features, and monthly active features can be concatenated to obtain the historical active features of the object to be pushed.
[0114] Based on the above scheme, since the historical activity feature is obtained by splicing the periodic activity features of different period types, the historical activity feature can reflect the activity of the object to be pushed under different period types. Compared with the method of dividing game objects by simple activity level in related technologies, it can better capture the differences and dynamic changes between different game objects.
[0115] Step 203: Determine the object type of the object to be pushed based on historical activity characteristics.
[0116] The object type is determined in advance by clustering the sample activity features of multiple sample objects. When executing step 203, the historical activity features can be standardized first, and then the standardized historical activity features can be input and matched with the features corresponding to each object type to determine the object type to which the object to be pushed belongs.
[0117] In one possible implementation, see Figure 5 An exemplary flowchart of the object type determination method provided in the embodiments of this application is shown below. Figure 5 As shown, the process may include steps 501-505:
[0118] Step 501: Obtain the sample activity characteristics of each of the multiple sample push objects.
[0119] Among them, the sample activity feature represents the activity change trend of the sample push object within a set historical time period. The method for obtaining the sample activity feature of each of the multiple sample push objects is the same as the method for obtaining the historical activity feature of the object to be pushed, and will not be repeated here.
[0120] Optionally, the multiple sample push targets can be some or all of the game objects participating in the target game. When selecting sample push targets, a prompt message can be sent to all game objects asking whether the corresponding game objects agree to provide historical operation data. Among the game objects that agree to provide historical operation data, game objects that meet the preset rules are selected as sample push targets.
[0121] For example, the sample push target can be a game object whose login time exceeds a preset login time threshold among game objects that agree to provide historical operation data; or, the sample push target can also be a game object that has logged into the target game within a set historical time period among game objects that agree to provide historical operation data. The preset rules can be set according to experience or actual business needs, and this application does not specifically limit the preset rules.
[0122] Step 502: Based on the similarity between the active features of each sample, cluster the multiple sample push objects to obtain multiple initial clusters.
[0123] In one implementation, when performing step 502, the clustering algorithm and the preset number of initial clusters can be determined first, and then the activity features of each sample can be standardized. Then, based on the similarity between the standardized sample activity features, multiple sample push objects can be clustered using the determined clustering algorithm to obtain an initial cluster that meets the preset number. The clustering algorithm can be selected based on actual conditions or experience; for example, it can be K-means clustering, hierarchical clustering, etc., and this application does not limit it.
[0124] For example, the initial cluster size can be preset to 30. After executing step 502, multiple sample push objects can be divided into 30 clusters, each of which is an initial cluster. The activity trends of the sample push objects included in each initial cluster are quite similar within a set historical time period.
[0125] After performing step 502, the rationality and effectiveness of the clustering can be evaluated based on the clustering results, and the clustering results can be adjusted. The evaluation method can be found in the relevant technologies, and will not be repeated here.
[0126] Step 503: Based on the game interaction data of each of the multiple sample push objects, determine the feature difference between each pair of sample push objects.
[0127] To objectively evaluate the clustering effect, game interaction data, which includes core information relevant to the target game's business and differs from historical operational data, was used to determine the characteristic differences between each pair of sample push targets. Game interaction data may include, but is not limited to, information such as weekly active days, weekly number of games played, spending amount, and number of interacting friends.
[0128] Specifically, the server can determine the interaction characteristics of each sample push object based on the game interaction data of each of the multiple sample push objects, then calculate the Euclidean distance between the interaction characteristics of every two sample push objects, and use the Euclidean distance as the feature difference degree between every two sample push objects. The larger the distance, the greater the feature difference degree.
[0129] In one possible implementation, after determining the feature difference between each pair of sample push objects, the clustering effect can be evaluated based on the determined feature difference between each pair of sample push objects. When the evaluation result reaches a preset evaluation threshold, step 504 is executed. When the evaluation result does not reach the preset evaluation threshold, the interaction feature of each sample push object is used as a new feature, and the historical active features are updated based on the new features. Then, the steps of clustering and evaluating the clustering results are performed using the updated historical active features until the preset evaluation threshold is reached, at which point step 504 is continued.
[0130] Specifically, when evaluating the clustering effect based on the characteristic difference between every two sample push objects, a cluster evaluation value for each initial cluster can be determined first based on the characteristic difference between every two sample push objects. Then, based on the cluster evaluation values of multiple initial clusters, a cluster evaluation value used to evaluate the clustering effect is determined. The cluster evaluation value characterizes the degree of characteristic difference between the initial clusters. The cluster evaluation value characterizes the degree of characteristic difference between the individual sample push objects within the corresponding initial cluster.
[0131] In some embodiments, the cluster evaluation value of the initial cluster I can be determined by formula (2), and the average of the cluster evaluation values of the multiple initial clusters can be used as the cluster evaluation value.
[0132]
[0133] In the formula, M Cluster_I This represents the cluster evaluation value of initial cluster I, where a and b are sample push objects in initial cluster I, c is a sample push object not belonging to initial cluster I, and d... ac This represents the Euclidean distance between a and c, also known as the feature dissimilarity. Similarly, d... ab N represents the feature difference between a and b. I N represents the number of sample push objects in the initial cluster I, and N represents the total number of sample push objects participating in the clustering.
[0134] Step 504: Determine the cluster difference between each pair of initial clusters based on the feature difference between each pair of sample push objects.
[0135] In some implementations, the cluster difference between two initial clusters can be determined by the inter-class distance between each two initial clusters and the intra-class distance within each initial cluster, satisfying formula (3).
[0136]
[0137] In the formula, M Cluster_I,J N represents the cluster difference between initial cluster I and initial cluster J. J This indicates the number of sample push objects in the initial cluster J. This represents the inter-class distance between initial cluster I and initial cluster J. This represents the intra-class distance of the initial cluster I.
[0138] Step 505: Merge the initial clusters whose cluster difference is less than the preset difference threshold to obtain multiple target clusters, and treat each target cluster as an object type.
[0139] Since the smaller the cluster difference, the higher the similarity between two initial clusters, it can be considered that two initial clusters with a cluster difference of less than the preset difference threshold are relatively similar. These two initial clusters can be merged into one target cluster, and it can be determined that the sample push objects in these two initial clusters belong to the same object type.
[0140] For example, assuming the preset difference threshold is 2, when three initial clusters A, B, and C are obtained in step 502, the cluster difference degree M between A and B is calculated using formula (3). Cluster_A,B Cluster difference M between A and C Cluster A,C Cluster difference M between B and C Cluster B,C With M Cluster A,B For example, M Cluster_A,B This represents the ratio of the inter-class distance between A and B to the intra-class distance of A. If the inter-class distance between A and B is less than twice the intra-class distance of A, then A and B can be merged.
[0141] In one implementation, when each target cluster is treated as a separate object type, the following operations can be performed on each target cluster:
[0142] The historical time period is divided into early, middle, and late stages. Based on the sample activity sequences of each push object included in a target cluster, the middle-stage activity change rate and the late-stage activity change rate of each push object are determined. Then, based on the middle-stage and late-stage activity change rates of each push object included in a target cluster, the object type corresponding to the target cluster is determined. The middle-stage activity change rate represents the degree of activity change in the middle stage relative to the early stage, and the late-stage activity change rate represents the degree of activity change in the late stage relative to the middle stage.
[0143] Optionally, the active sequence of the sample can be an active sequence formed by the periodic activity of any periodic type, or it can be an active sequence formed by the combination of periodic activities of multiple different periodic types. This application does not limit this.
[0144] In one example, for each sample push object in the target cluster E, its average activity level in the early stage, the average activity level in the middle stage, and the average activity level in the later stage can be determined separately based on the sample activity sequence. Then, the mid-term activity change rate is calculated by dividing the mid-term average activity level by the early stage average activity level minus 1. The late-term activity change rate is calculated by dividing the late-term average activity level by the mid-term average activity level minus 1. Finally, the average of the mid-term activity change rates of each sample push object in the target cluster E is taken as the mid-term activity change rate of the target cluster E, and the average of the late-term activity change rates of each sample push object in the target cluster E is taken as the late-term activity change rate of the target cluster E.
[0145] Optionally, when determining the object type corresponding to a target cluster, an active change rate threshold can be set. Then, the mid-term active change rate and the late-term active change rate of the target cluster can be compared with the active change rate threshold respectively, and the object type corresponding to the target cluster can be determined based on the comparison results.
[0146] For example, assuming an active change rate threshold of 0.1, the object type corresponding to a target cluster where both the mid-term and late-term active change rates are greater than 0.1 can be identified as ascending. See also Figure 6 This is a schematic diagram of an upward-trending sample activity sequence provided in an embodiment of this application. Taking a historical time period from July 1, 2022 to September 30, 2022 as an example, July can be considered as the early stage, August as the middle stage, and September as the late stage. Figure 6 The activity level shown clearly increases gradually.
[0147] The object type corresponding to the target cluster whose mid-term and late-term activity change rates are both less than -0.1 is determined to be descent type. See [link to relevant documentation]. Figure 7 This is a schematic diagram of the active sequence of descending samples provided in an embodiment of this application, such as... Figure 7 The activity level shown clearly decreased gradually.
[0148] The object type corresponding to the target cluster whose mid-term and late-term active change rates are both between -0.1 and 0.1 is determined to be stationary. See [link to relevant documentation]. Figure 8 This is a schematic diagram of the active sequence of a stationary sample provided in an embodiment of this application, such as... Figure 8 The sample push objects of this type shown exhibit similar activity levels in the early, middle, and late stages.
[0149] The object type corresponding to the target cluster with a mid-term activity change rate greater than 0.1 and a late-term activity change rate less than -0.1 is determined to be an ascending-descending type. See [link to relevant documentation]. Figure 9 This is a schematic diagram of the active sequence of samples with an initial rise followed by a fall, provided in an embodiment of this application. Figure 9As shown, the activity level of this object type increased in the middle period compared to the early period, while the activity level decreased in the later period compared to the middle period.
[0150] The object type corresponding to the target cluster with a mid-term activity change rate less than -0.1 and a late-term activity change rate greater than 0.1 is determined to be a "decline-then-rise" type. See [link to relevant documentation]. Figure 10 This is a schematic diagram of the active sequence of a sample that first decreases and then increases, provided in an embodiment of this application. Figure 10 As shown, the activity level of this object type decreased in the middle period compared to the early period, while the activity level increased in the later period compared to the middle period.
[0151] Optionally, before determining the object type corresponding to the target cluster based on the mid-term and late-term activity change rates, the sample activity sequence of each sample push object in the target cluster can be analyzed first. If the average activity level within a set historical time period is low, and the average activity level in any one of the early, mid, and late time intervals is greater than the average activity level in the other two time intervals, the object type corresponding to the target cluster can be determined to be single sign-on type.
[0152] See Figures 11A-11C This is a schematic diagram of a sample active sequence that first decreases and then increases, provided as an embodiment of this application. For example... Figure 11A As shown, the average activity level of the target audience in the early stages of this sample was higher than the average activity level in the other two time periods, meaning that only those who logged in during the early stages... Figure 11B As shown, the average activity level of the target audience in the middle period of this sample was higher than the average activity level in the other two time periods, meaning that logins were only active in the middle period. Figure 11C As shown, the average activity level of the target audience in the later period of this sample was higher than the average activity level in the other two time periods, meaning that the target audience only logged in later.
[0153] It should be noted that the object types identified above are merely illustrative. Other object types may also be included. For example, the object type corresponding to the object to be pushed that does not meet any of the above conditions may be identified as fluctuating, and so on.
[0154] Based on the above approach, after obtaining the initial clusters, it's possible that two sample push objects with similar activity trends might be assigned to two different initial clusters. To avoid this, the initial clusters can be merged by calculating the cluster difference between them. This makes the feature differences between the resulting target clusters more obvious, and the classification of object types for sample push object scores more effective.
[0155] In one possible implementation, during the operation of the target game, the already determined object types can be recombined based on specific business needs or data analysis results.
[0156] For example, during the operation of a target game, when launching an activity to reward outstanding candidates, it can be configured to simultaneously reward both rising and stable candidates. During the activity, the rising and stable types can be recombined into a reward type, allowing relevant staff to reward candidates belonging to the reward type. Furthermore, after the activity ends, this candidate type can be deleted or retained as a new candidate type; this application does not impose any limitations on this.
[0157] Step 204: Based on the preset mapping relationship between object types and target activity information, push the target activity information corresponding to the object type to the object to be pushed.
[0158] The mapping relationship between object type and target activity information can be set after classifying object types and analyzing the sample activity sequence of each sample push object for each object type.
[0159] In some embodiments, assuming that the object type includes stable, rising, falling, rising-then-falling, falling-then-rising, and single sign-on, the mapping relationship between the preset object type and the target activity information may include the following (1)-(6):
[0160] (1) Stable type: Since the stable type of target users consistently have a high level of participation in the target game, the target activity information for the stable type of target users can be set to daily task-related activity information to maintain their game participation level. For example, activity information that rewards completing a daily task.
[0161] (2) Rising Type: As rising-type target users gradually increase their participation in the target game over time, the target activity information corresponding to them can be set to information related to activities that promote social interaction. This can be used to spread the reach of highly active target users and deepen their participation in the target game. For example, information about activities where users can receive corresponding task rewards by inviting friends to participate in the target game.
[0162] (3) Declining Type: Users in the declining type may be gradually losing interest in the target game or encountering a leveling bottleneck. Therefore, the target activity information for declining users can be set as game skill tutorial-related activities. This activity information is determined based on the user's bottleneck and is used to help them overcome it, thereby increasing their participation in the target game. For example, assuming the target game is a 5v5 battle game, if the user's win rate is too low when using hero A in ranked matches, the target activity information could be a tutorial on combos and awareness for hero A.
[0163] (4) **Upward-Downward Type:** The activity level of the target audience initially rises and then falls, possibly due to reaching a game upgrade goal at a certain point or losing interest in the target game. Therefore, to rekindle the interest of this type of target audience, the target activity information can be set to new gameplay information or new game upgrade goal information. For example, information related to new game modes, new game ranks, or new achievements can be pushed to them.
[0164] (5) **Rank Advancement After Demotion:** Those targeted for this strategy may perceive rank advancement as more difficult in the early season and relatively easier in the mid-to-late season. Therefore, they may choose to increase their game participation in the mid-to-late season to advance their rank. For this type of target audience, the target activity information can be set to push gameplay information related to less stressful entertainment modes in the early season, thus enhancing their gaming experience. For example, information about the "Super Smash Bros." mode could be pushed to them in the early season.
[0165] (6) Single Sign-On Type: Users targeted by single sign-on (SSO) notifications typically have a lower level of engagement with the target game compared to other types of users. Therefore, the target activity information for SSO users can be set as periodic login reminders or promotional activity information. Additionally, simplified or guiding tutorials can be provided to increase the user's attention to the target game. For example, target activity information could include reminders about new or returning hero skins, skill changes to heroes the user was familiar with, or rank upgrade reminders from the user's former close friends.
[0166] Based on the above solution, by understanding the game activity preferences of different target audiences, different operational and delivery strategies can be formulated. This allows for the delivery of more targeted activity information to different target audiences, thereby increasing their participation and interest in the game after receiving the relevant target activity information, thus achieving the effect of increasing the number of game users.
[0167] In one possible implementation, when setting the target activity information corresponding to different object types to be pushed, machine learning algorithms can also be used.
[0168] Machine Learning (ML) is a multidisciplinary field involving probability theory, statistics, approximation theory, convex analysis, and algorithm complexity theory, among others. It specifically studies how computers can simulate or implement human learning behavior to acquire new knowledge or skills and reorganize existing knowledge structures to continuously improve their performance. Machine learning is the core of artificial intelligence and the fundamental way to endow computers with intelligence; its applications span all areas of artificial intelligence.
[0169] In some embodiments, when setting target activity information corresponding to different object types of objects to be pushed, causal inference techniques in machine learning can be used to determine the activity gain of each object type of sample push object in each existing activity in the target game based on the participation status of sample push objects of different object types in each existing activity. Thus, for each object type of sample push object, the reach of activity information with high activity gain is increased, and the reach of activity information with negative activity gain is reduced.
[0170] In some embodiments, when setting target activity information for different object types of objects to be pushed, a supervised learning algorithm can be used to determine the corresponding target activity information for declining sample objects. Rising sample objects can be used as positive samples and declining sample objects as negative samples. Manipulated characteristics such as game consumption, social interaction, and activity participation can be used as features. By learning the differences between positive and negative samples—that is, intervening in declining sample objects based on features with significant differences—the target activity information corresponding to declining samples can be set. For example, the target activity information can be set to increase recommendations for declining sample objects in friend recommendations, thereby making the feature distribution of declining sample objects more similar to that of rising sample objects.
[0171] In other embodiments, when setting target activity information for different object types of objects to be pushed to, a semi-supervised learning algorithm can be used to determine the corresponding target activity information for sample push objects other than those in the rising category. Rising sample push objects can be used as positive samples, and non-manipulation characteristics such as activity level, login channel, and object profile can be used as features. Through a semi-supervised learning algorithm, objects in sample push objects other than those in the rising category whose features are similar to those in the rising sample push objects can be transformed into rising sample push objects. For example, the target activity information can be set to information related to increasing login rewards for a limited time.
[0172] In other embodiments, when setting target activity information corresponding to different object types for push objects, for rising sample push objects, a complex network diffusion algorithm can also be used to determine the corresponding target activity information. A corresponding social network is constructed based on the interaction data of the sample push objects in the game. Relationship strength identification and label propagation algorithm (LPA) can be performed in the social network to determine the falling sample push objects with close relationships to the rising sample push objects. The target activity information is then set as a targeted task to invite the falling sample push objects to team up for games, thereby increasing the activity level of the corresponding falling sample push objects.
[0173] In one possible implementation, after determining the target activity information corresponding to each object type based on the above method, A / B testing of the target activity information can be conducted on a small scale to evaluate its effectiveness and feedback. Then, the target activity information can be optimized and adjusted based on the test results. After verification and optimization, each game object participating in the target game can be designated as the object to be pushed, and the target activity information can be pushed using the above method.
[0174] For example, during testing, target activity information was pushed to declining sample objects, but the desired effect of increasing their activity level was not achieved. Further analysis would then be conducted to determine which declining sample objects performed poorly and which performed well. The distances between the well-performing declining sample objects and other object types would be calculated to identify the object types closest to these objects and push the target activity information to them, thereby optimizing and adjusting the target activity information.
[0175] See Figure 12 This is a schematic diagram illustrating the process of setting activity information as provided in the embodiments of this application. Figure 12As shown, firstly, a periodic activity sequence for each sample push object is constructed. Then, frequency and trend features are extracted from each periodic activity sequence. These features are then concatenated to obtain the sample activity features for each sample push object. Based on these sample activity features, candidate push objects are clustered to obtain M initial clusters. Then, based on cluster dissimilarity, initial clusters with low dissimilarity are merged to obtain N target clusters. Each target cluster is then treated as an object type, resulting in N object classes. Corresponding activity information can then be set based on the characteristics of the activity sequence for each object type. This allows the information push method provided in this application to push targeted activity information to different object types, thereby increasing the game participation of the target objects.
[0176] Based on the above scheme, by analyzing the activity sequence, the object type of the target object can be determined, thus enabling more precise activity information push. This information push strategy is not only highly targeted, but also updates the activity sequence daily from the beginning of its construction. Therefore, it can capture the activity changes of the target object in the next cycle, allowing for real-time adjustment of the target object's object type to respond to dynamic changes in the target object's game behavior. Furthermore, compared with the unified activity information push strategy in related technologies, the information push method provided in this application embodiment has achieved better results in actual testing.
[0177] Based on the same inventive concept as the above-described method embodiments, this application also provides an information push device. For example... Figure 13 The information push device 1300 shown may include:
[0178] The activity determination unit 1301 is used to determine the periodic activity set of the target object under each period type within a set historical time period based on the historical operation data of the target object for the target game; wherein, different period types divide the set historical time period in different ways, and each periodic activity represents: when the set historical time period is divided into multiple time ranges according to a period type, the degree of game participation of the target object in one of the time ranges.
[0179] The activity sequence construction unit 1302 is used to construct the corresponding periodic activity sequence based on the periodic activity set under each periodic type.
[0180] The feature extraction unit 1303 is used to extract features from each periodic activity sequence to obtain the historical activity features of the object to be pushed.
[0181] The object type determination unit 1304 is used to determine the object type of the object to be pushed based on the historical activity characteristics; the object type is determined in advance by clustering based on the sample activity characteristics of multiple sample push objects.
[0182] The activity information push unit 1305 is used to push the target activity information corresponding to the object type to the object to be pushed, based on the preset mapping relationship between the object type and the target activity information.
[0183] In one possible implementation, when the feature extraction unit 1303 extracts features from each periodic activity sequence to obtain the historical activity features of the object to be pushed, it specifically performs the following operations for each periodic activity sequence: obtaining the periodic activity features corresponding to each periodic activity sequence, and concatenating the obtained periodic activity features to obtain the historical activity features of the object to be pushed; performing wavelet transform on a periodic activity sequence to extract the frequency features of the periodic activity sequence; obtaining the trend features of the periodic activity sequence by fitting a curve based on the activity change trend of the periodic activity sequence; and determining the periodic activity features of the periodic activity sequence based on the frequency features and the trend features.
[0184] In one possible implementation, the period type includes at least one of daily, weekly, and monthly. When the activity determination unit 1301 determines the periodic activity set of the target object under each period type within a set historical time period based on the target object's historical operation data for the target game, it is specifically used for: when the period type includes daily, determining the daily activity set of the target object within the set historical time period based on the target object's historical operation data for the target game; the daily activity set includes the daily activity of the target object for each day within the set historical time period; when the period type includes weekly, determining the weekly activity set of the target object within the set historical time period based on the target object's historical operation data for the target game; the weekly activity set includes the weekly activity of the target object for each week within the set historical time period; when the period type includes monthly, determining the monthly activity set of the target object within the set historical time period based on the target object's historical operation data for the target game; the monthly activity set includes the monthly activity of the target object for each month within the set historical time period.
[0185] In one possible implementation, when the activity sequence construction unit 1302 constructs the corresponding periodic activity sequence based on the periodic activity sets under each periodic type, it is specifically used to: construct a daily activity sequence based on each daily activity included in the daily activity set when the periodic activity set includes a daily activity set; construct a weekly activity sequence based on each weekly activity included in the weekly activity set when the periodic activity set includes a weekly activity set; and construct a monthly activity sequence based on each monthly activity included in the monthly activity set when the periodic activity set includes a monthly activity set.
[0186] In one possible implementation, the object type is determined by the object type determination unit 1304 through the following method: acquiring the sample activity features of multiple sample push objects; the sample activity features characterize the activity change trend of the sample push objects within a set historical time period; clustering the multiple sample push objects based on the similarity between the sample activity features to obtain multiple initial clusters; determining the feature difference degree between each pair of sample push objects based on the game interaction data of each pair of sample push objects; the information included in the game interaction data is different from that in the historical operation data; determining the cluster difference degree between each pair of initial clusters based on the feature difference degree between each pair of sample push objects; merging the initial clusters with a cluster difference degree less than a preset difference threshold to obtain multiple target clusters, and treating each target cluster as an object type.
[0187] In one possible implementation, when the object type determination unit 1304 treats each target cluster as an object type, it specifically performs the following operations for each target cluster: dividing the set historical time period into an early stage, a middle stage, and a late stage; determining the middle stage activity change rate and the late stage activity change rate for each sample push object based on the sample activity sequence of each sample push object included in a target cluster; the middle stage activity change rate characterizes the degree of activity change in the middle stage relative to the early stage, and the late stage activity change rate characterizes the degree of activity change in the late stage relative to the middle stage; and determining the object type corresponding to the target cluster based on the middle stage activity change rate and the late stage activity change rate of each sample push object included in the target cluster.
[0188] In one possible implementation, before determining the cluster difference between each two initial clusters based on the feature difference between each pair of sample push objects, the object type determination unit 1304 is further configured to: determine a cluster evaluation value for each initial cluster based on the feature difference between each pair of sample push objects; the cluster evaluation value characterizes the degree of feature difference between each sample push object in the corresponding initial cluster; determine a cluster evaluation value based on the cluster evaluation values of each of the multiple initial clusters, and determine that the cluster evaluation value is not less than a preset evaluation threshold; the cluster evaluation value characterizes the degree of feature difference between the initial clusters.
[0189] For ease of description, the above sections are divided into modules (or units) according to their functions and described separately. In the embodiments of this application, the terms "module" or "unit" refer to a computer program or part of a computer program with a predetermined function, which works with other related parts to achieve a predetermined goal, and can be implemented wholly or partially using software, hardware (such as processing circuitry or memory), or a combination thereof. Similarly, a processor (or multiple processors or memory) can be used to implement one or more modules or units. Furthermore, each module or unit can be part of an overall module or unit that includes the functions of that module or unit.
[0190] Having introduced the information push method and apparatus according to exemplary embodiments of this application, we will now introduce a computer device according to another exemplary embodiment of this application.
[0191] Those skilled in the art will understand that various aspects of this application can be implemented as a system, method, or program product. Therefore, various aspects of this application can be specifically implemented in the following forms: a completely hardware implementation, a completely software implementation (including firmware, microcode, etc.), or a combination of hardware and software implementations, collectively referred to herein as a "circuit," "module," or "system."
[0192] Based on the same inventive concept as the above-described method embodiments, this application also provides a computer device. In one embodiment, the computer device may be a server, such as... Figure 1 The server 120 is shown. In this embodiment, the computer device 1400 is structured as follows: Figure 14 As shown, it may include at least a memory 1401, a communication module 1403, and at least one processor 1402.
[0193] The memory 1401 is used to store computer programs executed by the processor 1402. The memory 1401 may mainly include a program storage area and a data storage area. The program storage area may store the operating system and programs required to run instant messaging functions, etc.; the data storage area may store various instant messaging information and operation instruction sets, etc.
[0194] Memory 1401 may be volatile memory, such as random-access memory (RAM); memory 1401 may also be non-volatile memory, such as read-only memory, flash memory, hard disk drive (HDD), or solid-state drive (SSD); or memory 1401 may be any other medium capable of carrying or storing a desired computer program having the form of instructions or data structures and accessible by a computer, but is not limited thereto. Memory 1401 may be a combination of the above-described memories.
[0195] The processor 1402 may include one or more central processing units (CPUs) or digital processing units, etc. The processor 1402 is used to implement the aforementioned information push method when calling computer programs stored in the memory 1401.
[0196] The communication module 1403 is used to communicate with terminal devices and other servers.
[0197] This application embodiment does not limit the specific connection medium between the memory 1401, communication module 1403, and processor 1402. This application embodiment... Figure 14 The memory 1401 and the processor 1402 are connected via a bus 1404, and the bus 1404 is in Figure 14 The diagram uses thick lines to describe the connections between other components; these are for illustrative purposes only and should not be considered limiting. The 1404 bus can be divided into address bus, data bus, control bus, etc. For ease of description, Figure 14 It is described using only a thick line, but does not indicate that there is only one bus or one type of bus.
[0198] The memory 1401 stores a computer storage medium, which stores computer-executable instructions for implementing the information push method of this application embodiment. The processor 1402 is used to execute the above-described information push method, such as... Figure 2 As shown.
[0199] In another embodiment, the computer device can also be other computer devices, such as... Figure 1 The terminal device 110 is shown. In this embodiment, the structure of the computer device can be as follows: Figure 15As shown, it includes components such as: communication component 1510, memory 1520, display unit 1530, camera 1540, sensor 1550, audio circuit 1560, Bluetooth module 1570, processor 1580, etc.
[0200] The communication component 1510 is used to communicate with the server. In some embodiments, it may include a Wireless Fidelity (WiFi) module, which is a short-range wireless transmission technology, and the electronic device can send and receive information through the WiFi module.
[0201] The memory 1520 can be used to store software programs and data. The processor 1580 executes various functions of the terminal device 110 and performs data processing by running the software programs or data stored in the memory 1520. The memory 1520 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device. The memory 1520 stores an operating system that enables the terminal device 110 to run. In this application, the memory 1520 may store the operating system and various applications, and may also store a computer program that executes the information push method of the embodiments of this application.
[0202] The display unit 1530 can also be used to display information input by an object or information provided to an object, as well as a graphical user interface (GUI) for various menus of the terminal device 110. Specifically, the display unit 1530 may include a display screen 1532 disposed on the front of the terminal device 110. The display screen 1532 may be configured as a liquid crystal display, a light-emitting diode, or the like.
[0203] The display unit 1530 can also be used to receive input digital or character information and generate signal inputs related to object settings and function control of the terminal device 210. Specifically, the display unit 1530 may include a touch screen 1531 disposed on the front of the terminal device 110, which can collect touch operations on or near the object, such as clicking a button, dragging a scroll box, etc.
[0204] The touchscreen 1531 can be placed on top of the display screen 1532, or the touchscreen 1531 and the display screen 1532 can be integrated to realize the input and output functions of the terminal device 210. After integration, it can be referred to as a touch display screen. In this application, the display unit 1530 can display the application and the corresponding operation steps.
[0205] Camera 1540 can be used to capture still images, and objects can publish images captured by camera 1540 through an application. There can be one or multiple cameras 1540. An optical image of an object is generated through a lens and projected onto a photosensitive element. The photosensitive element can be a charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, which is then transmitted to processor 1580 to be converted into a digital image signal.
[0206] The terminal device may also include at least one sensor 1550, such as an accelerometer 1551, a proximity sensor 1552, a fingerprint sensor 1553, and a temperature sensor 1554. The terminal device may also be equipped with other sensors such as a gyroscope, barometer, hygrometer, thermometer, infrared sensor, light sensor, and motion sensor.
[0207] Audio circuitry 1560, speaker 1561, and microphone 1562 provide an audio interface between the device and terminal device 110. Audio circuitry 1560 converts received audio data into electrical signals, which are then transmitted to speaker 1561, where they are converted into sound signals for output. Terminal device 210 may also be equipped with volume buttons for adjusting the volume of the sound signal. On the other hand, microphone 1562 converts collected sound signals into electrical signals, which are then received by audio circuitry 1560, converted into audio data, and output to communication component 1510 for transmission to, for example, another terminal device 210, or to memory 1520 for further processing.
[0208] The Bluetooth module 1570 is used to interact with other Bluetooth devices that also have a Bluetooth module via the Bluetooth protocol. For example, a terminal device can establish a Bluetooth connection with a wearable electronic device (such as a smartwatch) that also has a Bluetooth module through the Bluetooth module 1570, thereby exchanging data.
[0209] The processor 1580 is the control center of the terminal device, connecting various parts of the terminal through various interfaces and lines. It executes various functions and processes data by running or executing software programs stored in the memory 1520 and calling data stored in the memory 1520. In some embodiments, the processor 1580 may include one or more processing units; the processor 1580 may also integrate an application processor and a baseband processor, wherein the application processor mainly handles the operating system, user interface, and applications, and the baseband processor mainly handles wireless communication. It is understood that the baseband processor may not be integrated into the processor 1580. In this application, the processor 1580 can run the operating system, applications, user interface display and touch response, and the information push method of this embodiment. Furthermore, the processor 1580 is coupled to the display unit 1530.
[0210] Furthermore, it should be noted that in the specific embodiments of this application, object data related to information push and so on is involved. When the above embodiments of this application are applied to specific products or technologies, permission or consent from the object is required, and the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0211] In some possible implementations, various aspects of the information push method provided in this application can also be implemented in the form of a program product, which includes a computer program. When the program product is run on a computer device, the computer program is used to cause the computer device to perform the steps of the information push method according to the various exemplary embodiments of this application described above. For example, the computer device can perform actions such as... Figure 2 The steps are shown in the figure.
[0212] The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (a non-exhaustive list) of readable storage media include: electrical connections having one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0213] The program product of the embodiments of this application may employ a portable compact disc read-only memory (CD-ROM) and include a computer program, and may run on an electronic device. However, the program product of this application is not limited thereto. In this document, the readable storage medium may be any tangible medium that contains or stores a program that may be used by or in conjunction with a command execution system, apparatus, or device.
[0214] A readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, carrying a readable computer program. This propagated data signal may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting a program for use by or in conjunction with a command execution system, apparatus, or device.
[0215] Computer programs contained on readable media may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.
[0216] Computer programs for performing the operations of this application can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The computer program can execute entirely on the user's computer device, partially on the user's computer device, as a standalone software package, partially on the user's computer device and partially on a remote computer device, or entirely on a remote computer device. In cases involving remote computer devices, the remote computer device can be connected to the user's computer device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer device (e.g., via the Internet using an Internet service provider).
[0217] It should be noted that although several units or sub-units of the device have been mentioned in the detailed description above, this division is merely exemplary and not mandatory. In fact, according to embodiments of this application, the features and functions of two or more units described above can be embodied in one unit. Conversely, the features and functions of one unit described above can be further divided and embodied by multiple units.
[0218] Furthermore, although the operations of the method of this application are described in a specific order in the accompanying drawings, this does not require or imply that these operations must be performed in that specific order, or that all the operations shown must be performed to achieve the desired result. Additionally or alternatively, certain steps may be omitted, multiple steps may be combined into one step, and / or one step may be broken down into multiple steps.
[0219] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing a computer-usable computer program.
[0220] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will 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 apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, produce a machine 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.
[0221] These computer program commands may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the commands stored in the computer-readable storage medium produce an article of manufacture including command 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.
[0222] These computer program commands can also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing the commands executed on the computer or other programmable 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.
[0223] Although preferred embodiments of this 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 this application.
[0224] Obviously, those skilled in the art can make various modifications and variations to this application without departing from the spirit and scope of this application. Therefore, if such modifications and variations fall within the scope of the claims of this application and their equivalents, this application also intends to include such modifications and variations.
Claims
1. An information push method, characterized in that, include: Based on the historical operation data of the target object for the target game, the periodic activity set of the target object under each period type within a set historical time period is determined respectively; wherein, different period types divide the set historical time period in different ways, and each periodic activity represents: when the set historical time period is divided into multiple time ranges according to a period type, the degree of game participation of the target object in a time range. Based on the periodic activity sets under each periodic type, a periodic activity sequence corresponding to the corresponding periodic type is constructed, and feature extraction is performed on each periodic activity sequence to obtain the historical activity features of the object to be pushed. Based on the historical activity characteristics, the object type of the object to be pushed is determined; the object type is determined in advance by clustering based on the sample activity characteristics of multiple sample push objects. Based on the preset mapping relationship between object types and target activity information, the target activity information corresponding to the object type is pushed to the object to be pushed.
2. The method according to claim 1, characterized in that, The step of extracting features from each periodic activity sequence to obtain the historical activity features of the target object includes: For each periodic activity sequence, perform the following operations to obtain the periodic activity features corresponding to each periodic activity sequence, and then concatenate the obtained periodic activity features to obtain the historical activity features of the object to be pushed: Wavelet transform is performed on a periodic activity sequence to extract the frequency features of the periodic activity sequence; Based on the activity change trend of the aforementioned periodic activity sequence, the trend characteristics of the aforementioned periodic activity sequence are obtained by fitting a curve. Based on the frequency characteristics and the trend characteristics, the periodic activity characteristics of the periodic activity sequence are determined.
3. The method according to claim 1 or 2, characterized in that, The cycle type includes at least one of daily, weekly, and monthly; The process of determining the periodic activity set of the target object for each periodic type within a set historical time period, based on the historical operation data of the target object for the target game, includes: When the period type includes day and hour, based on the historical operation data of the target object for the target game, the daily activity set of the target object within a set historical time period is determined; the daily activity set includes the daily activity of the target object for each day within the set historical time period. When the period type includes a week, based on the historical operation data of the target object for the target game, the weekly activity set of the target object within a set historical time period is determined; the weekly activity set includes the weekly activity of the target object for each week within the set historical time period. When the period type includes a month, the monthly activity set of the target object within a set historical time period is determined based on the historical operation data of the target object for the target game; the monthly activity set includes the monthly activity of the target object for each month within the set historical time period.
4. The method according to claim 3, characterized in that, The step of constructing a cycle activity sequence corresponding to each cycle type based on the cycle activity set under each cycle type includes: When the periodic activity set includes a daily activity set, a daily activity sequence is constructed based on each daily activity included in the daily activity set; When the periodic activity set includes a weekly activity set, a weekly activity sequence is constructed based on each weekly activity included in the weekly activity set; When the periodic activity set includes a monthly activity set, a monthly activity sequence is constructed based on the monthly activities included in the monthly activity set.
5. The method according to claim 1 or 2, characterized in that, The object type is determined by the following method: Obtain the sample activity characteristics of each of multiple sample push objects; the sample activity characteristics characterize the activity change trend of the sample push objects within a set historical time period. Based on the similarity between the active features of each sample, multiple sample push objects are clustered to obtain multiple initial clusters; Based on the game interaction data of each of the multiple sample push objects, the feature difference degree between each pair of sample push objects is determined; The information included in the game interaction data is different from that included in the historical operation data; Based on the feature difference between each pair of sample push objects, determine the cluster difference between each pair of initial clusters; Initial clusters with cluster differences less than a preset difference threshold are merged to obtain multiple target clusters, and each target cluster is treated as an object type.
6. The method according to claim 5, characterized in that, Treat each target cluster as a separate object type, including: For each target cluster, perform the following operations: The set historical time period is divided into early, middle and late stages. Based on the sample activity sequence of each sample push object included in a target cluster, the mid-term activity change rate and late-term activity change rate of each sample push object are determined. The mid-term activity change rate represents the degree of activity change in the mid-term relative to the early stage, and the late-term activity change rate represents the degree of activity change in the late stage relative to the mid-term. Based on the mid-term and late-term activity change rates of each sample push object included in the target cluster, the object type corresponding to the target cluster is determined.
7. The method according to claim 5, characterized in that, Before determining the cluster difference between two initial clusters based on the feature difference between each pair of sample push objects, the method further includes: Based on the feature difference between every two sample push objects, a cluster evaluation value is determined for each initial cluster; the cluster evaluation value characterizes the degree of feature difference between each sample push object in the corresponding initial cluster. Based on the cluster evaluation values of each of the multiple initial clusters, a cluster evaluation value is determined, and the cluster evaluation value is determined to be no less than a preset evaluation threshold; the cluster evaluation value characterizes the degree of feature difference between the initial clusters.
8. An information push device, characterized in that, include: The activity determination unit is used to determine the periodic activity set of the target object under each period type within a set historical time period based on the historical operation data of the target object for the target game. The period type divides the set historical time period in different ways, and each periodic activity represents the degree of game participation of the target object in a time range when the set historical time period is divided into multiple time ranges according to a period type. An activity sequence construction unit is used to construct a corresponding periodic activity sequence based on the periodic activity set under each periodic type. The feature extraction unit is used to extract features from the activity sequences of each period to obtain the historical activity features of the object to be pushed. The object type determination unit is used to determine the object type to which the object to be pushed belongs based on the historical activity characteristics; the object type is determined in advance by clustering based on the sample activity characteristics of multiple sample push objects. The activity information push unit is used to push the target activity information corresponding to the object type to the object to be pushed, based on the preset mapping relationship between the object type and the target activity information.
9. A computer device, characterized in that, It includes a processor and a memory, wherein the memory stores program code that, when executed by the processor, causes the processor to perform the steps of the method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, It includes program code that, when run on a computer device, causes the computer device to perform the steps of the method according to any one of claims 1 to 7.