Service recommendation method and apparatus, computer device, and storage medium

CN117112898BActive Publication Date: 2026-09-15TSINGHUA UNIVERSITY
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202311075233.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-08-24
Publication Date
2026-09-15
Estimated Expiration
2043-08-24

AI Technical Summary

Technical Problem

[0004]然而,采用传统的技术,每个用户被推荐的服务都是相同的,无法满足用户个性化的需求

Benefits of technology

[0059] The aforementioned service recommendation methods, apparatus, computer devices, computer-readable storage media, and computer program products, upon detecting that a target service is running on a terminal, collect user-inputted contextual reasons corresponding to the target service by displaying rule extraction prompt cards for that service. These reasons are then transformed into candidate contextual attributes, and relevant options are displayed, allowing the user to modify or confirm to obtain a more accurate target contextual attribute. This allows the construction of contextual service causal rules based on the user's personalized needs and choices. In subsequent service recommendations, personalized service recommendations can be achieved based on these contextual service causal rules.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117112898B_ABST
    Figure CN117112898B_ABST
Patent Text Reader

Abstract

The application provides a service recommendation method and device, computer equipment and a storage medium. The method comprises the following steps: when it is detected that a target service is running in a terminal, a rule extraction prompt card for the target service is displayed; the rule extraction prompt card is used to prompt a user account to input a context reason corresponding to the target service; the user account inputs the context reason, and the context reason is converted into a candidate context attribute; the user account selects a target context attribute from selectable items generated by the candidate context attribute; a context service causal rule is constructed according to the target context attribute and the target service; and a service to be recommended is determined according to matching results of the context information collected during terminal running and the context service causal rule. The method can meet the personalized needs of users.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology. Specifically, this application relates to a service recommendation method, apparatus, computer device, and storage medium. Background Technology

[0002] With the continuous development of computer technology, smart terminal services are being used more and more widely. For example, smartphones can be used to set alarms, browse WeChat Moments, and so on. To enhance the user experience, smart terminals will recommend relevant services to users at appropriate times to provide reminders or meet user needs.

[0003] In traditional technologies, service recommendation strategies are typically pre-set in smart terminals, and then corresponding services are recommended to users periodically according to these strategies.

[0004] However, with traditional technology, each user is recommended the same services, which fails to meet the personalized needs of users. Summary of the Invention

[0005] Therefore, it is necessary to provide a service recommendation method, apparatus, computer equipment, and storage medium that can meet the personalized needs of users in order to address the above-mentioned technical problems.

[0006] Firstly, this application provides a service recommendation method. The method includes:

[0007] When a target service is detected running on the terminal, a rule extraction prompt card for the target service is displayed; wherein, the rule extraction prompt card is used to prompt the user account to input a contextual reason corresponding to the target service;

[0008] Receive the contextual reason input by the user account and convert the contextual reason into a candidate contextual attribute;

[0009] Display the options generated from the candidate context attributes, and receive the target context attribute selected by the user account for the options;

[0010] Based on the target context attributes and the target service, construct context service causal rules;

[0011] Based on the contextual information collected during the operation of the terminal and the matching results of the contextual service causal rules, the service to be recommended is determined.

[0012] In one embodiment, displaying the rule extraction prompt card for the target service includes:

[0013] Obtain the historical context reasons corresponding to the target service;

[0014] Display a rule extraction prompt card for the target service; wherein, the rule extraction prompt card includes optional options generated from the historical context reasons and a context reason input box; the optional options are used to instruct the user account to check the context reason, and the context reason input box is used to instruct the user account to fill in the context reason.

[0015] In one embodiment, the context service causal rules are stored in a tree structure, the target context attribute and the target service are stored in the nodes of the tree structure, and the context service causal rules are represented by the path from the root node to the node storing the target service in the tree structure.

[0016] In one embodiment, the services to be recommended are multiple; the method further includes:

[0017] Obtain the frequency of occurrence of each of the multiple services to be recommended;

[0018] The initial order of the multiple services to be recommended is determined according to their frequency of occurrence, from highest to lowest.

[0019] In the initial arrangement order, if the frequency of occurrence of the services to be recommended is the same, then the depth in the tree corresponding to the services with the same frequency of occurrence is obtained; wherein, the depth in the tree is the depth of the service to be recommended in the tree structure;

[0020] Based on the depth of the tree, the order of the services to be recommended corresponding to the same frequency of occurrence is determined in descending order, and the final order of the multiple services to be recommended is determined.

[0021] The terminal displays the multiple services to be recommended in the final sorted order.

[0022] In one embodiment, the method further includes:

[0023] Accessibility services are used to obtain page accessibility information and actual operation sequences during the operation of the terminal.

[0024] Extract page keywords from the accessibility information of the page, and match the page keywords with pre-stored reference keywords to determine the successfully matched reference keywords;

[0025] The actual page sequence is determined based on the pages associated with the successfully matched reference keywords;

[0026] The target service is determined based on the similarity between the actual operation sequence, the actual page sequence, the pre-stored reference operation sequence, and the reference page sequence.

[0027] In one embodiment, the similarity is the edit distance;

[0028] The step of determining the target service based on the similarity between the actual operation sequence, the actual page sequence, the pre-stored reference operation sequence, and the reference page sequence includes:

[0029] Calculate the edit distance between the actual operation sequence, the actual page sequence, the pre-stored reference operation sequence, and the reference page sequence;

[0030] The service corresponding to the reference operation sequence and reference page sequence with the shortest edit distance is determined as the target service.

[0031] In one embodiment, determining the service to be recommended based on the matching results of contextual information collected during the operation of the terminal and the contextual service causal rules includes:

[0032] Collect contextual information during the operation of the terminal;

[0033] The context information is matched with the target context attributes in the context service causal rules;

[0034] The target service associated with the successfully matched target context attributes is identified as the service to be recommended.

[0035] Secondly, this application provides a service recommendation device. The device includes:

[0036] The card display module is used to display a rule extraction prompt card for the target service when a target service is detected running on the terminal; wherein, the rule extraction prompt card is used to prompt the user account to input a contextual reason corresponding to the target service;

[0037] The context conversion module is used to receive the context reasons input by the user account and convert the context reasons into candidate context attributes;

[0038] The scenario selection module is used to display the options generated by the candidate scenario attributes and to receive the target scenario attribute selected by the user account for the options.

[0039] The rule building module is used to build context service causal rules based on the target context attributes and the target service;

[0040] The service determination module is used to determine the service to be recommended based on the contextual information collected during the operation of the terminal and the matching result of the contextual service causal rules.

[0041] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:

[0042] When a target service is detected running on the terminal, a rule extraction prompt card for the target service is displayed; wherein, the rule extraction prompt card is used to prompt the user account to input a contextual reason corresponding to the target service;

[0043] Receive the contextual reason input by the user account and convert the contextual reason into a candidate contextual attribute;

[0044] Display the options generated from the candidate context attributes, and receive the target context attribute selected by the user account for the options;

[0045] Based on the target context attributes and the target service, construct context service causal rules;

[0046] Based on the contextual information collected during the operation of the terminal and the matching results of the contextual service causal rules, the service to be recommended is determined.

[0047] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:

[0048] When a target service is detected running on the terminal, a rule extraction prompt card for the target service is displayed; wherein, the rule extraction prompt card is used to prompt the user account to input a contextual reason corresponding to the target service;

[0049] Receive the contextual reason input by the user account and convert the contextual reason into a candidate contextual attribute;

[0050] Display the options generated from the candidate context attributes, and receive the target context attribute selected by the user account for the options;

[0051] Based on the target context attributes and the target service, construct context service causal rules;

[0052] Based on the contextual information collected during the operation of the terminal and the matching results of the contextual service causal rules, the service to be recommended is determined.

[0053] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:

[0054] When a target service is detected running on the terminal, a rule extraction prompt card for the target service is displayed; wherein, the rule extraction prompt card is used to prompt the user account to input a contextual reason corresponding to the target service;

[0055] Receive the contextual reason input by the user account and convert the contextual reason into a candidate contextual attribute;

[0056] Display the options generated from the candidate context attributes, and receive the target context attribute selected by the user account for the options;

[0057] Based on the target context attributes and the target service, construct context service causal rules;

[0058] Based on the contextual information collected during the operation of the terminal and the matching results of the contextual service causal rules, the service to be recommended is determined.

[0059] The aforementioned service recommendation methods, apparatus, computer devices, computer-readable storage media, and computer program products, upon detecting that a target service is running on a terminal, collect user-inputted contextual reasons corresponding to the target service by displaying rule extraction prompt cards for that service. These reasons are then transformed into candidate contextual attributes, and relevant options are displayed, allowing the user to modify or confirm to obtain a more accurate target contextual attribute. This allows the construction of contextual service causal rules based on the user's personalized needs and choices. In subsequent service recommendations, personalized service recommendations can be achieved based on these contextual service causal rules. Attached Figure Description

[0060] Figure 1 This is a flowchart illustrating a service recommendation method in one embodiment;

[0061] Figure 2 This is a flowchart illustrating the process architecture of a service recommendation method in one embodiment.

[0062] Figure 3 This is a flowchart illustrating the process architecture for identifying the target service in one embodiment.

[0063] Figure 4 This is a schematic diagram of the interface for a rule extraction prompt card in one embodiment;

[0064] Figure 5 This is a schematic diagram of the structure of a context service causal rule tree in one embodiment;

[0065] Figure 6 This is a schematic diagram of a service recommendation interface in one embodiment;

[0066] Figure 7 This is a schematic diagram of the service recommendation interface in another embodiment;

[0067] Figure 8 This is a structural block diagram of a service recommendation device in one embodiment;

[0068] Figure 9 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation

[0069] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0070] In one embodiment, such as Figure 1 As shown, a service recommendation method is provided. This embodiment illustrates the application of this method to a terminal. The terminal can be, but is not limited to, various personal computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, etc. Portable wearable devices can include smartwatches, smart bracelets, head-mounted devices, etc.

[0071] Understandably, this method can also be applied to servers, and to systems that include both terminals and servers, and can be implemented through the interaction between terminals and servers.

[0072] In this embodiment, the method includes the following steps:

[0073] Step S102: When a target service is detected running on the terminal, a rule extraction prompt card for the target service is displayed.

[0074] Specifically, for ease of understanding, the implementation details will be given using a common (smart) mobile phone as an example, and the other implementation details will follow the same approach.

[0075] Please refer to the following: Figure 2 In step S102, when the mobile phone detects that it has started and used the target service during its operation, it responds by displaying a rule extraction prompt card for the target service on the phone screen, such as... Figure 2 Top left corner box Figure 1 As shown. The rule extraction prompt card is used to prompt the user account to input a contextual reason corresponding to the target service. It is easy to understand that the purpose of step S102 is to, after the phone identifies the target service, pop up an on-site notification reminding the user whether they need to extract causal rules about the current context and service, and to provide the user with an entry point to input the corresponding contextual reason.

[0076] Step S104: Receive the contextual reason input by the user account and convert the contextual reason into a candidate contextual attribute.

[0077] Specifically, if a user wants to extract causal rules for contextual services, they input a contextual reason on their mobile phone. This contextual reason is in natural language format. After receiving the contextual reason input from the user's account, the mobile phone uses a pre-trained contextual transformation model to convert the contextual reason into candidate contextual attributes. Contextual attributes include contextual features and their feature attributes.

[0078] More specifically, the context transformation model employs a Large Language Model (LLM). LLM is used to perform text classification tasks, transforming natural language contextual causes into combinations of contextual features and their attributes, i.e., candidate contextual attributes, such as... Figure 2 The right side of the middle Figure 2 As shown.

[0079] Optionally, the training process of the large language model includes: acquiring contextual features and their attribute characteristics of eight major categories of situations transmitted by the mobile phone system through sensors, third-party interfaces (Application Programming Interfaces, APIs), etc., including time, location, weather, network, Bluetooth, motion status, services, and notifications. Each major situational category can correspond to multiple contextual features. Taking the time-related situational category as an example, contextual features can be moments, time periods, etc., and attribute characteristics can be 24:00, 8:00-10:00, etc. Then, using natural language contextual reasons, contextual features and their attribute characteristics, and services, prompts are constructed to input into the large language model.

[0080] Step S106: Display the options generated from the candidate context attributes, and receive the target context attribute selected by the user account for the options.

[0081] Specifically, the phone generates corresponding options based on candidate context attributes, and displays the context features and their attributes in a list format on the phone screen via a pop-up window, such as... Figure 2 bottom left corner box Figure 3 As shown in the diagram, the selection of optional items indicates whether a combination of situational causes is included. Based on this, users can modify the situational features and their attributes within the optional items to indicate whether a particular situational cause is included in the combination of situational features corresponding to a situational cause. In this way, by modifying or confirming the target situational attributes by the user, highly accurate situational service causal rules can be constructed.

[0082] Step S108: Construct context service causal rules based on target context attributes and target services.

[0083] Specifically, after obtaining the target context attributes modified or confirmed by the user, the mobile phone constructs corresponding context service causal rules based on the target context attributes and the corresponding target services.

[0084] Step S110: Determine the service to be recommended based on the matching results of the context information collected during terminal operation and the causal rules of context services.

[0085] Specifically, during subsequent operation, the mobile phone collects contextual information in real time through sensors, matches the contextual information with the target contextual attributes in the contextual service causal rules, and then identifies the target services associated with all successfully matched target contextual attributes as services to be recommended.

[0086] In the aforementioned service recommendation method, when a target service is detected running on the terminal, a rule extraction prompt card for the target service is displayed to collect the contextual reasons input by the user corresponding to the target service. These reasons are then converted into candidate contextual attributes and related options are displayed, allowing the user to modify or confirm to obtain a more accurate target contextual attribute. This allows the construction of contextual service causal rules based on the user's personalized needs and choices. In subsequent service recommendations, personalized service recommendations can be achieved based on these contextual service causal rules.

[0087] In one embodiment, the method involves a specific implementation process by which a terminal detects that it is running a target service. Based on the above embodiment, the method further includes the following steps:

[0088] Step S112: Obtain page accessibility information and actual operation sequence during terminal operation through accessibility services;

[0089] Step S114: Extract page keywords from the page accessibility information and match the page keywords with the pre-stored reference keywords to determine the successfully matched reference keywords;

[0090] Step S116: Determine the actual page sequence based on the pages associated with the successfully matched reference keywords;

[0091] Step S118: Determine the target service based on the similarity between the actual operation sequence, the actual page sequence, the pre-stored reference operation sequence, and the reference page sequence.

[0092] For details, please refer to the following: Figure 3 Before step S112, the operation sequences and page sequences of services on the mobile phone need to be manually pre-labeled as reference operation sequences and reference page sequences, and stored in the mobile phone. During the operation of the mobile phone, the accessibility service is used to obtain page accessibility information and actual operation sequences during the operation of the mobile phone.

[0093] Then, the mobile phone processes the page accessibility information using a keyword matching page recognition algorithm to identify the actual page sequence. Specifically, the phone extracts page keywords from the page accessibility information and matches them with pre-stored reference keywords to determine the successfully matched reference keywords. Next, the phone determines the actual page sequence based on the pages associated with the successfully matched reference keywords.

[0094] Finally, the mobile phone determines the target service based on the similarity between the actual operation sequence, the actual page sequence, and the pre-stored reference operation sequence and reference page sequence. As a specific implementation, the mobile phone calculates the edit distance between the running actual operation sequence, the actual page sequence, and the pre-labeled reference operation sequence and reference page sequence using the minimum edit distance algorithm, and identifies the service corresponding to the reference operation sequence and reference page sequence with the shortest edit distance as the target service. Optionally, the shortest edit distance can be the minimum sum of the edit distances between the actual operation sequence and the reference operation sequence and the edit distances between the actual page sequence and the reference page sequence. Alternatively, the similarity between sequences can be calculated in other ways, such as by solving the Longest Common Subsequence (LCS) problem.

[0095] In this embodiment, by using accessibility services, page accessibility information and actual operation sequences during terminal operation can be obtained. This helps provide assistive functions, making the terminal more convenient and accessible to use, and improving the accuracy of subsequent service identification. Furthermore, the target service is determined by comparing the similarity between the actual operation sequence, the actual page sequence, and pre-stored reference operation sequences and reference page sequences. This similarity analysis can match the user's actual behavior with reference data, further improving the accuracy of service identification.

[0096] In one embodiment, the specific display format of the rule extraction prompt card is involved. Based on the above embodiment, step S102, "displaying the rule extraction prompt card for the target service," can be specifically implemented through the following steps:

[0097] Step S1022: Obtain the historical context reasons corresponding to the target service;

[0098] Step S1024: Display the rule extraction prompt card for the target service.

[0099] The rule extraction prompt card includes optional options generated from historical context reasons and a context reason input box. The optional options instruct the user account to select a context reason. The context reason input box instructs the user account to enter a context reason.

[0100] Specifically, if the target service has a stored historical contextual reason, the mobile phone directly reads the historical contextual reason corresponding to the target service and generates options based on that historical contextual reason. Then, the mobile phone provides the user with selectable contextual reasons (option 21a) and an input box (21b) for entering natural language contextual reasons by displaying a rule extraction prompt card. Figure 4 As shown.

[0101] In this embodiment, by providing optional options and contextual reason input boxes, users' personalized needs and preferences can be met. Users can choose suitable options or fill in specific contextual reasons according to their own situation, which helps to build more accurate contextual service causal rules and thus improve the accuracy of service recommendations.

[0102] In one embodiment, all context service causal rules are stored in a tree structure, which can be called a context service causal rule tree, such as... Figure 5 As shown, target context attributes and target services are stored in nodes of a tree structure. Context service causal rules are represented by paths from the root node to the node storing the target service in the tree structure. The formalized context service causal rule is: if a context satisfies the context features and their combinations in the target context attributes, then the corresponding target service is recommended. Optionally, the context features and their combinations in the target context attributes are inserted into the tree structure after sorting to efficiently utilize the tree structure's storage space.

[0103] In this embodiment, by employing a tree-structured storage, target service association, and path representation for contextual service causal rules, efficient and accurate management and application of contextual service causal rules can be provided. This improves system efficiency and performance, and provides a clear rule representation method, enabling the system to better understand and apply the rules, thereby achieving personalized and accurate service recommendations.

[0104] In one embodiment, there are multiple services to be recommended. Based on this, the method further includes the following steps:

[0105] Step S122: Obtain the frequency of occurrence of each service to be recommended among multiple services to be recommended;

[0106] Step S124: Determine the initial order of multiple services to be recommended in descending order of their frequency of occurrence.

[0107] Step S126: In the initial sorting order, if the frequency of occurrence of the services to be recommended is the same, then obtain the depth in the tree corresponding to the services to be recommended with the same frequency of occurrence; wherein, the depth in the tree is the depth of the service to be recommended in the tree structure.

[0108] Step S128: Determine the order of services to be recommended with the same frequency of occurrence according to the depth of the tree in descending order, and determine the final order of multiple services to be recommended.

[0109] Step S130: Display multiple services to be recommended in the terminal according to the final sorting order.

[0110] It is understandable that in this embodiment, when sorting multiple services to be recommended, the frequency of occurrence is compared first, with higher frequency services given priority. If the frequencies are the same, the depth in the tree is compared, with deeper services given priority.

[0111] As one implementation of the recommendation interface, please refer to Figure 6 The mobile phone uses a desktop widget to recommend service 22 and displays the context and reasons for the recommendation. For another implementation of the recommendation interface, please refer to... Figure 7 The phone uses a lock screen notification to recommend services 23, allowing users to see the recommended service content without unlocking the phone.

[0112] In this embodiment, by obtaining the frequency of occurrence of multiple services to be recommended and sorting them in descending order, their initial arrangement order can be determined. This sorting method allows frequently used or popular services to appear at the top of the recommendation list, making them easier for users to notice and select. When multiple services to be recommended have the same frequency of occurrence, the system obtains their depth in the tree structure. The depth in the tree reflects the importance of the service to be recommended in the rules. Sorting according to the depth determines the arrangement order of services to be recommended with the same frequency. This ensures that the service order in the recommendation list is more reasonable and meaningful. By combining the frequency of occurrence sorting and the depth in the tree sorting, the system can determine the final arrangement order of multiple services to be recommended. This sorting method comprehensively considers the popularity of services and their importance in the rules to provide a more prioritized and personalized recommendation order, thereby improving the user recommendation experience and user satisfaction.

[0113] In a specific application scenario, when a smartphone detects service usage (e.g., setting an alarm), it asks the user why they used the service (e.g., going to sleep), identifies the current context (e.g., midnight, in the dormitory, altitude 10m, etc.), and uses a large language model (GPT3.5-turbo) to understand the semantically interpreted information. The system then displays a list of relevant contexts to the user (the top of the list shows the current context related to the user's reason, obtained from the large language model). The user selects a relevant context (e.g., midnight, in the dormitory), and the system uses this selection to construct rules. Subsequently, it recommends services based on these rules and the current context information. In essence, by utilizing the user's expressed reason for using the service, combined with contextual information processed by the large model, rules can be generated locally at low cost. This allows the recommendation system to achieve high coverage while enhancing interpretability, cost-effectiveness, personalization, and controllability.

[0114] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0115] Based on the same inventive concept, this application also provides a service recommendation apparatus for implementing the service recommendation method described above. The solution provided by this apparatus is similar to the implementation scheme described in the above method; therefore, the specific limitations in one or more service recommendation apparatus embodiments provided below can be found in the limitations of the service recommendation method described above, and will not be repeated here.

[0116] In one embodiment, such as Figure 8 As shown, a service recommendation device 30 is provided, comprising:

[0117] The card display module 302 is used to display a rule extraction prompt card for the target service when a target service is detected running on the terminal; wherein, the rule extraction prompt card is used to prompt the user account to enter a contextual reason corresponding to the target service;

[0118] Context conversion module 304 is used to receive context reasons input by the user account and convert the context reasons into candidate context attributes;

[0119] The scenario selection module 306 is used to display the options generated from the candidate scenario attributes and to receive the target scenario attribute selected by the user account for the options.

[0120] Rule building module 308 is used to build context service causal rules based on target context attributes and target services;

[0121] The service determination module 310 is used to determine the service to be recommended based on the contextual information collected during terminal operation and the matching results of contextual service causal rules.

[0122] In the aforementioned service recommendation device, when a target service is detected running on the terminal, a rule extraction prompt card for the target service is displayed to collect the contextual reasons input by the user corresponding to the target service. These reasons are then converted into candidate contextual attributes and related options are displayed, allowing the user to modify or confirm to obtain a more accurate target contextual attribute. This allows for the construction of contextual service causal rules based on the user's personalized needs and choices. In subsequent service recommendations, personalized service recommendations can be achieved based on these contextual service causal rules.

[0123] In one embodiment, the card display module 302 is specifically used to obtain the historical context reasons corresponding to the target service; display a rule extraction prompt card for the target service; wherein, the rule extraction prompt card includes optional options generated from the historical context reasons and a context reason input box; the optional options are used to instruct the user account to check the context reasons, and the context reason input box is used to instruct the user account to fill in the context reasons.

[0124] In one embodiment, the service determination module 310 is specifically used to collect context information during terminal operation; match the context information with the target context attributes in the context service causal rules; and determine the target service associated with the successfully matched target context attributes as the service to be recommended.

[0125] It should be noted that the service recommendation device provided in the above embodiments is only illustrated by the division of the above functional modules when implementing the corresponding functions. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the service recommendation device and the service recommendation method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.

[0126] According to one aspect of this application, embodiments of the present invention also provide a computer program product comprising a computer program containing program code for performing the methods shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network via a communication component. When the computer program is executed by a processor, the service recommendation method provided in embodiments of this application is performed.

[0127] Furthermore, embodiments of the present invention also provide a computer device, which includes a processor and a memory. The memory stores a computer program, and the processor is capable of executing the computer program stored in the memory. When the computer program is executed by the processor, it can implement the service recommendation method provided in any of the above embodiments.

[0128] For example, Figure 9 An embodiment of the present invention provides a computer device, which includes a bus 1110, a processor 1120, a transceiver 1130, a bus interface 1140, a memory 1150, and a user interface 1160.

[0129] In this embodiment of the invention, the device further includes a computer program stored in a memory 1150 and executable on a processor 1120, which, when executed by the processor 1120, implements the various processes of the above-described service recommendation method embodiment.

[0130] Transceiver 1130 is used to receive and send data under the control of processor 1120.

[0131] In this embodiment of the invention, a bus architecture (represented by bus 1110) is used. Bus 1110 may include any number of interconnected buses and bridges. Bus 1110 connects various circuits, including one or more processors represented by processor 1120 and memory represented by memory 1150.

[0132] Bus 1110 represents one or more of several types of bus architectures, including memory buses and memory controllers, peripheral buses, Accelerated Graphics Port (AGP), processors, or local buses using any bus architecture from various bus architectures. As an example and not a limitation, such architectures include: Industry Standard Architecture (ISA) buses, Micro Channel Architecture (MCA) buses, Enhanced ISA (EISA) buses, Video Electronics Standards Association (VESA) buses, and Peripheral Component Interconnect (PCI) buses.

[0133] The processor 1120 can be an integrated circuit chip with signal processing capabilities. In implementation, the steps of the above method embodiments can be completed by integrated logic circuits in the processor hardware or by instructions in software form. The processors mentioned above include: general-purpose processors, central processing units (CPUs), network processors (NPs), digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), complex programmable logic devices (CPLDs), programmable logic arrays (PLAs), microcontroller units (MCUs) or other programmable logic devices, discrete gates, transistor logic devices, and discrete hardware components. They can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this invention. For example, the processor can be a single-core processor or a multi-core processor, and the processor can be integrated on a single chip or located on multiple different chips.

[0134] Processor 1120 can be a microprocessor or any conventional processor. The method steps disclosed in the embodiments of the present invention can be directly executed by a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules can reside in readable storage media known in the art, such as Random Access Memory (RAM), Flash Memory, Read-Only Memory (ROM), Programmable Read-Only Memory (PROM), Erasable Programmable Read-Only Memory (EPROM), registers, etc. The readable storage medium is located in the memory, and the processor reads the information in the memory and, in conjunction with its hardware, completes the steps of the above method.

[0135] Bus 1110 can also connect various other circuits, such as peripheral devices, voltage regulators, or power management circuits. Bus interface 1140 provides an interface between bus 1110 and transceiver 1130, all of which are well known in the art. Therefore, embodiments of the present invention will not be described further.

[0136] Transceiver 1130 can be a single element or multiple elements, such as multiple receivers and transmitters, providing a unit for communicating with various other devices over a transmission medium. For example, transceiver 1130 receives external data from other devices, and transceiver 1130 is used to send data processed by processor 1120 to other devices. Depending on the nature of the computer system, a user interface 1160 may also be provided, such as a touchscreen, physical keyboard, monitor, mouse, speaker, microphone, trackball, joystick, or stylus.

[0137] It should be understood that, in embodiments of the present invention, memory 1150 may further include memory remotely configured relative to processor 1120, and such remotely configured memory can be connected to a server via a network. One or more portions of the aforementioned network may be an ad hoc network, intranet, extranet, virtual private network (VPN), local area network (LAN), wireless local area network (WLAN), wide area network (WAN), wireless wide area network (WWAN), metropolitan area network (MAN), Internet, public switched telephone network (PSTN), ordinary old-style telephone service (POTS), cellular telephone network, wireless network, Wi-Fi network, and combinations of two or more of the aforementioned networks. For example, cellular telephone networks and wireless networks can be Global System for Mobile Communications (GSM), Code Division Multiple Access (CDMA), WiMAX, General Packet Radio Service (GPRS), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (LTE), LTE Frequency Division Duplex (FDD), LTE Time Division Duplex (TDD), Advanced Long Term Evolution (LTE-A), Universal Mobile Telecommunications System (UMTS), Enhanced Mobile Broadband (eMBB), Massive Machine Type Communication (mMTC), Ultra Reliable Low Latency Communications (uRLLC), etc.

[0138] It should be understood that the memory 1150 in the embodiments of the present invention may be volatile memory or non-volatile memory, or may include both volatile memory and non-volatile memory. Non-volatile memory includes: read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory.

[0139] Volatile memory includes random access memory (RAM), which serves as an external cache. By way of example, but not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct memory bus RAM (DRRAM). The memory 1150 described in this embodiment includes, but is not limited to, the above and any other suitable types of memory.

[0140] In this embodiment of the invention, the memory 1150 stores the following elements of the operating system 1151 and the application 1152: executable modules, data structures, or subsets thereof, or extended sets thereof.

[0141] Specifically, the operating system 1151 includes various system programs, such as a framework layer, a core library layer, and a driver layer, used to implement various basic business functions and handle hardware-based tasks. The application program 1152 includes various applications, such as a media player and a browser, used to implement various application functions. Programs implementing the methods of this embodiment of the invention can be included in the application program 1152. The application program 1152 includes applets, objects, components, logic, data structures, and other computer system executable instructions that perform specific tasks or implement specific abstract data types.

[0142] Furthermore, embodiments of the present invention also provide a computer-readable storage medium storing a computer program thereon. When the computer program is executed by a processor, it implements the various processes of the above-described service recommendation method embodiments and achieves the same technical effect. To avoid repetition, it will not be described again here.

[0143] Computer-readable storage media include: permanent and non-permanent, removable and non-removable media, which are tangible devices capable of retaining and storing instructions for use by an instruction execution device. Computer-readable storage media include: electronic storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, and any suitable combination thereof. Computer-readable storage media include: phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), non-volatile random access memory (NVRAM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, optical disc read-only memory (CD-ROM), digital versatile optical disc (DVD) or other optical storage, magnetic tape storage, magnetic disk storage or other magnetic storage devices, memory sticks, mechanical encoding devices (e.g., punched cards or raised structures in grooves on which instructions are recorded), or any other non-transfer medium that can be used to store information accessible by a computing device. As defined in the embodiments of the present invention, computer-readable storage media do not include temporary signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses passing through fiber optic cables), or electrical signals transmitted through wires.

[0144] In the several embodiments provided in this application, it should be understood that the disclosed apparatus, devices, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, or it may be an electrical, mechanical, or other form of connection.

[0145] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to solve the problems addressed by the embodiments of the present invention, depending on actual needs.

[0146] Furthermore, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0147] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiments of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (including: a personal computer, a server, a data center, or other network device) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media listed above that can store program code.

[0148] In the description of the embodiments of the present invention, those skilled in the art should understand that the embodiments of the present invention can be implemented as methods, apparatuses, devices, and storage media. Therefore, the embodiments of the present invention can be specifically implemented in the following forms: entirely hardware, entirely software (including firmware, resident software, microcode, etc.), or a combination of hardware and software. Furthermore, in some embodiments, the embodiments of the present invention can also be implemented as a computer program product in one or more computer-readable storage media, the computer-readable storage media containing computer program code.

[0149] The aforementioned computer-readable storage medium may be any combination of one or more computer-readable storage media. Computer-readable storage media include: electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any combination thereof. More specific examples of computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, optical fiber, optical disc read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any combination thereof. In embodiments of the present invention, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.

[0150] The computer program code contained in the aforementioned computer-readable storage medium may be transmitted using any suitable medium, including wireless, wire, optical fiber, radio frequency (RF), or any suitable combination thereof.

[0151] Computer program code for performing the operations of the embodiments of the present invention can be written in assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, status setting data, integrated circuit configuration data, or in one or more programming languages ​​or combinations thereof. The programming languages ​​include object-oriented programming languages ​​such as Java, Smalltalk, and C++, as well as conventional procedural programming languages ​​such as C or similar languages. The computer program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer or an external computer via any type of network, including a local area network (LAN) or a wide area network (WAN).

[0152] The embodiments of the present invention describe the provided methods, apparatus, and devices through flowcharts and / or block diagrams.

[0153] It should be understood that each block of a flowchart and / or block diagram, as well as combinations of blocks in a flowchart and / or block diagram, can be implemented by computer-readable program instructions. These computer-readable program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine that, when executed by a computer or other programmable data processing apparatus, creates means for implementing the functions / operations specified in the blocks of the flowchart and / or block diagram.

[0154] These computer-readable program instructions may also be stored in a computer-readable storage medium that enables a computer or other programmable data processing device to function in a particular manner. In this way, the instructions stored in the computer-readable storage medium produce an instruction apparatus product that includes the functions / operations specified in the blocks of a flowchart and / or block diagram.

[0155] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus or other device to produce a computer-implemented process, such that the instructions that execute on the computer or other programmable data processing apparatus provide a process for implementing the functions / operations specified in the blocks of the flowchart and / or block diagram.

[0156] The above description is merely a specific implementation of the embodiments of the present invention, but the protection scope of the embodiments of the present invention is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in the embodiments of the present invention should be included within the protection scope of the embodiments of the present invention. Therefore, the protection scope of the embodiments of the present invention should be determined by the protection scope of the claims.

Claims

1. A service recommendation method, characterized in that, include: When a target service is detected running on the terminal, a rule extraction prompt card for the target service is displayed; wherein, the rule extraction prompt card is used to prompt the user account to input a contextual reason corresponding to the target service; Receive the contextual reason input by the user account and convert the contextual reason into a candidate contextual attribute; Display the options generated from the candidate context attributes, and receive the target context attribute selected by the user account for the options; Based on the target context attributes and the target service, construct context service causal rules; Based on the contextual information collected during the operation of the terminal and the matching results of the contextual service causal rules, the service to be recommended is determined; The method further includes: Accessibility services are used to obtain page accessibility information and actual operation sequences during the operation of the terminal. Extract page keywords from the accessibility information of the page, and match the page keywords with pre-stored reference keywords to determine the successfully matched reference keywords; The actual page sequence is determined based on the pages associated with the successfully matched reference keywords; The target service is determined based on the similarity between the actual operation sequence, the actual page sequence, the pre-stored reference operation sequence, and the reference page sequence.

2. The method according to claim 1, characterized in that, The display of rule extraction prompt cards for the target service includes: Obtain the historical context reasons corresponding to the target service; Display a rule extraction prompt card for the target service; wherein, the rule extraction prompt card includes optional options generated from the historical context reasons and a context reason input box; the optional options are used to instruct the user account to check the context reason, and the context reason input box is used to instruct the user account to fill in the context reason.

3. The method according to claim 1, characterized in that, The context service causal rules are stored in a tree structure. The target context attributes and the target service are stored in the nodes of the tree structure. The context service causal rules are represented by the path from the root node to the node storing the target service in the tree structure.

4. The method according to claim 3, characterized in that, The services to be recommended are multiple; the method further includes: Obtain the frequency of occurrence of each of the multiple services to be recommended; The initial order of the multiple services to be recommended is determined according to their frequency of occurrence, from highest to lowest. In the initial arrangement order, if the frequency of occurrence of the services to be recommended is the same, then the depth in the tree corresponding to the services with the same frequency of occurrence is obtained; wherein, the depth in the tree is the depth of the service to be recommended in the tree structure; Based on the depth of the tree, the order of the services to be recommended corresponding to the same frequency of occurrence is determined in descending order, and the final order of the multiple services to be recommended is determined. The terminal displays the multiple services to be recommended in the final sorted order.

5. The method according to claim 1, characterized in that, The similarity is the edit distance; The step of determining the target service based on the similarity between the actual operation sequence, the actual page sequence, the pre-stored reference operation sequence, and the reference page sequence includes: Calculate the edit distance between the actual operation sequence, the actual page sequence, the pre-stored reference operation sequence, and the reference page sequence; The service corresponding to the reference operation sequence and reference page sequence with the shortest edit distance is determined as the target service.

6. The method according to claim 1, characterized in that, The step of determining the service to be recommended based on the contextual information collected during the operation of the terminal and the matching result of the contextual service causal rules includes: Collect contextual information during the operation of the terminal; The context information is matched with the target context attributes in the context service causal rules; The target service associated with the successfully matched target context attributes is identified as the service to be recommended.

7. A service recommendation device, characterized in that, include: The card display module is used to display a rule extraction prompt card for the target service when a target service is detected running on the terminal; wherein, the rule extraction prompt card is used to prompt the user account to input a contextual reason corresponding to the target service; The context conversion module is used to receive the context reasons input by the user account and convert the context reasons into candidate context attributes; The scenario selection module is used to display the options generated by the candidate scenario attributes and to receive the target scenario attribute selected by the user account for the options. The rule building module is used to build context service causal rules based on the target context attributes and the target service; The service determination module is used to determine the service to be recommended based on the contextual information collected during the operation of the terminal and the matching result of the contextual service causal rules; The service recommendation device is also used to obtain page accessibility information and actual operation sequence during the operation of the terminal through accessibility services; Extract page keywords from the accessibility information of the page, and match the page keywords with pre-stored reference keywords to determine the successfully matched reference keywords; The actual page sequence is determined based on the pages associated with the successfully matched reference keywords; The target service is determined based on the similarity between the actual operation sequence, the actual page sequence, the pre-stored reference operation sequence, and the reference page sequence.

8. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 6.

9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Service resource selection and recommendation method and device, electronic equipment and storage medium

    CN116304328A