Application sequence prediction method and device, electronic equipment and storage medium

By using historical use behavior sequences and state transfer matrices on marginalized devices, combining matrix transfer algorithms and segmented statistical algorithms to predict the application sequences that users will use, solving the problem of deploying neural network models and achieving efficient and accurate predictions.

CN120197737APending Publication Date: 2025-06-24GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
View PDF 0 Cites 4 Cited by

Patent Information

Application Number
CN202311788494.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-12-22
Publication Date
2025-06-24

AI Technical Summary

Technical Problem

On marginalized devices with limited computing resources, it is difficult to deploy neural network models to predict the sequence of applications that users will use, and it is difficult to take into account both the user's short-term interests and the long-term interests.

Method used

By obtaining the historical usage behavior sequence of the target application, establishing a first-order state transfer matrix, determining the reference application and application collection, and combining the matrix transfer algorithm and segmented statistical algorithm, predicting the application sequence that users will use.

Benefits of technology

The power consumption required for computing is reduced, and the problem of deploying neural network models on marginalized devices is solved. At the same time, the user's short-term interests and long-term interests are taken into account, and accurate application sequence prediction is achieved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120197737A_ABST
    Figure CN120197737A_ABST
Patent Text Reader

Abstract

The invention discloses an application sequence prediction method and device, electronic equipment and a storage medium. The method comprises the steps of obtaining a historical use behavior sequence corresponding to a target application program; establishing a first-order state transition matrix based on the historical use behavior sequence; determining a reference application program from the historical use behavior sequence, and obtaining an application program set corresponding to the reference application program from the first-order state transition matrix; determining a reference application program sequence based on the historical use behavior sequence; and splicing the application program set with the reference application program sequence to obtain a target application program set, and determining a second number of application programs from the target application program set as an application program sequence prediction result. According to the method, the application program sequence to be used by the user is predicted by directly combining the matrix transfer algorithm and the segmentation statistical algorithm, a neural network model does not need to be introduced for prediction, and the problem of deploying the neural network model on marginalized equipment with limited computing power resources is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of intelligent recommendation, and more specifically, to a method, apparatus, electronic device, and storage medium for predicting an application program sequence. Background Art

[0002] With the popularity and prevalence of the mobile Internet, mobile application programs have increasingly become an indispensable part of people's lives. By analyzing and modeling the behavior of users using application programs, the application programs that users will use can be predicted. In related technologies, in order to improve the prediction effect, a neural network model can be used to be deployed on the server side for modeling and prediction. This method can use a large model for more complex calculations, thereby improving the prediction accuracy. However, for some marginalized devices with limited computing power resources, there are significant deployment difficulties with this method. Summary of the Invention

[0003] This application proposes a method, apparatus, electronic device, and storage medium for predicting an application program sequence to improve the above problems.

[0004] In a first aspect, an embodiment of this application provides a method for predicting an application program sequence, which can be applied to an electronic device. The method includes: obtaining a historical usage behavior sequence corresponding to a target application program, where the historical usage behavior sequence includes multiple application program click events with a chronological order; establishing a first-order state transition matrix based on the historical usage behavior sequence, where the first-order state transition matrix includes state transition probabilities corresponding to each application program click event; determining a reference application program from the historical usage behavior sequence, and obtaining an application program set corresponding to the reference application program from the first-order state transition matrix, where the application program set includes a first number of application programs corresponding to the largest state transition probabilities of the reference application program; determining a reference application program sequence based on the historical usage behavior sequence, where the reference application program sequence includes at least one application program with a click time closest to the current time; splicing the application program set and the reference application program sequence to obtain a target application program set, and determining a second number of application programs from the target application program set as the application program sequence prediction result.

[0005] Second aspect, embodiments of the present application provide an application sequence prediction device that can run on an electronic device. The device includes: a historical data acquisition module for acquiring a historical usage behavior sequence corresponding to a target application, where the historical usage behavior sequence includes a plurality of application click events in chronological order; a state transition matrix establishment module for establishing a first-order state transition matrix based on the historical usage behavior sequence, where the first-order state transition matrix includes state transition probabilities corresponding to each application click event; an application set acquisition module for determining a reference application from the historical usage behavior sequence and acquiring an application set corresponding to the reference application from the first-order state transition matrix, where the application set includes the first number of applications with the highest state transition probabilities corresponding to the reference application; a reference application sequence determination module for determining a reference application sequence based on the historical usage behavior sequence, where the reference application sequence includes at least one application with the click time closest to the current time; and a prediction module for splicing the application set and the reference application sequence to obtain a target application set, and determining the second number of applications from the target application set as the application sequence prediction result.

[0006] Third aspect, the present application provides an electronic device, including one or more processors and a memory; one or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs are configured to execute the method of the first aspect above.

[0007] Fourth aspect, the present application provides a computer-readable storage medium, in which program code is stored, and when the program code runs, it executes the method of the first aspect above.

[0008] An application sequence prediction method, device, electronic device, and storage medium provided by the present application. This method obtains a historical usage behavior sequence corresponding to a target application, where the historical usage behavior sequence includes multiple application click events with chronological order; establishes a first-order state transition matrix based on the historical usage behavior sequence, and the first-order state transition matrix includes state transition probabilities corresponding to each application click event; determines a reference application from the historical usage behavior sequence, and obtains an application set corresponding to the reference application from the first-order state transition matrix, where the application set includes the first number of applications with the highest state transition probabilities corresponding to the reference application; determines a reference application sequence based on the historical usage behavior sequence, and the reference application sequence includes at least one application with the click time closest to the current time; splices the application set and the reference application sequence to obtain a target application set, and determines the second number of applications from the target application set as the application sequence prediction result. Thus, through the above method, it is possible to directly combine the matrix transfer algorithm and the segmented statistical algorithm to predict the application sequence that the user will use, without introducing a neural network model for prediction, reducing the power consumption required for calculation, and solving the problem of deploying a neural network model on marginalized devices with limited computing resources. At the same time, by combining the matrix transfer algorithm and the segmented statistical algorithm, it is possible to take into account both the short-term and long-term interests of the user, so as to accurately predict the application sequence that the user will use. BRIEF DESCRIPTION OF THE DRAWINGS

[0009] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for the description of the embodiments. Obviously, the following drawings are only some embodiments of the present application. For those skilled in the art, without creative efforts, other drawings can be obtained based on these drawings.

[0010] Figure 1 FIG. shows a flowchart of an application sequence prediction method provided by an embodiment of the present application.

[0011] Figure 2 FIG. shows an example diagram of a historical usage behavior sequence corresponding to a target application provided by an embodiment of the present application.

[0012] Figure 3 FIG. shows an example diagram of a first-order state transition matrix provided by an embodiment of the present application.

[0013] Figure 4 FIG. shows an example diagram of an application set corresponding to a reference application provided by an embodiment of the present application.

[0014] Figure 5 The schematic diagram of the process for determining the reference application from the historical usage behavior sequence provided by the embodiments of the present application is shown.

[0015] Figure 6 The schematic diagram of splicing the application set with the reference application sequence provided by the embodiments of the present application is shown.

[0016] Figure 7 The flowchart of a method for predicting an application sequence provided by another embodiment of the present application is shown.

[0017] Figure 8 The flowchart of a method for predicting an application sequence provided by another embodiment of the present application is shown.

[0018] Figure 9 The schematic diagram of the effect of segmenting the first usage behavior sequence according to the window size provided by the embodiments of the present application is shown.

[0019] Figure 10 The flowchart of a method for predicting an application sequence provided by still another embodiment of the present application is shown.

[0020] Figure 11 The structural block diagram of an apparatus for predicting an application sequence provided by the embodiments of the present application is shown.

[0021] Figure 12 The structural block diagram of an electronic device provided by the embodiments of the present application is shown.

[0022] Figure 13 The storage unit for storing or carrying the program code for implementing the method for predicting an application sequence according to the embodiments of the present application is shown. Detailed implementation manners

[0023] In order to enable those skilled in the art to better understand the solutions of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present application.

[0024] With the popularization and prevalence of the mobile Internet, mobile applications have increasingly become an indispensable part of people's lives. By analyzing and modeling users' behaviors of using applications, the applications that users will use can be predicted. In related technologies, in order to improve the prediction effect, a neural network model can be used to be deployed on the server side for modeling and prediction. This method can use large models for more complex calculations, thereby improving the prediction accuracy. However, for some marginal devices with limited computing power resources, such as Internet of Things (IOT) devices like smart watches, their performance is low, and such devices are restricted by energy storage devices such as batteries. They often have strict power consumption limitations on internal algorithms and software, and there are significant difficulties in model deployment.

[0025] Through long-term research, the inventors found that it is possible to obtain the historical usage behavior sequence corresponding to the target application, where the historical usage behavior sequence includes multiple application click events with chronological order; establish a first-order state transition matrix based on the historical usage behavior sequence, and the first-order state transition matrix includes the state transition probability corresponding to each application click event; determine a reference application from the historical usage behavior sequence, and obtain the application set corresponding to the reference application from the first-order state transition matrix. The application set includes the first number of applications with the highest state transition probability corresponding to the reference application; determine a reference application sequence based on the historical usage behavior sequence, and the reference application sequence includes at least one application with the click time closest to the current time; splice the application set and the reference application sequence to obtain a target application set, and determine the second number of applications from the target application set as the prediction result of the application sequence. Thus, through the above method, it is realized that the matrix transfer algorithm and the segmented statistical algorithm can be directly combined to predict the application sequence that the user will use, without introducing a neural network model for prediction, reducing the power consumption required for calculation, and solving the problem of deploying a neural network model on marginal devices with limited computing power resources. At the same time, by combining the matrix transfer algorithm and the segmented statistical algorithm, it is possible to take into account both the short-term interests and long-term interests of users, thereby accurately predicting the application sequence that the user will use.

[0026] Therefore, in order to improve the above problems, the inventors proposed an application sequence prediction method, device, electronic device, and computer-readable storage medium provided in this application, which can directly combine the matrix transfer algorithm and the segmented statistical algorithm to predict the application sequence that the user will use, without introducing a neural network model for prediction, reducing the power consumption required for calculation, and solving the problem of deploying a neural network model on marginal devices with limited computing power resources.

[0027] For better understanding of the solution described in the embodiments of the present application, the following briefly describes the terms involved in the description process of the embodiments of the present application:

[0028] Concat (Concatenate the sequences): Represents sequence concatenation.

[0029] The following will specifically describe the embodiments of the present application with reference to the accompanying drawings.

[0030] Please refer to Figure 1 , which shows a flowchart of an application program sequence prediction method provided by an embodiment of the present application. This embodiment provides an application program sequence prediction method, which can be applied to an electronic device. The electronic device can be a mobile phone, a computer, a tablet or a wearable electronic device (such as a smart bracelet, a smart watch, etc.). The specific type of the electronic device can be not limited. The method includes:

[0031] Step S110: Obtain the historical usage behavior sequence corresponding to the target application program, where the historical usage behavior sequence includes multiple application program click events in chronological order.

[0032] In this embodiment, the electronic device may include multiple APPs (Applications). The target application program represents a set of programs that have been opened within a preset time period. Among them, being opened can be understood as the current state of the target application program being in an open state or a closed state.

[0033] The preset time period can be understood as the time length traced back from the time node when the prediction algorithm runs. The specific value of the preset time period can be not limited. For example, the preset time period can be a value such as the past 24 hours or the past week. Optionally, the target application program can be some of the multiple application programs or all of the multiple application programs.

[0034] Optionally, the programs in the target application program can be opened repeatedly, and when counting the target application program, it is the type of the application program that is counted. For example, assume that the user has opened application program A, application program B, application program C, and application program A successively. Then the target application program includes application program A, application program B, and application program C, that is, application program A will not be counted twice.

[0035] The historical usage behavior sequence corresponding to the target application is composed of multiple application click events with chronological order. As an implementation, multiple application click events corresponding to the target application within a preset time period can be obtained; and these multiple application click events can be arranged in chronological order to obtain the historical usage behavior sequence corresponding to the target application. Optionally, in the historical usage behavior sequence corresponding to the target application, the same application can appear multiple times.

[0036] Exemplarily, assume that the user clicks on Application A, Application B, Application C, Application D, Application A, and Application C among multiple applications successively. Then, the following Figure 2 historical usage behavior sequence including Application A, Application B, Application C, Application D, Application A, and Application C can be obtained. Figure 2 The length L of the historical usage behavior sequence in this example is 6 (assuming that the chronological order of the historical usage behavior sequence is represented from left to right, denoted as L, and the farther to the right on the time axis means closer to the current time), and it is composed of the target application set ABCD.

[0037] Optionally, the historical usage behavior sequence of the target application can also include the time information associated with each application click event. These associated time information can include the time of clicking the App, the time of exiting the App, the usage duration of the App, the usage frequency of the APP, etc.

[0038] Step S120: Establish a first-order state transition matrix based on the historical usage behavior sequence, where the first-order state transition matrix includes the state transition probability corresponding to each application click event.

[0039] In order to take into account the short-term and long-term interests of users, so as to accurately predict the application sequence that the user will use. As an implementation, the probability statistics of the state transition corresponding to each application click event in the historical usage behavior sequence can be performed, and the statistical results can be filled into the transition probability matrix to obtain the first-order state transition matrix. Among them, the state transition corresponding to the application click event can be understood as that when the user clicks on an application and then clicks on the next other application, the application in the foreground running state changes.

[0040] As mentioned above Figure 2Taking the example shown, assume that the user has used four apps, namely A, B, C, and D, within a day. Then these four apps can be regarded as four different states, and S (representing the set of target application programs) is defined as {A, B, C, D}. The historical usage behavior sequence can be expressed as {A, B, C, D, A, C}, that is, the user has successively used A, B, C, D, A, and C. Then, according to the historical usage behavior sequence, the state transition probability corresponding to each application click event can be calculated:

[0041] P(A|A) = 0, because the user did not use A twice consecutively;

[0042] P(A|B) = 0, because the user did not use A after using B;

[0043] P(A|C) = 0, because the user did not use A after using C;

[0044] P(A|D) = 1, because the user used A after using D;

[0045] P(B|A) = 1 / 2, because there is a half probability that the user uses B after using A;

[0046] P(B|B) = 0, because the user did not use B twice consecutively;

[0047] P(B|C) = 0, because the user did not use B after using C;

[0048] P(B|D) = 0, because the user did not use B after using D;

[0049] P(C|A) = 1 / 2, because there is a half probability that the user uses C after using A;

[0050] P(C|B) = 1, because the user used C after using B;

[0051] P(C|C) = 0, because the user did not use C twice consecutively;

[0052] P(C|D) = 0, because the user did not use C after using D;

[0053] P(D|A) = 0, because the user did not use D after using A;

[0054] P(D|B) = 0, because the user did not use D after using B;

[0055] P(D|C) = 1, because the user used D after using C;

[0056] P(D|D) = 0, because the user did not use D twice consecutively.

[0057] Further, the calculated state transition probability can be filled into the transition probability matrix, and then a first-order state transition matrix as shown in Figure 3 is obtained. In this embodiment, the transition probability matrix can be an n×n matrix, where n represents the number of elements in the target application program set S. The element in the i-th row and j-th column of this matrix represents the transition probability from state i to state j.

[0058] Step S130: Determine a reference application program from the historical usage behavior sequence, and obtain the application program set corresponding to the reference application program from the first-order state transition matrix. The application program set includes the first number of application programs with the largest state transition probability corresponding to the reference application program.

[0059] In this embodiment, the reference application program represents the application program that was clicked most recently (referring to the click time being the closest to the current time) in the historical usage behavior sequence corresponding to the target application program.

[0060] As an implementation manner, a reference application program (for ease of description, denoted as I 近 ) can be determined from the historical usage behavior sequence, and the application program set corresponding to the reference application program (denoted as A 转TOPK ) can be obtained from the first-order state transition matrix. The application program set includes the first number (denoted as K) of application programs with the largest state transition probability corresponding to the reference application program. The first number is a hyperparameter, and the specific value can be not limited. For example, the first number can be at least one.

[0061] In this embodiment, the application program set (A 转TOPK ) can represent the short-term interest of the user in using the application program.

[0062] In Figure 2 the example shown, I 近 is the application program C, and the K apps in A 转TOPK are in the order from left to right with the transition probability from low to high. Exemplarily, assuming K is 2, referring to Figure 3 , then the K apps in A 转TOPK are the application program A and the application program B (as shown in Figure 4 ).

[0063] Step S140: Determine a reference application program sequence based on the historical usage behavior sequence. The reference application program sequence includes at least one application program whose click time is closest to the current time.

[0064] In this embodiment, the reference application sequence represents a sequence composed of one or more applications that are closer to the current access time in the historical usage behavior sequence. That is, the reference application sequence includes at least one application with the click time closest to the current time.

[0065] As an implementation, the historical usage behavior sequence can be segmented according to the window size to obtain a first usage behavior sequence and a second usage behavior sequence, where the length of the second usage behavior sequence is the same as the window size; then the second usage behavior sequence can be used as the reference application sequence. The window size is a hyperparameter, and the specific value can be not limited.

[0066] In this embodiment, the reference application sequence can represent the long-term interests of the user in using applications.

[0067] In order to reduce waste of computing resources, as an implementation, the historical usage behavior sequence can be filtered according to the blacklist to eliminate the APPs that do not participate in the algorithm operation. The blacklist represents a set of pre-set APPs that do not participate in the operation, which can include two parts, namely the custom blacklist and the built-in blacklist. The custom blacklist can be understood as the blacklist submitted by downstream developers who call the application sequence prediction method provided in this application, and the built-in blacklist can be understood as the blacklist pre-set by algorithm developers.

[0068] In a specific application scenario, assume that Figure 2 the sequence obtained after filtering the historical usage behavior sequence L shown by the blacklist is A, as Figure 5 shown, the subsequence with the length of A2 at the nearest time can be segmented from the sequence A according to windows_size, and the remaining part is defined as A1, that is, A = concat(A1, A2), len(A2) = windows_size, len(A1) = len(A) - windows_size. At this time, the reference application sequence is A2.

[0069] Step S150: Concatenate the application set and the reference application sequence to obtain a target application set, and determine the second number of applications from the target application set as the application sequence prediction result.

[0070] As an implementation, the application set and the second usage behavior sequence can be concatenated to obtain a target application set. Specifically, in the above example, as Figure 6 shown, A can be concatenated at the beginning (right side) of the A2 sequence. 转TOPKThe apps in the set (regarded as the most important apps in terms of time, and the closer to the right, the closer to the current time), obtain a sequence (i.e., the target application set): A2 = concat(A2, A 转TOPK ). It should be noted that A2 here is the newly concatenated sequence.

[0071] As an implementation manner, a second number of applications can be determined from the target application set as the application sequence prediction result. In this implementation manner, the specific value of the second number may not be limited, and the second number is greater than or equal to the first number.

[0072] At the same time, in this implementation manner, directly predicting the application sequence to be accessed by the user on the electronic device side can also avoid the communication delay problem between the electronic device and the server due to poor network conditions.

[0073] The application sequence prediction method provided in this embodiment obtains the historical usage behavior sequence corresponding to the target application, where the historical usage behavior sequence includes multiple application click events with time sequence; establishes a first-order state transition matrix based on the historical usage behavior sequence, and the first-order state transition matrix includes the state transition probability corresponding to each application click event; determines a reference application from the historical usage behavior sequence, and obtains the application set corresponding to the reference application from the first-order state transition matrix, where the application set includes the first number of applications with the largest state transition probability corresponding to the reference application; determines a reference application sequence based on the historical usage behavior sequence, where the reference application sequence includes at least one application with the click time closest to the current time; splices the application set and the reference application sequence to obtain a target application set, and determines a second number of applications from the target application set as the application sequence prediction result. Thus, through the above method, it is possible to directly combine the matrix transfer algorithm and the segmented statistical algorithm to predict the application sequence that the user will use, without introducing a neural network model for prediction, reducing the power consumption required for calculation, and solving the problem of deploying a neural network model on marginalized devices with limited computing resources.

[0074] At the same time, by combining the matrix transfer algorithm and the segmented statistical algorithm, it is possible to take into account both the short-term interests and long-term interests of the user, so as to accurately predict the application sequence that the user will use.

[0075] Please refer to Figure 7, which shows a flowchart of an application sequence prediction method provided by another embodiment of the present application. This embodiment provides an application sequence prediction method that can be applied to an electronic device, which can be a mobile phone, a computer, a tablet, or a wearable electronic device (such as a smart bracelet, a smart watch, etc.), and the specific type of the electronic device can be not limited. The method includes:

[0076] Step S210: Obtain a historical usage behavior sequence corresponding to a target application, where the historical usage behavior sequence includes multiple application click events with a chronological order.

[0077] Among them, the specific implementation of step S210 can refer to the relevant description of step S110 in the foregoing embodiment, and will not be elaborated here.

[0078] Step S220: Establish a first-order state transition matrix based on the historical usage behavior sequence, where the first-order state transition matrix includes the state transition probability corresponding to each application click event.

[0079] Among them, the specific implementation of step S220 can refer to the relevant description of step S120 in the foregoing embodiment, and will not be elaborated here.

[0080] Step S230: Determine a reference application from the historical usage behavior sequence, and obtain an application set corresponding to the reference application from the first-order state transition matrix, where the application set includes the first number of applications with the highest state transition probability corresponding to the reference application.

[0081] Among them, the specific implementation of step S230 can refer to the relevant description of step S130 in the foregoing embodiment, and will not be elaborated here.

[0082] Step S240: Determine a reference application sequence based on the historical usage behavior sequence, where the reference application sequence includes at least one application with the click time closest to the current time.

[0083] Among them, the specific implementation of step S240 can refer to the relevant description of step S140 in the foregoing embodiment, and will not be elaborated here.

[0084] Step S250: Concatenate the application set and the reference application sequence to obtain a target application set.

[0085] Among them, the specific implementation of step S250 can refer to the relevant description of step S150 in the foregoing embodiment, and will not be elaborated here.

[0086] Step S260: Sort the applications in the target application set according to the distance of the click time from the current time, and sort the applications in the target application set according to the click frequency from high to low.

[0087] To more accurately recommend an application sequence based on user interests, before selecting the second number of applications from the target application set, the applications in the target application set can be sorted according to the distance of the click time from the current time, and the applications in the target application set can be sorted according to the click frequency from high to low, and the target application set is updated to the sorted target application set. Among them, the execution order of the two sorts can be not limited, and they can be executed successively or simultaneously. For applications with the same click frequency, they can be sorted according to the distance of the click time from the current time.

[0088] Specifically, the Apps that appear in the A2 sequence in the above example can be sorted according to the distance from the current time (nearer on the right and farther on the left), and the Apps closer to the current time are arranged in front of the time axis. And count the frequency of the Apps in the A2 sequence, and the Apps with more occurrences are arranged in front of the time axis.

[0089] Step S270: Select the second number of applications from the target application set as the application sequence prediction result according to the selection order from high to low click frequency; or select the second number of applications from the target application set as the application sequence prediction result according to the selection order from high to low click frequency and from near to far click time from the current time.

[0090] Then, when determining the recommended application sequence, as an implementation method, the second number of applications can be selected from the sorted target application set according to the selection order from high to low click frequency as the application sequence prediction result.

[0091] As another implementation method, the second number of applications can be selected from the sorted target application set as the application sequence prediction result according to the selection order from high to low click frequency and from near to far click time from the current time.

[0092] Optionally, the second number can be determined according to the resource positions of the screen of the electronic device. For example, assume the electronic device is a smart watch. If there are five resource positions on the dial of the smart watch that can be used to display application icons, then the second number can be determined as 5.

[0093] Optionally, the next application that may be opened can be recommended to the user according to the prediction result of the application sequence. For an electronic device with fixed resource positions, the prediction result of the application sequence can be directly displayed at the resource positions. The application icons displayed at the resource positions can change dynamically.

[0094] Optionally, the application can also be pre-loaded according to the prediction result of the application sequence, so that the user can quickly open the application when needed.

[0095] The application sequence prediction method provided in this embodiment includes: obtaining a historical usage behavior sequence corresponding to a target application, where the historical usage behavior sequence includes multiple application click events with a time sequence; establishing a first-order state transition matrix based on the historical usage behavior sequence, where the first-order state transition matrix includes state transition probabilities corresponding to each application click event; determining a reference application from the historical usage behavior sequence, and obtaining an application set corresponding to the reference application from the first-order state transition matrix, where the application set includes the first number of applications with the highest state transition probabilities corresponding to the reference application; determining a reference application sequence based on the historical usage behavior sequence, where the reference application sequence includes at least one application with the click time closest to the current time; splicing the application set and the reference application sequence to obtain a target application set, sorting the applications in the target application set according to the distance between the click time and the current time, and sorting the applications in the target application set according to the click frequency; selecting the second number of applications from the target application set in the order of decreasing click frequency as the application sequence prediction result; or selecting the second number of applications from the target application set in the order of decreasing click frequency and from near to far according to the click time distance from the current time as the application sequence prediction result.

[0096] Thus, through the above method, it is possible to directly combine the matrix transfer algorithm and the segmented statistical algorithm to predict the application sequence that the user will use, without introducing a neural network model for prediction, reducing the power consumption required for calculation, and solving the problem of deploying a neural network model on marginal devices with limited computing resources.

[0097] At the same time, by sorting the applications in the target application set, the user's preferences can be grasped more accurately, and then a more accurate application sequence recommendation can be realized.

[0098] Please refer to Figure 8, which shows a flowchart of an application sequence prediction method provided by another embodiment of the present application. This embodiment provides an application sequence prediction method, which can be applied to an electronic device. The electronic device can be a mobile phone, a computer, a tablet or a wearable electronic device (such as a smart bracelet, a smart watch, etc.). The specific type of the electronic device can be not limited. On the basis of the content described in the foregoing embodiment, this embodiment further describes an implementation process of segment prediction. The method includes:

[0099] Step S310: If the number of applications selected from the target application set is less than the second number, segment the first usage behavior sequence according to the window size to obtain a third usage behavior sequence and a fourth usage behavior sequence, and the length of the fourth usage behavior sequence is the same as the window size.

[0100] As an implementation manner, if the number of applications selected from the target application set by using the method described in the foregoing embodiment is less than the second number, the first usage behavior sequence can be segmented according to the foregoing window size to obtain a third usage behavior sequence and a fourth usage behavior sequence, and the length of the fourth usage behavior sequence is the same as the window size.

[0101] For example, continuing with the foregoing example, the subsequence A1 can be segmented according to windows_size to obtain a third usage behavior sequence and a fourth usage behavior sequence. Specifically, as Figure 9 shown, the original A1 can be segmented into a new A1 and a new A2. Here, the new A1 is the third usage behavior sequence, and the new A2 is the fourth usage behavior sequence.

[0102] Step S320: Use the fourth usage behavior sequence as a new reference application sequence.

[0103] At this time, the applications in the fourth usage behavior sequence can be used as reference applications.

[0104] Step S330: Concatenate the target application set and the new reference application sequence to obtain a new target application set, and determine the second number of applications from the new target application set as the application sequence prediction result.

[0105] As an implementation manner, the sorted target application set in the foregoing embodiment and the new reference application sequence can be concatenated to obtain a new target application set, and then the second number of applications can be determined from the new target application set as the application sequence prediction result.

[0106] It should be noted that before determining the second number of applications from the new target application set as the application sequence prediction result, it is necessary to remove the applications that are repeated in the new reference application sequence from the target application set. That is, it is necessary to remove the applications in the fourth usage behavior sequence (the new reference application sequence) that already exist in the sorted target application set in the foregoing embodiments.

[0107] For example, assume that the target application set obtained in the foregoing embodiment already includes application B, and the fourth usage behavior sequence (the new reference application sequence) also includes application B. Then, after removing application B in the fourth usage behavior sequence, the step of determining the second number of applications from the new target application set as the application sequence prediction result is executed.

[0108] The application sequence prediction method provided in this embodiment, by if the number of applications selected from the target application set is less than the second number, splitting the first usage behavior sequence according to the window size to obtain a third usage behavior sequence and a fourth usage behavior sequence, the length of the fourth usage behavior sequence being the same as the window size; using the fourth usage behavior sequence as the new reference application sequence; splicing the target application set and the new reference application sequence to obtain a new target application set, and determining the second number of applications from the new target application set as the application sequence prediction result. Thus, through the above method, it is possible to directly combine the matrix transfer algorithm and the segmented statistical algorithm to predict the application sequence that the user will use, without introducing a neural network model for prediction, reducing the power consumption required for calculation, and solving the problem of deploying a neural network model on marginal devices with limited computing resources.

[0109] At the same time, this embodiment also proposes a method for modeling the user's short-term behavior habits based on segmented statistics. By combining the matrix transfer algorithm and the segmented statistical algorithm, it is possible to take into account both the user's short-term interests and long-term interests, thereby accurately predicting the application sequence that the user will use.

[0110] Please refer to Figure 10 , which shows a flowchart of an application sequence prediction method provided in another embodiment of the present application. This embodiment provides an application sequence prediction method that can be applied to an electronic device, which can be a mobile phone, a computer, a tablet, or a wearable electronic device (such as a smart bracelet, a smart watch, etc.), and the specific type of the electronic device can be not limited. On the basis of the content described in the foregoing embodiment, this embodiment further describes another implementation process of segmented prediction. The method includes:

[0111] Step S410: If the number of applications selected from the target application set is less than the second number, segment the first usage behavior sequence according to the window size to obtain a third usage behavior sequence and a fourth usage behavior sequence, where the length of the fourth usage behavior sequence is the same as the window size.

[0112] Specific implementation of step S410 may refer to the relevant description of step S310 in the foregoing embodiments, which will not be elaborated herein.

[0113] Step S420: Use the fourth usage behavior sequence as the new reference application sequence.

[0114] Specific implementation of step S420 may refer to the relevant description of step S320 in the foregoing embodiments, which will not be elaborated herein.

[0115] Step S430: Concatenate the target application set and the new reference application sequence to obtain a new target application set, and determine the second number of applications from the new target application set as the application sequence prediction result.

[0116] Specific implementation of step S430 may refer to the relevant description of step S330 in the foregoing embodiments, which will not be elaborated herein.

[0117] Step S440: If the number of applications selected from the new target application set is less than the second number, obtain a reference built-in application set.

[0118] Furthermore, if the number of applications selected from the new target application set described in step S330 is still less than the second number, a reference built-in application set can be obtained. The reference built-in application set represents a set composed of the first number of built-in applications that the user uses most frequently within a preset time period. The built-in application represents a built-in application that the user cannot delete.

[0119] As an implementation manner, a pre-installed App list on the electronic device can be obtained and denoted as A 预装 , and then in combination with the historical usage behavior sequence described in step S110 and A 预装 jointly determine the reference built-in application set. The K (first number) Apps in the reference built-in application set are arranged from left to right in ascending order of the frequencies of occurrence.

[0120] Optionally, if in combination with the historical usage behavior sequence described in step S110 and A 预装If no reference built-in application set is determined, for example, there is no built-in application in the historical usage behavior sequence, then it cannot be determined, and the reference built-in application set pre-stored in the device can be used. Optionally, multiple built-in applications that multiple users often click on can be obtained as a fallback reference built-in application set and pre-saved in the electronic device.

[0121] Step S450: Obtain a specified number of applications from the reference built-in application set and fill them into the new target application set to ensure that the application sequence prediction result includes a second number of applications.

[0122] Among them, the specified number can be understood as the number that the second number is short of the first number, that is, the specified number is equal to the first number minus the second number. For example, assuming the first number is 8 and the current second number is 5, then the specified number is 3.

[0123] As an implementation manner, a specified number of applications can be obtained from the reference built-in application set and filled into the new target application set to ensure that the application sequence prediction result includes a second number of applications.

[0124] As a specific implementation manner, continuing with the previous example, the applications that already exist in the new target application set in the reference built-in application set can be removed first, and then a specified number of applications are selected from the remaining reference built-in application set and added to the new target application set to obtain the final application sequence prediction result.

[0125] The application sequence prediction method provided in this embodiment, if the number of applications selected from the target application set is less than the second number, the first usage behavior sequence is segmented according to the window size to obtain a third usage behavior sequence and a fourth usage behavior sequence, and the length of the fourth usage behavior sequence is the same as the window size; the fourth usage behavior sequence is used as a new reference application sequence; the target application set and the new reference application sequence are spliced to obtain a new target application set, and a second number of applications are determined from the new target application set as the application sequence prediction result; if the number of applications selected from the new target application set is less than the second number, a reference built-in application set is obtained; a specified number of applications are obtained from the reference built-in application set and filled into the new target application set to ensure that the application sequence prediction result includes a second number of applications.

[0126] Thus, through the above method, it is possible to directly combine the matrix transfer algorithm and the segmented statistical algorithm to predict the application sequence that the user will use, without introducing a neural network model for prediction, reducing the power consumption required for calculation, and solving the problem of deploying a neural network model on marginal devices with limited computing power resources.

[0127] At the same time, by using the built-in applications commonly used by the user as alternative recommended content, the reliability and stability of the application recommendation can be ensured.

[0128] Please refer to Figure 11 , which is a structural block diagram of an application sequence prediction device provided by an embodiment of the present application. This embodiment provides an application sequence prediction device 500, which can run on an electronic device. The device 500 includes a historical data acquisition module 510, a state transition matrix establishment module 520, an application set acquisition module 530, a reference application sequence determination module 540, and a prediction module 550:

[0129] The historical data acquisition module 510 is used to acquire the historical usage behavior sequence corresponding to the target application. The historical usage behavior sequence includes multiple application click events in chronological order.

[0130] As an implementation manner, the historical data acquisition module 510 can be used to acquire multiple application click events corresponding to the target application within a preset time period; arrange the multiple application click events in chronological order to obtain the historical usage behavior sequence corresponding to the target application.

[0131] The state transition matrix establishment module 520 is used to establish a first-order state transition matrix based on the historical usage behavior sequence. The first-order state transition matrix includes the state transition probability corresponding to each application click event.

[0132] As an implementation manner, the state transition matrix establishment module 520 can be used to statistically calculate the state transition corresponding to each application click event in the historical usage behavior sequence, and fill the statistical results into the transition probability matrix to obtain a first-order state transition matrix.

[0133] The application set acquisition module 530 is used to determine a reference application from the historical usage behavior sequence, and obtain the application set corresponding to the reference application from the first-order state transition matrix. The application set includes the first number of applications with the highest state transition probability corresponding to the reference application.

[0134] A reference application sequence determination module 540 is configured to determine a reference application sequence based on the historical usage behavior sequence, where the reference application sequence includes at least one application with the click time closest to the current time.

[0135] As an implementation, the reference application sequence determination module 540 can be configured to segment the historical usage behavior sequence according to a window size to obtain a first usage behavior sequence and a second usage behavior sequence, where the length of the second usage behavior sequence is the same as the window size; and use the second usage behavior sequence as the reference application sequence.

[0136] A prediction module 550 is configured to splice the application set and the reference application sequence to obtain a target application set, and determine a second number of applications from the target application set as the application sequence prediction result.

[0137] As an implementation, the prediction module 550 can be configured to splice the application set and the second usage behavior sequence to obtain a target application set.

[0138] Optionally, the apparatus 500 may further include a sorting module, configured to sort the applications in the target application set according to the distance between the click time and the current time, and sort the applications in the target application set according to the click frequency, before determining a second number of applications from the target application set as the application sequence prediction result. In this way, the prediction module 550 can specifically be configured to select a second number of applications from the target application set as the application sequence prediction result according to the selection order from high to low click frequency; or select a second number of applications from the target application set as the application sequence prediction result according to the selection order from high to low click frequency and from near to far click time from the current time.

[0139] Optionally, the reference application sequence determination module 540 can also be configured to, if the number of applications selected from the target application set is less than the second number, segment the first usage behavior sequence according to the window size to obtain a third usage behavior sequence and a fourth usage behavior sequence, where the length of the fourth usage behavior sequence is the same as the window size;

[0140] Use the fourth usage behavior sequence as the new reference application sequence. In this way, the prediction module 550 can specifically be used to splice the target application set with the new reference application sequence to obtain a new target application set, and determine a second number of applications from the new target application set as the application sequence prediction result.

[0141] Optionally, the device 500 may further include a deduplication module, configured to remove the applications that are repeated in the new reference application sequence from the target application set before splicing the target application set with the new reference application sequence.

[0142] Optionally, the prediction module 550 may further be used to, if the number of applications selected from the new target application set is less than the second number, obtain a reference built-in application set; obtain a specified number of applications from the reference built-in application set and fill them into the new target application set to ensure that the application sequence prediction result includes the second number of applications.

[0143] Those skilled in the art can clearly understand that for the convenience and conciseness of description, the specific working processes of the above-described device and modules can refer to the corresponding processes in the foregoing method embodiments, and will not be elaborated herein.

[0144] In several embodiments provided in the present application, the coupling between modules may be electrical, mechanical, or other forms of coupling.

[0145] In addition, in each embodiment of the present application, each functional module may be integrated in a processing module, or each module may exist physically alone, or two or more modules may be integrated in one module. The above-mentioned integrated modules may be implemented in the form of hardware or in the form of software functional modules.

[0146] Please refer to Figure 12 , based on the foregoing application sequence prediction method and device, an embodiment of the present application further provides an electronic device 100 that can execute the foregoing application sequence prediction method. The electronic device 100 includes a memory 102 and one or more (only one is shown in the figure) processors 104 that are coupled to each other, and a communication line connection is provided between the memory 102 and the processor 104. The memory 102 stores a program that can execute the content in the foregoing embodiments, and the processor 104 can execute the program stored in the memory 102.

[0147] Among them, the processor 104 may include one or more processing cores. The processor 104 connects various parts within the entire electronic device 100 through various interfaces and circuits. By running or executing instructions, programs, code sets, or instruction sets stored in the memory 102, and by invoking the data stored in the memory 102, it executes various functions of the electronic device 100 and processes data. Optionally, the processor 104 may be implemented in at least one hardware form of digital signal processing (DSP), field-programmable gate array (FPGA), or programmable logic array (PLA). The processor 104 may integrate a combination of one or more of a central processing unit (CPU), a graphics processing unit (GPU), and a modem, etc. Among them, the CPU mainly processes the operating system, user interface, application programs, etc.; the GPU is responsible for rendering and drawing the display content; the modem is used to process wireless communication. It can be understood that the above-mentioned modem may not be integrated into the processor 104 and may be implemented separately through a communication chip.

[0148] The memory 102 may include random access memory (RAM) and may also include read-only memory. The memory 102 can be used to store instructions, programs, code, code sets, or instruction sets. The memory 102 may include a program storage area and a data storage area. Among them, the program storage area may store instructions for implementing the operating system, instructions for implementing at least one function (such as touch function, sound playback function, image playback function, etc.), instructions for implementing the foregoing various embodiments, etc. The data storage area may also store the data created during the use of the electronic device 100 (such as phone book, audio and video data, chat record data, etc.).

[0149] Please refer to Figure 13 , which shows a structural block diagram of a computer-readable storage medium provided by an embodiment of the present application. Program code is stored in the computer-readable medium 600, and the program code can be called by the processor to execute the method described in the above method embodiments.

[0150] The computer-readable storage medium 600 can be an electronic memory such as a flash memory, EEPROM (electrically erasable programmable read-only memory), EPROM, a hard disk, or a ROM. Optionally, the computer-readable storage medium 600 includes a non-transitory computer-readable storage medium. The computer-readable storage medium 600 has a storage space for program code 610 that executes any method steps in the above methods. These program codes can be read from or written to one or more computer program products. The program code 610 can be compressed in an appropriate form, for example.

[0151] In summary, the embodiments of the present application provide a method, an apparatus, an electronic device, and a storage medium for predicting an application program sequence. This method can be applied to an electronic device. By obtaining a historical usage behavior sequence corresponding to a target application program, the historical usage behavior sequence includes a plurality of application program click events in chronological order; establishing a first-order state transition matrix based on the historical usage behavior sequence, the first-order state transition matrix includes state transition probabilities corresponding to each application program click event; determining a reference application program from the historical usage behavior sequence, and obtaining an application program set corresponding to the reference application program from the first-order state transition matrix, the application program set includes the first number of application programs with the largest state transition probability corresponding to the reference application program; determining a reference application program sequence based on the historical usage behavior sequence, the reference application program sequence includes at least one application program whose click time is closest to the current time; splicing the application program set and the reference application program sequence to obtain a target application program set, and determining the second number of application programs from the target application program set as the application program sequence prediction result. Thus, through the above method, it is possible to directly combine the matrix transfer algorithm and the segmented statistical algorithm to predict the application program sequence that the user will use, without introducing a neural network model for prediction, reducing the power consumption required for calculation, and solving the problem of deploying a neural network model on marginalized devices with limited computing power resources. At the same time, by combining the matrix transfer algorithm and the segmented statistical algorithm, it is possible to take into account both the short-term interests and long-term interests of the user, so as to accurately predict the application program sequence that the user will use.

[0152] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements on some of the technical features; and these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. A method for predicting an application program sequence, characterized in that, Applied to an electronic device, the method includes: Obtain a historical usage behavior sequence corresponding to a target application, where the historical usage behavior sequence includes multiple application click events in chronological order; Based on the historical usage behavior sequence, establish a first-order state transition matrix, where the first-order state transition matrix includes the state transition probabilities corresponding to each application click event; Determine a reference application from the historical usage behavior sequence, and obtain an application set corresponding to the reference application from the first-order state transition matrix, where the application set includes the first number of applications with the highest state transition probabilities corresponding to the reference application; Based on the historical usage behavior sequence, determine a reference application sequence, where the reference application sequence includes at least one application with the click time closest to the current time; Concatenate the application set and the reference application sequence to obtain a target application set, and determine the second number of applications from the target application set as the application sequence prediction result.

2. The method according to claim 1, wherein The determining the reference application sequence based on the historical usage behavior sequence includes: Segment the historical usage behavior sequence according to a window size to obtain a first usage behavior sequence and a second usage behavior sequence, where the length of the second usage behavior sequence is the same as the window size; Use the second usage behavior sequence as the reference application sequence.

3. The method according to claim 2, wherein The concatenating the application set and the reference application sequence to obtain a target application set includes: Concatenate the application set and the second usage behavior sequence to obtain a target application set.

4. The method according to claim 2, wherein Before the determining the second number of applications from the target application set as the application sequence prediction result, the method further includes: Sort the applications in the target application set according to the distance of the click time from the current time, and sort the applications in the target application set according to the click frequency; The determining the second number of applications from the target application set as the application sequence prediction result includes: Select the second number of applications from the target application set in the order of decreasing click frequency as the application sequence prediction result; Or select the second number of applications from the target application set in the order of decreasing click frequency and from near to far according to the distance of the click time from the current time as the application sequence prediction result.

5. The method according to claim 4, characterized in that The method further includes: If the number of applications selected from the target application set is less than the second number, segment the first usage behavior sequence according to the window size to obtain a third usage behavior sequence and a fourth usage behavior sequence, where the length of the fourth usage behavior sequence is the same as the window size; Use the fourth usage behavior sequence as the new reference application sequence; Concatenate the target application set with the new reference application sequence to obtain a new target application set, and determine a second number of applications from the new target application set as the application sequence prediction result.

6. The method according to claim 5, characterized in that, Before concatenating the target application set with the new reference application sequence, the method further includes: Eliminate the applications that are repeated in the new reference application sequence and the target application set.

7. The method according to claim 5, wherein The method further includes: If the number of applications selected from the new target application set is less than the second number, obtain a reference built-in application set; Obtain a specified number of applications from the reference built-in application set and fill them into the new target application set to ensure that the application sequence prediction result includes the second number of applications.

8. The method according to any one of claims 1-7, characterized in that The obtaining of the historical usage behavior sequence corresponding to the target application includes: Obtain a plurality of application click events corresponding to the target application within a preset time period; Arrange the plurality of application click events in chronological order to obtain the historical usage behavior sequence corresponding to the target application.

9. The method according to claim 8, wherein The establishing of the first-order state transition matrix based on the historical usage behavior sequence includes: Perform probability statistics on the state transitions corresponding to each application click event in the historical usage behavior sequence, and fill the statistical results into the transition probability matrix to obtain the first-order state transition matrix.

10. An application program sequence prediction device, characterized in that, Running on an electronic device, the apparatus includes: A historical data acquisition module, configured to acquire a historical usage behavior sequence corresponding to a target application, where the historical usage behavior sequence includes a plurality of application click events with chronological order; A state transition matrix establishment module, configured to establish a first-order state transition matrix based on the historical usage behavior sequence, where the first-order state transition matrix includes the state transition probabilities corresponding to each application click event; An application set acquisition module, configured to determine a reference application from the historical usage behavior sequence, and acquire an application set corresponding to the reference application from the first-order state transition matrix, where the application set includes a first number of applications with the highest state transition probabilities corresponding to the reference application; A reference application sequence determination module, configured to determine a reference application sequence based on the historical usage behavior sequence, where the reference application sequence includes at least one application with the click time closest to the current time; A prediction module, configured to concatenate the application set with the reference application sequence to obtain a target application set, and determine a second number of applications from the target application set as the application sequence prediction result.

11. An electronic device, characterized in that, Comprising one or more processors and a memory; One or more programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs are configured to execute the method according to any one of claims 1-9.

12. A computer-readable storage medium, characterized in that, Program code is stored in the computer-readable storage medium, wherein, when the program code is run by a processor, the method according to any one of claims 1-9 is executed.

Citation Information

Cited By

  • Application recommendation method, electronic equipment, storage medium and program product

    CN120994719A

  • An application recommendation method, an electronic device, a storage medium, and a program product

    CN120994719B

  • Method and system for constructing multi-channel interactive behavior sequence pattern knowledge graph

    CN121457592A

  • A method and system for constructing a multi-channel interactive behavior sequence pattern knowledge graph

    CN121457592B