Here is a definition of predictive analytics from Jeff Liebl, from Multichannel Merchant.

“Predictive analytics is a process, based on statistical and data mining techniques, that models current and historical customer performance data and traits to make ‘predictions’ about future outcomes and customer behaviors. These predictions can be expressed as numerical values, or scores, that correspond to the likelihood of a particular occurrence or behavior taking place in the future. In corporate America, predictive scores are typically used to determine the risk or opportunity associated with a specific customer or transaction. These evaluations assess the relationships between many variables to estimate risk or response.”

The numerical values or scores are generated by mathematical equations resulting from Predictive Models. This notion of predictive model has nothing to do with data models which is a term used to represent the structure of data as seen from tables’ schema in relational databases.

A simple definition of a Predictive Model may be a mathematic model which describes the relationship between some input data (or variables, or attributes: for example, demographic information known about customers) and some output data (the target variable: for example, the fact that a given customer has bought a product following a marketing campaign or not). There are many application domains for predictive analytics and, if you read this document, it means that your corporation has decided to use it in order to optimize some of their business processes.

This is an extract from Wikipedia (section “Predictive Analytics (http://en.wikipedia.org/wiki/Predictive_analytics)”) on a very common application of predictive analytics:

“

Direct marketing: Product marketing is constantly faced with the challenge of coping with the increasing number of competing products, different consumer preferences and the variety of methods (channels) available to interact with each consumer. Efficient marketing is a process of understanding the amount of variability and tailoring the marketing strategy for greater profitability. Predictive analytics can help identify consumers with a higher likelihood of responding to a particular marketing offer. Models can be built using data from consumers’ past purchasing history and past response rates for each channel. Additional information about the consumers demographic, geographic and other characteristics can be used to make more accurate predictions. Targeting only these consumers can lead to substantial increase in response rate which can lead to a significant reduction in cost per acquisition. Apart from identifying prospects, predictive analytics can also help to identify the most effective combination of products and marketing channels that should be used to target a given consumer.”

SAP Predictive Analytics combines SAP InfiniteInsight and SAP Predictive Analysis in a single desktop installation.

SAP Predictive Analytics includes two toolsets, Automated Analytics and Expert Analytics.

Automated Analytics includes the following tools:

- Data Manager is a semantic layer tool used to facilitate data preparation.
- Modeler helps you create models such as classification, regression, clustering, time series, and association rules. Models can be exported in different formats so that you can easily apply them in your production environment.
- Social extracts and uses implicit structural relational information stored in different kinds of data sets, improving the decision and prediction capacities of the models. It can represent data in the form of graphs that show how the different data are linked. Dedicated workflows help you create colocation and frequent path analyses based on geo-referenced data.
- Recommendation generates product recommendations for your customers based on a social network analysis.
- Model Manager (installed separately) helps you manage ongoing tasks by scheduling model training and data set deviation detection.

Expert Analytics is a statistical analysis and data mining toolset that enables you to build predictive models to discover hidden insights and relationships in your data, from which you can make predictions about future events.

Expert Analytics enables you to do the following:

- Perform various analyses on the data, including time series forecasting, outlier detection, trend analysis, classification analysis, segmentation analysis, and affinity analysis.
- Analyze data using different visualization techniques, such as scatter matrix charts, parallel coordinates, cluster charts, and decision trees.
- Use a range of predictive algorithms, the R open-source statistical analysis language, and in-memory data mining capabilities for handling large volume data analysis efficiently.

You can perform in-database analysis using Predictive Analysis Library (PAL) or SAP Automated Predictive Library (APL) algorithms from SAP HANA.

Expert Analytics provides built-in algorithms such as regressions, time series, and outliers.

However, it also supports decision trees, k-means, neural network, time series, and regression algorithms from the open-source R library.

**Custom R Component**Expert Analytics provides an environment for you to use R scripts (within a valid R function format) and create a component, which can be used for analysis in the same way as any other existing component.

The list of supported R versions has been extended to include version 3.1.2. It is now possible to use the latest libraries — such as algorithms, visualization, data manipulation and preparation — as custom components.

You can

- share one or more R custom components by using .spar files.
- import a model that someone has shared with you using a .spar file.

I think that it is a future-proof strategy because R community has a huge potential and abbilities for rapid innovations in algorithm space, and you can immediately integrate all that advances for the purpose of making better business decisions.

The following is a sample script for a simple linear regression component.

SLR<-function(InputDataFrame,IndepenentColumn,DependentColumn)

{ finalString<-paste(paste(DependentColumn,”~” ), IndepenentColumn);

slr_model<-lm(finalString);

result<-predict(slr_model, InputDataFrame);

output<- cbind(InputDataFrame, result);

plot(slr_model)

return (list(slrmodel=slr_model,out=output))

}SLRModelScoring<-function (InputDataFrame, IndependentColumn, Model)

{ predicted<-predict (Model, data.frame(InputDataFrame [,

IndependentColumn]), level=0.95);

return(list(modelresult=predicted))

}