Application recommendation method, medium and electronic equipment
By detecting user application preferences under different recommendation factors and utilizing lift, weighted probability, and confidence metrics, this technology addresses the lack of personalization in existing application recommendations, enabling accurate recommendations of user-preferred applications in specific scenarios and improving user experience.
Patent Information
- Application Number
- CN202310838006.5
- 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
Existing app recommendation schemes lack personalization, resulting in apps recommended by mobile phones not meeting users' actual needs in different scenarios and failing to provide an intelligent user experience.
By detecting users' app preferences under different recommendation factors, and using metrics such as lift, weighted probability, and confidence, we can accurately recommend apps that users prefer in specific scenarios, including subway and home scenarios, thereby improving the accuracy and personalization of app recommendations.
By accurately recommending applications that users prefer under different recommendation factors, the user experience is improved, and the application cards are made up of the applications that users are most likely to use in a given scenario, thus meeting the user's needs in a specific scenario.
Smart Images

Figure CN119271871A_ABST
Abstract
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 (APPs) are installed in mobile phones, most mobile phones will provide APP suggestions to users to recommend APPs to users. However, most current APP suggestions use the recent popular APPs and recent high-frequency APPs to recommend APPs to users. Specifically, the mobile phone displays APP suggestion cards, such as YOYO suggestion TM The mobile phone recommends apps to users through cards. Among them, the recent popular apps are usually obtained based on the 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 scene. Specifically, the mobile phone displays app suggestion cards, such as YOYO recommendation 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 accurately recommend to users the user's preferred APPs under recommendation factors such as subway scenarios and home scenarios, thereby improving the accuracy and personalization of application recommendations.
[0005] In the first aspect, the embodiment of the present application provides an application recommendation method, which is applied to an electronic device, on which a first application and a second application are installed; and the method includes: determining that the electronic device enters a first fence corresponding to a first recommendation factor; displaying a first application corresponding to the first fence recommended to the user, wherein the promotion degree of the first application is greater than the promotion degree of the second application that is not recommended to the user, and the higher the promotion degree, the higher the probability that the application has been used under the first recommendation factor in the first historical time period, and the promotion degree is determined based on the use probability of the application under the first recommendation factor in the first historical time period and the use probability of the application under multiple recommendation factors in the first historical time period. That is, if the user carries an electronic device under a certain recommendation factor, an APP suggestion card containing the preferred APP under the recommendation factor is recommended to the user. In this way, the APP recommendation in the present application is not limited to the overall frequency of use of the APP, and can accurately recommend the user's preferred APP under different recommendation factors, which is convenient for the user to quickly use the required APP, greatly improving the user experience.
[0006] In a possible implementation, the weighted probability of the first application is greater than the weighted probability of the second application, and the higher the weighted probability, the higher the number of times the application has been used and the longer the number of days it has been used under the first recommendation factor in the first historical time period, and the weighted probability is determined based on the probability of use of the application under the first recommendation factor in the first historical time period, the number of days the application has been used under the first recommendation factor in the first historical time period, and the number of days the application has been used under multiple recommendation factors in the first historical time period. Furthermore, the present application recommends to users APPs with a larger promotion degree and a larger weighted probability under the first recommendation factor as APPs preferred by users under the first recommendation factor. These APPs are APPs that users prefer to click and use under the recommendation factor in the historical time period (such as within the last month) and have a larger click frequency and click days. Thereby, it is helpful to improve the accuracy of recommending preferred APPs to users under specific recommendation factors through APP suggestion cards.
[0007] In a possible implementation, the confidence of the first application is greater than the confidence of the second application, and the higher the confidence, the higher the number of times the application has been used under the first recommendation factor in the first historical time period and the longer the number of days it has been used. The confidence is determined based on the weighted probability of the application and the total number of applications in the electronic device, and the weighted probability is determined based on the probability of use of the application under the first recommendation factor in the first historical time period, the number of days the application is used under the first recommendation factor in the first historical time period, and the number of days the first recommendation factor appears in the first historical time period. Then, the confidence of each APP under each recommendation factor is equivalent to normalizing the weighted probability of each APP under each recommendation factor based on the total number of APPs in the electronic device, that is, numerically correcting these weighted probabilities, so as to facilitate comparison between the sizes of each weighted probability. In addition, considering the total number of APPs can facilitate setting the size of the confidence threshold, which is used to measure the weighted probability after numerical correction, so as to facilitate setting and outputting several APPs with confidence greater than the confidence threshold as the user's preferred APP under one recommendation factor. It can be understood that the confidence of each APP takes into account the total number of APPs in the electronic device, so as to recommend an appropriate number of APPs to the user based on the total number of APPs. For example, the larger the total number of APPs, the more preferred APPs are determined at a fence triggering moment.
[0008] In one possible implementation, the usage probability of an application under the first recommendation factor in the first historical time period is: the ratio of the number of times the application is used under the first recommendation factor in the first historical time period to the number of times multiple applications are used in the electronic device under the first recommendation factor in the first historical time period. The multiple applications in the electronic device under the first recommendation factor in the first historical time period may be all applications used under the first recommendation factor. For example, by calculating the number of times each APP is used under each recommendation factor Count(app|s), the usage probability of the application under the first recommendation factor in the first historical time period can be obtained, such as calculated by formula (1-1) below.
[0009] In one possible implementation, the usage probability of an application under a first recommendation factor within a first historical time period is obtained by adjusting the first probability based on a first usage count, and the smaller the first usage count, the greater the degree to which the first probability is reduced, wherein the first usage count is the usage count of multiple applications in an electronic device under the first application recommendation factor within the first historical time period, and the first probability is the ratio of the usage count of the application under the first recommendation factor within the first historical time period to the first usage count.
[0010] In a possible implementation, the first probability is calculated based on the first usage times using the formula Adjusted, where n is the first usage count, z is a constant, and p is the ratio of the usage count of the application under the first recommendation factor in the first historical time period to the usage count of multiple applications in the electronic device under the first recommendation factor in the first historical time period (such as all applications used under the first recommendation factor in the first historical time period).
[0011] In a possible implementation, the usage probability of an application under multiple recommendation factors in the first historical time period is: the ratio of the number of times an application is used under multiple recommendation factors in the first historical time period (i.e., count(app) below) to the number of times multiple applications under multiple recommendation factors (e.g., all applications used under all recommendation factors in the first historical time period) are used in the first historical time period (i.e., count(all) below). For example, the usage probability of an application under multiple recommendation factors in the first historical time period can be calculated by the following formula (2-1), i.e., p(app|all)=count(app) / count(all).
[0012] In a possible implementation, the usage probability of an application under multiple recommendation factors in the first historical time period is: the ratio of the number of times the application is used under multiple recommendation factors in the first historical time period plus the first value to the number of times the multiple applications are used under the multiple recommendation factors in the first historical time period. The usage probability of an application under multiple recommendation factors in the first historical time period can be calculated by the following formula (2-2), where the first value is For example, the value is 5. In this way, it is possible to avoid the value of count(app) being too small, which leads to the calculation result of p(app|all) being too small, that is, it is possible to avoid the number of times the application is used under multiple recommendation factors in the first historical time period being too small, which leads to the probability of application use under multiple recommendation factors in the first historical time period being too small.
[0013] In a possible implementation, the lift is the ratio of the probability of application usage under the first recommendation factor in the first historical time period (such as p(app|s) in the following text) to the probability of application usage under multiple recommendation factors in the first historical time period (such as p(app|all)). For example, the lift can be the following formula (4-1), that is, Calculated.
[0014] In one possible implementation, the improvement is: a value obtained by normalizing the second probability, wherein the second probability is: a ratio of the probability of using the application under the first recommendation factor in the first historical time period to the probability of using the application under multiple recommendation factors in the first historical time period.
[0015] In a possible implementation, the normalization of the second probability adopts the formula
[0016] To achieve, represents the degree of improvement, p(app|s) / p(app|all) represents the second probability, p(app|s) represents the probability of using the application under the first recommendation factor in the first historical time period, p(app|all) represents the probability of using the application under multiple recommendation factors in the first historical time period, and the value of the degree of improvement is a value between 0 and 1.
[0017] In a possible implementation, the weighted probability is: the value obtained by multiplying the probability of using the application under the first recommendation factor in the first historical time period by the third probability, and the third probability is the ratio of the number of days the application is used under the first recommendation factor in the first historical time period to the number of days the first recommendation factor appears in the first historical time period. For example, the weighted probability Weight_P(app|s) of each APP under each recommendation factor below can be implemented by formula (6-1).
[0018] In a possible implementation, the confidence is: the ratio of the first ranking of the application to the number of multiple applications used by the user under the first recommendation factor in the first historical time period, where the first ranking of the application is the ranking of the weighted probability of the application among the weighted probabilities of each application used by the user under the first recommendation factor in the first historical time period, sorted from small to large. In this way, it is convenient to compare the size of each confidence, and convenient to set and output several apps with confidence greater than the confidence threshold as the user's preferred apps under one recommendation factor.
[0019] In one possible implementation, the lift of the first application is greater than a first threshold, or the lift of the first application is greater than the first threshold and the weighted probability of the first application is greater than a second threshold, or the lift of the first application is greater than the first threshold and the confidence of the first application is greater than a third threshold.
[0020] In a possible implementation, it is determined that the number of days that the first recommendation factor appears in the first historical time period is greater than the first day. Applications under the recommendation factor whose number of days that the factor appears in the first historical time period is less than or equal to the first day are usually occasionally used by the user and cannot reflect the user's application usage preferences under various recommendation factors.
[0021] In one possible implementation, the first recommendation factor includes at least one of the following: a time factor, a space factor, and a device usage factor, wherein the device usage factor is used to indicate whether the electronic device is connected to an external device; the first fence includes at least one of the following: a time fence, a geographic fence, and a device fence.
[0022] In a possible implementation, the first application corresponding to the first fence recommended to the user is displayed in an application suggestion card of the electronic device, such as YOYO suggestion card. TM In the card.
[0023] 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.
[0024] 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
[0025] 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;
[0026] Figure 2 According to some embodiments of the present application, a schematic diagram of an application recommendation process of an electronic device is shown;
[0027] Figure 3 According to some embodiments of the present application, a schematic diagram of the hardware structure of a mobile phone is shown;
[0028] Figure 4 According to some embodiments of the present application, a schematic diagram of a software system of a mobile phone is shown;
[0029] 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;
[0030] Figure 6 According to some embodiments of the present application, a schematic diagram of the process of mining APP preferences under various recommendation factors is shown;
[0031] Figure 7 According to some embodiments of the present application, a flowchart of an application recommendation method is shown;
[0032] Figure 8 According to some embodiments of the present application, a YOYO suggestion displayed on a mobile phone is shown. TM Schematic diagram of the card;
[0033] Fig. 9 According to some embodiments of the present application, a flowchart of an application recommendation method is shown;
[0034] Fig.10 According to some embodiments of the present application, a flowchart of an application recommendation method is shown. DETAILED DESCRIPTION
[0035] Illustrative embodiments of the present application include, but are not limited to, application recommendation methods, media, and electronic devices.
[0036] From the background technology, it can be known that the APP suggestions of electronic devices in the prior art usually only push high-frequency applications. Specifically, in different scenarios, users usually have different behavioral preferences when using mobile phones and other electronic devices, that is, users prefer to click and use different APPs in different scenarios. For example, when using a mobile phone at home, the user is more likely to open entertainment apps; when the user is at work, the user is more likely to open work-related apps; when the user is on the subway, the user is more likely to open information apps or reading apps. The current APP recommendation scheme does not take into account the different behavioral preferences of users in different scenarios, and may only push high-frequency applications. In special scenarios, the APP with a low overall frequency but user preference will not be pushed, resulting in the APP issued by the APP recommendation card cannot be personalized and customized, and cannot bring an intelligent experience to the user. For example, in the scenario where the user takes the subway, the user will use Cloud QuickPass every time. TM Scan the QR code, but in the scenario where the user is taking the subway, Cloud QuickPass TM The frequency of use is lower than WeChat TM ,Tik Tok TM ,quick worker TM For example, when a user takes the subway, he will use Cloud QuickPass once to enter the subway station. TM Scan the QR code, and while riding the subway, you may have opened Douyin many times TM . In this way, Cloud QuickPass TM The usage frequency will be lower than that of TikTok TM , which results in the APP recommending cards not including the user's preferred Cloud QuickPass in the APP recommendation TM , the user experience is poor. For the convenience of description, the application program is referred to as APP or application in this application.
[0037] It can be understood that in each embodiment of this application, the frequency of use refers to the number of times a user clicks to use an APP regardless of the scenario within a period of time. For the convenience of description, this application also refers to the number of clicks on the APP as the number of uses or the number of clicks to use. For example, within 1 month, the user clicked on Douyin 60 times. TM , 22 Cloud QuickPass transactions TM , then Tik Tok TM The usage frequency is higher than that of Cloud QuickPass TM frequency of use.
[0038] It can be understood that in each embodiment of the present application, the user's preferred APP can be determined based on different recommendation factors, where the recommendation factor can be a spatial factor, such as the different scenarios in which the user is located, such as home, company, subway, shopping mall, etc., or it can be a usage factor, such as whether the user is wearing headphones, whether the user device is connected to the car Bluetooth, etc., or it can be a time factor, for example, dividing a day into multiple time intervals, such as dividing a day into 24 time intervals in units of hours.
[0039] Preference refers to the probability of using each APP under a recommendation factor pair within a period of time, reflecting the degree of association between the recommendation factor and the APP, which depends on the usage probability of the APP under the recommendation factor and the usage probability of the APP under multiple recommendation factors (such as all recommendation factors). Specifically, a large preference for an APP under a recommendation factor means that the user is very likely to click to use the APP every time after entering the fence corresponding to the recommendation factor, and vice versa, it means that the user usually does not click to use the APP after entering the fence corresponding to the recommendation factor.
[0040] In order to solve the above problems, an embodiment of the present application provides an application recommendation method, which detects the APPs that users prefer to click and use under various recommendation factors, and then recommends the APPs that users prefer to use under a certain recommendation factor through APP suggestion cards such as YOYO suggestions when it is identified that the user is under a certain recommendation factor.
[0041] Specifically, the method can obtain multiple historical application usage information in the recent historical time, such as the last month, wherein the historical application usage information records the APPs that users clicked to use under a certain recommendation factor, such as recommendation factor s1, in a certain historical time period, such as the historical time period T1. Then, through the above multiple historical application usage information, the promotion degree of each APP under each recommendation factor in the historical time period T1 is calculated. Among them, the value of the promotion degree of a certain APP, such as APP1, under the recommendation factor s1 depends on: the probability of the user clicking to use APP1 under the recommendation factor s1 and the probability of the user using APP1 under all recommendation factors, such as the ratio of the former to the latter. It can be understood that the promotion degree of APP1 under the recommendation factor s1 is used to reflect the association between the recommendation factor and the user clicking to use APP1 in the historical time, that is, it reflects the user's preference for clicking to use APP1 under the recommendation factor s1. Furthermore, the present application recommends the APPs with a promotion degree greater than the first threshold under the recommendation factor s1 to the user as the user's preferred APPs under the recommendation factor s1. These APPs are the APPs that users prefer to click to use under the recommendation factor s1 in T1.
[0042] In addition, the present application can pre-set a corresponding fence for each recommendation factor. After recognizing that the electronic device has entered a fence, the APP suggestion card can be used to recommend the user's preferred APP under the corresponding recommendation factor. That is, if the user carries an electronic device under a certain recommendation factor, the APP suggestion card containing the preferred APP under the recommendation factor will be recommended to the user. In this way, the APP recommendation in the present application is not limited by the overall frequency of APP use, and can accurately recommend the user's preferred APP under different recommendation factors, making it convenient for users to quickly use the required APP, greatly improving the user experience.
[0043] For example, referring to Table 1, it is shown that T1 is the number of clicks of users on various APPs in the last week, that is, the use of these APPs.
[0044] Table 1:
[0045] Subway Scene 1 Subway Scene 2 Subway Scene 3 Other scenes 1 … All recommended factors <![CDATA[UnionPay QuickPass]] TM > 2 times 2 times 2 times 0 times … 6 times <![CDATA[Douyin TM > 8 times 4 times 0 times - … 62 times … 0 0 0 0 … - All APPs 10 times 6 times 2 times - … 300 times
[0046] As shown in Table 1, in the past week, the user entered the subway scene 3 times, and clicked to use UnionPay QuickPass once in the subway scene. TM 2 times, click to use TikTok TM 8 times; enter the subway scene and use Cloud QuickPass 2-click TM 2 times, click to use TikTok TM 4 times; enter the subway scene and tap 3 times to use Cloud QuickPass TM 2 times, and no click to use TikTok TM In addition, in the past week, the user also clicked on various APPs under other recommendation factors (such as other scenario 1). For example, in the past week, the user clicked on APP 300 times in total, and clicked on Douyin 50 times under other recommendation factors. TM , but not using Cloud QuickPass TM .
[0047] So, in the past week, under all the recommended factors, Cloud QuickPass TM The usage frequency is 6 times, Douyin TM The usage frequency is 62 times, and Cloud QuickPass has been used in subway scenarios in the past week. TM The usage frequency is 6 times, Douyin TM The frequency of use is 12 times. Obviously, Douyin has TM The overall usage frequency is higher than that of Cloud QuickPass TM , and its usage frequency in subway scenarios is also higher than that of Cloud QuickPass. TM .
[0048] Furthermore, preference can consider the usage probability of each APP under the recommendation factor and the usage probability of the corresponding APP under all recommendation factors. Assume that in the past week, the user only used UnionPay in various subway scenarios.TM and TikTok TM , combined with the three subway scenarios shown in Table 1, Cloud QuickPass TM The number of clicks is 6, Douyin TM The number of times used is 12. Under all the recommended factors, Cloud QuickPass TM The number of times used is 6, Douyin TM The number of times used is 62, and the number of times used for all apps under all recommended factors is 300. Then, TM The preference can be (6 / 18) / (6 / 300) = 16.66, Douyin TM The preference of can be (12 / 18) / ((62) / 300)=3.22. Then, the preference of Cloud QuickPass in the subway scenario is TM prefer TikTok TM Obviously, in this case, although Douyin is popular in the subway scene TM The overall usage frequency is high, but Douyin TM It is not the APP preferred by users in the subway scenario.
[0049] In some embodiments, the present application can calculate the weighted probability of each APP under each recommendation factor within the historical time T1 through multiple historical application usage information within the historical time, such as calculating the weighted probability of APP1 under each recommendation factor s1 within T1. The value of the weighted probability of APP1 under the recommendation factor s1 depends on the probability of users clicking to use APP1 under the recommendation factor s1 within T1, the number of days users click to use APP1 under the recommendation factor s1, and the number of days the recommendation factor s1 appears. For example, in the subway scenario within the past week, users use Cloud QuickPass. TM The number of days of use is 3 days, and the number of days of appearance of the subway scene is also 3 days. It can be understood that the weighted probability of APP1 under the recommendation factor s1 is used to reflect whether the user clicks on and uses APP1 more times and on more days under the recommendation factor s1 within T1. Furthermore, the present application can recommend to users APPs whose lift degree under the recommendation factor s1 is greater than the first threshold and whose weighted probability is greater than the second threshold as the user's preferred APPs under the recommendation factor s1. These APPs are the APPs that users prefer to click and use under the recommendation factor in the historical time period and have a larger click frequency and click days. Thereby, it is helpful to improve the accuracy of recommending preferred APPs to users under specific recommendation factors through APP suggestion cards.
[0050] It can be understood that for the convenience of description, in the embodiment of the present application, the number of days the APP is used is also referred to as the number of click days, and the number of uses is also referred to as the number of click days, which corresponds to the user's behavior of clicking to open the APP.
[0051] For example, in combination with Table 1, referring to Table 2, it is shown that T1 is the number of days that the user clicks and uses each APP in the past week, that is, the use of these APPs.
[0052] Table 2:
[0053]
[0054]
[0055] Assume that in the past week, users only use UnionPay QuickPass in various subway scenarios. TM and TikTok TM Combining Table 1 and Table 2, we can see that in the three subway scenarios, Cloud QuickPass TM The number of days of use is 3, Douyin TM The number of days of use is 2, and the number of days of appearance in the subway scene is 3. Among them, the weighted probability depends on the probability of users clicking to use APP1 under the recommendation factor s1 in T1, the number of days of use under the recommendation factor s1, and the number of days of appearance of the recommendation factor s1. For example, Cloud QuickPass TM The weighted probability is (6 / 18)*(3 / 3)=0.33, Douyin TM The weighted probability is (12 / 18)*(2 / 3)=0.44.
[0056] In some embodiments, the present application can calculate the confidence of each APP under each recommendation factor in the above-mentioned historical time according to the weighted probability of each APP under each recommendation factor and the total number of APPs in the electronic device. Then, the confidence of each APP under each recommendation factor is equivalent to normalizing the weighted probability of each APP under these recommendation factors based on the total number of APPs in the electronic device, that is, making numerical corrections to these weighted probabilities, so as to facilitate the comparison of the size between each weighted probability. In addition, considering the total number of APPs can facilitate the setting of the size of the confidence threshold, which is used to measure the weighted probability after numerical correction, so as to facilitate the setting and output of several APPs with confidence greater than the confidence threshold as the user's preferred APP under one recommendation factor. At this time, the present application can use an APP with a lift greater than the first threshold and a confidence greater than the third threshold under a recommendation factor as the user's preferred APP under the recommendation factor.
[0057] It can be understood that the confidence of each APP takes into account the total number of APPs in the electronic device, so as to recommend an appropriate number of APPs to the user based on the total number of APPs. For example, the larger the total number of APPs, the more preferred APPs are determined at a fence triggering moment.
[0058] In some embodiments, based on various historical application usage information, the present application can calculate the number of days of use of each recommendation factor in history, the number of times the APP is used under all recommendation factors, the number of times the APP is used under each recommendation factor, the number of times each APP is used under all recommendation factors, the number of times each APP is used under each recommendation factor, and the number of days each APP is used under each recommendation factor. Then, based on this information, the degree of promotion of each APP under each recommendation factor is calculated, and based on this information, the weighted probability of the frequency of use and the number of days of use of each APP under each recommendation factor can be calculated. Among them, the detailed calculation process of the promotion degree and weighted probability will be described in detail below and will not be repeated here.
[0059] In some embodiments, the electronic device can subscribe to different fences for different recommendation factors. Then, the electronic device can determine the recommendation factor in which the electronic device is located by identifying the fence. For example, the recommendation factors of the electronic device include but are not limited to: home, company, hospital, shopping mall, airport, railway station, high-speed service area, subway, wearing headphones, and car Bluetooth.
[0060] 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.
[0061] 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 TM It can also include only an APP or mini program icon, such as a subway code card or WeChat ID. TM card.
[0062] 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.
[0063] 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.
[0064] 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 recommendation factor may include one or more types, such as the recommendation factor for the user to take the subway includes a geographic fence, which is not specifically limited in this application.
[0065] 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.
[0066] 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.
[0067] 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.
[0068] 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.
[0069] In some embodiments, the electronic device can determine whether the electronic device enters a geo-fence, time fence or other fence corresponding to a recommendation factor to determine whether the electronic device is in the recommendation factor, and then recommend APPs to users through displayed APP suggestion cards. 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.
[0070] In some embodiments, the card display process of the electronic device is described by taking home, company, and subway scenes as examples. Figure 2 As shown, it is assumed that the electronic device has registered geo-fence 01 for the recommendation factor of the user taking the subway, geo-fence 02 for the recommendation factor of the user at home, and geo-fence 03 for the recommendation factor 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 user's preference to use payment apps such as UnionPay when taking the subway. TM , and information apps such as Sina Weibo TM , Toutiao TM Or reading apps such as WeChat Reading TM After the user 04 enters the geo-fence 02, the electronic device such as a mobile phone can display a YOYO suggestion card 06, which may include entertainment apps that the user prefers to use at home, such as WeChat. TM ,Tik Tok TM After 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 work-related apps that the user prefers to use when in the company, such as documents, conference software, etc. It can be understood that the fences registered by the electronic device for each recommendation factor in the embodiment of the present application are not limited to Figure 2 The geographic fence shown may also be a device fence, a time fence, etc., which is not specifically limited in this application.
[0071] 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 capable of displaying cards. The embodiments of the present application do not impose any restrictions on the specific types of electronic devices.
[0072] Taking a mobile phone as an example, Figure 3 A schematic diagram of the hardware structure of a mobile phone provided in an embodiment of the present application is shown.
[0073] like Figure 3 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.
[0074] 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.
[0075] 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.
[0076] 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).
[0077] 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 technology (NFC), infrared technology (IR), etc., which are applied to the mobile phone 10. The mobile phone 10 can communicate with the network and other devices through wireless communication technology.
[0078] 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.
[0079] 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.
[0080] 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.
[0081] 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.
[0082] 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.
[0083] 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 4 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 may 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.
[0084] 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 .
[0085] 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.
[0086] 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.
[0087] 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 user's preferred APPs under each recommendation factor from the learning module 44, 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.
[0088] 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.
[0089] The learning module 44 is used to analyze the user's historical application usage information and pre-process the information. For example, the application can mine and learn the APPs that users prefer to use under various recommendation factors based on the pre-processed data, save the preferred APPs under various recommendation factors as a portrait table, and provide the business module 42 with the user's preferred APPs under various recommendation factors.
[0090] 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.
[0091] 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.
[0092] 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.
[0093] 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.
[0094] 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 application recommendation, and the present application scheme can be implemented by hardware and / or software, which is not limited in the present application.
[0095] Combination Figure 5 ,by Figure 4 Some functional modules in the electronic device are shown as execution entities, and the application recommendation method provided in the embodiment of the present application is illustrated.
[0096] S501: The presentation module 43 sends a card activation message to the service module 42.
[0097] 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.
[0098] The above learning tasks can be learning tasks that are newly added or updated by users or software developers in the setting options suggested by YOYO. YOYO suggestions generally support one or more learning tasks. In some embodiments, the learning tasks in this application can be to recommend the user's preferred APPs to the user under the recommendation factors.
[0099] S502: The business module 42 subscribes to a learning task from the learning module 44. For example, the learning task is an APP that the user prefers to click on and use under a learning recommendation factor.
[0100] S503: When the screen is turned off during charging, the learning module 44 pre-processes the historical data to obtain multiple historical application usage information, and mines and learns the user's preferred APPs under various recommendation factors based on the multiple historical application usage information, obtains the user's preferred APPs under various recommendation factors and saves them as a portrait table.
[0101] 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.
[0102] 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.
[0103] In some embodiments, each piece of historical application usage information may include an APP information, APP click time (ie, time information when the APP is used), and recommendation factor information (ie, recommendation factor information of the electronic device when the APP is used).
[0104] 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.
[0105] In some embodiments, the above historical data may be data from a recent period of time, for example, the above historical data may be data from the last month or multiple months, that is, the above multiple historical application usage information may reflect the user's APP usage under various recommendation factors in the last month or multiple months.
[0106] 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 under different types of recommendation factors may be stored in different data collection tables. For example, the historical application usage information under recommendation factors of fixed locations such as home and company may be stored in the same data collection table, the historical application usage information under mobile recommendation factors such as buses and subways may be stored in the same data collection table, and the historical application usage information under recommendation factors related to devices such as wearing headphones and car Bluetooth may be stored in the same data collection table.
[0107] It can be understood that for APP suggestion cards, the above mining and learning process can determine the promotion threshold (recorded as the first threshold) and evaluation threshold (such as the second threshold corresponding to the weighted probability or the third threshold corresponding to the confidence) for issuing cards under each recommendation factor, and save the APPs that are greater than these thresholds under each recommendation factor to the portrait table. It can be understood that the APP suggestion card refers to the APPs recommended by users displayed on the APP suggestion card, specifically the icons of these recommended APPs.
[0108] Reference Figure 6As shown, it is a flow chart of APP preference mining provided in the embodiment of the present application, mainly based on the lifting degree and confidence as the basis for recommending APP. Specifically, the electronic device can obtain the user APP click record and scene trigger record, and pre-process these data to obtain ① APP behavior under each recommendation factor, and ② APP behavior under the current calculation cycle. For example, the current recommendation factor can be within a day of the current system time of the electronic device, and the current calculation cycle can be a month before the current system time. And APP behavior refers to the behavior of the user clicking the APP icon to open the APP, that is, the behavior of the user using the APP. Then, the electronic device can ③ calculate the APP lifting degree (referred to as lift) under each recommendation factor, and ③ calculate the weighted probability of the click frequency and click days of each APP under each recommendation factor to obtain the confidence (referred to as conf). Then, the electronic device can set the card lift threshold and conf threshold of the APP suggestion card, and save the APP greater than these thresholds under each recommendation factor to the portrait table. It can be understood that the lift threshold is also called the lifting degree threshold or the first threshold, and the conf threshold is also called the confidence threshold or the third threshold, and the values of these two thresholds can be determined according to actual needs, and this application does not make specific restrictions on this. For example, the lift threshold can be 0.6 and the conf threshold can be 0.4.
[0109] Among them, the process of APP preference mining in this application will be combined below Figure 7 A detailed description is given and no further elaboration is given here.
[0110] S504: The business module 42 queries the portrait table of the preferred APPs under each recommendation factor from the learning module 44. The APP portrait table includes the APP information, recommendation factor information, promotion degree, and confidence degree of each preferred APP.
[0111] S505: The business module 42 registers the fences of each recommendation factor with the perception module 41, wherein each fence is associated with a portrait table of preferred APPs under the corresponding recommendation factor.
[0112] S506: The service module 42 monitors the service operation status.
[0113] It can be understood that the business module 42 can monitor whether the current desktop interface is running, or monitor whether a certain APP interface is opened, etc.
[0114] S507: The perception module 41 sends a first fence trigger notification to the business module 42.
[0115] Among them, the 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.
[0116] The first fence is a fence registered in the sensing module 41. It can be understood that a fence being triggered indicates that the electronic device enters the recommendation factor corresponding to the fence.
[0117] S508: The business module 42 notifies the presentation module 43 to display the APP suggestion card of the user's preferred APP under the current recommendation factor, 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.
[0118] 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.
[0119] 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 to display the preferred APP included in the YOYO suggestion card.
[0120] In this way, when the electronic device enters a certain recommendation factor, the fence corresponding to the recommendation factor is triggered, and the electronic device can display the user's preferred APPs under the recommendation factor in the YOYO suggestion card, making it convenient for the user to quickly use these APPs and improving the user experience.
[0121] Next, combine Figure 7 , taking the electronic device as the execution subject, the application recommendation method provided by the application embodiment is illustrated. Specifically, the method includes the following steps:
[0122] S701: The electronic device obtains a plurality of historical application usage information within a historical period. For example, each piece of historical application usage information may include APP information, APP click time, and recommendation factor information.
[0123] For example, the above multiple historical application usage information can be obtained by integrating historical data within the last month, so the multiple historical application usage information represents the situation of users clicking on APPs under various recommendation factors within the last month. It can be understood that each historical application usage information is used to indicate that the user clicked and used an APP under a recommendation factor at a certain time in the above historical period. Specifically, the detailed process of obtaining multiple historical application usage information in the embodiment of the present application can refer to the above Figure 5 The relevant description in S503 in the above description will not be repeated here. For example, the above historical time can be recorded as T1.
[0124] S702: The electronic device selects historical application usage information corresponding to multiple recommendation factors from multiple historical application usage information.
[0125] In some embodiments, the multiple recommendation factors in the present application can be pre-set in the electronic device by the user or relevant staff. For example, the above recommendation factors can be home, company, hospital, shopping mall, airport, railway station, express service area, government agency, subway, wearing headphones, car Bluetooth, etc.
[0126] S703: The electronic device calculates the number of days of use of each recommendation factor according to the historical application usage information corresponding to the multiple recommendation factors.
[0127] The number of days each recommendation factor is used can be recorded as Count(s, day), the parameter s represents the recommendation factor and different values represent different recommendation factors, and day represents the number of days the recommendation factor indicated by the parameter s appears. For example, multiple recommendation factors are represented by s1, s2, ..., sn-1 and sn respectively, that is, the values of the parameter s in Count(s, day) are s1, s2, ..., sn-1 and sn respectively, and n is a positive integer.
[0128] S704: The electronic device filters out historical application usage information corresponding to recommendation factors with usage days less than a minimum number of days, and obtains valid historical application usage information corresponding to multiple recommendation factors.
[0129] Among them, the value of the above-mentioned minimum number of days can be selected according to actual needs. For example, the minimum number of days can be 2 days, but it is not limited to this. It can be understood that since the historical application usage information under the recommendation factor with a usage number of days less than the minimum number of days may be a recommendation factor that the user accidentally encounters, it cannot reflect the user's APP usage preference under the recommendation factor. Therefore, the relevant data of this scenario is not considered, and there is no need to recommend the user's preferred APP for this recommendation factor in the future. Among them, in the embodiment of the present application, the user's APP usage preference can be an APP click preference, that is, the user's preference to click the APP icon to open the APP.
[0130] S705: The electronic device calculates the usage count of the APP under all the recommendation factors according to the plurality of historical application usage information.
[0131] The number of times the APP is used under all recommendation factors can be recorded as Count (all). It can be understood that the number of times the APP is used in the embodiment of the present application can be the number of times the APP is clicked and opened, also known as the number of times used.
[0132] S706: The electronic device calculates the usage count of each APP under each recommendation factor based on the valid historical application usage information corresponding to the multiple recommendation factors.
[0133] The number of times the APP is used under each recommendation factor can be recorded as Count(s). For example, the values of the parameter s in Count(s) are s1, s2, ..., sn-1 and sn in sequence to indicate each recommendation factor respectively.
[0134] S707: The electronic device calculates the usage times of each APP under all recommendation factors according to the plurality of historical application usage information.
[0135] The number of times each APP is used under all recommendation factors can be recorded as Count(app), and the parameter app represents an application program and different values represent different applications. For example, the APPs in the electronic device can be recorded as app1, app2, ..., app m-1 and app m, that is, the values of the parameter app in Count(app) are app1, app2, ..., app m-1 and app m, and m is a positive integer. For example, the values of the parameter app are app1, which is used to indicate APP1 installed in the electronic device.
[0136] S708: The electronic device calculates the number of times each APP is used under each recommendation factor and the number of days each APP is used under each recommendation factor based on the valid historical application usage information corresponding to the multiple recommendation factors. For example, the electronic device calculates the number of times and days of use of APP1 under recommendation factor s1 within T1.
[0137] The number of times each APP is used under each recommendation factor is recorded as Count(app|s), and the number of days each APP is used under each recommendation factor is recorded as Count(app|s,day). For example, the values of the parameter s in Count(app|s) and Count(app|s,day) are s1, s2, ..., sn-1, and sn, respectively, and the values of the parameter app are app1, app2, ..., app m-1, and app m, respectively. For example, the number of times each APP is used under each recommendation factor, Count(app|s), is the frequency of use of each APP under each recommendation factor.
[0138] S709: The electronic device calculates the promotion degree and evaluation parameters of each APP under each recommendation factor based on the number of days each recommendation factor is used Count(s, day), the number of times the APP is used under all recommendation factors, the number of times the APP is used under each recommendation factor, the number of times each APP is used under all recommendation factors Count(app), the number of times each APP is used under each recommendation factor Count(app|s), and the number of days each APP is used under each recommendation factor Count(app|s, day).
[0139] In one embodiment, the evaluation parameter of each APP under each of the above recommendation factors is a weighted probability.
[0140] In another embodiment, the evaluation parameter of each APP under the above-mentioned recommendation factors is confidence, wherein the confidence is calculated based on the weighted probability of the APP and the total number of APPs in the electronic device.
[0141] The process of calculating the promotion degree, weighted probability and confidence of each APP in S709 will be combined below. Fig. 9 The specific description will not be repeated here.
[0142] S710: The electronic device saves the APPs whose recommendation factor promotion degree is greater than the first threshold and whose evaluation parameters are greater than the evaluation threshold into the portrait table.
[0143] In some embodiments, corresponding to the evaluation parameter being a weighted probability, the above-mentioned evaluation threshold is a threshold corresponding to the weighted probability of each APP under each recommendation factor. For example, the threshold is 0.5, and the threshold can be recorded as the second threshold.
[0144] In some embodiments, corresponding to the evaluation parameter being confidence, the above evaluation threshold is a threshold corresponding to the confidence of each APP under each recommendation factor, for example, the threshold is 0.4, and the threshold can be recorded as the third threshold.
[0145] In addition, the first threshold may be 0.6. The specific values of the thresholds are not limited to the above examples.
[0146] It can be understood that an APP whose lift under a recommendation factor is greater than the first threshold and whose weighted probability is greater than the corresponding second threshold, or an APP whose lift under the recommendation factor is greater than the first threshold and whose confidence is greater than the corresponding third threshold, is the APP that users prefer to use under the current recommendation factor.
[0147] Moreover, the confidence of an APP is specifically determined by the click frequency and usage days of users under a recommendation factor and the total number of APPs in the electronic device, and the greater the usage frequency and usage days, the higher the confidence.
[0148] In some embodiments, each portrait in the portrait table includes APP information, recommendation factor information, promotion degree, and confidence degree, that is, the portrait table can reflect the APPs that users prefer to use under various recommendation factors. For example, the APP information in a portrait can be the name of an APP, the recommendation factor information can indicate the recommendation factor of the electronic device when the current APP is used, the current promotion degree is greater than the first threshold, and the current evaluation parameter is greater than the evaluation threshold.
[0149] S711: The electronic device detects that the first fence is triggered, and displays an APP suggestion card corresponding to the first fence according to the portrait table. The APP suggestion card includes APPs preferred by the user under the recommendation factors corresponding to the first fence.
[0150] In some embodiments, in the present application, the electronic device may pre-register fences corresponding to various recommendation factors, and the first fence corresponds to one recommendation factor.
[0151] It can be understood that the above-mentioned first fence can be a geographical fence, a time fence, etc., and this application will not go into details.
[0152] In some embodiments, when the electronic device enters the first fence, and during the time period after entering the first fence and before exiting the first fence, the electronic device can continue to recommend to the user the user's preferred APPs under the recommendation factors corresponding to the first fence through APP suggestion cards.
[0153] In some embodiments, the electronic device may display an APP suggestion card in a target area of the main interface of the display screen. Limited by the size of the target area, the number of APPs displayed on the APP suggestion card at one time is limited, for example, a preset number. For example, the preset number may be 4, but is not limited thereto, and may also be 3 or 5.
[0154] It can be understood that when the number of APPs whose evaluation parameters meet the preset conditions under a recommendation factor is greater than or equal to the preset number, the electronic device will issue the preset number of APPs in the APP suggestion card, or display all APPs whose evaluation parameters meet the preset conditions under the recommendation factor through multiple windows switched by sliding. Of course, when the number of APPs whose evaluation parameters meet the preset conditions under a recommendation factor is less than the preset number, the electronic device will directly issue these APPs in the APP suggestion card.
[0155] For example, combined with Figure 2 , the first fence may be geo-fence 01, then the electronic device triggers and enters geo-fence 01, indicating that the electronic device has entered the subway scene, refer to Figure 8 As shown, the YOYO suggestion card 05 displayed by the electronic device may include the user's preference to use UnionPay QuickPass when taking the subway. TM , Sina Weibo TM , Toutiao TM Reading with WeChat TM .
[0156] In some embodiments, the order of the multiple preferred APPs displayed in the YOYO suggestion card in this application may not be limited. TM , Sina Weibo TM , ToutiaoTM Reading with WeChat TM The display order is not limited to Figure 8 The display order shown may also be any other achievable order.
[0157] In this way, the application recommendation method provided by this application not only considers the overall usage frequency of the APP, but also considers the user's preference for using the APP under different recommendation factors. Therefore, it is possible to accurately recommend the user's preferred APP under different recommendation factors, making it convenient for the user to quickly use the required APP, greatly improving the user experience.
[0158] Combination Fig. 9 , the process of calculating the promotion degree and confidence of each APP by the electronic device in the embodiment of the present application is described in detail. Fig. 9 As shown, the above S709 may include S901 to S906:
[0159] S901: The electronic device calculates the usage probability of each APP under each recommendation factor according to the usage count Count(app|s) of each APP under each recommendation factor and the usage count Count(s) of each APP under each recommendation factor.
[0160] For example, the usage probability of each APP under each recommendation factor can be recorded as p(app|s).
[0161] In some embodiments, the electronic device may use the number of times Count(app|s) of use of each APP under each recommendation factor and the number of times Count(s) of use of the APP under each recommendation factor as the usage probability of each APP under each recommendation factor, that is, the usage probability of each APP under each recommendation factor may be implemented by the following formula (1-1):
[0162] p(app|s)=Count(app|s) / Count(s)(1-1)
[0163] It can be understood that different values of parameter s in formula (1-1) represent different recommendation factors, and different values of parameter app represent different applications. Then, when parameter s is fixed, the value of parameter app can be modified to calculate the usage probability of each APP under the current recommendation factor. Similarly, in formula (1-1), parameter s is set to another value to determine the usage probability of each APP under other recommendation factors. For example, when parameter s represents a subway scene, the value of parameter app can be modified to calculate the usage probability of each APP in the subway scene.
[0164] It is understandable that if the amount of historical application usage information under a certain recommendation factor in the historical time is too small, then the number of APP usage times Count(s) under each recommendation factor is too small, resulting in inaccurate calculated usage probabilities of each APP under each recommendation factor. In some embodiments, in order to improve the occurrence of this situation, the present application can calculate the Wilson probability of each APP under each recommendation factor, that is, correct the usage probability of each APP under each recommendation factor, such as by normalizing.
[0165] In some implementations, the electronic device may modify the ratio of the number of uses Count(app|s) under each recommendation factor to the number of uses Count(s) of the APP under each recommendation factor to calculate the usage probability of each APP under each recommendation factor. At this time, the usage probability of each APP under each recommendation factor is the Wilson usage probability.
[0166] In some embodiments, the probability of Wilson's use can be recorded as willson ctr(app|s) , that is, willson ctr(app|s) = willson_ctr(count(s), count(app|s)). Wilson probability willson ctr(app|s) This can be achieved by combining formula (1-1) and the following formula (1-2).
[0167]
[0168] p=Count(app|s) / Count(s) (1-3)
[0169] Where n in formula (1-2) is the number of times the APP is used under each recommendation factor, that is, the number of samples, and z is a constant, for example, z = 1.96. In addition, the calculation of formula (1-3) is the same as that of formula (1-1), that is, p in formula (1-3) refers to the uncorrected usage probability of each APP under each recommendation factor.
[0170] It can be understood that as the values of parameter s and parameter app change, the Wilson usage probability of each APP under each recommendation factor can be calculated by formulas (1-1) and (1-2).
[0171] S902: The electronic device calculates the usage probability of the APP under all recommendation factors according to the usage count Count(app) of each APP under all recommendation factors and the usage count Count(all) of the APP under all recommendation factors.
[0172] Among them, the probability of using APP under all recommendation factors can be recorded as P(app|all).
[0173] In some embodiments, the electronic device may use the ratio of the number of times each APP is used under all recommendation factors Count(app) to the number of times each APP is used under all recommendation factors Count(all) as the usage probability of each APP under each recommendation factor. At this time, the usage probability of APP under all recommendation factors P(app|all) can be realized by the following formula (2-1):
[0174] p(app|all)=count(app) / count(all) (2-1)
[0175] It is understandable that in order to avoid an excessive count(app) value leading to an inaccurate result of p(app|all), count(app) can be corrected to appropriately increase the value of count(app). In some embodiments, the present application can use the following formula (2-2) to calculate the usage probability P(app|all) of the APP under all recommendation factors.
[0176]
[0177] Among them, in formula (2-2) is the penalty factor, For example, to prevent the value of count(app) from being too small, which will result in the calculation result of p(app|all) being too small, you can set The value is 5, but not limited to this.
[0178] S903: The electronic device calculates the probability of each APP being used for each recommendation factor based on the number of days of use Count(s, day) of each recommendation factor and the number of days of use Count(app|s, day) of each APP under each recommendation factor.
[0179] The probability of using each APP for each recommendation factor can be recorded as p(app|days), which can be achieved by the following formula (3):
[0180] p(app|days)=count(app|s,day) / count(s,day) (3)
[0181] S904: The electronic device calculates the promotion degree of each APP under each recommendation factor according to the usage probability p(app|s) of each APP under each recommendation factor and the usage probability p(app|all) of the APP under all recommendation factors.
[0182] Among them, the improvement degree of each APP under each recommendation factor can be recorded as
[0183] In some embodiments, the improvement degree of each APP under each recommendation factor can be the ratio of the usage probability p(app|s) of each APP under each recommendation factor to the usage probability p(app|all) of the APP under all recommendation factors, which can be achieved through the following formula (4-1).
[0184]
[0185] In some embodiments, in order to facilitate comparison of the promotion degrees of different apps in actual applications, the promotion degrees may be normalized. For example, the calculation formula for the promotion degree of each app under each recommendation factor may be replaced by the above formula (4-1) with the following formula (4-2).
[0186]
[0187] Among them, sigmoid() in formula (4-2) refers to The value is normalized to between 0 and 1.
[0188] In some embodiments, the usage probability corresponding to each APP under each recommendation factor is the Wilson probability, and the calculation formula for the promotion degree of each APP under each recommendation factor can be replaced by the above formula (4-2) with the following formula (4-3).
[0189]
[0190] S905: The electronic device calculates the weighted probability of each APP under each recommendation factor according to the number of times each APP is used under each recommendation factor Count (app|s) and the number of days each APP is used under each recommendation factor Count (app|s, day).
[0191] Among them, the weighted probability of each APP under each recommendation factor can be recorded as Weight_P(app|s),
[0192] In some embodiments, the electronic device may use the product of the number of times each APP is used under each recommendation factor Count(app|s) and the number of days each APP is used under each recommendation factor Count(app|s,day) as the weighted probability of each APP under each recommendation factor.
[0193] For example, the weighted probability Weight_P(app|s) of each APP under each recommendation factor can be achieved by the following formula (6-1).
[0194] Weight_P(app|s)=p(app|s)*p(app|days) (6-1)
[0195] Among them, p(app|s) in formula (6-1) can be calculated by the above formula (1-1), that is, it is realized by Count(app|s) / Count(s).
[0196] In some embodiments, in actual applications, in order to facilitate the comparison of the weighted probabilities of each APP under each recommendation factor, the calculation results can be normalized. For example, the implementation formula of the weighted probability Weight_P(app|s) of each APP under each recommendation factor can be replaced by the above formula (6-1) with the following formula (6-2).
[0197] Prob(app|s)=normalize(Weight_P(app|s))=normalize(p(app|s)*p(app|days))(6-2)
[0198] The word "normalize" in formula (6-2) means normalization, that is, formula (6-2) can first calculate the results of p(app|s)*p(app|days) for each APP under each recommendation factor, and then normalize these results, for example, normalize them to a value between 0 and 1. And Prob(app|s) represents the normalized weighted probability of each APP under each recommendation factor.
[0199] S906: The electronic device sorts the APPs according to the weighted probability of each recommendation factor from small to large, and uses the ratio of the ranking of each APP under each recommendation factor to the total number of APPs in the electronic device as the confidence of each APP under the recommendation factor.
[0200] In some embodiments, the above “the electronic device sorts the APPs from small to large according to the weighted probability of each APP under each recommendation factor” means that the electronic device can sort the normalized weighted probabilities.
[0201] It can be understood that the weighted probability Weight_P(app|s) of the click frequency and usage days of each APP under each recommendation factor not only considers the overall usage times of the APP, but also the usage days of the APP. Therefore, if an APP is used more times but the usage days are fewer, the corresponding Weight_P(app|s) value will become smaller.
[0202] The electronic device can sort the weighted probabilities Weight_P(app|s) of each APP under a recommendation factor from small to large. For example, for the subway scene recommendation factor, the APPs clicked by the user under this recommendation factor are WeChat Reading, TM , Cloud QuickPass TM , Sina Weibo TM , Toutiao TM , Taobao TM ,WeChat TM , Meitu Xiuxiu TM , Alipay TM , Gallery, Music, a total of 10 APPs. And the Weight_P(app|s) of these 10 APPs are in the order of Taobao, TM , Meitu Xiuxiu TM , Alipay TM , Gallery, Music, WeChat TM , WeChat Reading TM , Sina Weibo TM , Toutiao TM , Cloud QuickPass TM , that is, the rankings of these apps are 1 to 10. Then, Taobao TM , Meitu Xiuxiu TM , Alipay TM , Gallery, Music, WeChat TM , WeChat Reading TM , Sina Weibo TM , Toutiao TM , Cloud QuickPass TM The ratios of the ranking of WeChat to the total number of apps (i.e., 10) are 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, and 1, respectively, indicating that the confidence of these apps increases in sequence. For example, when the third threshold is 0.4, WeChat TM , WeChat Reading TM , Sina Weibo TM , Toutiao TM , Cloud QuickPass TM The preferred APP under the current recommendation factor will be selected, and when the preset number is 4, WeChat Reading with a higher confidence level can be selected. TM , Sina Weibo TM , Toutiao TM , Cloud QuickPass TM These four apps are the users' preferred apps in subway scenarios.
[0203] It can be understood that the weighted probability Weight_P(app|s) of each APP under each recommendation factor in this application not only considers the click frequency of the APP, but also the number of days the APP is used. Therefore, if the click frequency of an APP is large but the number of days of use is small, the corresponding Weight_P(app|s) value will become smaller, which will make the weighted probability and confidence of the APP smaller. For example, some APPs are clicked multiple times in a row on a certain day, but are not clicked on other days within a month, indicating that the relevant data of the APP is extreme data and can be used as a basis for judging the user's preferred APP. Then, the weighted probability and confidence calculated from the extreme data of this type of APP are small, so that this type of APP will not be judged as the user's preferred APP, which is equivalent to eliminating the extreme data of this type of APP.
[0204] Understandably, Fig. 9 When the method flow in executes S906, the APP preferred by the user under a recommendation factor is an APP whose lift under the recommendation factor is greater than the first threshold and whose confidence (ie, evaluation parameter) is greater than the corresponding evaluation threshold (ie, the third threshold).
[0205] In some embodiments, Fig. 9 In the method flow shown, S906 may not be executed, that is, the electronic device selects the user's preferred APP under each recommendation factor according to the promotion degree and weighted probability of each APP under each recommendation factor. At this time, the user's preferred APP under a recommendation factor is the APP whose promotion degree under the recommendation factor is greater than the first threshold and the weighted probability (i.e., the evaluation parameter) is greater than the corresponding evaluation threshold (i.e., the second threshold).
[0206] In this way, the application recommendation method provided by this application not only considers the promotion degree of the user's APP under each recommendation factor, that is, the user's preference for the APP under each recommendation factor, but also considers the user's click frequency and click-day number of these APPs. Therefore, it can not only ensure that the card-issuing APP is the APP that the user prefers more under the current recommendation factor, but also ensure that the card-issuing APP has a certain operation frequency, so that the card-issuing APP is more in line with the actual operation requirements of the recommendation factor.
[0207] Next, combine Fig.10 The processing flow of historical data in this application is described in detail. The execution subject of the process can still be an electronic device. The process includes the following steps:
[0208] S1001: For user APP click records and scene trigger records in historical data, query the recommendation factor configuration corresponding to the historical data according to itemTypeId and key to obtain the storage fields sceneX and primaryKey corresponding to the recommendation factors.
[0209] Among them, each user APP click record in this application may have an itemTypeId and a time information. ItemTypeId can also be called an item category identifier. Among them, an itemTypeId is used to uniquely identify an APP click record. That is, each user APP click record is used to record the next APP clicked and used by the user at a historical moment. In addition, each scene trigger record in this application may have a key (that is, the identifier of the recommendation factor), a recommendation factor description information sceneX (such as geographic location Geo), and a time information. Among them, a key is used to uniquely identify a recommendation factor. That is, each scene trigger record is used to record the next recommendation factor being triggered at a historical moment. Specifically, each user APP click record has a storage field corresponding to itemTypeId and a storage field corresponding to the time information. In addition, each scene trigger record has a storage field corresponding to the key, a storage field corresponding to sceneX, and a storage field corresponding to the time information.
[0210] 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 recommendation factors of the APP and electronic device clicked by the user in the same time period.
[0211] The primaryKey is used to indicate multiple recommendation factors, such as home, company, hospital, shopping mall, airport, railway station, expressway service area, government agency, subway, wearing headphones, car Bluetooth, etc. For example, the primaryKey value of the home scene is "home", the primaryKey value of the subway scene is "subway", the primaryKey value of the wearing headphones scene is "earphones", and the primaryKey value of the car Bluetooth scene is "car-bluetooth-phone".
[0212] Then, the recommendation factor configuration in the above step S1001 refers to the recommendation factor configuration indicated by the user APP click record and the scene trigger record, and the electronic device can query the sceneX field in the scene trigger record, and determine the primaryKey indicating the recommendation factor based on each key, and the sceneX field corresponding to each primaryKey. That is, the above 1001 refers to the electronic device determining the primaryKey field and sceneX field corresponding to each recommendation factor from the historical data.
[0213] S1002: query data from the ofSubjectEventSet and SceneAnnotation tables of the historical data according to itemTypeId, longestDays, and sceneX, and obtain data including the fields eventTimestamp, primaryKey (packageName), and sceneX.
[0214] The longestDays mentioned above refers to the time selected by the user APP click records and scene trigger records in the historical data. For example, if longestDays is 30 days, it refers to the historical data of the most recent month.
[0215] The above-mentioned ofSubjectEventSet and SceneAnnotation table joins correspond to the user APP click records and scene trigger records in the historical data. For example, the ofSubjectEventSet table is used to represent the user APP click records, and the SceneAnnotation table is used to represent the scene trigger records in the historical data.
[0216] eventTimestamp is used to indicate time information, for example, the time information is the time information in a user APP click record, the time information in a scene trigger record, or the time information in a user APP click record and the associated time information, or the time information in one or more scene trigger records and the associated time information in a user APP click record integrated together.
[0217] In some embodiments, the primaryKey field may also include packageName, where packageName may be the name of the APP.
[0218] Thus, the data obtained in step S1002 above, including the fields eventTimestamp, primaryKey (packageName), and sceneX, are the multiple historical application usage information mentioned above. Each piece of historical usage information includes a field eventTimestamp for carrying information, a field primaryKey for carrying APP information and scene identifier (such as "home" corresponding to the home scene), and a field sceneX for carrying scene information (such as the geographical location of the scene).
[0219] S1003: Filter out the data where sceneX = recommended factor value, and calculate the number of days Count(s, day) of use of each recommended factor. If the number of days Count(s, day) of use is less than the minimum number of days validDays, the calculation ends.
[0220] In some embodiments, the above-mentioned recommendation factor value corresponds to the recommendation factor, such as the geographical location corresponding to the recommendation factor. For example, the multiple recommendation factors in the present application are recommendation factors s1, s2, ..., sn-1 and sn, then the recommendation factor value is the geographical location of recommendation factors s1, s2, ..., sn-1 and sn. Then, the data filtered out sceneX = recommendation factor value is the historical application usage information corresponding to multiple recommendation factors. The data after filtering out the number of days of use Count(s, day) less than the minimum number of days validDays is the valid historical application usage information corresponding to multiple recommendation factors.
[0221] S1004: Calculate the number of data in S1002 to obtain the number of times the APP is used under all recommendation factors Count (all), and calculate the number of data in S1003 to obtain the number of times the APP is used under each recommendation factor Count (s). It can be understood that all recommendation factors are the full scenario of the number of data in S1002.
[0222] The number of data items in S1002 is the number of items of historical application usage information, thereby obtaining the number of times the APP is used under all recommendation factors Count (all).
[0223] Calculating the number of data items in S1003 is to calculate the number of valid historical application usage information corresponding to multiple recommendation factors, so as to obtain the number of times the APP is used under each recommendation factor.
[0224] S1005: Group the data in S1002 by primaryKey, calculate the number of data in each group, and obtain the number of times each APP is used under all recommendation factors Count(app).
[0225] Among them, grouping the data in S1002 by primaryKey means grouping multiple historical application usage information according to recommendation factors.
[0226] S1006: Group the data in S1003 by primaryKey, calculate the number of data items in each group to obtain the number of times each APP is used under each recommendation factor Count (app|s), and calculate the number of days each APP is used under each recommendation factor Count (app|s, day).
[0227] Grouping the data in S1002 by primaryKey means grouping the valid historical application usage information corresponding to multiple recommendation factors by the recommendation factors.
[0228] S1007: Calculate the promotion degree and evaluation parameters of each APP under each recommendation factor, filter according to the first threshold and the evaluation threshold, and save the filtering results to the portrait table. That is, the filtering results include APPs whose promotion degree under each recommendation factor is greater than the first threshold and whose evaluation parameters are greater than the evaluation threshold.
[0229] The process of calculating the promotion degree and evaluation parameters of each APP and filtering according to the first threshold and the evaluation threshold can be referred to Figure 7 and Figure 8 The relevant descriptions in the illustrated embodiments are not repeated here. For example, the evaluation parameter may be a weighted probability, or the weighted probability may be corrected to a confidence level.
[0230] 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.
[0231] 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.
[0232] 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.
[0233] 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.
[0234] 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.
[0235] 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.
[0236] 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.
[0237] 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.
[0238] 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 an electronic device, wherein a first application and a second application are installed on the electronic device; and The method comprises: Determining that the electronic device enters a first fence corresponding to a first recommendation factor; displaying a first application corresponding to the first fence that is recommended to the user, wherein the promotion degree of the first application is greater than the promotion degree of a second application that is not recommended to the user, and The higher the promotion degree is, the higher the probability that the application has been used under the first recommendation factor within the first historical time period is, and The promotion degree is determined based on a usage probability of the application under the first recommendation factor in the first historical time period and a usage probability of the application under multiple recommendation factors in the first historical time period.
2. The method according to claim 1, characterized in that The weighted probability of the first application is greater than the weighted probability of the second application, and, The higher the weighted probability, the higher the number of times the application has been used under the first recommendation factor within the first historical time period and the longer the number of days the application has been used. The weighted probability is determined based on the usage probability of the application under the first recommendation factor in the first historical time period, the number of days the application is used under the first recommendation factor in the first historical time period, and the number of days the application is used under multiple recommendation factors in the first historical time period.
3. The method according to claim 1, characterized in that: The confidence level of the first application is greater than the confidence level of the second application, and, The higher the confidence, the higher the number of times the application has been used under the first recommendation factor within the first historical time period and the longer the number of days the application has been used. The confidence level is determined based on a weighted probability of the application and a total number of applications in the electronic device, and The weighted probability is determined based on the usage probability of the application under the first recommendation factor in the first historical time period, the number of days the application is used under the first recommendation factor in the first historical time period, and the number of days the first recommendation factor appears in the first historical time period.
4. The method according to any one of claims 1 to 3, characterized in that The usage probability of the application under the first recommendation factor in the first historical time period is: A ratio of the number of times the application is used under the first recommendation factor in the first historical time period to the number of times a plurality of applications in the electronic device are used under the first recommendation factor in the first historical time period.
5. The method according to claim 1, characterized in that: The usage probability of the application under the first recommendation factor in the first historical time period is: The first probability is obtained by adjusting the first usage times, and the smaller the first usage times, the greater the degree to which the first probability is reduced. Among them, the first usage count is the usage count of multiple applications in the electronic device under the first application recommendation factor within the first historical time period, and the first probability is the ratio of the usage count of the application under the first recommendation factor within the first historical time period to the first usage count.
6. The method according to claim 5, characterized in that The first probability is calculated based on the first usage times using the formula Adjusted, among which, n is the first usage number, z is a constant, willson ctr(app|s) represents the first probability, p is the ratio of the number of times the application is used under the first recommendation factor in the first historical time period to the number of times multiple applications in the electronic device are used under the first recommendation factor in the first historical time period.
7. The method according to claim 1, characterized in that The usage probability of the application under the multiple recommendation factors in the first historical time period is: A ratio of the number of times the application is used under the multiple recommendation factors within the first historical time period to the number of times multiple applications are used under the multiple recommendation factors within the first historical time period.
8. The method according to claim 1, characterized in that The usage probability of the application under the multiple recommendation factors in the first historical time period is: A ratio of a value obtained by adding a first value to the number of times the application is used under the multiple recommendation factors within the first historical time period to the number of times multiple applications are used under the multiple recommendation factors within the first historical time period.
9. The method according to any one of claims 1 to 8, characterized in that The degree of improvement is: A ratio of a usage probability of an application under the first recommendation factor in the first historical time period to a usage probability of the application under multiple recommendation factors in the first historical time period.
10. The method according to claim 9, characterized in that The degree of improvement is: The value obtained by normalizing the second probability, where The second probability is: a ratio of a usage probability of the application under the first recommendation factor in the first historical time period to a usage probability of the application under multiple recommendation factors in the first historical time period.
11. The method according to claim 10, characterized in that The normalization of the second probability adopts the formula To achieve, represents the promotion degree, p(app|s) / p(app|all) represents the second probability, p(app|s) represents the usage probability of the application under the first recommendation factor in the first historical time period, p(app|all) represents the usage probability of the application under multiple recommendation factors in the first historical time period, and The value of the lifting degree is a value between 0 and 1.
12. The method according to claim 2 or 3, characterized in that: The weighted probability is: a value obtained by multiplying the probability of use of the application under the first recommendation factor in the first historical time period by a third probability, and, The third probability is a ratio of the number of days the application is used under the first recommendation factor during the first historical time period to the number of days the first recommendation factor appears during the first historical time period.
13. The method according to claim 3, characterized in that The confidence level is: The ratio of the first ranking of the application to the number of multiple applications used by the user under the first recommendation factor in the first historical time period, wherein: The first ranking of the application is the ranking of the weighted probability of the application among the weighted probabilities of each application in multiple applications used by the user under the first recommendation factor within the first historical time period, sorted from small to large.
14. The method according to claim 3, characterized in that The lift of the first application is greater than a first threshold, or the lift of the first application is greater than the first threshold and the weighted probability of the first application is greater than a second threshold, or the lift of the first application is greater than the first threshold and the confidence of the first application is greater than a third threshold.
15. The method according to claim 1, characterized in that The method further comprises: It is determined that the number of days that the first recommendation factor appears in the first historical time period is greater than the first day.
16. The method according to any one of claims 1 to 15, characterized in that The first recommendation factor includes at least one of the following: Time factor, space factor, and device usage factor, wherein the device usage factor is used to indicate whether the electronic device is connected to an external device; The first fence includes at least one of the following: a time fence, a geographic fence, and a device fence.
17. The method according to claim 1, characterized in that The first application corresponding to the first fence recommended to the user is displayed in an application suggestion card of the electronic device.
18. 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 17.
19. 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 17.