Product search methods, devices, equipment, and media

By using a distributed architecture and multi-dimensional search-related score calculation, the problem of high server load and low efficiency in traditional product search methods is solved, and efficient and accurate product search results are generated.

CN116861083BActive Publication Date: 2026-05-26BUSINESS LINE COMMERCIAL PTE LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BUSINESS LINE COMMERCIAL PTE LTD
Filing Date
2023-07-04
Publication Date
2026-05-26

AI Technical Summary

Technical Problem

Traditional product search methods suffer from high server load and low execution efficiency, failing to provide timely product search results.

Method used

The system employs a distributed architecture, using node servers to cache search-related scores for products across multiple dimensions, calculate search scores, and filter out products that meet preset criteria to construct a search results list.

Benefits of technology

It achieves efficient product search with low load, ensuring the timeliness and accuracy of search results, and accurately representing the relevance between products and search keywords.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116861083B_ABST
    Figure CN116861083B_ABST
Patent Text Reader

Abstract

This application relates to a product search method, apparatus, device, and medium in the field of e-commerce technology. The method includes: responding to a product search request and obtaining a recall list coarsely recalled based on user-input search keywords; determining the node servers corresponding to each recalled product in the recall list, where each node server caches multiple search-related scores for some recalled products across different dimensions, the search-related scores representing the relevance between the recalled products and the search keywords in a specified dimension; sending a score calculation request to each node server to obtain the search scores calculated by the node servers for the cached recalled products, the search score for each recalled product being calculated based on multiple search-related scores for that product; and constructing a search results list by filtering products from the recall list whose search scores meet preset conditions based on the search scores. This application can quickly and accurately search for products.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of e-commerce technology, and in particular to a product search method and the corresponding apparatus, computer equipment, and computer-readable storage medium. Background Technology

[0002] Product search, as a crucial function of e-commerce platforms, is a vital tool for consumers. With the continuous development of internet technology and the rise of e-commerce, the importance and prevalence of product search are constantly increasing. In today's internet age, consumer needs are becoming increasingly diverse and personalized, and product search is one of the effective tools to meet these needs. By using product search, consumers can quickly find the products they need on e-commerce platforms and fulfill their purchasing desires. At the same time, product search can also help merchants accurately identify potential customers and provide them with better products and services.

[0003] Traditional technologies typically employ a coarse-grained recall of thousands of products, then use a single server to determine the relevance between the product information and the search keywords entered by the user. These products are then ranked based on their relevance, and the ranking results are used as search results. However, this approach results in high server load and low execution efficiency, and cannot provide timely product search results.

[0004] Given the shortcomings of traditional technologies, the applicant has long been engaged in research in related fields and has therefore explored alternative approaches to solve industry problems in the e-commerce sector. Summary of the Invention

[0005] The primary objective of this application is to solve at least one of the aforementioned problems by providing a product search method and corresponding apparatus, computer equipment, and computer-readable storage medium.

[0006] To achieve the various objectives of this application, the following technical solution is adopted:

[0007] A product search method provided for one of the purposes of this application includes the following steps:

[0008] In response to a product search request, a recall list coarsely retrieved based on the search keywords entered by the user is obtained, and the recall list contains multiple recalled products;

[0009] The node servers corresponding to each recalled product in the recall list are determined. Each node server caches multiple search relevance scores of some of the recalled products in different dimensions. The search relevance scores are used to characterize the relevance between the recalled products and search keywords in a specified dimension.

[0010] A score calculation request is sent to each node server to obtain the search score calculated by the node server for the recalled products in the cache. The search score of each recalled product is determined based on multiple search-related scores of the recalled product.

[0011] Based on the search scores, a search results list is constructed by selecting recalled products from the recall list that meet preset conditions.

[0012] In a further embodiment, obtaining a recall list coarsely retrieved based on the search keywords entered by the user includes the following steps:

[0013] Parse the product search request to obtain the search keywords input by the user.

[0014] The system calls a preset search engine interface to retrieve multiple products from the product database that match the search keywords, thus forming a recall list.

[0015] In a further embodiment, after determining the node server corresponding to each recalled product in the recall list, the following steps are included:

[0016] Obtain the coarse recall score corresponding to each recalled product in the recall list as the search relevance score for the first specified dimension;

[0017] A preset category prediction model is used to determine at least one product category that the search keyword points to, as well as the pointing probability of each product category. The pointing probability of the product category to which each recalled product belongs in the recall list is determined as the search relevance score of the second specified dimension.

[0018] The text relevance algorithm is used to determine the text relevance score between the search keyword and the product title of each recalled product in the recall list, which is used as the search relevance score of the third specified dimension.

[0019] For each recalled product in the recall list, a corresponding node server is used to cache the search-related scores of the recalled product across multiple dimensions.

[0020] In a further embodiment, before obtaining the search score calculated by the node server for the recalled products cached therein, the following steps are included:

[0021] The node server determines the corresponding tier evaluation value based on the search-related scores of each recalled product in the cache across multiple dimensions.

[0022] A threshold-based approach is used to map the evaluation value of each recalled product to its corresponding tier, thereby determining the search score for that tier.

[0023] In a further embodiment, a threshold-based approach is used to map the evaluation value of each recalled product to its corresponding tier, thereby determining the search score corresponding to that tier. This includes the following steps:

[0024] Each recalled product is sorted in descending order according to its grade evaluation value to construct an evaluation value sequence;

[0025] The maximum value of the gear evaluation value in the evaluation value sequence is determined as the anchor point of the current gear, and the percentage difference between the evaluation value of each gear after the anchor point and the anchor point is calculated.

[0026] Set the grade evaluation value of the grade with the difference ratio not exceeding the preset threshold to the grade evaluation value corresponding to the anchor point to the same grade. For the grade evaluation value with the difference ratio exceeding the preset threshold, continue iterating from the previous step to determine the lower grade until the grade evaluation value of each recalled product has completed its grade setting.

[0027] The search scores are set in order of increasing or decreasing from level to level.

[0028] In a further embodiment, after constructing a search results list by filtering products whose search scores meet preset conditions from the recall list, the following steps are included:

[0029] A click-through rate (CTR) prediction model is used to predict the CTR of each product in the search results list.

[0030] A conversion rate prediction model is used to predict the conversion rate for each product in the search results list.

[0031] The estimated performance value is determined based on the click-through rate and conversion rate.

[0032] Each product in the search results list is sorted according to its expected performance.

[0033] In a further embodiment, before using a click-through rate (CTR) prediction model to predict the CTR for each product in the search results list, the following steps are included:

[0034] Obtain a first training set and use the first training set to train the click-through rate prediction model so that it learns the ability to predict the click-through rate of products. The first training set includes first training samples corresponding to positive and negative classes. The first training samples belonging to the positive class include the image and text information of products that trigger click behavior, and the first training samples belonging to the negative class include the image and text information of products that do not trigger click behavior.

[0035] Obtain a second training set and use it to train the conversion rate prediction model so that it learns the ability to predict the conversion rate of products. The second training set includes second training samples corresponding to positive and negative classes. The second training samples belonging to the positive class include the image and text information of products that trigger conversion behavior, and the second training samples belonging to the negative class include the image and text information of products that do not trigger conversion behavior.

[0036] On the other hand, a product search device provided to meet one of the purposes of this application includes a request response module, a node determination module, a score calculation module, and a list construction module. The request response module is used to respond to a product search request and obtain a recall list coarsely recalled based on user-input search keywords, the recall list containing multiple recalled products. The node determination module is used to determine the node server corresponding to each recalled product in the recall list. Each node server caches multiple search-related scores for some of the recalled products across multiple dimensions, the search-related scores representing the relevance between the recalled product and the search keywords in a specified dimension. The score calculation module is used to send a score calculation request to each node server, obtaining the search score calculated by the node server for the cached recalled products. The search score for each recalled product is calculated based on multiple search-related scores for that product. The list construction module is used to filter recalled products from the recall list whose search scores meet preset conditions based on the search scores and construct a search results list.

[0037] In a further embodiment, the request response module includes: a request parsing submodule, used to parse the product search request and obtain the search keywords input by the user; and a list composition submodule, used to call a preset search engine interface to retrieve multiple products matching the search keywords from the product database and form a recall list.

[0038] In a further embodiment, after the node determination module, the system includes: a first specified dimension submodule, used to obtain a coarse recall score corresponding to each recalled product in the recall list as a search relevance score for the first specified dimension; a second specified dimension submodule, used to determine at least one product category pointed to by the search keyword and the pointing probability corresponding to each product category using a preset category prediction model, and determine the pointing probability of the product category to which each recalled product in the recall list belongs as a search relevance score for the second specified dimension; a third specified dimension submodule, used to determine the text relevance score between the search keyword and the product title of each recalled product in the recall list using a text relevance algorithm as a search relevance score for the third specified dimension; and a score caching submodule, used to cache multiple search relevance scores of the recalled product in different dimensions for each recalled product in the recall list using a corresponding node server.

[0039] In a further embodiment, before the scoring calculation module, there is a sub-module for determining the tier evaluation value, which is used by the node server to determine the corresponding tier evaluation value based on the search-related scores of each recalled product in the cache of multiple different dimensions; and a scoring determination sub-module for mapping the tier evaluation value corresponding to each recalled product to its respective tier using a threshold division method, thereby determining the search score corresponding to that tier.

[0040] In a further embodiment, the scoring determination submodule includes: a sequence construction unit, used to sort each recalled product in descending order according to the tier evaluation value to construct an evaluation value sequence; a gap determination unit, used to determine the maximum value of the tier evaluation value in the evaluation value sequence as the anchor point of the current tier, and calculate the gap ratio between each tier evaluation value after the anchor point and the anchor point; a tier setting unit, used to set the tier evaluation values ​​with a gap ratio not exceeding a preset threshold to the tier evaluation value corresponding to the anchor point to the same tier, and for the tier evaluation values ​​with a gap ratio exceeding the preset threshold, continue iterating from the previous step to determine the next lower tier, until the tier evaluation values ​​of each recalled product have completed their tier setting; and a scoring setting unit, used to set the search score corresponding to each tier in an orderly manner according to the tier height.

[0041] In a further embodiment, after the list construction module, the system includes: a click-through rate (CTR) estimation submodule, used to estimate the CTR of each product in the search results list using a CTR estimation model; a conversion rate estimation submodule, used to estimate the conversion rate of each product in the search results list using a conversion rate estimation model; a performance determination submodule, used to determine the performance estimate based on the CTR and conversion rate; and a product sorting submodule, used to sort each product in the search results list according to the performance estimate.

[0042] In a further embodiment, before the click-through rate (CTR) prediction submodule, there is a CTR prediction model training submodule, used to acquire a first training set and use the first training set to train the CTR prediction model so that it learns the ability to predict the CTR of products. The first training set includes first training samples belonging to the positive and negative classes. The first training samples belonging to the positive class include image and text information of products that trigger click behavior, and the first training samples belonging to the negative class include image and text information of products that do not trigger click behavior. A conversion rate prediction model training submodule is used to acquire a second training set and use the second training set to train the conversion rate prediction model so that it learns the ability to predict the conversion rate of products. The second training set includes second training samples belonging to the positive and negative classes. The second training samples belonging to the positive class include image and text information of products that trigger conversion behavior, and the second training samples belonging to the negative class include image and text information of products that do not trigger conversion behavior.

[0043] In another aspect, a computer device provided for one of the purposes of this application includes a central processing unit and a memory, the central processing unit being used to invoke and run a computer program stored in the memory to perform the steps of the product search method described in this application.

[0044] In another aspect, a computer-readable storage medium is provided to suit another purpose of this application, which stores, in the form of computer-readable instructions, a computer program implemented according to the described product search method, which, when invoked by a computer, performs the steps included in the method.

[0045] The technical solution of this application has many advantages, including but not limited to the following aspects:

[0046] This application responds to product search requests by obtaining a recall list coarsely retrieved based on user-input search keywords, identifying the corresponding node servers for each recalled product, and caching multiple search-related scores for some recalled products across various dimensions. These search-related scores characterize the relevance between the recalled products and the search keywords within a specified dimension. A score calculation request is sent to each node server to obtain the search scores calculated by the node server for the cached recalled products. The search score for each recalled product is determined based on its multiple search-related scores. Based on the search scores, products whose search scores meet preset conditions are selected from the recall list to construct a search results list. On one hand, multiple node servers are scheduled to process the corresponding score calculation requests in parallel, resulting in low load on each node server and ensuring efficient product search execution to achieve the timeliness required for online product searches. On the other hand, the search scores obtained based on multiple search-related scores across various dimensions accurately represent the relevance between products and search keywords, ensuring the accuracy of product searches. Attached Figure Description

[0047] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein:

[0048] Figure 1 This is a flowchart illustrating a typical embodiment of the product search method of this application;

[0049] Figure 2 This is a schematic diagram illustrating the process of constructing a recall list in an embodiment of this application;

[0050] Figure 3 This is a schematic diagram illustrating the process of using a node server to cache search-related scores for multiple dimensions of the corresponding product in an embodiment of this application;

[0051] Figure 4 This is a schematic diagram of the process for determining a search score in an embodiment of this application;

[0052] Figure 5 This is a schematic diagram illustrating the process of determining the search score based on the product's grade evaluation value in an embodiment of this application.

[0053] Figure 6 This is a flowchart illustrating the process of sorting products in the search results list based on their effectiveness, as described in an embodiment of this application.

[0054] Figure 7 This is a flowchart illustrating the training of the click-through rate prediction model and the conversion rate prediction model in the embodiments of this application;

[0055] Figure 8 This is a schematic block diagram of the product search device of this application;

[0056] Figure 9 This is a schematic diagram of the structure of a computer device used in this application. Detailed Implementation

[0057] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain this application, and should not be construed as limiting this application.

[0058] Those skilled in the art will understand that, unless specifically stated otherwise, the singular forms “a,” “an,” “the,” and “the” used herein may also include the plural forms. It should be further understood that the term “comprising” as used in this application means the presence of the stated features, integers, steps, operations, elements, and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. It should be understood that when we say an element is “connected” or “coupled” to another element, it can be directly connected or coupled to the other element, or there may be intermediate elements. Furthermore, “connected” or “coupled” as used herein can include wireless connections or wireless coupling. The term “and / or” as used herein includes all or any units and all combinations of one or more associated listed items.

[0059] It will be understood by those skilled in the art that, unless otherwise defined, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art to which this application pertains. It should also be understood that terms such as those defined in general dictionaries should be understood to have the same meaning as in the context of the prior art, and should not be interpreted in an idealized or overly formal sense unless specifically defined as herein.

[0060] Those skilled in the art will understand that the terms "client," "terminal," and "terminal device" as used herein include both devices that receive wireless signals, devices that only possess wireless signal receiver capabilities without transmission capabilities, and devices with receiving and transmitting hardware, devices that have receiving and transmitting hardware capable of bidirectional communication over a bidirectional communication link. Such devices may include: cellular or other communication devices such as personal computers or tablets, having single-line displays, multi-line displays, or cellular or other communication devices without multi-line displays; PCS (Personal Communications Service) that can combine voice, data processing, fax, and / or data communication capabilities; PDA (Personal Digital Assistant) that may include a radio frequency receiver, pager, internet / intranet access, web browser, notepad, calendar, and / or GPS (Global Positioning System) receiver; and conventional laptops and / or handheld computers or other devices that have and / or include radio frequency receivers. As used herein, "client," "terminal," and "terminal device" can be portable, transportable, installed in a means of transportation (air, sea, and / or land), or suitable and / or configured to operate locally and / or in a distributed manner, operating in any other location on Earth and / or in space. "Client," "terminal," and "terminal device" as used herein can also be a communication terminal, an internet access terminal, or a music / video playback terminal, such as a PDA, a MID (Mobile Internet Device), and / or a mobile phone with music / video playback capabilities, or a smart TV, set-top box, etc.

[0061] The hardware referred to by the names "server," "client," and "service node" in this application is essentially an electronic device with the equivalent capabilities of a personal computer. It is a hardware device with the necessary components revealed by the von Neumann architecture, such as a central processing unit (including an arithmetic logic unit and a control unit), memory, input devices, and output devices. The computer program is stored in its memory, and the central processing unit loads the program stored in the secondary storage into the main memory to run it, execute the instructions in the program, and interact with the input and output devices to complete specific functions.

[0062] It should be noted that the concept of "server" used in this application can also be extended to apply to server clusters. Based on network deployment principles as understood by those skilled in the art, the servers should be logically divided; physically, these servers can be independent yet accessible through interfaces, or they can be integrated into a single physical computer or a computer cluster. Those skilled in the art should understand this flexibility and should not use it to constrain the implementation of the network deployment method described in this application.

[0063] One or more of the technical features of this application, unless explicitly specified herein, can be deployed on a server and accessed by a client remotely calling the online service interface provided by the server, or can be directly deployed and run on a client for access.

[0064] Unless otherwise specified, the neural network models referenced or potentially referenced in this application may be deployed on a remote server and invoked remotely on the client, or deployed on a client with the capability to invoke directly. In some embodiments, when running on the client, the corresponding intelligence may be acquired through transfer learning in order to reduce the requirements on the client's hardware resources and avoid excessive consumption of the client's hardware resources.

[0065] Unless otherwise specified, all data involved in this application may be stored remotely on a server or on a local terminal device, as long as it is suitable for use by the technical solution of this application.

[0066] Those skilled in the art will understand that although the various methods in this application are described based on the same concept and thus present commonality among them, they can be performed independently unless otherwise specified. Similarly, the various embodiments disclosed in this application are all based on the same inventive concept; therefore, concepts expressed in the same way, as well as concepts that are appropriately changed for convenience but are expressed differently, should be understood equivalently.

[0067] Unless otherwise expressly stated, the various embodiments disclosed in this application can be combined in a cross-cutting manner to flexibly construct new embodiments, as long as such combination does not depart from the inventive spirit of this application and can meet the needs of the prior art or solve a certain deficiency in the prior art. Those skilled in the art should be aware of such modifications.

[0068] The product search method of this application can be programmed into a computer program product and deployed on a client or server for execution. For example, in an exemplary application scenario of this application, it can be deployed on the server of an e-commerce platform. In this way, the method can be executed by human-computer interaction with the process of the computer program product through a graphical user interface by accessing the interface opened after the computer program product is running.

[0069] Please see Figure 1 The product search method of this application, in its typical embodiment, includes the following steps:

[0070] Step S1100: Respond to the product search request and obtain a recall list coarsely recalled based on the search keywords entered by the user, wherein the recall list contains multiple recalled products;

[0071] Users of e-commerce platforms can operate on the product search page displayed on their client applications. They can enter search keywords, which can be keywords or complete text related to the product, such as product parameters, product names, and product functions. Then, they can touch the relevant submission control on the page to trigger the generation of a product search request on the client. The client then submits the product search request containing the search keywords entered by the user to the e-commerce service platform's server to obtain products related to the search keywords.

[0072] The server receives the product search request, responds to it, and obtains the search keywords input by the user in the request. A search engine retrieves multiple products matching the search keywords from the product database. The TF-IDF algorithm is used to calculate the TF*IDF of each product's text information in the product database corresponding to the search keywords, serving as a coarse recall score. The products are then sorted in descending order of the coarse recall score, and the top N products in the sorted list are used as the recalled products. The search engine can be Elasticsearch, a distributed search and analytics engine located at the core of the Elastic Stack. The text information includes product descriptions, which can be any one or more of the following: product title, product details text, product price, product parameters, category tags, etc. Those skilled in the art should understand that since N products are being coarsely recalled from a massive number of products, the number N should not be too small to ensure the accuracy of the recall rate, so as not to miss products that should be coarsely recalled. The specific number can be flexibly set according to business needs, for example, 1000.

[0073] Step S1200: Determine the node server corresponding to each recalled product in the recall list. Each node server caches multiple search relevance scores of some of the recalled products in different dimensions. The search relevance scores are used to characterize the relevance between the recalled products and search keywords in a specified dimension.

[0074] This application uses multiple search-related scores from different dimensions for each recalled product in the distributed storage recall list. For each recalled product's corresponding node server, in one embodiment, the distributed storage is implemented using a hash modulo algorithm. An example formula is provided below:

[0075] HashValue = hash(Key) % N

[0076] Where: HashValue is the hash value, Key is the unique identifier of the product, such as the product ID, and N is the number of node servers.

[0077] By applying the above formula to the unique identifier of the product and the number of node servers, the corresponding hash value can be obtained. Based on the hash value, the node server associated with the product can be determined, and it can cache the search-related scores of the product in multiple different dimensions.

[0078] In another embodiment, a consistent hashing algorithm is used to implement the distributed storage. Specifically, the consistent hashing algorithm organizes the entire hash space into a virtual ring, called the Hash Ring, in a clockwise direction. This ring contains 2^32 positions. The IP address or hostname of each node server is used as a key and hashed using the consistent hashing algorithm to calculate the position of each cache instance on the Hash Ring. Each key is then hashed using the consistent hashing algorithm to calculate its corresponding position on the Hash Ring. Starting from this position, the search proceeds clockwise along the Hash Ring. The first node server encountered is the one located for each key. For each key-value pair, the key-value pair is stored on the node server located based on its key. The consistent hashing algorithm is modulo 2^32. The key in the key-value pair is a unique identifier for the product, such as a product ID, and the corresponding value is a search-related score for the product across multiple dimensions.

[0079] The multiple search relevance scores, representing different dimensions, can be any combination of the following: scores indicating the relevance between the textual information of the products obtained in the coarse recall stage and the search keywords; scores indicating the relevance between the product title and the search keywords; and scores indicating the relevance between the product category and the search keywords. It can be understood that multiple search relevance scores reflect the relevance between the recalled products and the search keywords from corresponding different dimensions, ensuring that the relevance is accurate and reliable.

[0080] Step S1300: Send a score calculation request to each node server to obtain the search score calculated by the node server for the recalled products in the cache. The search score of each recalled product is determined based on multiple search-related scores of the recalled product.

[0081] Furthermore, the server needs to schedule each of the node servers to calculate the search score for the recalled products, and accordingly trigger the generation of score calculation requests, which are sent to the node servers respectively. The node servers receive and respond to the score calculation requests. In one embodiment, for each recalled product cached in the node server, the search-related scores of multiple different dimensions of the recalled product are summed to calculate the search score. In another embodiment, based on the different reference values ​​of the search-related scores of the recalled products in terms of their respective search-related values ​​for product search, a weight corresponding to each dimension of the search-related score is preset. The reference value of product search refers to the relevance between the recalled product and the search keywords reflected by the corresponding search-related score, and the accuracy and reliability of this relevance. The sum of the weights corresponding to the multiple different dimensions of search-related scores is 1, and the specific weights can be set as needed by those skilled in the art. For each recalled product cached in the node server, the search-related scores of multiple different dimensions are multiplied by their corresponding weights and then summed to calculate the search score.

[0082] Once the node server calculates the search score of the recalled product, it uses the unique identifier of the recalled product, such as the product ID, as the key and maps the search score associated with that product as the value to form a key-value pair, and submits it to the server in response to the score calculation request.

[0083] Step S1400: Based on the search scores, select recall products from the recall list that meet the preset conditions to construct a search results list.

[0084] In one embodiment, the server receives key-value pairs submitted by all node servers it schedules, integrates them, parses all key-value pairs to obtain the search score corresponding to each recalled product in the recall list, selects multiple recalled products in the recall list whose search scores meet a preset threshold as search results, and further, aggregates all search results to construct a search results list and pushes it to the user who triggered the product search request in order to respond to the product search request.

[0085] In another embodiment, the server receives and integrates key-value pairs submitted by all scheduled node servers, parses all key-value pairs to obtain the search score corresponding to each recalled product in the recall list, sorts all recalled products in descending order of their search scores based on the exploration scores of each recalled product in the recall list, and selects the top N recalled products as search results. Furthermore, all search results are aggregated to construct a search results list and pushed to the user who triggered the product search request to respond to the product search request. The number N can be set as needed by those skilled in the art.

[0086] As can be seen from the typical embodiments of this application, the technical solution of this application has many advantages, including but not limited to the following aspects:

[0087] This application responds to product search requests by obtaining a recall list coarsely retrieved based on user-input search keywords, identifying the corresponding node servers for each recalled product, and caching multiple search-related scores for some recalled products across various dimensions. These search-related scores characterize the relevance between the recalled products and the search keywords within a specified dimension. A score calculation request is sent to each node server to obtain the search scores calculated by the node server for the cached recalled products. The search score for each recalled product is determined based on its multiple search-related scores. Based on the search scores, products whose search scores meet preset conditions are selected from the recall list to construct a search results list. On one hand, multiple node servers are scheduled to process the corresponding score calculation requests in parallel, resulting in low load on each node server and ensuring efficient product search execution to achieve the timeliness required for online product searches. On the other hand, the search scores obtained based on multiple search-related scores across various dimensions accurately represent the relevance between products and search keywords, ensuring the accuracy of product searches.

[0088] Please see Figure 2 In a further embodiment, step S1100, obtaining a recall list coarsely retrieved based on the search keywords input by the user, includes the following steps:

[0089] Step S1110: Parse the product search request and obtain the search keywords input by the user.

[0090] On the product search page of an e-commerce platform, a user enters search keywords and taps the submit button. JavaScript code is then triggered, sending an HTTP / HTTPS product search request to the server using Ajax front-end submission technology. This request includes parameters such as the search keywords. Upon receiving the product search request, the server needs to parse it to obtain the search keywords and other information. Generally, the server uses some server-side technology to handle Ajax submissions of HTTP / HTTPS product search requests, such as high-level programming languages ​​like PHP and Python, or solutions based on mature front-end frameworks like Django and Ruby on Rails. After parsing, the server can obtain the fields corresponding to the search keywords from the HTTP / HTTPS product search request as keys, and then obtain the values ​​corresponding to those fields, which are the search keywords. For example, in general, the search keywords can be obtained through parameter names in POST or GET methods.

[0091] Step S1120: Call the preset search engine interface to retrieve multiple products that match the search keywords from the product database and form a recall list.

[0092] The system invokes a pre-defined search engine interface to launch the search engine and retrieve multiple products matching the search keywords from the product database. Specifically, the search engine uses the TF-IDF algorithm to calculate the TF*IDF of each product's text information corresponding to the search keywords as a coarse recall score. The products are then sorted in descending order of the coarse recall score, and the top N products in the sorted list constitute the recall products. The search engine can be Elasticsearch, a distributed search and analytics engine located at the core of the Elastic Stack. Those skilled in the art should understand that since N products are being coarsely recalled from a massive number of products, the number of products N should not be too small to ensure the accuracy of the recall rate, so as not to miss products that should be coarsely recalled. The specific number can be flexibly set according to business needs, for example, 1000 products.

[0093] This embodiment discloses the acquisition of search keywords carried in product search requests, and the retrieval of multiple matching products to form a recall list, which can quickly, accurately and coarsely recall products related to search keywords.

[0094] Please see Figure 3 In a further embodiment, after determining the node server corresponding to each recalled product in the recall list in step S1200, the following steps are included:

[0095] Step S1201: Obtain the coarse recall score corresponding to each recalled product in the recall list as the search relevance score for the first specified dimension;

[0096] The coarse recall score corresponding to each recalled product in the recall list represents the degree of relevance between the corresponding recalled product and the search keyword. Specifically, it is obtained by multiplying the TF value and IDF value between the search keyword and the recalled product using the TF-IDF algorithm of the search engine.

[0097] Step S1202: Use a preset category prediction model to determine at least one product category pointed to by the search keyword, and the pointing probability corresponding to each product category, and determine the pointing probability of the product category to which each recalled product in the recall list belongs as the search relevance score of the second specified dimension.

[0098] The category prediction model is pre-trained to convergence, acquiring the ability to determine the product category pointed to by search keywords. Furthermore, the category prediction model includes a text feature extraction layer and a classifier. The text feature extraction layer is suitable for extracting the semantics of the input text and representing it as a vector. It can be selected from various known models, including but not limited to BERT, RNN, BiLSTM, BiGRU, RoBERTa, ALBert, ERNIE, BERT-WWM, etc. The classifier is suitable for multi-classification tasks and can be an MLP (feedforward neural network) or a FC (fully connected layer).

[0099] In one embodiment, BERT is used as the text feature extraction layer, followed by FC as the classifier to form a category prediction model. The search keywords are used as the input of the category prediction model. The corresponding deep semantic information is extracted by BERT, and the vectorized representation of the deep semantic information is input to FC. FC maps the vectorized representation to at least one product category, and the classification probability corresponding to each product category is obtained as the pointing probability.

[0100] In one embodiment, the training process of the category prediction model involves collecting multiple historical search keywords and the corresponding historical product categories for each keyword. The historical search keywords are those entered by the user when searching for products in the past, and the historical product categories are the product categories of products clicked by the user in search results obtained by the server based on the corresponding historical keywords. A single historical search keyword is used as a training sample, and the historical product category corresponding to that keyword is used as the supervision label for the training sample. A single training sample is input into the category prediction model to predict at least one product category pointed to by historical search keywords, as well as the probability of each product category. The product category with the highest probability of pointing to a category is selected as the predicted category. A preset cross-entropy loss function is then applied. This function can be flexibly set by those skilled in the art based on prior knowledge or experimental experience. The cross-entropy loss value corresponding to the predicted category is calculated based on the supervision labels of the training samples. When the cross-entropy loss value reaches a preset threshold, it indicates that the category prediction model has been trained to a convergent state, and the training of the category prediction model can be terminated. If the cross-entropy loss value does not reach the preset threshold, it indicates that the category prediction model has not converged. Therefore, gradient updates are performed on the model based on the cross-entropy loss value. Typically, backpropagation is used to correct the weight parameters of each part of the model to make the model closer to convergence. Then, other training samples are used to iteratively train the category prediction model until the model is trained to a convergent state.

[0101] Step S1203: Use a text relevance algorithm to determine the text relevance score between the search keyword and the product title of each recalled product in the recall list as the search relevance score of the third specified dimension;

[0102] The text relevance algorithm can employ keyword matching-based retrieval algorithms, vector space model-based retrieval algorithms, machine learning-based retrieval algorithms, or probabilistic retrieval model-based algorithms. Those skilled in the art can choose one to implement as needed. For example, the BM25 probabilistic retrieval model algorithm can be used to implement the text relevance algorithm, calculating the text relevance score between the search keyword and the product title of each recalled product in the recall list. Specifically, the search keyword and the product title of each recalled product in the recall list are segmented into words to obtain corresponding word segments. The words appearing in both the search keyword and the product title of each recalled product are matched, along with the word frequency of each word appearing in the product title. The IDF value of each word is calculated. An example formula is provided below.

[0103]

[0104] Where: N represents the number of product titles, and n represents the number of product titles containing that word. The corresponding BM25 score is calculated based on the IDF value of each word. An example formula is provided below:

[0105]

[0106] Where: w represents the BM25 score of the word segment, tf represents the word frequency of the word segment in the product title, DL represents the length of the product title, avgDL represents the average length of the product title, and k1 and b are adjustable parameters that can be set as needed by those skilled in the art based on prior knowledge or experimental data.

[0107] The BM25 scores corresponding to all the aforementioned words in the product title of each recalled product are summed to obtain the corresponding text relevance score.

[0108] Step S1204: For each recalled product in the recall list, the corresponding node server caches the search-related scores of the recalled product in multiple different dimensions.

[0109] The search-related scores of each recalled product in the recall list across multiple dimensions are associated with a unique identifier, such as the product ID.

[0110] For each recalled product in the recall list, the corresponding node server is determined based on the unique identifier of the recalled product, such as the product ID, using a hash modulo algorithm or a consistent hash algorithm. The search-related scores of multiple dimensions corresponding to the recalled product are associated with this unique identifier and cached on the node server.

[0111] In this embodiment, the search relevance scores of the recalled products in different dimensions are determined by coarse recall, text relevance algorithm, and category prediction model and cached to the corresponding node server. The search relevance scores in multiple different dimensions can accurately reflect the relevance between the recalled products and search keywords.

[0112] Please see Figure 4 In a further embodiment, before step S1300, obtaining the search score calculated by the node server for the recalled products cached therein, the following steps are included:

[0113] Step S2300: The node server determines the corresponding grade evaluation value based on the search-related scores of each recalled product in the cache across multiple different dimensions.

[0114] The search relevance scores of the recalled products across multiple dimensions are normalized separately. Based on the varying reference value of these scores for product search, a weight is pre-set for each dimension's search relevance score. The reference value for product search refers to the accuracy and reliability of the relevance between the recalled product and the search keywords, as reflected by the corresponding search relevance score. The normalization operation can be implemented using any of the following algorithms: Sigmoid function, z-score normalization, linear proportional normalization (Min-Max Scaling), truncation, binning, logarithmic transformation, etc. The weights corresponding to the search relevance scores across multiple dimensions can be set as needed by those skilled in the art. For example, the coarse recall score of the recalled product, as the first specified dimension's search relevance score, has a weight of 5; the probability of the recalled product's category as the second specified dimension's search relevance score has a weight of 100; and the text relevance score of the recalled product's title, as the third specified dimension's search relevance score, has a weight of 1.

[0115] For each recalled product, the corresponding search-related scores from multiple different dimensions are matched with their corresponding weights, multiplied, and summed to calculate the gear evaluation value.

[0116] Step S2310: Using a threshold division method, map the evaluation value of each recalled product to its corresponding grade to determine the search score corresponding to that grade.

[0117] In one embodiment, multiple incrementally increasing thresholds are preset, such as 1 / 2 / 3 levels. A corresponding threshold range is set for each level, with the left and right limits of the threshold range for higher levels being greater than those for lower levels. The specific values ​​and number of levels, as well as the threshold ranges for each level, can be set as needed by those skilled in the art. Based on this, the threshold range to which the level evaluation value corresponding to each recalled product belongs is determined, and the level evaluation value is mapped to the level corresponding to that threshold range. Furthermore, since there are differences in level between different levels, multiplying the level corresponding to each recalled product by the same coefficient yields a search score. This coefficient can be set as needed by those skilled in the art, for example, 1000.

[0118] In this embodiment, the corresponding grade evaluation value is determined by the search-related scores of the recalled products based on multiple different dimensions. The threshold division method is used to map the corresponding grade to determine the corresponding search score, which can accurately classify products of different grades.

[0119] Please see Figure 5 In a further embodiment, step S2310, mapping the evaluation value of each recalled product to its corresponding tier using a threshold division method to determine the search score corresponding to that tier, includes the following steps:

[0120] Step S2311: Sort each recalled product in descending order according to the evaluation value of the grade, and construct an evaluation value sequence;

[0121] Each recalled product is sorted in descending order of its evaluation value from highest to lowest to construct an evaluation value sequence.

[0122] Step S2312: Determine the maximum value of the gear evaluation value in the evaluation value sequence as the anchor point of the current gear, and calculate the percentage difference between the evaluation value of each gear after the anchor point and the anchor point.

[0123] Multiple incrementing gears are preset, such as gears 1, 2, and 3. The specific value and number of these gears can be set as needed by those skilled in the art. The current gear is set as the highest gear, such as gear 3. The maximum value of the gear evaluation value in the evaluation value sequence, i.e., the first gear evaluation value in the sequence, is determined as the anchor point for the highest gear. Then, the percentage difference between the evaluation values ​​of each gear after the anchor point (in descending order of evaluation value) and the anchor point is calculated to reflect the difference between the corresponding gear evaluation value and the anchor point. An example formula is provided below.

[0124]

[0125] Where: t iS1 represents the percentage difference in the evaluation value of the i-th gear after the current gear's anchor point, and S1 represents the gear's evaluation value at that anchor point. i This is the evaluation value for the i-th gear after the anchor point.

[0126] Step S2313: Set the grade evaluation value of the grade with the difference ratio not exceeding the preset threshold to the grade evaluation value corresponding to the anchor point to the same grade. For the grade evaluation value with the difference ratio exceeding the preset threshold, continue to iterate from the previous step to determine the lower grade until the grade evaluation value of each recalled product has completed its grade setting.

[0127] The preset threshold is used to determine whether the difference between the gear evaluation value and the gear evaluation value corresponding to the anchor point exceeds the limit. Specifically, it can be flexibly set by those skilled in the art based on prior knowledge or experimental data, for example, it can be set to 0.6.

[0128] Furthermore, the percentage difference of the evaluation values ​​of each gear after the anchor point is compared with a preset threshold. The gear evaluation value corresponding to the percentage difference that does not exceed the preset threshold is set to the same gear as the anchor point. The anchor point is the highest gear, that is, the same gear is set to the highest gear.

[0129] When the first gear evaluation value that does not exceed the preset threshold appears during the sequential comparison process, the current gear is set to the gear one level lower than the highest gear. It can be understood that at this time, the gear evaluation value is the one where the difference between it and the gear evaluation value corresponding to the current anchor point exceeds the limit. And when comparing all gear evaluation values ​​after this gear evaluation value, this gear evaluation value is the maximum value. Therefore, this gear evaluation value is used as the anchor point of the current gear. The iteration continues from the previous step S2312 to set the gear evaluation values ​​whose difference ratio does not exceed the preset threshold and the gear evaluation value corresponding to the anchor point to the same gear, that is, the gear one level lower than the highest gear.

[0130] It's easy to understand that through continuous iteration, the current tier continuously decreases. When the current tier is set to the lowest tier, the corresponding evaluation values ​​for all subsequent tiers do not need to calculate the difference percentage; all tier evaluation values ​​are directly set to the lowest tier. Once the tier evaluation values ​​for each recalled product have completed their tier settings, no further iteration is needed.

[0131] Step S2314: Set the search scores corresponding to each gear level in order of their height.

[0132] Since there are different levels of intensity, the search score can be obtained by multiplying the level corresponding to each recalled product by the same coefficient. The coefficient can be set as needed by those skilled in the art, for example, 1000.

[0133] In this embodiment, by constructing an evaluation value sequence by sorting the evaluation values ​​of the recalled products in descending order, anchor points corresponding to different levels in the sequence are determined sequentially. Then, the evaluation values ​​of each level after the anchor point are determined iteratively are set to the same level if the difference between the evaluation value of the level corresponding to the anchor point and the level does not exceed the limit. This process continues until the evaluation values ​​of each recalled product have been set to their respective levels. Thus, the search score of each recalled product is set according to its level, which can quickly and accurately determine the corresponding search score based on the evaluation values ​​of each recalled product's level.

[0134] Please see Figure 6 In a further embodiment, after step S1400, which involves selecting products from the recall list that meet the preset search rating conditions to construct a search results list, the following steps are included:

[0135] Step S1500: Use a click-through rate prediction model to predict the click-through rate for each product in the search results list;

[0136] The click-through rate (CTR) prediction model is pre-trained to convergence, acquiring the ability to predict the CTR of products. Furthermore, the CTR prediction model includes a text feature extraction layer, an image feature map extraction layer, and a classifier. The text feature extraction layer is suitable for extracting the semantics of the input text and representing it as a vector, and can be selected from various known models, including but not limited to BERT, RNN, BiLSTM, BiGRU, RoBERTa, ALBert, ERNIE, BERT-WWM, etc. The image feature extraction layer is suitable for extracting the semantics of the input image and representing it as a vector, and can be selected from various known models, including but not limited to ViT (VisionTransformer) models, CNN models, deep convolutional models such as EfficientNet, DenseNet, ResNet, etc. The classifier is suitable for binary classification tasks and can be an MLP (feedforward neural network) or a FC (fully connected layer).

[0137] In one embodiment, BERT is used as the text feature extraction layer and ViT as the image extraction layer. The outputs of the two extraction layers are fused and then connected to FC as the classifier to form a click-through rate prediction model. Based on the unique identifier of each product in the search results list, the text information and image information of each product are obtained from the product database. The text information includes the product description information, which can be any one or more of the following: product title, product details text, product price, product parameters, category tags, etc. The image information includes any one or more of the following: a main product image for prominent display and detail images for introducing product details. The text and image information of the product constitute a data pair, which is input into the click-through rate (CTR) prediction model. ViT (Vibrational Technology) extracts deep semantic features from the image information to obtain its corresponding image semantic vector, thus achieving a vectorized representation of the deep semantic information of the image. Simultaneously, BERT extracts deep semantic features from the text information to obtain its corresponding text semantic vector, achieving a vectorized representation of the deep semantic information of the text. Further, the image semantic vector and the text semantic vector are normalized to a uniform scale and then concatenated to obtain a concatenated image-text vector. This concatenated image-text vector is input into FC (Focused Function), which maps it to a binary classification to obtain the positive class classification probability as the CTR. The binary classification includes a positive class and a negative class. The positive class represents a click behavior triggered by a user clicking after the product is exposed, while the negative class represents a click behavior not triggered by a user clicking after the product is exposed.

[0138] Step S1510: Use a conversion rate prediction model to predict the conversion rate of each product in the search results list;

[0139] The conversion rate prediction model is pre-trained to convergence, acquiring the ability to predict the conversion rate of products. Furthermore, the conversion rate prediction model includes a text feature extraction layer, an image feature map extraction layer, and a classifier. The text feature extraction layer is suitable for extracting the semantics of the input text and representing it as a vector, and can be selected from various known models, including but not limited to BERT, RNN, BiLSTM, BiGRU, RoBERTa, ALBert, ERNIE, BERT-WWM, etc. The image feature extraction layer is suitable for extracting the semantics of the input image and representing it as a vector, and can be selected from various known models, including but not limited to ViT (VisionTransformer) models, CNN models, deep convolutional models such as EfficientNet, DenseNet, ResNet, etc. The classifier is suitable for binary classification tasks and can be an MLP (feedforward neural network) or a FC (fully connected layer).

[0140] In one embodiment, BERT is used as the text feature extraction layer and ViT as the image extraction layer. The outputs of the two extraction layers are concatenated and then connected to FC as the classifier to form a conversion rate prediction model. Based on the unique identifier of each product in the search results list, the text information and image information of each product are obtained from the product database. The text information includes the product description information, which can be any one or more of the following: product title, product details text, product price, product parameters, category tags, etc. The image information includes any one or more of the following: a main product image for prominent display and detail images for introducing product details. The text and image information of the product constitute a data pair, which is input into the conversion rate prediction model as image-text information. ViT is used to extract deep semantic features from the image information to obtain its corresponding image semantic vector, thus achieving a vectorized representation of the deep semantic information of the image. Simultaneously, BERT is used to extract deep semantic features from the text information to obtain its corresponding text semantic vector, thus achieving a vectorized representation of the deep semantic information of the text. Further, the image semantic vector and the text semantic vector are normalized to a uniform scale and then concatenated to obtain an image-text concatenated vector. This image-text concatenated vector is input into FC, which maps it to binary categories to obtain the positive class classification probability as the conversion rate. The binary classification includes positive and negative categories. The positive category indicates that after a user clicks on a product, the user will perform any one or more of the following actions: liking, forwarding, saving, adding to cart, or purchasing. The negative category indicates that after a user clicks on a product, the user will not perform any of the following actions: liking, forwarding, saving, adding to cart, or purchasing.

[0141] Step S1520: Determine the estimated effectiveness based on the click-through rate and conversion rate;

[0142] Based on the different reference values ​​of click-through rate (CTR) and conversion rate in relation to the expected results after product exposure, corresponding weights are preset for CTR and conversion rate, with the sum of their weights being 1. Those skilled in the art can set these weights as needed; for example, the weight of CTR is 0.3 and the weight of conversion rate is 0.7. Accordingly, the CTR and conversion rate are multiplied by their corresponding weights and then summed to obtain the estimated effectiveness value.

[0143] Step S1530: Sort each product in the search results list according to the expected performance value.

[0144] It is easy to understand that the performance forecast reflects the likelihood that the product will produce the expected results after exposure. The results are what the merchants selling the products expect on the one hand, and what they can attract users searching for the products on the other hand. Therefore, the products in the search list are sorted in descending order of performance forecast from high to low.

[0145] In this embodiment, the click-through rate (CTR) and conversion rate (CTR) prediction models are used to predict the CTR and CTR of each product in the search results list, respectively, and then the corresponding performance estimate is obtained. Based on this, the products in the list are sorted in descending order. On the one hand, this can ensure that the products in the search results attract users, satisfy users, improve user experience, and increase user stickiness. On the other hand, it can increase product revenue.

[0146] Please see Figure 7 In a further embodiment, before step S1500, which involves using a click-through rate prediction model to predict the click-through rate of each product in the search results list, the following steps are included:

[0147] Step S2500: Obtain the first training set and use the first training set to train the click-through rate prediction model so that it learns the ability to predict the click-through rate of products. The first training set includes first training samples corresponding to the positive and negative classes. The first training samples belonging to the positive class include the image and text information of products that trigger click behavior, and the first training samples belonging to the negative class include the image and text information of products that do not trigger click behavior.

[0148] The click-through rate (CTR) prediction model includes a text feature extraction layer, an image feature map extraction layer, and a classifier. The text feature extraction layer is suitable for extracting the semantics of the input text and representing it as a vector. It can be selected from various known models, including but not limited to BERT, RNN, BiLSTM, BiGRU, RoBERTa, ALBert, ERNIE, and BERT-WWM. The image feature extraction layer is suitable for extracting the semantics of the input image and representing it as a vector. It can be selected from various known models, including but not limited to ViT (Vision Transformer) models, CNN models, deep convolutional models such as EfficientNet, DenseNet, and ResNet. The classifier is suitable for binary classification tasks and can be an MLP (feedforward neural network) or a FC (fully connected layer).

[0149] It is easy to understand that whether a product is clicked by a user after exposure (i.e., triggering a click behavior) or not clicked by a user after exposure (i.e., not triggering a click behavior), both are closely related to the product's text and image information. Therefore, data pairs of text and image information from products that trigger click behavior are collected as image-text information to obtain a first training sample belonging to the positive class. The first training sample is labeled with a positive class supervision label, for example, [positive class: 1, negative class: 0]. Similarly, data pairs of text and image information from products that do not trigger click behavior are collected as image-text information to obtain a first training sample belonging to the negative class. The first training sample is labeled with a negative class supervision label, for example, [positive class: 0, negative class: 1]. These first training samples belonging to the positive and negative classes constitute the first training set.

[0150] A single first training sample from the first training set is obtained and input into the click-through rate prediction model. A deep semantic feature extraction layer is used to extract deep semantic features from the image information within the image-text information to obtain its corresponding image semantic vector, thus achieving a vectorized representation of the deep semantic information of the image information. Simultaneously, a deep semantic feature extraction layer is used to extract deep semantic features from the text information within the image-text information to obtain its corresponding text semantic vector, thus achieving a vectorized representation of the deep semantic information of the text information. Further, the image semantic vector and the text semantic vector are normalized to a uniform scale and then concatenated to obtain an image-text concatenated vector. This image-text concatenated vector is input into a classifier, which maps it to binary categories to obtain the classification probability of each category as the prediction result. The binary categories include a positive class and a negative class, where the positive class represents triggering a click behavior and the negative class represents not triggering a click behavior. The preset cross-entropy loss function is invoked. This function can be flexibly set by those skilled in the art based on prior knowledge or experimental experience. The cross-entropy loss value corresponding to the prediction result is calculated based on the supervision labels of the training samples. When the cross-entropy loss value reaches a preset threshold, it indicates that the click-through rate prediction model has been trained to a convergent state, and the training of the click-through rate prediction model can be terminated. When the cross-entropy loss value does not reach the preset threshold, it indicates that the click-through rate prediction model has not converged. Therefore, the model is updated with gradients based on the cross-entropy loss value. Usually, the weight parameters of each part of the model are corrected through backpropagation to make the model closer to convergence. Then, other first training samples are called to iteratively train the click-through rate prediction model until the model is trained to a convergent state.

[0151] Step S2510: Obtain the second training set and use the second training set to train the conversion rate prediction model so that it learns the ability to predict the conversion rate of products. The second training set includes second training samples corresponding to the positive and negative classes. The second training samples belonging to the positive class include the image and text information of products that trigger conversion behavior, and the second training samples belonging to the negative class include the image and text information of products that do not trigger conversion behavior.

[0152] The conversion rate prediction model includes a text feature extraction layer, an image feature map extraction layer, and a classifier. The text feature extraction layer is suitable for extracting the semantics of the input text and representing it as a vector. It can be selected from a variety of known models, including but not limited to BERT, RNN, BiLSTM, BiGRU, RoBERTa, ALBert, ERNIE, BERT-WWM, etc. The image feature extraction layer is suitable for extracting the semantics of the input image and representing it as a vector. It can be selected from a variety of known models, including but not limited to ViT (Vision Transformer) models, CNN models, deep convolutional models such as EfficientNet, DenseNet, ResNet, etc. The classifier is suitable for binary classification tasks and can be an MLP (feedforward neural network) or a FC (fully connected layer).

[0153] It's easy to understand that after a user clicks on a product, any one or more actions such as liking, forwarding, saving, adding to cart, or purchasing trigger a conversion. Conversely, if a user clicks on a product but doesn't take any of these actions, no conversion occurs. Both are closely related to the product's text and image information. Therefore, we collect text and image information from products that trigger clicks to form data pairs as text-image information, obtaining a second training sample belonging to the positive class. We label this second training sample with a positive class supervision label, for example, [positive class: 1, negative class: 0]. Similarly, we collect text and image information from products that don't trigger clicks to form data pairs as text-image information, obtaining a second training sample belonging to the negative class. We label this second training sample with a negative class supervision label, for example, [positive class: 0, negative class: 1]. These positive and negative second training samples constitute the second training set.

[0154] A single second training sample from the second training set is obtained and input into the conversion rate prediction model. A deep semantic feature extraction layer is used to extract deep semantic features from the image information within the image-text information to obtain its corresponding image semantic vector, thus achieving a vectorized representation of the deep semantic information of the image information. Simultaneously, a deep semantic feature extraction layer is used to extract deep semantic features from the text information within the image-text information to obtain its corresponding text semantic vector, thus achieving a vectorized representation of the deep semantic information of the text information. Further, the image semantic vector and the text semantic vector are normalized to a uniform scale and then concatenated to obtain an image-text concatenated vector. This image-text concatenated vector is input into a classifier, which maps it to binary categories, obtaining the classification probability of each category as the prediction result. The binary categories include a positive class and a negative class, where the positive class represents the occurrence of conversion behavior, and the negative class represents the occurrence of no conversion behavior. The preset cross-entropy loss function is invoked. This function can be flexibly set by those skilled in the art based on prior knowledge or experimental experience. The cross-entropy loss value corresponding to the prediction result is calculated based on the supervision labels of the training samples. When the cross-entropy loss value reaches a preset threshold, it indicates that the conversion rate prediction model has been trained to a convergent state, and the training of the conversion rate prediction model can be terminated. When the cross-entropy loss value does not reach the preset threshold, it indicates that the conversion rate prediction model has not converged. Therefore, the model is updated with gradients based on the cross-entropy loss value. Usually, the weight parameters of each part of the model are corrected through backpropagation to make the model closer to convergence. Then, other second training samples are called to iteratively train the conversion rate prediction model until the model is trained to a convergent state.

[0155] This embodiment reveals the training process of the click-through rate (CTR) prediction model and the conversion rate (CTR) prediction model, which can ensure the accuracy of CTR and CTR.

[0156] Please see Figure 8This product search device, provided to meet one of the purposes of this application, is a functional embodiment of the product search method of this application. On another aspect, this product search device, provided to meet one of the purposes of this application, includes a request response module 1100, a node determination module 1200, a rating calculation module 1300, and a list construction module 1400. The request response module 1100 is used to respond to product search requests and obtain a recall list coarsely recalled based on user-input search keywords, the recall list containing multiple recalled products. The node determination module 1200 is used to determine the node server corresponding to each recalled product in the recall list. Each node server caches multiple search-related scores for some of the recalled products across various dimensions. These search-related scores characterize the relevance between the recalled products and search keywords within a specified dimension. A scoring calculation module 1300 sends a scoring calculation request to each node server to obtain the search scores calculated by the node server for the cached recalled products. The search score for each recalled product is determined based on its multiple search-related scores. A list construction module 1400 selects recalled products from the recall list that meet preset conditions based on their search scores to construct a search results list.

[0157] In a further embodiment, the request response module 1100 includes: a request parsing submodule, used to parse the product search request and obtain the search keywords input by the user; and a list composition submodule, used to call a preset search engine interface to retrieve multiple products matching the search keywords from the product database and form a recall list.

[0158] In a further embodiment, after the node determination module 1200, the module includes: a first specified dimension submodule, used to obtain the coarse recall score corresponding to each recalled product in the recall list as the search relevance score of the first specified dimension; a second specified dimension submodule, used to determine at least one product category pointed to by the search keyword and the pointing probability corresponding to each product category using a preset category prediction model, and determine the pointing probability of the product category to which each recalled product in the recall list belongs as the search relevance score of the second specified dimension; a third specified dimension submodule, used to determine the text relevance score between the search keyword and the product title of each recalled product in the recall list using a text relevance algorithm as the search relevance score of the third specified dimension; and a score caching submodule, used to cache the search relevance scores of multiple different dimensions of the recalled product for each recalled product in the recall list using a corresponding node server.

[0159] In a further embodiment, before the scoring calculation module 1300, there are: a tier evaluation value determination submodule, used by the node server to determine the corresponding tier evaluation value based on the search-related scores of multiple different dimensions of each recalled product in the cache; and a scoring determination submodule, used to map the tier evaluation value corresponding to each recalled product to its respective tier using a threshold division method, and determine the search score corresponding to that tier.

[0160] In a further embodiment, the scoring determination submodule includes: a sequence construction unit, used to sort each recalled product in descending order according to the tier evaluation value to construct an evaluation value sequence; a gap determination unit, used to determine the maximum value of the tier evaluation value in the evaluation value sequence as the anchor point of the current tier, and calculate the gap ratio between each tier evaluation value after the anchor point and the anchor point; a tier setting unit, used to set the tier evaluation values ​​with a gap ratio not exceeding a preset threshold to the tier evaluation value corresponding to the anchor point to the same tier, and for the tier evaluation values ​​with a gap ratio exceeding the preset threshold, continue iterating from the previous step to determine the next lower tier, until the tier evaluation values ​​of each recalled product have completed their tier setting; and a scoring setting unit, used to set the search score corresponding to each tier in an orderly manner according to the tier height.

[0161] In a further embodiment, after the list construction module 1400, the module includes: a click-through rate (CTR) estimation submodule, used to estimate the CTR of each product in the search results list using a CTR estimation model; a conversion rate estimation submodule, used to estimate the conversion rate of each product in the search results list using a conversion rate estimation model; a performance determination submodule, used to determine the performance estimate based on the CTR and conversion rate; and a product sorting submodule, used to sort each product in the search results list according to the performance estimate.

[0162] In a further embodiment, before the click-through rate (CTR) prediction submodule, there is a CTR prediction model training submodule, used to acquire a first training set and use the first training set to train the CTR prediction model so that it learns the ability to predict the CTR of products. The first training set includes first training samples belonging to the positive and negative classes. The first training samples belonging to the positive class include image and text information of products that trigger click behavior, and the first training samples belonging to the negative class include image and text information of products that do not trigger click behavior. A conversion rate prediction model training submodule is used to acquire a second training set and use the second training set to train the conversion rate prediction model so that it learns the ability to predict the conversion rate of products. The second training set includes second training samples belonging to the positive and negative classes. The second training samples belonging to the positive class include image and text information of products that trigger conversion behavior, and the second training samples belonging to the negative class include image and text information of products that do not trigger conversion behavior.

[0163] To address the aforementioned technical problems, embodiments of this application also provide computer equipment. For example... Figure 9 The diagram shows the internal structure of a computer device. The computer device includes a processor, a computer-readable storage medium, a memory, and a network interface connected via a system bus. The computer-readable storage medium stores an operating system, a database, and computer-readable instructions. The database may store a sequence of control information. When the computer-readable instructions are executed by the processor, the processor can implement a product search method. The processor of the computer device provides computing and control capabilities to support the operation of the entire computer device. The memory of the computer device may store computer-readable instructions. When the computer-readable instructions are executed by the processor, the processor can execute the product search method of this application. The network interface of the computer device is used for communication with a terminal. Those skilled in the art will understand that… Figure 9 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0164] In this embodiment, the processor is used to execute... Figure 8 The system contains the specific functions of each module and its sub-modules, and the memory stores the program code and various data required to execute these modules or sub-modules. The network interface is used for data transmission between the user terminal and the server. In this embodiment, the memory stores the program code and data required to execute all modules / sub-modules in the product search device of this application, and the server can call the server's program code and data to execute the functions of all sub-modules.

[0165] This application also provides a storage medium storing computer-readable instructions, which, when executed by one or more processors, cause the one or more processors to perform the steps of the product search method of any embodiment of this application.

[0166] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments of this application can be implemented by a computer program instructing related hardware. This computer program can be stored in a computer-readable storage medium, and when executed, it can include the processes of the embodiments of the methods described above. The aforementioned storage medium can be a magnetic disk, optical disk, read-only memory (ROM), or random access memory (RAM), etc.

[0167] In summary, this application can accurately search for products and executes efficiently.

[0168] Those skilled in the art will understand that the steps, measures, and solutions in the various operations, methods, and processes discussed in this application can be alternated, modified, combined, or deleted. Furthermore, other steps, measures, and solutions in the various operations, methods, and processes discussed in this application can also be alternated, modified, rearranged, decomposed, combined, or deleted. Furthermore, steps, measures, and solutions in the prior art that are similar to those disclosed in this application can also be alternated, modified, rearranged, decomposed, combined, or deleted.

[0169] The above description is only a partial embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.

Claims

1. A product search method, characterized in that, Includes the following steps: In response to a product search request, a recall list coarsely retrieved based on the search keywords entered by the user is obtained, and the recall list contains multiple recalled products; The process involves identifying node servers corresponding to each recalled product in the recall list. Each node server caches multiple search relevance scores for some of the recalled products across various dimensions. These search relevance scores characterize the relevance between the recalled product and the search keyword within a specified dimension. The node servers are determined using a hash algorithm based on the identifier of the corresponding recalled product. The process includes: obtaining a coarse recall score for each recalled product in the recall list as the search relevance score for the first specified dimension; using a preset category prediction model to determine at least one product category pointed to by the search keyword, and the probability of each product category being pointed to, and determining the probability of each recalled product belonging to its product category as the search relevance score for the second specified dimension; using a text relevance algorithm to determine the text relevance score between the search keyword and the product title of each recalled product in the recall list as the search relevance score for the third specified dimension; and for each recalled product in the recall list, using a corresponding node server to cache multiple search relevance scores for that product across various dimensions. A score calculation request is sent to each node server to obtain the search score calculated by the node server for the recalled products in the cache. The search score of each recalled product is determined based on multiple search-related scores of the recalled product. Based on the search scores, a search results list is constructed by selecting recalled products from the recall list that meet preset conditions.

2. The product search method according to claim 1, characterized in that, Obtaining a coarse recall list based on the user-input search keywords includes the following steps: Parse the product search request to obtain the search keywords input by the user. The system calls a preset search engine interface to retrieve multiple products from the product database that match the search keywords, thus forming a recall list.

3. The product search method according to claim 1, characterized in that, Before obtaining the search score calculated by the node server for the recalled products cached therein, the following steps are included: The node server determines the corresponding tier evaluation value based on the search-related scores of each recalled product in the cache across multiple dimensions. A threshold-based approach is used to map the evaluation value of each recalled product to its corresponding tier, thereby determining the search score for that tier.

4. The product search method according to claim 3, characterized in that, The evaluation value of each recalled product is mapped to its corresponding price tier using a threshold-based method to determine the search score corresponding to that tier. This process includes the following steps: Each recalled product is sorted in descending order according to its grade evaluation value to construct an evaluation value sequence; The maximum value of the gear evaluation value in the evaluation value sequence is determined as the anchor point of the current gear, and the percentage difference between the evaluation value of each gear after the anchor point and the anchor point is calculated. Set the grade evaluation value of the grade with the difference ratio not exceeding the preset threshold to the grade evaluation value corresponding to the anchor point to the same grade. For the grade evaluation value with the difference ratio exceeding the preset threshold, continue iterating from the previous step to determine the lower grade until the grade evaluation value of each recalled product has completed its grade setting. The search scores are set in order of increasing or decreasing from level to level.

5. The product search method according to claim 1, characterized in that, After constructing a search results list by filtering products whose search ratings meet preset conditions from the recall list, the following steps are included: A click-through rate (CTR) prediction model is used to predict the CTR of each product in the search results list. A conversion rate prediction model is used to predict the conversion rate for each product in the search results list. The estimated performance value is determined based on the click-through rate and conversion rate. Each product in the search results list is sorted according to its expected performance.

6. The product search method according to claim 5, characterized in that, Before using a click-through rate (CTR) prediction model to predict the CTR for each product in the search results list, the following steps are included: Obtain a first training set and use the first training set to train the click-through rate prediction model so that it learns the ability to predict the click-through rate of products. The first training set includes first training samples corresponding to positive and negative classes. The first training samples belonging to the positive class include the image and text information of products that trigger click behavior, and the first training samples belonging to the negative class include the image and text information of products that do not trigger click behavior. Obtain a second training set and use it to train the conversion rate prediction model so that it learns the ability to predict the conversion rate of products. The second training set includes second training samples corresponding to positive and negative classes. The second training samples belonging to the positive class include the image and text information of products that trigger conversion behavior, and the second training samples belonging to the negative class include the image and text information of products that do not trigger conversion behavior.

7. A product search device, characterized in that, include: The request and response module is used to respond to product search requests and obtain a recall list coarsely recalled based on the search keywords entered by the user. The recall list contains multiple recalled products. The node determination module is used to determine the node server corresponding to each recalled product in the recall list. Each node server caches multiple search relevance scores of some of the recalled products across different dimensions. The search relevance scores are used to characterize the relevance between the recalled products and the search keywords under a specified dimension. The node server is determined by a hash algorithm based on the identifier of the corresponding recalled product. The process includes: obtaining the coarse recall score corresponding to each recalled product in the recall list as the search relevance score for the first specified dimension; using a preset category prediction model to determine at least one product category pointed to by the search keyword, and the pointing probability corresponding to each product category, and determining the pointing probability of the product category to which each recalled product in the recall list belongs as the search relevance score for the second specified dimension; using a text relevance algorithm to determine the text relevance score between the search keyword and the product title of each recalled product in the recall list as the search relevance score for the third specified dimension; and for each recalled product in the recall list, using a corresponding node server to cache multiple search relevance scores of the recalled product across different dimensions. The scoring calculation module is used to send a scoring calculation request to each node server, and obtain the search score calculated by the node server for the recalled products in the cache. The search score of each recalled product is determined based on multiple search-related scores of the recalled product. The list construction module is used to select recalled products whose search scores meet preset conditions from the recall list based on search scores to construct a search results list.

8. The product search device according to claim 7, characterized in that, The request response module includes: a request parsing submodule, used to parse the product search request and obtain the search keywords input by the user; and a list composition submodule, used to call a preset search engine interface to retrieve multiple products matching the search keywords from the product database and form a recall list.

9. A computer device comprising a central processing unit and a memory, characterized in that, The central processing unit is used to invoke and run a computer program stored in the memory to perform the steps of the method as described in any one of claims 1 to 6.

10. A computer-readable storage medium, characterized in that, It stores, in the form of computer-readable instructions, a computer program implemented according to any one of claims 1 to 6, which, when invoked by a computer, executes the steps included in the corresponding method.