Method and apparatus for generating application based on self-adaption, electronic device and storage medium
By acquiring the preferences of the target audience and target group, calculating the importance of application modules and business modules, and selecting the most suitable alternative applications to showcase the target business, this solves the problem of multiple modifications caused by unclear requirements in enterprise application system development, and achieves efficient and low-cost adaptive application generation.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA TELECOM CORP LTD
- Filing Date
- 2022-12-08
- Publication Date
- 2026-05-19
AI Technical Summary
In the early stages of enterprise application system development, unclear customer needs often lead to multiple modifications during the development process, consuming a lot of human, material, and financial resources, and ultimately resulting in low customer satisfaction.
By acquiring the preferences of the target audience and target groups, multiple candidate applications and target business sets are identified. The importance of each application module and business module is calculated. The candidate application with the lowest deviation value is selected as the recommended application, and the target business is displayed in its corresponding module to generate an adaptive target application.
It reduces the application development cycle and cost, and the generated target applications are more in line with the needs of the target audience and target groups, thus improving the generation efficiency and satisfaction.
Smart Images

Figure CN116301728B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to methods and apparatuses, electronic devices and storage media based on adaptive generation applications. Background Technology
[0002] With the rapid development of information technology, especially the widespread application of internet technology, governments and enterprises are increasingly conducting business online. Taking enterprises as an example, in the early stages of their development, their needs for application systems are often unclear, and the human, material, and financial resources consumed in customizing applications to handle business are substantial.
[0003] It should be noted that the information disclosed in the background section above is only used to enhance the understanding of the background of this disclosure, and therefore may include information that does not constitute prior art known to those skilled in the art. Summary of the Invention
[0004] In view of the above problems, this application is made to provide a method, apparatus, electronic device, and storage medium for adaptive generation applications that overcome or at least partially solve the above problems, including:
[0005] A method for adaptively generating applications, the method comprising:
[0006] Multiple candidate applications and a set of target services are obtained. The candidate applications are obtained by processing applications preferred by the target object and applications preferred by the target group, and each candidate application contains multiple application modules. The set of target services includes multiple target services, which are obtained by processing services preferred by the target object and services preferred by the target group.
[0007] For each of the candidate applications, an application module value is determined based on the display position and display area of each application module; the application module value is used to indicate the importance of the corresponding application module.
[0008] Based on the preset module positions and preset module sizes of each target service, the corresponding service module value is determined; the service module value is used to indicate the importance of the corresponding target service.
[0009] Based on the application module values of each application module in the candidate applications and the business module values of each target service in the target service set, the deviation value between the candidate applications and the target service set is determined, and the candidate application with the lowest deviation value is determined as the recommended application.
[0010] The target services in the target service set are displayed in the application module corresponding to the recommended application to generate the target application.
[0011] Optionally, determining the deviation value between the candidate application and the target service set based on the application module values of each application module in the candidate application and the service module values of each target service in the target service set includes:
[0012] The application modules in the candidate applications are sorted in descending order of their application module values, and the target services in the target service set are sorted in descending order of their service module values.
[0013] The deviation value between the candidate application and the target service set is calculated according to the deviation value calculation formula, which is as follows:
[0014]
[0015] Where S represents the deviation value, w i q represents the application module value of the i-th application module after sorting. i This represents the business module value of the i-th target business after sorting, and k represents the number of target businesses in the target business set.
[0016] Optionally, displaying each target service in the target service set in the application module corresponding to the recommended application to generate the target application includes:
[0017] The application modules in the recommended applications are sorted in descending order of their application module values, and the target services in the target service set are sorted in descending order of their service module values.
[0018] Based on the sorted application modules and target services, the target service is displayed in the application module with the same sequence number to generate the target application.
[0019] Optionally, determining the application module value for each of the candidate applications based on the display position and display area of each application module includes:
[0020] For each of the candidate applications, a first position value and position weight are determined based on the display position of each application module, and a first area value and area weight are determined based on the display area of each application module.
[0021] The application module value of each application module is determined based on the first position value and position weight of each application module, as well as the first area value and area weight.
[0022] Optionally, determining the service module value corresponding to each target service based on the preset module position and preset module size of each target service includes:
[0023] The second position value and position weight are determined according to the preset module position of each target service, and the second area value and area weight are determined according to the preset module size of each target service.
[0024] The business module value of each target service is determined based on the second location value and location weight, as well as the second area value and area weight.
[0025] Optionally, obtaining multiple alternative applications includes:
[0026] The application preferences of the target object are obtained to form an application set, which is used to store the applications preferred by the target object.
[0027] The application preferences of each user in the target group are obtained to obtain a user application set for each user preference; the user application set is used to store the application preferences of the corresponding user.
[0028] Based on the object application set of the target object and the user application set of each user in the target group, a similarity analysis is performed between each user in the target group and the target object, and users whose similarity meets the first preset condition are determined as the first candidate users;
[0029] The candidate applications are determined based on the user application set of the first candidate user.
[0030] Optionally, determining the candidate application based on the user application set of the first candidate user further includes:
[0031] Applications that are identical to those in the user application set of the first candidate user and the object application set are removed to obtain candidate applications.
[0032] Optionally, the step of performing similarity analysis between each user in the target group and the target object based on the object application set of the target object and the user application set of each user in the target group, and determining users whose similarity meets a first preset condition as first candidate users, includes:
[0033] Based on the user application set of each user in the target group, a similarity analysis is performed on the users in the target group, and users whose similarity meets the initial preset conditions are stored in the corresponding first user group;
[0034] Based on the user application set of each user in the first user group and the object application set of the target object, a similarity analysis is performed on each user in the first user group and the target object, and users whose similarity meets the first preset condition are determined as the first candidate users.
[0035] Optionally, the application for obtaining the preferences of each user in the target group includes:
[0036] Obtain historical user behavior data for each user in the target group;
[0037] Applications that determine user preferences based on the user's historical behavior data.
[0038] Optionally, the object application for obtaining the target object's preferences includes:
[0039] Obtain historical behavior data of the target object;
[0040] The application of the target object's preferences is determined based on the object's historical behavior data.
[0041] Optionally, obtaining the target service set includes:
[0042] The target object's preferred services are obtained, resulting in an object service set, which is used to store the target object's preferred services.
[0043] The preferred services of each user in the target group are obtained, resulting in a user service set for each user's preferences; the user service set is used to store the services corresponding to the user's preferences.
[0044] Based on the object business set of the target object and the user business set of each user in the target group, a similarity analysis is performed on each user in the target group and the target object, and users whose similarity meets the second preset condition are determined as the second candidate users.
[0045] Multiple target services are determined based on the user service sets of multiple second candidate users, and the target services are stored in the target service set.
[0046] Optionally, determining multiple target services based on the user service sets of multiple second candidate users includes:
[0047] Multiple alternative services are determined based on the user service sets of multiple second alternative users;
[0048] A correlation analysis is performed on multiple candidate services, and the target service is obtained by merging the multiple interrelated candidate services.
[0049] Optionally, the step of performing a similarity analysis between each user in the target group and the target object based on the object service set of the target object and the user service set of each user in the target group, and determining users whose similarity meets the second preset condition as second candidate users, includes:
[0050] Based on the user business set of each user in the target group, perform similarity analysis on the users in the target group, and store users whose similarity meets the pre-set conditions into the corresponding second user group;
[0051] Based on the user service set of each user in the second user group and the object service set of the target object, a similarity analysis is performed on each user in the second user group and the target object, and users whose similarity meets the second preset condition are determined as the second candidate users.
[0052] Optionally, the service of obtaining the preferences of each user in the target group includes:
[0053] Obtain historical user behavior data for each user in the target group;
[0054] The business of determining user preferences based on the user's historical behavior data.
[0055] Optionally, the process of obtaining the target object's preferences includes:
[0056] Obtain historical behavior data of the target object;
[0057] The business of determining the target object's preferences based on the object's historical behavior data.
[0058] An apparatus for adaptive generation applications, the apparatus comprising:
[0059] The first acquisition module is used to acquire multiple candidate applications and a target service set. The candidate applications are obtained by processing applications preferred by the target object and applications preferred by the target group. Each candidate application contains multiple application modules. The target service set includes multiple target services. The target services are obtained by processing services preferred by the target object and services preferred by the target group.
[0060] The first determining module is used to determine the application module value of each of the candidate applications based on the display position and display area of each application module; the application module value is used to indicate the importance of the corresponding application module.
[0061] The second determining module is used to determine the business module value corresponding to each of the target services based on the preset module position and preset module size of each target service; the business module value is used to indicate the importance of the corresponding target service.
[0062] The recommended application determination module is used to determine the deviation value between the candidate application and the target service set based on the application module value of each application module in the candidate application and the service module value of each target service in the target service set, and determine the candidate application with the lowest deviation value as the recommended application.
[0063] The target application generation module is used to display the target services in the target service set in the application module corresponding to the recommended application to generate the target application.
[0064] Optionally, the recommended application determination module includes:
[0065] The first sorting submodule is used to sort the application modules in the candidate applications in descending order of application module value, and to sort the target services in the target service set in descending order of service module value.
[0066] The deviation value calculation submodule is used to calculate the deviation value between the candidate application and the target service set according to the deviation value calculation formula, which is as follows:
[0067]
[0068] Where S represents the deviation value, w i q represents the application module value of the i-th application module after sorting. i This represents the business module value of the i-th target business after sorting, and k represents the number of target businesses in the target business set.
[0069] Optionally, the target application generation module includes:
[0070] The second sorting submodule is used to sort the application modules in the recommended application in descending order of application module value, and to sort the target services in the target service set in descending order of service module value.
[0071] The application generation submodule is used to generate the target application by displaying the target service in the application module with the same sequence number according to the sorted application modules and the target service.
[0072] Optionally, the first determining module includes:
[0073] The first determining submodule is used to determine, for each candidate application, a corresponding first position value and position weight based on the display position of each application module, and a corresponding first area value and area weight based on the display area of each application module.
[0074] The application module value calculation submodule is used to determine the application module value of each application module based on the first position value and position weight of each application module, as well as the first area value and area weight.
[0075] Optionally, the second determining module includes:
[0076] The second determining submodule is used to determine the corresponding second position value and position weight according to the preset module position of each of the target services, and to determine the corresponding second area value and area weight according to the preset module size of each of the target services.
[0077] The business module value calculation submodule is used to determine the business module value of each target business based on the second position value and position weight, as well as the second area value and area weight of each target business.
[0078] Optionally, the first acquisition module includes:
[0079] The object application acquisition submodule is used to acquire the applications preferred by the target object and obtain an object application set, which is used to store the applications preferred by the target object.
[0080] The user application acquisition submodule is used to acquire the applications preferred by each user in the target group, and obtain the user application set of each user's preferences; the user application set is used to store the applications corresponding to the user's preferences.
[0081] The first similarity analysis submodule is used to perform similarity analysis between each user in the target group and the target object based on the object application set of the target object and the user application set of each user in the target group, and determine the user whose similarity meets the first preset condition as the first candidate user;
[0082] The candidate application determination submodule is used to determine candidate applications based on the user application set of the first candidate user.
[0083] Optionally, the candidate application determination submodule is further configured to remove applications that are the same as those in the user application set of the first candidate user and the object application set to obtain candidate applications.
[0084] Optionally, the first similarity analysis submodule includes:
[0085] The first user group determination unit is used to perform similarity analysis on the users in the target group based on the user application set of each user in the target group, and store the users whose similarity meets the initial preset conditions into the corresponding first user group.
[0086] The first candidate user determination unit is used to perform similarity analysis between each user in the first user group and the target object based on the user application set of each user in the first user group and the object application set of the target object, and determine the user whose similarity meets the first preset condition as the first candidate user.
[0087] Optionally, the user application acquisition submodule includes:
[0088] The first historical data acquisition unit is used to acquire the user historical behavior data of each user in the target group.
[0089] The user preference application determination unit is used to determine the user's preferred application based on the user's historical behavior data.
[0090] Optionally, the object application acquisition submodule includes:
[0091] The second historical data acquisition unit is used to acquire the historical behavior data of the target object.
[0092] An object preference application determination unit is used to determine the application of the target object preference based on the object's historical behavior data.
[0093] Optionally, the first determining module includes:
[0094] The object service acquisition submodule is used to acquire the services preferred by the target object and obtain an object service set, which is used to store the services preferred by the target object.
[0095] The user service acquisition submodule is used to acquire the services preferred by each user in the target group, and obtain the user service set for each user's preferences; the user service set is used to store the services corresponding to the user's preferences.
[0096] The second similarity analysis submodule is used to perform similarity analysis between each user in the target group and the target object based on the object business set of the target object and the user business set of each user in the target group, and determine the users whose similarity meets the second preset condition as the second candidate users.
[0097] The target service determination submodule is used to determine multiple target services based on the user service sets of multiple second candidate users, and store the target services into a target service set.
[0098] Optionally, the target service determination submodule further includes:
[0099] The alternative service determination unit is used to determine multiple alternative services based on the user service sets of multiple second alternative users;
[0100] The associated business merging unit is used to perform correlation analysis on multiple candidate businesses, merge the multiple interrelated candidate businesses, and obtain the target business.
[0101] Optionally, the second similarity analysis submodule includes:
[0102] The second user group determination unit is used to perform similarity analysis on users in the target group based on the user service set of each user in the target group, and store users whose similarity meets the pre-preset conditions into the corresponding second user group.
[0103] The second candidate user determination unit is used to perform similarity analysis between each user in the second user group and the target object based on the user service set of each user in the second user group and the object service set of the target object, and determine the users whose similarity meets the second preset condition as the second candidate users.
[0104] Optionally, the user service acquisition submodule includes:
[0105] The third historical data acquisition unit is used to acquire the historical behavior data of each user in the target group.
[0106] The user preference service determination unit is used to determine the user preference service based on the user's historical behavior data.
[0107] Optionally, the object service acquisition submodule includes:
[0108] The fourth historical data acquisition unit is used to acquire the historical behavior data of the target object;
[0109] The object preference service determination unit is used to determine the target object preference service based on the object's historical behavior data.
[0110] An electronic device includes a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein the computer program, when executed by the processor, implements the steps of the method for adaptively generating applications as described above.
[0111] A computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the method for adaptively generating applications as described above.
[0112] This application has the following advantages:
[0113] In this embodiment, multiple candidate applications and a target service set are obtained. Each candidate application contains multiple application modules, and the application module value is determined based on the display position and display area of each module. The target service set includes multiple target services, and the service module value corresponding to each target service is determined based on the preset module position and preset module size. Then, based on the application module values of each application module in the candidate applications and the service module values of each target service in the target service set, a deviation value between the candidate applications and the target service set is determined. The lower the deviation value, the higher the fit. Therefore, the candidate application with the lowest deviation value is determined as the recommended application, and the target services in the target service set are displayed in the application modules corresponding to the recommended application, thus achieving adaptive generation of the target application. The target application generated through this embodiment can better meet the needs of the target object, reducing the manpower, material resources, and financial resources consumed by repeated modifications, thereby saving resources. Attached Figure Description
[0114] To more clearly illustrate the technical solution of this application, the drawings used in the description of this application will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0115] Figure 1 This is a schematic diagram illustrating the generation process used in existing technologies.
[0116] Figure 2 This is a flowchart illustrating the steps of a method for adaptive application generation according to an embodiment of this application;
[0117] Figure 3 This is a flowchart illustrating a method for adaptive application generation in an example of this application;
[0118] Figure 4 This is a flowchart illustrating the process of determining alternative applications in one example of this application;
[0119] Figure 5 This is a structural block diagram of an apparatus based on adaptive generation of applications according to an embodiment of this application. Detailed Implementation
[0120] To make the above-mentioned objectives, features, and advantages of this application more apparent and understandable, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. Obviously, the described embodiments are only some, not all, of the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without inventive effort are within the scope of protection of this application.
[0121] With the rapid development of information technology, especially the widespread application of internet technology, governments and enterprises are increasingly conducting business online. Among these efforts, government informatization has evolved into a systematic national e-government system, further promoting the modernization of the national governance system and capabilities.
[0122] With the innovative application of cutting-edge technologies such as artificial intelligence, 5G, big data, cloud computing, edge computing, blockchain, VR virtual technology, and biometric technology, my country's e-government operations are developing towards the direction of digital and intelligent government.
[0123] However, existing application generation processes, such as Figure 1 As shown, in the early stages of developing an application system, application designers need to communicate with clients about business needs and develop applications based on the communication results. Due to the client's unclear requirements, the client may request modifications after the application is developed. The application designers need to modify the application based on the modified requirements and then send the modified application back to the client for confirmation. Because the client's requirements are unclear, there will be multiple and repeated modifications before a satisfactory application can be generated. This consumes a lot of human, material, and financial resources and results in low satisfaction.
[0124] Therefore, embodiments of this application provide a method for adaptive application generation to reduce the application development cycle and the application development cost.
[0125] One of the main technical concepts of this application is to determine multiple candidate applications and target service sets based on the preferences of the target object and the target group; by calculating the fit between each candidate application and the target service set, the candidate application with the highest fit is determined as the recommended application; and then the target services in the target service set are displayed in the application module corresponding to the recommended application, thereby adaptively generating target applications so that the generated target applications can meet the needs of the target object and the target group, thereby improving the generation efficiency of target applications and reducing the cost of generating target applications.
[0126] Reference Figure 2 The diagram illustrates a flowchart of a method for adaptive application generation according to an embodiment of this application. In this embodiment, the method may include the following steps:
[0127] Step 201: Obtain multiple candidate applications and a set of target services. The candidate applications are obtained by processing applications preferred by the target object and applications preferred by the target group. Each candidate application contains multiple application modules. The set of target services contains multiple target services. The target services are obtained by processing services preferred by the target object and services preferred by the target group.
[0128] In this embodiment, the candidate applications are obtained by applying the preferences of the target object and the target group. The target object can be considered the owner of the target application to be generated, and the target group can be considered the service providers of the target application, i.e., the users of the target application. For example, the target group can be a group divided by age, gender, or occupation, etc. By applying the preferences of the target object and the target group to obtain candidate applications, the preferences of both the target object and the target group can be fully considered, making the layout of the final generated target application more in line with the needs of the target object.
[0129] The target services in the target service set are obtained by processing the services preferred by the target object and the target group. Therefore, the target service set can also fully consider the preferences of the target object and the target group, so that the business functions provided by the final target application are more in line with the needs of the target object.
[0130] Step 202: For each candidate application, determine the application module value of each application module based on the display position and display area of each application module; the application module value is used to indicate the importance of the corresponding application module.
[0131] An application can provide multiple functions, each corresponding to an application module. Within the application interface, each application module has a specific display location and area. Based on its display location and area, the application module value can be determined, representing the module's importance.
[0132] Step 203: Determine the business module value corresponding to each target service based on the preset module position and preset module size of each target service; the business module value is used to represent the importance of the corresponding target service.
[0133] After determining the target service set, the preset module positions and sizes for each target service within the set can be obtained. The preset module position indicates the display location of the corresponding target service within the target application interface, and the preset module size indicates the display area of the corresponding target service within the target application interface. Similar to determining the application module values, the service module values for the target services can be determined based on their preset module positions and sizes.
[0134] Step 204: Based on the application module values of each application module in the candidate applications and the business module values of each target service in the target service set, determine the deviation value between the candidate applications and the target service set, and determine the candidate application with the lowest deviation value as the recommended application.
[0135] Generally, the layout of application modules differs across applications. Even if different applications contain the same number of application modules, their layouts may vary. To select the most suitable application for showcasing the target business from multiple candidate applications, the fit between each candidate application and the target business set can be calculated to determine the recommended application. The fit can be represented by a deviation value; a lower deviation value indicates a higher fit, and vice versa.
[0136] Step 205: Display the target services in the target service set in the application module corresponding to the recommended application to generate the target application.
[0137] After identifying the recommended applications that best match the target business set, the target businesses from the target business set are displayed in the corresponding application modules of the recommended applications to generate the target application. Since the target application adopts the layout of the recommended applications, which are processed based on the application preferences of the target audience and target group, it ensures that the layout of the generated target application meets the requirements. Furthermore, since the application modules in the target application display the target businesses, which are processed based on the business preferences of the target audience and target group, it ensures that the functionality of the generated target application meets the requirements, achieving adaptive generation of target applications that meet the needs.
[0138] The method for adaptive application generation in this exemplary embodiment will now be further described.
[0139] In step 201, multiple candidate applications and a set of target services are obtained. The candidate applications are obtained by processing applications preferred by the target object and applications preferred by the target group. Each candidate application contains multiple application modules. The set of target services includes multiple target services, which are obtained by processing services preferred by the target object and services preferred by the target group.
[0140] In this embodiment of the application, the alternative applications are obtained based on the application preferences of the target object and the application preferences of the target group. Therefore, the preferences of the target object and the target group can be fully considered, so that the layout of the final generated target application is more in line with the needs of the target object.
[0141] In some embodiments of this application, the acquisition of multiple alternative applications described above may include:
[0142] The application preferences of the target object are obtained to form an application set, which is used to store the applications preferred by the target object.
[0143] The applications preferred by each user in the target group are obtained, resulting in a user application set for each user; the user application set is used to store the applications preferred by the corresponding user.
[0144] Based on the object application set of the target object and the user application set of each user in the target group, a similarity analysis is performed between each user in the target group and the target object, and users whose similarity meets the first preset condition are determined as the first candidate users;
[0145] The candidate applications are determined based on the user application set of the first candidate user.
[0146] In this embodiment, the alternative applications can be considered as applications preferred by a first alternative user who is similar to the target object. Since the first alternative user is similar to the target object, the applications preferred by the first alternative user are also highly likely to meet the target object's preference requirements, that is, the layout of the alternative applications meets the target object's preference requirements. The similarity analysis between each user in the target group and the target object can be found in the process of calculating the similarity between two users, which will not be repeated here.
[0147] In some optional embodiments of this application, the application of obtaining the target object's preferences can specifically be achieved by obtaining the target object's historical behavior data and determining the target object's preferences based on the historical behavior data.
[0148] The target object's historical behavior data may include browsing history, usage duration, comments, reviews, and other data. This embodiment determines the target object's preferred applications by starting with its completed behaviors, thus obtaining a set of target applications.
[0149] For example, applications with more than a preset number of views can be identified as preferred applications by the target user based on browsing history data. Alternatively, applications with a usage duration exceeding a preset usage duration can be identified as preferred applications by the target user based on usage duration data. Or, applications with positive reviews can be identified as preferred applications by the target user, and so on.
[0150] It should be noted that applications that obtain the preferences of the target audience can also do so through dialogue with the target audience or through questionnaires.
[0151] In some optional embodiments of this application, the application for obtaining the preferences of each user in the target group can specifically be obtained by acquiring the user historical behavior data of each user in the target group; and the application for determining user preferences based on the user historical behavior data.
[0152] In some optional embodiments of this application, the application preferred by the target group can be determined first based on the group's historical behavior data. The group's historical behavior data can be considered as a collection of the user's historical behavior data of all users in the target group. Then, based on the user's historical behavior data of each user, the application preferred by the user is determined, and the application preferred by the user belongs to the application preferred by the target group.
[0153] In some alternative embodiments of this application, the preferred applications of each user can be determined based on the user history behavior data of each user in the target group, and then the preferred applications of the target group can be obtained based on the preferred applications of all users in the target group.
[0154] User historical behavior data may include browsing history, usage time, comments, reviews, and other data. This embodiment determines the preferred applications of each user by starting with their completed behaviors within the target group, thus obtaining a user application set.
[0155] For example, applications viewed more than a preset number of times can be identified as preferred applications based on browsing history data. Alternatively, applications used for a duration exceeding a preset duration can be identified as preferred applications based on usage time data. Or, applications with positive reviews can be identified as preferred applications, and so on.
[0156] It should be noted that applications that obtain user preferences from individual users within the target group can also do so through dialogue with individual users within the target group, or through methods such as questionnaires.
[0157] Further, in some optional embodiments of this application, the above-mentioned similarity analysis of each user in the target group and the target object based on the object application set of the target object and the user application set of each user in the target group, and the determination of users whose similarity meets the first preset condition as the first candidate users, may include:
[0158] Based on the user application set of each user in the target group, a similarity analysis is performed on the users in the target group, and users whose similarity meets the initial preset conditions are stored in the corresponding first user group;
[0159] Based on the user application set of each user in the first user group and the object application set of the target object, a similarity analysis is performed on each user in the first user group and the target object, and users whose similarity meets the first preset condition are determined as the first candidate users.
[0160] In this embodiment, by performing similarity analysis on users in the target group based on user application sets, similar users are stored in the first user group, and then the first candidate user similar to the target object is selected from the first user group, so that the first candidate user can represent both the target object and the target group.
[0161] In one example, the target group's application set can be determined based on the individual user application sets of each user within the target group. This application set can be the union of all users' application sets. Then, similar users are identified based on each user's preference for all applications within the application set. Specifically, each user's preference for a particular application can be represented as a vector (x, y), and each user's preference for all applications within the application set can be represented as a vector X, where X consists of multiple (x, y) vectors. User similarity is determined by calculating the vector distance between every two users, using the following formula:
[0162]
[0163] Where distance represents vector distance, and X and Y represent vectors between different users, respectively. i Y i Let X and Y represent the components respectively, and N equal the number of applications contained in the application group. The closer the value is to 1, the more similar the two users are.
[0164] Considering that in the process of calculating the similarity between two users, the user's liking for applications they do not prefer is 0, that is, the liking for applications in the group application set that are not among the preferences of the two users is 0, in order to reduce the amount of computation, N in the above distance formula can be equal to the union of the preferred applications of the two users participating in the calculation of vector distance. The vector (x, y) represents the liking of each user for a specific application, and the vector X represents the liking of each user for all applications in the union of the preferred applications of the two users.
[0165] For example, user A prefers applications 1, 2, and 3, while user B prefers applications 1, 3, and 5. The union of the applications preferred by user A and user B is {application 1, application 2, application 3, application 5}. User A's preference for applications 1, 2, and 3 can be obtained by analyzing user A's historical behavior data; user A's preference for application 5 is 0. Similarly, user B's preference for applications 1, 3, and 5 can be obtained by analyzing user B's historical behavior data; user B's preference for application 2 is 0. Substituting these values into the vector distance formula above, the vector distance between user A and user B can be calculated. Based on the calculated vector distance, it can be determined whether user A and user B are similar.
[0166] After obtaining the first user group, a similarity analysis is performed between each user in the first user group and the target object based on their preferred applications. This analysis can identify first-line candidate users similar to the target object by comparing each user in the first user group's preference for all applications in the group's application set with the target object's preference for all applications in the group's application set. This similarity analysis process is similar to the process described above for similarity analysis of users within the target group, and will not be repeated here.
[0167] Furthermore, in some optional embodiments of this application, the above-mentioned determination of candidate applications based on the user application set of the first candidate user may further include:
[0168] Applications that are identical to those in the user application set of the first candidate user and the object application set are removed to obtain candidate applications.
[0169] In this embodiment, after determining the first candidate user, all applications in the user application set of the first candidate user can be obtained, that is, all applications preferred by the first candidate user. Considering that if the target user wants the layout of the generated target application to be the same as the layout of their preferred applications, they will explicitly provide their preferred applications so that the target application can be generated according to the layout of the provided applications. When the target user does not explicitly indicate that the target application should be generated according to the layout of their preferred applications, it is generally assumed that the target user does not want the layout of the generated target application to be exactly the same as the layout of their preferred applications. Therefore, in this embodiment, after obtaining the user application set of the first candidate user, it is necessary to exclude the layout of applications preferred by the target user. That is, if the applications preferred by the target user are included in all applications preferred by the first candidate user, the applications preferred by the target user are deleted, and the remaining applications that are different from the applications preferred by the target user are determined as candidate applications.
[0170] Furthermore, in some optional embodiments of this application, the above-mentioned determination of candidate applications based on the user application set of the first candidate user may further include:
[0171] Based on the target object's historical behavior data, obtain the apps that have received negative reviews for the target object;
[0172] If the user application set of the first candidate user includes the negatively rated application, then the negatively rated application is removed to obtain the candidate application.
[0173] This embodiment, by eliminating negatively reviewed applications, can further ensure that the candidate applications meet user requirements. In some embodiments of this application, obtaining the target service set in step 201 above may include:
[0174] The target object's preferred services are obtained, resulting in an object service set, which is used to store the target object's preferred services.
[0175] The preferred services of each user in the target group are obtained, resulting in a user service set for each user; the user service set is used to store the services corresponding to the user's preferences.
[0176] Based on the object business set of the target object and the user business set of each user in the target group, a similarity analysis is performed on each user in the target group and the target object, and users whose similarity meets the second preset condition are determined as the second candidate users.
[0177] Multiple target services are determined based on the user service sets of multiple second candidate users, and the target services are stored in the target service set.
[0178] In this embodiment, the target service can be considered as the service preferred by a second candidate user similar to the target object. Since the second candidate user is similar to the target object, the service preferred by the second candidate user is highly likely to also meet the target object's preference requirements, that is, the target service meets the target object's functional requirements for the target application. The similarity analysis between each user in the target group and the target object is similar to the process of calculating the similarity between two users, except that the application is replaced by a service. Specifically, vector (x, y) represents each user's preference for a specific service, and vector X represents each user's preference for all services in the group's service set. Alternatively, vector X can represent the union of the preferred services of the two users participating in the vector distance calculation. The group service set is obtained based on the user service sets of each user in the target group, and the group service set can be the union of the user service sets of all users.
[0179] In some optional embodiments of this application, the service of obtaining the target object's preferences can be specifically achieved by obtaining the target object's historical behavior data and determining the target object's preferences based on the historical behavior data.
[0180] The target object's historical behavior data may include browsing history, usage duration, comments, reviews, and other data. This embodiment determines the target object's preferred services by starting with its completed behaviors, thus obtaining a set of target service preferences.
[0181] For example, services corresponding to applications with more than a preset number of views can be identified as preferred services by the target audience based on browsing history data. Alternatively, services corresponding to applications with a usage duration exceeding a preset usage duration can be identified as preferred services by the target audience based on usage duration data. Or, services corresponding to positive reviews can be identified as preferred services by the target audience.
[0182] It should be noted that the business preferences of the target audience can also be obtained through dialogue with them or through surveys. The business preferences of the target audience can be considered as the business functions they hope the target application will possess.
[0183] In some optional embodiments of this application, the service of obtaining the preferences of each user in the target group can be specifically achieved by obtaining the user's historical behavior data of each user in the target group and determining the user's preferences based on the user's historical behavior data.
[0184] In some optional embodiments of this application, the services preferred by the target group can be determined first based on the group's historical behavior data. The group's historical behavior data can be considered as a collection of the user's historical behavior data of all users in the target group. Then, based on the user's historical behavior data of each user, the user's preferred services are determined, and the user's preferred services belong to the services preferred by the target group.
[0185] In some alternative embodiments of this application, the preferred services of each user can be determined based on the user history behavior data of each user in the target group, and then the preferred services of the target group can be obtained based on the preferred services of all users in the target group.
[0186] User historical behavior data may include browsing history, usage time, comments, reviews, and other data. This embodiment determines the preferred applications of each user by starting with their completed behaviors within the target group, thus obtaining a user application set.
[0187] For example, services corresponding to applications viewed more than a preset number of times can be identified as preferred services by the user based on browsing history data. Alternatively, services corresponding to applications used for a duration exceeding a preset duration can be identified as preferred services by using user history data on usage time. Or, services corresponding to positive reviews can be identified as preferred services by using user history data on ratings.
[0188] It should be noted that the business of obtaining the preferences of each user in the target group can also be done by engaging in dialogue with each user in the target group or by conducting surveys.
[0189] Furthermore, in some optional embodiments of this application, the above-mentioned similarity analysis of each user in the target group and the target object based on the object service set of the target object and the user service set of each user in the target group, and the determination of users whose similarity meets the second preset condition as second candidate users, may include:
[0190] Based on the user business set of each user in the target group, perform similarity analysis on the users in the target group, and store users whose similarity meets the pre-set conditions into the corresponding second user group;
[0191] Based on the user service set of each user in the second user group and the object service set of the target object, a similarity analysis is performed on each user in the second user group and the target object, and users whose similarity meets the second preset condition are determined as the second candidate users.
[0192] In this embodiment, by performing similarity analysis on users in the target group based on their user business sets, similar users are stored in a second user group. Then, a second candidate user similar to the target object is selected from the second user group, so that the second candidate user can represent both the target object and the target group.
[0193] In one example, the group service set of the target group can be determined based on the user service sets of each user in the target group. This group service set can be the union of the user service sets of all users. Similar users are then identified based on each user's preference for all services in the group service set. The specific calculation process can be found in the previous section on calculating the vector distance between two users, and will not be repeated here.
[0194] After obtaining the second user group, a similarity analysis is performed between each user in the second user group and the target user based on their preferred services. This analysis can be used to determine second candidate users similar to the target user by comparing each user in the second user group's preference for all services within the group's service set with the target user's preference for all services within the group's service set. This similarity analysis process is similar to the process described above for similarity analysis of users within the target application group, and will not be repeated here.
[0195] Furthermore, in some optional embodiments of this application, the above-mentioned determination of multiple target services based on the user service sets of multiple second candidate users may include:
[0196] Multiple alternative services are determined based on the user service sets of multiple second alternative users;
[0197] A correlation analysis is performed on multiple candidate services, and the target service is obtained by merging the multiple interrelated candidate services.
[0198] In this embodiment, after determining the second candidate user, all services in the user service set of the second candidate user can be obtained, i.e., all services preferred by the second candidate user. Then, a correlation analysis is performed on all services preferred by the second candidate user to identify related services. Multiple related services among the services preferred by the second candidate user are merged to obtain the target service. That is, for all services preferred by the second candidate user, if there are related services, they are merged to obtain the corresponding target service; if there are no related services, the existing service is identified as the target service.
[0199] In one example, the Apriori (association rule mining) algorithm can be used to statistically analyze the frequency of related services to obtain an association matrix for each service. The matrix points represent the number of times a user likes or processes that service, which can be obtained by analyzing historical user behavior data. A higher association between two services indicates that the two service processes need to be linked in the application.
[0200] For example, for any two services, the support between the two services can be calculated, and then the interaction between the two services can be calculated based on the support. The formula for calculating the support is as follows:
[0201] Support(a, b) = Number of times business a and b are processed simultaneously / Total number of processing times (Formula 2)
[0202] Here, Support represents the level of support, and the total number of processing times is equal to the sum of the number of processing times of 'a' and 'b'. The number of processing times of 'a' is greater than or equal to the number of processing times of the two business colleagues 'a' and 'b', and the number of processing times of 'b' is greater than or equal to the number of processing times of the two business colleagues 'a' and 'b'.
[0203] The formula for calculating the degree of action is as follows:
[0204] Life(a,b)=Support(a,b) / (Support(a)*Support(b)) Formula 3
[0205] Here, Life represents the degree of influence, and a and b represent different business functions. A degree of influence greater than 1 indicates a positive correlation, meaning the two business functions can be bundled and displayed on the page, that is, the two related business functions can be merged; a degree of influence less than 1 indicates a negative correlation, meaning the two business functions need to be displayed separately; a degree of influence equal to 1 indicates that they do not affect each other, and the two business functions should also be displayed separately.
[0206] In addition, to ensure the accuracy of the calculation results, a confidence level can be used to determine whether to merge two related business transactions. The formula for calculating the confidence level is as follows:
[0207] Confidence(a->b)=Support(a,b) / Support(a) Formula 4
[0208] Here, Confidence represents the confidence level, and a and b represent different business transactions. This confidence level indicates the credibility of the calculation results; the closer the confidence level is to 1, the higher the credibility of the association between the two business transactions.
[0209] In step 202, for each candidate application, the application module value of each application module is determined according to the display position and display area of each application module; the application module value is used to indicate the importance of the corresponding application module.
[0210] An application can provide multiple functions, each corresponding to an application module. Within the application interface, each module has a specific display position and area. Specifically, the application interface can be segmented according to its displayed modules to obtain the display position and area of each module. Different display positions correspond to different levels of importance. For example, the importance of a module in the center of the application interface is generally greater than that of one at the edge. That is, since people's attention is generally drawn to the center of the interface, relatively important (or more desirable) modules are often placed there. Conversely, the importance of an application module can be determined by its display position. The display position of an application module can be represented by the position of its center point, or by the distance between the center point of the module and the center point of the application interface.
[0211] For example, for each candidate application, the candidate application interface can be segmented according to the application modules it displays to obtain the display position of each application module. Based on the display position of each application module, the distance between each application module and the center point of the candidate application interface is determined. The multiple application modules in the candidate application are sorted in ascending order of distance. The positional importance of each application module, i.e., the first position value, is determined based on the sorting result. For example, if the candidate application interface displays 5 application modules, after sorting the application modules in ascending order of distance from the center point of the candidate application interface, the first position value of application module number 1 is 5, the first position value of application module number 2 is 4, the first position value of application module number 3 is 3, the first position value of application module number 4 is 2, and the first position value of application module number 5 is 1.
[0212] Similarly, different display areas correspond to different levels of importance. For example, people often occupy a relatively large display area in the application interface for relatively important (or more desired) application modules. Conversely, the size and importance of an application module can be determined based on its display area.
[0213] For example, for each candidate application, the application interface can be segmented according to the application modules it displays to obtain the display area of each application module. The application modules in the candidate applications are then sorted in descending order of display area. Based on the sorting result, the size importance of each application module is determined, i.e., the first area value. For example, if the candidate application interface displays 5 application modules, after sorting the application modules in descending order of their display area, the first area value of application module number 1 is 5, the first area value of application module number 2 is 4, the first area value of application module number 3 is 3, the first area value of application module number 4 is 2, and the first area value of application module number 5 is 1.
[0214] The application module value can be determined based on the positional and size importance of the application module. That is, the application module value, representing the importance of the application module, is determined according to its display position and display area. For example, the application module value can be equal to the sum of a first position value corresponding to the display position and a first area value corresponding to the display area.
[0215] In some optional embodiments of this application, determining the application module value of each application module based on its display position and display area may include:
[0216] The first position value and position weight are determined according to the display position of each application module, and the first area value and area weight are determined according to the display area of each application module.
[0217] The application module value of each application module is determined based on the first position value and position weight of each application module, as well as the first area value and area weight.
[0218] In this embodiment, during the process of determining the application module value of each application module, the first position value and the first area value are weighted according to position weight and area weight, respectively. The sum of the position weight and the area weight is equal to 1. Specifically, the application module value of an application module is equal to the product of its first position value and its position weight, plus the product of its first area value and its area weight. The corresponding calculation formula is as follows:
[0219] w i =mx i +ny i Formula 5
[0220] Among them, w iLet represent the application module value of the i-th application module, m represent the position weight, and n represent the area weight. The value of m is generally between (0.6, 0.7), and n = 1 - m. The inventors have empirically proven that a value of m lower than 0.6 or higher than 0.7 will cause an imbalance in the influence of either the importance of module position or the importance of module size, leading to inaccurate results. The specific value can be adjusted according to actual needs, generally depending on the overall application flow. For example, when the display position of an application module is relatively important and the display area of application modules is not significantly different, the main determining factor is the importance of module position; in this case, the value of m can be 0.7. If the module sizes differ significantly and their business importance is similar, the value of m can be 0.6. i The value representing the module importance of the i-th application module, i.e., the first position value; y i This represents the module size of the i-th application module, i.e., the first area value.
[0221] In step 203, the business module value corresponding to each target service is determined according to the preset module position and preset module size of each target service; the business module value is used to represent the importance of the corresponding target service.
[0222] After determining the target service set, the target service set can be displayed on the corresponding display screen, and the preset module position and preset module size can be received by the target object or application designer for each target service. Therefore, the preset module position and preset module size of each target service can be obtained, and then the service module value corresponding to each target service can be determined based on the preset module position and preset module size of each target service.
[0223] For example, the preset module position can be represented by the distance between the business module corresponding to the target business and the center point of the target application interface. Multiple target businesses are sorted in ascending order of their corresponding preset module positions. The importance of each target business's position, i.e., its second position value, is determined based on the sorting result. For instance, if there are 5 target businesses, after sorting them in ascending order of their distance from the center point of the target application interface, the second position value of target business number 1 is 5, the second position value of target business number 2 is 4, the second position value of target business number 3 is 3, the second position value of target business number 4 is 2, and the second position value of target business number 5 is 1.
[0224] For example, multiple target services can be sorted in descending order of their corresponding preset module sizes. The sorting result determines the size importance of each target service, i.e., the second area value. For instance, if there are 5 target services, after sorting them in descending order of their preset module sizes, the second area value of target service number 1 is 5, the second area value of target service number 2 is 4, the second area value of target service number 3 is 3, the second area value of target service number 4 is 2, and the second area value of target service number 5 is 1.
[0225] The business module value of a target business can be determined based on its locational and size importance. Specifically, it's determined by the target business's preset display location and preset display area, which represents its level of importance. For example, the business module value can be equal to the sum of a second position value corresponding to the preset module location and a second area value corresponding to the preset module size.
[0226] In some optional embodiments of this application, determining the service module value corresponding to each target service based on the preset module position and preset module size of each target service may include:
[0227] The second position value and position weight are determined according to the preset module position of each target service, and the second area value and area weight are determined according to the preset module size of each target service.
[0228] The business module value of each target service is determined based on the second location value and location weight, as well as the second area value and area weight.
[0229] In this embodiment, during the process of determining the business module value of each target service, the second position value and the second area value are weighted according to position weight and area weight, respectively. The sum of the position weight and the area weight is equal to 1. Specifically, the business module value of a target service is equal to the product of its second position value and its position weight, plus the product of its second area value and its area weight. The values of the position weight and area weight can be found in the previous explanation and will not be repeated here.
[0230] In step 204, based on the application module values of each application module in the candidate applications and the service module values of each target service in the target service set, the deviation value between the candidate applications and the target service set is determined, and the candidate application with the lowest deviation value is determined as the recommended application.
[0231] Since the application module value is used to represent the importance of the corresponding application module, and the business module value is used to represent the importance of the corresponding target business, it can be understood that when the application module value of each application module in a candidate application is equal to or has the smallest deviation from the business module value of each target business in the target business set, it means that displaying the target business in the target business set according to the interface layout of the candidate application can meet the importance of the target business.
[0232] Therefore, in this embodiment, for multiple candidate applications, the deviation value between the candidate application and the target service set is determined by the application module value of each application module in the candidate application and the service module value of each target service in the target service set. The lower the deviation value, the higher the fit between the application module in the candidate application and the target service in the target service set; the higher the deviation value, the lower the fit between the application module in the candidate application and the target service in the target service set. After obtaining the deviation value between each candidate application and the target service set, the candidate application with the lowest deviation value is determined as the recommended application.
[0233] In one example, the process of calculating the deviation between the candidate applications and the target service set is as follows:
[0234] The application modules in the candidate applications are sorted in descending order of their application module values, and the target services in the target service set are sorted in descending order of their service module values.
[0235] The deviation value between the candidate application and the target service set is calculated according to the deviation value calculation formula, which is as follows:
[0236]
[0237] Wherein, S represents the deviation value, and w i q represents the application module value of the i-th application module after sorting. i This represents the business module value of the i-th target business after sorting, where k represents the number of target businesses in the target business set.
[0238] It should be noted that if the number of application modules in the candidate application is less than the number of target services, the application module value of the corresponding application module can be represented by 0. For example, if the number of target services in the target service set is 5, and the number of application modules in the candidate application is 4, then when i = 5, w i =0.
[0239] In step 205, the target services in the target service set are displayed in the application module corresponding to the recommended application to generate the target application.
[0240] After determining the recommended applications, the target services in the target service set are displayed according to the layout of the recommended applications to generate the target applications. This ensures that the layout of the target applications meets the preferences of the target group and the requirements of the target audience. The functions provided by the target applications, i.e. the target services, also meet the preferences of the target group and the target audience.
[0241] In some optional embodiments of this application, the process of displaying the target services in the target service set in the application module corresponding to the recommended application to generate the target application may include:
[0242] The application modules in the recommended applications are sorted in descending order of their application module values, and the target services in the target service set are sorted in descending order of their service module values.
[0243] Based on the sorted application modules and target services, the target service is displayed in the application module with the same sequence number to generate the target application.
[0244] In this embodiment, the application modules in the recommended application are sorted in descending order of their application module values, and the target services in the target service set are sorted in descending order of their service module values. This ensures that after sorting, application modules with the same sequence number correspond to the importance of the target service. For example, application module number 1 is the most important application module in the recommended application, and target service number 1 is the most important target service in the target service set. Therefore, when displaying target services, they can be displayed in application modules with the same sequence number, thus generating the target application.
[0245] In some optional embodiments of this application, multiple candidate applications and a target service set are obtained. Each candidate application contains multiple application modules, and the application module value of each module is determined based on its display position and display area. The target service set includes multiple target services, and the service module value corresponding to each target service is determined based on its preset module position and preset module size. Then, based on the application module values of each application module in the candidate applications and the service module values of each target service in the target service set, the deviation value between the candidate applications and the target service set is determined. The lower the deviation value, the higher the fit. Therefore, the candidate application with the lowest deviation value is determined as the recommended application. Finally, the application modules in the recommended applications are sorted in descending order of application module value, and the target services in the target service set are also sorted in descending order of service module value. The target service is displayed in the application module with the same sequence number to achieve adaptive generation of the target application. The target application generated through the embodiments of this application can better meet the needs of the target object, reducing the manpower, material resources, and financial resources consumed by repeated modifications, thereby saving resources.
[0246] To facilitate understanding of this solution by those skilled in the art, the following is combined with... Figure 3 and Figure 4 An example of an adaptive application generation method in one embodiment of this application will be described.
[0247] like Figure 3 The diagram shown is a flowchart of an example of an adaptive application generation method according to this application.
[0248] Step 301: Obtain the applications and services preferred by the target audience. Specifically, this can be done by filtering applications and services preferred by the target audience based on their browsing history, usage process, comments, reviews, and other historical behavioral data.
[0249] Step 302: Identify the target group. This target group consists of users of the target application to be generated. For ease of understanding, this example illustrates a target group consisting of 5 users.
[0250] Step 303: Determine the applications preferred by the target group. Specifically, this can be done by filtering applications based on the historical behavior data of each user in the target group to obtain the applications preferred by the target group.
[0251] In this example, the target group consists of 5 users, and the applications preferred by the target group include application 1, application 2, application 3, application 4, and application 5. The applications preferred by the 5 users are shown in Table 1 below, where the numbers in the table represent the degree of user preference for the application.
[0252] Table 1
[0253] Application 1 Application 2 Application 3 Application 4 Application 5 User 1 4 5 4 3 User 2 5 3 4 User 3 3 4 5 4 User 4 4 5 4 3 User 5 4 4 5
[0254] Step 304: Perform similarity analysis on the target group to obtain the multiple users with the highest similarity and their corresponding multiple applications.
[0255] The similarity calculation process is as follows: Figure 4 As shown, Figure 4 The target group includes three users: User A prefers apps 1, 2, and 3; User B prefers apps 1, 4, and 5; and User C prefers apps 1, 2, and 5. Similarity analysis is used to filter out similar users from the target group, specifically User A and User C. The similarity between two users can be calculated by determining their vector distance, as shown in Formula 1 above.
[0256] After similarity analysis of the five users in Table 1 above, we assume that users 1, 2, 3 and 4 are selected.
[0257] Step 305: Perform similarity analysis between the multiple users obtained in step 304 and the target object to obtain the multiple users with the highest similarity to the target object.
[0258] like Figure 4 As shown, the filtered users A and C are then subjected to similarity analysis with the target object, and user A is identified as the user with the highest similarity to the target object.
[0259] In this example, the degree of preference for each application by each user and target object obtained in step 304 is shown in Table 2 below.
[0260] Table 2
[0261] Application 1 Application 2 Application 3 Application 4 Application 5 User 1 4 5 4 3 User 2 5 3 4 User 3 3 4 5 4 User 4 4 5 4 3 target object 4 5 3 4 3
[0262] We performed similarity analysis on users 1, 2, 3, and 4 with the target object, and assumed that user 1 had the highest similarity to the target object.
[0263] Step 306: Remove the applications that the target object has browsed and rated from the applications corresponding to the users obtained in step 305 to obtain candidate applications.
[0264] like Figure 4 As shown, the applications corresponding to user A with the highest similarity to the target object are application 1, application 2, and application 3; assuming that the target object has browsed and rated applications 1 and 3, then after filtering, the candidate application obtained is application 2.
[0265] In this example, the user obtained in step 305 is user 1, and the applications corresponding to user 1 are application 1, application 2, application 4, and application 5. Based on the target object's historical behavior data, the applications that the target object has given negative reviews can be obtained. Assuming that the application that the target object has given negative reviews to is application 2, then the alternative applications obtained are application 1, application 4, and application 5.
[0266] Step 307: Determine the services preferred by the target group. Specifically, this can be done by filtering services based on the historical behavior data of each user in the target group to obtain the services preferred by the target group.
[0267] Step 308: Perform a similarity analysis on the services obtained in Step 307 to identify the services with the highest similarity. Specifically, by performing a similarity analysis on the services obtained in Step 307, a service similarity matrix is obtained. Based on the service similarity matrix, the services with the highest similarity are selected.
[0268] Step 309: Analyze the correlation between the various business processes in Step 308 to obtain a correlation matrix for each business process. Specifically, use the Apriori algorithm to count the processing frequency of related business processes to obtain the correlation matrix. A higher correlation indicates that the two business processes need to be linked together in application.
[0269] Step 310: Remove the associated services from the services obtained in step 308 to obtain multiple target services.
[0270] In this example, the target services include five services: Service 1, Service 2, Service 3, Service 4, and Service 5.
[0271] Step 311: Perform a fit analysis on the candidate applications obtained in step 306 and the target business obtained in step 310 to obtain the application that best matches the business.
[0272] The fit analysis involves the application module values of each application module in each candidate application, as well as the business module values of each target service. The application modules and their corresponding application module values for each candidate application are shown in Tables 3-5, and the target services and their corresponding business module values are shown in Table 6.
[0273] Table 3: Application 1
[0274]
[0275]
[0276] In the table, the modules represent application modules, the module size represents the display area of the application module, the importance represents the display position of the application module, 30% represents the area weight, 70% represents the position weight, and the calculation result represents the application module value.
[0277] Table 4: Application 4
[0278] Module size (30%) Importance (70%) Calculation results Module 1 4 3 3.30 Module 2 5 4 4.30 Module 3 2 5 4.10 Module 4 3 2 2.30
[0279] In the table, the modules represent application modules, the module size represents the display area of the application module, the importance represents the display position of the application module, 30% represents the area weight, 70% represents the position weight, and the calculation result represents the application module value.
[0280] Table 5: Application 5
[0281] Module size (30%) Importance (70%) Calculation results Module 1 4 5 4.70 Module 2 4 2 2.60 Module 3 5 3 3.60 Module 4 3 4 3.70 Module 5 5 1 2.20 Module 6 2 4 3.40
[0282] In the table, the modules represent application modules, the module size represents the display area of the application module, the importance represents the display position of the application module, 30% represents the area weight, 70% represents the position weight, and the calculation result represents the application module value.
[0283] Table 6: Business
[0284]
[0285]
[0286] In the table, module size represents the preset module size of the business, importance represents the preset display position of the business, 30% represents area weight, 70% represents position weight, and the calculation result represents the business module value.
[0287] Based on Tables 3 and 6, the deviation between Application 1 and multiple services can be calculated as: (|4.70-5.00|+|3.70-3.70|+|3.60-3.30|+|1.70-1.70|+|1.30-1.30|) / 5=0.22.
[0288] Based on Tables 4 and 6, the deviation between Application 4 and multiple services can be calculated as: (|4.70-4.30|+|3.70-4.10|+|3.60-3.30|+|1.70-2.30|+|1.30-0|) / 5=0.6.
[0289] Based on Tables 5 and 6, the deviation between Application 5 and multiple services can be calculated as follows: (|4.70-4.70|+|3.70-3.70|+|3.60-3.60|+|1.70-3.40|+|1.30-2.60|) / 5=0.6.
[0290] The comparison revealed that Application 1 had the smallest deviation value, meaning it had the highest relevance and best match with multiple business functions. Therefore, Application 1 was selected as the recommended application, and its layout was used to generate the target application.
[0291] Step 312: Generate the target application based on the target business obtained in step 310 and the application obtained in step 311.
[0292] The target service obtained in step 310 is displayed in the corresponding module of the application obtained in step 311. In this example, service 1 is displayed in module 1 of application 1, service 2 is displayed in module 3 of application 1, service 3 is displayed in module 2 of application 1, service 4 is displayed in module 5 of application 1, and service 5 is displayed in module 4 of application 1, thus obtaining the target application.
[0293] It should be noted that, for the sake of simplicity, the method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments of this application are not limited to the described order of actions, because according to the embodiments of this application, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of this application.
[0294] Reference Figure 5 The diagram illustrates a structural block diagram of an embodiment of an adaptive generation application based on this application. Corresponding to the above-described method embodiment based on adaptive generation application, the device may include the following modules:
[0295] The first acquisition module 501 is used to acquire multiple candidate applications and a target service set. The candidate applications are obtained by processing applications preferred by the target object and applications preferred by the target group. Each candidate application contains multiple application modules. The target service set includes multiple target services. The target services are obtained by processing services preferred by the target object and services preferred by the target group.
[0296] The first determining module 502 is used to determine the application module value of each of the candidate applications based on the display position and display area of each application module; the application module value is used to indicate the importance of the corresponding application module.
[0297] The second determining module 503 is used to determine the business module value corresponding to each of the target services based on the preset module position and preset module size of each target service; the business module value is used to represent the importance of the corresponding target service;
[0298] The recommended application determination module 504 is used to determine the deviation value between the candidate application and the target service set based on the application module value of each application module in the candidate application and the service module value of each target service in the target service set, and determine the candidate application with the lowest deviation value as the recommended application.
[0299] The target application generation module 505 is used to display the target services in the target service set in the application module corresponding to the recommended application to generate the target application.
[0300] Optionally, the recommended application determination module 504 may include:
[0301] The first sorting submodule is used to sort the application modules in the candidate applications in descending order of application module value, and to sort the target services in the target service set in descending order of service module value.
[0302] The deviation value calculation submodule is used to calculate the deviation value between the candidate application and the target service set according to the deviation value calculation formula, which is as follows:
[0303]
[0304] Where S represents the deviation value, w i q represents the application module value of the i-th application module after sorting. i This represents the business module value of the i-th target business after sorting, and k represents the number of target businesses in the target business set.
[0305] Optionally, the target application generation module 505 may include:
[0306] The second sorting submodule is used to sort the application modules in the recommended application in descending order of application module value, and to sort the target services in the target service set in descending order of service module value.
[0307] The application generation submodule is used to generate the target application by displaying the target service in the application module with the same sequence number according to the sorted application modules and the target service.
[0308] Optionally, the first determining module 502 may include:
[0309] The first determining submodule is used to determine, for each candidate application, a corresponding first position value and position weight based on the display position of each application module, and a corresponding first area value and area weight based on the display area of each application module.
[0310] The application module value calculation submodule is used to determine the application module value of each application module based on the first position value and position weight of each application module, as well as the first area value and area weight.
[0311] Optionally, the second determining module 503 may include:
[0312] The second determining submodule is used to determine the corresponding second position value and position weight according to the preset module position of each of the target services, and to determine the corresponding second area value and area weight according to the preset module size of each of the target services.
[0313] The business module value calculation submodule is used to determine the business module value of each target business based on the second position value and position weight, as well as the second area value and area weight of each target business.
[0314] Optionally, the first acquisition module 501 may include:
[0315] The object application acquisition submodule is used to acquire the applications preferred by the target object and obtain an object application set, which is used to store the applications preferred by the target object.
[0316] The user application acquisition submodule is used to acquire the applications preferred by each user in the target group, and obtain the user application set of each user's preferences; the user application set is used to store the applications corresponding to the user's preferences.
[0317] The first similarity analysis submodule is used to perform similarity analysis between each user in the target group and the target object based on the object application set of the target object and the user application set of each user in the target group, and determine the user whose similarity meets the first preset condition as the first candidate user;
[0318] The candidate application determination submodule is used to determine candidate applications based on the user application set of the first candidate user.
[0319] Optionally, the candidate application determination submodule can also be used to remove applications that are the same as those in the user application set of the first candidate user and the object application set to obtain candidate applications.
[0320] Optionally, the first similarity analysis submodule may include:
[0321] The first user group determination unit is used to perform similarity analysis on the users in the target group based on the user application set of each user in the target group, and store the users whose similarity meets the initial preset conditions into the corresponding first user group.
[0322] The first candidate user determination unit is used to perform similarity analysis between each user in the first user group and the target object based on the user application set of each user in the first user group and the object application set of the target object, and determine the user whose similarity meets the first preset condition as the first candidate user.
[0323] Optionally, the user application acquisition submodule may include:
[0324] The first historical data acquisition unit is used to acquire the user historical behavior data of each user in the target group.
[0325] The user preference application determination unit is used to determine the user's preferred application based on the user's historical behavior data.
[0326] Optionally, the object application acquisition submodule may include:
[0327] The second historical data acquisition unit is used to acquire the historical behavior data of the target object.
[0328] An object preference application determination unit is used to determine the application of the target object preference based on the object's historical behavior data.
[0329] Optionally, the first determining module 502 may include:
[0330] The object service acquisition submodule is used to acquire the services preferred by the target object and obtain an object service set, which is used to store the services preferred by the target object.
[0331] The user service acquisition submodule is used to acquire the services preferred by each user in the target group, and obtain the user service set for each user's preferences; the user service set is used to store the services corresponding to the user's preferences.
[0332] The second similarity analysis submodule is used to perform similarity analysis between each user in the target group and the target object based on the object business set of the target object and the user business set of each user in the target group, and determine the users whose similarity meets the second preset condition as the second candidate users.
[0333] The target service determination submodule is used to determine multiple target services based on the user service sets of multiple second candidate users, and store the target services into a target service set.
[0334] Optionally, the target service determination submodule may further include:
[0335] The alternative service determination unit is used to determine multiple alternative services based on the user service sets of multiple second alternative users;
[0336] The associated business merging unit is used to perform correlation analysis on multiple candidate businesses, merge the multiple interrelated candidate businesses, and obtain the target business.
[0337] Optionally, the second similarity analysis submodule may include:
[0338] The second user group determination unit is used to perform similarity analysis on users in the target group based on the user service set of each user in the target group, and store users whose similarity meets the pre-preset conditions into the corresponding second user group.
[0339] The second candidate user determination unit is used to perform similarity analysis between each user in the second user group and the target object based on the user service set of each user in the second user group and the object service set of the target object, and determine the users whose similarity meets the second preset condition as the second candidate users.
[0340] Optionally, the user service acquisition submodule may include:
[0341] The third historical data acquisition unit is used to acquire the historical behavior data of each user in the target group.
[0342] The user preference service determination unit is used to determine the user preference service based on the user's historical behavior data.
[0343] Optionally, the object business acquisition submodule may include:
[0344] The fourth historical data acquisition unit is used to acquire the historical behavior data of the target object;
[0345] The object preference service determination unit is used to determine the target object preference service based on the object's historical behavior data.
[0346] As the device embodiment is basically similar to the method embodiment, the description is relatively simple, and relevant parts can be found in the description of the method embodiment.
[0347] This application also discloses an electronic device, including a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein the computer program, when executed by the processor, implements the steps of the method for adaptively generating applications as described above.
[0348] This application also discloses a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of the method for adaptive application generation as described above.
[0349] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.
[0350] Those skilled in the art will understand that embodiments of this application can be provided as methods, apparatus, or computer program products. Therefore, embodiments of this application can take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects. Furthermore, embodiments of this application can take the form of computer program products implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0351] This application describes embodiments with reference to flowchart illustrations and / or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0352] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0353] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal equipment, causing a series of operational steps to be performed on the computer or other programmable terminal equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable terminal equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0354] Although preferred embodiments of the present application have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of the embodiments of the present application.
[0355] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or terminal device that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or terminal device. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or terminal device that includes said element.
[0356] The above provides a detailed description of the method, apparatus, electronic device, and storage medium based on adaptive application generation provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The description of the above embodiments is only for the purpose of helping to understand the method and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A method for adaptively generating applications, characterized in that, The method includes: Multiple candidate applications and a set of target services are obtained. The candidate applications are obtained by processing applications preferred by the target object and applications preferred by the target group, and each candidate application contains multiple application modules. The set of target services includes multiple target services, which are obtained by processing services preferred by the target object and services preferred by the target group. For each of the candidate applications, an application module value is determined based on the display position and display area of each application module; the application module value is used to indicate the importance of the corresponding application module. Based on the preset module positions and preset module sizes of each target service, the corresponding service module value is determined; the service module value is used to indicate the importance of the corresponding target service. Based on the application module values of each application module in the candidate applications and the business module values of each target service in the target service set, the deviation value between the candidate applications and the target service set is determined, and the candidate application with the lowest deviation value is determined as the recommended application. The target services in the target service set are displayed in the application module corresponding to the recommended application to generate the target application.
2. The method according to claim 1, characterized in that, The step of determining the deviation value between the candidate applications and the target service set based on the application module values of each application module in the candidate applications and the service module values of each target service in the target service set includes: The application modules in the candidate applications are sorted in descending order of their application module values, and the target services in the target service set are sorted in descending order of their service module values. The deviation between the candidate application and the target service set is calculated according to the deviation value calculation formula, which is as follows: Where S represents the deviation value, w i q represents the application module value of the i-th application module after sorting. i This represents the business module value of the i-th target business after sorting, and k represents the number of target businesses in the target business set.
3. The method according to claim 1, characterized in that, The step of displaying each target service in the target service set in the application module corresponding to the recommended application to generate the target application includes: The application modules in the recommended applications are sorted in descending order of their application module values, and the target services in the target service set are sorted in descending order of their service module values. Based on the sorted application modules and target services, the target service is displayed in the application module with the same sequence number to generate the target application.
4. The method according to claim 1, characterized in that, For each of the candidate applications, the application module value of each application module is determined based on its display position and display area, including: For each of the candidate applications, a first position value and position weight are determined based on the display position of each application module, and a first area value and area weight are determined based on the display area of each application module. The application module value of each application module is determined based on the first position value and position weight of each application module, as well as the first area value and area weight.
5. The method according to claim 4, characterized in that, The step of determining the service module value corresponding to each target service based on the preset module position and preset module size includes: The second position value and position weight are determined according to the preset module position of each target service, and the second area value and area weight are determined according to the preset module size of each target service. The business module value of each target service is determined based on the second location value and location weight, as well as the second area value and area weight.
6. The method according to claim 1, characterized in that, The acquisition of multiple alternative applications includes: The application preferences of the target object are obtained to form an application set, which is used to store the applications preferred by the target object. The application preferences of each user in the target group are obtained to obtain a user application set for each user preference; the user application set is used to store the application preferences of the corresponding user. Based on the object application set of the target object and the user application set of each user in the target group, a similarity analysis is performed between each user in the target group and the target object, and users whose similarity meets the first preset condition are determined as the first candidate users; The candidate applications are determined based on the user application set of the first candidate user.
7. The method according to claim 6, characterized in that, The step of determining candidate applications based on the user application set of the first candidate user further includes: Applications that are identical to those in the user application set of the first candidate user and the object application set are removed to obtain candidate applications.
8. The method according to claim 6, characterized in that, The step of performing similarity analysis between each user in the target group and the target object based on the object application set of the target object and the user application set of each user in the target group, and determining users whose similarity meets the first preset condition as first candidate users, includes: Based on the user application set of each user in the target group, a similarity analysis is performed on the users in the target group, and users whose similarity meets the initial preset conditions are stored in the corresponding first user group; Based on the user application set of each user in the first user group and the object application set of the target object, a similarity analysis is performed on each user in the first user group and the target object, and users whose similarity meets the first preset condition are determined as the first candidate users.
9. The method according to claim 6, characterized in that, The application for obtaining the preferences of each user in the target group includes: Obtain historical user behavior data for each user in the target group; Applications that determine user preferences based on the user's historical behavior data.
10. The method according to claim 9, characterized in that, The object application for obtaining the target object's preferences includes: Obtain historical behavior data of the target object; The application of the target object's preferences is determined based on the object's historical behavior data.
11. The method according to claim 1, characterized in that, The acquisition of the target service set includes: The target object's preferred services are obtained, resulting in an object service set, which is used to store the target object's preferred services. The preferred services of each user in the target group are obtained, resulting in a user service set for each user's preferences; the user service set is used to store the services corresponding to the user's preferences. Based on the object business set of the target object and the user business set of each user in the target group, a similarity analysis is performed on each user in the target group and the target object, and users whose similarity meets the second preset condition are determined as the second candidate users. Multiple target services are determined based on the user service sets of multiple second candidate users, and the target services are stored in the target service set.
12. The method according to claim 11, characterized in that, The step of determining multiple target services based on the user service sets of multiple second candidate users includes: Multiple alternative services are determined based on the user service sets of multiple second alternative users; A correlation analysis is performed on multiple candidate services, and the target service is obtained by merging the multiple related candidate services.
13. The method according to claim 11, characterized in that, The step of performing a similarity analysis between each user in the target group and the target object based on the object service set of the target object and the user service set of each user in the target group, and determining users whose similarity meets the second preset condition as second candidate users, includes: Based on the user business set of each user in the target group, perform similarity analysis on the users in the target group, and store users whose similarity meets the pre-set conditions into the corresponding second user group; Based on the user service set of each user in the second user group and the object service set of the target object, a similarity analysis is performed on each user in the second user group and the target object, and users whose similarity meets the second preset condition are determined as the second candidate users.
14. The method according to claim 11, characterized in that, The service of obtaining the preferences of each user in the target group includes: Obtain historical user behavior data for each user in the target group; The business of determining user preferences based on the user's historical behavior data.
15. The method according to claim 14, characterized in that, The business of obtaining the target object's preferences includes: Obtain historical behavior data of the target object; The business of determining the target object's preferences based on the object's historical behavior data.
16. An apparatus for adaptive generation applications, characterized in that, The device includes: The first acquisition module is used to acquire multiple candidate applications and a target service set. The candidate applications are obtained by processing applications preferred by the target object and applications preferred by the target group. Each candidate application contains multiple application modules. The target service set includes multiple target services. The target services are obtained by processing services preferred by the target object and services preferred by the target group. The first determining module is used to determine the application module value of each of the candidate applications based on the display position and display area of each application module; the application module value is used to indicate the importance of the corresponding application module. The second determining module is used to determine the business module value corresponding to each of the target services based on the preset module position and preset module size of each target service; the business module value is used to indicate the importance of the corresponding target service. The recommended application determination module is used to determine the deviation value between the candidate application and the target service set based on the application module value of each application module in the candidate application and the service module value of each target service in the target service set, and determine the candidate application with the lowest deviation value as the recommended application. The target application generation module is used to display the target services in the target service set in the application module corresponding to the recommended application to generate the target application.
17. An electronic device comprising a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein the computer program, when executed by the processor, implements the method for adaptively generating applications as described in any one of claims 1-15.
18. A computer-readable storage medium storing a computer program thereon, the computer program, when executed by a processor, implementing the method of adaptive generation application as described in any one of claims 1-15.