PREDICTIVE SYSTEMS AND PROCESSES FOR PRODUCT ATTRIBUTE RESEARCH AND DEVELOPMENT

The systems and methods described herein can include a data store and at least one computing device in communication with the data store. The at least one computing device is configured to receive historical data for a plurality of historical products in a plurality of markets, train a predictive model to forecast at least one product performance attribute based on the historical data, receive product data associated with a particular product, generate a prediction for the particular product of the at least one product performance attribute by applying the predictive model, and perform at least one action for the particular product based on the prediction of the at least one product performance attribute.

TECHNICAL FIELD

The present systems and processes relate generally to product performance prediction and optimization.

BACKGROUND

Being able to predict, analyze, and comprehend the myriad of factors that affect the sales performance of an item can have a drastic impact on a business. This is especially true for items that haven't been released yet or are recently released. Unfortunately, there are no current systems and methods that are capable of aggregating information regarding a particular item and generate a multitude of predictions associated with the sales performance of the particular item. Additionally, there are no known techniques for aggregating information on other items that have known sales histories and using this information to generate sales predictions and other predictions for a distinct item. Therefore, there exists an unresolved need for systems and methods that are capable of extracting information regarding various items, generating models associated with the various items to predict one or more factors, and applying the models to new unreleased or recently released items to determine predictions of the one or more factors specific to the unreleased or recently released items.

BRIEF SUMMARY OF THE DISCLOSURE

Briefly described, and according to one embodiment, aspects of the present disclosure generally relate to systems and processes for predicting the performance of various products and product attributes. In various embodiments, the present systems and processes generate performance analysis and predictions for guiding and optimizing product development. According to one embodiment, based on analyses of historical product and sales data, the present systems and processes generate sales and other performance predictions for product that are absent a sales history or for which there exists limited sales history (e.g., due to the product not having yet entered the market or only recently entering the market). In various embodiments, the present systems and processes can forecast the sales performance of a new, current, or planned product by evaluating the product's attributes and identifying how those attributes may influence product performance (e.g., based on intelligence regarding historical performance of other products that may or may not demonstrate the same attribute(s)).

In various embodiments, the present systems and processes can analyze historical product data, performance, and attributes and generate predictions for the performance of new products and/or product attributes. In at least one embodiment, the systems and processes utilize natural language processing, machine learning, and artificial intelligence, or combinations thereof, to analyze historical data for sales performance, market sentiment, and product attributes. In one or more embodiments, the systems and processes leverage the analyses to generate predictions for a) product sales volume (e.g., at a particular price level, via a particular channel, at a particular location, over a particular time interval, with particular product attributes, or combinations thereof), b) the impact of price and other attribute changes on sales volume, and c) generating recommendations for product development strategy to propel product performance.

In one or more embodiments, the present systems and processes identify psychographic data from customer reviews via one or more natural language processing (NLP) techniques and trained machine learning models. In various embodiments, the disclosed prediction system generates an aggregated psychographic database with selectable filters of consumer personas, interests, and lifestyles. According to one embodiment, the prediction system provides access to the psychographic database via a web application that graphically displays psychographic data over selected periods and within product categories. In at least one embodiment, the prediction system extracts psychographic information from product reviews. In one or more embodiments, the prediction system uses probabilistic classifiers, and/or other suitable techniques, to classify the psychographic information into one or more categories and generate one or more training datasets based on the classifications. In various embodiments, the prediction system generates, trains, and executes models for automatically identifying the most probable psychographic of a review based off of the language used in an analyzed review. In one or more embodiments, the prediction system generates predictions for identifying different types of consumer behavior based on analyses of psychographic information.

In at least one embodiment, the systems and process may manually or automatically calculate success drivers for improving brand health and reach (e.g., important brand topics, product attributes, econometric indicators, psychographic indicators, etc.). In various embodiments, the systems and processes predict sales data for products using unstructured data, such as search, customer reviews, and social media data. In one or more embodiments, the disclosed prediction system extracts potential success drivers and their sentiment from unstructured text data and determines an importance score for each brand, each product, or each product attribute. In at least one embodiment, the prediction system determines one or more most important success drivers, generates a graphical report including the most important success drivers, and displays the graphical report at a networking address accessible via a web application.

According to one embodiment, the disclosed systems and processes automatically identifying a product's characteristics from product-related media, such as a product description, product advertisement, or product-related writings (e.g., meeting notes, executive summaries, electronic communications, etc.). In at least one embodiment, the systems and processes predict sales data for new or planned products based on econometric data associated with the product or historical econometric data associated with similar products. In one or more embodiments, the systems and processes enable prediction of competition and/or consumer demand at product or product attribute levels.

DETAILED DESCRIPTION

Whether a term is capitalized is not considered definitive or limiting of the meaning of a term. As used in this document, a capitalized term shall have the same meaning as an uncapitalized term, unless the context of the usage specifically indicates that a more restrictive meaning for the capitalized term is intended. However, the capitalization or lack thereof within the remainder of this document is not intended to be necessarily limiting unless the context clearly indicates that such limitation is intended.

Overview

Aspects of the present disclosure generally relate to systems and methods for predicting the performance of various products and product attributes. In various embodiments, the present systems and processes generate performance analysis and predictions for guiding and optimizing product development. According to one embodiment, based on analyses of historical product and sales data, the present systems and processes generate sales and other performance predictions for products that are absent a sales history or for which there exists limited sales history (e.g., due to the product not having yet entered the market or only recently entering the market). In various embodiments, the present systems and processes can forecast the sales performance of a new, current, or planned product by evaluating the product's attributes and identifying how those attributes may influence product performance (e.g., based on intelligence regarding historical performance of other products that may or may not demonstrate the same attribute(s)).

In various embodiments, the present systems and processes can analyze historical product data, performance, and attributes and generate predictions for the performance of new products and/or product attributes. In at least one embodiment, the systems and processes utilize natural language processing, machine learning, and artificial intelligence, or combinations thereof, to analyze historical data for sales performance, market sentiment, and product attributes. In one or more embodiments, the systems and processes leverage the analyses to generate predictions for a) product sales volume (e.g., at a particular price level, via a particular channel, at a particular location, over a particular time interval, with particular product attributes, or combinations thereof), b) the impact of price and other attribute changes on sales volume, and c) generating recommendations for product development strategy to propel product performance.

In one or more embodiments, the present systems and processes identify psychographic data from customer reviews via one or more natural language processing (NLP) techniques and trained machine learning models. In various embodiments, the disclosed prediction system generates an aggregated psychographic database with selectable filters of consumer personas, interests, and lifestyles. According to one embodiment, the prediction system provides access to the psychographic database via a web application that graphically displays psychographic data over selected periods and within product categories. In at least one embodiment, the prediction system extracts psychographic information from product reviews. In one or more embodiments, the prediction system uses probabilistic classifiers, and/or other suitable techniques, to classify the psychographic information into one or more categories and generate one or more training datasets based on the classifications. In various embodiments, the prediction system generates, trains, and executes models for automatically identifying the most probable psychographic of a review based off of the language used in an analyzed review. In one or more embodiments, the prediction system generates predictions for identifying different types of consumer behavior based on analyses of psychographic information.

In at least one embodiment, the systems and process may manually or automatically calculate success drivers for improving brand health and reach (e.g., important brand topics, product attributes, econometric indicators, psychographic indicators, etc.). In various embodiments, the systems and processes predict sales data for products using unstructured data, such as search, customer reviews, and social media data. In one or more embodiments, the disclosed prediction system extracts potential success drivers and their sentiment from unstructured text data and determines an importance score for each brand, each product, or each product attribute. In at least one embodiment, the prediction system determines one or more most important success drivers, generates a graphical report including the most important success drivers, and displays the graphical report at a networking address accessible via a web application.

According to one embodiment, the disclosed systems and processes automatically identifying a product's characteristics from product-related media, such as a product description, product advertisement, or product-related writings (e.g., meeting notes, executive summaries, electronic communications, etc.). In at least one embodiment, the systems and processes predict sales data for new or planned products based on econometric data associated with the product or historical econometric data associated with similar products. In one or more embodiments, the systems and processes enable prediction of competition and/or consumer demand at product or product attribute levels.

Exemplary Embodiments

Referring now to the figures, for the purposes of example and explanation of the fundamental processes and components of the disclosed systems and processes, reference is made toFIG.1, which illustrates an example networked environment100. As will be understood and appreciated, the networked environment100shown inFIG.1represents merely one approach or embodiment of the present concept, and other aspects are used according to various embodiments of the present concept.

The networked environment100can include, but is not limited to, the prediction system101, one or more computing devices102, one or more report systems104, one or more commerce systems106, and one or more media systems108. The prediction system101can communicate with the computing device102, report system104, commerce system106, and media system108via one or more networks110. The network110includes, for example, the Internet, intranets, extranets, wide area networks (WANs), local area networks (LANs), wired networks, wireless networks, or other suitable networks, etc., or any combination of two or more such networks. For example, such networks can include satellite networks, cable networks, Ethernet networks, and other types of networks. In at least one embodiment, the prediction system101accesses one or more application programming interfaces (API) to facilitate communication and interaction between the prediction system101and the computing device102, report system104, commerce system106, and/or media system108.

The report system104can include any platform, website, database, system, or other computing environment that generates, stores, or is otherwise capable of providing product-related reports. Non-limiting examples of product-related reports include consumer reviews, professional reviews, product-rating charts and scorecards, and product rankings. Non-limiting examples of report systems104include product sale websites, retail websites, and consumer review databases.

The commerce system106can include any platform, website, database, system, or other computing environment that generates, stores, or is otherwise capable of providing product-related sales data. Non-limiting examples of product-related sales data include sale volumes, sale revenue, cost of sale, product profitability, product purchase transactions, product refunds, product exchanges, and financial data related to providing particular product attributes or engaging particular econometric or psychographic indicators. Non-limiting examples of commerce systems106include merchant sale systems, banking systems, personal finance tracking systems, financial report platforms, and point of sale (PoS) databases.

The media system108can include any platform, website, database, system, or other computing environment that generates, stores, or is otherwise capable of providing product-related media data. Non-limiting examples of media data include social media posts, influencer and product critic reports (e.g., in written, audio, video, or multimedia format), user interaction and sentiment data (e.g., cookie data, audience engagement and impact data, social media post ratings, likes, and dislikes, and viewership data, etc.). Non-limiting examples of media systems108include social media platforms, video hosting and sharing platforms, and written or digital publication platforms.

The prediction system101can include, but is not limited to, an intake service103, natural language processing (NLP) service105, model service107, report service109, and one or more data stores111. The elements of the prediction system101can be provided via a plurality of computing devices that may be arranged, for example, in one or more server banks or computer banks or other arrangements. Such computing devices can be located in a single installation or may be distributed among many different geographical locations. For example, the prediction system101can include a plurality of computing devices that together may include a hosted computing resource, a grid computing resource, and/or any other distributed computing arrangement. In some embodiments, the prediction system101can correspond to an elastic computing resource where the allotted capacity of processing, network, storage, or other computing-related resources may vary over time. In one or more embodiments, the prediction system101corresponds to a software application or in-browser program that may be accessed via a computing device.

The data store111stores various types of information that is used by the prediction system101to execute various processes and functions discussed herein. The data store111can be representative of a plurality of data stores as can be appreciated. The data store111can include, but is not limited to, product data113, historical data115, variables117, and models119.

Product data113can include any data or metadata related to a product. A product can include any good or service, such as, for example, clothes, electronics, pet care, personal banking, childcare, tools, games, furniture, and consumables. Product data113can include materials and files related to a product, such as, for example, product advertisements, product descriptions, product images, product videos, and product manuals. Product data113can include product attributes114, such as, for example, a product name, product categories and subcategories, and product launch plans (e.g., the planned time period of launching the product, inventory at launch, etc.). A product attribute114can include any characteristic that distinguishes a product. The product attribute114can include, for example, product categories, product subcategories, weight, size, flavor, color, claims of benefit, ingredients, licenses, brand, affiliates (e.g., affiliate products and services, personal endorsements or spokespersons, franchise affiliations, etc.), or place of origin. Additional examples of product attributes114include metrics shown in Table 1. According to one embodiment, the metrics of Table 1 are indexed on a 1 100 scale in which100indicates a “Very High” level or prevalence of the corresponding data element and 0 indicates a “Very Low” level or prevalence of the corresponding data element.

TABLE 1Exemplary Product Attribute MetricsProductAttribute MetricsDescriptionPassion ScoreCaptures the level of positive/negative sentiment behindconsumer reviews and conversations about an attribute. Theprediction system may utilize passion score to identify productattributes that are true purchase motivators (e.g., instead ofbeing solely a “nice to have” product attribute).Demand ScorePredicts consumer intent for an attribute based on the growthof consumer interest so the prediction system may identifytrends that are most relevant to particular consumer groups.Demand AverageThe average of the demand score prediction over a particularinterval (e.g., past 6 months, past year, past 3 weeks, or anysuitable interval). To the prediction system, the demandaverage may provide intelligence as to avoiding entering aproduct trend too early or too late.Demand GrowthThe growth of the demand score prediction over a particularinterval (e.g., past 6 months, past year, past 3 weeks, or anysuitable interval). To the prediction system, the demandgrowth may indicate if a product attribute trend or other fad isincreasing, stable, or decreasing.Competition AverageHow often an attribute appears in product descriptions, onaverage, over a particular interval (e.g., past 6 months, pastyear, past 3 weeks, or any suitable interval). To the predictionsystem, the competition average may indicate whether aproduct attribute is rare (e.g., true white space), common,semi-common, or oversaturated amongst one or morechannels or consumer groups.Competition GrowthThe growth rate of how often an attribute appears in productdescriptions over a particular interval (e.g., past 6 months,past year, past 3 weeks, or any suitable interval). To theprediction system, the competition growth may indicatewhether a product seller may be a first mover, rapid follower,or late bloomer for a particular product or product attribute.Total ScoreWeighted or unweighted blend of demand, competition, andpassion score metrics into one actionable score. To theprediction system, the total score may indicate how a productor product attribute is predicted to perform overall (e.g.,thereby allowing the prediction system to predict and reporthighest value product attributes and/or highest value productdevelopment and sale opportunities).

The product data113can include econometric indicators116, including, but not limited to, price point(s) of a product, product cost, product distribution levels, product volume (e.g., a desired volume, breakeven volume, minimum volume, etc.), product channel and/or location (e.g., virtual and physical sale locations), mean price, retail sell-through price, distribution of existing products employed at the intended product level, and macroeconomic indicators (e.g., unemployment rate, gross domestic product (GDP), and population growth associated with a particular entity or region). The product data113can be associated with a particular interval, such as a weekly, daily, hourly, quarterly, or annual basis.

The product data113can include psychographic indicators118received from one or more databases, from user inputs, or extracted from reviews and social media data using feature extraction and/or username analysis. The system can identify and extract psychographic indicators by performing natural language processing (NLP), feature extraction, and username analysis of social media data. In one example, the NLP service105analyses a username “PatentMan95” and predicts that the username is associated with a user born in 1995. The NLP service105can generate additional psychographic indicators of “Age, 26,” “Interest: Patents,” and “Gender: Male.” Non-limiting examples of psychographic indicators118include age range, parental status (e.g., parent, grandparent, step-parent, single parent, foster parent, adoptive parent, etc.), gender, sex, marital status, pet status (e.g., dog owner, cat owner, etc.), interests (e.g., athlete, gamer, hobbyist, crafter, foodie, do-it-your-self, etc.), social media activity level, and online reach or influence level.

Product data113and historical data115can include values for various macroeconomic indicators and search trends (e.g., values being sampled on a weekly, monthly, daily, or any suitable basis). The macroeconomic indicators and search trend values can be stored in association with additional product data113or historical data115, such as data points associated with a time period, channel, or location corresponding to the data value. The intake service103can expand the amount of data gathered around each product attribute114(e.g., or other element of product data113or historical data115) by capturing additional information, such as search data around the product attribute or the volume and sentiment of reviews and social media data related to the product attribute. The intake service103can further enrich a product attribute114by obtaining (e.g., via generation, retrieval, or receipt) and storing, in association with the product attribute114, one or more performance metrics, such as one or more metrics listed in Table 1. According to one embodiment, by generating associations between product attributes114and additional data, the intake service103generates a structured form of previously unstructured data.

In various embodiments, macroeconomic data includes one or more structured dataset (e.g., quantitative metrics over time). In various embodiments, macroeconomic data improves model performance for predicting changes in price elasticity based on unemployment rate, gross domestic product (GDP), GPD growth, population growth, and other macroeconomic factors. In various embodiments, macroeconomic data may demonstrate predictive power for forecasting the growth potential of product sales based on their price point. For example, unemployment growth often increases sales in certain areas like luxury lipsticks or non-premium toothpaste. In this example, macroeconomic data for unemployment may be used as an input to the present prediction processes and, thereby, capture and leverage the relationship of unemployment and product performance.

Historical data115can include any historical product data (e.g., historical product attributes, econometric indicators, and psychographic indicators), historical product sales data, and historical product performance data (e.g., derived from historical product sales data and/or other sources, such as historical reviews, historical accolades, etc.). Non-limiting examples of product performance data include unit and/or revenue sales. The unit and/or revenue sales can be organized by product, by product category and/or subcategory, by time period (e.g., daily, weekly, quarterly, or any suitable period), by channel (e.g., physical retailer, virtual retailer, shopping aggregation services, digital platform, social media account, etc.), by location (e.g., particular address, neighborhood, city, region, state, country, etc.), or combinations thereof. Product categories can include any classification of products, such as, for example, sporting goods, furniture, men's shoes, children's books, hair products, makeup, do-it-yourself projects, and camping gear. In various embodiments, the historical data115includes a time-series format such that the model service107may input the historical data115into model training processes, identify correlations between the historical data115and historical sales, and generate predictive forecasting variables117that may materially improve prediction accuracy.

The variables117include data and metadata in one or more formats suitable for analysis via the models119. The variables117include outputs of processing operations performed on product data113and/or historical data115. The variables117can include, for example, encoded and/or multi-dimensional representations of product categories, binary product features, product data features (e.g., from product launch dates and release periods), and encoded representations of additional data, such as macroeconomic indicators, search trend data, data extracted or generated from product comments and reviews, etc.). Non-limiting examples of data features include season or quarter number(s) (e.g., 1, 2 3, 4), month numbers (e.g., 1, 2, 3 . . . , 12), week numbers (e.g., 1, 2, 3 . . . , 52), number of weeks since product launch (e.g., 0, 1, 2, 3, etc.), holiday calendars, government or other entity-mandated lockdown calendars, and policy occurrences (e.g., inter-state conflicts, legislation passage, legislation expiration or removal, elections, economic regulations and sanctions, etc.).

The variables117can be arranged into one or more datasets (e.g., training datasets and validation datasets for which performance outcomes are known and experimental, or “live,” datasets for which performance outcomes are unknown). In some embodiments, the properties121of one or more models119include one or more variables117. For example, a training dataset stored in properties121includes variables117that were generated via processing historical data115according to the data preparation process300shown inFIG.3and described herein.

The model119can include machine learning models, artificial intelligence models, and other predictive models that can be trained to learn underlying patterns of product data113or historical data115. For example, the model service107can train the model119to recognize relationships historical product attributes and historical sales performance and volume. Non-limiting examples of models119include neural networks, linear regression, logistic regression, ordinary least squares regression, stepwise regression, multivariate adaptive regression splines, ridge regression, least-angle regression, locally estimated scatterplot smoothing, decision trees, random forest classification, support vector machines, Bayesian algorithms, hierarchical clustering, k-nearest neighbors, K-means, expectation maximization, association rule learning algorithms, learning vector quantization, self-organizing map, locally weighted learning, least absolute shrinkage and selection operator, elastic net, feature selection, computer vision, dimensionality reduction algorithms, and gradient boosting algorithms and modeling techniques (e.g., light gradient boosting modeling, XGBoost modeling, etc.). Neural networks can include, but are not limited to, uni- or multilayer perceptron, convolutional neural networks, recurrent neural networks, long short-term memory networks, auto-encoders, deep Boltzman machines, deep belief networks, back-propagations, stochastic gradient descents, Hopfield networks, and radial basis function networks. The model119can be representative of a plurality of models119of varying or similar composition or function. For example, the data store111includes a plurality of model iterations of varying composition, the plurality of model iterations for generating predictions125associated with a particular combination of historical product attributes, econometric indicators, and psychographic indicators (e.g., a permutation123, as described herein).

The models119can include, but are not limited to, properties121, permutations123, and predictions125. The properties121can include any parameter, hyperparameter, configuration, or setting of the model119. Non-limiting examples of properties121include coefficients or weights of linear and logistic regression models, weights and biases of neural network-type models, number of estimators, cluster centroids in clustering-type models, train-test split ratio, learning rate (e.g. gradient descent), maximum depth, number of leaves, column sample by tree, choice of optimization algorithm or other boosting technique (e.g., gradient descent, gradient boosting, stochastic gradient descent, Adam optimizer, etc.), choice of activation function in a neural network layer (e.g. Sigmoid, ReLU, Tanh, etc.), choice of cost or loss function, number of hidden layers in a neural network, number of activation units in each layer of a neural network, drop-out rate in a neural network (e.g., dropout probability), number of iterations (epochs) in training a neural network, number of clusters in a clustering task, Kernel or filter size in convolutional layers, pooling size, and batch size. The properties121can include training, validation, and testing datasets for training the models119. A training set can include, but is not limited to, historical product data and product performance data from historical data115. The properties121can include thresholds for evaluating model performance, such as, for example, accuracy thresholds, precision thresholds, deviation thresholds, and error thresholds. In one example, the properties121include a threshold accuracy score between 0-1.0.

The permutations123can include combinations of product data113or historical data115, or variables117derived therefrom. The permutations123can include logical operators for combining or controlling the analysis of permutation data elements via the model119. Non-limiting examples of logical operators include “AND,” “OR,” and “NOT.” In one example, product data113for a smart speaker product includes “channels: online site-only, physical retailer, drop-shipping, virtual retailer,” “colors: brown, gray, black,” “weights: 1.0 kg, 2.0 kg, 2.5 kg,” and “features: waterproof, rechargeable, plug-in only, smart assistant-supported.” In this example, example permutations123for predicting sales performance of the smart speaker product includes “permutation 1: channels ,(online site-only), color ,(gray), weight (1.0 kg), features (waterproof AND rechargeable),” “permutation 2: channels(virtual retailer AND physical retailer), color(black OR gray), features(smart-assistant compatible NOT waterproof), weight (2.5 kg),” and “permutation 3: channels (physical retailer OR drop-shipping OR virtual retailer), color (brown), features (plug-in only), weight (2.0 kg).” The permutations123can include any number of elements (e.g., 1, 5, 10, 1000, 1 million, etc.).

The predictions125can include outputs of the models119. Example predictions125include, but are not limited to, unit sale estimates, revenue sale estimates, sale estimates by channel, most predictive product data (e.g., attributes and indicators that are most positively or negatively predictive for positive or negative sales performance), relationships between historical product data and historical product performance, optimal product launch dates and release periods, optimal product prices, optimal product inventory volume, estimated consumer demand for product attributes, and estimated competition for products or product attributes.

The intake service103can receive data and requests related to functions of the prediction system101. For example, the intake service103receives requests to generate product predictions from one or more computing devices102. The intake service103can receive product data113and historical data115from the computing device102, report systems104, commerce systems106, and media systems108. For example, the intake service103receives a product description from a computing device102, the product description including a plurality of product attributes for a particular product. In another example, the intake service103receives historical product sales data from the commerce system106. In another example, the intake service103receives customer product reviews and product-related social media comments from a report system104and a media system108.

The intake service103can generate product data113and historical data115. The intake service103can perform data processing actions including, but not limited to, generating statistical metrics from data (e.g., standard deviation, quantiles, etc), imputing, replacing, and removing data values (e.g., outlier values, null values, missing values, etc.), filtering data values, generating data values (e.g., based on product data113or historical data115), encoding data from a first representation to a second representation, generating categorical features and data features, and other metadata, enriching product data (e.g., by associating product data with other product data and/or metadata, such as time, identification, and location information), generating multi-dimensional data representations, organizing data into one or more datasets (e.g., training datasets, testing datasets, validation datasets, experimental datasets, etc.), and segregating datasets into additional datasets.

The intake service103can generate categorical features and data features via one or more analysis techniques, operations, algorithms, or models described herein. The intake service103can generate categorical features according to a first technique referred to as “base category features” in which categorical features are derived from historical Point of Sale (PoS) data. The intake service103can analyze PoS data and identify product descriptions including product attributes114, such as, for example, flavor, ingredients, or product form. The intake service103can extrapolate key features from syndicated sales data, such as, for example, shelf price, % All Commodity Volume (“ACV”) Distribution, brand name, packaging type, mass, and volume. The intake service103(e.g., alone or in combination with the model service107) can generate categorical features according to a second technique that includes one or more models119, such as, for example, supervised feature extraction models. The intake service103can analyze a product description, product name, product-related social media post, product review, and/or other product-related media via one or more models119to identify or generate categorical features including, but not limited to, consumer needs, benefits, ingredients, flavors, textures, sustainability claims, dietary preferences, and forms. The intake service103can perform one or more clustering techniques (e.g., k nearest neighbor, mean-shift, Density-Based Spatial Clustering of Applications with Noise (DBSCAN), Expectation-Maximization Clustering using Gaussian Mixture Models (EMGMM), agglomerative hierarchical clustering, etc.) to cluster data elements associated with a particular product attribute114into a new product attribute114(e.g., also referred to as an “attribute feature” of the particular product attribute114).

The NLP service105can analyze historical data115including historical program, data, product data113, resource data, models119, various recommendations, and/or computing device inputs to support various processes and functions of the prediction system101. The NLP service105can generate product attributes114and psychographic indicators118by processing and analyzing other product data113, such as, for example, social media posts, product descriptions, product advertisements, customer reviews, news articles, product-related images and videos (e.g., advertisements, reaction and review videos, news programs, etc.) and other sources of natural language. In one or more embodiments, the NLP service105performs feature extraction on reviews, social media data, and other language sources by performing feature extraction and/or username analysis. Table 2 shows example extracted features and corresponding psychographic indicators that may be generated by the NLP service105.

TABLE 2Exemplary Extracted Features and Psychographic IndicatorsText SamplePsychographic Indicator“I got this for my kids when . . .”Parent“My husband loves to use this for . . .”Married“This is the cat's favorite thing . . .”Cat Owner“Perfect right before a workout . . .”Athlete

The NLP service105can generate product data113and historical data115based on analyses of electronic records, inputs, and/or metadata associated therewith, from the computing device102, report system104, commerce system106, or media system108. Non-limiting examples of electronic records include scans of financial transaction records, accounting and inventory records, delivery and distribution records, handwritten documents (e.g., meeting summaries, program notes, etc.), electronic communications (e.g., email conversations, text messages, audio communications, or transcriptions thereof, etc.), product records (e.g., statements of work, work logs, contracts, agreements, invoices, reports, estimates, requests for proposals, proposals, recommendations, policies, protocols, manuals, permits, program assumptions, selection sheets, checklists, advertisements, applications, etc.), and digital media (e.g., photographs or videos, presentation recordings, etc.).

To generate product data113, historical data115, or metadata associated therewith, the NLP service105can identify, extract, and classify language content via any suitable algorithm, technique, or combinations thereof. In some embodiments, the NLP service105communicates with the model service107to process data via one or more models119, such as, for example, machine learning or artificial intelligence models. Non-limiting examples of machine learning and/or artificial intelligence techniques include artificial neural networks, mutual information classification models, random forest or tree models, supervised or unsupervised topic-modeling models, Apriori algorithm-based models, and Markov decision models. In one example, the NLP service105receives a set of social media product reviews for processing. The NLP service105can analyze the product reviews via a trained neural network that extracts keywords therefrom and store the keywords as product attributes114. In the same example, the NLP service105generates historical data115by estimating and storing a level of positive or negative consumer sentiment for the products associated with the product reviews.

The NLP service105can perform binary or fuzzy keyword and key phrase matching. The NLP service105can determine that an electronic record includes one or more words or phrases from a predetermined keyword list and/or that are included in one or more language libraries or corpuses. The NLP service105can perform approximate or fuzzy keyword and key phrase detection, for example, by applying one or more rules, policies, or heuristics. The NLP service105can translate electronic records, or portions thereof, into fixed-size vector representations. The NLP service105can compare vector representations of electronic records to determine (mis)matches between language from which the representations were derived. The NLP service105can perform vector comparisons via any suitable technique or similarity metric, including, but not limited to, Euclidean distance, squared Euclidean distance, Hamming distance, Minkowski distance, L2norm metric, cosine metric, Jaccard distance, edit distance, Mahalanobis distance, vector quantization (VQ), Gaussian mixture model (GMM), hidden Markov model (HMM), Kullback-Leibler divergence, mutual information and entropy score, Pearson correlation distance, Spearman correlation distance, or Kendall correlation distance.

The model service107can generate and execute models119to predict future sales data for goods, such as, for example, consumer packaged goods (CPGs). The model service107can perform one or more cross-validation techniques to verify the stability of the model119. Non-limiting examples of cross-validation techniques include leave p out cross-validation, leave one out cross-validation, holdout cross-validation, repeated random subsampling validation, k-fold cross-validation, stratified k-fold cross-validation, time Series cross-validation, and nested cross-validation.

In one example, the model service107generates a model119for predicting the sales volume of a particular product. The model service107can train the model119using a first training dataset, a second training dataset, and a validating training dataset derived from a set of historical data115that is associated with products having similar attributes (e.g., the historical data including sales data, relevant econometric and/or psychographic indicators, and unstructured data, such as social media postings, customer reviews, and search data). The first training dataset can correspond to a first percentage of the set of historical data (e.g., 50%, 60%, 70%, or any suitable value), the second training dataset can correspond to a second percentage of the set of historical data (e.g., 5%, 10%, 15%, or any suitable value), and the validation dataset van correspond to a third percentage of the set of historical data (e.g., 5%, 10%, 15%, or any suitable value).

The model service107can evaluate model performance by a) executing the model119on training data to generate experimental output, and b) determining model performance metrics by comparing the experimental output to known outcomes associated with the training data. The model service107can modify the model towards improving model accuracy until an optimal model119is generated (e.g., the optimal model119meeting a predetermined accuracy and/or other performance threshold). The model service107can execute the optimal model119on various permutations123of product attributes, econometric indicators, and/or psychographic indicators to generate a plurality of product performance predictions. The model service107can identify an optimal permutation by determining the permutation123predicted to demonstrate the highest product performance (e.g., as measured in sales volume, revenue, demand, or any suitable performance metric).

The model service107can evaluate the performance of the model119by generating and analyzing one or more performance metrics including, but not limited to, accuracy, precision, deviation, and error metrics. Non-limiting examples of performance metrics include mean squared error (MSE), root mean squared error (RMSE), and R2. The model service107can generate an accuracy metric according to Equation 1. The model service107can generate a deviation metric according to Equation 2. The model service107can determine if the model119is of sufficient quality by comparing performance metrics to stored threshold values corresponding to the type of metric. The model service107can evaluate the model119on a time-dependent frequency, such as weekly, monthly, yearly, or any suitable interval. The model service107can retrain and/or adjust the model119in response to determining that the performance of the model119has degraded in quality and/or is over-fit or under-fit to corresponding product data113or historical data115(e.g., based on one or more performance metrics failing to meet a threshold value).

The model service107can generate and evaluate deviation metrics to determine if the model119is under-predictive or over-predictive for one or more types of predictions125, such as, for example, sales volume, sale trend, and consumer demand. According to one embodiment, the model service107generates models119such that the models119a) account for and evaluate any combination of attributes within a category (e.g., any number of permutations123), b) generate a prediction125on-request or automatically in a virtually instantaneous manner (e.g., as opposed to previous prediction approaches that may require a user to wait weeks or months to develop a product performance forecast). In one or more embodiments, the prediction system101captures and updates product data113and historical data115such that the model service107may reuse the categorical features and other information therein to scalably predict sales of new products across one or more product categories. In one or more embodiments, different product categories may include different categorical features and different products within a product category may share a predefined set of features in addition to one or more product-specific features. Toothpaste has its own features different from mouthwash—but to predict two different toothpastes in the United States, one can use the same model built on the same set of categorical features.

The report service109can transmit predictions125and related information to the computing device102. For example, the report service109generates an electronic communication including a predicted sales volume for a particular product, an indication of the particular product, and one or more most positively or negatively predictive attributes of the particular product. The report service109can transmit the electronic communication to a computing device102from which an original prediction request was received. The report service109can generate and transmit electronic communications in any suitable format or combination of formats including, but not limited to, electronic mail, web- and/or application-hosted media, digital media (e.g., images, videos, multimedia, interactive digital media etc.), charts and other graphical reports, text messages, push alerts, and notifications. The report service109can generate data visualizations for visually communicating a prediction125and/or other insights related to a product, such as highly weighted variables117, product-analogous historical data115(e.g., historical consumer demand and other product-related trends and benchmarks). The report service109can generate user interfaces for communicating predictions125, for receiving prediction requests from one or more computing devices102, and/or for modifying one or more aspects of the present prediction process. The report service109can host user interfaces and other communications at a networking address and can transmit the networking address to one or more computing devices102. The report service109can cause an application or browser service on the computing device102to access a user interface or prediction-related communication.

The computing device102can include any network-capable electronic device including, but no limited to, personal computers, mobile phones, tablets, Internet of Things (IoT) devices, and external computing systems. The computing device102can include, but is not limited to, one or more displays127, one or more inputs devices129, and an application131. The display127can include, for example, one or more devices such as liquid crystal display (LCD) displays, gas plasma-based flat panel displays, organic light-emitting diode (OLED) displays, electrophoretic ink (E ink) displays, LCD projectors, or other types of display devices, etc. The input device129can include one or more buttons, touch screens including three-dimensional or pressure-based touch screens, camera, finger print scanners, accelerometer, retinal scanner, gyroscope, magnetometer, or other input devices. The application131can request, support and/or execute processes described herein, such as, for example, the prediction processes200,400shown inFIGS.2and4, respectively, and described herein. The application131can generate user interfaces and cause the computing device102to render user interfaces on the display127. For example, the application131generates a user interface including an original appearance of particular data and a second appearance of the particular data following de-identification of one or more data variables117therein.

The application131can generate and transmit requests to the prediction system101. The application131can request and receive, from the prediction system101, predictions125and various communications related to the same, such as, for example, recommendations for optimizing product attributes based on one or more predictions125. The application131can store requests and request responses in memory of the computing device102and/or at a remote computing environment operative to communicate with the computing device102.

FIG.2shows an example prediction process200that can be performed by one or more embodiments of the present prediction systems, such as the prediction system101shown inFIG.1and described herein. The prediction system101can perform the prediction process200to generate one or more predictions125for a product, such as, for example, sales revenue predictions and sales volume predictions, and to identify product attributes, econometric indicators, and psychographic indicators that may be most productive of product success. According to one embodiment, the prediction system101performs the process200to predict, in an attribute-based approach, sales of new products that lack a sales history. In various embodiments, by the process200, the prediction system101generates and trains a model119to predict sales volume for a product that has not entered the market and has no sales history by assessing the product's attributes, calculating the influence each attribute has within a given subcategory, and predicting each attribute's performance based on other products within the subcategory and their corresponding historical performance and sales data. The model119can perform various functionality when utilized, implemented, or otherwise executed as part of software or hardware on one or more computing devices, such as, for example, via the prediction system101. In a particular example, by the process200, the prediction system101predicts one or more product attributes114that are most predictive for a particular product (e.g., the particular product being associated with a particular product category, or plurality thereof).

At step203, the process200includes receiving product data113associated with one or more products. In some embodiments, receiving the product data113includes receiving one or more electronic records related to a product and processing the electronic records to extract and/or generate product data113. The intake service103and/or NLP service105can receive, from a computing device102, a request to generate a prediction125for a particular product. The request can include product data113and/or identify the particular product such that product data113can be obtained by the intake service103from computing devices102, report systems104, commerce systems106, and media systems108. The intake service103can automatically request product data from the computing devices102, the report systems104, the commerce systems106, the media systems108, and/or any particular system distributed across the network110. For example, the intake service103can request product data113from the report systems104on a weekly, bi-weekly, monthly, daily, or any time interval basis.

At step206, the process200includes receiving or, in some embodiments, retrieving historical data115. The intake service103and/or NLP service105can receive historical data115from computing devices102, report systems104, commerce systems106, and media systems108. The intake service103can retrieve historical data115from the data store111. According to one embodiment, the retrieved historical data115corresponds to, or is otherwise associated with, at least a portion of the product data113of step203.

The process200can include performing one or more data preparation processes300(FIG.3) to process the product data113and historical data115(e.g., or other data elements from which product data113or historical data115may be extracted or derived, such as electronic records). In various embodiments, the intake service103and/or NLP service105store the processed product data113and historical data115at the data store111.

At step209, the process200includes generating one or more training datasets, and, in some embodiments, one or more validation datasets, based on the historical data115. Generating the training dataset can include generating a set of variables117and known outcomes based on the historical data115. Non-limiting examples of known outcomes can include historical product performance and sales data (e.g., sales volume, sales revenue, etc.) and product success drivers (e.g., product attributes, econometric indicators, psychographic indicators, etc.). In some embodiments, step209includes segregating a training dataset into a secondary training dataset, a validation training dataset, and a testing dataset. According to one embodiment, the dataset of step209is generated such that the dataset encompasses a full sales scope for the product for which a prediction125is being generated. In least one embodiment, full sales scope refers to all historical data115that may be relevant to a product for which the process200is performed. According to one embodiment, sales scope refers to a percentage of category revenue that is covered by historical data115, such as historical point of sale data. At step209, the intake service103may generate the dataset such that the dataset demonstrates a coverage rate above 95 percent of revenue, or any other suitable percentage. According to one embodiment, the initial dataset of step209demonstrates a sales scope of 100% (e.g., “full”). In at least one embodiment, from the initial dataset, the intake service103generates a first training dataset that includes a sales scope of 70%. According to one embodiment, for fine tuning of the model119during training, the intake service103generates a second training dataset that includes 15% sales scope and excludes the first dataset. In various embodiments, the intake service103generates one or more testing or validation datasets that include a remaining 15% sales scope (e.g., the testing or validation dataset excludes the first and second training datasets). The model service107can train a model119using the various datasets to perform cross-validation and ensure model stability.

At step212, the process200includes generating a model119configured to a) receive, as input, the variables117of the training dataset(s) generated at step209, b) identify one or more products in the training dataset(s) that demonstrate a full training sales scope, a full validation sales scope, and/or a full testing sales scope, c) randomly select a product from the one or more products that were identified, and d) generate a prediction125corresponding to the randomly selected product (e.g., a sales volume prediction, sales revenue prediction, or any suitable prediction).

At step215, the process200includes generating training output via executing the model119of step212on one or more training datasets of step209. The training output can include one or more predictions125and weight values for controlling the contribution of each variable117to the prediction125. In at least one embodiment, the model119generates the prediction125by creating a forest of decision trees for generating the prediction125based on the variables117and by applying one or more gradient boosting algorithms to the forest of decision trees.

At step218, the process200includes determining if the current iteration model119meets one or more predetermined performance thresholds based on the training output of step215(e.g., one or more generated test predictions). The model service107can compute one or more performance metrics (e.g., accuracy, error, deviation, precision, etc.) by comparing the training output of step215to the known outcomes of the corresponding training dataset. For example, the model service107compares a predicted sales volume of250units to a known outcome of375units. Based on the comparison, the model services107determines that the model119predicted product sales volume at a 50% level of deviation. In various embodiments, the model service107evaluates one or more of model accuracy, R2, root mean square deviation, and other metrics by comparing predictions125generated via executing the model119on training, testing, and/or validation datasets. in response to the predictive model meeting the predetermined performance threshold, the model services107can use the predictive model to generate the prediction (e.g., proceed to step224).

In response to determining that the performance metric of the model119fails to meet the predetermined performance threshold, the process200can proceed to step221. In response to determining that the performance metric of the model119meets the predetermined performance threshold, the process200can proceed to step224. The model service107can perform steps212-221in an iterative manner to retest and train multiple model iterations until a model119is generated that demonstrates threshold(s)-satisfying levels of performance in one or more performance metrics and/or the predetermined performance threshold. The model service107can perform steps212-221using multiple training datasets, one or more validation datasets, and one or more testing datasets to ensure the model119is robust to varying inputs and is not overfit or underfit to a particular dataset.

At step221, the process200includes optimizing one or more model parameters towards improving performance of the current iteration model119(e.g., or a subsequent iteration model119generated at step212). The model service107can adjust parameter weight values towards reducing error or deviation in the model119, or toward increasing the accuracy thereof. The model service107can tune the properties121of the model119, such as, for example, hyperparameters including learning rates, number of estimators, number of leaves, and maximum depth. Following step221, the process200can proceed to steps212-218in which a subsequent iteration model119may be generated, executed on training data, and evaluated for sufficient performance.

At step224, the process200can include generating one or more predictions125by executing the trained model119on the product data received at step203(e.g., or, processed product data from one or more data preparation processes300). The model service107can generate variables117based on the product data, such as, for example, product attributes114and econometric indicators116related to product launch plans (e.g., product launch date, product launch channels, etc.). The model service107can execute the model119on the variables117and generate a prediction125, such as an estimated sales volume or sales revenue. In some embodiments, the model service107analyzes the model119to determine one or more variables117(e.g., or related product data, such as a particular product attribute114) that most positively or most negatively contributed to the prediction125. For example, the model service107determines that a summer launch date for a winter coat product is the most negative contributor to a sales revenue prediction for the winter coat product. In another example, the model service107determines that a drink product's strawberry flavor is the most positive predictor to a sales volume prediction for the drink product.

At step227, the process200includes performing one or more appropriate actions, including, but not limited to, transmitting the prediction125to one or more computing devices102, storing the prediction125at the data store111or a remote storage environment, updating a user interface and/or display to include the prediction125(e.g., and additional data, such as highly weighted variables or product data), and modifying one or more aspects of the variables117or product data and generating a new prediction125. In one example, the report service109generates a user interface including the prediction125and causes the application131to render the user interface on the display127of the computing device102. In another example, the report service109can generate a recommendation for one or more changes to product attributes114, econometric indicators116, or psychographic indicators118for improving upon the prediction125. In this example, the report service109may indicate that a change to a product's flavor, color, ingredient, sales channel, or target audience could improve the product's predicted sales volume, sales revenue, or other success marker (e.g., consumer demand, brand exposure, competitiveness, etc.). In at least one embodiment, the report service109generates a prediction summary that includes predictions125or prediction-derived intelligence for one or more product attributes (see, for example, the prediction summary500shown inFIG.5).

The report service109can generate a user interface and/or graphical report for displaying the optimal permutation. The report service109can host the user interface at a networking address accessible via a user's computing device and/or a web application. The report service109can transmit the graphic report to a user's computing device for rendering on a display thereof. The report service109can determine, and report to a user's computing device102, one or more model inputs (e.g., historical product attributes, econometric indicators, psychographic indicators, or unstructured data elements) that are most positively or negatively predictive for positive or negative sales performance.

In an example scenario, for a planned hiking backpack product, the model service107generates and trains a sales prediction model119using historical sales data and product data from a plurality of existing hiking backpack products. The model service107generates variables117based on the historical product data, assigns initial weight values to the input model parameters, and generates a first iteration predictive model119that generates a sales prediction125based on the variables117. The model service107determines an accuracy level of the first iteration predictive model119by comparing the sales prediction to the known outcomes of the historical sales data. The model service107trains the predictive model119by adjusting one or more weight values, or other properties121, towards improving the accuracy level of the model, generating additional sales predictions, and performing additional comparisons to the historical sales data. The model service107iteratively trains the predictive model119until generating a final iteration predictive model119that demonstrates a threshold-satisfying accuracy level. Based on parameter weight values in the final iteration prediction model119, the prediction system101determines that product attributes114of “weight-offloading,” “waterproof,” and “less than $200” are most positively predictive for positive sales performance in hiking backpack products. The report service109generates and transmits to the user's computing device102a prediction summary including the most positively predictive product attributes114.

FIG.3shows an example data preparation process300that may be performed by an embodiment of the prediction system101. The process300may be performed by the prediction system101shown inFIG.1and described herein. In a particular example, the intake service103and NLP service105perform the process300. In various embodiments, the prediction system101performs the process300on a product dataset including product data113or historical data115associated one or more products.

At step303, the process300includes filtering out, from the product dataset, product entries with very rare sales (e.g., product+channel combinations with less than 3 data points). For example, the prediction system101can filter out product data113product entries with very rare sales.

At step306, the process300includes replacing missing entries (including entries with missing data values) in the product set (e.g., product data113) with suitable replacement values, such as replacing missing sales values with “0” and replacing missing price values a mean or median value of other price values or a price value of another entry. For example, the prediction system101can analyze the product data113, the historical data115, and/or the variables117to identify missing data entries. Continuing this example, the prediction system101can fill the identified missing data entries with a binary value, a mean value of similar data, a mode value of similar data, and/or any other appropriate data point for filling the missing data entries.

At step309, the process300includes replacing outlier entries in the product set. The intake service103can identify an outlier data entry within the product dataset by determining that a value thereof fails to meet a predetermined threshold associated with the dataset and/or falls outside a distribution of values associated with the dataset. The predetermined threshold can include, for example, a distance from a mean, median, or mode of the dataset, or a number of standard deviations therefrom. In at least on example, the predetermined data range corresponds to a particular percentile value (e.g., a range between the 25thpercentile and the 75thpercentile). In another example, the predetermined data range corresponds to a particular number of standard deviations away from a mean of data entries stored and associated with the particular product. The system can replace an outlier data entry with a new entry whose value is a percentile value (e.g., 90thpercentile or any other suitable percentile), median, mean, mode, or other metric derived from other data entries associated with the same data type(s).

Sales outliers are defined via statistical techniques, such as, for example, identifying 95thpercent, 99thpercent, or any suitable percent quartiles within a distribution of a set of product data. In various embodiment, in response to detecting an outlier value in a dataset entry, the intake service103can replace the outlier value with an average of values from neighboring entries. In one example, the intake service103converts a time series with values [3, 7, 50, 4, 8] to a smoothed time series of [3, 7, 15, 4, 8].

At step312, the process300includes retrieving product attributes114, in the form of categorical features, from one or more sources of product data113, such as product descriptions, product advertisements, or product reviews. In some embodiments, step315includes generating and adding to the product data113additional features based on the product for which predictions are to-be-generated, one or more categories of the product, or business logic with which the product is associated. In some embodiments, the prediction system101performs step312in response to determining that the product dataset includes an insufficient quantity of product attributes (e.g., by comparing the number of product attributes in the product dataset to one or more thresholds).

At step315, the process300includes encoding the categorical features into the product dataset via mean target encoding. For example, for each categorical feature, the intake service103may replace the categorical feature with mean sales within the corresponding category.

At step318, the process300includes encoding binary features in the product set as Boolean values (e.g., 1 and 0) and, in some embodiments, adding Boolean operators (e.g., AND, OR, NOT). For example, the prediction system101can encode binary features into the product data113as Boolean values and, in some embodiments, adding Boolean operators. For example, the prediction system101can generate a string of Boolean operators linking two or more product attributes114(e.g., Color AND Shape for a particular product).

At step321, the process300includes generating and encoding date features into the product dataset. For example, from a product description, the NLP service105can identify and extract a product release period and product launch date. The intake service103can encode the product release period and product launch date as additional entries to the product dataset.

At step324, the process300includes adding additional data to the product dataset, such as, for example, macroeconomic indicators, search trend data, and comment- or review-derived data. For example, the NLP service105, the model service107, and/or the intake service103can generate, receive, and/or produce additional data to the product data113. Continuing this example, the intake service103can add macroeconomic indicators to the econometric indicators116for a particular product indexed in the product data113.

At step327, the process300includes performing appropriate actions, such as storing the modified product dataset, requesting additional product information (e.g., from the computing device102, report system104, commerce system106, or media system108), and generating training, validation, or testing datasets based on the modified product dataset. For example, the prediction system101can perform appropriate actions, such as storing the modified product dataset into the product data113, requesting additional product information (e.g., from the computing device102, report system104, commerce system106, or media system108), and generating training, validation, or testing datasets based on the modified product dataset (e.g., stored in the product data113).

FIG.4shows an example prediction process400that can be performed by one or more embodiments of the present prediction system101, such as the prediction system101shown inFIG.1and described herein. The prediction system101can perform the prediction process400to generate one or more predictions125for a product, such as, for example, predictions for sales volume based on various product price changes. In various embodiments, by the process400, the prediction system101predicts the change of sales volumes (e.g., units or revenue), based on simulated changes to price of a given product. In one or more embodiments, prediction system101identifies historical relationships between price elasticity and forecasted product sales. In at least one embodiment, the prediction system101generates one or more models119that allows including different pricing scenarios as inputs to a series of different sales forecasts.

At step403, the process400can include obtaining product data113for one or more products. The product data113can include sales data for a given product, such as unit or revenue sales by product, across a category, by time period (e.g., daily, weekly), by channel (e.g., retailer, physical store, online store, etc.), by location and/or location level (e.g., neighborhood, city, region, state, country, etc.), or one or more combinations thereof. The product data113can include price data for a given product, such as price of a product by respective time period, by channel, by location, or one or more combinations thereof. In one or more embodiments, the intake service performs step403.

At step406, the process400can include generating and training one or more models119via the model service107. In various embodiments, the model119generates predictions125for estimating sales volume percentage change for each price change by product group (e.g., brand+category or subcategory group). According to one embodiment, the model119is configured to perform operations including, but not limited to:Calculating the percentage change of sales (revenue or units) and price by product; and channel and/or location from two time periods;

Filtering out data outliers using business logic (e.g., percentage change of units sales that exceeds 5000% and price change that exceeds 300%).Grouping subsets of the product data113into data groups by brand/subcategory or other dimensions; andFor each data group, fitting a, b and c coefficients for function y=a*exp(−b*x)+c, where x is a percentage change of price from one period to another, and y is a percentage change of sales (units or revenue) for respective periods.

In one or more embodiments, the model119is configured to visualize the product data113by providing a function fitted for each data group. The model service107may use the function(s) to evaluate model accuracy and/or other performance factors. The model service107can train, validate, and test the model119using one or more datasets derived from historical data115. The model service107can iteratively adjust one or more properties121of the model119to generate a model iteration that demonstrates threshold-satisfying performance.

At step409, the process400can include generating one or more predictions125via the model119. The model service107can execute the model119on the product data113of step403under varying pricing conditions and, thereby, generate predictions125including product volume changes under each pricing condition.

FIG.5shows an example prediction summary500that may be generated by the report service109(FIG.1). The prediction summary500can include one or more predictions125, such as, for example, predicted importance scores for a plurality of attributes across a plurality of metrics including, but not limited to, total score, passion score, demand score, demand average (AVG), demand growth, competition average (AVG), and competition growth. The report service109can color code the one or more predictions125in terms of severity. For example, the report service109can generate all “High” predictions125with the color red, all “Medium” predictions125with the color orange, all “Neutral” predictions125with no color, all “Low” predictions125with a light green, and all “Very Low” predictions125with a dark green color. The prediction summary can include name list501listing all the names of the particular products.

Though not illustrated, the prediction summary500can include various reports generated by the report service109. For example, the report service109can render the prediction summary500with various tabs describing various predictions generated by the prediction system101. In one example, a tab can include an quarterly report for predicted sales of a particular product. In another example, the report service109can render the prediction summary500with an export feature (e.g., excel export, text file export, .CSV exports).

The prediction summary500can include a search function502and a sort function503. When displayed on the display127of the computing device102, the application131can receive a search request from the input device129through the search function502. The search function can search any particular prediction125, name listed in the name list501, and/or any particular attribute associated with the prediction summary. When displayed on the display127of the computing device102, the application131can receive a sort request from the input device129through the sort function503. The sort function503can facilitate sorting the prediction summary500in any particular order.

Referring now toFIG.6, illustrated is a process600, according to one embodiment of the present disclosure. The process600can correspond with a technique for processing historical data115and unstructured data, generated a model with the historical data115and unstructured data, applying the model to determine the influential parameter(s), and generate the prediction summary500to include the information deduced through the process600. The prediction system101can perform the process600and generate the prediction summary500with the information gathered through the process600.

At box603, the process600can include receiving historical data115and unstructured data. The prediction system101can receive historical data115and/or the unstructured data from any particular source distributed across the networked environment100. For example, the prediction system101can receive historical data115and/or the unstructured data from the report systems104, the commerce systems106, the media systems108, or a combination thereof. The intake service103can extract the unstructured data from the product data113, the historical data115, and/or the variables117.

At box606, the process600can include generating one or more permutations123. The model service107, the intake service103, and/or any other particular service of the prediction system101can generate permutations123. The model service107can generate permutations123by aggregating product data113and historical data115into associated data pools. For example, the model service107can aggregate historical sales data for a particular video game with the know genre (e.g., role playing game (RPG)) stored in the product attributes114of the particular video game. In another example, the model service107can generate a particular permutation123that include an association (e.g., a Boolean association using Boolean operators) between the historical sales data for all games that include the product attribute114of RPG as the genre.

At box609, the process600can include modeling the one or more permutations123. The model service107can model the one or more permutations123. The model service107and/or the NLP service105can employ the one or more machine learning models, natural language processing models, and/or any particular model to predict the correlation between the various aggregated features of the permutations123. For example, the NLP service105can extract various product attributes114from the unstructured data (e.g., a product review on a third-party website) using key word extraction techniques. In another example, the model service107can employ a regression algorithm (e.g., decision trees) to determine the correlation of historical sale data with the genre of a particular video game. The model service107can generate a training data set, a testing data set, and a validation data set from the permutations123. The model service107can apply models to the testing data set and the training data set to tune the model, similarly in the process200and300discussed herein. The model service107can employ K-Fold Cross-Validation and/or any particular validation technique to validate the one or more generated models based on the permutations123.

At box612, the process600can include comparing models and generating a model ranking. The prediction system101can compare models generated by the model service107and rank the models based on a variety of factors. For example, the prediction system101can rank the models based on the K-Fold Cross-Validation outputs and/or any validation outputs generated for the respective models. In another example, the prediction system101can rank the models based on various efficiency rates (e.g., time to complete, number of iterations, power efficiency for the prediction system101) and efficiency to output quality ratios. Based on the ranking of the models, the prediction system101can select a model for processing the one or more permutations123and/or future data received from devices across the network110.

At box615, the process600can include determining influential parameter(s) of the one or more models. The prediction system101can determine influential parameters of the one or more models. For example, the prediction system101can track the varying validation scores of the one or more models during the training and testing phase of the models. Continuing this example, the prediction system101can analyze the changing hyperparameters, changing data, and/or any other variations from one iteration to the next that had a large influence on the validation outcome of the one or more models.

At box618, the process600can include generating a user interface. The prediction system101can generate a user interface for rendering on the display127of the computing device102. The user interface can be substantially similar to the prediction summary500. The prediction system101can include the model ranking of the one or more models in the user interface. For example, the prediction system101can render a model ranking that ranks the models on their ability to predict a particular products future sales based on the size of the product. In another example, the prediction system101can render a model ranking that ranks the models on their time efficiency versus their output correctness. In various embodiments, the prediction system101can calculate and render a comparison value between the ranked models that quantifies the increased abilities of each subsequently ranked model (e.g., the first ranked model is 42% more efficient than the second ranked model).

At box621, the process600includes performing appropriate actions, such as storing the modified product dataset, requesting additional product information (e.g., from the computing device102, report system104, commerce system106, or media system108), and generating training, validation, or testing datasets based on the modified product dataset. The prediction system can perform appropriate actions, such as storing the modified product dataset, requesting additional product information (e.g., from the computing device102, report system104, commerce system106, or media system108), and generating training, validation, or testing datasets based on the modified product dataset.

Referring now toFIG.7, illustrated is a flowchart of a process700, according to one embodiment of the present disclosure. The process700can illustrate a technique for generating predictions for one or more products based on historical data115and other product data113. The prediction system101can perform the process700to generate one or more predictions associated with the particular product analyzed by the prediction system101.

At box703, the process700can include receiving historical data115for a plurality of historical products in a plurality of markets. The prediction system101can receive historical data115for a plurality of historical products in a plurality of markets. The prediction system101can receive historical data115from the report system104, the commerce system106, the media system108, and/or any particular service distributed across the network110. The prediction system101can receive the historical data115and store the historical data115in the data store111. The prediction system101can receive historical data115associated with one or more historical products. For example, the prediction system101can receive from a video game company the last five years of economic variables associated with the sales, production, and distribution of all video games made available by the video game company. In another example, the prediction system101can receive historic sales data for one or more video game consoles sold by a video game retailer.

At box706, the process700can include training a predictive model from the models119to forecast at least one product performance attribute based on the historical data115. The prediction system101can train the predictive model from the models119to forecast at least one product performance attribute based on the historical data115. For example, the model service107and/or the NLP service105can perform the process300to prepare the historical data115for processing through the predictive model. The model service107can generate the training dataset, the testing dataset, and the validation dataset for processing through the predictive model. For example, the training dataset can include 60% of a first subset of data from the historical data115. Continuing this example, the testing data set can include 20% of a second subset of data from the historical data115, where the second subset of data is distinct from the first subset of data. Further continuing this example, the validation data set can include 20% of a third subset of data from the historical data115, where the third subset of data is distinct from the first subset of data and the second subset of data.

The prediction system101can select the predictive model based on the product performance attribute. The product performance attribute can be defined as one or more metrics used to evaluate the performance of the particular product based on the product data113and/or the historical data115. For example, the prediction system101can employ the historical data115to generate a correlation between the color of the particular object and its initial starting retail price. The product performance attribute can be substantially similar to the product attribute114. The prediction system101can choose from any particular model119to generate a forecast model that draws a correlation between the historical data115and the product performance attribute. The prediction system101can employ the process200to train, test, and validate the predictive model on its ability to forecast one or more product performance attributes based on the historical data115.

At box709, the process700can include receiving product data113associated with the particular product. The prediction system101can receive product data113associated with the particular product. For example, the prediction system can receive product data113from the commerce system106and/or any particular system distributed across the network110. The prediction system101can organize the product data113received from various sources distributed on the network110by storing the product data into the product attributes114, the econometric indicators, and/or the psychographic indicators118. The intake service103can extract the product data113from various types of data. For example, the intake service103can extract sales data associated with the particular product from the 10k report of a publicly traded company that manufactures the particular product.

At box712, the process700can include generating a prediction for the particular product of the at least one product performance attribute by applying the predictive model. The prediction system101can generate a prediction for the particular product of the at least one product performance attribute by applying the predictive model. For example, the model service107can apply the product data113through the predictive model generated based on the historical data115. In another example, the model service107can generate various correlations between the product data113and the one or more product performance attributes. The model service107, can for example, employ a first predictive model that correlates the likelihood someone will purchase the particular item based on the location in which the particular product is placed in a physical store. In another example, the model service107can employ a second predictive model that uses the psychographic indicators118to predict the likelihood that the subsequent generation of the particular item will have greater sales than the previous generation. In yet another example, the model service107can employ a third predictive model that analyzes the econometric indicators116associated with the product data113of the particular product to determine the sale potential in dollars for the particular product during a recession.

At box715, the process700can include performing at least one action for the particular product based on the prediction of the at least one product performance attribute. The prediction system101can perform at least one action for the particular product based on the prediction of the at least one product performance attribute. In prediction system101can generate a report based on the prediction of the at least one product performance attribute. The prediction system101can render the report based on the prediction of the at least one product performance attribute on the display127of the computing device102. The report can include econometric predictions on the predicted success for the particular product. The report can include, for example, quarterly performance scores (e.g., sales predictions, average hold time for retailers, likelihood of selling out, likelihood of incurring overstock), ranking of most important product performance attributes that impact the sales of the particular product, and/or any other information generated by the prediction system101based on the product data113and the product performance attribute. The prediction system101can generate a strategy report that outlines one or more actions based on the predictions based on the product performance attribute and the product data113. For example, the prediction system101can generate the strategy report to recommend stocking amounts and stocking consistency to ensure the particular product does not sell out at the particular retailer. The prediction system101can identify at least one product with sales falling below a predefined threshold from the plurality of particular products. For example, The prediction system101can process product data113for 10 prototypes of the particular product. Continuing this example, the prediction system101can identify at least one of the prototypes with predicted sales below the predefined threshold (e.g., 70% stock sales in the first 6 months).

The prediction system101can modify at least one aspect of the product data113for the particular product based on the prediction of the at least one product performance attribute. The prediction system101can modify the econometric indicators116and/or the psychographic indicators118associated with the particular product based on the prediction of the at least one product performance attribute. For example, The prediction system101can reduce the weight of econometric indicators116based on the model service107predicting that the particular product likely has a high resilience to recessions. In another example, the prediction system101can increase the weight of particular key words found in online review and stored in the psychographic indicators118that are predicted to negatively affect the sales of the particular product.

The prediction system101can generate a new prediction for the particular product based on the modified at least one aspect of the product data113. On modifying at least one aspect of the product data113, the prediction system101can re-evaluate the particular model against the updated product data113. For example, the model service107can re-evaluate the particular model to determine the likelihood the particular product will sell out within the first 6 months based on the on the updated product data.

The prediction system101generate a plurality of different predictions for the particular product of the at least one product performance attribute by applying the predictive model to a plurality of different pricing values. In various embodiments, the pricing values can be defined as present retail prices for the particular product. The prediction system101can iteratively test how different prices affect the outcome of various models119for the particular product. For example, the model service107can evaluate the predictive model using100different price points for the particular product. Continuing this example, the model service107can rank the plurality of different predictions based on the price point that will yield the most sales. Further continuing this example, the prediction system101can determine one of the plurality of different pricing values corresponding to a highest ranked one of the plurality of different predictions. Once selected, the prediction system101can report the price point that provided the best prediction and outcome for the particular product.

From the foregoing, it will be understood that various aspects of the processes described herein are software processes that execute on computer systems that form parts of the system. Accordingly, it will be understood that various embodiments of the system described herein are generally implemented as specially-configured computers including various computer hardware components and, in many cases, significant additional features as compared to conventional or known computers, processes, or the like, as discussed in greater detail herein. Embodiments within the scope of the present disclosure also include computer-readable media for carrying or having computer-executable instructions or data structures stored thereon. Such computer-readable media can be any available media which can be accessed by a computer, or downloadable through communication networks. By way of example, and not limitation, such non-transitory computer-readable media can comprise various forms of data storage devices or media such as RAM, ROM, flash memory, EEPROM, CD-ROM, DVD, or other optical disk storage, magnetic disk storage, solid state drives (SSDs) or other data storage devices, any type of removable non-volatile memories such as secure digital (SD), flash memory, memory stick, etc., or any other medium which can be used to carry or store computer program code in the form of computer-executable instructions or data structures and which can be accessed by a general purpose computer, special purpose computer, specially-configured computer, mobile device, etc.

When information is transferred or provided over a network or another communications connection (either hardwired, wireless, or a combination of hardwired or wireless) to a computer, the computer properly views the connection as a computer-readable medium. Thus, any such connection is properly termed and considered a computer-readable medium. Combinations of the above should also be included within the scope of computer-readable media. Computer-executable instructions comprise, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing device such as a mobile device processor to perform one specific function or a group of functions.

Those skilled in the art will understand the features and aspects of a suitable computing environment in which aspects of the disclosure may be implemented. Although not required, some of the embodiments of the claimed systems may be described in the context of computer-executable instructions, such as program modules or engines, as described earlier, being executed by computers in networked environments. Such program modules are often reflected and illustrated by flow charts, sequence diagrams, example screen displays, and other techniques used by those skilled in the art to communicate how to make and use such computer program modules. Generally, program modules include routines, programs, functions, objects, components, data structures, application programming interface (API) calls to other computers whether local or remote, etc. that perform particular tasks or implement particular defined data types, within the computer. Computer-executable instructions, associated data structures and/or schemas, and program modules represent examples of the program code for executing steps of the methods disclosed herein. The particular sequence of such executable instructions or associated data structures represent examples of corresponding acts for implementing the functions described in such steps.

Those skilled in the art will also appreciate that the claimed and/or described systems and methods may be practiced in network computing environments with many types of computer system configurations, including personal computers, smartphones, tablets, hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, networked PCs, minicomputers, mainframe computers, and the like. Embodiments of the claimed system are practiced in distributed computing environments where tasks are performed by local and remote processing devices that are linked (either by hardwired links, wireless links, or by a combination of hardwired or wireless links) through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.

An example system for implementing various aspects of the described operations, which is not illustrated, includes a computing device including a processing unit, a system memory, and a system bus that couples various system components including the system memory to the processing unit. The computer will typically include one or more data storage devices for reading data from and writing data to. The data storage devices provide nonvolatile storage of computer-executable instructions, data structures, program modules, and other data for the computer.

Computer program code that implements the functionality described herein typically comprises one or more program modules that may be stored on a data storage device. This program code, as is known to those skilled in the art, usually includes an operating system, one or more application programs, other program modules, and program data. A user may enter commands and information into the computer through keyboard, touch screen, pointing device, a script containing computer program code written in a scripting language or other input devices (not shown), such as a microphone, etc. These and other input devices are often connected to the processing unit through known electrical, optical, or wireless connections.

The computer that effects many aspects of the described processes will typically operate in a networked environment using logical connections to one or more remote computers or data sources, which are described further below. Remote computers may be another personal computer, a server, a router, a network PC, a peer device or other common network node, and typically include many or all of the elements described above relative to the main computer system in which the systems are embodied. The logical connections between computers include a local area network (LAN), a wide area network (WAN), virtual networks (WAN or LAN), and wireless LANs (WLAN) that are presented here by way of example and not limitation. Such networking environments are commonplace in office-wide or enterprise-wide computer networks, intranets, and the Internet.

When used in a LAN or WLAN networking environment, a computer system implementing aspects of the system is connected to the local network through a network interface or adapter. When used in a WAN or WLAN networking environment, the computer may include a modem, a wireless link, or other mechanisms for establishing communications over the wide area network, such as the Internet. In a networked environment, program modules depicted relative to the computer, or portions thereof, may be stored in a remote data storage device. It will be appreciated that the network connections described or shown are example and other mechanisms of establishing communications over wide area networks or the Internet may be used.

Clause 1. A system, comprising: a data store; and at least one computing device in communication with the data store, the at least one computing device being configured to: receive historical data for a plurality of historical products in a plurality of markets; train a predictive model to forecast at least one product performance attribute based on the historical data; receive product data associated with a particular product; generate a prediction for the particular product of the at least one product performance attribute by applying the predictive model; and perform at least one action for the particular product based on the prediction of the at least one product performance attribute.

Clause 2. The system of clause 1 or any other clause or aspect herein, wherein the at least one action comprises modifying at least one aspect of the product data for the particular product based on the prediction of the at least one product performance attribute.

Clause 3. The system of clause 2 or any other clause or aspect herein, wherein the at least one computing device is further configured to generate a new prediction for the particular product based on the modified at least one aspect of the product data.

Clause 4. The system of clause 1 or any other clause or aspect herein, wherein the at least one computing device is further configured to train the predictive model to forecast the at least one product performance attribute by: generating a training data set and a validation data set based on the historical data; and generating the predictive model configured to receive variables of the training data set and generate test predictions corresponding to products in the training data set.

Clause 5. The system of clause 4 or any other clause or aspect herein, wherein the at least one computing device is further configured to: determine whether the predictive model meets a predetermined performance threshold based on the generated test predictions; and in response to the predictive model meeting the predetermined performance threshold, use the predictive model to generate the prediction.

Clause 6. The system of clause 4 or any other clause or aspect herein, wherein the at least one computing device is further configured to: determine whether the predictive model meets a predetermined performance threshold based on the generated test predictions; and in response to the predictive model failing to meet the predetermined performance threshold, iteratively modify at least one model parameter and retesting the predictive model to determine if a current iteration version of the predictive model meets the predetermined performance threshold.

Clause 7. A method, comprising: receiving, via one of one or more computing devices, historical data for a plurality of historical products in a plurality of markets; training, via one of the one or more computing devices, a predictive model to forecast at least one product performance attribute based on the historical data; receiving, via one of the one or more computing devices, product data associated with a plurality of particular products; generating, via one of the one or more computing devices, a respective prediction for each of the plurality of particular products for the at least one product performance attribute by applying the predictive model; and performing, via one of the one or more computing devices, at least one respective action for individual ones of the plurality of particular products based on the respective prediction of the at least one product performance attribute.

Clause 8. The method of clause 7 or any other clause or aspect herein, further comprising generating, via one of the one or more computing devices, a predictive summary comprising the respective prediction for each of the plurality of particular products.

Clause 9. The method of clause 7 or any other clause or aspect herein, further comprising filtering, via one of the one or more computing devices, at least one product with sales falling below a predefined threshold from the plurality of particular products.

Clause 10. The method of clause 7 or any other clause or aspect herein, further comprising: analyzing, via one of the one or more computing devices, the product data associated with the plurality of particular products to identify missing data values; and replacing, via one of the one or more computing devices, the missing data values with replacement values calculated from other data in the product data.

Clause 11. The method of clause 7 or any other clause or aspect herein, further comprising: analyzing, via one of the one or more computing devices, the product data associated with the plurality of particular products to identify at least one outlier data value that fall outside of a predetermined data range; and replacing, via one of the one or more computing devices, the at least one outlier data value with replacement values corresponding to a percentile for other data entries of a same type.

Clause 12. The method of clause 11 or any other clause or aspect herein, wherein the predetermined data range corresponds to a particular percentile value.

Clause 13. The method of clause 11 or any other clause or aspect herein, wherein the predetermined data range corresponds to a particular number of standard deviations away from a mean of data entries.

Clause 14. A non-transitory computer-readable medium embodying a program that, when executed by at least one computing device, causes the at least one computing device to: receive historical data for a plurality of historical products in a plurality of markets; train a predictive model to forecast at least one product performance attribute based on the historical data; receive product data associated with a particular product; generate a prediction for the particular product of the at least one product performance attribute by applying the predictive model; and perform at least one action for the particular product based on the prediction of the at least one product performance attribute.

Clause 15. The non-transitory computer-readable medium of clause 14 or any other clause or aspect herein, wherein the at least one action comprises generating a recommendation to modify at least one aspect of the product data for the particular product.

Clause 16. The non-transitory computer-readable medium of clause 14 or any other clause or aspect herein, wherein the program further causes the at least one computing device to: generate a plurality of different predictions for the particular product of the at least one product performance attribute by applying the predictive model to a plurality of different pricing values; ranking the plurality of different predictions; and determine one of the plurality of different pricing values corresponding to a highest ranked one of the plurality of different predictions.

Clause 17. The non-transitory computer-readable medium of clause 14 or any other clause or aspect herein, wherein the program further causes the at least one computing device to generate a predictive summary comprising the prediction for the particular product.

Clause 18. The non-transitory computer-readable medium of clause 14 or any other clause or aspect herein, wherein the program further causes the at least one computing device to train predictive model to forecast the at least one product performance attribute by: generating a training data set and a validation data set based on the historical data; and generating the predictive model configured to receive variables of the training data set and generate test predictions corresponding to products in the training data set.

Clause 19. The non-transitory computer-readable medium of clause 18 or any other clause or aspect herein, wherein the program further causes the at least one computing device to: determine whether the predictive model meets a predetermined performance threshold based on the generated test predictions; and in response to the predictive model meeting the predetermined performance threshold, use the predictive model to generate the prediction.

Clause 20. The non-transitory computer-readable medium of clause 14 or any other clause or aspect herein, wherein the predictive model comprises at least one of: a machine learning model or an artificial intelligence model.

While various aspects have been described in the context of a preferred embodiment, additional aspects, features, and methodologies of the claimed systems will be readily discernible from the description herein, by those of ordinary skill in the art. Many embodiments and adaptations of the disclosure and claimed systems other than those herein described, as well as many variations, modifications, and equivalent arrangements and methodologies, will be apparent from or reasonably suggested by the disclosure and the foregoing description thereof, without departing from the substance or scope of the claims. Furthermore, any sequence(s) and/or temporal order of steps of various processes described and claimed herein are those considered to be the best mode contemplated for carrying out the claimed systems. It should also be understood that, although steps of various processes may be shown and described as being in a preferred sequence or temporal order, the steps of any such processes are not limited to being carried out in any particular sequence or order, absent a specific indication of such to achieve a particular intended result. In most cases, the steps of such processes may be carried out in a variety of different sequences and orders, while still falling within the scope of the claimed systems. In addition, some steps may be carried out simultaneously, contemporaneously, or in synchronization with other steps.

Aspects, features, and benefits of the claimed devices and methods for using the same will become apparent from the information disclosed in the exhibits and the other applications as incorporated by reference. Variations and modifications to the disclosed systems and methods may be effected without departing from the spirit and scope of the novel concepts of the disclosure.

It will, nevertheless, be understood that no limitation of the scope of the disclosure is intended by the information disclosed in the exhibits or the applications incorporated by reference; any alterations and further modifications of the described or illustrated embodiments, and any further applications of the principles of the disclosure as illustrated therein are contemplated as would normally occur to one skilled in the art to which the disclosure relates.

The embodiments were chosen and described in order to explain the principles of the devices and methods for using the same and their practical application so as to enable others skilled in the art to utilize the devices and methods for using the same and various embodiments and with various modifications as are suited to the particular use contemplated. Alternative embodiments will become apparent to those skilled in the art to which the present devices and methods for using the same pertain without departing from their spirit and scope. Accordingly, the scope of the present devices and methods for using the same is defined by the appended claims rather than the foregoing description and the example embodiments described therein.