IP Library Granted Patent US 11,093,954
Granted Patent B2
US 11,093,954 · App. 14/638,637 · Granted Aug 17, 2021

System and method for predicting the sales behavior of a new item

Inventors: Shubhankar Ray (Union City, CA); Abhay Jha (Burlingame, CA)
Assignee: WALMART APOLLO, LLC
G06Q30/0202G06Q10/06315G06Q10/087
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,093,954
App. No.
14/638,637
Granted
Aug 17, 2021
Kind
B2
Abstract

A system and method for forecasting the sales of a new item, i.e., one with no historical sales data, is presented. Two matrices are presented, a feature matrix and a sales matrix. The matrices are divided into training matrices and prediction matrices. The training matrices are decomposed, then regression analysis is performed to determine the weight of various columns of the training feature matrix. Thereafter, the weights could be used on the training prediction matrix to predict sales. The sales predictions can be used to order SKUs for a retailer or distributor. Other embodiments are also disclosed herein.

Claims (124)

1. A method implemented via execution of computing instructions configured to run at one or more processors and configured to be stored at non-transitory computer-readable media, the method comprising:

receiving, via execution of the computing instructions, a feature matrix including feature information for a plurality of stock keeping units (SKUs), each row of the feature matrix containing information about a respective one of the plurality of SKUs and the feature information comprising a respective description of a respective product represented by the respective one of the plurality of SKUs;

storing, via execution of the computing instructions, the feature matrix in the non-transitory computer-readable media;

receiving, via execution of the computing instructions, a sales matrix including sales information for the plurality of SKUs, each row of the sales matrix containing respective sale information about the respective one of the plurality of SKUs;

storing, via execution of the computing instructions, the sales matrix in the non-transitory computer-readable media;

creating, via execution of the computing instructions, a training matrix of the sales matrix;

dividing, via execution of the computing instructions, the feature matrix, as stored in the non-transitory computer-readable media, into a training subset of the feature matrix and a predictive subset of the feature matrix, based on the sales matrix;

decomposing the training subset of the feature matrix, via execution of the computing instructions, into a scores matrix, wherein decomposing the training subset of the feature matrix comprises using a set of equations comprising:

t m =max v Corr 2 ( y,Xv )Var( Xv ), where:

∥ v∥= 1,Cov( t m t i )=0;

1≤ i≤=m− 1;

y comprises the training subset of the feature matrix;

X comprises the training matrix of the sales matrix; and

t i comprises a maximum variance;

performing, via execution of the computing instructions, a partial least squares regression on the scores matrix to find at least one respective weight for at least one respective feature in the feature information in the scores matrix of the training subset of the feature matrix, wherein:

the at least one respective weight represents a relative importance of the at least one respective feature; and

the partial least squares regression operates as a function of (1) the training subset of the feature matrix, (2) the training matrix of the sales matrix, and (3) the maximum variance;

choosing, via execution of the computing instructions, one or more weights of the at least one respective weight for the at least one respective feature, the one or more weights created using:

a respective feature of the at least one respective feature having a maximized correlation with entries in the sales matrix;

storing, via execution of the computing instructions, the one or more weights of the at least one respective weight in the non-transitory computer-readable media;

using, via execution of the computing instructions, the one or more weights of the at least one respective weight of the training subset of the feature matrix, as stored in the non-transitory computer-readable media, to create sales predictions for groups of similar SKUs of the plurality of SKUs that are located in the predictive subset of the feature matrix; and

automatically ordering, via execution of the computing instructions, inventory based on the sales predictions of the plurality of SKUs that are located in the predictive subset of the feature matrix.

2. The method of claim 1 wherein:

creating the training matrix of the sales matrix comprises:

for each row in the sales matrix, marking a row of the sales matrix when there are greater than a threshold number of non-zero sales data for the row of the sales matrix; and

creating the training matrix from all marked rows of the sales matrix; and

dividing the feature matrix, as stored in the non-transitory computer-readable media, into the training subset of the feature matrix and the predictive subset of the feature matrix, based on the sales matrix, comprises:

creating the training subset of the feature matrix by:

matching at least one SKU of the training matrix with a row in the feature matrix; and

placing the at least one SKU, as matched, in the training subset of the feature matrix; and

creating the predictive subset of the feature matrix by placing each SKU in the feature matrix that is not in the training subset of the feature matrix into the predictive subset of the feature matrix.

3. The method of claim 1 wherein:

decomposing the training subset of the feature matrix into the scores matrix comprises:

decomposing the training subset of the feature matrix into the scores matrix and a loading matrix;

the scores matrix is configured to have a maximized variance; and

the scores matrix comprises the at least one respective weight for the at least one respective feature in the feature information in the training subset of the feature matrix.

4. The method of claim 1 wherein:

the scores matrix is configured to have a maximized correlation with the sales matrix.

5. The method of claim 1 wherein:

using the one or more weights of the at least one respective weight of the training subset of the feature matrix, as stored in the non-transitory computer-readable media, to create the sales predictions for the groups of the similar SKUs of the plurality of SKUs that are located in the predictive subset of the feature matrix comprises:

using the one or more weights of the at least one respective weight of the training subset of the feature matrix, as stored in the non-transitory computer-readable media, to determine the one or more weights of the at least one respective weight for the predictive subset of the feature matrix;

using the one or more weights of the at least one respective weight for the predictive subset of the feature matrix, as stored in the non-transitory computer-readable media, to find the similar SKUs in the training subset of the feature matrix; and

using sales data from the sales matrix for the similar SKUs to predict sales of the similar SKUs.

6. The method of claim 1 wherein:

receiving the feature matrix comprises:

receiving data regarding the plurality of SKUs;

placing a respective unique identifier for each SKU of the feature matrix in the rows of the feature matrix; and

placing semantic information corresponding to each SKU of the feature matrix in columns of the feature matrix; and

receiving the sales matrix comprises:

receiving data regarding the plurality of SKUs;

placing a respective unique identifier for each SKU of the sales matrix in the rows of the sales matrix; and

placing sales information corresponding to each SKU of the sales matrix in columns of the sales matrix.

7. The method of claim 6 wherein:

each row in the feature matrix has a corresponding row in the sales matrix.

8. A system comprising:

a user input device;

a display device;

one or more processors; and

non-transitory computer readable media storing computing, instructions configured to run on the one or more processors and perform:

receiving, via execution of the computing instructions, a feature matrix including feature information for a plurality of stock keeping units (SKUs), each row of the feature matrix containing information about a respective one of the plurality of SKUs and the feature information comprising a respective description of a respective product represented by the respective one of the plurality of SKUs;

storing, via execution of the computing instructions, the feature matrix in the non-transitory computer-readable media;

receiving, via execution of the computing instructions, a sales matrix including sales information for the plurality of SKUs, each row of the sales matrix containing respective sale information about the respective one of the plurality of SKUs;

storing, via execution of the computing instructions, the sales matrix in the non-transitory computer-readable media;

creating, via execution of the computing instructions, a training matrix of the sales matrix;

dividing, via execution of the computing instructions, the feature matrix, as stored in the non-transitory computer-readable media, into a training subset of the feature matrix and a predictive subset of the feature matrix, based on the sales matrix;

decomposing the training subset of the feature matrix, via execution of the computing instructions, into a scores matrix, wherein decomposing the training subset of the feature matrix comprises using a set of equations comprising:

t m =max v Corr 2 ( y,Xv )Var( Xv ), where:

∥ v∥= 1,Cov( t m t i )=0;

1≤ i≤=m− 1;

y comprises the training subset of the feature matrix;

X comprises the training matrix of the sales matrix; and

t i comprises a maximum variance;

performing, via execution of the computing instructions, a partial least squares regression on the scores matrix to find at least one respective weight for at least one respective feature in the feature information in the scores matrix of the training subset of the feature matrix, wherein:

the at least one respective weight represents a relative importance of the at least one respective feature; and

the partial least squares regression operates as a function of (1) the training subset of the feature matrix, (2) the training matrix of the sales matrix, and (3) the maximum variance;

choosing, via execution of the computing instructions, one or more weights of the at least one respective weight for the at least one respective feature, the one or more weights created using:

a respective feature of the at least one respective feature having a maximized correlation with entries in the sales matrix;

storing, via execution of the computing instructions, the one or more weights of the at least one respective weight in the non-transitory computer-readable media;

using, via execution of the computing instructions, the one or more weights of the at least one respective weight of the training subset of the feature matrix, as stored in the non-transitory computer-readable media, to create sales predictions for groups of similar SKUs of the plurality of SKUs that are located in the predictive subset of the feature matrix; and

automatically ordering, via execution of the computing instructions, inventory based on the sales predictions of the plurality of SKUs that are located in the predictive subset of the feature matrix.

9. The system of claim 8 wherein:

creating the training matrix of the sales matrix comprises:

for each row in the sales matrix, marking a row of the sales matrix when there are greater than a threshold number of non-zero sales data for the row of the sales matrix; and

creating the training matrix from all marked rows of the sales matrix; and

dividing the feature matrix, as stored in the non-transitory computer readable media, into the training subset of the feature matrix and the predictive subset of the feature matrix, based on the sales matrix, comprises:

creating the training subset of the feature matrix by:

matching at least one SKU of the training matrix with a row in the feature matrix; and

placing the at least one SKU, as matched, in the training subset of the feature matrix; and

creating the predictive subset of the feature matrix by placing each SKU in the feature matrix that is not in the training subset of the feature matrix into the predictive subset of the feature matrix.

10. The system of claim 8 wherein:

decomposing the training subset of the feature matrix into the scores matrix comprises:

decomposing the training subset of the feature matrix into the scores matrix and a loading matrix;

the scores matrix is configured to have a maximized variance; and

the scores matrix comprises the at least one respective weight for the at least one respective feature in the feature information in the training subset of the feature matrix.

11. The system of claim 8 wherein:

the scores matrix is configured to have a maximized correlation with the sales matrix.

12. The system of claim 8 wherein:

using the one or more weights of the at least one respective weight of the training subset of the feature matrix, as stored in the non-transitory computer-readable media, to create the sales predictions for the groups of the similar SKUs of the plurality of SKUs that are located in the predictive subset of the feature matrix comprises:

using the one or more weights of the at least one respective weight of the training subset of the feature matrix, as stored in the non-transitory computer-readable media, to determine the one or more weights of the at least one respective weight for the predictive subset of the feature matrix;

using the one or more weights of the at least one respective weight for the predictive subset of the feature matrix, as stored in the non-transitory computer-readable media, to find the similar SKUs in the training subset of the feature matrix; and

using sales data from the sales matrix for the similar SKUs to predict sales of the similar SKUs.

13. The system of claim 8 wherein:

receiving the feature matrix comprises:

receiving data regarding the plurality of SKUs;

placing a respective unique identifier for each SKU of the feature matrix in the rows of the feature matrix; and

placing semantic information corresponding to each SKU of the feature matrix in columns of the feature matrix; and

receiving the sales matrix comprises:

receiving data regarding the plurality of SKUs;

placing a respective unique identifier for each SKU of the sales matrix in the rows of the sales matrix; and

placing sales information corresponding to each SKU of the sales matrix in columns of the sales matrix.

14. The system of claim 13 wherein:

each row in the feature matrix has a corresponding row in the sales matrix.

15. The method of claim 2 , wherein:

the training subset of the feature matrix comprises the feature information for at least one SKU of the plurality of SKUs having greater than the threshold number of non-zero sales data; and

the predictive subset of the feature matrix comprises the feature information for at least one SKU of the plurality of SKUs having less than the threshold number of non-zero sales data.

16. The system of claim 9 , wherein:

the training subset of the feature matrix comprises the feature information for at least one SKU of the plurality of SKUs having greater than the threshold number of non-zero sales data; and

the predictive subset of the feature matrix comprises the feature information for at least one SKU of the plurality of SKUs having less than the threshold number of non-zero sales data.

17. The method of claim 1 , wherein the groups of the similar SKUs of the plurality of SKUs located in the predictive subset of the feature matrix comprise SKUs having no previous sales information.

18. The method of claim 1 , wherein the sales predictions are created for gaps in the respective sale information for the groups of the similar SKUs of the plurality of SKUs located in the predictive subset of the feature matrix.

19. The system of claim 8 , wherein the groups of the similar SKUs of the plurality of SKUs located in the predictive subset of the feature matrix comprise SKUs having no previous sales information.

20. The system of claim 8 , wherein the sales predictions are created for gaps in the respective sale information for the groups of the similar SKUs of the plurality of SKUs located in the predictive subset of the feature matrix.

21. The method of claim 1 , wherein the respective sale information about the respective one of the plurality of SKUs comprises a ranked vector.

22. The system of claim 8 , wherein the respective sale information about the respective one of the plurality of SKUs comprises a ranked vector.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2018
From: WAL-MART STORES, INC.
To: WALMART APOLLO, LLC
Reel/Frame 045817/0115 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2015
From: RAY, SHUBHANKAR; JHA, ABHAY
To: WAL-MART STORES, INC.
Reel/Frame 035493/0525 →