A message template recommendation method, device and equipment
By dividing merchant types and evaluating the adaptability of message templates based on historical frequency and activity, the problem of poor message template recommendation in the existing technology is solved, and the self-operation efficiency and user experience of new merchants are improved.
Patent Information
- Application Number
- CN202210043871.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-01-14
- Publication Date
- 2024-12-17
- Estimated Expiration
- 2042-01-14
AI Technical Summary
The existing technology is difficult to provide more effective message template recommendation solutions for different types of merchants, resulting in inefficiency among merchants in their own operations.
By determining the historical frequency of merchants using message templates, dividing merchant types, and setting template recommendation indicators according to the type, obtaining message templates that meet the indicators for pushing, and evaluating template fitness to optimize message template recommendations.
It has realized the adaptability evaluation and recommendation of message templates for newly settled mini-program merchants, improved the merchant's self-operation efficiency, provided a more suitable message template, and improved the user experience.
Smart Images

Figure CN114491246B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of Internet technology, and in particular to a method, device and apparatus for recommending a message template. Background Art
[0002] Pushing relevant messages to users is one of the important means of digital operation for merchants. Many current applications provide mini-program functions. Merchants can enter the application through mini-programs and use the message templates provided in the mini-programs to push messages to users to inform users of the results and status of current actions and other information.
[0003] Different merchants have different experiences and capabilities in pushing messages to users, so it is necessary for the application party to operate merchants in a tiered manner to meet the actual needs of different types of merchants in self-operation.
[0004] Based on this, a recommendation scheme for message templates that is more effective for merchant self-operation is needed. Summary of the invention
[0005] The embodiments of this specification provide a message template recommendation method, apparatus, device and storage medium to solve the following technical problem: a message template recommendation scheme that is more effective for merchant self-operation is needed.
[0006] To solve the above technical problems, one or more embodiments of this specification are implemented as follows:
[0007] In a first aspect, an embodiment of the present specification provides a message template recommendation method, which is applied to a mini program, and includes: determining the historical frequency of a merchant using a message template, and determining the merchant type of the merchant based on the historical frequency, wherein the merchant type includes a first type with a historical frequency of using a message template of zero; determining a template recommendation indicator corresponding to the merchant type, wherein different merchant types have different template recommendation indicators; obtaining a message template to be recommended that meets the template recommendation indicator, and pushing the message template to be recommended to the merchant; and evaluating the adaptability of the pushed message template to the merchant of the first type based on the user's activity level in the interface of the merchant in the mini program.
[0008] In the second aspect, an embodiment of the present specification provides a message template recommendation device, which is applied to a mini program, including: a merchant type determination module, which determines the historical frequency of a merchant using a message template, and determines the merchant type of the merchant based on the historical frequency, wherein the merchant type includes a first type with a historical frequency of using a message template of zero; a recommendation indicator determination module, which determines the template recommendation indicator corresponding to the merchant type, wherein different merchant types have different template recommendation indicators; an acquisition module, which acquires a message template to be recommended that meets the template recommendation indicator; a push module, which pushes the message template to be recommended to the merchant; an evaluation module, which evaluates the adaptability of the pushed message template to the first type of merchant based on the user's activity level in the interface of the merchant in the mini program.
[0009] In a third aspect, an embodiment of the present specification provides an electronic device, including: at least one processor; and
[0010] A memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor so that the at least one processor can execute the method as described in the first aspect.
[0011] In a fourth aspect, an embodiment of the present specification provides a non-volatile computer storage medium storing computer executable instructions. When a computer reads the computer executable instructions in the storage medium, the instructions enable one or more processors to execute the method described in the first aspect.
[0012] At least one of the above technical solutions adopted in one or more embodiments of this specification can achieve the following beneficial effects: by determining the historical frequency of merchants using message templates, determining the merchant type of the merchant according to the historical frequency, wherein the merchant type includes a first type with a historical frequency of using message templates of zero; determining the template recommendation index corresponding to the merchant type, wherein different merchant types correspond to different template recommendation indexes; obtaining a message template to be recommended that meets the template recommendation index, pushing the message template to be recommended to the merchant, and evaluating the fitness of the pushed message template for the first type of merchant according to the user's activity level in the interface of the merchant in the mini program. This enables the fitness evaluation of message templates for merchants newly settled in the mini program, so as to recommend message templates that are more suitable for the operation of this type of merchant, assist merchants newly settled in the mini program in obtaining better message templates, and improve the self-operation efficiency of newly settled merchants. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] In order to more clearly illustrate the embodiments of this specification or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this specification. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.
[0014] Figure 1 A flowchart of a method for recommending a message template provided in an embodiment of this specification;
[0015] Figure 2 A schematic diagram of feature fusion provided in an embodiment of this specification;
[0016] Figure 3 A schematic diagram of a merchant terminal displaying a message template provided in an embodiment of this specification;
[0017] Figure 4 A schematic diagram of the structure of a message template recommendation device provided in an embodiment of this specification;
[0018] Figure 5 A schematic diagram of the structure of an electronic device provided in an embodiment of this specification. DETAILED DESCRIPTION
[0019] The embodiments of the present specification provide a method, apparatus, device and storage medium for recommending a message template.
[0020] In order to enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below in conjunction with the drawings in the embodiments of this specification. Obviously, the described embodiments are only part of the embodiments of this application, not all of them. Based on the embodiments of this specification, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of this application.
[0021] like Figure 1 As shown, Figure 1 A flowchart of a method for recommending a message template provided in an embodiment of this specification includes the following steps:
[0022] S101: Determine a historical frequency of a merchant using a message template, and determine a merchant type of the merchant according to the historical frequency, wherein the merchant type includes a first type whose historical frequency of using a message template is zero.
[0023] Currently, merchants usually conduct digital operations by registering in mini programs, and push messages to their historical users (i.e., users who have made purchases in the past) or potential users (i.e., users who are more likely to make purchases in the store) through mini programs. At this time, the application server that provides mini program registration can provide a variety of message templates for merchants to choose from.
[0024] For example, a message template can be "xxx holiday benefits, get [holiday gift package] quickly, N copies per day" about coupons, and provide relevant links for users to click to enter the store. The specific content of the "holiday gift package" and the specific number of "N" can be filled in by the merchant based on their own needs. That is, the message template is a pre-set template with a fixed format or content. The message template can contain various contents such as pre-set text, pictures, animations, etc.
[0025] When a merchant enters his / her merchant interface through a mini program, the application server can query the merchant's historical data to obtain the merchant's historical frequency of using the message template. The frequency can include frequency (for example, the number of times used per month or per week) or number of times (for example, the number of times the merchant has used it in the past three months, or the number of times the merchant has used it since entering the application through a mini program).
[0026] Furthermore, merchants can be classified according to their use of message templates. For example, merchants can be classified into three types according to their historical frequency of using templates:
[0027] a. When the merchant's historical frequency of using the message template is zero, the merchant type is determined to be the first type, which is a merchant that has never used a template, for example, a merchant that has just entered the application;
[0028] b. When the merchant's historical frequency of using the message template is greater than M, the merchant type is determined to be the second type, that is, a merchant that has relatively rich experience in using message templates;
[0029] c. When the merchant's historical frequency of using the message template is greater than zero and does not exceed M, the merchant type is determined to be the third type, that is, a merchant between the first type and the second type, who has some experience in using message templates but is not very proficient.
[0030] The value of M can be preset on the application server as needed, for example, M = 5. By classifying merchants, message templates can be recommended in different directions and with different template recommendation indicators for different types of merchants.
[0031] S103, determining the template recommendation index corresponding to the merchant type, wherein different merchant types correspond to different template recommendation indexes.
[0032] Template recommendation indicators may include, for example, whether the attributes of a message template are higher than a preset value. The attributes of a message template include the actual click-through rate of a message template, the estimated click-through rate of a message template, the number of times a message template is used within a certain time range, the popularity of a message template in the overall template (the popularity is positively correlated with the frequency of use of a message template among all templates. For example, if the frequency of use of message template 1 is 1%, and the frequency of use of message template 2 is 2%, then the popularity of message template 1 should be less than that of message template 2), etc.
[0033] Each type of merchant has different experience in using message templates and different needs. The application server can pre-set different types of template recommendation indicators based on different types of merchants.
[0034] For example, for merchants of the first type who have never used templates, they have little knowledge of message templates, and the application server does not have the merchant's usage data for template messages. For these merchants, they only need to be familiar with the use of message templates and apply them as simply as possible. Therefore, the application server can guide the merchant's ability to use template messages through widely applicable indicators. That is, popularity can be determined as the template recommendation indicator corresponding to the first type, and based on the recommendation strategy of popularity, message templates that are frequently used by merchants in the same industry can be recommended. At the same time, suitable copy can be used to attract merchants to use it, such as adding copy information to the popular message template: "90% of the peers are using the message template", so that merchants can make more intuitive choices.
[0035] For another example, for merchants of the second type whose historical frequency of using message templates is greater than M, these merchants are familiar with template messages and have been using messages to operate their own users. At this time, the estimated click-through rate can be used as a template recommendation indicator corresponding to the second type, where the estimated click-through rate is used to represent the total number of times the message template may be clicked by the merchant's users (including potential users).
[0036] For another example, for merchants of the third type whose historical frequency of using message templates is greater than zero and does not exceed M, such users have used message templates to send messages to their own users, but there are not many related operations and they lack more experience. At this time, the popularity and estimated click-through rate can be used as template recommendation indicators corresponding to the third type. That is, templates are pushed to merchants of the third type based on popularity and estimated click-through rate at the same time to help such users transition from being unfamiliar with message templates to being familiar with them.
[0037] S105, obtaining a message template to be recommended that meets the template recommendation index, and pushing the message template to be recommended to the merchant. The application server can call and query or evaluate the relevant index of each message template in real time. For example, the attributes such as the popularity or actual click rate of the message template can be determined and stored in real time in advance, and can be called and queried by the application server at any time.
[0038] For properties such as estimated click-through rate, the application server can obtain the merchant, message template and user-related features based on the pre-trained estimation model to obtain the estimated click-through rate of each message template. Therefore, once the merchant type is determined, the application server can query the storage device based on the template recommendation index to obtain the message template to be recommended that meets the template recommendation index. There may be multiple message templates to be recommended that meet the template recommendation index.
[0039] The application server can push all the acquired message templates to be recommended to the merchant, or select the top N to recommend to the merchant. For example, there may be 10 message templates to be recommended that meet the template recommendation index, and the application server only selects the top 3 message templates to be recommended to push. Alternatively, the message templates to be recommended that the merchant is more likely to use can be determined from the message templates to be recommended based on the merchant characteristics and template characteristics to improve the merchant's user experience.
[0040] S107, evaluating the adaptability of the pushed message template to the first type of merchant based on the user's activity level in the merchant's interface of the mini program.
[0041] It should be emphasized that compared with conventional applications, mini programs have an inherent advantage, that is, "you can use them without downloading the corresponding application." For example, merchants only need to connect with the server, and the server can provide the corresponding interface in the form of a mini program in the application. Merchants do not need to provide any program, and users do not need to download it. They can enter the merchant's interface through the mini program in the application.
[0042] Therefore, when the first type of merchants in this application (i.e. merchants that have not used message templates, usually merchants that are new to the mini program) use message templates for promotion, it can be expected that the ones they push must be new users of the merchant (i.e. users who enter the merchant's interface through the mini program for the first time). In other words, it is possible to accurately trace the source of users, that is, it is believed that new users always enter the interface of the new merchant from the message template (and if it is a regular application, new users always need to download the regular application before entering the interface, and the way to download regular applications is difficult to accurately trace the source), and then, based on the user's activity level in the interface of the merchant in the mini program, the adaptability of the pushed message template to the first type of merchant can be evaluated.
[0043] The user's activity level in the merchant's interface of the mini program may include multi-dimensional activity parameters, such as: the number of users entering the merchant's interface, the click-through rate in the merchant's interface, the number of transactions initiated in the merchant's interface, the proportion of initiated transactions, the time users stay in the merchant's interface, etc.
[0044] The adaptability of the pushed message template to the first type of merchants can be evaluated by comprehensively evaluating the aforementioned multi-dimensional active parameters. For example, the aforementioned multi-dimensional active parameters can be normalized in each dimension and then weighted summed up; or, a pre-trained evaluation model can be used, with the aforementioned multi-dimensional active parameters and the features of the message template itself as input features, and the evaluation model can be used to output an evaluation score for the message template, etc.
[0045] The fitness obtained by the evaluation can be used to characterize whether the message template is suitable for new merchants to use for message promotion. For example, some message templates may be more suitable for old users (i.e. users who have interacted in the merchant's interface), but may not be attractive enough for new users. This method can further evaluate the message templates in a hierarchical manner, and better assist merchants who have just settled in the mini program to select more suitable message templates for promotion.
[0046] By determining the historical frequency of the merchant using the message template, determining the merchant type of the merchant according to the historical frequency, wherein the merchant type includes the first type with a historical frequency of using the message template of zero; determining the template recommendation index corresponding to the merchant type, wherein different merchant types correspond to different template recommendation indexes; obtaining the message template to be recommended that meets the template recommendation index, pushing the message template to be recommended to the merchant, and evaluating the adaptability of the pushed message template to the merchant of the first type according to the user's activity level in the interface of the merchant in the mini program. In this way, the adaptability of the message template for the merchants newly settled in the mini program can be evaluated, so as to recommend message templates that are more suitable for the operation of this type of merchants, assist the merchants newly settled in the mini program to obtain better message templates, and improve the self-operation efficiency of the newly settled merchants.
[0047] In one embodiment, when recommending message templates to merchants of the first type, they can also be pushed by industry. Specifically, the industry type to which the merchant belongs can be determined, and the industry message template corresponding to the industry type can be obtained; the frequency of use of each industry message template in the industry type can be determined, and the industry message template ranked at the top in terms of frequency of use can be determined as the message template to be recommended.
[0048] For example, message template 1 ranks first in usage in the entire industry, but ranks fifth in usage in the "catering" industry. At this time, if the merchant is in the catering industry, if the merchant needs to be recommended the top 3 message templates, message template 1 may no longer be recommended, but the usage of message templates in the catering industry will be re-ranked to determine a more accurate industry ranking. By recommending message templates by industry, the message templates to be recommended can be more in line with the usage rules of each industry, achieving more accurate template recommendations.
[0049] In one embodiment, when recommending message templates to merchants of the first type, in order to more accurately obtain the message templates to be recommended, the estimated click-through rate of each template can be determined in the following manner: determine the set of users to which the merchant will push messages; for any message template, estimate the probability of any user in the user set clicking on the message template; determine the estimated click-through rate of the message template based on the probability of all users in the user set clicking on the message template; and determine the message templates with the highest estimated click-through rates as the message templates to be recommended.
[0050] The user set to which messages will be pushed may include users with whom the merchant has interacted and potential users of the merchant (for example, potential users may be users who have interacted with other merchants in the same industry as the merchant). On the application server side, first obtain the available message templates as a set and traverse them. For each message template, determine the click probability of each user in this user set for the message template (the click probability will be a value greater than 0 and less than 1), and sum the click probabilities of all users in the user set to obtain the estimated click rate of the message template, thereby accurately estimating the click probability of each user for each template and achieving more accurate template recommendations.
[0051] The click probability of a single user for a single template can be obtained by statistically analyzing the historical data of the user. For example, if the message template has been pushed to the user 10 times, but the user has only clicked it 3 times, the click probability is 0.3. It is also possible to pre-train an estimation model and obtain the click probability of a single user for a single template based on user characteristics and the estimation model.
[0052] In one embodiment, if an estimation model is used to estimate the click probability of any user in a user set on a single message template, the following method may be used: obtaining application features of the application used by the merchant when pushing messages;
[0053] For any message template, determine the message template features of the message template; for any user, determine the user features and cross features of the user, wherein the cross features at least include the user's usage features of the application and the user's usage features of the message template; fuse the application features, the message template features, the user features and the cross features to generate mapping features; based on the mapping features, use a pre-trained estimation model to determine the user's click probability on the message template.
[0054] Specifically, we first need to obtain various features, including:
[0055] (1) Application features of the application used for message push, including: application name, name of the mini program used by the merchant to enter the application, description of the mini program, category of the mini program, industry to which it belongs, number of users, etc.
[0056] (2) The message template features of the message template include: the industry to which the template belongs, the template content, the number of template exposures, the number of clicks, the click-through rate, etc.
[0057] (3) User characteristics: including user attributes and behavioral characteristics, such as city, age, gender, various preferences, activity level, etc., as well as the number of times users visit the mini program, the number of transactions, the number of times users click on messages, etc.
[0058] (4) Cross-features, which include the user's usage characteristics of the application, such as the user's usage frequency, usage duration, usage functions, etc. of the application or mini-program; and cross-features also include the user's usage characteristics of the message template, such as the number of clicks, click frequency, browsing time of the message template, and the frequency and duration of interaction with the merchant through the message template, etc.
[0059] Then, the application feature, the message template feature, the user feature and the cross feature are fused to generate a mapping feature, and based on the mapping feature, a pre-trained prediction model is used to determine the probability of the user clicking on the message template. The specific fusion method can be determined based on the training method of the prediction model, as long as the fusion method is consistent with the method used when training the model.
[0060] In one embodiment, a multi-model combination method can be used to fuse multiple features. For example, the model is divided into text features and non-text features, wherein text features include template content and industry information in the message template, and non-text features include user features, mini-program features, and cross-features, etc. Then, a text convolutional network (Text Convolutional Neural Networks, TextCNN) model is used to extract the first feature vector of the message template feature, and a deep neural network model (Deep Neural Networks, DNN) is used to extract the second feature vector of the application feature, the user feature, and the cross-feature.
[0061] like Figure 2 As shown, Figure 2 A schematic diagram of feature fusion provided in an embodiment of this specification. In this method, the basic text content in each feature can be first obtained and input into the text convolutional network model. In Textcnn, the pre-trained word vector is used as the mapping layer (i.e., the embedding layer) to map the input original text content to obtain the first feature vector. In Textcnn, for all the words in the data set, because each word can be represented as a vector, an embedding matrix can be obtained, and each row in the embedding matrix is a word vector. This embedding matrix can be static, that is, fixed. It can be non-static, that is, it can be obtained according to back-propagation update training.
[0062] As for non-text features, the non-text features can be encoded (for example, one-hot encoding can be used), and the text features can be input into the input layer of the DNN model, and the output non-text features can be convolved using pre-trained hidden layers and output layers to obtain a second feature vector.
[0063] Furthermore, we can Figure 2 As shown in , the first feature vector and the second feature vector are combined in a spliced manner to generate a mapping feature. The mapping feature comprehensively represents the non-text features and text features, that is, it includes the aforementioned application features, message template features, user features and cross-features as a whole, so that the pre-trained estimation model can directly calculate based on the mapping feature to obtain the user's click probability for the message template. That is, the model outputs the click rate estimate of a single user for a single message template. For this single message template, assuming that the click rate of the i-th single user is ctr_i, and the number of users in the user set is count(user_i), then the average estimated click rate of the message template is ctr =sum(ctr_i) / count(user_i)
[0064] In one embodiment, for some merchants, they already have rich experience in the use of message templates, and they can accurately understand the specific meanings of various template recommendation indicators of message templates. Then when recommending message templates to such merchants, it is also possible to obtain the indicator evaluation value of the template recommendation indicator of the message template to be recommended; push the message template to be recommended and the indicator evaluation value to the merchant, so that the indicator evaluation value can be displayed on the merchant side. For example, based on the estimation model, the application server estimates that for the user group of merchant A, the estimated number of clicks of message template 3 is 30,000 times, and the average single-person estimated click rate is 0.2. Then, when pushing the model, the estimated click rate and the single-person estimated click rate can be pushed to the merchant side together, and these indicator evaluation values can be displayed on the merchant side together with the message template currently being used by the merchant, so that the merchant can directly compare various message templates, thereby making a choice that better meets the needs of the merchant and improving the user experience. Figure 3 As shown, Figure 3 This is a schematic diagram of displaying message templates on the merchant side provided in the embodiments of this specification.
[0065] In one embodiment, when the application server pushes message templates to the third type of merchants, the message templates to be recommended can also be filtered based on the model evaluation index. That is, the actual click-through rate of the message template currently used by the merchant is determined; the message template with the highest estimated click-through rate and the estimated click-through rate greater than the actual click-through rate is determined as the message template to be recommended.
[0066] For example, the application server detects that the actual click rate of the message template currently used by the merchant is 50,000 times, and the three message templates with the highest estimated click rates are 60,000 times, 40,000 times, and 30,000 times, respectively. In this case, the application server can cancel the push of the latter two message templates and only recommend the message template with the highest ranking of 60,000 times (i.e., the message template with an actual click rate exceeding 50,000 times) to meet the actual needs of the merchant.
[0067] In a second aspect, the embodiments of this specification also provide a device for recommending message templates. Figure 4 As shown, Figure 4 A schematic diagram of a message template recommendation device provided in an embodiment of the present specification, wherein the message template recommendation device includes:
[0068] The merchant type determination module 401 determines the historical frequency of the merchant using the message template, and determines the merchant type of the merchant according to the historical frequency, wherein the merchant type includes a first type whose historical frequency of using the message template is zero;
[0069] The recommendation index determination module 403 determines the template recommendation index corresponding to the merchant type, wherein different merchant types correspond to different template recommendation indexes;
[0070] An acquisition module 405 is configured to acquire a message template to be recommended that meets the template recommendation index;
[0071] Push module 407, pushing the message template to be recommended to the merchant;
[0072] The evaluation module 409 evaluates the adaptability of the pushed message template to the first type of merchant according to the user's activity level in the merchant's interface of the mini program.
[0073] Optionally, when the merchant type determination module 401 determines that the merchant type is the first type; correspondingly, the recommendation index determination module 403 determines that the popularity is the template recommendation index corresponding to the first type, wherein the popularity is used to characterize the number of times the message template is used;
[0074] When the merchant's historical frequency of using the message template is greater than M, the merchant type determination module 401 determines that the merchant type is the second type; accordingly, the recommendation index determination module 403 determines the estimated click rate as the template recommendation index corresponding to the second type, wherein the estimated click rate is used to represent the total number of times the message template may be clicked by the merchant's users;
[0075] When the historical frequency of a merchant using a message template is greater than zero and does not exceed M, the merchant type determination module 401 determines that the merchant type is the third type; correspondingly, the recommendation index determination module 403 determines that the popularity and estimated click-through rate are template recommendation indicators corresponding to the third type.
[0076] Optionally, when the merchant type is the first type, the acquisition module 405 determines the industry type to which the merchant belongs, and obtains the industry message template corresponding to the industry type; determines the frequency of use of each industry message template in the industry type, and determines the industry message template ranked at the top in terms of frequency of use as the message template to be recommended.
[0077] Optionally, when the merchant type is the second type, the acquisition module 405 determines the user set to which the merchant will push messages; for any message template, estimates the click probability of any user in the user set on the message template; determines the estimated click rate of the message template based on the click probability of all users in the user set on the message template; and determines the message template with the highest estimated click rate as the message template to be recommended.
[0078] Optionally, the acquisition module 405 determines the actual click rate of the message template currently used by the merchant; and determines the message template with the highest estimated click rate and the estimated click rate greater than the actual click rate as the message template to be recommended.
[0079] Optionally, the acquisition module 405 acquires application characteristics of the application used by the merchant when pushing messages; for any message template, determines the message template characteristics of the message template; for any user, determines the user characteristics and cross-characteristics of the user, wherein the cross-characteristics at least include the user's usage characteristics of the application and the user's usage characteristics of the message template; fuses the application characteristics, the message template characteristics, the user characteristics and the cross-characteristics to generate mapping characteristics; and based on the mapping characteristics, uses a pre-trained prediction model to determine the user's click probability on the message template.
[0080] Optionally, the acquisition module 405 uses a text convolutional network model to extract a first feature vector of the message template feature; uses a deep neural network model to extract a second feature vector of the application feature, the user feature and the cross feature; and merges the first feature vector and the second feature vector to generate a mapping feature.
[0081] Optionally, the push module 407 obtains an indicator evaluation value of a template recommendation indicator of the message template to be recommended; and pushes the message template to be recommended and the indicator evaluation value to the merchant, so as to display the indicator evaluation value at the merchant end.
[0082] In a third aspect, the embodiments of this specification also provide an electronic device, such as Figure 5 As shown, Figure 5 A structural diagram of an electronic device provided for an embodiment of the present specification, the device comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor so that the at least one processor can execute the method described in the first aspect.
[0083] In the fourth aspect, based on the same idea, the embodiment of this specification also provides a non-volatile computer storage medium corresponding to the above method, storing computer executable instructions. When the computer reads the computer executable instructions in the storage medium, the instructions enable one or more processors to execute the method described in the first aspect.
[0084] In the 1990s, it was very clear whether the improvement of a technology was hardware improvement (for example, improvement of the circuit structure of diodes, transistors, switches, etc.) or software improvement (improvement of the method flow). However, with the development of technology, many improvements of the method flow today can be regarded as direct improvements of the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that the improvement of a method flow cannot be implemented with hardware entity modules. For example, a programmable logic device (PLD) (such as a field programmable gate array (FPGA)) is such an integrated circuit whose logical function is determined by the user's programming of the device. Designers can "integrate" a digital system on a PLD by programming it themselves, without having to ask chip manufacturers to design and make dedicated integrated circuit chips. Moreover, nowadays, instead of manually making integrated circuit chips, this kind of programming is mostly implemented by "logic compiler" software, which is similar to the software compiler used when developing and writing programs, and the original code before compilation must also be written in a specific programming language, which is called hardware description language (HDL). There is not only one kind of HDL, but many kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also know that it is only necessary to program the method flow slightly in the above-mentioned hardware description languages and program it into the integrated circuit, and then it is easy to obtain the hardware circuit that implements the logic method flow.
[0085] The controller may be implemented in any suitable manner, for example, the controller may take the form of a microprocessor or processor and a computer-readable medium storing a computer-readable program code (e.g., software or firmware) executable by the (micro)processor, a logic gate, a switch, an application-specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller, examples of which include but are not limited to the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320, and the memory controller may also be implemented as part of the control logic of the memory. It is also known to those skilled in the art that, in addition to implementing the controller in a purely computer-readable program code manner, the controller may be implemented in the form of a logic gate, a switch, an application-specific integrated circuit, a programmable logic controller, and an embedded microcontroller by logically programming the method steps. Therefore, such a controller may be considered as a hardware component, and the devices for implementing various functions included therein may also be considered as structures within the hardware component. Or even, the devices for implementing various functions may be considered as both software modules for implementing the method and structures within the hardware component.
[0086] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
[0087] For the convenience of description, the above device is described in various units according to their functions. Of course, when implementing this specification, the functions of each unit can be implemented in the same or multiple software and / or hardware.
[0088] Those skilled in the art will appreciate that the embodiments of this specification may be provided as methods, systems, or computer program products. Therefore, the embodiments of this specification may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the embodiments of this specification may take the form of a computer program product 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 codes.
[0089] This specification is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of this specification. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0090] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0091] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process in the computer or other programmable device. Figure 1 A process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0092] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0093] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.
[0094] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0095] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0096] This specification may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. This specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.
[0097] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the device, equipment, and non-volatile computer storage medium embodiments, since they are basically similar to the method embodiments, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0098] The above is a description of a specific embodiment of the specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0099] The above description is only one or more embodiments of this specification and is not intended to limit this specification. For those skilled in the art, one or more embodiments of this specification may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of one or more embodiments of this specification shall be included in the scope of the claims of this specification.
Claims
1. A message template recommendation method, applied to a mini program, comprising: Determine a historical frequency of using the message template by the merchant, and determine a merchant type of the merchant according to the historical frequency, wherein the merchant type includes a first type whose historical frequency of using the message template is zero; Determine the template recommendation index corresponding to the merchant type, wherein different merchant types have different template recommendation indexes corresponding to them; Acquire a message template to be recommended that meets the template recommendation index, and push the message template to be recommended to the merchant; According to the user's activity level in the merchant's interface of the mini program, evaluating the adaptability of the pushed message template to the merchant of the first type; Wherein, determining the merchant type of the merchant according to the historical frequency of the merchant using the message template includes: When the merchant type is the first type; accordingly, determining the template recommendation index corresponding to the merchant type includes: determining the popularity as the template recommendation index corresponding to the first type, wherein the popularity is used to characterize the number of times the message template is used; and / or, When the merchant's historical frequency of using the message template is greater than M, the merchant type is determined to be the second type; accordingly, the determining of the template recommendation index corresponding to the merchant type includes: determining an estimated click-through rate as the template recommendation index corresponding to the second type, wherein the estimated click-through rate is used to represent the total number of times the message template may be clicked by the merchant's users; and / or, When the historical frequency of a merchant using a message template is greater than zero and does not exceed M, the merchant type is determined to be the third type; accordingly, determining the template recommendation index corresponding to the merchant type includes: determining popularity and estimated click-through rate as template recommendation indexes corresponding to the third type.
2. The method of claim 1, wherein: When the merchant type is the first type, obtaining a message template to be recommended that meets the template recommendation index includes: Determine the industry type to which the merchant belongs, and obtain the industry message template corresponding to the industry type; The usage frequency of each industry message template in the industry type is determined, and the industry message template ranked at the top in usage frequency is determined as the message template to be recommended.
3. The method of claim 1, wherein: When the merchant type is the second type, obtaining a message template to be recommended that meets the template recommendation index includes: Determine the set of users to which the merchant will push messages; For any message template, estimate the click probability of any user in the user set on the message template; Determining an estimated click rate of the message template according to the click probability of the message template by all users in the user set; The message templates with the highest estimated click-through rates are determined as the message templates to be recommended.
4. The method of claim 3, wherein: The message templates with the highest estimated click-through rates are determined as the message templates to be recommended, including: Determine an actual click-through rate of a message template currently used by the merchant; The message templates with the highest estimated click-through rates and whose estimated click-through rates are greater than the actual click-through rates are determined as the message templates to be recommended.
5. The method of claim 3, wherein: For any message template, estimating the click probability of any user in the user set on the message template includes: Obtaining application characteristics of the application used by the merchant when pushing messages; For any message template, determining a message template feature of the message template; For any user, determining the user characteristics and cross characteristics of the user, wherein the cross characteristics at least include the usage characteristics of the user for the application and the usage characteristics of the user for the message template; Fusion of the application feature, the message template feature, the user feature and the cross feature to generate a mapping feature; According to the mapping features, a pre-trained estimation model is used to determine the probability of the user clicking on the message template.
6. The method of claim 5, wherein: Fusion of the application feature, the message template feature, the user feature, and the cross feature to generate a mapping feature includes: A text convolutional network model is used to extract a first feature vector of the message template feature; A deep neural network model is used to extract a second feature vector of the application feature, the user feature and the cross feature; The first feature vector and the second feature vector are combined to generate a mapping feature.
7. The method of claim 1, wherein: Pushing the message template to be recommended to the merchant includes: Obtaining an indicator evaluation value of a template recommendation indicator of the message template to be recommended; Push the message template to be recommended and the indicator evaluation value to the merchant, so as to display the indicator evaluation value on the merchant side.
8. A message template recommendation device, applied to a mini program, comprising: A merchant type determination module, which determines a historical frequency of a merchant using a message template, and determines a merchant type of the merchant according to the historical frequency, wherein the merchant type includes a first type whose historical frequency of using a message template is zero; A recommendation index determination module determines the template recommendation index corresponding to the merchant type, wherein different merchant types have different template recommendation indexes. An acquisition module is used to acquire a message template to be recommended that meets the template recommendation index; A push module pushes the message template to be recommended to the merchant; An evaluation module, which evaluates the adaptability of the pushed message template to the first type of merchant according to the user's activity level in the merchant interface of the mini program; When the merchant type determination module determines that the merchant type is the first type, the recommendation index determination module determines the popularity as the template recommendation index corresponding to the first type, wherein the popularity is used to characterize the number of times the message template is used; and / or When the merchant's historical frequency of using the message template is greater than M, the merchant type determination module determines that the merchant type is the second type; correspondingly, the recommendation index determination module determines the estimated click-through rate as the template recommendation index corresponding to the second type, wherein the estimated click-through rate is used to represent the total number of times the message template may be clicked by the merchant's users; and / or, When the historical frequency of a merchant using a message template is greater than zero and does not exceed M, the merchant type determination module determines that the merchant type is the third type; correspondingly, the recommendation index determination module determines that popularity and estimated click-through rate are template recommendation indicators corresponding to the third type.
9. The device of claim 8, wherein: When the merchant type is the first type, the acquisition module determines the industry type to which the merchant belongs, and acquires the industry message template corresponding to the industry type; determines the frequency of use of each industry message template in the industry type, and determines the industry message template ranked at the top in terms of frequency of use as the message template to be recommended.
10. The device of claim 8, wherein: When the merchant type is the second type, the acquisition module determines the user set to which the merchant will push messages; for any message template, estimates the click probability of any user in the user set for the message template; determines the estimated click rate of the message template based on the click probability of all users in the user set for the message template; and determines the message template with the highest estimated click rate as the message template to be recommended.
11. The device of claim 10, wherein: The acquisition module determines the actual click rate of the message template currently used by the merchant; and determines the message template with the highest estimated click rate and the estimated click rate greater than the actual click rate as the message template to be recommended.
12. The device of claim 10, wherein: The acquisition module acquires application characteristics of the application used by the merchant when pushing messages; For any message template, determining a message template feature of the message template; For any user, the user characteristics and cross-features of the user are determined, wherein the cross-features at least include the user's usage characteristics of the application and the user's usage characteristics of the message template; the application characteristics, the message template characteristics, the user characteristics and the cross-features are integrated to generate mapping characteristics; based on the mapping characteristics, a pre-trained estimation model is used to determine the user's click probability on the message template.
13. The device of claim 12, wherein: The acquisition module uses a text convolutional network model to extract a first feature vector of the message template feature; uses a deep neural network model to extract a second feature vector of the application feature, the user feature and the cross feature; and merges the first feature vector and the second feature vector to generate a mapping feature.
14. The device of claim 8, wherein: The push module obtains the index evaluation value of the template recommendation index of the message template to be recommended; and pushes the message template to be recommended and the index evaluation value to the merchant, so as to display the index evaluation value on the merchant side.
15. An electronic device, comprising: at least one processor; as well as, a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Method and apparatus for promotion template generation
US20200302488A1
