Commodity matching method fusing dynamic demand map and budget constraint

By constructing a dynamic demand graph and a budget-constrained product matching method, the problems of information overload and fuzzy demand parsing in e-commerce platforms are solved, achieving efficient product recommendation and budget optimization, and improving user experience.

CN121146865AActive Publication Date: 2025-12-16JIANGSU OPEN UNIVERSITY (THE CITY VOCATIONAL COLLEGE OF JIANGSU)

Patent Information

Application Number
CN202511265638.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-05
Publication Date
2025-12-16
Estimated Expiration
2045-09-05

AI Technical Summary

Technical Problem

Existing e-commerce platforms suffer from problems such as information overload, weak parsing of fuzzy demands, rigid recommendation systems, and time-consuming budget constraints during the product matching process, making it difficult to meet users' diverse and immediate needs.

Method used

By collecting multimodal user data, constructing a dynamic demand graph, and combining it with budget constraints, lightweight feature extraction and multimodal fusion techniques are used to generate the optimal product combination. Combined with an improved branch and bound method and a warm-start mechanism, product recommendations are optimized.

Benefits of technology

It improves user purchase efficiency and experience, accurately captures users' explicit and implicit needs, reduces latency and memory usage, fully utilizes the budget, and enhances the flexibility and efficiency of the recommendation system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121146865A_ABST
    Figure CN121146865A_ABST
Patent Text Reader

Abstract

The invention discloses a commodity matching method fusing a dynamic demand map and budget constraint, and belongs to the technical field of electronic commerce, and the method comprises the steps: collecting multi-modal data and budget data inputted by a user, and outputting an optimal commodity combination through a trained commodity recommendation model; the method specifically comprises the steps that feature extraction is conducted on multi-modal data, and the multi-modal data are spliced and fused into a unified semantic vector; mapping the unified semantic vector into a predefined entity library, and constructing a dynamic demand map; constructing a demand vector, establishing a planning problem taking the weighted sum of the maximum matching degree and the novelty as a target under the budget constraint, and solving to find an optimal commodity combination; and according to the interaction behavior of the user on the optimal commodity combination, adjusting the node weight and the budget constraint, and continuously updating the optimal commodity combination. According to the method, the problems of information overload, weak fuzzy demand analysis, recommendation system stiffness and budget constraint time consumption in an e-commerce scene can be solved, and the purchase efficiency and experience of the user are effectively improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of e-commerce technology, specifically relating to a product matching method that integrates dynamic demand graphs and budget constraints. Background Technology

[0002] With the widespread development of the internet, people's demand for online shopping is increasing. On the one hand, online goods are abundant and diverse, with preferential prices and timely delivery; on the other hand, online shopping breaks through the limitations of time and space, allowing people to shop anytime, anywhere, bringing great convenience to people's lives.

[0003] However, the current online shopping malls generally adopt tree-like directory classification and keyword search mechanisms, which have some limitations: (1) The tree-like classification hierarchy is redundant and information is overloaded. For example, Tmall Supermarket has more than 30,000 kinds of products. According to the classification, users need to browse and filter repeatedly in multiple categories (food → snacks → puffed food → potato chips), compare a large amount of information, and are easily tired and confused; (2) Traditional search relies on users' precise keyword input, and has a very weak ability to capture vague, emotional and scenario-based needs. For example, when users input vague descriptions (such as "shirts to wear on a beach vacation"), it is impossible to deconstruct their implicit needs (quick-drying + sun protection + bright color); (3) Recommendations based on historical behavior (collaborative filtering, content recommendation) are prone to repetition or always recommending similar styles, lacking exploration and scenario adaptability, and are difficult to meet users' diverse immediate needs; (4) When users select products within a limited budget, coupled with the complex product pricing system (full discount, stacking, and points mixed use), users need to repeatedly delete products to reach the optimal combination, which is a time-consuming process. Summary of the Invention

[0004] This invention addresses the shortcomings of existing technologies by providing a product matching method that integrates dynamic demand graphs and budget constraints. This method can solve problems such as information overload, weak fuzzy demand parsing, rigid recommendation systems, and time-consuming budget constraints in e-commerce scenarios, effectively improving users' purchasing efficiency and experience.

[0005] This invention provides the following technical solution:

[0006] A product matching method that integrates dynamic demand mapping and budget constraints includes:

[0007] Step S1: Collect multimodal data and budget data from user input, and output the optimal product combination that simultaneously satisfies demand matching and novelty through the trained product recommendation model; specifically:

[0008] Step S11: Extract features from the collected user multimodal data respectively, and concatenate and fuse them into a unified semantic vector;

[0009] Step S12: Map the unified semantic vector to the predefined entity library, decode the demand nodes, and obtain the node weights and edge weights according to the demand intensity and relationship type to construct a dynamic demand graph;

[0010] Step S13: Construct a demand vector based on node weights, calculate the demand matching degree and novelty of the products, establish a planning problem under budget constraints with the goal of maximizing the weighted sum of matching degree and novelty, and solve to find the optimal product combination;

[0011] Step S2: Adjust node weights and budget constraints based on user interaction with the recommended optimal product combination to continuously update the optimal product combination.

[0012] Optionally, step S11 specifically includes:

[0013] Step S111: For the user-input text, voice, and image, perform feature extraction using lightweight BERT-Tiny, Mobile-ASR, and lightweight hashing methods respectively to obtain the corresponding text feature vector V. T Speech feature vector V A and image feature vectors

[0014] Step S112: Based on the existence of the input modality, the feature vectors of different modalities are concatenated and a gated vector is generated through a gate weight matrix; then the feature vectors of the multimodalities are weighted and fused to generate a unified semantic vector U.

[0015]

[0016] Where G is the gated vector generated by concatenating multimodal feature vectors and then performing linear transformation and Sigmoid activation, σ is the Sigmoid activation function that compresses the gated vector to the range [0,1], and W... g Let b be the gated weight matrix. g As a bias term, W I W is the image feature transformation matrix, which maps image features to vectors of the same dimension in the fusion space. TA is the text-speech joint transformation matrix, which specifically maps the concatenated features of text and speech to a vector with the same dimension as the fusion space, and ⊙ is the Hadamard product; is the feature concatenation operation; tanh is the hyperbolic tangent activation function, used to transform features to the range [-1, 1].

[0017] Optionally, step S12 specifically includes:

[0018] S121: Map the unified semantic vector U to the relevant entities in the predefined entity library, and use Softmax to calculate the probability of each node being selected;

[0019] S122: Calculate the dynamic weight of each node to obtain the node set {(e i ,w i )|e i ∈N};

[0020]

[0021] Among them, w i (t) represents the node weight at time t, e i Let cos(U,e) be the embedding vector of the i-th entity in a predefined entity library. i ) represents the unified semantic vectors U and e i The cosine similarity measures the relevance of real-time demand; t last For e i The timestamp of the last interaction; if there has been no interaction, it is 0; T decay ρ(s,c) is the time decay constant, controlling the decay rate of historical influences; ρ(s,c) is the scene enhancement factor, ρ(s,c)=ρ0+MLP(s,c), where ρ0 is the basic enhancement value, MLP is the multilayer perception mechanism, s is the seasonal code, and c is the geographic location feature; H is the user's historical interaction record; l(e i ∈H) is an indicator function, if e i If it appears in H, the value is 1; otherwise, the value is 0.

[0022] S123: Traverse node pairs (e i ,e j The system queries the knowledge base to see if a predefined relationship exists. If no predefined relationship exists, the TransE model is used to calculate the relationship score of the triples. If the relationship score is greater than a predefined threshold, the corresponding relationship edge is added.

[0023] S124: Set the edge weight w of the node pair according to the node pair relationship type. e (e i ,r,e j ), thus obtaining the edge set {(e i ,r,e j ,w e )|r∈R};

[0024] w e (e i ,r,e j ) = score(e i ,r,e j )×exp(γ e ·cos(U,r));

[0025] Where, γ e Here, cos(U,r) represents the relevance between user needs and relation types, and r represents the entity embedding vector e. i and e j Embedding vector of relation; score(e i ,r,e j () represents the relational score of the triple;

[0026] S125: Construct a dynamic demand graph using a set of nodes with node weights and a set of edges with edge weights.

[0027] Optionally, step S13 specifically includes:

[0028] S131: Construct the demand vector D;

[0029]

[0030] Where, p i Let be the probability that item i is selected; φ(Δt) is the time decay, where Δt is the time interval between two training rounds. λ delay The attenuation coefficient;

[0031] S132: Calculate the demand matching degree S for product i. i and novelty i The required matching degree S i The cosine similarity between the product's feature vector and the demand vector is calculated using the following formula:

[0032]

[0033] Among them, g i Let i be the feature vector of product i. Let sim(e) be the pre-trained embedding vector of product i. i D) is e i Cosine similarity with D, φ(P) i Let P be the normalized price of commodity i. i Let φ(P) be the price of commodity i. i )=2×(1 / (1+exp(-(P i -μ p ) / σ p ))-0.5), μ p σ p These are the category average price and price standard deviation, δ. i Let δ be the discount rate for product i. i =min(1,(1-dis_pri)i / ori_pri i )×3), dis_pri i and ori_pri i These are the discounted price and the original price of product i, respectively;

[0034] The novelty i for:

[0035]

[0036] Where φ represents the empty set; h pro Products that a user has purchased or viewed in the past; g h for h pro eigenvectors;

[0037] S133: Convert the user-input budget constraint into a mathematical constraint; the budget constraint includes a total budget constraint, a points deduction constraint, and a full reduction constraint;

[0038] S134: Constructing a multi-objective optimization problem: Where Z is the function value of the multi-objective optimization problem, θ is the trade-off coefficient between matching degree and novelty, taking values ​​[0, 1.0]; n total This represents the total number of selectable items in the item pool. It is a 0-1 variable; it takes the value 1 if product i is selected, and 0 otherwise.

[0039] S135: Solve the multi-objective optimization problem to find the optimal product combination.

[0040] Optionally, in step S133, the total budget constraint is:

[0041]

[0042] Among them, P i Let i be the price of product i; P is a 0-1 variable; it takes the value 1 if product i is selected, and 0 otherwise. disc B represents the total discount amount for the goods; B represents the budget limit; d represents the total discount amount for the goods. k y is the discount amount for rule k; k ∈{0,1} are 0-1 variables, and if triggering rule k is satisfied, then y k Select 1, otherwise y k Take 0; c rate Points redemption rate (e.g., 100 points equals 1 yuan); p used η represents the amount of integral used; top This is the maximum percentage that can be deducted using points.

[0043] The points deduction constraint is as follows:

[0044]

[0045] Among them, P total Points available to the user; p used This refers to the amount of points used;

[0046] The full-reduction constraint is:

[0047]

[0048] Where, δ k C is the threshold for full or partial reduction of rule k; k It is a subset of the goods.

[0049] Optionally, in step S135, an improved branch and bound method is used to solve the problem. The improved branch and bound method introduces probability distribution branch decision, pre-sorting pruning, linearization of full and reduced rule constraints, and a hot start mechanism into the branch and bound method.

[0050] Optionally, the improved branch and bound method models branch decisions as probability distributions p during the training of the product recommendation model. j According to p j Sampling branch variable x j When reasoning in the product recommendation model, the variable closest to 0.5 is selected based on the hard threshold rule.

[0051]

[0052] Where, p j To select branch variable x j The probability, j is the variable index, j∈{1,2,...,n}, and n is the number of variables in the current subproblem; s j For uncertain fractions, 0 indicates complete uncertainty. Let be the value of the j-th variable in the relaxation solution; T is the annealing exploration temperature in each iteration of training, which decreases with the training rounds.

[0053] Before solving the root relaxation problem, the revenue per unit price of the commodity is calculated as UB = θ·S. i +(1-θ)·Novelty i / P i Arrange in descending order. When solving for relaxation, a greedy strategy is adopted, prioritizing the selection of goods with large unit price revenue (UB) values ​​until the budget is exhausted. This greedy solution is used as the initial lower bound.

[0054] The Big M method is introduced to linearize the full-subtraction rule constraint when y k When y = 0, the constraint is automatically satisfied; when y = 0, the constraint is automatically satisfied. k When the value is 1, the full-subtraction condition must be met:

[0055]

[0056] Where M is a sufficiently large positive number.

[0057] Optionally, the product recommendation model uses an annealing algorithm to update trainable parameters during training, and its global loss function L during training... total for:

[0058] L total =λ f L fus +λ g L graph +λ b L branch +λ r L rec ;

[0059] Among them, L fus For multimodal fusion loss, L graph L is the loss for constructing the demand graph. branch For branch decision loss, L rec For the recommendation loss, λ f The weights for the multimodal fusion loss are fixed values ​​during training; λ g The demand graph loss weights, whose values ​​decay with the number of training steps; λ b The branch decision loss weights, whose values ​​increase with the number of training steps; λ r The loss weights are set to fixed values ​​during training.

[0060]

[0061] Among them, |M mod | represents the number of modes; M mod For the effective mode set; V m Original modal features; Dec m (U) is used to remodel the state m from the fused vector U using a modality-specific decoder; D KL For Kullback-Leibler divergence, p represents the probability value of the component corresponding to the mode in the gate vector G after softmax. unif Assuming a uniform distribution, the probability of each effective mode is 1 / M. mod ;

[0062]

[0063] in, For the sake of the authenticity of the goods, click_count idwell_time represents the number of times product i has been clicked by users in historical data. i γ is the average time a user spends on the product details page related to product i; sample For positive and negative sample weights, n posi N represents the number of positive nodes; N represents the number of candidate nodes in the entity database.

[0064]

[0065] Among them, B size R represents the batch size. b R represents the immediate reward for processing subproblem b during a training session, and represents the relative improvement in the objective function value resulting from the branch decision. b =(Z child -Z parent ) / Z parent Z parent Z is the objective value of the relaxation solution before the branch. child The target value for the larger relaxation solution after branching; μ is the reward baseline, μ = α μ μ+(1-α μ )R b α μ p represents the weights; p is the probability distribution of the branch variable p = (p1, ..., p2) j ,...,p n u is a uniformly distributed vector with a length equal to the number of variables n in the current subproblem, and each component is 1 / n; β reg These are the weights used to control the distribution regularization term;

[0066] L rec =α t L CTR +β t L reg +γ t L div ;

[0067] Where, α t β t γ t These represent the weights of click-through rate loss, regret loss, and diversity loss, respectively, α. t =max(α) min ,α0(1-t / n iter )), β t =min(β) max ,β0(1+t / n iter )), γ t =γ0, α0, β0, γ0 are the initial weights, α min β maxThese represent the minimum and maximum values ​​of the click-through rate loss weight and regret value loss weight, respectively; n iter Total number of training rounds;

[0068]

[0069] Among them, L CTR To compensate for click-through rate loss, we can directly optimize user click behavior. To score the product matching, w T y is a learnable weight vector. i Let g be a binary variable indicating whether product i has been clicked; it takes the value 1 if clicked and 0 otherwise. i g j Let L be the feature vectors of the i-th and j-th items in the recommendation list; K is the length of the recommendation list; L is the feature vector of the i-th and j-th items in the recommendation list. reg OPT is used to calculate the regret loss to ensure that the recommended combination is close to the theoretical optimum. approx The objective function value is obtained by greedily pre-sorting to find the approximate optimal solution; L div To avoid loss of diversity and homogenization of the recommendation list.

[0070] Optionally, in step S2, the formula for updating the node weights is:

[0071]

[0072] Δw i =η e ×[λ cli ·I cli (i)-λ ign ·I ign (i)]+γ scene ×scene boost ;

[0073] in, Let Δw be the updated weight of node i. i The change in weight of node i; clip [0,5] (x) represents cropping x to the range [0,5], where x < 0 is taken as 0, 0 ≤ x ≤ 5 is taken as x, and x > 5 is taken as 5; η e Based on the learning rate; λ cli λ is the click reward coefficient. ign To ignore the penalty coefficient; I cli (i), I ign (i) are all indicator functions, which are 1 when node i is associated with a clicked or ignored product, and 0 otherwise; γ scene Scene enhancement factor; boost This is a scene gain factor that is dynamically adjusted based on the current scene.

[0074] Optionally, in step S2, the adjustment of the budget constraint involves updating the threshold for the full-reduction rule, and the formula for updating the threshold for the full-reduction rule is:

[0075]

[0076] in, The updated threshold for the discount rules. Let α be the threshold for the k-th rule at time t; sens To adjust the sensitivity coefficient; Abandonment rate reflects the proportion of users who abandon their purchase due to excessively high rule thresholds; n nontri "Non-triggered count" represents the number of times a user failed to reach the threshold for this rule and thus abandoned their purchase; n shown The rule is displayed the most times, indicating the number of times the recommended results include product combinations to which the rule applies.

[0077] Compared with the prior art, the beneficial effects of the present invention are:

[0078] This application utilizes lightweight feature extraction technology to reduce latency and memory usage, meeting real-time requirements. Through multimodal fusion and dynamic demand graph construction, it accurately captures both explicit and implicit user needs, overcoming the inability of traditional search engines to resolve fuzzy demands. Furthermore, this application employs a learning branch-and-bound method combined with pre-sorting pruning and a warm-start mechanism, significantly improving decision-making time for product combination optimization. By adaptively adjusting a hybrid payment model (cash, points) and discount rules, it ensures full budget utilization, avoiding budget waste in traditional solutions. Dynamically adjusting the demand graph and discount rules based on real-time user feedback enhances user satisfaction, purchase efficiency, and overall experience. Attached Figure Description

[0079] Figure 1 This is a flowchart of the product matching method that integrates dynamic demand graphs and budget constraints according to the present invention;

[0080] Figure 2 This is a global training flowchart of the product recommendation model of the present invention. Detailed Implementation

[0081] The present invention will be further described below with reference to the accompanying drawings. The following embodiments are only used to more clearly illustrate the technical solutions of the present invention and should not be used to limit the scope of protection of the present invention. It should be noted that the term "comprising" and any variations thereof in the specification, claims and the above-mentioned drawings of the present invention are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to these processes, methods, products or devices.

[0082] like Figure 1 As shown, a product matching method integrating dynamic demand graphs and budget constraints is provided, including the following steps:

[0083] Step S1: Collect multimodal data and budget data input by the user, and output the optimal combination of products that simultaneously meets the needs and novelty through the trained product recommendation model.

[0084] Step S1 is as follows:

[0085] Step S11: Extract features from the collected user multimodal data and concatenate and fuse them into a unified semantic vector.

[0086] In this application, step S11 specifically includes:

[0087] Step S111: For the user-input text, voice, and image, perform feature extraction using lightweight BERT-Tiny, Mobile-ASR, and lightweight hashing methods respectively to obtain the corresponding text feature vector V. T Speech feature vector V A and image feature vectors

[0088] For images, a lightweight hashing method is used to segment the input image into N parts. I For each region, an HSV color histogram (quantizing color distribution) is extracted, and SIFT local features (capturing texture and shape) are extracted in parallel. These features are then concatenated to obtain the image feature vector.

[0089]

[0090] Among them, V I The semantic vector of the image after feature extraction; I k This represents the k-th block region of the image, where k = 1, ..., N. I N I The total number of image blocks; HSV stands for Hue, Saturation, and Brightness; HSV Hist (I k Extract image patch I k HSV color histogram characteristics. bin i h i The count of the i-th histogram and the interval of the i-th histogram are respectively.

[0091] The normalized value of the count; φ(HSV) Hist (I k )) is for I kThe color histogram is used for feature encoding (such as L2 normalization), φ(h)=h / ||h||2, where h is the original histogram vector and φ(h) is the normalized feature; For feature concatenation operation; SIFT(I k To extract image patch I using keypoint detection and local descriptors k SIFT features (Scale Invariant Feature Transform); For I k VLAD encoding is performed on the SIFT features. d i For SIFT(I k A single keypoint descriptor in ) , c j As the cluster center, N c The number of cluster centers. This is a VLAD encoding feature.

[0092] To reduce dimensionality, for V I Lightweight hash optimization is used to obtain the dimensionality-reduced image semantic binary vector:

[0093]

[0094] in, For the corresponding V I The image feature vector after dimensionality reduction; It is a binary function; W hash Let W be a random projection matrix, where each element independently follows a standard normal distribution. hash ~N(0,1).

[0095] For speech, the speech signal is processed by MFCC (Mel Frequency Cepstral Coefficient) to extract acoustic features, then input into a BiLSTM (Bi-directional Long Short-Term Memory) network for temporal modeling, and finally a fixed-dimensional vector is obtained through linear projection.

[0096] V A =BiLSTM(MFCC(A))·W proj ;

[0097] Among them, V A W is the speech semantic vector after feature extraction; A is the input speech signal waveform; MFCC(A) is the feature matrix with a certain dimension extracted from A by Mel-frequency cepstral coefficients; BiLSTM is a bidirectional long short-term memory network that processes the temporal features of MFCC(A) and outputs the hidden state (or pooling) at the last time step; projThe learnable dimensionality reduction projection matrix projects the features onto the target dimensionality space.

[0098] For text, the lightweight BERT-Tiny method is first used to process the input text string sequence T. serial The word segmentation process yields an output word sequence, which is then input into the Transformer encoder for semantic encoding. The output at the [CLS] position is used as the text semantic representation vector.

[0099] V T =LayerNorm(Transformer) 2L (WordPiece(T serial )));

[0100] Among them, V T T represents the semantic vector of the text after feature extraction. serial The input text string; Transformer 2L This is a 2-layer Transformer encoder that outputs the dimension vector of each word, taking the vector at position [CLS] as the representation of the entire text; WordPiece(T) is a word segmenter that outputs a sequence of words; LayerNorm(x) is a layer normalization function. μ l σ l Let be the mean, standard deviation, and γ of the input vector, respectively. l β l These are the learnable scaling and offset parameters, ε. l To prevent division by zero constant, ε l =10 -5 .

[0101] Step S112: Based on the presence of the input modalities (partial modalities are allowed to be missing, and the value is zero when missing), the feature vectors of different modalities are concatenated and a gated vector is generated through a gated weight matrix; then the feature vectors of the multimodalities are weighted and fused to overcome the imbalance and complementarity of the multimodal inputs and generate a unified semantic vector U.

[0102]

[0103] Where G is the gate vector generated by concatenating all input modal features and then performing a linear transformation and sigmoid activation; σ is the sigmoid activation function that compresses the gate vector to the range [0,1], and each element represents the importance weight of the corresponding modal feature; W g b is the gate weight matrix (obtained through training), used to measure the importance of each modality feature; g For bias terms; U is the unified semantic representation vector; W IThe image feature transformation matrix (obtained through training) maps the image features to a vector with the same dimensions as the fusion space; W TA is the text-speech joint transformation matrix, which maps the concatenated features of text and speech to a vector with the same dimension as the fusion space; ⊙ is the Hadamard product; tanh is the hyperbolic tangent activation function, used to transform features to the range [-1,1] to enhance nonlinearity.

[0104] Step S12: Map the unified semantic vector to the predefined entity library, decode the demand nodes, and obtain the node weights and edge weights according to the demand intensity and relationship type to construct a dynamic demand graph.

[0105] In this embodiment, step S12 specifically includes:

[0106] S121: Map the unified semantic vector U to the relevant entities in the predefined entity library, and use Softmax to calculate the selection probability of each entity.

[0107] The decoder maps the U obtained in step S112 to a predefined entity library (products, attributes, scenarios, etc.), decodes the demand nodes (entities), and calculates the weight of each node. This transforms the user's fuzzy demands into a weighted node relationship network (a structured demand graph), capturing both explicit and implicit demands, and dynamically adjusting node weights to reflect demand intensity. In the demand graph, nodes are entities (products, attributes, scenarios, etc.), edges represent relationships between entities (such as belonging, matching, conflict, etc.), and edge weights represent the strength of these relationships.

[0108] Specifically, firstly, a predefined entity library E contains N entities, each with an embedding vector, which can be obtained using knowledge graph embedding methods such as TransE; then, through an attention mechanism, U is mapped to relevant entities in the predefined entity library:

[0109] α i =softmax(v T tanh(W q U+W e e i ));

[0110] Where, α i The attention score for the i-th entity represents the relevance of that entity to the current need; e i W is the embedding vector of the i-th entity in a predefined entity library; q W is the matrix that maps U to the query space; e To embed entities into e i A matrix mapped to the same space as the query; v T This is a trainable attention vector used to calculate the score.

[0111] Next, Softmax is used to calculate the selection probability of each entity:

[0112]

[0113] Where, p i τ represents the probability that a node (item) is selected. e For temperature parameters (annealing from 1.0 to 0.1 during training), t represents the number of training steps.

[0114] S122: Calculate the dynamic weight of each node to obtain the node set {(e i ,w i )|e i ∈N}.

[0115] The dynamic weight of a node can reflect the current demand intensity. The weight assigned to each node is determined by three parts: current demand similarity, time decay factor, and historical reinforcement factor.

[0116]

[0117] Among them, w i (t) represents the node weight, cos(U,e) i ) for U and e i The cosine similarity measures the relevance of real-time demand; t last This is the timestamp of the last interaction (such as a click or purchase) with this entity; if there has been no interaction, it is 0. decay ρ(s,c) is the time decay constant (e.g., 24 hours), controlling the decay rate of historical influence; ρ(s,c) is the scene enhancement factor, determined by context such as season and geographical location, ρ(s,c) = ρ0 + MLP(s,c), where ρ0 is the base enhancement value, MLP is a multilayer perceptron, and the input is the seasonal code s (e.g., 0.7 for summer, 0.2 for winter) and the geographical location feature c (e.g., 0.7 for seaside, 0.4 for plateau); H is the user's historical interaction record; l(e i ∈H) is an indicator function, if e i If it appears in H, it is 1; otherwise, it is 0.

[0118] S123: Traverse node pairs (e i ,e j The system queries the knowledge base to see if a predefined relationship exists. If no predefined relationship exists, the TransE model is used to calculate the relationship score of the triples. If the relationship score is greater than a predefined threshold, the edge of the corresponding relationship is added.

[0119] In this embodiment, predefined relationships include belonging, matching, conflict, etc.

[0120] The TransE model represents relations as vectors and calculates the triplet relation score (score(e)) through vector operations. i ,r,e j ):

[0121]

[0122] Where r is e i e j The embedding vector of the relationship between the embedding vectors of two entities, score(e i ,r,e j The score represents the triple score. The higher the score (i.e., the smaller the distance), the greater the probability that the triple is true.

[0123] S124: Set the edge weight w of the node pair according to the node pair relationship type. e (e i ,r,e j ), thus obtaining the edge set {(e i ,r,e j ,w e )|r∈R}.

[0124] w e (e i ,r,e j ) = score(e i ,r,e j )×exp(γ e ·cos(U,r));

[0125] Where, γ e Here, cos(U,r) represents the demand reinforcement factor (e.g., a value of 0.5), and score(e) represents the correlation between user demand and relationship type. i ,r,e j () represents the relation score of the triple.

[0126] Specifically, a threshold ε is set. r If w e (e i ,r,e j )>ε r If a relationship r exists between the two entities, then a path from e to the graph is added. i to e j The edges, thus obtaining the edge set {(e i ,r,e j ,w e )|r∈R}.

[0127] S125: Construct a dynamic demand graph using a set of nodes with node weights and a set of edges with edge weights.

[0128] Step S13: Construct a demand vector based on node weights, calculate the demand matching degree and novelty of the products, establish a planning problem under budget constraints with the goal of maximizing the weighted sum of matching degree and novelty, and solve for the optimal product combination.

[0129] In this embodiment, step S13 specifically includes:

[0130] S131: Construct the demand vector D; obtain a set of entities and their weights w from the demand graph. i The demand vector D is a weighted average of the embeddings of these entities.

[0131]

[0132] Where, p i Let be the probability that item i is selected; φ(Δt) is the time decay, where Δt is the time interval between two training rounds. λ delay This is the attenuation coefficient (e.g., 0.01). The demand vector is a weighted average of these entity embeddings.

[0133] S132: Calculate the demand matching degree S for product i. i and novelty i .

[0134] Demand matching degree S i The cosine similarity between the product's feature vector and the demand vector is calculated using the following formula:

[0135]

[0136] Among them, g i Let i be the feature vector of product i. For the pre-trained embedding vector of item i (obtained through large-scale data training before the task begins), sim(e i D) is e i Cosine similarity with D, φ(P) i Let φ(P) be the normalized price of commodity i. i )=2×(1 / (1+exp(-(P i -μ p ) / σ p ))-0.5), μ p σ p These are the category average price and price standard deviation, δ. i Let δ be the discount rate for product i. i =min(1,(1-dis_pri) i / ori_pri i )×3), dis_pri i、ori_pri i These are the discounted price and the original price of product i, respectively.

[0137] To avoid recommending similar products from a user's past experience, novelty is used. i for:

[0138]

[0139] Where φ represents the empty set; h pro Products that a user has purchased or viewed in the past; g h for h pro eigenvectors.

[0140] S133: Convert the user-input budget constraints and full reduction rules into mathematical constraints; the budget constraints include total budget constraints and points deduction constraints.

[0141] The design incorporates a budget rule compilation engine. This engine takes the user-input budget constraints (including total budget, discount rules, and points redemption) and uses regular expressions and semantic parsing techniques to identify key elements in the rules (such as discount thresholds, discount amounts, and points rules). This transforms the budget constraints into computable mathematical constraints, facilitating subsequent optimization model solutions.

[0142] The total budget constraint means that the final payment amount shall not exceed budget B:

[0143]

[0144] Among them, P i The price of product i; P is a 0-1 variable; it takes the value 1 if product i is selected, and 0 otherwise. disc B represents the total discount amount for the goods; B represents the budget limit; d represents the total discount amount for the goods. k y is the discount amount for rule k; k ∈{0,1} are 0-1 variables, and if triggering rule k is satisfied, then y k Select 1, otherwise y k Take 0; c rate Points redemption rate (e.g., 100 points equals 1 yuan); p used η represents the amount of integral used; top This represents the maximum percentage that can be deducted using points.

[0145] The "full discount" constraint is when the total amount of the goods reaches a certain threshold δ. k A certain amount can be reduced or exempted at that time. k Triggering rules:

[0146]

[0147] Where, δ kC is the threshold for full or partial reduction of rule k; k It is a subset of the goods.

[0148] Points redemption is subject to the maximum redemption ratio that a user can use, which cannot exceed the upper limit of available points and the maximum redemption ratio.

[0149]

[0150] Where P total Points available to the user; p used This represents the amount of points used.

[0151] S134: Constructing a multi-objective optimization problem: Where Z represents the function value of the multi-objective optimization problem; θ is the trade-off coefficient between matching degree and novelty, taking values ​​[0, 1.0]; n total This represents the total number of selectable items in the item pool. It is a 0-1 variable; if product i is selected, it takes the value 1, otherwise it takes the value 0.

[0152] S135: Solve the multi-objective optimization problem to find the optimal product combination.

[0153] To improve the efficiency of the solution, innovative strategies such as probability distribution branch decision, pre-sorting pruning, linearization by full reduction rule constraint, and hot start mechanism are introduced to improve the branch and bound method, and then solve the multi-objective optimization problem Z (root problem).

[0154] During training, branch decisions are modeled as probability distributions p. j According to p j Sampling branch variable x j During inference, the variable closest to 0.5 is selected based on the hard threshold rule to ensure efficiency.

[0155]

[0156] Where, p j To select branch variable x j The probability, j is the variable index, j∈{1,2,...,n}, and n is the number of variables in the current subproblem; s j For uncertain fractions, 0 indicates complete uncertainty. The value of the j-th variable in the relaxation solution (a continuous value between [0,1]); T is the annealing exploration temperature, T (t) =max(0.1,1.0-t / 10) 4 The value decreases with each training round t.

[0157] By employing pre-sorting pruning, before solving the root problem and relaxation problem, the commodity is ordered according to the unit price revenue UB = θ·S.i +(1-θ)·Novelty i / P i Sort in descending order, and solve in relaxation (x) i When ∈[0,1]), a greedy strategy is adopted, prioritizing the selection of items with large UB values ​​until the budget is exhausted. This greedy solution is used as the initial lower bound to accelerate pruning.

[0158] The Big M method is introduced to linearize the above full-subtraction rule constraint, when y k When y = 0, the constraint is automatically satisfied; when y = 0, the constraint is automatically satisfied. k When the value is 1, the full-subtraction condition must be met:

[0159]

[0160] Where M is a sufficiently large positive number (e.g., the total price of all goods) ).

[0161] A warm start mechanism is adopted to cache the user's historical best solution as the initial solution, avoiding searching from scratch.

[0162] Furthermore, in this embodiment, the product recommendation model of this application uses the annealing algorithm to update the trainable parameters during training, such as... Figure 2 As shown, the training process of the product recommendation model in this application is as follows: Figure 2 As shown, firstly, all module parameters (feature extraction, semantic fusion, demand graph, branching strategy network, etc.) are initialized, and training hyperparameters (learning rate, loss weights, temperature parameters, etc.) are set. Secondly, for each training iteration (epoch), a user's multimodal input (text, speech, image, or at least one) and contextual information (such as historical behavior) are sampled from the training set. Forward propagation from step one to step five is performed. User feedback is generated based on the user simulator (or historical logs), the global loss is calculated, backpropagation is performed, and an optimizer (such as Adam) is used to perform gradient descent. Update all trainable parameters θ (including the weight matrix W) g W I W TA The decoder parameters for each mode are as follows: Dec m Dec cycle (Classifier parameters and bias terms, etc.), where η is the learning rate and θ represents the adjustable parameters in the model. Solve for the gradient of the loss function with respect to θ, where θ * To find the optimal value for the adjustable parameters, the loss converges to the error threshold after a certain number of consecutive iterations (e.g., 10 times). Training ends when the value is 0.001. These represent the model loss at rounds t and t-1, respectively.

[0163] The global loss function L used in this application to train the product recommendation model is... total Includes multimodal fusion loss L fus Loss of demand graph construction L graph Branch decision loss L branch And recommendation loss L rec .

[0164] L total =λ f L fus +λ g L graph +λ b L branch +λ r L rec ;

[0165] Where, λ f The weights for the multimodal fusion loss are set to fixed values ​​(e.g., 0.3) during training; λ g The demand graph loss weights decay with the number of training steps. λ b The branch decision loss weights increase with the number of training steps. λ r To recommend loss weights, fixed values ​​(e.g., 1.0) are used during training.

[0166] Multimodal fusion loss L fus It consists of two parts: reconstruction loss and gated L2 regularization, to ensure the unified semantic vector after fusion. It can retain the original information of each modality in a balanced manner:

[0167]

[0168] Among them, |M mod | represents the number of modalities (e.g., 3 modalities when inputting images, voice, and text); M mod For the effective mode set; V m The original modal features output from step one; Dec m (U) is used to reconstruct the mode m from the fused vector U using a mode-specific decoder (BiLSTM for images, Transformer decoder for text, and LSTM decoder for speech); D KL For Kullback-Leibler divergence, p represents the probability value of the component corresponding to the mode in the gate vector G after softmax. unif Assuming a uniform distribution, the probability of each effective mode is 1 / M. mod .

[0169] The loss L for constructing the demand graph is calculated based on the adaptive weighted cross-entropy approach using user behavior. graph To accurately select entity nodes relevant to user needs:

[0170]

[0171] in, For the sake of the authenticity of the goods, click_count i `dwell_time` represents the number of times product i has been clicked by users in the historical data (the number of clicks on products related to this node). i γ represents the average time users spend on product detail pages related to product i; sample For positive and negative sample weights,

[0172] n posi N represents the number of positive nodes; N represents the number of candidate nodes (entity database size).

[0173] Branch decision loss L branch It consists of two parts: policy gradient loss and distribution regularization term. The policy gradient optimizes the branch variables to select the policy to maximize the improvement of the objective function, while the distribution regularization term prevents the probability distribution from becoming too concentrated to maintain exploratory nature, thereby accelerating the branch and bound process and finding a high-quality solution faster.

[0174]

[0175] Among them, B size The batch size is the number of sub-problems processed in a single training iteration; R b R represents the immediate reward for processing subproblem b during a training session, and represents the relative improvement in the objective function value resulting from the branch decision. b =(Z child -Z parent ) / Z parent Z parent Z is the objective value of the relaxation solution before the branch. child The target value for the larger relaxation solution after branching; μ is the reward baseline, μ = α μ μ+(1-α μ )R b (α μ p represents the weights (e.g., 0.9); p is the selection probability distribution of the branch variable, p = (p1, ..., p2). j ,...,p n u is a uniformly distributed vector with a length equal to the number of variables n in the current subproblem, and each component is 1 / n; β regThe weights used to control the distribution regularization term can be fixed during training (e.g., 0.1) or decay as the number of training steps increases.

[0176] Final recommended loss L rec It consists of three parts: click-through rate loss, regret value loss, and diversity loss, in order to comprehensively optimize the recommendation effect.

[0177] L rec =α t L CTR +β t L reg +γ t L div ;

[0178] Where, α t β t γ t These represent the weights of click-through rate loss, regret loss, and diversity loss, respectively, α. t =max(α) min ,α0(1-t / n iter )), β t =min(β) max ,β0(1+t / n iter )), γ t =γ0, α0, β0, γ0 are the initial weights (e.g., taken as 1.0, 0.5, and 0.5 respectively), α min β max These represent the minimum weight for click-through rate loss (e.g., 0.2) and the maximum weight for regret loss (e.g., 1.0), respectively; n iter This refers to the total number of training rounds.

[0179] Click-through rate loss, regret value loss, and diversity loss are designed as follows:

[0180]

[0181] Among them, L CTR To compensate for click-through rate loss, we can directly optimize user click behavior. To score the product matching, w T y is a learnable weight vector. i Let g be a binary variable indicating whether product i has been clicked; it takes the value 1 if clicked and 0 otherwise. i g j Let L be the feature vectors of the i-th and j-th items in the recommendation list; K is the length of the recommendation list (i.e., the number of items displayed to the user); L is the feature vector of the i-th and j-th items in the recommendation list. reg OPT is used to calculate the regret loss to ensure that the recommended combination is close to the theoretical optimum. approx The objective function value is obtained by greedily pre-sorting to find the approximate optimal solution; L divTo avoid loss of diversity and homogenization of the recommendation list.

[0182] Step S2: Adjust node weights and budget constraints based on user interaction with the recommended optimal product combination to continuously update the optimal product combination.

[0183] In this embodiment, step S2 can provide real-time feedback and optimization. Specifically, it adjusts the weight of the demand graph nodes and the threshold of the discount rule based on the user's click or ignore behavior on the recommended products, so that the system can adapt to changes in user preferences.

[0184] The formula for updating the weight of entity node i associated with a product is:

[0185]

[0186] Δw i =η e ×[λ cli ·I cli (i)-λ ign ·I ign (i)]+γ scene ×scene boost ;

[0187] Where, Δw i The change in weight of node i; clip [0,5] (x) represents cropping x to the range [0,5] to prevent the weight from exceeding the boundary due to multiple adjustments. The value is 0 when x < 0, x when 0 ≤ x ≤ 5, and 5 when x > 5; η e Use the base learning rate (e.g., 0.1) to control the overall adjustment range; λ cli The click reward coefficient (e.g., 0.3) increases the weight of associated nodes when a user clicks on a product; λ ign To ignore the penalty coefficient (e.g., 0.2), the weight of the associated node is reduced when the user ignores the product; cli (i), I ign (i) are all indicator functions, which are 1 when node i is associated with a clicked or ignored product, and 0 otherwise; γ scene This is the scene enhancement factor (e.g., 0.05), used for seasonal adjustments; scene boost This is a scene gain factor that is dynamically adjusted based on the current scene (e.g., the scene gain factor of the "sunscreen" node in summer). boost (0.3).

[0188] The formula for updating the threshold of the discount rule is:

[0189]

[0190] in, α is the threshold for the k-th rule at time t (e.g., 300 in 300 minus 30); sens To adjust the sensitivity coefficient (e.g., to 0.05), control the adjustment range; Abandonment rate reflects the proportion of users who abandon their purchase due to excessively high rule thresholds; n nontri The "Non-Triggered Count" refers to the number of times a user abandons a purchase because they did not reach the threshold for the rule (e.g., did not reach the minimum spending amount for the discount); n shown This refers to the number of times the rule is displayed, i.e., the number of times the recommended results include the product combination to which the rule applies.

[0191] This application first extracts features from the multimodal demand information provided by users. Then, it adaptively fuses the multimodal feature vectors using gating vectors to generate a unified semantic vector. Next, it calculates the selection probability of nodes (entities), dynamic weights, and edge weights between nodes to construct a weighted directed demand graph. Then, it designs constraints on user budgets, shopping platform discounts, and points redemption. Then, it calculates the demand matching degree and product novelty of candidate products, establishes a multi-objective programming problem under multiple constraints, improves the branch and bound method to solve the problem, and obtains the optimal product combination. Finally, based on user feedback on recommended products, it iteratively optimizes the demand graph, corrects budget overruns, and rematches until the optimal product combination is obtained. This approach can solve the problems of information overload, weak fuzzy demand parsing, rigid recommendation systems, and time-consuming budget constraints in e-commerce scenarios.

[0192] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. Those skilled in the art will clearly understand that the technologies in the embodiments of this invention can be implemented using software and necessary general-purpose hardware platforms. Based on this understanding, the technical solutions in the embodiments of this invention, or the parts that contribute to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or certain parts of the embodiments of this invention.

[0193] The above are merely preferred embodiments of the present invention. The scope of protection of the present invention is not limited to the above embodiments. All technical solutions falling within the scope of the present invention's concept are within the scope of protection of the present invention. It should be noted that for those skilled in the art, any improvements and modifications made without departing from the principles of the present invention should be considered within the scope of protection of the present invention.

Claims

1. A product matching method integrating dynamic demand mapping and budget constraints, characterized in that, include: Step S1: Collect multimodal data and budget data from user input, and output the optimal product combination that simultaneously satisfies demand matching and novelty through the trained product recommendation model; specifically: Step S11: Extract features from the collected user multimodal data respectively, and concatenate and fuse them into a unified semantic vector; Step S12: Map the unified semantic vector to the predefined entity library, decode the demand nodes, and obtain the node weights and edge weights according to the demand intensity and relationship type to construct a dynamic demand graph; Step S13: Construct a demand vector based on node weights, calculate the demand matching degree and novelty of the products, establish a planning problem under budget constraints with the goal of maximizing the weighted sum of matching degree and novelty, and solve to find the optimal product combination; Step S2: Adjust node weights and budget constraints based on user interaction with the recommended optimal product combination to continuously update the optimal product combination.

2. The product matching method integrating dynamic demand mapping and budget constraints according to claim 1, characterized in that, Step S11 specifically includes: Step S111: For the user-input text, voice, and image, perform feature extraction using lightweight BERT-Tiny, Mobile-ASR, and lightweight hashing methods respectively to obtain the corresponding text feature vector V. T Speech feature vector V A and image feature vectors Step S112: Based on the existence of the input modality, the feature vectors of different modalities are concatenated and a gated vector is generated through a gate weight matrix; then the feature vectors of the multimodalities are weighted and fused to generate a unified semantic vector U. Where G is the gated vector generated by concatenating multimodal feature vectors and then performing linear transformation and Sigmoid activation, σ is the Sigmoid activation function that compresses the gated vector to the range [0,1], and W... g Let b be the gated weight matrix. g As a bias term, W I W is the image feature transformation matrix, which maps image features to vectors of the same dimension in the fusion space. TA is the text-speech joint transformation matrix, which specifically maps the concatenated features of text and speech to a vector with the same dimension as the fusion space, and ⊙ is the Hadamard product; is the feature concatenation operation; tanh is the hyperbolic tangent activation function, used to transform features to the range [-1, 1].

3. The product matching method integrating dynamic demand mapping and budget constraints according to claim 1, characterized in that, Step S12 specifically includes: S121: Map the unified semantic vector U to the relevant entities in the predefined entity library, and use Softmax to calculate the probability of each node being selected; S122: Calculate the dynamic weight of each node to obtain the node set {(e i ,w i )|e i ∈N}; Among them, w i (t) represents the node weight at time t, e i Let cos(U,e) be the embedding vector of the i-th entity in a predefined entity library. i ) represents the unified semantic vectors U and e i The cosine similarity measures the relevance of real-time demand; t last For e i The timestamp of the last interaction; if there has been no interaction, it is 0; T decay ρ(s,c) is the time decay constant, controlling the decay rate of historical influences; ρ(s,c) is the scene enhancement factor, ρ(s,c)=ρ0+MLP(s,c), where ρ0 is the basic enhancement value, MLP is the multilayer perception mechanism, s is the seasonal code, and c is the geographic location feature; H is the user's historical interaction record; l(e i ∈H) is an indicator function, if e i If it appears in H, the value is 1; otherwise, the value is 0. S123: Traverse node pairs (e i ,e j The system queries the knowledge base to see if a predefined relationship exists. If no predefined relationship exists, the TransE model is used to calculate the relationship score of the triples. If the relationship score is greater than a predefined threshold, the corresponding relationship edge is added. S124: Set the edge weight w of the node pair according to the node pair relationship type. e (e i ,r,e j ), thus obtaining the edge set {(e i ,r,e j ,w e )|r∈R}; w e (e i ,bid j )(score(e i ,bid j )×exp(γ e ·cos(U,r)) Where, γ e Here, cos(U,r) represents the relevance between user needs and relation types, and r represents the entity embedding vector e. i and e j The embedding vector of the relation; score(e i ,r,e j () represents the relational score of the triple; S125: Construct a dynamic demand graph using a set of nodes with node weights and a set of edges with edge weights.

4. The product matching method integrating dynamic demand mapping and budget constraints according to claim 3, characterized in that, Step S13 specifically includes: S131: Construct the demand vector D; Where, p i Let be the probability that item i is selected; φ(Δt) is the time decay, where Δt is the time interval between two training rounds. λ delay The attenuation coefficient; S132: Calculate the demand matching degree S for product i. i and novelty i The required matching degree S i The cosine similarity between the product's feature vector and the demand vector is calculated using the following formula: Among them, g i Let i be the feature vector of product i. Let sim(e) be the pre-trained embedding vector of product i. i D) is e i Cosine similarity with D, φ(P) i Let P be the normalized price of commodity i. i Let φ(P) be the price of commodity i. i )=2×(1 / (1+exp(-(P i -μ p ) / σ p ))-0.5), μ p σ p These are the category average price and price standard deviation, δ. i Let δ be the discount rate for product i. i =min(1,(1-dis_pri) i / ori_pri i )×3), dis_pri i and ori_pri i These are the discounted price and the original price of product i, respectively; The novelty i for: Where φ represents the empty set; g h h items that the user has purchased or viewed in the past pro eigenvectors; S133: Convert the user-input budget constraint into a mathematical constraint; the budget constraint includes a total budget constraint, a points deduction constraint, and a full reduction constraint; S134: Constructing a multi-objective optimization problem: Where Z is the function value of the multi-objective optimization problem, θ is the trade-off coefficient between matching degree and novelty, taking values ​​[0, 1.0]; n total This represents the total number of selectable items in the product pool. It is a 0-1 variable; it takes the value 1 if product i is selected, and 0 otherwise. S135: Solve the multi-objective optimization problem to find the optimal product combination.

5. The product matching method integrating dynamic demand mapping and budget constraints according to claim 4, characterized in that, In step S133, the total budget constraint is: Among them, P disc B represents the total discount amount for the goods; B represents the budget limit; d represents the total discount amount for the goods. k y is the discount amount for rule k; k ∈{0,1} are 0-1 variables, and if triggering rule k is satisfied, then y k Select 1, otherwise y k Take 0; c rate For points redemption rate; p used η represents the amount of integral used; top This is the maximum percentage that can be deducted using points. The points deduction constraint is as follows: Among them, P total Points available to the user; The full-reduction constraint is: Where, δ k C is the threshold for full or partial reduction of rule k; k It is a subset of goods.

6. The product matching method integrating dynamic demand mapping and budget constraints according to claim 5, characterized in that, In step S135, an improved branch and bound method is used to solve the problem. The improved branch and bound method introduces probability distribution branch decision, pre-sorting pruning, linearization of full reduction rule constraints, and a hot start mechanism into the branch and bound method.

7. The product matching method integrating dynamic demand mapping and budget constraints according to claim 6, characterized in that, The improved branch and bound method models branch decisions as a probability distribution p during the training of the product recommendation model. j According to p j Sampling branch variable x j When reasoning in the product recommendation model, the variable closest to 0.5 is selected based on the hard threshold rule. Where, p j To select branch variable x j The probability, j is the variable index, j∈{1,2,...,n}, and n is the number of variables in the current subproblem; s j For uncertain fractions, 0 indicates complete uncertainty. Let be the value of the j-th variable in the relaxation solution; T is the annealing exploration temperature in each iteration of training, which decreases with the training rounds. Before solving the root relaxation problem, the revenue per unit price of the commodity is calculated as UB = θ·S. i +(1-θ)·Novelty i / P i Arrange in descending order. When solving for relaxation, a greedy strategy is adopted, prioritizing the selection of goods with large unit price revenue (UB) values ​​until the budget is exhausted. This greedy solution is used as the initial lower bound. The Big M method is introduced to linearize the full-subtraction rule constraint when y k When y = 0, the constraint is automatically satisfied; when y = 0, the constraint is automatically satisfied. k When the value is 1, the full-subtraction condition must be met: Where M is a sufficiently large positive number.

8. The product matching method integrating dynamic demand mapping and budget constraints according to claim 1, characterized in that, The product recommendation model uses the annealing algorithm to update trainable parameters during training, and its global loss function L is used for training. total for: L total =λ f L fus +λ g L graph +λ b L branch +λ r L rec ; Among them, L fus For multimodal fusion loss, L graph L is the loss for constructing the demand graph. branch For branch decision loss, L rec For the recommendation loss, λ f The weights for the multimodal fusion loss are fixed values ​​during training; λ g The demand graph loss weights, whose values ​​decay with the number of training steps; λ b The branch decision loss weights, whose values ​​increase with the number of training steps; λ r The loss weights are set to fixed values ​​during training. Among them, |M mod | represents the number of modes; M mod V represents the effective mode set; m Original modal features; Dec m (U) is used to remodel the state m from the fused vector U using a modality-specific decoder; D KL For Kullback-Leibler divergence, p represents the probability value of the component corresponding to the mode in the gate vector G after softmax. unif Assuming a uniform distribution, the probability of each effective mode is 1 / M. mod ; in, For the sake of the authenticity of the goods, click_count i dwell_time represents the number of times product i has been clicked by users in historical data. i γ represents the average time users spend on product detail pages related to product i; sample For positive and negative sample weights, n posi N represents the number of positive nodes; N represents the number of candidate nodes in the entity database. Among them, B size R represents the batch size. b R represents the immediate reward for subproblem b processed during a training session, and represents the relative improvement in the objective function value resulting from the branch decision. b =(Z child -Z parent ) / Z parent Z parent Z is the objective value of the relaxation solution before the branch. child The target value for the larger relaxation solution after branching; μ is the reward baseline, μ = α μ μ+(1-α μ )R b α μ p represents the weights; p is the probability distribution of the branch variable p = (p1, ..., p2) j ,...,p n u is a uniformly distributed vector with a length equal to the number of variables n in the current subproblem, and each component is 1 / n; β reg These are the weights used to control the distribution regularization term; L rec =a t L CTR +b t L reg +g t L div ; Where, α t β t γ t These represent the weights of click-through rate loss, regret loss, and diversity loss, respectively, α. t =max(α) min ,α0(1-t / n iter )), β t =min(β) max ,β0(1+t / n iter )), γ t =γ0, α0, β0, γ0 are the initial weights, α min β max These represent the minimum and maximum values ​​of the click-through rate loss weight and regret value loss weight, respectively; n iter Total number of training rounds; Among them, L CTR To compensate for click-through rate loss, we can directly optimize user click behavior. To score the product matching score, w T y is a learnable weight vector. i Let g be a binary variable indicating whether product i has been clicked; it takes the value 1 if clicked and 0 otherwise. i g j Let L be the feature vectors of the i-th and j-th items in the recommendation list; K is the length of the recommendation list; L is the feature vector of the i-th and j-th items in the recommendation list. reg OPT is used to calculate regret loss to ensure that the recommended combination is close to the theoretical optimum. approx The objective function value is obtained by greedily pre-sorting to find the approximate optimal solution; L div To avoid loss of diversity and homogenization of the recommendation list.

9. The product matching method integrating dynamic demand mapping and budget constraints according to claim 1, characterized in that, In step S2, the formula for updating the node weights is: Δw i =the e ×[λ cli ·I cli (i)-l ign ·I ign (i)]+c scene ×scene boost ; in, Let Δw be the updated weight of node i. i The change in weight of node i; clip [0,5] (x) represents cropping x to the range [0,5], where x < 0 is taken as 0, 0 ≤ x ≤ 5 is taken as x, and x > 5 is taken as 5; η e The base learning rate; λ cli λ is the click reward coefficient. ign To ignore the penalty coefficient; I cli (i), I ign (i) are all indicator functions, which are 1 when node i is associated with a clicked or ignored product, and 0 otherwise; γ scene Scene enhancement factor; boost This is a scene gain factor that is dynamically adjusted based on the current scene.

10. The product matching method integrating dynamic demand graph and budget constraints according to claim 1, characterized in that, In step S2, the budget constraint adjustment involves updating the threshold for the full reduction rule. The formula for updating the threshold for the full reduction rule is as follows: in, The updated threshold for the discount rules. Let α be the threshold for the k-th rule at time t; sens To adjust the sensitivity coefficient; Abandonment rate reflects the proportion of users who abandon their purchase due to excessively high rule thresholds; n nontri "Non-triggered count" represents the number of times a user failed to reach the threshold for this rule and thus abandoned their purchase; n shown The rule is displayed the most times, indicating the number of times the recommended results include product combinations to which the rule applies.

Citation Information

Patent Citations

  • Worker recruitment method and system based on social recommendation and trust prediction

    CN118552168A

  • Supply chain multidimensional data mining and intelligent recommendation decision-making method based on knowledge graph

    CN119741038A

  • Intelligent medicine shopping guide and recommendation system for drugstore

    CN119919147A

  • Information recommendation method and device, storage medium and electronic equipment

    CN120429506A

  • Gift candidate selection server, gift candidate selection method, and gift candidate selection system

    JP2021036396A

Cited By

  • Personalized content intelligent recommendation method and system based on digital financial AI platform

    CN121786277A