Application recommendation method, medium and electronic equipment

By analyzing the user APP usage historical data and recommending the APP sequence according to different scenarios and time periods, the problem of lack of personalization of the existing APP recommendation methods is solved, and accurate and efficient APP recommendations are achieved in different scenarios.

CN119271867APending Publication Date: 2025-01-07HONOR DEVICE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310830924.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-07-07
Publication Date
2025-01-07

AI Technical Summary

Technical Problem

The existing APP recommendation methods lack personalization, resulting in the recommended APP not meeting the actual needs of users and the user experience is poor.

Method used

By analyzing the user's APP usage history data in different scenarios, we determine the APP sequence under each recommendation factor, such as different usage scenarios and time periods, so that when the user is identified, the recommended factor is recommended for the user. APP in the APP sequence improves the personalization of recommendations.

Benefits of technology

This enables the recommended APP sequence to meet users' usage needs, and users can quickly find the required APP in specific scenarios, improving the accuracy and user experience of application recommendations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119271867A_ABST
    Figure CN119271867A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of intelligent terminals, and discloses an application recommendation method, a medium and electronic equipment, which can recommend APPs in different APP sequences to a user according to different recommendation factors such as different scenes, and realize individuation of application recommendation. The method comprises the following steps: determining that the electronic equipment enters a first fence corresponding to a first recommendation factor; recommending a first application sequence corresponding to the first recommendation factor to the user, wherein the improvement degree of the first application sequence is greater than that of a second application sequence which is not recommended to the user and corresponds to the first recommendation factor; wherein the higher the improvement degree is, the higher the probability that the application sequence is used under the first recommendation factor in the first historical time period is, the number of items of the applications in the first application sequence and the second application sequence is N, and N is an integer larger than 1.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of smart terminal technology, and in particular to an application recommendation method, medium and electronic device. Background Art

[0002] As more and more applications (applications, APPs) are installed in mobile phones, most mobile phones will provide APP suggestions to users to recommend APPs to users. Most current APP suggestions use the recent popular APPs and the recent high-frequency APPs to recommend APPs to users through fusion scoring. Among them, the recent popular APPs are usually obtained based on data statistics of multiple users, and the recent high-frequency APPs can be all the APPs with high usage frequency in the user's recent historical period regardless of the scenario. Specifically, the mobile phone displays APP suggestion cards such as YOYO suggestion TM Cards to recommend apps to users. Figure 1 The following are YOYO suggestions displayed on the phone: TM An example of a card that YOYO recommends TM The card contains TikTok TM , Taobao TM and Alipay TM Icons of Tik Tok TM For the latest popular APP and Taobao TM and Alipay TM It is the most recent high-frequency APP. At this time, the user can click YOYO suggestion TM Click the icon of an APP in the card to open the APP.

[0003] However, the APPs recommended by current APP recommendation schemes lack personalization, resulting in the APPs recommended by mobile phones may not be the APPs that users actually need to use. Summary of the invention

[0004] The embodiments of the present application provide an application recommendation method, medium, and electronic device, which can recommend APPs in different APP sequences to users based on different recommendation factors such as different scenarios, thereby realizing personalized application recommendation.

[0005] In a first aspect, an embodiment of the present application provides an application recommendation method, which is applied to an electronic device, and the method includes: determining that the electronic device enters a first fence corresponding to a first recommendation factor; recommending a first application sequence corresponding to the first recommendation factor to a user, wherein the promotion degree of the first application sequence is greater than the promotion degree of a second application sequence corresponding to the first recommendation factor that is not recommended to the user; wherein, the higher the promotion degree, the higher the probability that the application sequence has been used under the first recommendation factor within a first historical time period, and the number of application items in the first application sequence and the second application sequence is N, where N is an integer greater than 1.

[0006] It can be understood that the first application sequence can be an APP sequence that users use regularly under the first recommendation factor, that is, the user uses the APPs in the APP sequence continuously and sequentially under the first recommendation factor in the first historical time period. At this time, the first application sequence can be a polynomial under the first recommendation factor. In this way, the APPs in the APP sequence recommended to users under different recommendation factors meet the user's usage needs, making it convenient for users to quickly use these APPs under the recommendation factor (such as subway scenarios, etc.), thereby improving the personalization of application recommendations.

[0007] In one possible implementation, the method also includes: obtaining the first first application in the first application sequence corresponding to the first recommendation factor, the first first application being an application used under the first recommendation factor within a first historical time period. It can be understood that the first first application in the first application sequence refers to a one-time item, and each one-time item is an APP used by a user under a recommendation factor. Specifically, the electronic device can obtain multiple one-time items under the first recommendation factor, that is, obtain the first application in multiple application sequences, such as the first first application in the first application sequence. Then, based on the one-time item, the APP sequence that users regularly use under the recommendation factor can be determined later.

[0008] In one possible implementation, the method further includes: determining the i+1th first application in the first application sequence based on the first i first applications in the first application sequence corresponding to the first recommendation factor, 1≤i≤N. For example, the first i first applications in the first application sequence may be a pre-order monomial, and the first i+1 first applications comprising the first application sequence may be constructed from the pre-order monomial to obtain a post-order binomial. Or the first i first applications in the first application sequence may be a pre-order polynomial (≥2 terms), and the first i+1 first applications comprising the first application sequence may be constructed from the pre-order polynomial to obtain a post-order polynomial. In this way, the electronic device may construct corresponding multiple post-order polynomials from multiple pre-order polynomials corresponding to the first recommendation factor to obtain the first application sequence that is regularly used by users under the first recommendation factor.

[0009] In a possible implementation, the above corresponding to i=1, based on the first i first applications of the first application sequence corresponding to the first recommendation factor, determining the i+1th first application of the first application sequence includes: comparing the i-th first application of the first application sequence with the i-th second application of the third application sequence to determine whether the first condition is satisfied; corresponding to satisfying the first condition, using the i-th second application in the third application sequence as the i+1th first application in the first application sequence; wherein the first condition includes: the time when the i-th first application is used in the first historical time period and the time when the i-th second application is used in the first historical time period are on the same day; the time when the i-th first application is used in the first historical time period is before the time when the first second application is used in the first historical time period; the difference between the time when the i-th first application is used in the first historical time period and the time when the first second application is used in the first historical time period is less than the preset time difference. That is, the electronic device constructs the corresponding post-order binomial from the pre-order monomial corresponding to the first recommendation factor. The first condition means that the two first-order items are two apps used successively within a preset time window (such as 10 minutes) on the same day, and the duration of the preset time window is the preset time difference. In this way, it is ensured that the second-order items constructed under the first recommendation factor are two apps that users use regularly.

[0010] In some possible implementations, corresponding to 2≤i≤N, based on the first i first applications corresponding to the first application sequence corresponding to the first recommendation factor, determining the i+1th first application in the first application sequence includes: comparing each application in the first i first applications of the first application sequence and each application in the 2nd to i first applications with each application in the 1st to i-1st fourth applications of the fourth application sequence, respectively, to determine whether the second condition is satisfied; determining that each application in the 2nd to i first applications is the same as each application in the 1st to i-1st fourth applications, respectively; determining that the time when the second first application in the first application sequence is used in the first historical time period is the same as the time when the first application in the fourth application sequence is used in the first historical time period; corresponding to satisfying the second condition The second condition includes: the time when the first first application in the first application sequence is used in the first historical time period and the time when the i-th fourth application in the fourth application sequence is used in the first historical time period are on the same day; the time when the first first application in the first application sequence is used in the first historical time period is less than the time when the i-th fourth application in the fourth application sequence is used in the first historical time period; the difference between the time when the first first application in the first application sequence is used in the first historical time period and the time when the i-th fourth application in the fourth application sequence is used in the first historical time period is less than the preset time difference. That is, the electronic device constructs the corresponding post-order multi-term from the pre-order polynomial corresponding to the first recommendation factor. The second condition refers to that the two pre-order polynomials are multiple APPs used successively within a preset time window (such as 10 minutes) on the same day, and the length of the preset time window is the above-mentioned preset time difference. In this way, it is ensured that the post-order polynomial constructed under the first recommendation factor is several APPs that users use regularly.

[0011] In a possible implementation, the method further includes: taking the application sequence with the largest degree of promotion under the first theme event among the multiple application sequences with N items corresponding to the first recommendation factor as the first application sequence; wherein the first theme event is used to indicate that the fifth application was used under the first recommendation factor in the first historical time period, and the fifth application is the same as the first first application in the first application sequence. For example, the first recommendation factor is the home scene, and the fifth application is Taobao TM , then the first theme event is that the user used Taobao at home during the first historical period. TM At this time, the first application in the first application sequence recommended to the user is Taobao TM , the APP in the first application sequence can be Taobao used in the home scene TM APPs that are used regularly afterwards, such as the first application sequence is {Taobao TM ,WeChatTM , Taobao TM and Alipay TM In this way, when different theme events occur under different recommendation factors, it is possible to recommend APPs in the APP sequence that may be regularly used under the theme event to the user, so as to achieve accuracy and personalization of application recommendation.

[0012] In a possible implementation, the lift of the application sequence is calculated in the following manner: calculate conf(K)=P(K1, K2) / P(K1) and lift(K)=P(K1, K2) / P(K1) / P(K2); wherein K represents an application sequence with N items, K1 represents the application sequence corresponding to the first N-1 applications in the application sequence, K2 represents the application sequence corresponding to the Nth application in the application sequence, P(K1, K2) represents the probability that the application sequence has been used under the first recommendation factor in the first historical time period, P(K1) represents the probability that the application sequence corresponding to the first N-1 applications has been used under the first recommendation factor in the first historical time period, P(K2) represents the probability that the application sequence corresponding to the Nth application has been used under the first recommendation factor in the first historical time period, conf(K) represents the confidence of the probability that the application sequence has been used under the first recommendation factor in the first historical time period, and lift(K) represents the lift of the probability that the application sequence has been used under the first recommendation factor in the first historical time period. For example, K1 is the second subsequence after the last application of K is removed.

[0013] In a possible implementation, the probability that the application sequence has been used under the first recommendation factor in the first historical time period is: the number of days the application sequence has been used under the first recommendation factor in the first historical time period, or the ratio of the number of days the application sequence has been used under the first recommendation factor in the first historical time period to the number of days each application has been used under the first recommendation factor in the first historical time period. It can be understood that the historical data in the first historical time period can be divided by date to obtain the historical data of each application used on each date.

[0014] In one possible implementation, the probability that an application sequence has been used under the first recommendation factor within the first historical time period is: the number of times the application sequence has been used under the first recommendation factor within the first historical time period, or the ratio of the number of times the application or application sequence has been used under the first recommendation factor within the first historical time period to the number of occurrences of the first recommendation factor within the first historical time period.

[0015] In one possible implementation, the support of the application sequence corresponding to the first i first applications in the first application sequence and the application sequence corresponding to the first i second applications in the third application sequence are both greater than the minimum support corresponding to the first recommendation factor. At this time, i=1. It can be understood that the application sequence corresponding to the first i first applications in the first application sequence and the first i second applications in the third application sequence are respectively a pre-order polynomial. Then, when the support of these pre-order polynomials is greater than the minimum support, these pre-order polynomials are used to construct the corresponding subsequent polynomials. The pre-order polynomials whose support is less than or equal to the minimum support will not be used to construct the post-order polynomial. The support of the application sequence is used to measure the probability of the user using the application sequence under the first recommendation factor, that is, the application sequence is used to construct the application sequence represented by the post-order polynomial only when the probability is high.

[0016] In one possible implementation, the support of the application sequence corresponding to the first i first applications in the first application sequence and the application sequence corresponding to the first i third applications in the fourth application sequence are both greater than the minimum support corresponding to the first recommendation factor. In this case, i>1. It can be understood that the application sequence corresponding to the first i first applications in the first application sequence and the first i second applications in the third application sequence are respectively a pre-order polynomial. Then, when the support of these pre-order polynomials is greater than the minimum support, these pre-order polynomials are used to construct the corresponding subsequent polynomials. The pre-order polynomials whose support is less than or equal to the minimum support will not be used to construct the post-order polynomial. The support of the application sequence is used to measure the probability of the user using the application sequence under the first recommendation factor, that is, the application sequence is used to construct the application sequence represented by the post-order polynomial only when the probability is high.

[0017] In a possible implementation, the minimum support corresponding to the first recommendation factor is calculated by: minup(x)=e (-ax-b) +c calculates the minimum support corresponding to the first recommendation factor; where minup(x) represents the minimum support corresponding to the first recommendation factor, a, b, and c are all constants, and x represents the number of days each application was used under the first recommendation factor in the first historical period. As the value of x changes, e (-ax-b) +c's value changes, and e (-ax-b) +c is taken as the value of minup(x). At this time, the minimum support is the dynamic support.

[0018] In a possible implementation, the support of each application sequence is calculated in the following manner: the number of days the application sequence is used under the first recommendation factor in the first historical time period is used as the support of the application sequence, or the ratio of the number of days the application sequence is used under the first recommendation factor in the first historical time period to the number of days the application is used under the first recommendation factor in the first historical time period is used as the support of the application sequence. It can be understood that the historical data in the first historical time period can be divided by date to obtain the historical data of the use of each application on each date.

[0019] In a possible implementation, the support of each sequence is calculated in the following way: obtain the date on which the application sequence is used under the first recommendation factor within the first historical time period; calculate the decay factor corresponding to each date, wherein the smaller the difference between the date and the current date, the larger the decay factor; take the sum of the products of each date of the application sequence and the corresponding decay factor as the support of the application sequence, or take the sum of the products of each date of the application sequence and the corresponding decay factor and the ratio of the number of days the application is used under the first recommendation factor within the first historical time period as the support of the application sequence. It can be understood that the decay factor decreases as the difference in days increases. Among them, the data in the date closer to the current day in the historical time period is considered to be more in line with the user's actual APP usage, so a larger weight is set for the date where these data are located.

[0020] In a possible implementation, the decay factor corresponding to each date is calculated in the following manner: L = l k-1 Calculate the attenuation factor corresponding to each date; where L represents the attenuation factor, l represents the preset attenuation degree, k is the difference between a date and the current date, and k is an integer greater than or equal to 1.

[0021] In a possible implementation manner, the first recommendation factor includes at least one of the following: a space factor, a time factor, and a device usage factor, wherein the device usage factor is used to indicate an external device connected to the electronic device.

[0022] In a possible implementation, recommending a first application sequence corresponding to a first recommendation factor to a user includes: displaying applications after removing duplicate applications from the first application sequence corresponding to the first recommendation factor. It is understandable that the APP sequence used by the user under the first recommendation factor may include duplicate APPs.

[0023] In a possible implementation, the application recommended for the user corresponding to the first recommendation factor is displayed in the application suggestion card of the electronic device. TM In the card.

[0024] In a second aspect, an embodiment of the present application provides a readable medium having instructions stored thereon, which, when executed on an electronic device, causes the electronic device to execute the application recommendation method in the first aspect and any possible implementation thereof.

[0025] In a third aspect, an embodiment of the present application provides an electronic device, comprising: a memory for storing instructions executed by one or more processors of the electronic device, and a processor, which is one of the processors of the electronic device, for executing the application recommendation method in the first aspect and any possible implementation thereof. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 According to some embodiments of the present application, a YOYO suggestion displayed on a mobile phone is shown. TM Schematic diagram of the card;

[0027] Figure 2A According to some embodiments of the present application, a schematic diagram of an APP usage sequence in a subway scenario is shown;

[0028] Figure 2B According to some embodiments of the present application, a schematic diagram of an APP usage sequence in a home scenario is shown;

[0029] Figure 3 According to some embodiments of the present application, a schematic diagram of a card display process of an electronic device is shown;

[0030] Figure 4A According to some embodiments of the present application, a schematic diagram of the hardware structure of a mobile phone is shown;

[0031] Figure 4B According to some embodiments of the present application, a schematic diagram of a software system of a mobile phone is shown;

[0032] Figure 5 According to some embodiments of the present application, a schematic diagram of a process of executing application recommendation by a module of an electronic device is shown;

[0033] Figure 6 According to some embodiments of the present application, a flowchart of an application recommendation method is shown;

[0034] Figure 7 According to some embodiments of the present application, a flowchart of an application recommendation method is shown;

[0035] Figure 8 According to some embodiments of the present application, a flowchart of an application recommendation method is shown;

[0036] Fig. 9According to some embodiments of the present application, a flowchart of an application recommendation method is shown;

[0037] Fig.10 According to some embodiments of the present application, a flowchart of an application recommendation method is shown;

[0038] Fig.11 According to some embodiments of the present application, a flowchart of an application recommendation method is shown;

[0039] Fig.12 According to some embodiments of the present application, a YOYO suggestion displayed on a mobile phone is shown. TM Schematic diagram of the card. DETAILED DESCRIPTION

[0040] Illustrative embodiments of the present application include, but are not limited to, application recommendation methods, media, and electronic devices.

[0041] As can be seen from the background technology, in the prior art, APP recommendations of electronic devices usually only push high-frequency applications. However, users usually use APPs in a certain sequence. For example, after opening a music APP on a mobile phone, a user will open a reading or information APP for reading. In addition, in different scenarios, the operation sequence of users using APPs is usually different. Figure 2A The following is a sequence of APP usage in a subway scenario, which is Cloud QuickPass. TM , Zhihu TM , Tieba TM Cloud QuickPass TM For example, in the subway scenario, the user's APP operation sequence behavior includes: Cloud QuickPass TM Scan the QR code to enter the subway station TM Read Post Bar TM Share content with Cloud QuickPass TM Scan the code to exit the subway station. In addition, in the home scenario, the user's operation sequence usually involves the behavior sequence of shopping, audio-visual, and social apps. Figure 2B As shown in the figure, it is an APP usage sequence in a home scenario, including Taobao TM ,WeChat TM , Taobao TM and Alipay TM For example, in the home scenario, the user's operation sequence behavior: Taobao TM View products, WeChat TM Share products, Taobao TM Order goods, Alipay TMHowever, the current application recommendation method will recommend high-frequency applications to users regardless of the scenario, and high-frequency applications have nothing to do with the user's operation sequence behavior when using the APP, resulting in application recommendations that do not meet the user's actual usage needs and poor user experience.

[0042] It can be understood that in each embodiment of the present application, the overall usage frequency refers to the total number of times a user clicks to use an APP within a period of time without considering any usage scenario.

[0043] Therefore, in order to solve the above-mentioned problem of inaccurate application recommendations, an embodiment of the present application provides an application recommendation method, which can determine the APP sequence under various recommendation factors based on the user's APP usage history data. For example, the recommendation factors include different usage scenarios and different usage time periods. Thus, when it is identified that the user has triggered a certain recommendation factor, the APP in the APP sequence under the recommendation factor can be recommended to the user. Specifically, when it is identified that the user is in a theme event of clicking and using a certain APP under a certain recommendation factor, the APP sequence corresponding to the theme event under the recommendation factor can be provided to the user. At this time, the first APP in the APP sequence can be the APP currently used by the user. For example, taking Monday at home as the recommendation factor, the user uses WeChat at home on Monday. TM Taking the subject event as an example, when it is recognized that the user is at home on Monday and uses WeChat TM When the first APP included in the recommendation factor can be recommended to the user, WeChat TM In this way, the apps in the app sequence recommended to users under different recommendation factors meet the user's usage needs, making it convenient for users to quickly use these apps under the recommendation factors (such as subway scenes, etc.), thereby improving the personalization of app recommendations.

[0044] In addition, it can be understood that in each embodiment of the present application, the APP sequence that the user regularly uses can be determined according to different recommendation factors, wherein the recommendation factors may include one or more of spatial factors, device usage factors, time factors, and the like. For example, spatial factors can be different scenarios where the user is located, such as home, company, subway, shopping mall, and the like. Device usage factors can also be whether the user wears headphones, whether the user device is connected to the car Bluetooth, and the like. The time factor can divide a period of time into multiple time intervals according to hours, days of a week, a week, and the like. For example, the time period of the last month can be divided into seven time intervals from Monday to Sunday in a week, and specifically can be divided into the time interval of each Monday.

[0045] In some embodiments, in the present application, a sequence of APPs that a user regularly uses in a certain recommendation scenario is composed of several APPs that the user uses sequentially within a certain time window (such as 10 minutes) under the recommendation factor.

[0046] In some embodiments, information can be exchanged between multiple apps in an app sequence, such as the app sequence {Taobao TM ,WeChat TM , Taobao TM , Alipay TM Taobao TM You can send WeChat TM Send products to share, Taobao TM You can pay to Alipay TM Send product order information to trigger Alipay TM In some other embodiments, there is no information interaction between multiple APPs in an APP sequence, such as APP sequence {Cloud QuickPass}. TM , Zhihu TM , Tieba TM , Cloud QuickPass TM}Zhongyun QuickPass TM And Zhihu TM There is no information exchange between them.

[0047] In some embodiments of the present application, it is usually more common for users to be in multiple scenarios at the same time. For example, when a user wears headphones at home and at work, the APP sequence behaviors involved will be different. For example, in the scenario of wearing headphones at work, the user's main APP sequence behaviors are concentrated on music apps and work apps, while in the scenario of wearing headphones at home, the user's APP sequence behaviors may be mainly concentrated on video apps or social apps. Therefore, the present application can form a joint recommendation factor for two or more factors among spatial factors, device usage factors, time factors, etc., and determine the APP sequence to be recommended to the user under the joint recommendation factor, so as to provide users with personalized application recommendation services. For example, the present application can determine the APP sequence recommended for the user in the scenario represented by the user wearing headphones at work.

[0048] In some embodiments of the present application, first, multiple APP sequences under a certain recommendation factor can be obtained, and the promotion degree of each APP sequence can be calculated, and then an APP sequence with a larger promotion degree can be recommended to the user under the recommendation factor, such as an APP sequence with a promotion degree greater than a promotion degree threshold.

[0049] Assume that a polynomial is K, the sequence after removing the last element of the polynomial (ie, the second subsequence) is K1, and the last element of the polynomial is K2.

[0050] For example, taking the polynomial K as an example, the lift can be calculated by the following formula (1) and formula (2):

[0051] conf(K)=conf(K1→K2)=P(K2|K1)=P(K1,K2) / P(K1)=P(K1UK2) / P(K1) (1)

[0052] lift(K)=lift(K1→K2)=P(K2|K1) / P(K2)=P(K1,K2) / P(K1) / P(K2) (2)

[0053] Among them, P(K1, K2) and P(K1UK2) represent the probability that a user uses K1 and K2 sequentially (i.e., uses K1 first and then K2) within a certain time window (such as 10 minutes) under a certain recommendation factor during the historical time period, that is, the probability of using the APP sequence represented by the polynomial K under the recommendation factor during the historical time period. P(K1) represents the probability that a user uses K1 under a certain recommendation factor during the historical time period. P(K2) represents the probability that a user uses K2 under a certain recommendation factor during the historical time period. Then, the confidence conf(K) of the polynomial K under a certain recommendation factor is the probability of using K1 first and then K2 under the recommendation factor.

[0054] In some embodiments, the probability that a user uses an APP sequence (including one or more APPs) under a certain recommendation factor within a historical time period can be the probability of the number of uses or the probability of the number of days of use. Then, the above P(K1, K2), P(K1), and P(K2) can be the probability of the number of uses of the corresponding sequence or the probability of the number of days of use. In the following embodiments, the confidence, lift, and support of the APP sequence under each recommendation factor are mainly calculated based on the probability of the number of days of use of the sequence APP.

[0055] For example, the APP sequence K is {Taobao TM ,WeChat TM , Taobao TM , Alipay TM}, APP sequence K1 is {Taobao TM ,WeChat TM , Taobao TM}, K2 is Alipay TM As an example, in the past month, the user used Taobao at home on Mondays TM ,WeChat TM , Taobao TM The number of days T1 is 3, and the user uses Taobao at home on Mondays TM ,WeChat TM , Taobao TM , AlipayTM The number of days T2 is 2 days. The user uses Alipay at home on Monday. TM The number of days T3 is 3 days. In addition, in the past month, the number of days T4 that users use apps at home on Mondays is 4 days. So, if the APP sequence used at home on Mondays is {Taobao TM ,WeChat TM , Taobao TM , Alipay TM} has a greater degree of improvement, then the APP sequence is used as the APP sequence to be recommended under this recommendation factor. Specifically, for example, a user uses Taobao at home on Monday. TM When this theme event occurs, the apps in this app sequence can be recommended to users.

[0056] Then, P(K1, K2) = T2 / T4 = 2 / 4; P(K1) = T1 / T4 = 3 / 4; P(K2) = T3 / T4 = 3 / 4. The calculations of confidence and lift are: conf(K) = P(K1, K2) / P(K1) = (3 / 4) / 0.5 = 1.5; lift(K) = conf(K) / P(K2) = 1.5 / (3 / 4) = 2. At this time, if the lift threshold is 1.8, then the Monday at home APP sequence {Taobao TM ,WeChat TM , Taobao TM , Alipay TM} is greater than the threshold, the sequence is used as the APP sequence to be recommended under the recommendation factor of staying at home on Monday.

[0057] In some embodiments, the present application can pre-construct linear terms (i.e., linear term sequences), quadratic terms (i.e., quadratic term sequences), and multinomial terms (>=2 terms) (i.e., multinomial term sequences) related to the APP sequence for each recommendation factor, and calculate the confidence of each linear term and multinomial term, and finally determine a polynomial whose confidence is greater than a confidence threshold and whose lift is greater than a lift threshold as the APP sequence to be recommended.

[0058] In some embodiments, the present application screens linear terms, quadratic terms and multi-terms by support, such as using the screened linear terms, quadratic terms and multi-terms whose support is greater than the minimum support to construct corresponding post-order polynomials.

[0059] In some embodiments, the support of a polynomial can be the number of days the polynomial is used under a certain recommendation factor, that is, the number of days the polynomial appears under the recommendation factor. TM ,WeChat TM , Taobao TM The number of days T1 is 3, then Taobao TM,WeChat TM , Taobao TM The support degree of is T1=3.

[0060] In some embodiments, the support of a polynomial can be the ratio of the number of days on which the polynomial is used under a certain recommendation factor to the number of days on which the recommendation factor appears. TM ,WeChat TM , Taobao TM The number of days T1 is 3, and the number of days T4 that users use the app at home on Mondays is 4 days, then Taobao TM ,WeChat TM , Taobao TM The support degree is T1 / T4=3 / 4=7.5.

[0061] In some embodiments, the support degree of a polynomial may also be the sum of attenuation factors corresponding to the dates on which the polynomial is used under a certain recommendation factor.

[0062] It can be understood that the attenuation factor decreases as the difference in days increases. The data from dates closer to the current day in the historical time period is considered to be more consistent with the user's actual APP usage, so a larger weight is set for the date where these data are located.

[0063] In some implementations, the attenuation factor can be calculated according to the following formula (3).

[0064] L = l k (3)

[0065] Wherein, L in formula (3) represents the attenuation factor, l represents the preset attenuation degree, such as l is 0.9, and k is the difference in days between a date and the current date in the historical time period. Wherein, k in formula (3) is an integer greater than or equal to 0. For example, when k=0, L=1, when K=1, L=0.9, when k=2, L=0.81, and when k=3, L=0.73.

[0066] In some implementations, the attenuation factor can be calculated according to the following formula (4).

[0067] L = l k-1 (4)

[0068] Wherein, L in formula (4) represents the attenuation factor, l represents the preset attenuation degree, such as l is 0.9, and k is the difference in days between a date and the current date. Wherein, k in formula (4) is an integer greater than or equal to 1. For example, when k=1, L=1, when K=2, L=0.9, when k=3, L=0.81, and when k=4, L=0.73. Assume that the current date is 2022-10-16, and it is Monday when I use Taobao at home.TM ,WeChat TM , Taobao TM The three days are 2022-10-15, 2022-10-13, and 2022-10-12. The attenuation factors of these dates are 1, 0.81, and 0.73, respectively. So corresponding to the recommendation factor of staying at home on Monday, Taobao TM ,WeChat TM , Taobao TM The support degree can be 2.54.

[0069] In some embodiments, the support of a polynomial can also be the ratio of the sum of the decay factors corresponding to the date when the polynomial is used under a certain recommendation factor to the number of days when the recommendation factor appears. TM ,WeChat TM , Taobao TM It has been used for 3 days, and these 3 days are 2022-10-15, 2022-10-13, and 2022-10-12, then the decay factors of these dates are 1, 0.81, and 0.73 respectively. Under the recommendation factor of being at home on Monday, the APP sequence {Taobao TM ,WeChat TM , Taobao TM The support degree of} is 2.54 / 3=0.85.

[0070] In some embodiments, the electronic device can subscribe to different fences for different recommendation factors. Then, the electronic device can determine the recommendation factor where the electronic device is located by identifying the fence. For example, the scenarios of the electronic device include but are not limited to: home, company, hospital, shopping mall, airport, railway station, high-speed service area, government agency, subway, wearing headphones, and car Bluetooth.

[0071] Among them, the fence refers to a trigger condition. When the fence meets the trigger condition, the mobile phone or other electronic device starts to execute a specific business or provide a specific service, such as displaying, refreshing or closing messages, warning information or cards. For example, the card provided by the electronic device in this application can be an APP suggestion card such as YOYO suggestion card. TM For the convenience of description, in some of the following embodiments, APP suggestion cards are also referred to as cards or YOYO suggestion cards. TM card.

[0072] In some embodiments, the APP suggestion card generally includes one or more third-party APPs or mini-programs icons. For example, the APP suggestion card may include multiple APP icons such as TikTok. TM , Taobao TM and Alipay TMIt can also include only an APP or mini program icon, such as a subway code card or WeChat ID. TM card.

[0073] In some embodiments, the APP suggestion card in the present application can be fixedly displayed in a fixed area of ​​the desktop interface. For example, the APP suggestion card can be displayed in a rectangular area in the upper left corner of the main interface, such as Figure 1 In other embodiments, the APP suggestion card can be displayed superimposed on any currently displayed interface when entering a fence, and the APP suggestion card can be automatically canceled after the user clicks on the APP suggestion card to enter a recommended APP or mini program.

[0074] In some embodiments, the shape, number of apps, and arrangement format of the app suggestion card in this application are not specifically limited. For example, the app suggestion card can be in any shape such as a rectangle or a circle. TM The card can be 4 apps in 2×2 format, 4 apps in 2×3 format, or Figure 1 3 APPs are shown with 1 APP in the 1st row and 2 APPs in the 2nd row.

[0075] Generally, fences include multiple types, such as geographic fences, time fences, device fences, and associated event fences, etc. In some embodiments, the fences subscribed by the electronic device for a scene may include one or more types, such as the scene of the user taking the subway includes a geographic fence, which is not specifically limited in this application.

[0076] Geofences are used to characterize trigger conditions related to locations. Specifically, geofences are location-based services (LBS) that use a virtual fence to enclose a geographic area with a virtual boundary, that is, a virtual boundary defines a specific geographic area. In some embodiments, the shape of the geofence can be circular, polygonal, or irregular, which is not specifically limited in this application. In some embodiments, the size of the geofence can be determined based on business needs, which is not specifically limited in this application. For example, the locations of geofences include but are not limited to: home, company, hospital, shopping mall, airport, train station, highway service area, government agency, subway, etc. In some embodiments, the electronic device can monitor the current location of the electronic device in real time to determine whether the electronic device has entered the geofence.

[0077] The time fence is used to represent the trigger conditions related to time. For example, taking the subway scene as an example, the historical time when the user enters and exits the subway station (for example, 7:00 every day) is set as the time fence corresponding to the subway scene.

[0078] Device fences are used to represent trigger conditions related to a specific usage state of a specific electronic device. For example, a specific usage state may be when a user wears headphones or is connected to a car's Bluetooth.

[0079] The associated event fence is used to represent the trigger conditions related to a specific event. Among them, the specific event can be the trigger condition for entering the geo-fence, such as every day before entering the subway, users will use electronic devices to scan the code to unlock the shared bicycle.

[0080] In some embodiments, the electronic device can determine whether the electronic device enters a fence such as a geo-fence, time fence, etc. corresponding to a scene to determine whether the electronic device is in the scene, and then recommend APPs to the user through the displayed APP suggestion card. For example, the subway fence and time fence corresponding to the subway scene, then under the premise that the electronic device enters the geo-fence corresponding to the subway, if the system time of the electronic device meets the time set by the time fence, the electronic device will automatically pop up an APP suggestion card containing the subway boarding code. For another example, the subway fence and the associated time fence corresponding to the subway scene, when the user enters the subway area indicated by the geo-fence, the electronic device can obtain whether the user uses the electronic device to scan the code to unlock the shared bicycle before entering the geo-fence. If the shared bicycle is unlocked by scanning the code, the associated event fence is triggered, and the electronic device automatically pops up the corresponding APP suggestion card.

[0081] In some embodiments, the card display process of the electronic device is described by taking home, company, and subway scenes as examples. Figure 3 As shown, it is assumed that the electronic device has registered geo-fence 01 for the scenario of the user taking the subway, geo-fence 02 for the scenario of the user at home, and geo-fence 03 for the scenario of the user at work. Then, after the user 04 enters the geo-fence 01, the electronic device such as a mobile phone can display the YOYO suggestion card 05, which can include the APPs in the APP sequence that the user regularly uses when taking the subway, such as the APP sequence is Figure 2B Cloud QuickPass TM , Zhihu TM , Tieba TM Cloud QuickPass TM After the user 04 enters the geo-fence 02, the electronic device such as a mobile phone may display a YOYO suggestion card 06, which may include APPs in the APP sequence that the user regularly uses at home, such as the APP sequence of Figure 2A Taobao TM ,WeChat TM , Taobao TM and Alipay TMAfter the user 04 enters the geo-fence 03, the electronic device such as a mobile phone can display a YOYO suggestion card 07, which can include APPs in the APP sequence that the user regularly uses when in the company, such as the APP sequence including a check-in APP, a document APP, a welink APP, and a web browser. TM It can be understood that the fences registered by the electronic device for each scene in the embodiment of the present application are not limited to the geographical fence shown in FIG. 2 , but can also be device fences, time fences, etc., and the present application does not make specific limitations on this.

[0082] In some embodiments, the application recommendation method in the present application can be applied to various electronic devices, including but not limited to: mobile phones, tablet computers, wearable devices, vehicle-mounted devices, augmented reality (AR) devices, virtual reality (VR) devices, laptop computers, ultra-mobile personal computers (UMPC), netbooks, personal digital assistants (PDA) or smart screens and other terminal devices with display functions, and can also be other devices or devices that can recommend applications. The embodiments of the present application do not impose any restrictions on the specific types of electronic devices.

[0083] Taking a mobile phone as an example, Figure 4A A schematic diagram of the hardware structure of a mobile phone provided in an embodiment of the present application is shown.

[0084] like Figure 4A As shown, the mobile phone 10 may include a processor 110, a power module 140, a memory 180, a mobile communication module 130, a wireless communication module 120, a sensor module 190, an audio module 150, a camera 170, an interface module 160, a button 101 and a display screen 102, etc.

[0085] The processor 110 may include one or more processing units, for example, a processing module or processing circuit including a central processing unit (CPU), a graphics processing unit (GPU), a digital signal processor DSP, a microprocessor (MCU), an artificial intelligence (AI) processor, or a programmable logic device (field programmable gate array, FPGA). Different processing units may be independent devices or integrated into one or more processors. A storage unit may be provided in the processor 110 for storing instructions and data. In some embodiments, the storage unit in the processor 110 is a cache memory 180.

[0086] The power module 140 may include a power source, a power management component, etc. The power source may be a battery. The power management component is used to manage the charging of the power source and the supply of power to other modules.

[0087] The mobile communication module 130 may include, but is not limited to, an antenna, a power amplifier, a filter, a low noise amplifier (LNA), etc. The mobile communication module 130 may provide a solution for wireless communications including 2G / 3G / 4G / 5G, etc., applied to the mobile phone 10. The mobile communication module 130 may receive electromagnetic waves by an antenna, and perform filtering, amplification, and other processing on the received electromagnetic waves, and transmit them to the modulation and demodulation processor for demodulation. The mobile communication module 130 may also amplify the signal modulated by the modulation and demodulation processor, and convert it into electromagnetic waves for radiation through the antenna. In some embodiments, at least some of the functional modules of the mobile communication module 130 may be arranged in the processor 110. In some embodiments, at least some of the functional modules of the mobile communication module 130 may be arranged in the same device as at least some of the modules of the processor 110. Wireless communication technologies may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wide band code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), Bluetooth (BT), global navigation satellite system (GNSS), wireless local area networks (WLAN), near field communication (NFC), frequency modulation (FM) and / or field communication (NFC), infrared technology (IR), etc.The GNSS may include a global positioning system (GPS), a global navigation satellite system (GLONASS), a Beidou navigation satellite system (BDS), a quasi-zenith satellite system (QZSS) and / or a satellite based augmentation system (SBAS).

[0088] The wireless communication module 120 may include an antenna, and transmit and receive electromagnetic waves via the antenna. The wireless communication module 120 may provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc., which are applied to the mobile phone 10. The mobile phone 10 may communicate with the network and other devices through wireless communication technology.

[0089] In some embodiments, the mobile communication module 130 and the wireless communication module 120 of the mobile phone 10 may also be located in the same module.

[0090] The display screen 102 is used to display a human-computer interaction interface, images, videos, etc. The display screen 102 includes a display panel. For example, the display screen 102 may display a YOYO suggestion TM The main interface of the card, with YOYO suggestions TM Cards display recommended app icons to users.

[0091] The interface module 160 includes an external memory interface, a universal serial bus (USB) interface, and a subscriber identification module (SIM) card interface, etc. The external memory interface can be used to connect an external memory card, such as a MicroSD card, to expand the storage capacity of the mobile phone 10. The external memory card communicates with the processor 110 through the external memory interface to implement a data storage function.

[0092] In some embodiments, the mobile phone 10 further includes a button 101, a motor, and an indicator. The button 101 may include a volume button, a power on / off button, etc. The motor is used to make the mobile phone 10 vibrate, for example, vibrate when the user's mobile phone 10 is called to prompt the user to answer the call. The indicator may include a laser indicator, a radio frequency indicator, an LED indicator, etc.

[0093] It is to be understood that the structure illustrated in the embodiment of the present invention does not constitute a specific limitation on the mobile phone 10. In other embodiments of the present application, the mobile phone 10 may include more or fewer components than shown in the figure, or combine some components, or separate some components, or arrange the components differently. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.

[0094] The software system of an electronic device such as a mobile phone 10 can adopt a layered architecture, an event-driven architecture, a micro-kernel architecture, a micro-service architecture or a cloud architecture. TM Taking the system as an example, the software structure of the electronic device is exemplarily explained. Figure 4B Schematic diagram of the software structure of the electronic device of the present application embodiment. The layered architecture divides the software into several layers, each layer has a clear role and division of labor. The layers communicate with each other through software interfaces. In some embodiments, Android TM The software layers of the system are divided into the following from top to bottom: application layer, framework layer (FWK), library layer (FWK LIB), and kernel layer (Kernal). The application layer can include a series of application packages, such as desktop applications, payment applications, perception modules 41, business modules 42, presentation modules 43, and learning modules 44. When these application packages are running, they can access the various service modules provided by the application framework layer through the application programming interface (API) and execute corresponding intelligent services.

[0095] Among them, the desktop application can be used to realize the display of the desktop, such as the display of the application icon, the display of the desktop background, the display of the status bar, the display of the notification bar, etc. In addition, the desktop application can also be used to display the APP suggestion card according to the instruction of the presentation module 43, or cancel the card, etc. For example, the payment application can be used to load the user's identity identification code for the user, such as the subway payment code, the bus payment code or the itinerary code, so that the user can scan the code to enter or exit the station, etc. For example, the payment application can be a cloud flash payment. TM .

[0096] The perception module 41 runs in resident mode or in low-power mode, and has the ability to perceive external facts or environments. When the card reminder service is turned on, the perception module 41 monitors fences such as capabilities or matters (such as specific time, specific location, or specific event, etc.) registered with the business module 42. If the user triggers one of the capabilities or matters, the perception module 41 will send a notification to the business module 42. In addition, the perception module 41 can also detect related events and obtain the status of events from other applications in the application layer, or the application framework layer, or the system layer, or the kernel layer through the API, such as detecting Bluetooth connections, network connections, monitoring user text messages, customizing timers, etc.

[0097] Exemplarily, the function of the sensing module 41 includes sensing whether the user has entered a registered fence. For example, the sensing module 41 can detect whether the electronic device has entered the area of ​​the geo-fence of a certain location based on the mapping relationship between the geographical location detected by the electronic device, such as GPS signal, and the location of home, company, subway station, etc.

[0098] The business module 42, which can also be called a computing engine or a brain, has business logic processing capabilities and is used to implement the logic of displaying and disappearing various cards. For example, the business module 42 can query various recommendation factors and the apps to be recommended under each recommendation factor from the learning module 44, and the apps to be recommended under each recommendation factor do not contain apps that the user is not interested in under the recommendation factor, and register the fences corresponding to each recommendation factor in the perception module 41. Furthermore, the business module 42 receives a notification sent by the perception module 41 indicating that a fence has been detected to be triggered, and can send a command to the presentation module 43 (such as YOYO suggestion) according to the logic. TM ) to display YOYO suggestions TM card, where the command can carry links to one or more third-party apps or mini-programs corresponding to the fence. TMWhen an APP in a card is clicked, it will jump to the corresponding third-party APP or mini program according to the link. For example, the multiple APPs corresponding to a fence in this application are the APPs that users tend to click and use under the recommendation factors corresponding to the fence. In addition, the business module 42 can also receive the information sent by the perception module 41 to indicate that the user has used the YOYO recommendation. TM Notifications of the APP in the card, control and cancel the display of the card, etc.

[0099] Presentation module 43, also known as YOYO suggestion TM , used to display or disappear the determined card on the screen of the electronic device. For example, the presentation module 43 can receive a command to display a reminder card transmitted by the business module 42, and display the reminder card to the user. When the user clicks on an APP or mini program in the card, a link will be made to a page of the APP or mini program. In some embodiments, the user clicks on the Cloud QuickPass in the APP suggestion card. TM APP, you can open Cloud QuickPass TM The APP selects to display the QR code page for boarding, so that the user can directly scan the code to enter and exit the subway station. Accordingly, if the presentation module 43 receives the card disappearance command sent by the business module 42, the presentation module 43 will immediately disappear the displayed card (i.e. stop displaying it).

[0100] The learning module 44 is used to analyze the user's historical application usage information, that is, to pre-process this information. For example, the application can mine and learn the APP sequence that users regularly use under various recommendation factors based on the pre-processed data, save the APPs in the APP sequence under various recommendation factors as a portrait table, and provide the business module 42 with the APP portrait table under various recommendation factors.

[0101] The framework layer provides APIs and programming frameworks for applications in the application layer. The application framework layer includes some predefined functions. For example, the framework layer may include window managers and perception management services.

[0102] Among them, the window manager can be used to manage window programs. The window manager can obtain the size of the display screen, determine whether there is a status bar, lock the screen, capture the screen, etc. The perception management service can be used to provide the application layer with APIs related to the processing functions of time information and location information, such as obtaining the time information and location information of the electronic device, and provide the context perception module with APIs related to the processing functions of geo-fences, such as determining whether the electronic device enters or leaves the geo-fence. The library layer includes the system library and the Android runtime. The system library can include multiple functional modules, such as the surface manager. The Android runtime is responsible for the scheduling and management of the Android system, including the core library and the virtual machine. The core library contains two parts: one part is the function function that needs to be called by the Java language, and the other part is the core library of Android. The application layer and the application framework layer run in the virtual machine. The virtual machine executes the Java files of the application layer and the application framework layer as binary files. The virtual machine is used to perform object life cycle management, stack management, thread management, security and exception management, and garbage collection.

[0103] The kernel layer is the interface layer between hardware and software. The kernel layer may include mobile communication drivers, Wi-Fi drivers, GNSS drivers, display drivers, and sensor drivers.

[0104] It should be noted that although the embodiment of the present application is based on Android TM The system is used as an example, but the basic principle is also applicable to iOS-based TM or Windows TM Electronic devices with other operating systems.

[0105] The executor of the application recommendation method provided in the embodiment of the present application can be the above-mentioned electronic device, or it can be a functional module and / or functional entity (such as a processor) in the electronic device that can implement the application recommendation method, and the present application scheme can be implemented by hardware and / or software, which is not limited in the present application.

[0106] Combination Figure 5 ,by Figure 4B Some functional modules in the electronic device shown are execution entities, and the application recommendation method provided in the embodiment of the present application is illustrated.

[0107] S501: The presentation module 43 sends a card activation message to the service module 42.

[0108] In some embodiments, the card startup message may be a message sent by the presentation module 43 to the business module 42 when the electronic device is turned on, restarted, the system is updated, the YOYO suggestion is updated, or the learning task is updated, and is used to instruct the business module 42 to subscribe to a certain learning task.

[0109] The above learning tasks can be learning tasks that users or software developers add or update in the setting options of YOYO suggestions. YOYO suggestions usually support one or more learning tasks. In some embodiments, the learning tasks in this application can learn the APP sequences that users regularly use under various recommendation factors.

[0110] S502: The business module 42 subscribes to a learning task from the learning module 44. For example, the learning task is to learn a sequence of APPs that are regularly used by users under various recommendation factors.

[0111] S503: The learning module 44 pre-processes the historical data when the screen is turned off during charging to obtain multiple historical application usage information, and learns to obtain a portrait table of the APP under various recommendation factors.

[0112] Among them, the learning module 44 can learn the rules of users' use of APPs in various scenarios based on multiple historical application usage information, so as to obtain a portrait table of APPs corresponding to the APP sequences under various recommendation factors.

[0113] It can be understood that the APP sequence in the portrait table under each recommendation factor is the APP sequence that users regularly use under the recommendation factor. For example, the portrait table under the Monday at home scenario includes the APP sequence that users regularly use in the company {Taobao TM ,WeChat TM , Taobao TM , Alipay TM}.

[0114] In some embodiments, an APP sequence under a recommendation factor determined by the learning module 44 may include duplicate APPs, so the learning module 44 can deduplicate the APPs in the APP sequence and then save them into the portrait table.

[0115] It can be understood that for APP suggestion cards, the above learning process can determine the APP sequence with a larger improvement under each recommendation factor, such as the APP sequence with a improvement greater than the improvement threshold, and save it as a portrait table of the APP sequence under the recommendation factor.

[0116] In some embodiments, the historical data may be data on the use of an APP by a user within a historical time period, and the historical time period may be within the last month.

[0117] In some embodiments, the state in which the learning module 44 performs the mining learning process is not limited to the above-mentioned charging and screen-off state, but can also be the standby state of other electronic devices. This application does not make specific limitations on this.

[0118] In some embodiments, the above historical data may include user APP click records and scene trigger records pre-acquired by the electronic device. In addition, the above multiple historical application usage information may be obtained by integrating the historical data.

[0119] In some embodiments, each piece of historical application usage information may include an APP information, an APP click time (ie, the time information when the APP is used), and an APP scene information (ie, the scene information of the electronic device when the APP is used).

[0120] The above user APP click record may include multiple APP click records, each APP click record includes APP information and APP click time, wherein the APP information may be the APP name, etc. The above scene trigger record may include multiple scene trigger records, each scene trigger record may include the identification information trigger time of the scene where the electronic device is located, wherein the identification information of the scene may be the geographic location, GPS information, whether the headset is worn, etc. For example, the identification of the above scene may indicate: home, company, hospital, shopping mall, airport, railway station, highway service area, government agency, subway, wearing headset, car Bluetooth, etc.

[0121] In some embodiments, the historical data may be data from a recent period of time, for example, the historical data may be data from the last month or multiple months, that is, the multiple historical application usage information may reflect the user's APP usage in various scenarios in the last month or multiple months.

[0122] In some embodiments, the multiple historical application usage information acquired by the electronic device may be in the form of a data collection table, and the historical application usage information in different types of scenarios may be stored in different data collection tables. For example, the historical application usage information in fixed locations such as home and company may be stored in the same data collection table, the historical application usage information in mobile scenarios such as buses and subways may be stored in the same data collection table, and the historical application usage information in device-related scenarios such as wearing headphones and car Bluetooth may be stored in the same data collection table.

[0123] Among them, the processing flow of APP sequences under each recommended factor in this application will be combined below Figure 6 A detailed description is given and no further elaboration is given here.

[0124] S504: The business module 42 queries the APP portrait table under each recommendation factor from the learning module 44. For example, the APP portrait table includes APP information of each preferred APP, information of the recommendation factor (such as scenario information), support degree, and promotion degree.

[0125] S505: The business module 42 registers the fences of each recommendation factor with the context perception module 41, wherein each fence is associated with a portrait table of the APP under the corresponding recommendation factor.

[0126] S506: The business module 42 monitors the task running status.

[0127] It is understandable that the business module 42 can monitor whether the current desktop interface is running, or whether a certain APP interface is opened, etc. Also, whether a theme event occurs that a user uses a certain APP under a certain recommendation factor.

[0128] S507: The context awareness module 41 sends a first fence trigger notification to the service module 42.

[0129] Among them, the situation perception module 41 can detect in real time whether a certain fence is triggered, and notify the business module 42 after a fence is triggered.

[0130] The first fence is a fence registered in the context awareness module 41. It can be understood that a fence being triggered indicates that the electronic device enters the scene corresponding to the fence.

[0131] S508: The business module 42 notifies the presentation module 43 to display the APPs in the portrait table under the current recommendation factor through the APP suggestion card, that is, to issue a card. For example, the presentation module 43 is YOYO suggestion, and the APP suggestion card is a YOYO suggestion card.

[0132] In some embodiments, when the business module 42 detects the occurrence of a theme event corresponding to the first fence, the business module 42 may notify the presentation module 43 to display the APP sequence in the portrait table of the APP in the current scene through the APP suggestion card.

[0133] In some embodiments, the order of the APPs in the APP sequence displayed by the APP suggestion card may not be specifically limited, and may be the order in the APP sequence, or any other order.

[0134] In some embodiments, the business module 42 may notify the presentation module 43 of the preferred APPs included in the YOYO suggestion card in the target area of ​​the main interface when switching to the main interface including the target area.

[0135] In other embodiments, the business module 42 may notify the presentation module 43 to overlay and display a YOYO suggestion card on any currently displayed interface, so as to recommend an APP to the user through the YOYO suggestion card.

[0136] In this way, when the electronic device enters a certain scene, the fence corresponding to the scene is triggered, and the electronic device can display the APPs recommended to the user in the YOYO suggestion card. These APPs do not include APPs that the user is not interested in in this scene. In this way, the APPs recommended to the user meet the user's actual needs, which is conducive to improving the user experience in the APP recommendation process.

[0137] Next, combine Figure 6 , taking the electronic device as the execution subject, an example is given of the application recommendation method provided by some embodiments of the application. Specifically, the method includes the following steps S601-S612:

[0138] S601: Preprocess the historical data within the historical time period to obtain multi-dimensional data.

[0139] The above historical time period may be within the last month. The above usage history data may include user APP click records and scene trigger records. Each user APP click record is used to record the time when the next APP was clicked and used by the user at a historical moment, that is, an APP click record has an APP information and a time information. For example, the above APP information may be the APP name, recorded as packageName.

[0140] In addition, each scene trigger record in this application may have a scene description information sceneX, for example, sceneX is a geographic (Geo) location or a connected device (such as headphones or car Bluetooth), and also has a time information. That is, each scene trigger record is used to record a historical moment when the next scene is triggered. For example, the geographic location of this application can be geographic location information such as a province or city house number, or a geographic fence (i.e., a geographic area) such as a home or company, recorded as geoStatus.

[0141] It can be understood that the present application can associate the scene trigger records with the same time information through the time information in the user APP click record to reflect the scene of the APP and electronic device clicked by the user in the same time period.

[0142] The multi-dimensional data may be data of dimensions such as time, space, and device usage. It is understood that different recommendation factors in the present application correspond to different data dimensions, for example, the recommendation factors include time factors, space factors, device usage factors, etc. Among them, the device usage factor is used to indicate the external devices currently connected to the electronic device, such as headphones, car Bluetooth, etc.

[0143] In some embodiments, reference Figure 7 As shown, the above S601 may include the following steps S601a to S601d:

[0144] S601a: Obtain historical data within a historical time period.

[0145] The above historical time period may be within the last month. The above usage history data may include user APP click records and scene trigger records. Each user APP click record is used to record the time when the next APP was clicked and used by the user at a historical moment, that is, an APP click record has an APP information and a time information. For example, the above APP information may be the APP name, recorded as packageName.

[0146] In addition, each scene trigger record in this application may have a scene description information sceneX, for example, sceneX is a geographic (Geo) location or a connected device (such as headphones or car Bluetooth), and also has a time information. That is, each scene trigger record is used to record a historical moment when the next scene is triggered. For example, the geographic location of this application can be geographic location information such as a province or city house number, or a geographic fence (i.e., a geographic area) such as a home or company, recorded as geoStatus.

[0147] It can be understood that the present application can associate the scene trigger records with the same time information through the time information in the user APP click record to reflect the scene of the APP and electronic device clicked by the user in the same time period.

[0148] S601b: Filter out data of theme events corresponding to each recommendation factor from the historical data to obtain a first data table.

[0149] In some embodiments, the above-mentioned theme event corresponds to a recommendation factor, and the theme event is an APP click event under the recommendation factor. Among them, the recommendation factor can be a scene such as being at home, at work, wearing headphones, wearing headphones at home, wearing headphones at work, etc. on a certain day from Monday to Sunday, and the theme event is an event of clicking to use the APP in the corresponding scene. For example, the above-mentioned theme event can be an event of a user clicking to use the APP at home on Monday, an event of clicking to use the APP on Tuesday in the subway, an event of clicking to use the APP in the company on Wednesday, an event of wearing headphones and clicking to use the APP on Monday, etc.

[0150] In some embodiments, the first data table includes multiple pieces of data, each piece of data is used to indicate that a user clicked and used an APP under a recommendation factor at a historical moment. For example, a piece of data includes APP information (such as APP name), scene information (such as geographic location, device connection information, etc.), time information, etc. Among them, the above time information may include a timestamp, and the data format of the timestamp may be xx / xx / xx / xx hour / xx minute / xx second, and xx / xx / xx / xx is the date. In addition, the above time information may include information on the day of the week (i.e., Monday to Sunday).

[0151] In some embodiments, the present application can filter historical data through a multidimensional matrix md_dict of business-specified scenarios, and retain the data under the scenarios of relevant keys (key) and values ​​(value) in the multidimensional matrix md_dict, to filter the subject event data of historical data to obtain a first data table. Among them, the relevant keys in the multidimensional matrix md_dict correspond to the subject events under different recommendation factors. For example, refer to the multidimensional matrix md_dict shown in Table 1, where md_dict = {'geoStatus': [1,2], 'weekday': None}, after filtering the subject event data, the data with geoStatus of 1, 2 and weekday are filtered out. At this time, the data table shown in Table 1 can be expressed as a data table (list) of sorted (md_dict.keys()), that is, the sorted first data table.

[0152] Among them, geoStatus indicates the geographic location, with a value of 1 for home and a value of 2 for work. Weekday indicates the day of the week, with a value of "None" for all days from Monday to Sunday, and specific values ​​of 0-6 for Monday to Sunday respectively.

[0153] Table 1:

[0154] packageName(APP name) geoStatus weekday … WeChat 1 0 … Welink 2 2 … toutiao 1 6 …

[0155] Among them, "packageName", "geoStatus" and "Weekday" in Table 1 are the keys related to md_dict, and the values ​​of these keys are related values. Then, the data in Table 1 is the data after filtering the subject event data of historical data. At this time, the packageName value in the first row of data in the table is wechat (i.e. WeChat TM), geoStatus takes a value of 1, and weekday takes a value of 0, indicating that the user clicked and used WeChat at home on Monday. In addition, although not shown in Table 1, each piece of data in Table 1 may actually include other information, such as the time information (such as a timestamp) at which each APP was used.

[0156] In some embodiments, each piece of data in the first data table is sorted according to its date, specifically in the order of timestamp, such as sorting from small to large in time.

[0157] S601c: construct a primary key for each data item in the first data table to obtain a second data table.

[0158] In some embodiments, the present application may construct a primary key for each subject event in the first data table, and different subject events correspond to different primary keys.

[0159] In some embodiments, the present application concatenates the corresponding values ​​of the corresponding points of each key according to the first data table, and then concatenates the packageName to obtain the primary key of each data (denoted as primary_key) to obtain the second data table.

[0160] It can be understood that a primary key includes information about recommendation factors and APP information. For example, the information about recommendation factors can include geographic location and day of the week, such as Monday at home, and the APP information can be the APP name. In addition, the above primary key can also be called a point primary key, event index, primary index, or data index, etc., which will not be described in detail in the embodiments of this application.

[0161] Refer to Table 2 to construct a primary key for each piece of data in the first data table shown in Table 1. For each piece of data in Table 1, its packageName, geoStatus, and weekday can be concatenated to obtain the corresponding primary_key. For example, concatenating Wechat, 1, and 0 in the first row of data in Table 2, the primary_key obtained is 1_0_wechat, indicating that the user uses WeChat at home on Monday. TM Similarly, the primary_key of the second data in the second data table shown in Table 2 is 2_2_welink, indicating that the user clicked and used welink in the company on Tuesday. TM The third data item in the second data table shown in Table 2 has a primary_key of 1_6_toutiao, indicating that the user clicked on Toutiao at the company on Tuesday. TM This theme event.

[0162] Table 2:

[0163] packageName geoStatus weekday … primary_key WeChat 1 0 … 1_0_wechat welink 2 2 … 2_2_welink toutiao 1 6 … 1_6_toutiao

[0164] In some embodiments, each primary_key corresponds to a recommendation factor. For example, the recommendation factor corresponding to "1_0" in 1_0_wechat is that the user is at home on Monday, the recommendation factor corresponding to "2_2" in 2_2_welink is that the user is at work on Wednesday, and the recommendation factor corresponding to "1_6" in 1_6_toutiao is that the user is at home on Sunday.

[0165] S601d: Divide the second data table into multiple dimensions.

[0166] In some embodiments, the present application may default to using time intervals such as hours, days, weeks, etc. as the basis for division, for example, defaulting to using days as the unit to divide the events represented by each piece of data in the second data table.

[0167] In some embodiments, the present application may divide the second data table according to one or more dimensions of time, space, and device usage. For example, the present application may divide the second data table according to wearing headphones at home and wearing headphones at work.

[0168] Refer to Table 3, which is an event division configuration table based on events provided in an embodiment of the present application.

[0169] Table 3:

[0170] Event partition configuration transKey date dailyDate subway dailyDate,subwayStatus Home dailyDate,home company dailyDate,company earphone dailyDate, earphone Car Bluetooth dailyDate,car

[0171] Table 3 includes multiple event partition configurations, each of which corresponds to a partition key (denoted as transKey), that is, a key for event partitioning. The event partition configurations shown in Table 3 may include date, subway, home, company, headset, and car Bluetooth.

[0172] Referring to Table 3, when dividing events based on date, transKey can be daily date (dailyDate). At this time, the present application can divide the data in the second data table based on daily date to obtain multi-dimensional data, which includes data corresponding to APP click events within one day in the historical time period.

[0173] For example, referring to Table 4, this is a data table after the application divides the events by date, and the events in the data table are APP click events within October 12, 2022. The timestamp represented by Timestamp can also be recorded as ts, such as the three timestamps in Table 4 are recorded as ts1, ts2 and ts3 respectively. At this time, the data shown in Table 4 can be data in multidimensional data, that is, data corresponding to the point primary key 1_0_wechat in the data corresponding to the date 2022-10-12.

[0174] Table 4:

[0175] packageName geoStatus weekday Timestamp(ts) primary_key WeChat 1 0 2022-10-12 10:00:00(ts1) 1_0_wechat WeChat 1 0 2022-10-12 12:15:20(ts2) 1_0_wechat WeChat 1 0 2022-10-12 16:50:35(ts3) 1_0_wechat

[0176] In addition, referring to Table 3, when dividing events based on subway, transKey can be one or more of dailyDate and subway status (recorded as subwayStauts). For example, taking transKey as dailyDate and subwayStauts as an example, the multi-dimensional data obtained by division includes data corresponding to APP click events in the subway scene in one day during the historical time period.

[0177] Referring to Table 3, when dividing events based on home, transKey can be one or more of dailyDate and the geographic location of home (recorded as home). For example, taking transKey as dailyDate and home as an example, each multi-dimensional data obtained by division includes data corresponding to APP click events in the home scene in one day during the historical time period.

[0178] Referring to Table 3, when dividing events based on company, transKey can be one or more of dailyDate and the company's geographic location (represented as company). For example, taking transKey as dailyDate and company as an example, the multi-dimensional data obtained by division includes data corresponding to APP click events in the company scenario in one day during the historical time period.

[0179] Referring to Table 3, when events are divided based on headphones, transKey can be one or more of dailyDate and whether the phone is connected to headphones, that is, whether the user is wearing headphones (recorded as earphone). For example, taking dailyDate and earphone as the transKey, the multi-dimensional data obtained by division includes data corresponding to APP click events in the headphones wearing scenario in one day during the historical time period.

[0180] Referring to Table 3, when dividing events based on car Bluetooth, transKey can be one or more of dailyDate and whether the mobile phone is connected to headphones, that is, whether the user is wearing headphones (recorded as car). For example, taking transKey as car as an example, the multi-dimensional data obtained by division includes data corresponding to APP click events in the scenario of mobile phone connected to car Bluetooth in the historical time period.

[0181] Next, continue to Figure 6 The steps S602 and so on are described in detail.

[0182] S602: For the acquired multidimensional data, the data corresponding to each primary key is concatenated into each first sequence according to the date, and a reverse order index table is constructed according to the timestamp of the first sequence corresponding to each primary key.

[0183] Specifically, the inverted index table includes multiple groups of inverted indexes, one primary key corresponds to one group of inverted indexes, and one group of inverted indexes includes various inverted indexes under various dates. Among them, one group of inverted indexes includes multiple timestamps corresponding to multiple click events of the same APP (i.e., the APP represented by the primary key) under the same date, and these timestamps are sorted in reverse order, that is, from far to near in time, or from small to large in time.

[0184] In some embodiments, a primary key corresponds to one or more first sequences, each first sequence includes one or more consecutive data under the same date, and each first sequence corresponds to a timestamp. It can be understood that the first data in a first sequence is the data of the click event of the APP indicated by the corresponding primary key, and its corresponding timestamp is the timestamp corresponding to the click event of the APP. That is, the present application uses the timestamp corresponding to the first data in a first sequence as a reverse index, so that an inverted index corresponds to a first sequence.

[0185] In some embodiments, when multidimensional data is divided by date, the number of dates in a set of inverted indices corresponding to a primary key is the number of first sequences corresponding to the primary key. At this time, each first sequence is divided by day, and each first sequence includes the event of clicking to use a specified APP under the recommendation factor corresponding to the corresponding primary key and the subsequent data of a segment of APP click events.

[0186] In some embodiments, since the subject event data in the present application has been sorted in ascending order according to timestamps in the preprocessing stages from S602 to S604, the subject event table corresponding to the multidimensional data is read in sequence, and an inverted index is constructed according to the established primary key, and the data under the corresponding date are serially spliced ​​to obtain each first sequence.

[0187] Refer to Table 5, which is an example structure of an inverted index table shown in an embodiment of the present application.

[0188] Table 5:

[0189] primary_key Info(ts:timestamp) 1_0_wechat '2022-10-12':[ts1,ts2,ts3],'2022-10-15':[ts3,ts5,ts7] 2_2_welink '2022-10-16':[ts10] 1_6_toutiao '2022-10-17':[ts9,ts12]

[0190] Among them, the inverted index (referred to as Info) in the inverted index table in Table 5 is arranged in reverse order according to the timestamp. A set of inverted indexes corresponding to 1_0_wechat in Table 5 is ts1, ts2, ts3, ts3, ts5, ts7, and these indexes are divided into '2022-10-12': [ts1, ts2, ts3] and '2022-10-15': [ts3, ts5, ts7] according to the date. Among them, ts1, ts2, ts3 are the users using WeChat at home on Monday, 2022-10-12. TM The timestamps of the three APP click events (wechat), and ts1, ts2, and ts3 are arranged in ascending order. Then, the first sequence corresponding to ts1 includes clicking on WeChat at home on Monday under ts1 TM Event data and subsequent consecutive clicks using WeChat TM Event data. Similarly, the set of reverse indexes corresponding to 2_2_welink is '2022-10-16':[ts10]. The set of reverse indexes corresponding to 1_6_toutiao is '2022-10-17':[ts9,ts12].

[0191] S603: Traverse the inverted index table to determine the number of dates under the recommendation factor corresponding to each primary key.

[0192] Among them, each primary key corresponds to the number of dates under the recommendation factor, that is, the number of days when the APP corresponding to the primary key was clicked and used under the recommendation factor in the historical time period.

[0193] For example, referring to Table 5, for the recommendation factor of using the APP at home on Monday represented by '1_0', the number of days the recommendation factor appears is the number of dates corresponding to 1_0_wechat. Among them, the recommendation factor "1_0" shown in Table 5 corresponds to 1_0_wechat, expressed as 1_0_wechat->'1_0'. Therefore, the dates corresponding to the recommendation factor "1_0" are 2022-10-12 and 2022-10-15, expressed as '1_0':['2022-10-12','2022-10-15']. Thus, the number of days the recommendation factor "1_0" appears is 2, expressed as '1_0':2.

[0194] S604: Calculate the minimum support (min support) of the recommendation factor corresponding to each primary key according to the number of times the APP is used under the recommendation factor corresponding to each primary key.

[0195] It can be understood that the support level of an APP under a recommendation factor in the present application can reflect the probability of users using the APP under the recommendation factor in a historical period of time.

[0196] In some embodiments, in order to improve the situation where the corresponding minimum support is inaccurate due to the small number of times the APP is used under a certain recommendation factor, the present application can use the following formula (1) to calculate the minimum support under each recommendation factor.

[0197] minup(x)=e (-ax-b) +c (5)

[0198] Wherein, x represents the number of dates under the recommendation factor corresponding to each primary key (i.e., the total number of these dates). In addition, a, b, and c in formula (5) are all constants, and their specific values ​​are empirical values ​​or determined according to actual needs, and are not specifically limited here.

[0199] For example, the number of dates x under the recommendation factor '1_0' corresponding to 1_0_wechat shown in Table 5 is 2, and the minimum support of the recommendation factor '1_0' corresponding to 1_0_wechat is calculated to be 3 according to the above formula (1), which is expressed as '1_0':3.

[0200] In some embodiments, the present application may calculate the number of dates under the recommendation factors corresponding to each primary key. (-ax-b) +c obtains a value, compares the minimum value among these values, and takes the minimum value as the value of minup(x) under the recommended factor.

[0201] S605: For each date under each recommendation factor corresponding to each primary key, calculate the difference in days between the corresponding date and the current date, and calculate the decay factor of the corresponding date according to the difference in days. At this time, the decay factor of the corresponding date can also be called the weight of the date.

[0202] It can be understood that the attenuation factor decreases as the difference in days increases. The data from dates closer to the current day in the historical time period is considered to be more consistent with the user's actual APP usage, so a larger weight is set for the date where these data are located.

[0203] In some embodiments, the present application may use the above formula (3) or (4) to calculate the attenuation factor corresponding to each date. For example, referring to formula (4), assuming that the current day is 2022-10-16, the difference between the date '2022-10-15' corresponding to 1_0_wechat and the current day is 1, so the weight is 1; and the difference between the date '2022-10-12' and the current day is 4 and the weight is 0.73.

[0204] S606: construct multiple first-order terms under each recommendation factor, and filter out each first-order term whose support is greater than the minimum support under the corresponding recommendation factor.

[0205] It can be understood that each primary item is an APP used by a user under a recommendation factor. Then, based on the primary item, the APP sequence that the user prefers to use under the recommendation factor can be determined later.

[0206] In some embodiments, reference Figure 8 , the above S606 may include S606a and S606b:

[0207] S606a: Traverse the inverted index table, add the decay factors of the dates under the recommendation factors corresponding to each primary key, and obtain the support of the APP under the recommendation factors corresponding to each primary key. That is, the support is the support after decay according to the date.

[0208] For example, assuming that the weight of the date '2022-10-15' under the recommendation factor '1_0' corresponding to 1_0_wechat shown in Table 5 is 1, and the weight of '2022-10-12' is 0.73, then under the recommendation factor '1_0', click Use WeChat TM The support degree of (wechat) is 1+0.73=1.73. Similarly, the present application can calculate the support degree of other APPs under the recommendation factor '1_0'.

[0209] Refer to Table 6, which is an example of the support level of each APP under a recommendation factor provided by this application.

[0210]

[0211]

[0212] Among them, the items in Table 6 represent various APPs used under a recommendation factor, for example, including A, B, C, D, E, F, and G APPs, and the support levels are 4, 5, 3, 4, 1, 4, and 4 respectively. For example, the recommendation factor shown in Table 6 can be recommendation factor '1_6', that is, the scene at home on Sunday. And A, B, C, D, E, F, and G can be WeChat, TM , TaobaoTM ,Tik Tok TM , Alipay TM 、welink TM , Youku TM , WeChat Reading TM .

[0213] Similarly, this application calculates the support of each APP under other recommendation factors.

[0214] S606b: Use the APPs under the recommendation factors corresponding to each primary key whose support is greater than the minimum support to construct multiple primary items under each recommendation factor. Among them, each primary item is arranged in reverse order according to the support, that is, each primary item is arranged in order from large to small according to the support.

[0215] Refer to Table 7, which is a list of items corresponding to each APP used under a recommendation factor in this application.

[0216] Item Support B 5 A 4 D 4 F 4 G 4 C 3

[0217] The item in Table 7 represents each APP used under a recommendation factor, that is, each primary item in the primary item list. In addition, each primary item in the primary item sequence shown in Table 7 is arranged in reverse order of support. In addition, under the premise that the minimum support is 3, since the support of E in Table 6 is 1 and less than the minimum support, E is removed so that this item is not included in Table 7. For example, E is welink TM , which means click to use welink under the recommended factor '1_6' TM .

[0218] S607: construct multiple quadratic terms under each recommendation factor, and select each quadratic term whose support is greater than the minimum support under the corresponding recommendation factor.

[0219] It can be understood that a quadratic term represents two apps used successively under a recommendation factor. When a quadratic term represents two apps used successively within a short period of time (such as 10 minutes) under a recommendation factor and the confidence of this quadratic term is high, it means that the two apps in the quadratic term are the app sequence preferred by users under this recommendation factor.

[0220] In some embodiments, reference Fig. 9 , the above S607 may include S607a, S607b and S607c:

[0221] S606a: Traverse the inverted index table, combine each APP in the first-order term sequence corresponding to each recommendation factor to construct each second-order term, and select the second-order terms whose timestamps corresponding to the two combined APPs are within the first time window. For example, the first time window refers to the time within the same day.

[0222] In some embodiments, the present application can obtain the first sequence corresponding to each inverted index by traversing the inverted index table, thereby obtaining the time information (such as timestamp) of each data in the first sequence. That is, by traversing the inverted index table, the time information of each data under each recommendation factor in the historical time period can be obtained. At this time, the present application can obtain the timestamps corresponding to the two APPs of each secondary item in the secondary item list to determine whether the timestamps of the two APPs are within the first time window, that is, to determine whether the two APPs are used on the same day.

[0223] Table 8 shows a list of secondary items corresponding to each APP under a recommendation factor provided in this application.

[0224] Table 8:

[0225] AA AB AC AD AF AG BA BB BC BD BF BG CA CB CC CD CF CG DA DB DC DD DF DG FA FB FC FD FF FG GA GB GC GD GF GG

[0226] For example, if the timestamps corresponding to two APPs in some quadratic terms in Table 8 are not within the first time window, these quadratic terms will be filtered out, such as GC. On the contrary, if the timestamps corresponding to two APPs in some quadratic terms in Table 8 are within the first time window, these quadratic terms will be retained, such as AB, AC, etc.

[0227] S607b: Filter out the quadratic term of the difference between the timestamps corresponding to the two combined APPs within the second time window. For example, the second time window is 10 minutes.

[0228] It can be understood that the present application can obtain the timestamps corresponding to the two APPs of each quadratic term to determine whether the timestamps of the two APPs are within the second time window, for example, whether the difference between the timestamps corresponding to the two APPs is within the duration of the second time window, that is, whether the difference in the time the two APPs are used is within 10 minutes.

[0229] S607c: Calculate the support of each quadratic item under each recommendation factor, and select the quadratic item whose support corresponding to each recommendation factor is greater than the minimum support.

[0230] It can be understood that the support degree of a quadratic term under a recommendation factor in the present application refers to the probability that a user uses two APPs in the quadratic term sequentially within a historical time period, specifically, the probability that a user uses two APPs in the quadratic term sequentially within a second time window (such as 10 minutes) within the historical time period.

[0231] In some embodiments, the present application may determine the number of dates on which each secondary term under each recommendation factor appears, that is, the number of days on which these secondary terms appear, in the data in the first sequence under each primary key corresponding to the recommendation factor.

[0232] In some embodiments, the present application uses the number of dates on which a quadratic term under each recommendation factor appears as the support degree of the quadratic term under the recommendation factor.

[0233] In some embodiments, the present application determines the date of occurrence of a quadratic term under each recommendation factor, and takes the sum of the weights corresponding to the various dates as the support of the quadratic term under the recommendation factor.

[0234] In some embodiments, the present application uses the ratio of the number of days for each recommendation factor to the number of days for the next quadratic term to appear as the support of the quadratic term.

[0235] In some embodiments, the present application uses the ratio of the sum of the weights corresponding to the date of the next quadratic item of each recommendation factor and the number of days the recommendation factor appears as the support of the quadratic item.

[0236] S608: construct multiple cubic terms under each recommendation factor, and filter out each cubic term whose support is greater than the minimum support under the corresponding recommendation factor.

[0237] In some embodiments, the present application may connect (or concatenate, join) two quadratic terms to construct a cubic term.

[0238] In some embodiments, the above connection can be implemented using a pruning method. The pruning method refers to excluding branches that do not meet the conditions and reducing the amount of calculation in the process of building multiple terms to improve the running efficiency of the program. For example, the pruning algorithm in this application is to split a polynomial, such as splitting to obtain a sequence after the first element of the polynomial is removed, or splitting to obtain a sequence after the last element of the polynomial is removed.

[0239] It can be understood that the ordered APPs in multiple items under a recommendation factor in this application are the APP sequence used by the user in this scenario.

[0240] In some embodiments, reference Fig.10 , the above S608 can be passed through S608a to S608e:

[0241] S608a: When the prefix polynomial is a binomial, split each prefix polynomial of each recommendation factor to obtain a corresponding first subsequence and a second subsequence, wherein the first subsequence is a sequence after removing the first element from the term, and the second subsequence is a sequence after removing the last element from the term.

[0242] It can be understood that the present application can construct a post-order polynomial based on a pre-order polynomial, and the number of terms of the post-order polynomial is 1 more than the number of terms of the pre-order polynomial. Usually, if the pre-order polynomial is greater than or equal to the 2nd degree, then the post-order polynomial is a polynomial such as a trinomial or a quaternary polynomial. For example, when constructing a trinomial from a binomial, the binomial is the pre-order polynomial, and the trinomial is the post-order polynomial.

[0243] For example, the above preorder polynomial is recorded as sequence, the first subsequence is recorded as -1st, and the second subsequence is recorded as -Last. That is, -1st means the sequence after removing the first element from sequence, and -Last means the sequence after removing the last element from sequence.

[0244] The decomposition of the polynomial is described by taking the pre-order polynomial as a quadratic term as an example. Referring to Table 9, an example of decomposition of a binomial in an embodiment of the present application is shown.

[0245] Table 9:

[0246] 2-seq 2-seq-1st 2-seq-Last AB B A AC C A AD D A … … …

[0247] Among them, the 2-seq shown in Table 9 represents a binomial under a recommendation factor, including AB, AC, AD, etc. For example, for the binomial AB, the 2-seq-1st (i.e., the first subsequence) obtained by removing the first element (recorded as -1st operation) is B, and the 2-seq-Last (i.e., the second subsequence) obtained by removing the last element (recorded as -Last operation) is A. Similarly, the binomials AC and AD can also be split. It can be understood that the binomial under a recommendation factor (such as '1_0') of this application includes but is not limited to the binomial shown in Table 9, and for example also includes quadratic terms such as FA.

[0248] S608b: For each recommendation factor, multiple groups of pre-order polynomials X and pre-order polynomials Y are obtained, and it is determined that a first subsequence after removing the first element of the pre-order polynomial X is the same as a second subsequence after removing the last element of the corresponding pre-order polynomial Y. It can be understood that for the multiple pre-order polynomials for each recommendation factor, the pre-order polynomial X and the pre-order polynomial Y are any two of them.

[0249] In some embodiments, the preamble polynomial X is recorded as sequence X, and the preamble polynomial Y is recorded as sequence Y. The sequence after removing the first element a from sequence X is the first subsequence x, that is, Xa=x; the sequence after removing the first element z from sequence Y is the second subsequence y, that is, y+z=Y; at this time, x=y.

[0250] Referring to Table 10, a binomial concatenation example provided in an embodiment of the present application is shown.

[0251] Table 10:

[0252] In some embodiments, the preamble polynomial X is recorded as sequence X, and the preamble polynomial Y is recorded as sequence Y. For example, sequence X is subjected to a -1st operation to obtain a, (Xa=x), and sequence Y is subjected to a -Last operation to obtain y, (y+z=Y), x=y.

[0253] Referring to Table 10, an example of concatenating binomials provided in an embodiment of the present application is shown.

[0254] Table 10:

[0255]

[0256] In Table 10, the quadratic term represented by 2-seq(1) may be a pre-order polynomial X, and the quadratic term represented by 2-seq(2) may be a pre-order polynomial Y. 2-seq-1st represents the first subsequence of the corresponding pre-order polynomial X after removing the first element, and 2-seq-Last represents the second subsequence of the corresponding pre-order polynomial X after removing the last element.

[0257] For example, taking the first row of data in Table 10 as an example, the preamble polynomial X is AB, its first element a is A, and its first subsequence x after removing A is B; and the preamble polynomial Y is AC, its last element z is C, and its second subsequence y after removing C is B, then x=y=B.

[0258] S608c: For each group of pre-order polynomials X and pre-order polynomials Y under each recommendation factor, determine that the timestamp corresponding to the first subsequence x obtained by splitting is the same as the timestamp corresponding to the second subsequence y, and the timestamp of element a in pre-order polynomial X is before the timestamp of element z in pre-order polynomial Y.

[0259] In some embodiments, the timestamp of element a in preamble polynomial X and the timestamp of element z in preamble polynomial Y may be within the second time window (ie, 10 minutes).

[0260] For example, taking the first row of data in Table 10 as an example, the present application can determine whether the timestamp corresponding to the first sequence B of the preamble polynomial AB is the same as the timestamp of the second subsequence B of the preamble polynomial AC. If they are the same, continue to execute the subsequent steps; if they are different, end; determine whether the timestamp corresponding to the first element A of the preamble polynomial AB is the same as the timestamp of the last element C of the preamble polynomial AC. If they are the same, concatenate the two polynomials to obtain a new trinomial; if they are different, end.

[0261] S608d: For each recommendation factor, concatenate each group of pre-order polynomials X and pre-order polynomials Y to obtain a post-order polynomial, so as to obtain multiple post-order polynomials corresponding to each recommendation factor, wherein the number of terms of one post-order polynomial is one more than that of the concatenated pre-order polynomial.

[0262] That is, if sequence X is subjected to the -1st operation to obtain a, (Xa=x), and sequence Y is subjected to the -Last operation to obtain y, (y+z=Y), and x=y, then X and Y can be concatenated.

[0263] For example, taking the first row of data in Table 10 as an example, the present application concatenates the pre-order polynomial AB and the pre-order polynomial AC into a post-order polynomial ABC.

[0264] S608e: Calculate the support of each post-order polynomial under each recommendation factor, and select the post-order polynomial whose support corresponding to each recommendation factor is greater than the minimum support.

[0265] In some embodiments, the present application can determine the number of dates on which each multiple item (such as a tertiary item) under each recommendation factor corresponding to each primary key appears in the data in the first sequence under the recommendation factor, that is, the number of days on which these tertiary items appear.

[0266] In some embodiments, the present application uses the number of dates (ie, the number of days) on which a cubic term under each recommendation factor appears as the support level of the cubic term under the recommendation factor.

[0267] In some embodiments, the present application determines the date on which a cubic term under each recommendation factor appears, and takes the sum of the weights corresponding to the various dates as the support of the cubic term under the recommendation factor.

[0268] In some embodiments, the present application uses the ratio of the number of days for each recommendation factor to the number of days for the next cubic term to appear as the support of the cubic term.

[0269] In some embodiments, the present application uses the ratio of the sum of the weights corresponding to the dates of the next cubic item of each recommendation factor to the number of days the recommendation factor appears as the support of the cubic item.

[0270] For example, as shown in Table 10, the support of trinomials ABC, ABD, ACD, and FAB are 1, 2, 3, and 3, respectively. When the minimum support is 3, trinomials ACD and FAB are the selected trinomials, that is, the currently selected post-order polynomials.

[0271] S609: construct multiple multi-terms under each recommendation factor, and filter out each multi-term whose support is greater than the minimum support under the corresponding recommendation factor.

[0272] For example, the multi-term may be a quartic term, or may be a multi-term with a greater number of terms. The number of terms of the multi-term may be a preset number of terms.

[0273] In some embodiments, reference Fig.11 , the above S609 can be passed through S609a to S609e:

[0274] S609a: When the predicate polynomial is a trinomial, each predicate polynomial under each recommendation factor is split to obtain a corresponding first subsequence and a second subsequence, wherein the first subsequence is a sequence after the first element is removed from the predicate polynomial, and the second subsequence is a sequence after the last element is removed from the predicate polynomial.

[0275] The splitting and splicing process of the polynomial is described by taking the preorder polynomial as a cubic term as an example. Referring to Table 11, an example of splitting and splicing a trinomial in an embodiment of the present application is shown.

[0276] Table 11:

[0277]

[0278] In Table 10, the cubic term represented by 3-seq(1) may be a preorder polynomial X, and the cubic term represented by 3-seq(2) may be a preorder polynomial Y. 3-seq-1st represents the first subsequence of the corresponding preorder polynomial X after removing the first element, and 3-seq-Last represents the second subsequence of the corresponding preorder polynomial X after removing the last element.

[0279] S609b: When the pre-order polynomial is a trinomial, for multiple groups of pre-order polynomials X and pre-order polynomials Y under each recommendation factor, determine whether a first subsequence of the pre-order polynomial X with the first element removed is the same as a second subsequence of the corresponding pre-order polynomial Y with the last element removed.

[0280] For example, taking the first row of data in Table 11 as an example, the preamble polynomial X is ABC, its first element a is A, and its first subsequence x after removing A is BC; and the preamble polynomial Y is BCD, its last element z is D, and its second subsequence y after removing C is BC, at this time x=y=BC.

[0281] S609c: When the predicate polynomial is a trinomial, for each group of predicate polynomials X and predicate polynomials Y under each recommendation factor, determine that the timestamp corresponding to the first subsequence x obtained by splitting is the same as the timestamp corresponding to the second subsequence y, and the timestamp of element a in predicate polynomial X is before the timestamp of element z in predicate polynomial Y.

[0282] For example, taking the first row of data in Table 11 as an example, the present application can determine whether the timestamp corresponding to the first sequence BC of the preorder polynomial ABC (i.e., the timestamp when B is clicked and used) is the same as the timestamp corresponding to the second subsequence BCD of the preorder polynomial BCD (i.e., the timestamp when B is clicked and used), if they are the same, continue to execute the subsequent steps, if they are different, end; determine whether the timestamp corresponding to the first element A of the preorder polynomial ABC is the same as the timestamp of the last element D of the preorder polynomial BCD, if they are the same, concatenate the two polynomials to obtain a new quaternary polynomial, if they are different, end.

[0283] S609d: When the pre-order polynomial is a trinomial, for each recommendation factor, each group of pre-order polynomials X and pre-order polynomials Y are concatenated to obtain a post-order polynomial, so as to obtain multiple post-order polynomials corresponding to each recommendation factor.

[0284] That is, if sequence X is subjected to a -1st operation to obtain a, (Xa=x), and sequence Y is subjected to a -Last operation to obtain y, (y+z=Y), and x=y, then X and Y are concatenated to obtain a post-sequence polynomial.

[0285] For example, taking the first row of data in Table 11 as an example, the present application concatenates the pre-order polynomial ABC and the pre-order polynomial BCD into a post-order polynomial ABCD.

[0286] S609e: When the pre-order polynomial is a trinomial, the support of each post-order polynomial under each recommendation factor is calculated, and the post-order polynomial whose support corresponding to each recommendation factor is greater than the minimum support is screened out.

[0287] In some embodiments, the present application may determine the number of dates on which each tertiary item under each recommendation factor appears, that is, the number of days on which these tertiary items appear, in the data in the first sequence under each primary key corresponding to the recommendation factor.

[0288] In some embodiments, the present application uses the number of dates on which a quartic item under each recommendation factor appears as the support level of the quartic item under the recommendation factor.

[0289] In some embodiments, the present application determines the date of occurrence of a quartic item under each recommendation factor, and takes the sum of the weights corresponding to the various dates as the support of the quartic item under the recommendation factor.

[0290] For example, referring to the quaternaries ABCD, ABDE and ACCF shown in Table 11, the support degrees are 4, 3 and 3 respectively. Then, when the minimum support degree is 3, the support degrees of these quaternaries are all greater than the minimum support degree.

[0291] In some embodiments, the present application can construct a polynomial with a preset number of items for each recommendation condition, such as 4 items. It can be understood that the polynomial under each recommendation factor is a sequence of applications recommended to the user when the recommendation condition is met.

[0292] S610: When the number of terms of the post-order polynomial is a preset number of terms (eg, 4), the confidence (ie, conf) of each post-order polynomial under each recommendation factor is calculated.

[0293] For example, the confidence level can be realized by the formula (1) in the previous text.

[0294] S611: When the number of terms of the post-order polynomial is the preset number of terms, the lift of each post-order polynomial under each recommendation factor is calculated.

[0295] For example, the lifting degree can be achieved by formula (2) in the previous text.

[0296] Among them, P(K2) in formula (2) represents the probability that the user uses K2 within the second time window (such as 10 minutes) under a certain recommendation factor during the historical time period.

[0297] For example, taking the polynomial ABCE under a certain recommendation factor as the polynomial K, then K1 is ABC and K2 is D. Assume that the number of days T1 for using the APP under the recommendation factor in the historical period is 20 days. In addition, the number of days T2 for using ABCE under the recommendation factor in the historical period (i.e., within the second time window and using A, B, C, E in sequence) is 4, the number of days T3 for using ABC under the recommendation factor in the historical period (i.e., within the second time window and using A, B, C in sequence) is 10 days, and the number of days T4 for using E under the recommendation factor in the historical period is 10 days. Then, P(K1, K2) = T2 / T1 = 4 / 20 = 0.5; P(K1) = T3 / T1 = 10 / 20 = 0.5; P(K2) = T4 / T1 = 10 / 20 = 0.5. The calculation of confidence and lift are: conf(K)=P(K1,K2) / P(K1)=0.5 / 0.5=1; lift(K)=conf(K) / P(K2)=1 / 0.5=2.

[0298] S612: For each recommendation factor, the APPs in the APP sequence whose lifting degree is greater than the lifting degree threshold are used as the APPs to be recommended under each recommendation factor.

[0299] In some embodiments, the present application may retain the APP in an APP sequence with the largest improvement degree among various APP sequences under various recommendation factors as the APP to be recommended.

[0300] For example, under the recommendation factor of staying at home on Monday, the APP sequence {Taobao TM ,WeChat TM , Taobao TM , Alipay TM Taobao in TM ,WeChat TM , Alipay TM After deduplication, the apps are selected as the recommended apps. Figure 3 The home fence 02 shown, such as Fig.12 As shown, the YOYO suggestion card 06 displayed by the electronic device when the user is at home after entering the home fence 02, the YOYO suggestion card 06 includes Taobao TM ,WeChat TM , Alipay TM , that is, APP sequence {Taobao TM ,WeChat TM , Taobao TM , Alipay TM}, and the display order of these applications is not limited to this. Specifically, the electronic device can use Taobao after the user enters the home fence 02. TM , such as clicking to open Taobao TM When using YOYO suggestion card 06, Taobao is recommended to usersTM ,WeChat TM , Alipay TM .

[0301] In this way, the present application can realize the automatic mining of APP behavior sequence rules under the recommendation factors corresponding to single scene / multiple scenes, without the need to manually summarize the rules, reducing the workload of developers. In addition, the application recommendation of the present application not only considers the frequency of APP use, but also comprehensively considers the recommendation factors such as time and geographical location, so as to realize the rules of the APP sequence used by users under historical data, and recommend the APP that the current user may use, which improves the flexibility of recommendation and improves the user experience.

[0302] Specifically, the present application constructs an APP sequence by splitting and merging the first element or the last element in the polynomial, and can flexibly add constraints such as the usage time between two APPs not exceeding 10 minutes, which is conducive to the application of new APP operation behavior rules. In addition, the present application can set support under different recommendation factors, and set different support according to the number of times the APP is used under different recommendation factors. In addition, a time-attenuated support calculation method can be used. The farther the behavior is from the current time stage, the less support is provided, so that the new behavior rules of users can be quickly adapted.

[0303] In some embodiments, the present application provides a readable medium having instructions stored thereon, which, when executed on an electronic device, causes the electronic device to execute the application recommendation method of the present application.

[0304] The various embodiments of the mechanism disclosed in the present application can be implemented in hardware, software, firmware or a combination of these implementation methods. The embodiments of the present application can be implemented as a computer program or program code executed on a programmable system, which includes at least one processor, a storage system (including volatile and non-volatile memory and / or storage elements), at least one input device and at least one output device.

[0305] Program code can be applied to input instructions to perform the functions described in this application and generate output information. The output information can be applied to one or more output devices in a known manner. For the purposes of this application, a processing system includes any system having a processor such as, for example, a digital signal processor (DSP), a microcontroller, an application specific integrated circuit (ASIC), or a microprocessor.

[0306] Program code can be implemented with high-level programming language or object-oriented programming language to communicate with the processing system. When necessary, program code can also be implemented with assembly language or machine language. In fact, the mechanism described in this application is not limited to the scope of any specific programming language. In either case, the language can be a compiled language or an interpreted language.

[0307] In some cases, the disclosed embodiments may be implemented in hardware, firmware, software, or any combination thereof. The disclosed embodiments may also be implemented as instructions carried or stored on one or more temporary or non-temporary machine-readable (e.g., computer-readable) storage media, which may be read and executed by one or more processors. For example, instructions may be distributed over a network or through other computer-readable media. Therefore, machine-readable media may include any mechanism for storing or transmitting information in a machine (e.g., computer) readable form, including, but not limited to, floppy disks, optical disks, optical disks, read-only memories (CD-ROMs), magneto-optical disks, read-only memories (ROMs), random access memories (RAMs), erasable programmable read-only memories (EPROMs), electrically erasable programmable read-only memories (EEPROMs), magnetic or optical cards, flash memory, or a tangible machine-readable memory for transmitting information (e.g., carrier waves, infrared signals, digital signals, etc.) using the Internet in electrical, optical, acoustic, or other forms of propagation signals. Therefore, machine-readable media include any type of machine-readable media suitable for storing or transmitting electronic instructions or information in a machine (e.g., computer) readable form.

[0308] In the accompanying drawings, some structural or method features may be shown in a specific arrangement and / or order. However, it should be understood that such a specific arrangement and / or order may not be required. Instead, in some embodiments, these features may be arranged in a manner and / or order different from that shown in the illustrative drawings. In addition, the inclusion of structural or method features in a particular figure does not mean that such features are required in all embodiments, and in some embodiments, these features may not be included or may be combined with other features.

[0309] It should be noted that the units / modules mentioned in the various device embodiments of the present application are all logical units / modules. Physically, a logical unit / module can be a physical unit / module, or a part of a physical unit / module, or can be implemented as a combination of multiple physical units / modules. The physical implementation method of these logical units / modules themselves is not the most important. The combination of functions implemented by these logical units / modules is the key to solving the technical problems proposed by the present application. In addition, in order to highlight the innovative part of the present application, the above-mentioned device embodiments of the present application do not introduce units / modules that are not closely related to solving the technical problems proposed by the present application, which does not mean that there are no other units / modules in the above-mentioned device embodiments.

[0310] It should be noted that in the examples and description of this patent, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "including one" do not exclude the existence of other identical elements in the process, method, article or device including the elements.

[0311] Although the present application has been illustrated and described with reference to certain preferred embodiments thereof, it will be apparent to those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present application.

Claims

1. An application recommendation method, characterized in that: Applied to electronic equipment, the method comprises: Determining that the electronic device enters a first fence corresponding to a first recommendation factor; recommending a first application sequence corresponding to the first recommendation factor to a user, wherein the promotion degree of the first application sequence is greater than the promotion degree of a second application sequence corresponding to the first recommendation factor that is not recommended to the user; The higher the promotion degree is, the higher the probability that the application sequence has been used under the first recommendation factor within the first historical time period is. Furthermore, the number of items applied in the first application sequence and the second application sequence is N, where N is an integer greater than 1.

2. The method according to claim 1, characterized in that The method further comprises: A first first application in the first application sequence corresponding to the first recommendation factor is obtained, where the first first application is an application used under the first recommendation factor within the first historical time period.

3. The method according to claim 2, characterized in that The method further comprises: Based on the first i first applications of the first application sequence corresponding to the first recommendation factor, an i+1th first application of the first application sequence is determined, where 1≤i≤N.

4. The method according to claim 3, characterized in that: Corresponding to i=1, determining the i+1th first application in the first application sequence based on the first recommendation factor corresponding to the first i first applications in the first application sequence includes: Compare the i-th first application in the first application sequence with the i-th second application in the third application sequence to determine whether a first condition is satisfied; Corresponding to satisfying the first condition, using the i-th second application in the third application sequence as the i+1-th first application in the first application sequence; The first condition includes: The time when the i-th first application is used in the first historical time period and the time when the i-th second application is used in the first historical time period are on the same day; The time when the i-th first application is used in the first historical time period is before the time when the first second application is used in the first historical time period; A difference between a time when the i-th first application is used in the first historical time period and a time when the first second application is used in the first historical time period is less than a preset time difference.

5. The method according to claim 3, characterized in that: Corresponding to 2≤i≤N, determining the i+1th first application in the first application sequence based on the first recommendation factor corresponding to the first i first applications in the first application sequence includes: Compare the first i first applications and the second to i first applications of the first application sequence with the first to i-1 fourth applications of the fourth application sequence to determine whether the second condition is met; Determining that each application in the second to i first applications is the same as each application in the first to i-1 fourth applications; Determining that a time during which a second first application in the first application sequence is used in the first historical time period is the same as a time during which a first application in the fourth application sequence is used in the first historical time period; Corresponding to satisfying the second condition, taking the i-th second sequence in the fourth application sequence as the i+1-th first application in the first application sequence; The second condition includes: The time when the first first application in the first application sequence is used in the first historical time period and the time when the i-th fourth application in the fourth application sequence is used in the first historical time period are within the same day; The time during which the first first application in the first application sequence is used in the first historical time period is less than the time during which the i-th fourth application in the fourth application sequence is used in the first historical time period; A difference between a time when the 1st first application in the first application sequence is used in the first historical time period and a time when the i-th fourth application in the fourth application sequence is used in the first historical time period is less than a preset time difference.

6. The method according to any one of claims 1 to 5, characterized in that The method further comprises: taking the application sequence with the largest promotion degree under the first theme event among a plurality of application sequences with N items corresponding to the first recommendation factor as the first application sequence; The first theme event is used to indicate that a fifth application is used under the first recommendation factor within the first historical time period, and the fifth application is the same as the first first application in the first application sequence.

7. The method according to claim 1, characterized in that The lift of the applied sequence is calculated as follows: Calculate conf(K) = P(K1,K2) / P(K1) and lift(K) = P(K1,K2) / P(K1) / P(K2); Wherein, K represents an application sequence with N items, K1 represents the application sequence corresponding to the first N-1 applications in the application sequence, K2 represents the application sequence corresponding to the Nth application in the application sequence, P(K1, K2) represents the probability that the application sequence has been used under the first recommendation factor within the first historical time period, P(K1) represents the probability that the application sequence corresponding to the first N-1 applications has been used under the first recommendation factor within the first historical time period, P(K2) represents the probability that the application sequence corresponding to the Nth application has been used under the first recommendation factor within the first historical time period, conf(K) represents the confidence of the probability that the application sequence has been used under the first recommendation factor within the first historical time period, and lift(K) represents the lift of the probability that the application sequence has been used under the first recommendation factor within the first historical time period.

8. The method according to claim 7, characterized in that The probability that the application sequence has been used under the first recommendation factor within the first historical time period is: the number of days during which the application sequence was used under the first recommendation factor within the first historical time period, or, The ratio of the number of days that the application sequence has been used under the first recommendation factor in the first historical time period to the number of days that each application has been used under the first recommendation factor in the first historical time period.

9. The method according to claim 7, characterized in that: The probability that the application sequence has been used under the first recommendation factor within the first historical time period is: the number of times the application sequence has been used under the first recommendation factor within the first historical time period, or, A ratio of the number of times the application or application sequence has been used under the first recommendation factor in the first historical time period to the number of times each application has been used under the first recommendation factor in the first historical time period.

10. The method according to claim 4, characterized in that The support degrees of the application sequence corresponding to the first i first applications of the first application sequence and the application sequence corresponding to the first i second applications of the third application sequence are both greater than the minimum support degree corresponding to the first recommendation factor.

11. The method according to claim 5, characterized in that The support degrees of the application sequence corresponding to the first i first applications of the first application sequence and the application sequence corresponding to the first i third applications of the fourth application sequence are both greater than the minimum support degree corresponding to the first recommendation factor.

12. The method according to claim 10 or 11, characterized in that: The minimum support corresponding to the first recommendation factor is calculated in the following way: Use minup(x)=e (-ax-b) +c calculates the minimum support corresponding to the first recommendation factor; Where minup(x) represents the minimum support corresponding to the first recommendation factor, a, b, and c are all constants, and x represents the number of days each application was used under the first recommendation factor during the first historical period. As the value of x changes, e (-ax-b) +c's value changes, and e (-ax-b) The minimum value of +c is used as the value of minup(x).

13. The method according to claim 10 or 11, characterized in that: The support of each application sequence is calculated as follows: The number of days the application sequence is used under the first recommendation factor in the first historical time period is used as the support degree of the application sequence, or, The ratio of the number of days the application sequence is used under the first recommendation factor in the first historical time period to the number of days the application is used under the first recommendation factor in the first historical time period is used as the support degree of the application sequence.

14. The method according to claim 10 or 11, characterized in that: The support of each sequence is calculated as follows: Obtaining a date on which the application sequence was used under the first recommendation factor within the first historical time period; Calculate the decay factor corresponding to each date, where the smaller the difference between the date and the current date, the larger the decay factor; The support degree of the application sequence is taken as the sum of the products of each date of the application sequence and the corresponding attenuation factor, or the support degree of the application sequence is taken as the ratio of the sum of the products of each date of the application sequence and the corresponding attenuation factor to the number of days the application is used under the first recommendation factor in the first historical time period.

15. The method according to claim 14, characterized in that The decay factors corresponding to the respective dates are calculated in the following way: Using L = l k-1 Calculate the decay factor corresponding to each date; Wherein, L represents the attenuation factor, l represents the preset attenuation degree, k is the difference between a date and today's date, and the value of k is an integer greater than or equal to 1.

16. The method according to claim 1, characterized in that The first recommendation factor includes at least one of the following: a space factor, a time factor, and a device usage factor, wherein the device usage factor is used to indicate an external device connected to the electronic device.

17. The method according to claim 1, characterized in that The recommending to the user a first application sequence corresponding to the first recommendation factor includes: The applications after removing duplicate applications from the first application sequence corresponding to the first recommendation factor are displayed.

18. The method according to claim 17, characterized in that The application recommended to the user and corresponding to the first recommendation factor is displayed in an application suggestion card of the electronic device.

19. A readable medium, characterized in that The readable medium stores instructions, which, when executed on an electronic device, enable the electronic device to execute the application recommendation method according to any one of claims 1 to 18.

20. An electronic device, characterized in that: include: A memory, used to store instructions executed by one or more processors of an electronic device, and a processor, which is one of the processors of the electronic device, used to execute the application recommendation method described in any one of claims 1 to 18.