New Series of Time Series: Power BI Custom Visual (Part 7)

acf-constant

In the last three parts, I have explained about the time series R custom Visual we have in Power BI. as you remember we have 3 main time series chart in Power BI store (see below): Decompose of time series (trend, seasonality and irregular components).

the two other custom visual help us to do forecasting by having Date and Value. However there are some differences between these charts, In last post, I have explained the “Exponential Smoothing”. In this and in the next post I am going to show how Arima working, and how to set up the parameters.

tsexponential

First, you need to download the chart from Power BI Store:

the first step is to download the Arima time series custom visual from Power BI store as below

tsaeima1

then just select the forecast with Arima visual.

 

 

tsarima2

finally, you would have it in power BI as below

tsarima3

now I just choose two columns from my data field to see how “Arima” forecasting, able to forecast my data (see below picture)

tsarima4

the result is so similar with what I have in “Exponential Smoothing” forecasting chart, but the values for forecasting are not the same. Also, as you can see in the above picture, in number 2, we have some parameters that we donot have them in the Exponential smoothing. as a result, we have to set up some parameters that are not the same.

firts question come to mind is that, what is difference between “Exponential Smoothing and Arima”

Exponential Smoothing and ARIMA difference

the main basis of Exponential Smoothing was to find a relationship between current value and successive values of trend, and seasonality of data, it does not any assumption for irregular components.

While exponential smoothing models are based on a description of trend and seasonality in the data, ARIMA models aim to describe the auto correlations in the data. So what is Auto correlation in data?[3]

Auto Correlation

each forecasting may have some errors that means the difference between what happen inreal life andwhat forecast

Erorr= Real Life Data-Forecast Data

in last post about Exponential smoothing we did a forecast as below

Tempts<-ts(dataset[2],start=c(1))
#plot.ts(Tempts)
TempTrend<-HoltWinters(Tempts, gamma=FALSE)
library(forecast)
TempTrendforecasts <- forecast.HoltWinters(TempTrend, h=8)
plot.forecast(TempTrendforecasts )

As you can see in the above code we store the result of prediction in a variable name “TempTrendforecasts “.

this varibale has a component (column) name residual as below

TempTrendforecasts$residuals

so I am going to check how the errors is bad, to see how the errors (residual) is, I am going to check whether there is a correlation between forecast errors (residual) for successive predictions. if there is no correlation then this forecast is the best answer we have, otherwise, I have to use ARIMA! which I will explained later

in R we have a function name “acf()”

this chart help me to find out is there any correlation between errors for some periods (lags)

acf(na.omit( TempTrendforecasts$residuals),lag.max=10)

so the function is acf, it gets the erros lists (TempTrendforecasts$residuals), there should be no NA value in the list, so apply “na.omit” function on it to remove the NA values,

the second input that this function will get is the period that we want to check wether there is correlation between errors or not.

so we have below picture

in power BI we have below picture: as you see there is no that much correlation between errors for last 10 periods. (correlation is less than 0.2 that is very low correlation)

acf-correlation

Another way to be sure that the predictive model cannot be improved , it is to check whether the forecast errors are normally distributed with mean zero and constant variance. To check whether the forecast errors have
constant variance, we can make a time plot of the in-sample forecast errors: as you see in the below picture the chart fluctuate around the Zero values. so there is no correlation between successive errors values.

acf-constant

However, alwyas is not like that! we have to check some other autocorrelation and testmore , there is a possibilities to have some correlation.

for next post I will explained how ARIMA will works with autocorrelation and how we set the parameters.

 

[1]Book:http://a-little-book-of-r-for-time-series.readthedocs.io/en/latest/src/timeseries.html

[2]https://www.google.co.nz/url?sa=t&rct=j&q=&esrc=s&source=web&cd=14&ved=0ahUKEwjIl7bUgPvVAhWLVLwKHbr2CNA4ChAWCDYwAw&url=https%3A%2F%2Fwww.ons.gov.uk%2Fons%2Fguide-method%2Fukcemga%2Fpublications-home%2Fpublications%2Farchive%2Ffrom-holt-winters-to-arima-modelling–measuring-the-impact-on-forecasting-errors-for-components-of-quarterly-estimates-of-public-service-output.pdf&usg=AFQjCNFkiCxd9yfOmyIN-MpqkRgmt_tJrA

[3]https://github.com/Microsoft/powerbi-visuals-forcastingarima

Leila Etaati on LinkedinLeila Etaati on TwitterLeila Etaati on Youtube
Leila Etaati
Trainer, Consultant, Mentor
Leila is the first Microsoft AI MVP in New Zealand and Australia, She has Ph.D. in Information System from the University Of Auckland. She is the Co-director and data scientist in RADACAD Company with more than 100 clients in around the world. She is the co-organizer of Microsoft Business Intelligence and Power BI Use group (meetup) in Auckland with more than 1200 members, She is the co-organizer of three main conferences in Auckland: SQL Saturday Auckland (2015 till now) with more than 400 registrations, Difinity (2017 till now) with more than 200 registrations and Global AI Bootcamp 2018. She is a Data Scientist, BI Consultant, Trainer, and Speaker. She is a well-known International Speakers to many conferences such as Microsoft ignite, SQL pass, Data Platform Summit, SQL Saturday, Power BI world Tour and so forth in Europe, USA, Asia, Australia, and New Zealand. She has over ten years’ experience working with databases and software systems. She was involved in many large-scale projects for big-sized companies. She also AI and Data Platform Microsoft MVP. Leila is an active Technical Microsoft AI blogger for RADACAD.

Leave a Reply