Item option recognition and search result presentation at a search engine

By using deep learning to identify similar user groups and predict and provide item options in search results, the accuracy and efficiency issues of search engines when processing large amounts of results are solved, resulting in more efficient search result presentation and optimization of the computing system.

CN115630215BActive Publication Date: 2026-03-31EBAY INC
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-28
Publication Date
2026-03-31

AI Technical Summary

Technical Problem

Existing search engines struggle to accurately identify user intent when processing large volumes of search results, forcing users to sift through numerous irrelevant results, impacting navigation efficiency and the processing power of computing systems.

Method used

By employing deep learning technology, a machine learning model is trained to identify similar user groups, predict item options based on user history, and provide pre-selected item options on the search results page, while excluding irrelevant results and improving the relevance and efficiency of the results.

Benefits of technology

It improves the accuracy of search results and user navigation efficiency, reduces user interaction steps, and enhances the processing power of the computing system and network bandwidth utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115630215B_ABST
    Figure CN115630215B_ABST
Patent Text Reader

Abstract

A recommendation engine utilizes deep learning methods, including machine learning neural network models, to identify clusters of user groups of users with common purchase histories in determining item options such as item features for a user associated with a search query at a search engine. The determined item options are presented to the user at a search results page or as an item list as preselections of selectable options for item options categories, identifying and providing specific item variants. The search results page can be refined by excluding items with the same set of item option categories or the same identified item options, providing a search results page or item list that allows for the provision and identification of other contextually relevant items by the user.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The aspects described in this article involve using deep learning to identify project options and presenting them in a streamlined search results page. Background Technology

[0002] Search engines are used to navigate the internet or other networks by identifying web pages relevant to a search query. They display a search results page in response to the search query, and this page includes links to the relevant web pages. Some search engines are website-specific, meaning they return search results corresponding to different web pages on a specific website. This helps users navigate websites by enabling word searches, rather than requiring them to navigate the website structure to find a specific page or enter a specific URL (Uniform Resource Locator). Other search engines crawl the internet to identify search results across the entire network and present relevant web pages found to users on the search results page. Summary of the Invention

[0003] At a high level, the aspects described in this article involve using deep learning to identify project options and presenting them in a way that simplifies the search results page.

[0004] Projects typically have various models or variations. For example, a mobile phone can have many models, each with different features, known as project options. Project options are usually part of a project option category, such as a new version of a mobile phone with different colors and storage options.

[0005] To identify item options for a category in response to a search query from a search engine, a trained machine learning model is employed. This model can be trained using known user characteristics and purchase history from multiple users. When used, the trained machine learning model takes the search query as input and outputs item options by identifying user groups with shared user history and predicting item options based on that shared history. Specifically, the trained model identifies users similar to those associated with the search query and identifies item options by determining the probability that a group member will select an item option based on that group member's user history, as well as the probability of selecting an item option relative to other item options for that category.

[0006] Once determined, item options can be presented as pre-selected options on the display. Item options can be presented as part of an item list or search results page. On an item list or search results page, item options are pre-selected from other item options in an item option category, and item options for that category are configured as optional choices with the already selected, identified item options. When presented as part of a search results page, the search results page can exclude other item lists that include the same item options or the same set of item option categories.

[0007] This invention is intended to present in a simplified form the selection of concepts further described in the specific embodiments of this disclosure. This invention is not intended to identify key or essential features of the claimed subject matter, nor is it intended to help determine the scope of the claimed subject matter. Additional objects, advantages, and novel features of the art will be provided and will become in part apparent to those skilled in the art upon reading this disclosure or through practical study of the art. Attached Figure Description

[0008] The present technology is described in detail below with reference to the accompanying drawings, wherein:

[0009] Figure 1 This describes the operating environment for an example recommendation engine based on the aspects described in this article;

[0010] Figure 2 A graphical user interface is generated based on the aspects described herein to provide a list of example items, which has a graphical user interface generated by [the following text is missing from the original] to provide a list of example items. Figure 1 The recommendation engine identifies the item options;

[0011] Figure 3 This is another graphical user interface generated according to the aspects described herein to provide an example search results page, which includes features generated by... Figure 1 The list of items identified by the recommendation engine;

[0012] Figure 4 and Figure 5 This is based on the aspects described in this article for use. Figure 1 Example methods for using a recommendation engine to identify and present item options; and

[0013] Figure 6 This is an example computing device suitable for implementing the described technology according to the aspects described herein. Detailed Implementation

[0014] Conventional search engines provide search results to users by crawling web pages and returning pages from websites relevant to the search query. Some search engines return pages that are part of a specific website and are relevant to the search query. Due to the vast and ever-changing nature of the internet, conventional search engines tend to return a large number of search results because there are a considerable number of web pages relevant to the search query.

[0015] The sheer volume of potential search results is problematic for both search engines and internet users. Specifically, users can only view a limited number of search results, and only a limited number can be presented on the user interface. For example, at the time of this application, a search for "size 12 shoes" entered into a popular search engine yielded over 850,000,000 relevant web pages. It is difficult to imagine a person filtering through every single one of these pages, and there is no way to display even a fraction of that number of websites on a screen. Therefore, due to the nature of the internet, how search results are presented on search results pages is crucial to the operation of the internet. Otherwise, the probability of a person finding a context-relevant web page as a search result is close to zero, because only a small number of search results can be presented on a screen, and it is impossible to filter through such a large number of search results page by page, effectively making navigating the internet impossible.

[0016] To describe the problem in another way, there are many potential search results that closely match any given search query. The probability that a user identifies a webpage that is relevant to the search context but not an exact match is close to zero, because such a webpage would be interspersed among a large number of search results and might only appear deep within the search result rankings initially. For example, if a user searches for "size 12 shoes" but finds size 12 red sneakers to be the most relevant, the user might never identify a pair of size 12 red sneakers because there are very few relevant webpages interspersed among 850,000,000 results, and the first relevant result might be one of the lower few thousand relevant webpages among those 850,000,000. Therefore, the way search engines rank and display search results is crucial to the operation of the internet; otherwise, users would have to provide sufficiently specific search queries to differentiate themselves from, for example, 850,000,000 results, assuming that such specificity is even possible without knowing the exact content of the webpage or its URL.

[0017] To overcome some aspects of this problem, search engines seek to provide search results by giving users the ability to locate the expected webpage. In the context of e-commerce, this includes providing users with the ability to locate the expected item, which is stored in the item list database of the e-commerce website with the search engine. Some methods for providing search results to users include using deep learning to better predict search results that are most likely related to the user's intent and are relevant to the search query.

[0018] However, some conventional machine learning techniques in this field have limited applicability because, in many cases, there isn't enough data about a specific user to accurately predict their intent for many possible search queries. As compensation, some unsupervised learning techniques have been employed, but the results may still not be accurate enough to distinguish the best search result from millions of potential results.

[0019] Another approach to overcoming some of these challenges involves specific methods for presenting search results. Some existing methods offer reordering or shuffling of top-ranking search results to prevent all top-ranking results from being related to the same webpage or item.

[0020] This technology provides an additional mechanism that is not conventional in the technology field to help overcome these challenges. To overcome some of these challenges, aspects of this technology employ deep learning methods for predicting search results based on similar user groups. This allows for more accurate predictions using less data about the users associated with the search query compared to conventional methods. By making more accurate predictions with less user data, the best relevant search results can be presented to users, thus enabling them to actually identify the expected search results, such as web pages or items. Furthermore, this technology can be used with a wider range of users, including those with limited data.

[0021] Furthermore, this technology describes a method for presenting search results to users in a concise manner, thus allowing the presentation of additional search results with different contextual relationships to the search query by excluding similar search results. For example, some presentation methods offer selectable options, allowing the exclusion of some search results and enabling the presentation of other context-related search results.

[0022] Furthermore, as will be described in more detail, this technology offers the option pre-selection using deep learning. By using deep learning to pre-select options, the accuracy of identifying the best option for the user is very high. Therefore, when multiple options are presented, the user is less likely to have to delve into the search results to find the best result; instead, the most probable option is presented. In short, this requires the user to provide less input than conventional systems require to obtain the final search results, including web pages or lists of items.

[0023] In summary, by providing pre-selection, search systems receive less input from users, as traditionally required to achieve similar results. From the search engine's perspective, because of the less user input, the search engine is processing fewer commands. This enhances the efficiency of the computing system employing the search engine, as the computing system is now able to handle a larger number of search requests from users with the same computing power as before. When adopted, the reduced input and functionality processed in the response frees up bandwidth across the network employing the computing system, thus allowing the network to facilitate the system processing more transactions.

[0024] One example of a technology that influences these benefits is the identification of item options and their presentation as pre-selection within an item list or search results page. As mentioned above, one use of this technology facilitates the identification of items and their presentation to the user as search results. In many cases, items will have multiple variations. These may appear as updates to previous items, new models of items, or items offering a variety of optional features. This is especially true for electronic devices, where new models and different variations of models are constantly being introduced. Typically, item options are associated with item features, and item features are often grouped into item option categories. As an example, a new model of mobile phone might be introduced with different storage options, color options, camera quality options, size options, battery capacity options, etc. Therefore, storage, color, camera quality, size, and battery capacity are examples of item option categories, while individual options or features are examples of item options associated with item option categories. For example, 50GB (gigabytes), 100GB, and 150GB would be examples of item options within the storage capacity item option category.

[0025] Machine learning can be used to identify item options for a user upon receiving a search query. Specifically, a machine learning model (e.g., a neural network) can be trained to identify item options as output based on the user's search query input. The neural network can be trained using a training dataset that includes known user characteristics and user purchase history from multiple users. Known user characteristics include any recognizable aspects of the user, while user purchase history includes a stored history of past purchases, including the items purchased and any item options for those items. User purchase history can also include interactions within the website (e.g., the entered search query) and user activities after the search query (e.g., interactions with specific search results for an item), as well as associated item options and item option categories.

[0026] When training a neural network, it is trained to identify similar users. That is, among multiple users, each possesses various user characteristics and purchase histories. The neural network can be trained to identify similar users clustered in a vector space. A cluster of one or more similar users is called a user group. As a result of training, the members of a user group include common user histories. It should be understood that "common" user history does not mean that the user histories are identical, but rather that they are the user histories of users within the identifiable cluster.

[0027] After the neural network has been trained, it can be used during runtime by inputting a user's search query, which may also include known user characteristics or item option categories. The trained neural network outputs item options determined based on the public user history of user groups associated with the user making the search query. That is, the neural network predicts item options categories based on the user's purchase history or the purchase history of user groups with a shared history.

[0028] Item options determined by a neural network can be presented to the user as pre-selections. That is, item option categories are configured to include alternatives for each item option within the category, and the item options determined by the trained neural network can be offered as pre-selections of these alternatives. Therefore, the user can use the pre-selections to continue navigation or choose another alternative. However, using machine learning, the overall likelihood of the user continuing navigation with the pre-selections is higher, requiring fewer navigation steps. Furthermore, in addition to providing pre-selections, they can also be offered on the search results page, streamlining the search results page to display more relevant results. That is, by presenting pre-selections to the user but being able to change them to another item option, the search results page can exclude other search results with the same item option or the same item option category, thus helping to eliminate duplicate or context-similar search results that might hinder the user's ability to identify other, more relevant results.

[0029] It will be appreciated that the methods described above are merely examples that can be practiced from the following description, and that have been provided to make the technique easier to understand and recognize its benefits. Additional examples are now described with reference to the accompanying drawings.

[0030] First refer to Figure 1 Among other components or engines not shown, the example operating environment 100 includes a computing device 102. The computing device 102 is shown communicating with a data storage 106, a search engine 108, and a recommendation engine 110 using a network 104.

[0031] Network 104 may include one or more networks (e.g., public networks or virtual private networks, "VPNs"), as shown in Network 104. Network 104 may include, but is not limited to, one or more local area networks (LANs), wide area networks (WANs), or any other communication network or method.

[0032] Typically, the computing device 102 can be a counterpart to the reference. Figure 6 The computing device 600 described herein. In one embodiment, computing device 102 may be a client-side or front-end device, while in other embodiments, computing device 102 represents a back-end or server-side device. As will be discussed, computing device 102 may also represent one or more computing devices, and thus, some variations of this technology include both client-side or front-end devices and back-end or server-side computing devices that perform one or more functions, which will be further described.

[0033] Operating environment 100 includes data storage 106. Data storage 106 typically stores information including data, computer instructions (e.g., software program instructions, routines, or services), or models used in embodiments of the described technology. Although depicted as a single database component, data storage 106 may be embodied as one or more data storages or may be located in the cloud.

[0034] Having identified the various components of operating environment 100, it is noted and emphasized again that any additional or fewer components in any arrangement can be used to achieve the desired functionality within the scope of this disclosure. Although Figure 1 Some components are depicted as single components, but these depictions are intended to be illustrative in nature and number and should not be construed as limiting all embodiments of this disclosure. The functionality of the operating environment 100 may be further described based on the functionality and characteristics of the components of the operating environment 100. Other arrangements and elements (e.g., machines, interfaces, functions, commands, functional groups, etc.) may be used in addition to or instead of those shown, and some elements may be omitted entirely.

[0035] In addition, regarding Figure 1 Many of the elements described (e.g., those described regarding the recommendation engine 110) are functional entities that can be implemented as discrete or distributed components or combined with other components, and can be implemented in any suitable combination and location. The various functions described herein are performed by one or more entities and can be performed by hardware, firmware, or software. For example, the various functions can be performed by a processor executing computer-executable instructions stored in memory. Furthermore, regarding... Figure 1 The described functions can be performed by the computing device 102 at the front end, back end, or in any combination or arrangement.

[0036] Search engine 108 typically receives search queries from computing device 102 and provides search results in response. Search engine 108 can be any type of search engine used on a computer network, including web crawlers that return links to web pages related to the search query from various websites on the network, or website-specific search engines that return relevant web pages associated with a particular website. In a specific example, an e-commerce website might include a search engine that identifies items related to the search query that are being sold by third parties using the website. In this example, search results might include a list of relevant items linking to a list of items for that item.

[0037] Recommendation engine 110 typically uses machine learning to identify item options and provides the identified item options as pre-selected options. To this end, example recommendation engine 110 employs model trainer 112, item option determiner 114, and GUI (graphical user interface) generator 116.

[0038] Model trainer 112 typically trains machine learning models to identify project options. A set of machine learning models suitable for use by this technique includes neural networks. A particular neural network suitable for use includes multilayer perceptron artificial neural networks (ANNs).

[0039] The advantage of a multilayer perceptron (MLP) lies in its ability to approximate a training function relating input and output. This function can include a search query provided by a user (input) and item options associated with the search query (output). Through training, the MLP learns the association between the input and the target output by finding user groups or clusters of one or more users—points with similar output values. In this way, the MLP learns the relationship between one user and the next in a vector space to predict item options for similar users (including members of user groups). Users relatively close in the vector space are more similar in their actions and are used by the trained neural network (e.g., a trained MLP). This limits the amount of data about users, as the trained machine learning model identifies similar user groups of one or more users and can predict item options based on these similar user groups.

[0040] When training neural networks or other types of machine learning models, model trainer 112 may utilize training datasets, such as training data 118 in data storage 106. Training data 118 typically includes known user characteristics and user purchase history for multiple users. Known user characteristics typically include any identifying aspects of the user. This can include aspects such as user identification, location, address, education, clothing size, occupation, age, gender, etc. User purchase history can include aspects such as purchase frequency, previously purchased items, search query history, item returns, price, etc. User purchase history may also include item options for previously purchased items, and item option categories associated with those item options.

[0041] Using training data 118, model trainer 112 trains a machine learning model to generate a trained machine learning model. Therefore, in the specific example provided, model trainer 112 trains a multilayer perceptron model to generate a trained multilayer perceptron model. The trained machine learning model can be stored as trained model 120 in data storage 106 for use by other components of the operating environment 100, including recommendation engine 110.

[0042] Typically, the item selection determiner 114 determines item options by employing a machine learning model from the model trainer 112. The item selection determiner 114 may receive a user's search query associated with a search query from the search engine 108, or it may receive search results corresponding to relevant items identified by the search engine 108. When employing a trained machine learning model retrieved from the trained model 120 in the data storage 106, the item selection determiner 114 may use the received search query as input to the trained machine learning model.

[0043] Based on training using a training dataset, when adopted, the trained machine learning model determines the item options of users associated with a search query by identifying user groups of one or more users based on group members with shared user history. For example, the trained machine learning model identifies clusters of one or more users that are spatially correlated with the users associated with the search query in the vector space by a threshold distance, where user groups within a cluster are clustered by the machine learning model during training based on the user history associated with each user. By being identified within a user group, users have shared user history. Shared user history may include shared item options for items previously purchased by members of the user group. The machine learning model uses the shared user history of the user group to predict item options for users and group members.

[0044] When used by the item option determiner 114, the trained machine learning model outputs item options. The trained machine learning model can be used independently to determine item options for each item option category for an item. As mentioned, an item can include item option categories, which have multiple item options within each category. For example, a new model phone might have item option categories for color (including black and silver as item options) and item option categories for size (e.g., large screen and small screen as item options).

[0045] The trained machine learning model can independently determine project options for a first project option category and project options for a second project option category. In the case of independently determining each project option category, the project option determiner can also use the project option category as input. That is, relevant search results for a search query can be determined and can include projects related to the search query. For a project associated with relevant search results, the project may include various project option categories. The project option determiner 114 can independently provide each project option category of a project as input to the machine learning model to output project options for each project option category.

[0046] In another example, the item option determiner 114 determines item options by determining a single item model for the item and using features of the single item model as item options. For example, the item option determiner 114 provides a search query to a trained machine learning model to identify item options for items related to the search query. The identified item options may be included as part of a specific item model. Based on this, the item model is determined, and the item option for each item option category for the item is determined based on the features included in the determined item model. In another example, the trained machine learning model is configured (i.e., trained by model trainer 112) to output a model of items related to the search query, and the item options are determined by the item option determiner 114 by identifying item options for each item option category for the item based on the features of the determined item model.

[0047] On one hand, a trained machine learning model determines an item option from multiple item options for a category by outputting a probability value for each item option, where the probability value indicates the probability that the item was chosen by a user based on a user group with a shared user history. In other words, the probability value can indicate the strength of the correlation between an item option and the shared user history of a user group. The item option with the probability value indicating a higher probability relative to other item options is selected as the determined item option. In some scenarios, the output of the trained machine learning model may be uncertain relative to some of the item options, or it may indicate more than one item option with the same or similar probability of being chosen by a user based on item options with the same probability value.

[0048] In this scenario, the item option determiner 114 can employ Thompson sampling to determine the item option. For example, using Thompson sampling, one of the item options in the set is selected. Feedback is received regarding whether the user has selected the item option associated with the search query, for example, by combining the search results with the selected item option, purchasing an item with characteristics corresponding to the selected item option, or changing the selected item option to a different item option. Based on this feedback, the item option determiner 114 can determine which item option in the set has a higher probability of being selected by the user or another user in a user group. Therefore, using values ​​associated with the item options and Thompson sampling, item options can be determined and selected for the user in response to a search query.

[0049] The GUI generator 116 typically results in the generation of a GUI, which includes item options for display on the display device of the computing device 102. That is, the GUI generator 116 can provide item options determined by the item option determiner 114 for display. Figure 2 and Figure 3 Two sample GUIs generated by GUI generator 116 are shown. It should be understood that these are examples, and other methods that provide project options can be implemented.

[0050] exist Figure 2 In this example, GUI 200 is generated by GUI generator 116 and is suitable for display on a display device. Here, GUI generator 116 results in the generation of item list 202. Item list 202 can be an item list determined by search engine 108 and provided to recommendation engine 110. As shown, item list 202 has been generated to include item options 204A to 204E, which correspond to item option categories 206A to 206E respectively, meaning that item option 204A is one of multiple item options within item option category 206A, and so on.

[0051] As shown in the figure, item options 204A through 204E are all presented as pre-selected. That is, in the provided example, the user is navigated to the webpage of item list 202, and each of item options 204A through 204E is pre-selected. The user can be navigated to the webpage of item list by selecting a search result on the search results page after entering a search query. In other words, item option category 206A of item list 202 has multiple item options associated with it. These multiple item options can be optional. In this case, item option 204A is determined by item option determiner 114 based on the user group's public purchase history as the most likely item option among the multiple item options the user will interact with. Therefore, the GUI 200 with item list 202 initially presents the user with the determined item options (e.g., item option 204A pre-selected from multiple item options). The user can change the pre-selected item option (e.g., item option 204A) to any other item option among the multiple item options associated with item option category 206A. This can be done through one or more of project options 204A to 204E, although only one example will be described for the sake of brevity. By initially presenting pre-selected project options in the project list, users can view specific variations or models of a project (such as those determined by machine learning) in a way that requires less user interaction and manipulation at the user interface than conventional methods, thus simplifying navigation through the website.

[0052] Figure 3 Another example GUI 300 that can be generated using GUI generator 116 is shown. GUI 300 includes a search results page 302, which includes search results 304 for a search query provided at a search engine (e.g., search engine 108).

[0053] Search results 304 include first search results 306A through third search results 306C, but it should be understood that any number may be provided at search results page 302. Here, in response to a search query, search results page 302 is provided with items related to the search query, and the items are provided as search results 304. Taking first search result 306A as an example, first search result 306A includes item options 308A through 310E, each corresponding to item option categories 310A through 310E. For example, item option category 310A has multiple item options associated with it, each item option being provided as an optional option. In the provided example, item option 308A has already been pre-selected among the item options associated with item option category 310A and is provided as a pre-selection. One or more of item options 308A through 308E may be provided at search results page 302 for search result 306A as a pre-selection for one or more of item option categories 310A.

[0054] Search results page 302 can use optional options or pre-selections to provide a simplified set of search results for a search query. Figure 3 An example is provided. A streamlined set of search results can be provided by excluding some search results from search results page 302. As discussed earlier, a common problem is that the absolute number of relevant items may mean that many context-relevant items will not be seen by the user based on the usual presentation. However, by excluding some search results, other context-relevant search results can be provided and seen by the user, such as second search result 306B and third search result 306C.

[0055] On one hand, search results with the same set of item option categories can be excluded. In this case, search results page 302 can present only one search result for each relevant item that includes the same set of item option categories. As shown, the first search result 306A includes a set of item option categories, including "conditions," "model," "storage," "network," and "color." Therefore, another relevant item with the same set of item option categories can be excluded from search results page 302. However, by using optional options, users can manipulate the optional options on search results page 302 to view other relevant search results, for example, by changing item option 308A to another item option associated with item option category 310A, and so on. Therefore, search results page 302 can omit other items that are offered in different variations. By doing so, users are able to view other context-related search results, such as the second search result 306B and the third search result 306C.

[0056] In some respects, search results can be streamlined by excluding related search results that have the same item option determined by item option determiner 114 for one or more item option categories, such as search result 304. For example, search result 306A includes the determined item option 306B. Based on the determined item option 306B, the GUI generator can exclude other search results that have item options determined by item option determiner 114 for the user. As shown, other related items with the determined item option "Telephone IX" (which is determined as item option 308B) for the item option category "Model" have been excluded from search results page 302.

[0057] about Figure 4 and Figure 5 A block diagram is provided to illustrate an example method for identifying and providing project options. This method can use... Figure 1The recommendation engine 110 is used for execution. In several aspects, one or more computer storage media contain computer-executable instructions thereon, which, when executed by at least one processor, cause at least one processor to perform a method (e.g., Figure 4 and Figure 5 Example methods 400 and 500) are used for operation.

[0058] Now for reference Figure 4 In method 400, at box 402, a search query is received. The search query can be received from a user computing device, such as computing device 102, which provides the search query to search engine 108. At box 404, items corresponding to the search query are identified. Search engine 108 can identify relevant items as search results for the search query. Search engine 108 can identify relevant items by querying a database of indexed item lists and identifying a list of relevant items from the item database. In many cases, the identified relevant items include categories of item options associated with multiple item list options for various characteristics of the item. Relevant items may include variations of the item, each with a different set of item options for the item's associated category of item options.

[0059] At box 406, the item option determiner 114 of the recommendation engine 110 can be used to determine item options from multiple item options associated with item option categories (e.g., "available within this item option category") for the item identified at box 404. To this end, the item option determiner 114 can employ a trained machine learning model to determine item options for the user associated with the search query. The trained machine learning model can determine item options based on user groups of users with a shared user history, where user groups are determined during the training of the machine learning model to identify clusters of one or more users as user groups, wherein clusters are determined based on users' user history, and inclusion of cluster members is based on one or more users with a shared user history. One type of machine learning model can be a neural network, and an example of a neural network trained as a trained machine learning model is a multilayer perceptron.

[0060] In some cases, Thompson sampling can also be used to determine item options. Item options can be determined for a single item, or multiple item options can be determined for a single item. Item options can be determined independently or based on a specific model or variant used to determine the item. When identifying item options for each of the item option categories, a trained machine learning model can determine a probability value for each item option for each item option category, where the probability value indicates the strength of the correlation between each item option and the common user history of the user group. Each item option for each item option category can be determined based on the item option with the highest probability value within each item option category.

[0061] At box 408, the determined item options are provided. The determined item options can be provided to the user computing device receiving the search query. The item options can be provided by generating a GUI using GUI generator 116. In some cases, the determined item options are provided on the GUI as preselections for item option categories. Preselections can be provided as a portion of the search results page or as a portion of the item list. In some cases, other search results are excluded from the search results page, for example, by excluding other identified related item lists of item variants that are not provided as preselections, or by excluding other item lists with the same set of item list categories or with the same identified item list options.

[0062] Turn now Figure 5 Method 500 is provided to illustrate another example of identifying and providing item options. At box 502, a machine learning model is trained. The machine learning model can be a neural network, and in some specific cases, a multilayer perceptron. The machine learning model can be trained using a training dataset using the model trainer 112 of the recommendation engine 110. An example training dataset includes training data 118 and includes known user characteristics and user purchase history for multiple users.

[0063] At box 504, a trained machine learning model from box 502 is used to determine item options within item option categories. Item option determiner 114 can use a search query input received from a user to employ the trained machine learning model, where related items and item lists for items are associated with the received search query and are identified using search engine 108. Each item may have a set of item list categories associated with it. The trained machine learning model can be used to identify item options for item list categories for items, which can be done independently or by identifying individual item models (e.g., specific item variants). With training, the machine learning model can identify one or more item options by identifying user groups with a public user history as users associated with the search query, and can identify item options by predicting item options based on the public user history of user groups. Thompson sampling can also be used to identify one or more item options.

[0064] At box 506, a graphical user interface is rendered to present the item options identified at box 506. A GUI generator 116 can be used to generate a GUI that includes the item options. The GUI may include a search results page with a list of items for relevant items, where the list provides each identified item option as a pre-selection for an item option category, which has optional items associated with that category. In some cases, in response to a search query, the item options are presented as pre-selections at the item list.

[0065] Having described an overview of embodiments of the present technology, the following describes an example operating environment in which embodiments of the present technology may be implemented, in order to provide a general context for the various aspects. Specifically, reference is made first to... Figure 6 An example operating environment for implementing embodiments of the present technology is shown and is generally designated as computing device 600. Computing device 600 is merely an example of a suitable computing environment and is not intended to imply any limitation on the functionality or scope of the technology. Nor should computing device 600 be construed as having any dependencies or requirements associated with any one or combination of the components shown. Computing device 600 is suitable for performing computerized methods using one or more processors, including the methods already discussed or any variations thereof.

[0066] The techniques disclosed herein can be described in the general context of computer code or machine-usable instructions (including computer-executable instructions, such as program modules) that are executed by a computer or other machine (e.g., a personal data assistant or other handheld device). Typically, program modules, including routines, programs, objects, components, data structures, etc., refer to code that performs a specific task or implements a specific abstract data type. This technique can be practiced in various system configurations, including handheld devices, consumer electronics, general-purpose computers, and more specialized computing devices. This technique can also be practiced in distributed computing environments, where tasks are performed by remote processing devices linked via a communication network.

[0067] refer to Figure 6 The computing device 600 includes a bus 610 that directly or indirectly couples to the following devices: memory 612, one or more processors 614, one or more presentation components 616, input / output ports 618, input / output components 620, and an illustrative power supply 622. Bus 610 can represent one or more buses (e.g., an address bus, a data bus, or a combination thereof). Although for clarity... Figure 6 Each box is represented by a line, but in reality, depicting the various components is not so clear, and metaphorically, the lines would be more accurately described as gray and blurred. For example, a presentation component such as a display device can be considered an I / O component. As another example, a processor can also have memory. This is the nature of the art, and to reiterate, Figure 6 The figures only illustrate example computing devices that can be used in conjunction with one or more embodiments of this technology. There is no distinction between categories such as "workstation," "server," "laptop," "handheld device," etc., because all these categories are... Figure 6 Within the scope of consideration, all refer to "computing devices".

[0068] Computing device 600 typically includes a variety of computer-readable media. Computer-readable media can be any available media that can be accessed by computing device 600, and includes volatile and non-volatile media, as well as removable and non-removable media. By way of example and not limitation, computer-readable media can include computer storage media and communication media.

[0069] Computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information, such as computer-readable instructions, data structures, program modules, or other data. Computer storage media includes, but is not limited to: RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, Digital Universal Optical Disc (DVD) or other optical disc storage devices, magnetic tape cassettes, magnetic tape, disk storage devices or other magnetic storage devices, or any other medium that can be used to store desired information and can be accessed by a computing device 600. Computer storage media does not include the signal itself.

[0070] Communication media typically embody computer-readable instructions, data structures, program modules, or other data in the form of modulated data signals (such as carrier waves or other transmission mechanisms), and include any information transmission medium. The term "modulated data signal" refers to a signal whose characteristics are set or altered in a manner that encodes information in the signal. By way of example, and not limitation, communication media include wired media such as wired networks or direct wired connections, and wireless media such as acoustic, RF, infrared, and other wireless media. Any combination of the above should also be included within the scope of computer-readable media.

[0071] Memory 612 includes computer storage media in the form of volatile or non-volatile memory. The memory can be removable, non-removable, or a combination thereof. Example hardware devices include solid-state memory, hard disk drives, optical disk drives, etc. Computing device 600 includes one or more processors that read data from various entities such as memory 612 or I / O components 620. Presentation component 616 presents data indications to a user or other device. Examples of presentation components include display devices, speakers, printing components, vibration components, etc.

[0072] I / O port 618 allows computing device 600 to be logically coupled to other devices, including I / O components 620, some of which may be built-in. Illustrative components include microphones, joysticks, game controllers, satellite antennas, scanners, printers, wireless devices, etc.

[0073] The above embodiments can be combined with one or more of the specifically described alternatives. Specifically, the claimed embodiments may include references to more than one other embodiment in the alternatives. The claimed embodiments may specify further limitations on the claimed subject matter.

[0074] This document specifically describes the subject matter of the technology to meet legal requirements. However, the description itself is not intended to limit the scope of this disclosure. Rather, the inventors have envisioned that the claimed or disclosed subject matter may also be embodied in other ways to incorporate different steps or combinations of steps similar to those described in this document, in combination with other prior art or future art. Furthermore, although the terms “step” or “box” may be used herein to refer to different elements of the method employed, such terms should not be construed as implying any particular order among or between the various steps disclosed herein, unless and only if the order of the various steps is explicitly stated.

[0075] For the purposes of this disclosure, the words “comprising” or “having” have the same broad meaning as the word “including”, and the word “referencing” includes “receiving,” “referencing,” or “retrieval.” Furthermore, the word “communication” has the same broad meaning as the words “receiving” or “transmitting,” which is facilitated by a software- or hardware-based bus, receiver, or transmitter using a communication medium. Additionally, the word “initiate” has the same broad meaning as the words “execute” or “instruct”, where the corresponding action can be executed to completion or interruption based on the occurrence of another action.

[0076] Furthermore, unless otherwise stated, words such as “a” or “one” include both plural and singular forms. Thus, for example, the constraint “one feature” is satisfied when one or more features are present. Additionally, the term “or” includes connected, separate, and both (therefore, a or b includes a or b, and a and b).

[0077] For the purposes of the detailed discussion above, embodiments of this technology are described with reference to a distributed computing environment; however, the distributed computing environment described herein is merely an example. Components can be configured to perform novel aspects of the embodiments, wherein the terms "configured for" or "configured to" can mean "programmed to" perform a specific task or implement a specific abstract data type using code.

[0078] As can be seen from the foregoing, this technology is highly suitable for achieving all the aforementioned goals and objectives, including other advantages that are apparent or inherent to the structure. It should be understood that certain features and sub-combinations are useful and can be employed without reference to other features and sub-combinations. This is contemplated by and within the scope of the claims. Since many possible embodiments of the described technology can be made without departing from this scope, it should be understood that everything described herein or shown in the accompanying drawings should be interpreted as illustrative rather than restrictive.

[0079] Some examples of the technologies that can be based on the aforementioned publicly available practices include the following aspects:

[0080] Aspect 1: A computerized method for providing item options, executed by one or more processors, the method comprising: receiving a search query at a search engine, the search query being received from a user computing device; identifying items corresponding to the search query, the items being associated with a list of items within an item database, wherein the list of items includes different item options; determining item options from a plurality of item options available within item option categories of the items, the item options being determined based on a user group having a public user history; and providing the user computing device with the list of items from the item database as search results for the search query, the list of items including the items having the item options.

[0081] Aspect 2: According to aspect 1, it further includes: presenting the plurality of project options at the search engine as a set of optional options for the project option category, the project options being presented as pre-selections from the set of optional options.

[0082] Aspect 3: According to any one of aspects 1 to 2, it further includes: training a neural network using known user characteristics and user purchase history of multiple users, wherein the item option is determined by: identifying user groups with the common user history using the trained neural network, and predicting the item option based on the common user history of the user groups.

[0083] Aspect 4: According to any one of aspects 1 to 3, wherein determining the item option includes: performing Thompson sampling to select the item option from the item options identified for the user group.

[0084] Aspect 5: According to any one of aspects 1 to 4, wherein the project is associated with a plurality of project option categories, each project option category including project options, and wherein the method further includes determining a project option for each project option category.

[0085] Aspect 6: According to aspect 5, wherein determining a project option for each project option category includes: using a trained neural network to determine a probability value for each project option, the probability value indicating the strength of the correlation between each project option and the public user history of the user group, the project option having the maximum probability value within each project option category.

[0086] Aspect 7: According to either aspect 5 or 6, where a project option for each project option category is determined independently.

[0087] Aspect 8: According to any one of aspects 1 to 7, wherein the list of items is provided as part of a search results page, wherein the search results page excludes other lists of items with the item option for the item.

[0088] Aspect 9: One or more computer storage media storing computer-readable instructions that, when executed by a processor, cause the processor to perform operations for providing item options, the operations including: training a machine learning model using a training dataset comprising known user characteristics and user purchase history of multiple users; employing the trained machine learning model, using a search query as input, to determine item options within item option categories for an item, the trained machine learning model being configured to determine item options for a user associated with the search query by identifying a user group with a common user history and predicting the item options based on the common user history of the user group; and causing the generation of a graphical user interface including an item list for the item, the item list having a set of optional options for item option categories associated with the item options, the item options determined by employing the trained machine learning model being presented as preselections from the set of optional options.

[0089] Aspect 10: According to aspect 9, wherein the neural network is a multilayer perceptron.

[0090] Aspect 11: According to any one of aspects 9 to 10, it further includes: performing Thompson sampling on the item options of the item option category, wherein the item options are also determined based on the Thompson sampling.

[0091] Aspect 12: According to any one of Aspects 9 to 11, wherein the project is associated with a plurality of project option categories, each project option category including project options, and wherein the method further includes determining a project option for each of the project option categories by employing the trained machine learning model.

[0092] Aspect 13: According to aspect 12, wherein a project option for each project option category in the project option categories is determined independently.

[0093] Aspect 14: According to any one of aspects 12 to 13, wherein a project option for each of the project option categories is determined based on the characteristics of a single project model of the project.

[0094] Aspect 15: According to any one of Aspects 9 to 14, wherein the list of items is presented as part of a search results page, the search results page excluding other lists of items with the item option for a item based on the set of optional options.

[0095] Aspect 16: A system for providing item options, the system comprising: at least one processor; and one or more computer storage media storing computer-readable instructions, which, when executed by the at least one processor, cause the at least one processor to perform a method comprising: receiving a search query from a search engine; employing a trained machine learning model using the search query as input to determine item options within item option categories of an item, the trained machine learning model being trained on a training dataset including known user characteristics and user purchase history of a plurality of users, wherein the trained machine learning model determines the item options by identifying user groups having common user history and predicting the item options based on the common user history of the user groups; and causing the generation of a graphical user interface for presentation via the search engine, the graphical user interface including an item list for the item, the item list having a set of optional options for item option categories associated with the item options, the item options determined by employing the trained machine learning model being presented as preselections from the set of optional options.

[0096] Aspect 17: According to aspect 16, wherein the machine learning model is a neural network.

[0097] Aspect 18: According to any one of Aspects 16 to 17, wherein the project is associated with a plurality of project option categories, each project option category including project options, and wherein the method further includes determining a project option for each of the project option categories by employing the trained machine learning model.

[0098] Aspect 19: According to aspect 18, wherein a project option for each project option category in the project option categories is determined independently.

[0099] Aspect 20: According to any one of aspects 18 to 19, wherein a project option for each project option category in the project option categories is determined based on the characteristics of a single project model of the project.

Claims

1. A computerized method performed by one or more processors for providing item options, the method comprising: receiving a search query at a search engine, the search query received from a user computing device; identifying an item corresponding to the search query, the item associated with a list of items within an item database, wherein the list of items includes different item options; determining an item option from a plurality of item options available within an item option category of the item, the item option determined based on a group of users having a common user history, the group of users clustered by a machine learning model on similar users in a vector space; providing the list of items from the item database to the user computing device as search results for the search query, the list of items including the item with the item option; presenting the plurality of item options at the search engine as a set of selectable options for the item option category, the item option presented as a preselection from the set of selectable options; wherein the list of items is provided as part of a search results page, wherein the search results page excludes other lists of items of the item with the item option.

2. The method of claim 1, further comprising: training a neural network using known user features and user purchase histories of a plurality of users, wherein the item option is determined by employing the trained neural network to identify the group of users having the common user history and predict the item option based on the common user history of the group of users.

3. The method of claim 1, wherein, determining the item option includes performing Thompson sampling to select the item option from item options identified for the group of users.

4. The method of claim 1, wherein, the item is associated with a plurality of item option categories, each item option category including a plurality of item options, and wherein the method further comprises determining one item option for each item option category.

5. The method of claim 4, wherein, determining the one item option for each item option category includes employing the trained neural network to determine a probability value for each item option, the probability value indicating a strength of a correlation between each item option and the common user history of the group of users, the one item option having a greatest probability value within each item option category.

6. The method of claim 4, wherein, the one item option for each item option category is determined independently.

7. One or more computer storage media storing computer-readable instructions that, when executed by a processor, cause the processor to perform operations for providing item options, the operations comprising: training a machine learning model using a training data set including known user features and user purchase histories of a plurality of users; determining an item option within an item option category for an item using a trained machine learning model that uses a search query as input, the trained machine learning model configured to determine the item option for a user associated with the search query by identifying a group of users having a common user history and predicting the item option based on the common user history of the group of users, the group of users being clustered by a machine learning model of similar users in a vector space; and causing generation of a graphical user interface including an item list for the item having a set of selectable options for an item option category associated with the item option, the item option determined by using the trained machine learning model being presented as a preselection from the set of selectable options, wherein the item list is presented as part of a search results page, wherein the search results page excludes other item lists for the item having the item option.

8. The medium of claim 7, wherein, The machine learning model is a multilayer perceptron.

9. The medium of claim 7, further comprising: performing Thompson sampling on a plurality of item options for the item option category, wherein the item option is further determined based on the Thompson sampling.

10. The medium of claim 7, wherein, The item is associated with a plurality of item option categories, each item option category including a plurality of item options, and wherein the operations further comprise determining one item option for each of the item option categories by using the trained machine learning model.

11. The medium of claim 10, wherein, The one item option for each of the item option categories is determined independently.

12. The medium of claim 10, wherein, The one item option for each of the item option categories is determined based on features of a single item model for the item.

13. A system for providing item options, the system comprising: at least one processor; and one or more computer storage media storing computer-readable instructions that, when executed by the at least one processor, cause the at least one processor to perform a method comprising: receiving a search query from a search engine; determining an item option within an item option category for an item using a trained machine learning model that uses the search query as input, the trained machine learning model trained on a training data set comprising known user features and user purchase history for a plurality of users, wherein the trained machine learning model determines the item option by identifying a group of users having a common user history and predicting the item option based on the common user history of the group of users, the group of users being clustered by a machine learning model of similar users in a vector space; and causing generation of a graphical user interface for presentation by the search engine, the graphical user interface including a project list for the project, the project list having a set of selectable options for a project option category associated with the project option, the project option determined by employing the trained machine learning model being presented as a preselection from the set of selectable options, wherein the project list is presented as part of a search results page, wherein the search results page excludes other project lists for the project having the project option.

14. The system of claim 13, wherein, The machine learning model is a neural network.

15. The system of claim 13, wherein, The project is associated with a plurality of project option categories, each project option category including a plurality of project options, and wherein the method further comprises determining, by employing the trained machine learning model, one project option for each of the project option categories.

16. The system of claim 15, wherein, The one project option for each of the project option categories is determined independently.

17. The system of claim 15, wherein, The one project option for each of the project option categories is determined based on features of a single project model for the project. The one project option for each of the project option categories is determined based on features of a single project model for the project.

Citation Information

Patent Citations

  • Predictive selection of product variations

    CN112396488A