Object pushing and same-model cluster identification method, medium, device and program product

By optimizing the push order of target objects within a cluster in the object push sequence, and based on multi-dimensional performance parameters, the problems of object homogenization and push delay are solved, thereby improving user experience and traffic.

CN119011662BActive Publication Date: 2026-02-27HANGZHOU ALIBABA INT INTERNET IND CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202410906732.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-07-05
Publication Date
2026-02-27
Estimated Expiration
2044-07-05

AI Technical Summary

Technical Problem

In existing technologies, the homogeneity of objects in the object push sequence leads to a degraded user experience and the inability to push high-quality objects in a timely manner, which affects user traffic.

Method used

By identifying the target objects within the cluster in the initial push sequence, the push order is optimized based on multi-dimensional performance parameters to ensure that the target objects are pushed first within the cluster, and the initial push sequence is adjusted to the target push sequence.

Benefits of technology

It improved user experience and user traffic, reduced instances of objects not being pushed out in a timely manner, optimized traffic structure, and guided object providers to improve product quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119011662B_ABST
    Figure CN119011662B_ABST
Patent Text Reader

Abstract

A method, medium, device and program product for object pushing and same-model cluster identification, the method comprising: determining an initial pushing sequence, the initial pushing sequence comprising at least one class cluster, each class cluster comprising a plurality of objects to be pushed; determining target objects included in each of the at least one class cluster, the performance parameter of the target objects in the class cluster in at least one dimension being better than the performance parameter of other objects in the corresponding class cluster in the corresponding dimension; adjusting the target pushing objects of each class cluster in the initial pushing sequence to before the other objects of the corresponding class cluster, to obtain a target pushing sequence; and pushing the target pushing sequence.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the technical field of Internet, and in particular, to an object pushing method, a same-model cluster identification method, a medium, a device and a program product. BACKGROUND

[0002] In some application scenarios, a service platform needs to push objects to users. The quality of the objects pushed to the users by the service platform will affect the user experience, and thus affect the user traffic of the service platform. In order to improve the user experience, it is desired to avoid the pushed objects being too homogeneous. To achieve this purpose, in related technologies, similar objects in a same pushing sequence are dispersed into multiple different pushing sequences. However, this approach may cause objects originally expected to be pushed in the same pushing sequence to be unable to be timely pushed, thereby reducing the user traffic of the service platform. SUMMARY

[0003] In a first aspect, an embodiment of the present disclosure provides an object pushing method, which comprises: determining an initial pushing sequence, the initial pushing sequence comprising at least one class cluster respectively comprising a plurality of to-be-pushed objects; determining a target object respectively comprised in the at least one class cluster, the performance parameter of the target object in the class cluster on at least one dimension being superior to the performance parameter of other objects in the class cluster on the corresponding dimension; adjusting the target pushing object of each class cluster in the initial pushing sequence to before the other objects of the corresponding class cluster, to obtain a target pushing sequence; and pushing the target pushing sequence.

[0004] In a second aspect, an embodiment of the present disclosure provides a same-model cluster identification method, which comprises: obtaining product information of a plurality of products of an e-commerce platform; respectively performing feature extraction on the product information of the plurality of products to obtain features of the plurality of products; and clustering the features of the plurality of products to obtain at least one same-model cluster to which the plurality of products belong; the products in a same same-model cluster are a collection of products of a same model or style; wherein the product information of the plurality of products is used for pushing to a client, and a target product in a same same-model cluster is preferentially pushed compared to other products in the same same-model cluster, and a product attribute of the target product in the same same-model cluster on at least one dimension is superior to a product attribute of other products in the same same-model cluster on the corresponding dimension.

[0005] In a third aspect, an embodiment of the present disclosure provides a computer-readable storage medium having a computer program stored thereon, the program being executed by a processor to implement the method described in any embodiment of the present disclosure.

[0006] In a fourth aspect, an embodiment of the present disclosure provides a computer device comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the method described in any embodiment of the present disclosure when executing the program.

[0007] In a fifth aspect, the present disclosure provides a computer program product, comprising a computer program which, when executed by a processor, implements the method of any of the embodiments of the present disclosure.

[0008] In the embodiments of the present disclosure, first, an initial push sequence is obtained, the initial push sequence including at least one to-be-pushed object included in each class cluster, then, a target object with better performance parameters in each class cluster is determined, and the push order of each to-be-pushed object in the initial push sequence is adjusted to obtain a target push sequence, and the target push sequence is pushed to the user. In the target push sequence, the target object with better performance parameters under each class cluster is pushed before other objects in the corresponding class cluster. On the one hand, since each to-be-pushed object in the initial push sequence is still pushed in the same target push sequence, it is not necessary to scatter each to-be-pushed object in the initial push sequence into different push sequences, thus, the situation that objects originally expected to be pushed in the same push sequence cannot be timely pushed is reduced. On the other hand, the object with better performance parameters is pushed preferentially, so that the user can preferentially obtain high-quality objects, thereby improving the user experience and further improving the user traffic of the service platform.

[0009] It should be understood that the foregoing general description and the following detailed description are only exemplary and explanatory, rather than limiting the present disclosure. BRIEF DESCRIPTION OF DRAWINGS

[0010] The accompanying drawings incorporated in and forming a part of the specification, illustrate embodiments consistent with the present disclosure and, together with the description, serve to explain the principles of the present disclosure.

[0011] Figure 1 is a schematic diagram of an application scenario of the embodiments of the present disclosure.

[0012] Figure 2 is a flowchart of an object push method of the embodiments of the present disclosure.

[0013] Figure 3 is a structural schematic diagram of a feature extraction model of the embodiments of the present disclosure.

[0014] Figure 4 is a schematic diagram of a push order adjustment process of the embodiments of the present disclosure.

[0015] Figure 5 is a general flowchart of the embodiments of the present disclosure.

[0016] Figure 6 is a presentation effect diagram of a push result of the embodiments of the present disclosure.

[0017] Figure 7is a flowchart of a same cluster identification method of an embodiment of the present disclosure.

[0018] Figure 8 is a schematic diagram of a computer device of an embodiment of the present disclosure. DETAILED DESCRIPTION

[0019] The exemplary embodiments will be described in detail herein below with reference to the drawings. When the description below refers to the drawings, the same numbers in different drawings refer to the same or similar elements unless otherwise indicated. The implementations described in the following exemplary embodiments do not represent all implementations consistent with the present disclosure. Instead, they are merely examples of apparatuses and methods consistent with some aspects of the present disclosure as detailed in the appended claims.

[0020] The terminology used in the present disclosure is for the purpose of describing particular embodiments only and is not intended to be limiting of the present disclosure. As used in the present disclosure and the appended claims, the singular forms "a," "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term "and / or" as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. In addition, the term "at least one of' as used herein means any one of the multiple listed options or any combination of at least two of the multiple listed options.

[0021] It should be understood that although the terms first, second, third, etc. can be used herein to describe various information, these terms are not intended to denote a particular order or hierarchy among the information. These terms are used merely to distinguish one from another. For example, a first information can be termed a second information, and, similarly, a second information can be termed a first information without departing from the scope of the present disclosure. Depending on the context, the word "if' as used herein can be interpreted to mean "when" or "in response to determining" or "in response to a determination."

[0022] In order to enable persons skilled in the art to better understand the technical solutions in the embodiments of the present disclosure, and to make the above-mentioned purposes, features and advantages of the embodiments of the present disclosure more apparent and understandable, the technical solutions in the embodiments of the present disclosure will be further described in detail below with reference to the drawings.

[0023] Figure 1 A schematic diagram of an application scenario of the present disclosure is exemplarily shown, which includes a service platform 12 and a client 14. The service platform 12 can push a push sequence including at least one object to the client 14 for display. Optionally, the service platform 12 can be an e-commerce platform; correspondingly, the pushed object can be a commodity on the e-commerce platform. In some embodiments, a user can input search information on the client 14, such as Figure 1As shown, the search information is "dresses". The client 14 can send a browsing request carrying the search information to the service platform 12. The service platform 12 can obtain and push the push sequence to the client 14 in response to the browsing request. In some other embodiments, the service platform 12 can also obtain and push the push sequence according to the historical behavior sequence (e.g., browsing, liking, collecting, purchasing, adding to the shopping cart, forwarding, commenting, etc.) of the user.

[0024] It can be understood that Figure 1 The e-commerce scenario in the foregoing is only illustrative and is not intended to limit the present disclosure. In other examples, the service platform 12 and the pushed object can also be of other types. For example, the service platform 12 is a video playing platform, and the pushed object is a video file; or the service platform 12 is a news platform, and the pushed object is news; or the service platform 12 is a music playing platform, and the pushed object is an audio file; or the service platform 12 is an e-book platform, and the pushed object is an e-book; and the like. For ease of description, the service platform 12 is taken as an e-commerce platform, and the pushed object is taken as a commodity of the e-commerce platform in the following examples.

[0025] In order to improve the user experience, it is desirable to avoid the pushed objects being too homogeneous. Homogeneity refers to the multiple objects pushed in the same push sequence being highly similar in performance, appearance, function, price, and the like, and lacking significant differentiating features. The homogeneity of the pushed objects can cause the objects browsed by the user to appear "same as one another", and it is difficult to attract the special attention or interest of the user. In order to reduce the homogeneity of the pushed objects, in the related art, similar objects in the same push sequence are dispersed into multiple different push sequences. However, this approach can cause the objects originally expected to be pushed in the same push sequence to be unable to be pushed in time. In some cases, the initial push sequence is generated according to the user demand, and if an object is in a preceding push sequence, it can indicate that the object has a high matching degree with the user demand, and if the object is moved to a subsequent push sequence, it can cause the object satisfying the user demand to be unable to be pushed in time, thereby reducing the user traffic of the service platform.

[0026] Based on this, the present embodiment provides an object pushing method, referring to Figure 2 , the method comprises:

[0027] Step S12: determining an initial push sequence, the initial push sequence comprising at least one class cluster respectively comprising multiple to-be-pushed objects;

[0028] Step S14: determining a target object respectively comprised in the at least one class cluster, the performance parameter of the target object in the class cluster in at least one dimension being superior to the performance parameter of other objects in the class cluster in the corresponding dimension;

[0029] Step S16: adjusting the target push objects of each class cluster in the initial push sequence to be before other objects of the corresponding class cluster, to obtain a target push sequence;

[0030] Step S18: pushing the target push sequence.

[0031] The embodiments of the present disclosure optimize the flow of the to-be-pushed objects in the same class cluster. Compared with other objects in the class cluster, the target objects in the class cluster that are better will have priority to obtain the flow and thus be pushed first, so that the user can obtain high-quality objects first, thereby improving the user experience and further improving the user flow. In addition, since the user's attention to the objects at the front of the sequence is usually higher, the target objects will obtain more attention by being pushed first. In this way, the provider of the to-be-pushed objects can be guided to optimize the objects provided by the provider, and the situation of imitation and duplication can be reduced. Furthermore, since each to-be-pushed object in the same initial push sequence is still in a target push sequence and does not need to be dispersed into different push sequences, the situation that the objects pushed in the same push sequence cannot be pushed in time is reduced. The specific schemes of the embodiments of the present disclosure are illustrated below.

[0032] The method of the embodiments of the present disclosure can be executed by the service platform 12 as shown in the figure. Figure 1

[0033] In step S12, each candidate object in the object set on the service platform 12 can be pre-divided into a class cluster. In some embodiments, a pre-trained feature extraction model can be used to extract features of a plurality of candidate objects on the service platform 12, and then the plurality of candidate objects can be divided into class clusters based on the features of the plurality of candidate objects, so as to determine the class cluster to which each candidate object belongs. The features include but are not limited to at least one of the following: object name, color, material, model, purpose, size, applicable scenario, and applicable population.

[0034] In some embodiments, the similarity between the candidate objects in the same class cluster can be greater than a preset similarity threshold. For example, in the case where the features of the objects include color, a certain red dress and other pictures and titles of dresses that are very similar to “red dress” belong to the same class cluster.

[0035] In some embodiments, the feature extraction model can obtain input data of at least one modality of the candidate object, such as image data and / or text data, and extract features of the at least one modality. In the e-commerce scenario, the image data can be the product image uploaded by the merchant on the e-commerce platform, and the text data can include the title of the product and other product information uploaded by the user to the e-commerce platform. ​

[0036] In a case where the features input to the feature extraction model include input data of multiple modalities, the feature extraction model can be a multi-modal model, for example, a Bootstrapped Language Image Pretraining (BLIP) model. Figure 3 A structural diagram of a BLIP model in some embodiments is shown, which includes an image encoder, a text encoder, and two image-based text encoders. Among them, the image encoder is used to encode the input image to obtain image features; the text encoder is used to encode the input text to obtain text features; one of the image-based text encoders (hereinafter referred to as the first image text encoder) is used to perform a matching task between images and texts; the other image-based text encoder (hereinafter referred to as the second image text encoder) is used to perform a language modeling task. The image encoder can adopt a self-attention mechanism, the text encoder and the first image text encoder can adopt a bidirectional self-attention mechanism and a cross-attention mechanism, and the second image text encoder can adopt a causal self-attention mechanism and a cross-attention mechanism. The above-mentioned BLIP model can be trained based on an image-text contrastive loss function (ITC).

[0037] When object pushing needs to be performed, at least one class cluster can be determined from the pre-divided class clusters, and a plurality of to-be-pushed objects can be respectively obtained from the at least one determined class cluster. The to-be-pushed objects in any class cluster can include all candidate objects in the class cluster, or include part of the candidate objects in the class cluster. Since the search information input by the user on the client 14 in real time can reflect the user's immediate intention, and the historical behavior sequence of the user on the client 14 can reflect the user's preferences and focus to some extent, at least one class cluster can be determined from the pre-divided class clusters based on the search information input by the user on the client 14 in real time or the historical behavior sequence of the user on the client 14.

[0038] After determining the class cluster to which each candidate object belongs, the first label information can be associated with each candidate object. The first label information is one-to-one corresponding to the class cluster, and is used to identify the class cluster.

[0039] When object pushing needs to be performed, the first label information of a plurality of candidate objects in the object set can be obtained respectively, and based on the first label information of the plurality of candidate objects, at least one class cluster respectively including a plurality of to-be-pushed objects can be determined from the plurality of candidate objects.

[0040] After determining the at least one class cluster and obtaining the plurality of to-be-pushed objects from the at least one class cluster respectively, an initial push sequence including the obtained to-be-pushed objects can be generated according to a certain strategy. Alternatively, the obtained to-be-pushed objects can be randomly shuffled to obtain the initial push sequence. Alternatively, the obtained to-be-pushed objects can be input into a pre-trained ranking model, and the ranking model can be used to rank the obtained to-be-pushed objects, and the initial push sequence can be generated according to the push scores of the to-be-pushed objects output by the ranking model. The higher the push score of a to-be-pushed object output by the ranking model, the higher the push order of the to-be-pushed object in the initial push sequence. The ranking model can be pre-trained based on the features of sample objects and the label information of the sample objects. The label information of the sample objects can represent whether the user has performed a specific operation (for example, purchase, click, collect, forward, etc.) on the sample object. If the user has performed a specific operation on a sample object, it usually indicates that the user is interested in the sample object. Therefore, the push score output by the ranking model trained in the above manner can reflect the probability that the user is interested in each to-be-pushed object, and thus the to-be-pushed object with a higher probability that the user is interested in can be arranged in a relatively high position in the initial push sequence.

[0041] In some embodiments, the class clusters to which the v (v is a positive integer) consecutive to-be-pushed objects in the initial push sequence respectively belong can be different from each other. The value of v can be pre-set, for example, v can be set to 3, which means that the three consecutive to-be-pushed objects in the initial push sequence belong to different class clusters. In this way, the homogenization of the to-be-pushed objects in the initial push sequence can be reduced, and the user experience can be enriched.

[0042] In step S14, the target objects included in the at least one class cluster included in the initial push sequence can be determined. The performance parameters of the target objects in the class cluster in at least one dimension are better than the performance parameters of other objects in the class cluster in the corresponding dimensions. The at least one dimension includes but is not limited to at least one of the following:

[0043] (1) a first dimension for representing the popularity of the candidate object;

[0044] In general, the popularity of a candidate object with better performance and higher quality is usually higher, so the popularity of a candidate object can reflect the performance and quality of the candidate object to some extent. The performance parameter in the first dimension can include the delivery quantity of the candidate object. In some application scenarios (such as e-commerce scenarios), the delivery quantity of the candidate object can be the sales volume of the candidate object within a period of time. In other application scenarios, the delivery quantity of the candidate object can also be the reservation quantity, the shipment quantity, etc. of the candidate object.

[0045] (2) a second dimension for representing a price of the candidate object;

[0046] The price of the candidate object can reflect the difficulty of being accepted by the public to some extent, for example, in the case that the quality of two candidate objects is close, the one with lower price is more likely to be accepted by the public than the one with higher price. The performance parameter in the second dimension can include the price parameter of the candidate object. In some application scenarios (such as e-commerce scenarios), the price parameter of the candidate object can be the sales price or the booking price of the candidate object. In other scenarios, the price parameter of the candidate object can also be the rental price or the auction price of the candidate object, etc.

[0047] (3) a third dimension for representing the service quality of the candidate object.

[0048] The service quality of the candidate object can affect the satisfaction of the user. The performance parameter in the third dimension can include the delivery time of the candidate object. In some application scenarios (such as e-commerce scenarios), the delivery time of the candidate object can be the logistics time, the order production or manufacturing time, the order reservation waiting time, etc.

[0049] It can be understood that the above is only an exemplary illustration and is not intended to limit the present disclosure. In other examples, the target object in each cluster can also be determined based on the performance parameter in other dimensions, and the performance parameter in each dimension is not limited to the case listed in the above embodiments.

[0050] For any one cluster, one or more target objects of the cluster can be determined based on the performance parameter in each dimension, for example, the object to be pushed in the cluster with the performance parameter in a certain dimension ranked TOP K can be determined as the target object corresponding to the dimension in the cluster, where K is a positive integer. The target objects corresponding to different dimensions in the same cluster can be the same or different. Taking the i th cluster as an example, the target object corresponding to the first dimension (hereinafter referred to as the first target object), the target object corresponding to the second dimension (hereinafter referred to as the second target object), and the target object corresponding to the third dimension (hereinafter referred to as the third target object) in the i th cluster can be determined, and the target objects in the i th cluster include the first target object, the second target object, and the third target object. Wherein, the performance parameter of the first target object in the first dimension is better than that of other objects in the i th cluster except the first target object, the performance parameter of the second target object in the second dimension is better than that of other objects in the i th cluster except the second target object, the performance parameter of the third target object in the third dimension is better than that of other objects in the i th cluster except the third target object, and any two of the first target object, the second target object, and the third target object can be the same or different.

[0051] In some embodiments, the second label information can be generated in advance for each cluster, and the second label information is used to indicate the target object in the corresponding cluster. In order to reduce resource consumption, the second label information can be a binary number, but is not limited thereto. For example, the second label information can be generated for each candidate object in the cluster. If a candidate object is not the target object in the cluster to which the candidate object belongs, the second label information "0" can be generated for the candidate object. If a candidate object is the target object in the cluster to which the candidate object belongs, the second label information "1" can be generated for the candidate object. Alternatively, the second label information can be generated only for the target object in the cluster. If an object does not include the second label information, the object is not the target object in the corresponding cluster. If an object includes the second label information, the object is the target object in the corresponding cluster.

[0052] In the example in which the second label information is generated in advance, the second label information of the plurality of to-be-pushed objects included in each of the at least one cluster can be obtained. Based on the second label information of the plurality of to-be-pushed objects included in each of the at least one cluster, the target object included in each of the at least one cluster can be determined from the plurality of to-be-pushed objects included in each of the at least one cluster.

[0053] In some embodiments, the target object corresponding to any one dimension (for example, the jth dimension) in any one cluster (for example, the ith cluster) can be determined based on the following manner. The performance score of each candidate object in the ith cluster corresponding to the jth dimension can be obtained, and the plurality of candidate objects in the cluster include the plurality of to-be-pushed objects of the cluster. Based on the performance score of each candidate object in the ith cluster corresponding to the jth dimension, the target object corresponding to the jth dimension in the ith cluster can be determined from the plurality of candidate objects in the ith cluster. The higher the performance score of a candidate object in the ith cluster corresponding to the jth dimension, the better the performance of the candidate object in the ith cluster on the jth dimension, and therefore, the candidate object with the performance score ranking TOP K (K is a positive integer) on the jth dimension in the ith cluster can be determined as the target object corresponding to the jth dimension in the ith cluster.

[0054] In some cases, the performance scores of the plurality of candidate objects in the ith cluster corresponding to the jth dimension can be relatively close to each other. At this time, the difference between the performance perceptions of the plurality of candidate objects by the user can be small, and the better target object can not be accurately determined only based on the performance score. Therefore, the target object in the ith cluster can be determined by comprehensively considering the performance score and other factors (for example, the conversion rate score of the candidate object).

[0055] Specifically, if the difference between the performance scores of the plurality of candidate objects in the ith cluster corresponding to the jth dimension is greater than the preset difference value, the target object in the ith cluster corresponding to the jth dimension can be determined from the plurality of candidate objects in the ith cluster based on the performance scores of the plurality of candidate objects in the ith cluster corresponding to the jth dimension alone. If the difference between the performance scores of the plurality of candidate objects in the ith cluster corresponding to the jth dimension is less than or equal to the preset difference value, the target object in the ith cluster corresponding to the jth dimension can be determined from the plurality of candidate objects in the ith cluster based on the performance scores of the plurality of candidate objects in the ith cluster corresponding to the jth dimension and the conversion rate scores of the plurality of candidate objects in the ith cluster. The conversion rate score of a candidate object can be obtained by a pre-trained conversion rate estimation model.

[0056] For example, the performance scores of the plurality of candidate objects in the ith cluster corresponding to the jth dimension and the conversion rate scores of the plurality of candidate objects in the ith cluster can be weighted to obtain the weighted scores of the plurality of candidate objects in the ith cluster in the jth dimension, and the target object in the ith cluster corresponding to the jth dimension can be determined from the plurality of candidate objects in the ith cluster based on the weighted scores of the plurality of candidate objects in the ith cluster in the jth dimension. The weighted score f(x) of any candidate object in the ith cluster in the jth dimension can be denoted as:

[0057] f(x) = score1 * β1 + score2 * β2

[0058] wherein score1 is the performance score of the candidate object corresponding to the performance parameter in the jth dimension; score2 is the conversion rate score of the candidate object; and β1 and β2 are weights. Optionally, the value of β1 can be greater than the value of β2, so that the value of f(x) is mainly determined by score1.

[0059] In the embodiment in which the at least one dimension includes a first dimension for representing the popularity of the candidate object, and the performance parameter on the first dimension includes the delivery quantity, the performance score of any candidate object corresponding to the first dimension can be determined based on the following manner: based on the delivery quantity of the candidate object in a plurality of statistical periods, obtaining the performance score of the candidate object corresponding to the first dimension in the plurality of statistical periods respectively, weighting the performance score of the candidate object corresponding to the first dimension in the plurality of statistical periods respectively, to obtain the performance score of the candidate object corresponding to the first dimension. Wherein, the plurality of statistical periods can be of different lengths, for example, the plurality of statistical periods include at least two of the last 7 days, the last 14 days and the last 30 days. Alternatively, the plurality of statistical periods can also be different statistical periods of equal length, for example, the length of the statistical period is 7 days, and the plurality of statistical periods can include at least two of the last 7 days, the last 7-14 days and the last 14-21 days. Taking the former case as an example, the performance score of the candidate object corresponding to the first dimension can be denoted as:

[0060] score1 = order 7d * α1 + order 14d * α2 + order 30d * α3

[0061] Wherein, order xd is the performance score of the candidate object corresponding to the first dimension in a statistical period including x (x is a positive integer) statistical time units (for example, days, hours or minutes), which can be a normalized score. The performance score of the candidate object corresponding to the first dimension in any statistical period can be positively correlated with the delivery quantity of the candidate object in the statistical period. α1, α2 and α3 are weights, which can be optimized offline by grid search. Wherein, the optimal α1, α2 and α3 can be the parameters that maximize the area under the curve (AUC) of f(x) searched.

[0062] In the embodiment in which the at least one dimension includes a second dimension for representing the price of the candidate object, and the performance parameter on the second dimension includes the price parameter, the performance score of the candidate object corresponding to the second dimension can be determined based on the following manner: obtaining the price parameter of the candidate object, normalizing the price parameter of the candidate object based on the maximum price parameter and the minimum price parameter of the plurality of candidate objects in the i-th cluster, to obtain the normalized price parameter of the candidate object, and determining the normalized price parameter of the candidate object as the performance score of the candidate object corresponding to the second dimension.

[0063] The normalization manner of any one candidate object in the ith cluster can be: obtaining a first difference value between the maximum price parameter of the plurality of candidate objects in the ith cluster and the price parameter of the candidate object, and obtaining a second difference value between the maximum price parameter of the plurality of candidate objects in the ith cluster and the minimum price parameter of the plurality of candidate objects in the ith cluster, and determining the ratio between the first difference value and the second difference value as the normalized price parameter of the candidate object. The normalized price parameter of the candidate object can be denoted as:

[0064]

[0065] wherein price max and price min are the maximum price parameter of the plurality of candidate objects in the ith cluster and the minimum price parameter of the plurality of candidate objects in the ith cluster, respectively, and price x is the price parameter of the candidate object to be normalized. In the e-commerce scenario, the candidate object is a commodity, and the price parameter of the commodity can be based on the sum of the sales unit price of the commodity and the transportation cost of the commodity. In other application scenarios, the price parameter of the candidate object can also be determined based on other factors (e.g., storage cost, packaging cost, marketing cost, etc.). In addition, in some cases, the price parameter of the same candidate object in different regions can be different, and the price parameter in the above embodiments can be the price parameter of the candidate object in a specified region.

[0066] In the embodiment in which the at least one dimension includes a third dimension for representing the quality of service of the candidate object, and the performance parameter on the third dimension includes the delivery time length, the performance score of the candidate object corresponding to the third dimension can be determined based on the following manner: obtaining the delivery time length of the candidate object, and determining the performance score of the candidate object corresponding to the delivery time length based on the delivery time length of the candidate object. Wherein the performance score of the candidate object corresponding to the delivery time length is inversely related to the delivery time length of the candidate object. For example, assuming that the delivery time length of the candidate object is denoted as d logistics , then the performance score of the candidate object corresponding to the third dimension can be denoted as:

[0067] score1=1 / d logistics

[0068] In some embodiments, the delivery time length of the same candidate object in different regions can be different, and the delivery time length in the above embodiments can be the delivery time length of the candidate object in a specified region.

[0069] In step S16, the target push sequence is obtained by adjusting the push order of each to-be-pushed object in the initial push sequence, in which the push order of any target object is located before the push order of other objects in the cluster to which the target object belongs, so as to ensure that the target objects in the same cluster are preferentially pushed compared with other objects in the cluster.

[0070] The push order of each to-be-pushed object in the initial push sequence can be adjusted based on the following manner: for any cluster in at least one cluster, if other objects of the cluster in the initial push sequence are located before the target object of the cluster in the initial sequence, the target object of the cluster and the other objects of the cluster are exchanged. If the number of objects to be exchanged is greater than 1, for example, at least two target objects in the same cluster are located after other objects in the cluster, and for example, target objects in at least two clusters are located after other objects in the corresponding cluster, the serial exchange or parallel exchange manner can be used to exchange multiple objects.

[0071] In the example of serial exchange, the first target object in the initial push sequence can be obtained first, and if the target object is located after other objects in the cluster to which the target object belongs in the initial push sequence, the target object and the first other object in the cluster to which the target object belongs in the initial push sequence can be exchanged. Then, the exchanged sequence is updated as the initial sequence, and the above step is returned until the target objects of each cluster in the initial push sequence are located before other objects in the cluster.

[0072] As shown in FIG. 1, Figure 4 It is assumed that the initial push sequence is shown in the leftmost column in the figure, and objects 1, 2, … in the figure represent each to-be-pushed object in the initial push sequence, cluster X1, cluster X2, … in the brackets represent the cluster to which the corresponding object belongs, and flag in the brackets represents whether the corresponding object is a target object in the cluster to which the object belongs. If flag = 1, the corresponding object is a target object in the cluster to which the object belongs, and if flag = 0, the corresponding object is not a target object in the cluster to which the object belongs. Taking the first row in the initial push sequence as an example, object 1 (cluster X1, flag = 0) is recorded in the first row, indicating that the cluster to which object 1 belongs is cluster X1, and object 1 is not a target object in cluster X1.

[0073] During the swapping process, each object to be pushed in the initial push sequence is scanned from top to bottom. In the first stage, the first target object (object 4) in cluster X1 is scanned, and its position is swapped with that of object 1 in the initial push sequence to obtain intermediate sequence 1. In the second stage, based on the first stage, the second target object (object Y) in cluster X1 is scanned, and its position is swapped with that of object 1 in intermediate sequence 1 to obtain intermediate sequence 2. In the third stage, based on the first two stages, the third target object (object Z) in cluster X1 is scanned, and its position is swapped with that of object 6 in intermediate sequence 2 to obtain the target push sequence.

[0074] In the parallel swapping example, for any cluster (taking the i-th cluster as an example), we can first obtain multiple target objects from the i-th cluster in the initial push sequence, and then obtain multiple other objects belonging to the i-th cluster in the initial push sequence that are located before the multiple target objects from the i-th cluster. We then swap the multiple target objects from the i-th cluster with the multiple other objects from the i-th cluster. The swapping method for target objects from other clusters is similar and will not be elaborated here. If target objects from multiple clusters need to be swapped, the swapping process for target objects from different clusters can be performed simultaneously or sequentially.

[0075] In step S18, the target push sequence can be pushed to the client 14 so that the client 14 can sequentially display each object to be pushed in the target push sequence. In some embodiments, the following information can also be marked in the pushed target push sequence: target objects included in at least one cluster; and / or performance parameters of the target objects included in at least one cluster that are superior to other objects in their respective clusters.

[0076] By marking target objects, users can determine which objects displayed on client 14 have superior performance parameters; by displaying the performance parameters of target objects that are superior to other objects, users can determine which aspects of the performance parameters of the objects displayed on client 14 are superior. This makes it easier for users with various needs to filter and identify the objects displayed on client 14, reducing the time cost for users to select high-quality objects.

[0077] like Figure 5 As shown, taking an e-commerce scenario as an example, the target push sequence can include multiple products to be pushed. Information about each product can be displayed on the client 14. Besides basic product information (e.g., product name and price), performance parameters of the product relative to other products can also be displayed. For example, Figure 5 The first product in the list outperforms the others in terms of sales volume, and information such as "No. 1 in sales volume of the same product" can be displayed in the product information of the first product.Figure 5 The performance parameter of the second commodity that is superior to other commodities in the first embodiment is short pants. The information similar to "lowest price for the same product" can be displayed in the commodity information of the second commodity.

[0078] The overall flow of the embodiments of the present disclosure is shown in Figure 6 The above overall flow includes two processing stages of offline processing and online processing. Taking the e-commerce scenario as an example, in the offline processing stage, object clustering can be performed on each candidate commodity (i.e., the candidate object in the foregoing embodiment) on the e-commerce platform to obtain the class cluster to which each commodity belongs. Among them, the multi-modal features of the commodities produced by the BLIP model can be used to cluster the features, thereby determining the class cluster to which each candidate commodity belongs. Then, the target commodity (i.e., the target object in the foregoing embodiment) in each class cluster can be determined. Specifically, the performance scores of each commodity in the same class cluster in three dimensions of sales, price and service quality can be obtained. Since the commodity with the optimal performance score in different dimensions can be the same commodity, 1 to 3 target commodities will be selected from each class cluster.

[0079] In the online processing stage, the same object optimization can be performed, that is, each target commodity in the initial push sequence is exchanged with other to-be-pushed commodities (i.e., the to-be-pushed object in the foregoing embodiment) in the corresponding class cluster, so that the push order of the target commodity of each class cluster is arranged in front of other commodities in the corresponding class cluster. Then, the optimization display can be performed on the foreground client 14. For example, on the search page or the commodity recommendation page, the commodity card displays a mark that the commodity is the optimal in sales / price / service quality in the class cluster, explicitly tells the user that the commodity is a better choice than other commodities in the same class cluster in terms of sales / price / service quality, provides more reference information for the user to select a suitable commodity, and helps the user to make a decision.

[0080] The embodiments of the present disclosure have the following advantages:

[0081] (1) The multi-modal features produced by the BLIP model are used for clustering to obtain the class cluster to which the candidate object belongs, thereby improving the recognition accuracy of the class cluster.

[0082] (2) A plurality of performance parameters are designed, and through offline parameter optimization, the performance scores of the to-be-pushed objects in multiple dimensions are fused with the conversion rate of the to-be-pushed objects, different dimension target objects are calculated, and in the sorting link, the target objects of each class cluster in the initial push sequence are replaced to the front position of the sequence through the optimization replacement logic. Through the selection and replacement of the target objects, the traffic structure is optimized, and the loss of online efficiency is greatly reduced.

[0083] (3) In the foreground, the preferred marking display indicates that the object to be pushed is the optimal target object in a certain dimension, providing more information for users, reducing user decision-making costs, significantly improving user efficiency, and improving user conversion rates.

[0084] Referring to Figure 7 The embodiment of the disclosure also provides a same-model cluster identification method, which comprises the following steps:

[0085] Step S22: Obtain the product information of a plurality of products on an e-commerce platform.

[0086] Step S24: Extract features of the product information of the plurality of products respectively to obtain the features of the plurality of products.

[0087] Step S26: Cluster the features of the plurality of products to obtain at least one same-model cluster to which the plurality of products belong; the products in the same same-model cluster are a set of products of the same model or style; wherein the information of the plurality of products is used to push to a client, and a target product in the same same-model cluster is preferentially pushed compared to other products in the same same-model cluster, and the target product in the same same-model cluster has better product attributes in at least one dimension than other products in the same same-model cluster in the corresponding dimension.

[0088] In step S22, the plurality of products on the e-commerce platform can include but are not limited to clothing, food, office supplies, plants, digital products, furniture, etc., and the product information of the products can include but is not limited to title information, picture information and / or text description information, etc.

[0089] In step S24, the features of the plurality of products on the e-commerce platform can be extracted by a pre-trained feature extraction model to obtain the features of the plurality of products. The features include but are not limited to at least one of the following: product name, color, material, model, purpose, size, application scenario, and target population.

[0090] In step S26, the plurality of products can be clustered based on the features of the plurality of products to determine the same-model cluster to which each product belongs. The products in the same same-model cluster are a set of products of the same model or style. For example, in the case where the style of a product is represented by color, a certain red dress and other dresses with pictures and titles very similar to "red dress" belong to the same same-model cluster.

[0091] The information of the plurality of commodities can be pushed to the client for display. For example, an initial push sequence including the information of the plurality of commodities can be obtained first, and the initial push sequence is adjusted so that the push order of the target commodity in the same commodity cluster is before the push order of other commodities in the same commodity cluster (that is, the target commodity in the same commodity cluster is pushed first compared with other commodities in the same commodity cluster). In this embodiment, the e-commerce platform corresponds to the service platform in the foregoing embodiment, and the plurality of commodities of the e-commerce platform correspond to the plurality of to-be-pushed objects in the foregoing embodiment. For details of the specific manner of pushing the information of the plurality of commodities, refer to the foregoing embodiment, which will not be described here.

[0092] The embodiments of the present disclosure further provide a computer device, which at least includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method of any of the foregoing embodiments when executing the program.

[0093] Figure 8 A more specific hardware structure schematic diagram of a computer device provided by the embodiments of the present disclosure is shown, which can include a processor 202, a memory 204, an input / output interface 206, a communication interface 208, and a bus 210. The processor 202, the memory 204, the input / output interface 206, and the communication interface 208 are connected to each other through the bus 210 for internal communication.

[0094] The processor 202 can be implemented in the form of a general-purpose central processing unit (CPU), a microprocessor, an application specific integrated circuit (ASIC), or one or more integrated circuits, etc., for executing related programs to implement the technical solutions provided by the embodiments of the present disclosure. The processor 202 can also include a graphics card, which can be an Nvidia titan X graphics card or a 1080Ti graphics card, etc.

[0095] The memory 204 can be implemented in the form of a read only memory (ROM), a random access memory (RAM), a static storage device, a dynamic storage device, etc. The memory 204 can store an operating system and other application programs. When the technical solutions provided by the embodiments of the present disclosure are implemented by software or firmware, the related program codes are stored in the memory 204 and called and executed by the processor 202.

[0096] The input / output interface 206 is configured to connect an input / output module to realize information input and output. The input / output module can be configured in the device (not shown in the figure) or externally connected to the device to provide corresponding functions. The input device can include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output device can include a display, a speaker, a vibrator, an indicator light, etc.

[0097] The communication interface 208 is configured to connect a communication module (not shown in the figure) to realize communication interaction between the device and other devices. The communication module can realize communication through a wired manner (such as a USB, a network cable, etc.) or through a wireless manner (such as a mobile network, WIFI, Bluetooth, etc.).

[0098] The bus 210 includes a channel to transmit information between various components (such as the processor 202, the memory 204, the input / output interface 206, and the communication interface 208) of the device.

[0099] It should be noted that although the above device only shows the processor 202, the memory 204, the input / output interface 206, the communication interface 208, and the bus 210, in the specific implementation process, the device can also include other components necessary for normal operation. In addition, those skilled in the art can understand that the above device can also only contain the components necessary for implementing the embodiments of the present disclosure, and does not have to contain all the components shown in the figure.

[0100] The embodiments of the present disclosure provide a computer program product, including a computer program, which is executed by a processor to implement the method described in any of the embodiments of the present disclosure.

[0101] The embodiments of the present disclosure also provide a computer-readable storage medium, which stores a computer program, and the program is executed by a processor to implement the method described in any of the preceding embodiments.

[0102] Computer-readable media includes permanent and non-permanent, movable and non-movable media, which can be implemented by any method or technology to store information. The information can be computer-readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information accessible by a computer device. According to the definition herein, computer-readable media does not include transitory media such as modulated data signals and carriers.

[0103] The various embodiments in the present disclosure are described in a progressive manner, and the same or similar parts between the various embodiments can be referred to each other. Each embodiment focuses on the difference from other embodiments. In particular, for the device embodiments, since they are basically similar to the method embodiments, they are described more simply, and the relevant parts can be referred to the part of the method embodiments. The device embodiments described above are only schematic, and the modules described as separate components can or can not be physically separated, and the functions of each module can be implemented in the same or multiple software and / or hardware in the implementation of the embodiments of the present disclosure. Part or all of the modules can be selected to achieve the purpose of the embodiments of the present disclosure according to actual needs. Those skilled in the art can understand and implement without creative labor.

[0104] The above is only a specific implementation of the embodiments of the present disclosure. It should be noted that for those skilled in the art, without departing from the principles of the embodiments of the present disclosure, several improvements and refinements can be made, which should also be considered as the protection scope of the embodiments of the present disclosure.

Claims

1. An object push method, the method comprising: Determine an initial push sequence, wherein the initial push sequence includes at least one cluster of multiple objects to be pushed; The at least one cluster is obtained by dividing each candidate object in the object set into clusters. The feature similarity between candidate objects in the same cluster is greater than a preset similarity threshold. The features of the candidate objects are extracted from the image data and / or text data of the candidate objects. The candidate objects are products of e-commerce platforms. The image data includes product images and the text data includes product titles. The clusters to be pushed in the initial push sequence are all different. v is a positive integer. Identify the target objects included in each of the at least one cluster, wherein the performance parameters of the target objects in the cluster are better than the performance parameters of other objects in the cluster in the corresponding dimension; The target push object of each cluster in the initial push sequence is adjusted to be before other objects in the corresponding cluster to obtain the target push sequence; The target push sequence is pushed.

2. The method according to claim 1, wherein any object to be pushed in the initial push sequence includes first tag information, the first tag information of the object to be pushed being used to indicate the cluster to which the object to be pushed belongs; the method further includes: Retrieve the first label information of multiple candidate objects in the object collection; Based on the first tag information of the multiple candidate objects, multiple objects to be pushed are determined from the multiple candidate objects, including the at least one category cluster.

3. The method according to claim 2, wherein obtaining the first tag information of multiple candidate objects in the object set includes: The features of the multiple candidate objects in the object set are extracted by a pre-trained feature extraction model. Based on the characteristics of the multiple candidate objects, the multiple candidate objects are divided into clusters to obtain the clusters to which the multiple candidate objects belong; The first label information of the multiple candidate objects is determined based on the cluster to which they belong.

4. The method according to claim 1, wherein any object to be pushed in the initial push sequence includes second tag information, and the second tag information of the object to be pushed is used to indicate whether the object to be pushed is a target object in its own cluster; Determining the target objects included in each of the at least one cluster includes: Obtain the second tag information of multiple objects to be pushed, each of the at least one cluster; Based on the second tag information of multiple objects to be pushed included in the at least one cluster, the target objects included in the at least one cluster are determined from the multiple objects to be pushed included in the at least one cluster.

5. The method according to claim 1, wherein the target objects in the cluster include target objects in the cluster that correspond to the at least one dimension; the method further includes: The target object corresponding to any dimension in any cluster is determined using the following method: Obtain the performance scores of multiple candidate objects in the cluster corresponding to the dimension; the multiple candidate objects in the cluster include multiple objects to be pushed in that cluster; Based on the performance scores of multiple candidate objects in the cluster corresponding to the dimension, the target object in the cluster corresponding to the dimension is determined from the multiple candidate objects in the cluster.

6. The method according to claim 5, wherein determining the target object corresponding to the dimension in the cluster from the multiple candidate objects in the cluster based on the performance scores of the multiple candidate objects in the cluster corresponding to the dimension comprises: If the difference in performance scores of multiple candidate objects in the cluster corresponding to the dimension is greater than a preset difference, the target object in the cluster corresponding to the dimension is determined from the multiple candidate objects in the cluster based on the performance scores of multiple candidate objects in the cluster corresponding to the dimension. Otherwise, based on the performance scores of multiple candidate objects in the cluster corresponding to the dimension and the conversion rate scores of multiple candidate objects in the cluster, the target object in the cluster corresponding to the dimension is determined from the multiple candidate objects in the cluster.

7. The method according to claim 6, wherein determining the target object corresponding to the dimension in the cluster from the multiple candidate objects in the cluster based on the performance score of the multiple candidate objects in the cluster corresponding to the dimension and the conversion rate score of the multiple candidate objects in the cluster comprises: The performance scores of multiple candidate objects in the cluster corresponding to the dimension and the conversion rate scores of multiple candidate objects in the cluster are weighted to obtain the weighted scores of multiple candidate objects in the cluster on the dimension. Based on the weighted scores of multiple candidate objects in the cluster on the dimension, the target object corresponding to the dimension in the cluster is determined from the multiple candidate objects in the cluster.

8. The method of claim 5, wherein the at least one dimension includes a first dimension for representing the popularity of the candidate, and the performance parameters on the first dimension include the number of deliveries; The step of obtaining the performance scores of multiple candidate objects in the cluster corresponding to the dimension includes: The performance score of the first dimension is determined based on the following method: (This is achieved by determining the performance score of any one of the multiple candidate objects in the cluster corresponding to the first dimension.) Based on the number of deliveries of the candidate object in multiple statistical periods, obtain the performance score of the candidate object corresponding to the first dimension in the multiple statistical periods respectively. The performance scores of the candidate objects corresponding to the first dimension are weighted in the multiple statistical periods to obtain the performance scores of the candidate objects corresponding to the first dimension.

9. The method according to claim 5, wherein the at least one dimension includes a second dimension for representing the price of a candidate object, and the performance parameters on the second dimension include a price parameter; obtaining the performance scores of multiple candidate objects in the cluster corresponding to the dimension includes: The performance score of the second dimension is determined based on the following method: (The candidate object among multiple candidate objects in the cluster is then used to determine the performance score of any one of the multiple candidate objects in the cluster.) Obtain the price parameters of the candidate object; Based on the maximum and minimum price parameters of multiple candidate objects in the cluster, the price parameters of the candidate objects are normalized to obtain the normalized price parameters of the candidate objects. The normalized price parameter of the candidate object is determined as the performance score of the candidate object corresponding to the second dimension.

10. The method of claim 5, wherein the at least one dimension includes a third dimension for representing the service quality of the candidate object, and the performance parameters on the third dimension include delivery time; The step of obtaining the performance scores of multiple candidate objects in the cluster corresponding to the dimension includes: The performance score of the third dimension is determined based on the following method: (The candidate object among multiple candidate objects in the cluster is then used to determine the performance score of the third dimension.) Obtain the delivery time of the candidate object; Based on the delivery time of the candidate object, the performance score of the candidate object corresponding to the third dimension is determined; wherein, the performance score of the candidate object corresponding to the third dimension is inversely correlated with the delivery time of the candidate object.

11. The method according to claim 1, wherein adjusting the push order of each object to be pushed in the initial push sequence includes: For any one of the at least one clusters, if other objects of the cluster in the initial push sequence are located before the target object of the cluster in the initial push sequence, the target object of the cluster is swapped with other objects of the cluster.

12. The method according to claim 1, further comprising: The following information is marked in the target push sequence: The target objects included in each of the at least one cluster; and / or The target objects included in at least one cluster have performance parameters that are superior to those of other objects in their respective clusters.

13. The method according to claim 1, wherein the feature similarity of multiple objects to be pushed in the same cluster is greater than a preset similarity threshold.

14. A method for identifying identical clusters, the method comprising: Obtain product information for multiple products on an e-commerce platform; Feature extraction is performed on the product information of the multiple products to obtain the features of the multiple products; the product information includes product images and / or product titles; Cluster the features of the multiple products to obtain at least one cluster of the same type to which the multiple products belong; the products in the same cluster are a collection of products of the same model or style; The information of the multiple products is used to push to the client, and the target product in the same product cluster is pushed with priority over other products in the same product cluster. The target product in the same product cluster has better product attributes in at least one dimension than other products in the same product cluster in the corresponding dimension. The consecutive v products in the product sequence pushed to the client belong to different product clusters, where v is a positive integer.

15. A computer-readable storage medium having a computer program stored thereon that, when executed by a processor, implements the method of any one of claims 1 to 14.

16. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the program, implements the method of any one of claims 1 to 14.

17. A computer program product comprising a computer program that, when executed by a processor, implements the method of any one of claims 1 to 14.

Citation Information

Patent Citations

  • Intelligent task processing method and system based on big data

    CN117035948A