IP Library Granted Patent US 11,138,248
Granted Patent B2
US 11,138,248 · App. 15/802,666 · Granted Oct 5, 2021

Understanding user product queries in real time without using any rules

Inventors: Amith Parameshwara (Bangalore, IN); Ravi Shukla (Bangalore, IN); Karthick D (Bangalore, IN)
Assignee: Dell Products L.P.
G06F16/3347G06F16/3344G06F16/90332G06F16/9535G06Q30/0623G06N3/02
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 11,138,248
App. No.
15/802,666
Granted
Oct 5, 2021
Kind
B2
Abstract

A system, method, and computer-readable medium for performing a product query operation, comprising: receiving user input from a user; identifying keywords contained within the user input; comparing keywords to vector representations of words and also to a document vector representation of product specifications in a backend product repository, each vector representation of a word being associated with a particular query type; identifying component details based upon the comparing; and, providing a list of products corresponding to the component details to the user in real time.

Claims (98)

1. A computer-implementable method for performing a product query operation, comprising:

receiving user input from a user, the user input comprising chat customer interaction data, the chat interaction data being received via a chat agent;

identifying keywords contained within the user input;

comparing keywords to vector representations of words and document vector representation of product specifications from a backend product repository, each vector representation of a word being associated with a particular query type, the backend product repository comprising a plurality of entries, each of the plurality of entries comprising information regarding a specific information handling system product, the specific information handling system having a specific set of components;

identifying component details based upon the comparing;

providing a list of products corresponding to the component details to the user, the list of products comprising a list of information handling system products, each of the information handling system products having an associated set of components;

performing a document vectorization operation on columns of the backend product repository, the document vectorization operation generating the document vector representation of product specifications;

performing a scoring operation on identified component details, the scoring operation using a combination of a simple keyword match score and a semantic score, the semantic score being based upon the document vectorization operation;

ranking the list of products based upon the scoring operation;

performing a natural language analysis of the user input; and,

determining whether the user input comprises a valid user query; and wherein

the scoring operation determines suitability of a product to the valid user query; and,

the ranking sorts the list of products by suitability of a product to the valid user query;

and wherein the scoring operation and ranking are performed as follows:

A={set of product components mentioned in user query}

P={P 1 , P 2 , P 3 . . . P m } where P m is product/sku in the backend product repository (with total m products)

each P containing multiple components={C 1 , C 2 , C 3 . . . , C n } with total n components

for i=1 to m

begin for i=1 to n begin component match score+=count of words that are present in both A i and P i semantic score+=cosine similarity word2vec (A i ,P i ) (for non-matching words) end total score i =component match score+semantic score

end

sort(total score, descending).

2. The method of claim 1 , wherein:

the columns of the backend product repository include a column regarding a base system identification, a column providing details of a processor corresponding to the base system, a column providing details of an operating system corresponding to the base system, a column providing details of random access memory associated with the base system and a column providing details of storage capacity associated with the base system; and,

the document vector representation of product specifications is based upon content of all of the columns of the backend product repository.

3. The method of claim 1 , further comprising:

generating clusters of keywords within the vector representations of words; and

wherein

the identifying identifies a cluster of keywords from the clusters of keywords, the cluster of keywords corresponding to the particular query type.

4. The method of claim 3 , wherein:

the clusters of keywords are generated using a neural network model, the neural network model comprising a word2vec model.

5. A system comprising:

a processor;

a data bus coupled to the processor; and

a non-transitory, computer-readable storage medium embodying computer program code, the non-transitory, computer-readable storage medium being coupled to the data bus, the computer program code interacting with a plurality of computer operations and comprising instructions executable by the processor and configured for:

receiving user input from a user, the user input comprising chat customer interaction data, the chat interaction data being received via a chat agent;

identifying keywords contained within the user input;

comparing keywords to vector representations of words and document vector representation of product specifications from a backend product repository, each vector representation of a word being associated with a particular query type, the backend product repository comprising a plurality of entries, each of the plurality of entries comprising information regarding a specific information handling system product, the specific information handling system having a specific set of components;

identifying component details based upon the comparing;

providing a list of products corresponding to the component details to the user, the list of products comprising a list of information handling system products, each of the information handling system products having an associated set of components;

performing a document vectorization operation on columns of the backend product repository, the document vectorization operation generating the document vector representation of product specifications

performing a scoring operation on identified component details, the scoring operation using a combination of a simple keyword match score and a semantic score, the semantic score being based upon the document vectorization operation;

ranking the list of products based upon the scoring operation;

performing a natural language analysis of the user input; and,

determining whether the user input comprises a valid user query; and wherein

the scoring operation determines suitability of a product to the valid user query; and

the ranking sorts the list of products by suitability of a product to the valid user query; and wherein

the scoring operation and ranking are performed as follows:

A={set of product components mentioned in user query}

P={P 1 , P 2 , P 3 . . . P m } where P m is product/sku in the backend product repository (with total m products)

each P containing multiple components={C 1 , C 2 , C 3 . . . , C n } with total n components

for i=1 to m

begin for i=1 to n begin component match score+=count of words that are present in both A i and P i semantic score+=cosine similarity word2vec (A i ,P i ) (for non-matching words) end total score, =component match score+semantic score

end

sort(total score, descending).

6. The system of claim 5 , wherein:

the columns of the backend product repository include a column regarding a base system identification, a column providing details of a processor corresponding to the base system, a column providing details of an operating system corresponding to the base system a column providing details of random access memory associated with the base system and a column providing details of storage capacity associated with the base system; and,

the document vector representation of product specifications is based upon content of all of the columns of the backend product repository.

7. The system of claim 5 , wherein the instructions executable by the processor are further configured for:

generating clusters of keywords within the vector representations of words; and

wherein

the identifying identifies a cluster of keywords from the clusters of keywords, the cluster of keywords corresponding to the particular query type.

8. The system of claim 7 , wherein:

the clusters of keywords are generated using a neural network model, the neural network model comprising a word2vec model.

9. A non-transitory, computer-readable storage medium embodying computer program code, the computer program code comprising computer executable instructions configured for:

receiving user input from a user, the user input comprising chat customer interaction data, the chat interaction data being received via a chat agent;

identifying keywords contained within the user input;

comparing keywords to vector representations of words and document vector representation of product specifications from a backend product repository, each vector representation of a word being associated with a particular query type, the backend product repository comprising a plurality of entries, each of the plurality of entries comprising information regarding a specific information handling system product, the specific information handling system having a specific set of components;

identifying component details based upon the comparing;

providing a list of products corresponding to the component details to the user, the list of products comprising a list of information handling system products, each of the information handling system products having an associated set of components; and,

performing a document vectorization operation on columns of the backend product repository, the document vectorization operation generating the document vector representation of product specifications

performing a scoring operation on identified component details, the scoring operation using a combination of a simple keyword match score and a semantic score, the semantic score being based upon the document vectorization operation;

ranking the list of products based upon the scoring operation;

performing a natural language analysis of the user input; and,

determining whether the user input comprises a valid user query; and wherein

the scoring operation determines suitability of a product to the valid user query; and,

the ranking sorts the list of products by suitability of a product to the valid user query;

and wherein

the scoring operation and ranking are performed as follows:

A={set of product components mentioned in user query}

P={P 1 , P 2 , P 3 . . . P m } where P m is product/sku in the backend product repository (with total m products)

each P containing multiple components={C 1 , C 2 , C 3 . . . , C n } with total n components

for i=1 to m

begin for i=1 to n begin component match score+=count of words that are present in both A i and P i semantic score+=cosine similarity word2vec (A i ,P i ) (for non-matching words) end total score, =component match score+semantic score

end

sort(total score, descending).

10. The non-transitory, computer-readable storage medium of claim 9 , wherein:

the columns of the backend product repository include a column regarding a base system identification, a column providing details of a processor corresponding to the base system, a column providing details of an operating system corresponding to the base system a column providing details of random access memory associated with the base system and a column providing details of storage capacity associated with the base system; and,

the document vector representation of product specifications is based upon content of all of the columns of the backend product repository.

11. The non-transitory, computer-readable storage medium of claim 9 , wherein the computer executable instructions are further configured for:

generating clusters of keywords within the vector representations of words; and

wherein

the identifying identifies a cluster of keywords from the clusters of keywords, the cluster of keywords corresponding to the particular query type.

12. The non-transitory, computer-readable storage medium of claim 11 , wherein:

the clusters of keywords are generated using a neural network model, the neural network model comprising a word2vec model.

13. The non-transitory, computer-readable storage medium of claim 9 , wherein:

the computer executable instructions are deployable to a client system from a server system at a remote location.

14. The non-transitory, computer-readable storage medium of claim 9 , wherein:

the computer executable instructions are provided by a service provider to a user on an on-demand basis.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (044535/0109) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 060753/0414 →
RELEASE OF SECURITY INTEREST AT REEL 044535 FRAME 0001 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058298/0475 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Nov 29, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 044535/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Nov 29, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 044535/0109 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2017
From: PARAMESHWARA, AMITH; SHUKLA, RAVI; D, KARTHICK
To: DELL PRODUCTS L.P.
Reel/Frame 044026/0928 →
Continuity (1)
Related Publication 20190138616A1 · May 9, 2019
Cited By (1)
US 12,299,020