A preference degree determination method, device, storage medium and electronic device
Patent Information
- Application Number
- CN202210350861.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-02
- Publication Date
- 2026-09-25
- Estimated Expiration
- 2042-04-02
AI Technical Summary
在这种多维度多场景的情况下,采用现有的模型将所有用户的历史数据糅合在一起进行分析所得到的结果完全不能反映出各场景下的差异,并且该结果很可能并不适用于任何一个单独的场景
[0053]在本说明书提供的偏好程度确定方法中,首先根据不同场景确定出不同的维度,并在各维度中确定出目标维度与其它维度,同时确定出用户在目标维度下所处的第一场景以及在其他维度下所处的第二场景;采用预先训练的模型,根据用户、第一场景的信息以及目标信息提取出若干基本特征,并在预设的各特征权重中选择出与第一场景以及第二场景相对应的特征权重,采用选择出的特征权重对基本特征进行加权,得到加权特征,并根据加权特征确定用户对目标信息的偏好程度。本方法针对不同的场景分别采用不同的权重,体现出了每个场景的特性,使用户处于不同场景下时可得到不同的对目标信息偏好程度,客观地反映出了现实世界中真实的数据分布情况。
Smart Images

Figure CN114943551B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the field of Internet technology, and in particular to a method, apparatus, storage medium, and electronic device for determining preference levels. Background Technology
[0002] Today, methods for extracting information through big data are widely used. Among them, feeding a large amount of data into a trained model for analysis and information extraction is one of the most common methods.
[0003] Most traditional models tend to process data using a homogeneous distribution, meaning they assume all data falls under the same scenario without considering different scenarios or fitting all scenarios into a single large scenario. However, in the real world, data distribution is often mixed and multi-distributed. For example, when users perform the same behavior, the data distribution can vary significantly depending on the city and time of day.
[0004] Taking the determination of user preferences for different merchants on e-commerce platforms as an example, people in different cities may have different preferences or needs due to environmental factors, and the degree of demand for different merchants may also vary at different times. In this multi-dimensional and multi-scenario context, the results obtained by using existing models to combine all users' historical data for analysis cannot reflect the differences in each scenario, and the results may not be applicable to any single scenario.
[0005] It can be seen that existing technologies have difficulty solving the problem that traditional modeling cannot adapt to the objective distribution of real data. Summary of the Invention
[0006] This specification provides a method, apparatus, storage medium, and electronic device for determining preference levels, to at least partially solve the aforementioned problems existing in the prior art.
[0007] The following technical solution is adopted in this specification:
[0008] This specification provides a method for determining preference levels, including:
[0009] Obtain user information and target information; determine preset dimensions for different scenarios, identify the target dimension among the preset dimensions, and use the dimensions other than the target dimension as other dimensions; determine the first scenario in which the user is currently located under the target dimension and the second scenario in which the user is currently located under the other dimensions;
[0010] The user, the information of the first scenario, and the target information are input into a pre-trained model to extract several basic features;
[0011] Based on the second scenario, the feature weights corresponding to the second scenario are determined from each preset feature weight and used as available feature weights;
[0012] Select the feature weights corresponding to the first scenario from among the available feature weights;
[0013] The basic features are weighted using the selected feature weights corresponding to the first scenario to obtain weighted features;
[0014] Based on the weighted features, the user's preference for the target information is determined.
[0015] Optionally, based on the weighted features, the degree of user preference for the target information is determined, specifically including:
[0016] The quality of the weighted features is determined by the quality assessment subnet in the model, wherein the quality is used to characterize the magnitude of the influence of the weighted features on the degree of user preference for the target information;
[0017] Based on the quality, determine the user's preference for the target information.
[0018] Optionally, the quality of the weighted features is determined through the quality assessment subnet in the model, specifically including:
[0019] The weighted features are evaluated by several evaluation layers in the quality evaluation subnet of the model to obtain several undetermined qualities, wherein the number of undetermined qualities is the same as the number of evaluation layers.
[0020] Select the undetermined masses other than the largest and smallest undetermined masses from the undetermined masses as the retained undetermined masses, and use the sum of the retained undetermined masses as the mass of the weighted feature.
[0021] Optionally, based on the quality, the user's preference for the target information is determined, specifically including:
[0022] Based on the second scenario, determine the higher-order feature weights corresponding to the second scenario from the preset higher-order feature weights, and use them as available higher-order feature weights.
[0023] Select the higher-order feature weights corresponding to the first scenario from among the available higher-order feature weights;
[0024] The quality is weighted by using the selected higher-order feature weights corresponding to the first scenario to obtain the weighted quality;
[0025] Based on the weighted quality, the user's preference for the target information is determined.
[0026] Optional, pre-trained models, specifically including:
[0027] Obtain information about sample users and sample target information; determine each preset dimension for different scenarios, identify the target dimension among the dimensions, and take the dimensions other than the target dimension as other dimensions; determine the first scenario in which the sample user was historically located under the target dimension and the second scenario in which the sample user was historically located under the other dimensions.
[0028] The sample user, the information of the first scenario, and the sample target information are input into the model to be trained to extract several basic features;
[0029] Based on the second scenario, the feature weights to be optimized corresponding to the second scenario are determined from each feature weight to be optimized, and these are used as available feature weights to be optimized.
[0030] Select the feature weights corresponding to the first scenario from the available feature weights to be optimized;
[0031] The basic features are weighted using the selected feature weights corresponding to the first scenario to obtain the weighted features to be optimized;
[0032] Based on the weighted features to be optimized, determine the degree of preference of the sample users for the target information to be optimized;
[0033] The model is trained with the optimization objective of minimizing the difference between the actual preference of the sample users for the target information in the historical data and the preference to be optimized.
[0034] Optionally, based on the weighted features to be optimized, the degree of preference of the sample users for the target information to be optimized is determined, specifically including:
[0035] The degree of undetermined preference is determined based on the weighted features to be optimized.
[0036] The basic features are weighted using global feature weights to obtain weighted global features, wherein the global feature weights are determined based on the preset dimensions.
[0037] The global preference level of the sample users for the sample target information is determined based on the weighted global features.
[0038] The global preference level is used to adjust the undetermined preference level to obtain the preference level to be optimized.
[0039] Optionally, the global preference level is used to adjust the undetermined preference level to obtain the preference level to be optimized, specifically including:
[0040] Obtain the difference between the global preference level and the undetermined preference level;
[0041] The adjustment value is obtained by multiplying the difference by a preset adjustment coefficient;
[0042] The sum of the adjustment value and the degree of preference to be determined is the degree of preference to be optimized.
[0043] This specification provides a preference determination device, the device comprising:
[0044] The scenario determination module acquires user information and target information; determines various preset dimensions for different scenarios, identifies the target dimension among these dimensions, and uses the dimensions other than the target dimension as other dimensions; and determines the first scenario in which the user is currently located under the target dimension and the second scenario in which the user is currently located under the other dimensions.
[0045] The feature extraction module inputs the user, the information of the first scene, and the target information into a pre-trained model to extract several basic features;
[0046] The weight determination module determines the feature weights corresponding to the second scenario from each preset feature weight, based on the second scenario, and uses them as available feature weights.
[0047] The first selection module selects the feature weights corresponding to the first scenario from the available feature weights.
[0048] The second selection module uses the selected feature weights corresponding to the first scenario to weight the basic features to obtain weighted features;
[0049] The preference determination module determines the user's preference level for the target information based on the weighted features.
[0050] This specification provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described method for determining preference levels.
[0051] This specification provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the above-described method for determining preference levels.
[0052] The above-mentioned technical solutions adopted in this specification can achieve the following beneficial effects:
[0053] The method for determining preference levels provided in this specification first identifies different dimensions based on different scenarios, and within each dimension, a target dimension and other dimensions are determined. Simultaneously, the first scenario in which the user is situated under the target dimension and the second scenario in which they are situated under the other dimensions are identified. Using a pre-trained model, several basic features are extracted based on user, first scenario, and target information. Feature weights corresponding to the first and second scenarios are selected from preset feature weights. These selected feature weights are then used to weight the basic features, resulting in weighted features. The user's preference level for the target information is determined based on these weighted features. This method employs different weights for different scenarios, reflecting the characteristics of each scenario and allowing users to obtain different levels of preference for the target information in different scenarios, objectively reflecting the real-world data distribution. Attached Figure Description
[0054] The accompanying drawings, which are included to provide a further understanding of this specification and form part of this specification, illustrate exemplary embodiments and are used to explain this specification, but do not constitute an undue limitation thereof. In the drawings:
[0055] Figure 1 This is a flowchart illustrating one method for determining preference levels in this specification;
[0056] Figure 2 This is a schematic diagram of the structure of one model in this specification;
[0057] Figure 3 This is a schematic diagram of another model in this specification;
[0058] Figure 4 This is a schematic diagram of the structure of one of the models in this specification during training;
[0059] Figure 5 This is a schematic diagram of the training structure of another model in this specification;
[0060] Figure 6 This is a schematic diagram of a preference determination device provided in this specification;
[0061] Figure 7 The corresponding information provided in this specification Figure 1 A schematic diagram of an electronic device. Detailed Implementation
[0062] Currently, when using models to determine a user's preference for a certain type of target information, the vast majority of models are trained by directly inputting a large amount of historical data into the model without any distinction, without considering the impact of different scenarios on the training results. This results in existing models usually only reflecting a general and approximate situation, and the results are often inaccurate when it comes to a specific scenario.
[0063] If current training methods are used, obtaining user preference levels in a specific scenario requires retraining a model using data from that scenario. However, in reality, scenarios are highly complex, and training a separate model for each scenario with a large number of scenarios is extremely time-consuming and labor-intensive, practically impossible. Therefore, to address the problem of traditional models' inability to adapt to objective, real-world data distributions, this specification proposes a method for determining preference levels under multi-dimensional, multi-scenario modeling.
[0064] To make the objectives, technical solutions, and advantages of this specification clearer, the technical solutions of this specification will be clearly and completely described below in conjunction with specific embodiments and corresponding drawings. Obviously, the described embodiments are only a part of the embodiments of this specification, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments in this specification without creative effort are within the scope of protection of this application.
[0065] The technical solutions provided in the various embodiments of this specification are described in detail below with reference to the accompanying drawings.
[0066] Figure 1 This is a flowchart illustrating one method for determining preference levels in this specification, which specifically includes the following steps:
[0067] S100: Obtain user information and target information; determine preset dimensions for different scenarios, determine the target dimension among the preset dimensions, and take the dimensions other than the target dimension as other dimensions; determine the first scenario in which the user is currently located under the target dimension and the second scenario in which the user is currently located under the other dimensions.
[0068] All steps in the preference determination method provided in this specification can be implemented by any electronic device with computing capabilities, such as servers, terminals, etc.
[0069] Before implementing this method, several dimensions will be pre-defined for different scenarios. A dimension refers to different types of scenarios, which can include the user's real-world environment, such as time and location, as well as the user's device environment, such as the software / hardware used. A scenario refers to the specific situations under a dimension. For example, the time dimension can include time periods such as morning, noon, and evening, as well as time points such as 1 PM, 2 PM, and 3 PM. The location dimension can include city scenarios such as Beijing, Shanghai, and Guangzhou, as well as location scenarios such as Company A, School B, and Home C. The dimensions and scenarios in this manual may also include many other situations, which will not be elaborated upon here.
[0070] In this specification, user information can be user profiles and user behavior, including but not limited to user gender, age, employment status, family situation, various operations performed by the user, and the various dimensions of the scenario in which the user is when executing this method; target information is the object of user preference, that is, the result achieved by this method is to determine the user's preference for target information. Target information can be any information that the user can interact with, including but not limited to merchants, videos, and terms.
[0071] It should be noted that all actions involving user information in this manual, such as obtaining and using user information, are legal and will only be carried out with the user's consent.
[0072] After obtaining user and target information, the system selects the desired dimension from a set of preset dimensions as the target dimension. Subsequent steps primarily differentiate scenarios within the target dimension. Dimensions other than the target dimension are designated as "other dimensions" and further differentiated in subsequent steps. Simultaneously, the system determines the user's current scenario within the target dimension as the first scenario and the user's current scenario within the other dimensions as the second scenario. For example, if a user is in Beijing at noon, location can be designated as the target dimension, meaning the user's current scenario "Beijing" within the target dimension is designated as the first scenario, and time can be designated as an "other dimension," meaning the user's current scenario "noon" within the other dimensions is designated as the second scenario.
[0073] S102: Input the information of the user, the first scenario, and the target information into a pre-trained model to extract several basic features.
[0074] The model structure used in this method can be as follows: Figure 2 As shown, the model includes: a feature extraction subnet, a feature weighting subnet, and an output subnet.
[0075] The user information, first scene information, and target information obtained in step S100 are input into a pre-trained model. Several basic features are extracted through the model's feature extraction subnetwork. These basic features include, but are not limited to, user profile features, user behavior features, target information features, contextual features, and first scene features. The first scene features are used to label the current user's scene within the target dimension.
[0076] S104: Based on the second scenario, determine the feature weights corresponding to the second scenario from the preset feature weights, and use them as available feature weights.
[0077] In this method, several feature weights are pre-trained and stored in a feature weight subnet. To fully reflect the different impacts of features on the results under different dimensions and scenarios, this method pre-defines a feature weight for each cross-scenario. Here, a cross-scenario refers to the combination of scenarios with different dimensions. Using the example above, when the target dimension is location and other dimensions are time, the cross-scenario can be Beijing + morning, Beijing + noon, Beijing + evening, Shanghai + morning, Shanghai + noon, Shanghai + evening, Guangzhou + morning, Guangzhou + noon, Guangzhou + evening, and so on—nine possibilities in total.
[0078] Therefore, when filtering feature weights, a two-step filtering process can be performed. First, the feature weights corresponding to the second scenario are determined from the preset feature weights and used as available feature weights.
[0079] S106: Select the feature weights corresponding to the first scenario from the available feature weights.
[0080] Following step S104 above, the second step of filtering can then be performed to determine the feature weights corresponding to the first scenario from among the available feature weights.
[0081] Continuing with the previous example, if the current user's first scenario is Beijing and the second scenario is noon, then in step S104, firstly, three feature weights corresponding to noon will be selected from the nine feature weights corresponding to the nine cross-scenarios, namely the feature weights corresponding to the three cross-scenarios of Beijing + noon, Shanghai + noon, and Guangzhou + noon. Then, the feature weights corresponding to Beijing will be selected from the above three feature weights, namely the feature weights corresponding to the cross-scenario of Beijing + noon.
[0082] S108: The basic features are weighted using the selected feature weights corresponding to the first scenario to obtain weighted features.
[0083] Since the model can extract multiple basic features each time information is input, the feature weights in this specification can be a set of coefficients, i.e., the feature weights can be viewed as a vector. A single feature weight can contain multiple weight values, where the number of weight values is the same as the number of basic features extracted by the model; that is, each basic feature corresponds to one weight value. The weight value represents the degree of influence of its corresponding basic feature on the preference level in the current first and second scenarios. For example, if the basic features include user age, user gender, and user occupation, then a single feature weight will contain three weight values, corresponding to the aforementioned three basic features respectively.
[0084] Furthermore, there are multiple methods for determining the weight values in a feature weight. This specification provides one example: when determining the weight values of a feature weight, each weight value can be between [0, 2], and the average of all weight values can be 1. Besides the method described above, other methods can also be used to determine the weight values in a feature weight, and this specification does not impose any restrictions on them.
[0085] When weighting the basic features using the selected feature weights, the weighted features are obtained by multiplying each weight value in the feature weights with the corresponding basic feature.
[0086] S110: Determine the user's preference level for the target information based on the weighted features.
[0087] Based on the weighted features obtained in step S108, the user's preference level for the target information is determined through the output subnet of the model. At this point, the user's preference level for the target information should be the user's preference level for the target information in both the first and second scenarios. This preference level can be represented in various ways, such as specific data like the user's click-through rate or order rate for the target information, or a value set according to requirements; this specification does not limit this representation.
[0088] When using this method to determine a user's preference for target information, weights for each cross-scenario can be trained in advance. Different weights are then selected based on the user's current first or second scenario to weight the basic features, and the preference level is obtained from the weighted features. This allows for the use of different weighting methods for different dimensions and scenarios, resulting in a more refined, accurate, and realistic preference level, thus solving the problem that existing models cannot adapt to objective real-world data distributions.
[0089] It is worth mentioning that after extracting several basic features in step S102, the basic features can be spliced together to facilitate subsequent weighting and other processing.
[0090] In practical applications, the model structure used in this method can also be as follows: Figure 3 As shown, the model includes: a feature extraction subnet, a feature weighting subnet, a quality assessment subnet, and an output subnet. The function of the feature extraction subnet is the same as in step S102 above, and will not be repeated here.
[0091] After determining the weighted features using the same method as in steps S104 to S108, the weighted features can be further evaluated for quality, and the final degree of preference can be determined based on the evaluated quality. Specifically, the quality of the weighted features can be determined through the quality evaluation subnet in the model, whereby the quality characterizes the magnitude of the influence of the weighted features on the user's degree of preference for the target information; based on the quality, the user's degree of preference for the target information is determined. The quality of a weighted feature characterizes the degree of dependence of the determined degree of preference on that weighted feature. The degree of dependence of the degree of preference differs depending on different types of weighted features, and also differs depending on different values of the same type of weighted feature. For example, when the type of weighted feature is user age, the specific content of the weighted feature can be 18 years old or 40 years old. When the user age is 18 years old and 40 years old respectively, the degree of dependence of the determined degree of preference on the weighted feature of user age is not the same, thus the quality given in the quality evaluation subnet will also be different.
[0092] Therefore, based on assigning different weights to features according to different scenarios, the specific content of each weighted feature can be further evaluated, and a more refined, discriminative, and accurate preference can be obtained based on the quality.
[0093] When determining the quality of a weighted feature in a quality assessment subnet, various methods can be used. This specification provides one example. Similar to scoring in a competition, the weighted feature can be assessed through several assessment layers in the quality assessment subnet of the model, resulting in several undetermined qualities, wherein the number of undetermined qualities is the same as the number of assessment layers. From these undetermined qualities, all but the largest and smallest undetermined qualities are selected as retained undetermined qualities, and the sum of these retained undetermined qualities is taken as the quality of the weighted feature. Other methods can also be used to obtain the quality of the weighted feature, which are not limited here.
[0094] It is worth noting that when the model has a deep network, information obtained from relatively early network layers may be lost. To avoid this, the quality obtained in the quality assessment subnet can be weighted again, and the user's preference for the target information can be determined based on the weighted quality. Specifically, based on the second scenario, high-order feature weights corresponding to the second scenario can be determined from preset high-order feature weights as available high-order feature weights; high-order feature weights corresponding to the first scenario can be selected from the available high-order feature weights; the quality can be weighted using the selected high-order feature weights corresponding to the first scenario to obtain weighted quality; and the user's preference for the target information can be determined based on the weighted quality.
[0095] At this point, the feature weight subnet contains not only the feature weights used in the first weighting but also the higher-order feature weights used in the second weighting. For clarity, this specification refers to the feature weights used in the first weighting as lower-order feature weights. The method for selecting these weights in the model is the same: first determine the weights corresponding to the second scene, then determine the weights corresponding to the first scene. It's important to note that the weights used in the two weightings are not the same. Therefore, to avoid errors during matching, each scene in other dimensions can be assigned a different scene ID. When selecting lower-order feature weights for the first time, the available lower-order feature weights corresponding to the second scene can be determined based on the scene ID of the second scene. When selecting higher-order feature weights for the second time, the scene ID can be shifted, and the available higher-order feature weights corresponding to the second scene can be determined based on the shifted scene ID. This avoids selecting incorrect weights due to using the same method in both selections.
[0096] When training the model in this manual, the following methods can be used: Figure 4 The model structure shown includes: a feature extraction subnetwork, a feature weighting subnetwork, an auxiliary subnetwork, and an output subnetwork.
[0097] When training this model, information about sample users and sample target information can be obtained; pre-defined dimensions for different scenarios can be determined, and target dimensions can be identified among these dimensions, with other dimensions being designated as other dimensions; the first scenario in which the sample user was historically located under the target dimension and the second scenario in which the sample user was historically located under the other dimensions can be determined; the information about the sample user, the first scenario, and the sample target information can be input into the model to be trained to extract several basic features; based on the second scenario, the corresponding feature weights to be optimized can be determined from each feature weight to be optimized, serving as available feature weights to be optimized; the feature weights to be optimized corresponding to the first scenario can be selected from the available feature weights to be optimized; the basic features can be weighted using the selected feature weights to be optimized corresponding to the first scenario to obtain weighted features to be optimized; the degree of preference of the sample user for the sample target information can be determined based on the weighted features to be optimized; the model is trained with the optimization objective of minimizing the difference between the sample user's true preference for the sample target information in historical data and the degree of preference to be optimized. During training, the parameters in the feature weight subnet and the output subnet will be adjusted.
[0098] The true preference level in the above training process is obtained based on the actual operations performed by sample users in history, such as whether the sample users clicked, placed orders, or performed other operations on the sample target information. In practice, the global preference level obtained without distinguishing dimensions or scenarios can more or less reflect the preference level in each cross-scenario. Therefore, in order to ensure that the model's results in different cross-scenarios maintain commonality, the global preference level obtained in the auxiliary subnet can be used for auxiliary training. Specifically, the undetermined preference level can be determined based on the weighted features to be optimized; the basic features can be weighted using global feature weights to obtain weighted global features, wherein the global feature weights are determined based on the preset dimensions, that is, feature weights determined based on all dimensions without distinguishing between dimensions and scenarios; the global preference level of the sample user on the sample target information can be determined based on the weighted global features; the undetermined preference level can be adjusted using the global preference level to obtain the preference level to be optimized.
[0099] In addition, when the network to be trained contains a quality evaluation subnet, methods such as... can also be used. Figure 5 The model structure shown is used to train the model, which includes: a feature extraction subnetwork, a feature weighting subnetwork, a quality assessment subnetwork, an auxiliary subnetwork, and an output subnetwork.
[0100] Specifically, when a quality evaluation subnet exists in the network to be trained, in addition to the other steps being the same as the training method described above, after determining the weighted features to be optimized, the quality to be optimized is determined through the quality evaluation subnet based on these weighted features. Then, the higher-order features corresponding to the first and second scene features are selected from the weights of each higher-order feature to be optimized. These selected higher-order features are used to weight the quality to be optimized, resulting in the weighted quality to be optimized. Based on the weighted quality to be optimized, the degree of preference to be optimized is obtained through the output subnet. During the training of this model, the parameters in the feature weight subnet, the quality evaluation subnet, and the output subnet are adjusted.
[0101] Similarly, when there is a quality evaluation subnet in the network to be trained, the global feature weights in the auxiliary subnet will be changed to global quality weights. The quality obtained in the quality evaluation subnet is weighted using the global quality weights to obtain the weighted global quality. The global preference degree is obtained based on the obtained weighted global quality, and the global preference degree is used to adjust the desired preference degree to obtain the preference degree to be optimized.
[0102] It should be noted that the network in the auxiliary subnet is a pre-trained network, meaning that when basic features or quality are input into the auxiliary network, the accurate global preference level can be obtained directly.
[0103] There are several methods for adjusting the degree of preference to be determined using the global preference level. This specification provides one example: the difference between the global preference level and the degree of preference to be determined can be obtained; a preset adjustment coefficient can be multiplied by the difference to obtain an adjustment value; the sum of the adjustment value and the degree of preference to be determined is determined as the degree of preference to be optimized. The adjustment coefficient can be set according to specific needs.
[0104] The global preference level obtained in the auxiliary subnet is trained without any distinction between dimensions and scenarios. This global preference level can actually reflect the preference level in each cross scenario to some extent. Therefore, the purpose of using the global preference level to adjust the desired preference level is to ensure that the desired preference level in each cross scenario has a certain commonality.
[0105] In other words, adjusting the desired preference level using the global preference level in the auxiliary module is a knowledge transfer process. During this process, the desired preference level can learn the global nature of the global preference level. Therefore, the auxiliary subnet in the above model structure only exists during model training. In actual use, the auxiliary subnet is not needed; that is, the auxiliary subnet does not exist when the model is actually used.
[0106] The above describes the method for determining preference levels provided in this manual. Based on the same approach, this manual also provides a corresponding device for determining preference levels, such as... Figure 6 As shown.
[0107] Figure 6 A schematic diagram of a preference determination device provided in this specification specifically includes:
[0108] The scenario determination module 200 acquires user information and target information; determines various dimensions preset for different scenarios, identifies the target dimension among these dimensions, and uses the dimensions other than the target dimension as other dimensions; and determines the first scenario in which the user is currently located under the target dimension and the second scenario in which the user is currently located under the other dimensions.
[0109] The feature extraction module 202 inputs the information of the user, the first scene, and the target information into a pre-trained model to extract several basic features;
[0110] The weight determination module 204 determines the feature weights corresponding to the second scenario from each preset feature weight according to the second scenario, and uses them as available feature weights.
[0111] The first selection module 206 selects the feature weights corresponding to the first scenario from the available feature weights;
[0112] The second selection module 208 uses the selected feature weights corresponding to the first scenario to weight the basic features to obtain weighted features;
[0113] The preference determination module 210 determines the user's preference level for the target information based on the weighted features.
[0114] In an alternative embodiment:
[0115] The preference determination module 210 is specifically used to determine the quality of the weighted features through the quality assessment subnet in the model, wherein the quality is used to characterize the magnitude of the influence of the weighted features on the user's preference for the target information; and to determine the user's preference for the target information based on the quality.
[0116] In an alternative embodiment:
[0117] The preference determination module 210 is specifically used to evaluate the weighted feature through several evaluation layers in the quality evaluation subnet of the model to obtain several undetermined qualities, wherein the number of undetermined qualities is the same as the number of evaluation layers; select undetermined qualities other than the maximum undetermined quality and the minimum undetermined quality from each undetermined quality as the retained undetermined qualities, and use the sum of each retained undetermined quality as the quality of the weighted feature.
[0118] In an alternative embodiment:
[0119] The preference determination module 210 is specifically used to: determine, based on the second scenario, a high-order feature weight corresponding to the second scenario from a preset high-order feature weight, as an available high-order feature weight; select a high-order feature weight corresponding to the first scenario from among the available high-order feature weights; weight the quality using the selected high-order feature weight corresponding to the first scenario to obtain a weighted quality; and determine the user's preference degree for the target information based on the weighted quality.
[0120] In an alternative embodiment:
[0121] The device further includes a training module 212, specifically used to acquire sample user information and sample target information; determine preset dimensions for different scenarios, identify a target dimension among the dimensions, and use dimensions other than the target dimension as other dimensions; determine the first scenario in which the sample user was historically located under the target dimension and the second scenario in which the sample user was historically located under the other dimensions; input the sample user, the first scenario information, and the sample target information into the model to be trained to extract several basic features; determine the feature weights corresponding to the second scenario from the feature weights to be optimized, as available feature weights to be optimized, based on the second scenario; select the feature weights corresponding to the first scenario from the available feature weights to be optimized; weight the basic features using the selected feature weights corresponding to the first scenario to obtain weighted features to be optimized; determine the degree of preference of the sample user for the sample target information to be optimized based on the weighted features to be optimized; and train the model with the optimization objective of minimizing the difference between the sample user's true preference for the sample target information in historical data and the degree of preference to be optimized.
[0122] In an alternative embodiment:
[0123] The training module 212 is specifically used to determine the degree of undetermined preference based on the weighted features to be optimized; to weight the basic features using global feature weights to obtain weighted global features, wherein the global feature weights are determined based on the preset dimensions; to determine the global preference degree of the sample user for the sample target information based on the weighted global features; and to adjust the degree of undetermined preference using the global preference degree to obtain the degree of preference to be optimized.
[0124] In an alternative embodiment:
[0125] The training module 212 is specifically used to obtain the difference between the global preference level and the undetermined preference level; multiply the difference by a preset adjustment coefficient to obtain an adjustment value; and determine the sum of the adjustment value and the undetermined preference level as the preference level to be optimized.
[0126] This specification also provides a computer-readable storage medium storing a computer program that can be used to execute the above-described... Figure 1 The provided method for determining the degree of preference.
[0127] This instruction manual also provides Figure 7 The diagram shows a schematic structural representation of the electronic device. Figure 7 At the hardware level, the electronic device includes a processor, internal bus, network interface, memory, and non-volatile memory, and may also include other hardware required for the business operations. The processor reads the corresponding computer program from the non-volatile memory into memory and then runs it to achieve the above-mentioned functions. Figure 1 The method for determining the degree of preference is described above. Of course, in addition to software implementation, this specification does not exclude other implementation methods, such as logic devices or a combination of hardware and software, etc. In other words, the execution subject of the following processing flow is not limited to individual logic units, but can also be hardware or logic devices.
[0128] It should be noted that all actions involving the acquisition of signals, information, or data in this application are carried out in compliance with the relevant data protection laws and policies of the country where the application is located, and with the authorization granted by the owner of the relevant device.
[0129] In the 1990s, improvements to a technology could be clearly distinguished as either hardware improvements (e.g., improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the methodology). However, with technological advancements, many methodological improvements today can be considered direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved methodology into the hardware circuit. Therefore, it cannot be said that a methodological improvement cannot be implemented using hardware physical modules. For example, a Programmable Logic Device (PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user programming the device. Designers can program and "integrate" a digital system onto a PLD themselves, without needing chip manufacturers to design and manufacture dedicated integrated circuit chips. Furthermore, nowadays, instead of manually manufacturing integrated circuit chips, this programming is mostly implemented using "logic compiler" software. Similar to the software compiler used in program development, the original code before compilation must be written in a specific programming language, called a Hardware Description Language (HDL). There are many HDLs, 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, and RHDL (Ruby Hardware Description Language). Currently, the most commonly used are VHDL (Very-High-Speed Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should understand that by simply performing some logic programming on the method flow using one of these hardware description languages and programming it into an integrated circuit, the hardware circuit implementing the logical method flow can be easily obtained.
[0130] The controller can be implemented in any suitable manner. For example, it can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code form, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means included therein for implementing various functions can also be considered as structures within the hardware component. Alternatively, the means for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.
[0131] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, a computer can be, for example, a personal computer, laptop computer, cellular phone, camera phone, smartphone, personal digital assistant, media player, navigation device, email device, game console, tablet computer, wearable device, or any combination of these devices.
[0132] For ease of description, the above devices are described in terms of function, divided into various units. Of course, in implementing this specification, the functions of each unit can be implemented in one or more software and / or hardware components.
[0133] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied 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.
[0134] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will 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 apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0135] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function 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.
[0136] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable 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.
[0137] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0138] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0139] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, 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 technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0140] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus 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 apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0141] Those skilled in the art will understand that the embodiments of this specification can be provided as methods, systems, or computer program products. Therefore, this specification may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this specification may take the form of a computer program product embodied 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.
[0142] This specification can be described in the general context of computer-executable instructions that are executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform a specific task or implement a specific abstract data type. This specification can also be practiced in distributed computing environments, where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.
[0143] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to interchangeably. Each embodiment focuses on describing the differences from other embodiments. In particular, the system embodiments are basically similar to the method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.
[0144] The above description is merely an embodiment of this specification and is not intended to limit this specification. Various modifications and variations can be made to this specification by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification should be included within the scope of the claims of this application.
Claims
1. A method for determining the degree of preference, characterized in that, include: Obtain user information and target information; Determine the preset dimensions for different scenarios, identify the target dimension among the preset dimensions, and take the dimensions other than the target dimension as the other dimensions. Determine the first scenario in which the user is currently located under the target dimension and the second scenario in which the user is currently located under other dimensions; The user's information, the information of the first scenario, and the target information are input into a pre-trained model to extract several basic features; Based on the second scenario, the feature weights corresponding to the second scenario are determined from each preset feature weight and used as available feature weights; Select the feature weights corresponding to the first scenario from among the available feature weights; The basic features are weighted using the selected feature weights corresponding to the first scenario to obtain weighted features; The weighted features are evaluated by several evaluation layers in the quality evaluation subnet of the model to obtain several undetermined qualities, wherein the number of undetermined qualities is the same as the number of evaluation layers. Select the undetermined qualities other than the maximum and minimum undetermined qualities from the undetermined qualities and keep them as the undetermined qualities. The sum of the undetermined qualities is used as the quality of the weighted feature, wherein the quality is used to characterize the magnitude of the influence of the weighted feature on the user's preference for the target information. Based on the quality, determine the user's preference for the target information.
2. The method according to claim 1, characterized in that, Based on the quality, the user's preference for the target information is determined, specifically including: based on the second scenario, determining the higher-order feature weights corresponding to the second scenario from the preset higher-order feature weights, as available higher-order feature weights; Select the higher-order feature weights corresponding to the first scenario from among the available higher-order feature weights; The quality is weighted by using the selected higher-order feature weights corresponding to the first scenario to obtain the weighted quality; Based on the weighted quality, the user's preference for the target information is determined.
3. The method according to claim 1, characterized in that, Pre-training the model specifically includes: obtaining information about sample users and sample target information; Determine the preset dimensions for different scenarios, identify the target dimension among the preset dimensions, and take the dimensions other than the target dimension as the other dimensions. Determine the first scenario in which the sample user was historically located under the target dimension and the second scenario in which the sample user was historically located under the other dimensions; The information of the sample users, the information of the first scenario, and the information of the sample targets are input into the model to be trained in order to extract several basic features. Based on the second scenario, the feature weights to be optimized corresponding to the second scenario are determined from each feature weight to be optimized, and these are used as available feature weights to be optimized. Select the feature weights corresponding to the first scenario from the available feature weights to be optimized; The basic features are weighted using the selected feature weights corresponding to the first scenario to obtain the weighted features to be optimized; Based on the weighted features to be optimized, determine the degree of preference of the sample users for the target information to be optimized; The model is trained with the optimization objective of minimizing the difference between the actual preference of the sample users for the target information in the historical data and the preference to be optimized.
4. The method according to claim 3, characterized in that, Based on the weighted features to be optimized, the degree of preference of the sample users for the target information to be optimized is determined, specifically including: determining the degree of undetermined preference based on the weighted features to be optimized; The basic features are weighted using global feature weights to obtain weighted global features, wherein the global feature weights are determined based on the preset dimensions. The global preference level of the sample users for the sample target information is determined based on the weighted global features. The global preference level is used to adjust the undetermined preference level to obtain the preference level to be optimized.
5. The method according to claim 4, characterized in that, The global preference level is used to adjust the undetermined preference level to obtain the preference level to be optimized, specifically including: obtaining the difference between the global preference level and the undetermined preference level; The adjustment value is obtained by multiplying the difference by a preset adjustment coefficient; The sum of the adjustment value and the degree of preference to be determined is the degree of preference to be optimized.
6. A preference degree determination device, characterized in that, include: The scenario determination module acquires user information and target information; Determine the preset dimensions for different scenarios, identify the target dimension among the preset dimensions, and take the dimensions other than the target dimension as the other dimensions. Determine the first scenario in which the user is currently located under the target dimension and the second scenario in which the user is currently located under other dimensions; The feature extraction module inputs the user's information, the information of the first scene, and the target information into a pre-trained model to extract several basic features; The weight determination module determines the feature weights corresponding to the second scenario from each preset feature weight, based on the second scenario, and uses them as available feature weights. The first selection module selects the feature weights corresponding to the first scenario from the available feature weights. The second selection module uses the selected feature weights corresponding to the first scenario to weight the basic features to obtain weighted features; The preference determination module evaluates the weighted features through several evaluation layers in the quality evaluation subnet of the model, obtaining several undetermined qualities. It selects undetermined qualities other than the maximum and minimum undetermined qualities as retained undetermined qualities, and uses the sum of these retained undetermined qualities as the quality of the weighted feature. Based on this quality, it determines the user's preference degree for the target information. The number of undetermined qualities is the same as the number of evaluation layers, and the quality characterizes the magnitude of the influence of the weighted features on the user's preference degree for the target information.
7. A computer-readable storage medium, characterized in that, The storage medium stores a computer program, which, when executed by a processor, implements the method described in any one of claims 1 to 5.
8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the method described in any one of claims 1 to 5.
Citation Information
Patent Citations
Method and system for determining user preference, readable storage medium and electronic device
CN109190013A
Commodity information recommendation method and device, server and storage medium
CN111523982A
Content recommendation and sorting model training method and device, equipment and storage medium
CN114036398A