IP Library › Granted Patent US 12,131,367
Granted Patent B2
US 12,131,367 · App. 18/195,644 · Granted Oct 29, 2024

Intelligent product matching based on a natural language query

Inventors: John J. Engel (Pittsburgh, PA); Shashi Bhushan Dande (Spring, TX); Kishor Saitwal (Sugar Land, TX); Raja Vikram Raj Pandya (Katy, TX); Avinash Wesley (New Caney, TX); Kris Lindsay (Mount Crawford, VA); Benjamin James Albu (Pittsburgh, PA); Akash Khurana (Houston, TX); Ashok Ramesh Bajaj (Katy, TX); Merwan Mereby (Baton Rouge, LA)
Assignee: WESCO Distribution, Inc.
G06Q30/0631G06Q10/087G06Q30/0234
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,131,367
App. No.
18/195,644
Granted
Oct 29, 2024
Kind
B2
Abstract

A computer method for identifying product in a distributor's inventory system that fulfills a product request made via a natural language query. the natural language query is received as a product request including multiple words in sequential order. The words are vectorized into word-vectors that are concatenated and used to generate a query embedding. The query embedding is processed utilizing a trained product category classifier that predicts which product category the requested product belongs. Forward and backward sequence vectors are generated from the sequentially ordered words of the query that are concatenated and processed using a trained model specific to the predicted product category. The sequence vectors represent positional relationships between the words of the natural language query. Thereafter, the system identifies product attribute(s) embodied in the natural language query that each correspond to a predetermined key-characteristic of the category.

Claims (45)

1. A computer-implemented method for identifying product in a distributor inventory system that fulfills a product request made via a natural language query, said method comprising:

receiving a natural language query as a product request, said natural language query comprising a plurality of words in a sequential order;

vectorizing each of the words and thereby generating a plurality of corresponding word-vectors through a word embedding model that is trained on product-specific vocabulary;

aggregating the plurality of word-vectors to form a query embedding by concatenating the plurality of word-vectors;

processing the query embedding utilizing a trained product category classifier ML model and thereby predicting in which of a plurality of predefined product categories the requested product belongs;

generating, based on the plurality of sequential order words of the natural language query, a forward sequence vector and a backward sequence vector;

selecting a trained ML model specific to the predicted product category from a plurality of product category-specific trained models that are trained for different product categories; and

concatenating the forward and backward sequence vectors and processing that concatenation using the trained ML model specific to the predicted product category and thereby identifying one or more product attributes embodied in the natural language query that each correspond to a predetermined key-characteristic of the category;

generating an output comprising an indication of the one or more product attributes and an indication of the predicted product category and providing the output to a search engine.

2. The computer-implemented method of claim 1 , further comprising assigning at least one of the identified key-characteristics of the predicted product category a value derived from the natural language query.

3. The computer-implemented method of claim 1 , wherein the domain of the distributor inventory system is electrical hardware products.

4. The computer-implemented method of claim 3 , further comprising predicting that the requested product belongs to a product category for lighting based on processing the query embedding using the category classifier ML model.

5. The computer-implemented method of claim 4 , further comprising identifying a product attribute of the requested product to be wattage; and

wherein, wattage, as a key-characteristic is associated with the lighting product category.

6. The computer-implemented method of claim 5 , further comprising identifying a value of the product attribute, wattage, to be 15 W based on processing the concatenation of the forward and backward sequence vectors.

7. The computer-implemented method of claim 4 , further comprising identifying a product attribute of the requested product to be voltage; and

wherein, voltage, as a key-characteristic is associated with the lighting product category.

8. The computer-implemented method of claim 7 , further comprising identifying a value of the product attribute, voltage, to be 120 V based on processing the concatenation of the forward and backward sequence vectors.

9. The computer-implemented method of claim 2 , further comprising identifying a product match to the requested product from among a plurality of products allocated to the identified product category in dependence upon the identified value of the key-characteristic embodied in the natural language query.

10. The computer-implemented method of claim 1 , wherein the trained model that generates the query embedding from the vectorized words of the natural language query comprises a Continuous-Bag-Of-Words algorithm trained on a plurality of words derived from product descriptions.

11. The computer-implemented method of claim 1 , wherein the trained model that generates the query embedding from the vectorized words of the natural language query comprises a Continuous-Bag-Of-Words algorithm trained on over 100,000 unique words derived from distributor product catalog data.

12. The computer-implemented method of claim 1 , wherein the trained product category classifier model processes the query embedding utilizing a 3-layer feed-forward Multi-Layer Perceptron (MLP) architecture to predict product category.

13. The computer-implemented method of claim 1 , further comprising processing the plurality of word-vectors that generate the query embedding using a query embedder that utilizes a machine-learning model.

14. The computer-implemented method of claim 13 , wherein the query embedder comprises an aggregator, and wherein the aggregator is configured to concatenate vectors representing each of the two or more words to generate the query embedding.

15. The computer-implemented method of claim 1 , wherein the sequence vectors represent positional relationships between the words of the natural language query.

16. An apparatus for identifying a product, comprising:

at least one memory; and

at least one processor coupled to the at least one memory, the at least one processor configured to:

receive a natural language query as a product request, said natural language query comprising a plurality of words in a sequential order;

vectorize each of the words and thereby generating a plurality of corresponding word-vectors through a word embedding model that is trained on product-specific vocabulary;

aggregate the plurality of word-vectors to form a query embedding by concatenateing the plurality of word-vectors;

process the query embedding utilizing a trained product category classifier ML model and thereby predicting in which of a plurality of predefined product categories the requested product belongs;

generate, based on the plurality of sequential order words of the natural language query, a forward sequence vector and a backward sequence vector;

select a trained ML model specific to the predicted product category from a plurality of product category-specific trained models that are trained for different product categories;

concatenate the forward and backward sequence vectors and processing that concatenation using the trained ML model specific to the predicted product category and thereby identifying one or more product attributes embodied in the natural language query that each correspond to a predetermined key-characteristic of the category; and

generate an output comprising an indication of the one or more product attributes and an indication of the predicted product category and providing the output to a search engine.

17. A non-transitory computer-readable storage medium comprising at least one instruction for causing a computer or processor to:

receive a natural language query as a product request, said natural language query comprising a plurality of words in a sequential order;

vectorize each of the words and thereby generating a plurality of corresponding word-vectors through a word embedding model that is trained on product-specific vocabulary;

aggregate the plurality of word-vectors to form a query embedding by concatenateing the plurality of word-vectors;

process the query embedding utilizing a trained product category classifier ML model and thereby predicting in which of a plurality of predefined product categories the requested product belongs;

generate, based on the plurality of sequential order words of the natural language query, a forward sequence vector and a backward sequence vector;

select a trained ML model specific to the predicted product category from a plurality of product category-specific trained models that are trained for different product categories;

concatenate the forward and backward sequence vectors and processing that concatenation using the trained ML model specific to the predicted product category and thereby identifying one or more product attributes embodied in the natural language query that each correspond to a predetermined key-characteristic of the category; and

generate an output comprising an indication of the one or more product attributes and an indication of the predicted product category and providing the output to a search engine.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2024
From: ENGEL, JOHN J.; DANDE, SHASHI BHUSHAN; SAITWAL, KISHOR; PANDYA, RAJA VIKRAM RAJ; WESLEY, AVINASH; LINDSAY, KRIS; ALBU, BENJAMIN JAMES; KHURANA, AKASH; BAJAJ, ASHOK RAMESH; MEREBY, MERWAN
To: WESCO DISTRIBUTION, INC.
Reel/Frame 067173/0682 →
Continuity (6)
Continuation 17968524 · Oct 18, 2022
Continuation 17968006 · Oct 18, 2022
Continuation 17968564 · Oct 18, 2022
Continuation 17968039 · Oct 18, 2022
Continuation 17968492 · Oct 18, 2022
Related Publication 20240127312A1 · Apr 18, 2024