Product selection method and device, processing equipment, computer readable storage medium and program product
Through a new product selection method, through the update of elimination product collections and the optimization of associated orders, the problems of not considering the associated purchase situation of goods and solving difficulties in the existing technology are solved, and more efficient forward warehouse product selection is achieved, improving consumer shopping experience.
Patent Information
- Application Number
- CN202411755686.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-02
- Publication Date
- 2025-03-21
- Estimated Expiration
- 2044-12-02
AI Technical Summary
The existing product selection algorithms have invalid product selection in e-commerce retail scenarios, especially the related purchase situation between products is not considered. In addition, the precise solution algorithm based on integer planning is difficult to solve in large-scale order scenarios and cannot be solved within a reasonable time.
A product selection method is proposed. By initializing a collection of eliminated products, selecting products from the product collection as the eliminated products based on the quantity of associated orders, and constantly updating the associated orders until the quantity threshold is reached, the final product selection collection is determined.
Without increasing the number of products selected, the product selection in the forward warehouse is achieved by selecting eliminated products to ensure that all selected products have high sales volume and can cover the related purchases between products and improve the timeliness of consumers' shopping experience.
Smart Images

Figure CN119671677A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a product selection method and apparatus, a processing device, a computer-readable storage medium, and a program product. Background Art
[0002] In e-commerce retail scenarios, sellers will deploy forward warehouses in some cities to store a small number of popular products in order to shorten the time it takes for consumers to receive goods. After consumers place an order on an e-commerce platform, sellers will give priority to shipping from forward warehouses, and will ship from full-category warehouses when the forward warehouses are out of stock. Since forward warehouses deliver goods in a more timely manner than full-category warehouses, they can provide consumers with a faster and higher-quality shopping experience. Therefore, the product selection strategy of forward warehouses will directly affect the consumer experience.
[0003] One of the existing product selection algorithms is to sort by historical sales in reverse order, and select the top N products with the highest sales as the forward warehouse stock products. However, the method based on reverse order of sales does not consider the associated purchases between products, which may result in invalid product selection. Another method is an exact solution algorithm based on integer programming, but it is difficult to solve. For large-scale order scenarios with tens of thousands of products, it cannot be solved within a reasonable time. Therefore, an effective product selection method is urgently needed to solve this problem. Summary of the invention
[0004] In order to solve the above technical problems, the embodiments of the present invention provide a product selection method and device, a processing device, a computer-readable storage medium and a program product.
[0005] In a first aspect, the product selection method provided in the embodiments of the present application includes:
[0006] Initialize the first commodity set to be an empty set, where the commodities in the first commodity set are obsolete commodities;
[0007] Based on the number of associated orders for each product in the second product set, select products from the second product set as eliminated products, and add the eliminated products to the first product set;
[0008] updating the associated order of each commodity in the second commodity set based on the eliminated commodity, and selecting commodities from the second commodity set as eliminated commodities based on the updated associated order quantity of each commodity in the second commodity set, and adding the eliminated commodities to the first commodity set until the quantity of commodities in the second commodity set reaches a first quantity threshold;
[0009] A third commodity set is determined based on the second commodity set and the first commodity set, and commodities in the third commodity set are selected commodities.
[0010] In a second aspect, a product selection device provided in an embodiment of the present application is applied to a processing device, and the device includes:
[0011] The processing unit is configured to initialize the first commodity set as an empty set, where commodities in the first commodity set are eliminated commodities; based on the number of associated orders of each commodity in the second commodity set, select commodities from the second commodity set as eliminated commodities, and add the eliminated commodities to the first commodity set; based on the eliminated commodities, update the associated orders of each commodity in the second commodity set, and based on the updated number of associated orders of each commodity in the second commodity set, select commodities from the second commodity set as eliminated commodities, and add the eliminated commodities to the first commodity set, until the number of commodities in the second commodity set reaches a first quantity threshold;
[0012] A determining unit is used to determine a third commodity set based on the second commodity set and the first commodity set, where commodities in the third commodity set are selected commodities.
[0013] In a third aspect, the processing device provided in an embodiment of the present application includes: a processor and a memory, the memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to execute any one of the above-mentioned product selection methods.
[0014] In a fourth aspect, the computer-readable storage medium provided in an embodiment of the present application is used to store a computer program, and the computer program enables a computer to execute any one of the above-mentioned product selection methods.
[0015] In a fifth aspect, the computer program product provided in the embodiments of the present application includes computer program instructions, which enable a computer to execute any one of the product selection methods described above.
[0016] In the technical solution of the embodiment of the present application, by initializing the first commodity set as an empty set, the commodities in the first commodity set are eliminated commodities; based on the number of associated orders of each commodity in the second commodity set, commodities are selected from the second commodity set as eliminated commodities, and the eliminated commodities are added to the first commodity set; based on the eliminated commodities, the associated orders of each commodity in the second commodity set are updated, and based on the updated number of associated orders of each commodity in the second commodity set, commodities are selected from the second commodity set as eliminated commodities, and the eliminated commodities are added to the first commodity set until the number of commodities in the second commodity set reaches the first quantity threshold; based on the second commodity set and the first commodity set, a third commodity set is determined, and the commodities in the third commodity set are the selected commodities; in this way, a new forward warehouse selection algorithm is realized, and the selection of forward warehouse is realized by selecting eliminated commodities without increasing the number of selected commodities, and the influence of eliminated commodities on associated orders is continuously updated in the process of elimination, so as to ensure that the finally selected commodities are all with high sales volume, and the associated purchase situations before each other can be covered in the selected commodities, and the timeliness experience of consumer shopping is improved without increasing the number of selected commodities. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] Figure 1 This is a schematic diagram of a product selection method in an embodiment of the present application. Figure 1 ;
[0018] Figure 2 This is a schematic diagram of a commodity collection in an embodiment of the present application. Figure 1 ;
[0019] Figure 3 This is a schematic diagram of a commodity collection in an embodiment of the present application. Figure 2 ;
[0020] Figure 4 This is a schematic diagram of a product selection method in an embodiment of the present application. Figure 2 ;
[0021] Figure 5 It is a schematic diagram of the structural composition of the product selection device provided in an embodiment of the present application;
[0022] Figure 6 It is a schematic structural diagram of a processing device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0023] The following will describe the technical solutions in the embodiments of the present application in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0024] It should be noted that the terms "first", "second", etc. in this document are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" or "second" may explicitly or implicitly include one or more of the features. In the description of the present disclosure, the meaning of "plurality" is at least two, such as two, three, etc., unless otherwise clearly and specifically defined.
[0025] To facilitate understanding of the technical solutions of the embodiments of the present application, the relevant technologies of the embodiments of the present application are described below. The following related technologies can be arbitrarily combined with the technical solutions of the embodiments of the present application as optional solutions, and they all belong to the protection scope of the embodiments of the present application.
[0026] In the e-commerce retail scenario, sellers will deploy several large-scale full-category warehouses across the country to store self-operated goods sold on e-commerce platforms. At the same time, in order to shorten the time it takes for consumers to receive goods, sellers will also deploy forward warehouses in some cities, which are generally smaller than full-category warehouses and only store a small number of best-selling goods. After consumers place an order on an e-commerce platform, the seller will give priority to shipping from the forward warehouse. When the forward warehouse is not in stock (part of the ordered goods or the goods are out of stock nationwide), it will ship from the full-category warehouse. Since the delivery time of the forward warehouse (half a day to one day) is better than that of the full-category warehouse (more than 2 days), the former can bring consumers a faster and higher-quality shopping experience. Therefore, the product selection strategy of the forward warehouse will directly affect the consumer experience.
[0027] The main idea of the existing product selection algorithm is to sort by historical sales in reverse order, and select the top N products with high sales as the forward warehouse stock products. This is an approximate regularization method. Another method is an exact solution algorithm based on integer programming, which inputs historical order and product information into the integer programming model, and obtains the product selection plan that can maximize the forward warehouse order satisfaction rate through the solver.
[0028] However, in the above scheme, the method based on reverse sorting of sales volume does not take into account the associated purchases between commodities. For example, suppose a certain coffee machine has a high historical sales volume, and consumers often buy coffee beans at the same time when purchasing the coffee machine, but there are many types of coffee beans to choose from, so the sales volume of coffee beans is relatively scattered, resulting in the sales volume of any type of coffee beans being much lower than that of the coffee machine. If the product selection method is based on reverse sorting, the coffee machine may be selected, but the coffee beans will not be selected. In this way, when consumers purchase coffee machines and coffee beans at the same time, since the forward warehouse does not have coffee beans in stock, the entire order can only be shipped from the full-category warehouse with slow timeliness, resulting in invalid product selection. The precise algorithm based on integer programming is difficult to solve, and can only handle scenarios with hundreds of commodities. It cannot solve large-scale order scenarios with tens of thousands of commodities within a reasonable time. To this end, the following technical solution of this application is proposed.
[0029] To facilitate understanding of the technical solutions of the embodiments of the present application, the technical solutions of the present application are described in detail below through specific embodiments. The above related technologies can be combined arbitrarily with the technical solutions of the embodiments of the present application as optional solutions, and they all belong to the protection scope of the embodiments of the present application. The embodiments of the present application include at least part of the following contents.
[0030] Figure 1 This is a schematic diagram of the process of the product selection method provided in the embodiment of the present application. Figure 1 ,like Figure 1 As shown, the product selection method includes:
[0031] Step 101: Initialize the first commodity set to be an empty set, and the commodities in the first commodity set are eliminated commodities.
[0032] In an embodiment of the present application, the first commodity set is a set of eliminated commodities, which includes eliminated commodities and identification information of eliminated commodities. The eliminated commodities selected into the first commodity set represent commodities that were not selected when selecting commodities, i.e., eliminated commodities. It should be noted that eliminated commodities can also be called eliminated commodities, and the set of eliminated commodities can also be called the set of eliminated commodities. From the perspective of algorithm input, the first commodity set can also be expressed as eliminated_skus. Among them, sku (stockkeeping unit) refers to the inventory unit, which is used to manage and track commodity inventory. On an e-commerce platform, a commodity may have multiple attributes such as colors, sizes, styles, etc. Each attribute can be regarded as a sku, and different skus may have different prices and inventories.
[0033] In an embodiment of the present application, before selecting products, it is necessary to initialize the first product set to an empty set. Exemplarily, the eliminated product set is initialized to eliminated_skus=set(). In this way, when executing the product selection step, eliminated products are continuously selected and put into the eliminated product set until the pre-set conditions are met, thereby realizing product selection through elimination of products.
[0034] Step 102: Based on the number of associated orders for each product in the second product set, select products from the second product set as eliminated products, and add the eliminated products to the first product set.
[0035] In the embodiment of the present application, the second product set is a set of all products, which can be expressed as all_sku_set from the perspective of algorithm input. The set contains each product and the identification information of the corresponding product.
[0036] In the embodiment of the present application, the associated orders of a product refer to all orders containing the product. By counting the number of associated orders for each product in the second product set, products with fewer associated orders are selected as eliminated products, and the eliminated products are added to the eliminated product set.
[0037] Step 103: Update the associated orders of each product in the second product set based on the eliminated products, and select products from the second product set as eliminated products based on the updated associated order quantity of each product in the second product set, and add the eliminated products to the first product set until the number of products in the second product set reaches the first quantity threshold.
[0038] In the embodiment of the present application, the restriction on the selection of goods is determined by setting a first quantity threshold, wherein the first quantity threshold represents the total number of types of goods to be selected, also known as the width of the whitelist, which can also be expressed as top_K from the perspective of algorithm input. For example, after it is determined that P goods are to be eliminated, the associated orders of the remaining NP goods in the second set of goods are updated based on the P eliminated goods, and based on the number of associated orders of the NP goods in the updated second set of goods, a new round of goods is selected from the updated second set of goods as eliminated goods, and the new round of eliminated goods is added to the eliminated goods set, and the selection step is repeated until the number of goods in the updated second set of goods meets the whitelist restriction width.
[0039] Step 104: Determine a third product set based on the second product set and the first product set, and the products in the third product set are the selected products.
[0040] In the embodiment of the present application, the third product set may be a white list of products selected by the forward warehouse, and the products in the white list are the products selected by the forward warehouse. The number of products selected in the third set may be the difference between the number of all products in the second product set and the number of discarded products in the first product set. Figure 2 , Figure 2 The schematic diagram of the relationship between the commodity sets provided in the embodiment of the present application is a schematic diagram showing the relationship between the first commodity set, the second commodity set and the third commodity set provided in the embodiment of the present application. Since the number of commodities selected by the forward warehouse is limited, the width of the whitelist is set to the first quantity threshold. When the number of commodities in the third commodity set is greater than or equal to the first quantity threshold, the selection step is repeated, that is, the selection of eliminated commodities is repeated, and the eliminated commodities are placed in the third set until the number of commodities in the second commodity set meets the whitelist limit width. At this time, the remaining commodities in the second commodity set after the whitelist limit width is met are the commodities selected by the forward warehouse.
[0041] As can be seen from the above, the product selection method provided in the embodiment of the present application initializes the first product set as an empty set, and the products in the first product set are eliminated products; based on the number of associated orders of each product in the second product set, select products from the second product set as eliminated products, and add the eliminated products to the first product set; based on the eliminated products, the associated orders of each product in the second product set are updated, and based on the updated number of associated orders of each product in the second product set, products are selected from the second product set as eliminated products, and the eliminated products are added to the first product set until the number of products in the second product set reaches the first quantity threshold; based on the second product set and the first product set, a third product set is determined, and the products in the third product set are the selected products; in this way, a new forward warehouse product selection algorithm is implemented, and the selection of the forward warehouse is realized by selecting eliminated products without increasing the number of selected products, and the influence of the eliminated products on the associated orders is continuously updated during the elimination process, thereby ensuring that the finally selected products are all high-selling products, and the associated purchase situations before each other can be covered in the selected products, and the timeliness experience of consumers' shopping is improved without increasing the number of selected products.
[0042] Figure 3 is a schematic diagram of a second commodity set provided in an embodiment of the present application, the second commodity set includes N commodities, N is a positive integer. For example, all_sku_set = set (commodity 1, commodity 2, commodity 3, ..., commodity N). Then step 102 can be executed through steps 1021 to 1023, and the specific steps are as follows:
[0043] Step 1021: Obtain associated orders formed by N commodities, and count the number of associated orders of the N commodities.
[0044] Here, when performing the product selection step, the associated orders formed by N products can be obtained first. At this time, the N products are all the products in the second product set, and then the number of associated orders of the N products is counted. Specifically, the associated orders formed by N products can be a set of all orders containing the products corresponding to the N products. From the perspective of algorithm input, the associated orders of N products can be expressed as sku_order. In sku_order, the identification information of each product is used as the keyword key, and the set of all order numbers containing the product is used as the value value. The number of associated orders of N products is counted, that is, the number of associated orders of each product in sku_order is counted. It should be noted that the set sku_order formed by obtaining the associated orders of N products can be a dictionary type set, that is, there are keywords and values corresponding to the keywords.
[0045] Exemplarily, the associated order set of N products can be obtained as sku_order = {key1 = product 1: value1 = order number A + order number B + order number C}, {key2 = product 2: value2 = order number A + order number C}, ..., {keyN = product N: valueN = order number A}. Among them, for product 1, the associated orders of product 1 are order A, order B and order C, that is, the number of associated orders of product 1 is 3; for product 2, the associated orders of product 2 are order A and order C, that is, the number of associated orders of product 2 is 2, ..., for product N, the associated order of product N is order number A, that is, the number of associated orders of product N is 1.
[0046] In some embodiments, counting the number of associated orders of N commodities includes: counting the number of associated orders of commodities other than eliminated commodities among the N commodities. Here, when repeatedly executing the product selection step, only the number of associated orders of commodities other than eliminated commodities among the N commodities is counted. In this way, product selection is achieved by determining eliminated commodities, and the weight of the influence of eliminated commodities on subsequent orders is continuously updated during the elimination process, thereby ensuring that the finally selected commodities are all high-selling commodities, and the associated purchase situations between them can be covered by the selected commodities.
[0047] Step 1022: Select P commodities from the N commodities as eliminated commodities based on the number of associated orders, where the P commodities are the first P commodities with the smallest number of associated orders among the N commodities, and P is a positive integer less than N.
[0048] Step 1023: Add the eliminated products to the first product set.
[0049] Here, after counting the number of associated orders of N products, that is, counting the number of associated orders of each product in sku_order, the identification information of each product in sku_order is sorted in ascending order according to the number of associated orders of each product to obtain a sorted list set, which can be represented as sorted_sku. Then, the first P products in the list set sorted_sku are taken as eliminated products and put into the eliminated product set.
[0050] For example, in sku_order, the associated orders of product 1 are order A, order B and order C, that is, the number of associated orders of product 1 is 3; for product 2, the associated orders of product 2 are order A and order C, then the number of associated orders of product 2 is 2, ..., for product N, the associated order of product N is order number A, then the number of associated orders of product N is 1. Sort the N products in ascending order according to the number of associated orders to obtain a list sorted_sku = set (product N, product 2, product 1...). Put the first P products in the list sorted_sku into the elimination set.
[0051] In some embodiments, a first value is selected from a first numerical range as the value of P, wherein the minimum value of the first numerical range is 1, and the maximum value of the first numerical range is determined based on the number of commodities in the third commodity set. Here, the number of commodities in the third commodity set is determined by the difference between the first commodity set and the second commodity set in the selection step, so the value of P is between 1 and len(all_sku_set)-len(eliminated_skus). Among them, len() represents the number of elements in a sequence type container such as a string, list, tuple, etc., that is, the length.
[0052] Specifically, selecting the first value from the first numerical range includes: selecting the first value from the first numerical range based on the number of commodities in the first commodity set; wherein the smaller the number of commodities in the first commodity set, the larger the first value; the larger the number of commodities in the first commodity set, the smaller the first value. Here, when P>1, an acceleration effect is achieved, that is, when the number of discarded commodities is far from the target number, a larger P can be appropriately taken, and when the number of discarded commodities is close to the target number, P can be gradually reduced to 1.
[0053] From the above, it can be seen that the product selection method provided in the embodiment of the present application obtains the associated orders formed by N products and counts the number of associated orders of the N products; based on the number of associated orders, P products are selected from the N products as the eliminated products, and the P products are the first P products with the smallest number of associated orders among the N products, and P is a positive integer less than N; the eliminated products are added to the first product set; in this way, the product selection of the forward warehouse is realized by selecting the eliminated products, and the impact of the eliminated products on the associated orders is continuously updated during the elimination process, thereby ensuring that the finally selected products are all those with high sales volume, and the related purchase situations between each other can be covered in the selected products, thereby improving the timeliness experience of consumers' shopping without increasing the number of selected products.
[0054] In some embodiments, updating the associated order of each commodity in the second commodity set based on the eliminated commodity includes: determining the associated order and the associated commodity of the eliminated commodity, and updating the associated order of N commodities based on the associated order and the associated commodity of the eliminated commodity. Here, while putting the eliminated commodity into the eliminated commodity set, all the associated order sets affected by the eliminated commodity are found through the associated order set sku_order of the N commodities, and for each associated order, other commodities in the order are found as the associated commodities of the eliminated commodity, and the associated order of each commodity in the second set is updated according to the associated order and the associated commodities of the eliminated commodity, and at this time, the second commodity set includes NP commodities.
[0055] In some implementations, associated commodities of M orders are obtained, where M is a positive integer, and the associated commodities of the M orders and the associated orders of the N commodities are obtained based on statistics of the same order data.
[0056] Here, obtaining the associated products of M orders can be the set of all associated products contained in the M orders respectively. Wherein, obtaining the associated products of M orders can be expressed as order_sku. In order_sku, M order numbers are used as keywords key, and the set of all associated products on the order is used as the value value. Exemplary. order_sku = {key1 = order number A: value1 = product 1 + product 2 + product N}, {key2 = order number B: value2 = product 1}, {key1 = order number C: value1 = product 1 + product 2}..., {keyN = order number N: valueN =...}. Wherein, for order number A, the associated products of the order are product 1, product 2 and product N; for order number B, the associated product of the order is product 1, and for order number C, the associated products of the order are product 1 and product 2.
[0057] It should be noted that the set formed after obtaining the associated orders of N products and the set formed after obtaining the associated products of M orders are dictionary-type sets, that is, there are keywords and values corresponding to the keywords respectively. At the same time, the set formed after obtaining the associated orders of N products and the set formed after obtaining the associated products of M orders are associated.
[0058] In some implementations, determining the associated orders and associated commodities of the eliminated commodity includes:
[0059] Based on the associated orders of N commodities, the associated order of the eliminated commodity is determined to be the first order; based on the associated commodities of M orders, the associated commodity of the first order is determined to be the first commodity; wherein the first commodity and the first order are the associated order and the associated commodity of the eliminated commodity.
[0060] Here, when it is determined that the first P items in the list sorted_sku are obsolete, the keywords (product identifiers) corresponding to the P obsolete items are queried in sku_order, and the associated orders corresponding to the P obsolete items are determined according to the values corresponding to the keywords, and the associated orders corresponding to the P obsolete items are determined as the first order. Afterwards, the keywords (order number) corresponding to the first order are queried in order_sku, and the associated products corresponding to the first order are determined according to the values corresponding to the keywords, and the associated products corresponding to the first order are determined as the first products.
[0061] For example, sku_order = {key1 = product 1: value1 = order number A + order number B + order number C}, {key2 = product 2: value2 = order number A + order number C}, ..., {keyN = product N: valueN = order number A}. order_sku = {key1 = order number A: value1 = product 1 + product 2 + product N}, {key2 = order number B: value2 = product 1}, {key1 = order number C: value1 = product 1 + product 2} ..., {keyN = order number N: valueN = ...}. sorted_sku = set (product N, product 2, product 1 ...). When P is set to 1, the eliminated product set is determined: eliminated_skus = set (product N), that is, the eliminated product is product N, and then the keyword queried in sku_order is product N, and the corresponding associated order number is order A. Then the keyword queried in order_sku is order number A, and the corresponding associated products are product 1 and product 2. In this way, the associated orders and corresponding associated products of the eliminated products are determined.
[0062] It should be noted that the number of the first orders may be one or more, and the number of the first products may be one or more. In the case of multiple first orders, the corresponding associated products need to be determined for each order.
[0063] In some implementations, updating the associated orders of N commodities based on the associated orders of the eliminated commodity and the associated commodities includes: deleting a first order of a first commodity among the associated orders of the N commodities.
[0064] Here, after the obsolete products and the associated orders and associated commodities corresponding to the obsolete products are determined, the first order of the first commodity is deleted from the associated orders of the N commodities.
[0065] For example, sku_order = {key1 = product 1: value1 = order number A + order number B + order number C}, {key2 = product 2: value2 = order number A + order number C}, ..., {keyN = product N: valueN = order number A}. order_sku = {key1 = order number A: value1 = product 1 + product 2 + product N}, {key2 = order number B: value2 = product 1}, {key1 = order number C: value1 = product 1 + product 2} ..., {keyN = order number N: valueN = ...}. sorted_sku = set (product N, product 2, product 1 ...).
[0066] When the eliminated product set is determined: eliminated_skus = set (product N), that is, the eliminated product is product N, the keyword is searched in sku_order as product N, that is, {keyN = product N: valueN = order number A}, and then the keyword is searched in order_sku as order number A, {key1 = order number A: value1 = product 1 + product 2 + product N}, that is, the corresponding associated products are product 1 and product 2, and then sku_order is updated, and order number A in product 1 and product 2 is deleted. At this time, sku_order = {key1 = product 1: value1 = order number B + order C}, {key2 = product 2: value2 = order number C}, .... In this way, an update of sku_order is completed.
[0067] From the above, it can be seen that the product selection method provided in the embodiment of the present application obtains the associated products of M orders, and the associated products of M orders and the associated orders of N products are obtained based on the same order data statistics; based on the associated orders of N products and the associated products of M orders, the associated orders and associated products of the eliminated products are determined; in this way, product selection is achieved through elimination of products, and the influence weights of the eliminated products on subsequent orders are continuously updated during the elimination process, thereby ensuring that the finally selected products are all those with high sales volume and that the related purchase situations between them can be covered by the selected products.
[0068] Embodiment 1
[0069] Figure 4 This is a schematic diagram of a product selection method provided in an embodiment of the present application. Figure 2 As shown in the figure, it means starting from the reverse direction and considering product selection from the perspective of elimination. That is, as long as one of the products in the order is included in the elimination list, the order is destined to be unable to be satisfied locally. Specifically, the overall steps include:
[0070] Step 401: Initialize the eliminated product set.
[0071] Here, the eliminated product set can be expressed as eliminated_skus, and initializing the eliminated product set can be expressed as eliminated_skus=set(). Among them, the commodities in the eliminated product set are eliminated commodities, which can also be called eliminated products.
[0072] Step 402: Determine whether the second product set meets the first quantity threshold.
[0073] Here, it is determined whether the number of products in the second product set (ie, the difference between the total number of products in the all_sku_set set and the number of products in the eliminated product set) is less than or equal to the whitelist width (top_K). If so, proceed to step 403, otherwise proceed to step 404.
[0074] Step 403: If the second product set meets the first quantity threshold, stop selecting products.
[0075] Here, if the number of products in the second product set is less than or equal to the width of the whitelist, the product selection is stopped and the second product set is returned. The remaining products in the second product set after stopping the product selection are used as the third product set, that is, the forward warehouse whitelist. That is, the remaining products in the third product set at this time are the products selected by the forward warehouse.
[0076] Step 404: Calculate the order quantity affected by each product.
[0077] Here, the number of set elements in the value corresponding to each keyword in sku_order is calculated. Items that have entered the elimination set are no longer counted. Sort the items by the order quantity they affect from small to large to obtain the sorted list set sorted_sku for each item.
[0078] Step 405: Select P commodities as eliminated commodities.
[0079] Here, put the first P items of sorted_sku into the eliminated_skus. Here, P can be an integer between 1 and len(all_sku_set)-len(eliminated_skus). When P>1, it has an accelerating effect. When the number of eliminated products is far from the target number, a larger value can be appropriately taken; when the number of eliminated products is close to the target number, the value can be gradually reduced to 1.
[0080] Step 406: Find the corresponding associated product by searching for the associated orders corresponding to the eliminated product.
[0081] When the eliminated products are put into the eliminated product set, all the related order sets affected by the eliminated products are found through sku_order, and for each related order, other products in the order are found as related products through order_sku.
[0082] Step 407: Update the order set affected by each product.
[0083] Here, all the associated order-associated product pairs in step 405 are deleted from sku_order, and the updated order set sku_order is completed. Steps 402 to 407 are iterated until the selection is satisfied.
[0084] From the above, it can be seen that the product selection method provided in the embodiment of the present application starts from the reverse direction and considers the related orders and related products from the perspective of elimination. As long as one of the products in the order is included in the elimination list, the order is destined to be unable to be satisfied locally. Compared with the prior art that cannot guarantee that the products selected in the whitelist will be affected by the situation of related purchases of the non-selected products from the perspective of product selection, thereby affecting the order fulfillment rate, without increasing the number of selected products, the proportion of orders that can be satisfied by the forward warehouse as a whole is increased, thereby improving the timeliness experience of consumers' shopping, and it is easier to achieve modeling.
[0085] Figure 5 Schematic diagram of the structure of the product selection device provided in the embodiment of the present application, which is applied to processing equipment such as Figure 5 As shown, the product selection device includes:
[0086] Processing unit 501 is used to initialize the first commodity set as an empty set, and the commodities in the first commodity set are eliminated commodities; based on the number of associated orders of each commodity in the second commodity set, select commodities from the second commodity set as eliminated commodities, and add the eliminated commodities to the first commodity set; based on the eliminated commodities, update the associated orders of each commodity in the second commodity set, and based on the updated number of associated orders of each commodity in the second commodity set, select commodities from the second commodity set as eliminated commodities, and add the eliminated commodities to the first commodity set, until the number of commodities in the second commodity set reaches a first quantity threshold.
[0087] The determining unit 502 is configured to determine a third commodity set based on the second commodity set and the first commodity set, where commodities in the third commodity set are selected commodities.
[0088] In some embodiments, the second product set includes N products, where N is a positive integer; the product selection device 500 also includes an acquisition unit 503 for acquiring associated orders formed by the N products and counting the number of associated orders of the N products.
[0089] The processing unit 501 is further used to select P commodities from the N commodities as eliminated commodities based on the number of associated orders, the P commodities are the first P commodities with the smallest number of associated orders among the N commodities, and P is a positive integer less than N; and add the eliminated commodities to the first commodity set.
[0090] In some implementations, the determining unit 502 is further configured to determine the associated orders and associated commodities of the eliminated commodity, and update the associated orders of each commodity in the second commodity set based on the associated orders and associated commodities of the eliminated commodity.
[0091] In some implementations, the acquisition unit 503 is further configured to acquire associated commodities of M orders, where M is a positive integer, and the associated commodities of the M orders and the associated orders of the N commodities are obtained based on statistics of the same order data.
[0092] In some embodiments, the determination unit 502 is further used to determine, based on the associated orders of the N commodities, that the associated order of the eliminated commodity is the first order; based on the associated commodities of the M orders, determine that the associated commodity of the first order is the first commodity; wherein, the first commodity and the first order are the associated order and associated commodity of the eliminated commodity.
[0093] In some implementations, the processing unit 501 is further configured to delete the first order for the first commodity from the associated orders of the N commodities.
[0094] In some embodiments, the processing unit 501 is further used to select a first value from a first numerical range as the value of P, wherein the minimum value of the first numerical range is 1, and the maximum value of the first numerical range is determined based on the number of products in the third product set.
[0095] In some embodiments, the processing unit 501 is further used to select a first value from a first numerical range based on the number of commodities in the first commodity set; wherein, the smaller the number of commodities in the first commodity set, the larger the first value; and the larger the number of commodities in the first commodity set, the smaller the first value.
[0096] In some implementations, the processing unit 501 is further configured to count the number of associated orders of the N commodities except the eliminated commodity.
[0097] Those skilled in the art should understand that Figure 5 The functions implemented by each unit in the product selection device shown can be understood by referring to the relevant description of the aforementioned method. Figure 5 The functions of each unit in the product selection device shown can be implemented by a program running on a processor, or by a specific logic circuit.
[0098] Figure 6 It is a schematic structural diagram of a processing device 600 provided in an embodiment of the present application. Figure 6 The processing device 600 shown includes a processor 610, which can call and run a computer program from a memory to implement the method in the embodiment of the present application.
[0099] Alternatively, if Figure 6As shown, the processing device 600 may further include a memory 620. The processor 610 may call and run a computer program from the memory 620 to implement the method in the embodiment of the present application.
[0100] The memory 620 may be a separate device independent of the processor 610 , or may be integrated into the processor 610 .
[0101] Alternatively, if Figure 6 As shown, the processing device 600 may further include a transceiver 630, and the processor 610 may control the transceiver 630 to communicate with other devices, specifically, may send information or data to other devices, or receive information or data sent by other devices.
[0102] The transceiver 630 may include a transmitter and a receiver. The transceiver 630 may further include an antenna, and the number of the antennas may be one or more.
[0103] In some implementations, the processing device 600 may be a computer device, which includes a processor and a memory, wherein the memory is used to store a computer program, and the processor is used to call and run the computer program from the memory to implement the following method steps:
[0104] Initialize the first commodity set to be an empty set, where the commodities in the first commodity set are obsolete commodities;
[0105] Based on the number of associated orders for each product in the second product set, select products from the second product set as eliminated products, and add the eliminated products to the first product set;
[0106] updating the associated order of each commodity in the second commodity set based on the eliminated commodity, and selecting commodities from the second commodity set as eliminated commodities based on the updated associated order quantity of each commodity in the second commodity set, and adding the eliminated commodities to the first commodity set until the quantity of commodities in the second commodity set reaches a first quantity threshold;
[0107] A third commodity set is determined based on the second commodity set and the first commodity set, and commodities in the third commodity set are selected commodities.
[0108] In some embodiments, the second commodity set includes N commodities, where N is a positive integer; the processor in the computer device is further configured to call and run a computer program from a memory to implement the following method steps:
[0109] Obtaining the associated orders formed by the N commodities, and counting the number of associated orders of the N commodities;
[0110] Selecting P commodities from the N commodities as the eliminated commodities based on the number of associated orders, the P commodities are the first P commodities with the smallest number of associated orders among the N commodities, and P is a positive integer less than N;
[0111] The eliminated commodity is added to the first commodity set.
[0112] In some embodiments, the processor in the computer device is further configured to call and run a computer program from the memory to implement the following method steps:
[0113] The associated orders and associated commodities of the eliminated commodity are determined, and the associated orders of each commodity in the second commodity set are updated based on the associated orders and associated commodities of the eliminated commodity.
[0114] In some embodiments, the processor in the computer device is further configured to call and run a computer program from the memory to implement the following method steps:
[0115] The associated products of M orders are obtained, where M is a positive integer, and the associated products of the M orders and the associated orders of the N products are obtained based on statistics of the same order data.
[0116] In some embodiments, the processor in the computer device is further configured to call and run a computer program from the memory to implement the following method steps:
[0117] Based on the associated orders of the N commodities, determining that the associated order of the eliminated commodity is the first order;
[0118] Based on the associated commodities of the M orders, it is determined that the associated commodity of the first order is the first commodity; wherein the first commodity and the first order are the associated order and the associated commodity of the eliminated commodity.
[0119] In some embodiments, the processor in the computer device is further configured to call and run a computer program from the memory to implement the following method steps:
[0120] Among the associated orders of the N commodities, the first order of the first commodity is deleted.
[0121] In some embodiments, the processor in the computer device is further configured to call and run a computer program from the memory to implement the following method steps:
[0122] A first value is selected from a first numerical range as the value of P, wherein a minimum value of the first numerical range is 1, and a maximum value of the first numerical range is determined based on the number of commodities in the second commodity set.
[0123] In some embodiments, the processor in the computer device is further configured to call and run a computer program from the memory to implement the following method steps:
[0124] Based on the number of commodities in the first commodity set, a first value is selected from a first numerical range; wherein, the smaller the number of commodities in the first commodity set, the larger the first value; and the larger the number of commodities in the first commodity set, the smaller the first value.
[0125] In some embodiments, the processor in the computer device is further configured to call and run a computer program from the memory to implement the following method steps:
[0126] The number of associated orders of the N commodities except the eliminated commodity is counted.
[0127] It should be understood that the processor of the embodiment of the present application may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method embodiment can be completed by the hardware integrated logic circuit or software instructions in the processor. The above processor can be a general processor, a digital signal processor (Digital Signal Processor, DSP), an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general processor can be a microprocessor or the processor can also be any conventional processor. The steps of the method disclosed in the embodiment of the present application can be directly embodied as a hardware decoding processor to perform, or the hardware and software modules in the decoding processor are combined and performed. The software module can be located in a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, and other mature storage media in the art. The storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.
[0128] It can be understood that the memory in the embodiments of the present application can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct RAM bus random access memory (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0129] It should be understood that the above-mentioned memory is exemplary but not restrictive. For example, the memory in the embodiments of the present application may also be static random access memory (static RAM, SRAM), dynamic random access memory (dynamic RAM, DRAM), synchronous dynamic random access memory (synchronous DRAM, SDRAM), double data rate synchronous dynamic random access memory (double data rate SDRAM, DDR SDRAM), enhanced synchronous dynamic random access memory (enhanced SDRAM, ESDRAM), synchronous link dynamic random access memory (synch link DRAM, SLDRAM) and direct memory bus random access memory (Direct Rambus RAM, DR RAM), etc. That is to say, the memory in the embodiments of the present application is intended to include but not limited to these and any other suitable types of memory.
[0130] An embodiment of the present application also provides a computer-readable storage medium for storing a computer program.
[0131] The computer-readable storage medium can be applied to the processing device in the embodiments of the present application, and the computer program enables the computer to execute the corresponding processes implemented by the processing device in the various methods of the embodiments of the present application. For the sake of brevity, they will not be repeated here.
[0132] The present application also provides a computer program product, including computer program instructions. The computer program product can be applied to the processing device in the present application, and the computer program instructions enable the computer to execute the corresponding process implemented by the processing device in each method of the present application, which will not be described in detail for the sake of brevity.
[0133] The embodiment of the present application also provides a computer program. The computer program can be applied to the processing device in the embodiment of the present application. When the computer program is run on a computer, the computer executes the corresponding process implemented by the processing device in each method of the embodiment of the present application. For the sake of brevity, it will not be repeated here.
[0134] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0135] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0136] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0137] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0138] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0139] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0140] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. A product selection method, characterized in that: The method comprises: Initialize the first commodity set to be an empty set, where the commodities in the first commodity set are obsolete commodities; Based on the number of associated orders for each product in the second product set, select products from the second product set as eliminated products, and add the eliminated products to the first product set; updating the associated order of each commodity in the second commodity set based on the eliminated commodity, and selecting commodities from the second commodity set as eliminated commodities based on the updated associated order quantity of each commodity in the second commodity set, and adding the eliminated commodities to the first commodity set until the quantity of commodities in the second commodity set reaches a first quantity threshold; A third commodity set is determined based on the second commodity set and the first commodity set, and commodities in the third commodity set are selected commodities.
2. The method according to claim 1, characterized in that: The second commodity set includes N commodities, where N is a positive integer; The selecting a commodity from the second commodity set as an eliminated commodity based on the quantity of associated orders of each commodity in the second commodity set, and adding the eliminated commodity to the first commodity set includes: Obtaining the associated orders formed by the N commodities, and counting the number of associated orders of the N commodities; Selecting P commodities from the N commodities as the eliminated commodities based on the number of associated orders, the P commodities are the first P commodities with the smallest number of associated orders among the N commodities, and P is a positive integer less than N; The eliminated commodity is added to the first commodity set.
3. The method according to claim 2, characterized in that The updating of the associated order of each commodity in the second commodity set based on the eliminated commodity includes: The associated orders and associated commodities of the eliminated commodity are determined, and the associated orders of each commodity in the second commodity set are updated based on the associated orders and associated commodities of the eliminated commodity.
4. The method according to claim 3, characterized in that The method comprises: Obtaining associated products of M orders, where M is a positive integer, and the associated products of the M orders and the associated orders of the N products are obtained based on statistics of the same order data; The determining of the associated orders and associated commodities of the eliminated commodities includes: Based on the associated orders of the N commodities, determining that the associated order of the eliminated commodity is the first order; Based on the associated commodities of the M orders, it is determined that the associated commodity of the first order is the first commodity; wherein the first commodity and the first order are the associated order and the associated commodity of the eliminated commodity.
5. The method according to claim 4, characterized in that The updating of the associated orders of the N commodities based on the associated orders of the eliminated commodities and the associated commodities includes: Among the associated orders of the N commodities, the first order of the first commodity is deleted.
6. The method according to claim 1, characterized in that The method further comprises: A first value is selected from a first numerical range as the value of P, wherein a minimum value of the first numerical range is 1, and a maximum value of the first numerical range is determined based on the number of commodities in the second commodity set.
7. The method according to claim 5, characterized in that The selecting a first value from a first numerical range comprises: Based on the number of commodities in the first commodity set, a first value is selected from a first numerical range; wherein, the smaller the number of commodities in the first commodity set, the larger the first value; and the larger the number of commodities in the first commodity set, the smaller the first value.
8. The method according to any one of claims 2 to 7, characterized in that The counting of the number of associated orders of the N commodities includes: The number of associated orders of the N commodities except the eliminated commodity is counted.
9. A product selection device, characterized in that: Applied to a processing device, the device comprises: The processing unit is configured to initialize the first commodity set as an empty set, where commodities in the first commodity set are eliminated commodities; based on the number of associated orders of each commodity in the second commodity set, select commodities from the second commodity set as eliminated commodities, and add the eliminated commodities to the first commodity set; based on the eliminated commodities, update the associated orders of each commodity in the second commodity set, and based on the updated number of associated orders of each commodity in the second commodity set, select commodities from the second commodity set as eliminated commodities, and add the eliminated commodities to the first commodity set, until the number of commodities in the second commodity set reaches a first quantity threshold; A determining unit is used to determine a third commodity set based on the second commodity set and the first commodity set, where commodities in the third commodity set are selected commodities.
10. A processing device, characterized in that: include: A processor and a memory, the memory being used to store a computer program, the processor being used to call and run the computer program stored in the memory to execute the method according to any one of claims 1 to 8.
11. A computer-readable storage medium, characterized in that: Used to store a computer program, wherein the computer program causes a computer to execute the method according to any one of claims 1 to 8.
12. A computer program product, characterized in that The method comprises computer program instructions which cause a computer to execute the method as claimed in any one of claims 1 to 8.
Citation Information
Patent Citations
Data processing method and device
CN107358472A
A method and a device for data analysis
CN109903104A
Method and device for generating commodity associated information
CN110363558A
Commodity combination construction method, system and device and readable storage medium
CN111738786A
E-commerce platform order management method, system and device and computer storage medium
CN113095914A
Cited By
Commodity selection method and apparatus, processing device, computer-readable storage medium and program product
WO2026118486A1