Data Prediction by AI & other methods

Content Type: Industry Template
Categories:

Overview

This app allows you to predict, extrapolate and interpolate the given data by several methods, including artificial intelligence and machine learning. Linear regression quantifies the relationship between one or more predictor variable(s) and one outcome variable. Linear regression is commonly used for predictive analysis and modelling. Polynomial curve fitting is when we fit our data to the graph of a polynomial function. The same least squares method can be used to find the polynomial, of a given degree, that has a minimum total error. Fourier extrapolation/fast Fourier transform (FFT) is an algorithm that computes the discrete Fourier transform (DFT) of a sequence, or its inverse (IDFT). Fourier analysis converts a signal from its original domain (often time or space) to a representation in the frequency domain and vice versa. The DFT is obtained by decomposing a sequence of values into components of different frequencies. Exponential smoothing is a time series forecasting method for univariate data that can be extended to support data with a systematic trend or, as in this app, seasonal component. Autoregressive Integrated Moving Average, or ARIMA, is one of the most widely used forecasting methods for univariate time series data forecasting. Although the method can handle data with a trend, it does not support time series with a seasonal component. There is an extension to ARIMA that supports the direct modelling of the seasonal component of the series in this app. Echo state networks (ESN) provide an architecture and supervised learning principle for recurrent neural networks (RNNs). The main idea is (i) to drive a random, large, fixed recurrent neural network with the input signal, thereby inducing in each neuron within this "reservoir" network a nonlinear response signal, and (ii) combine a desired output signal by a trainable linear combination of all of these response signals. Created by Creatity s.r.o. creatity.com

Documentation

Demo urlhttps://dataextrapolation-sandbox.mxapps.io/

Authors

This app was created by Creatity s.r.o, IT company specializing in artificial intelligence and low code. If you are looking for Mendix related services  (to adjust this app or create a brand new one) do not hesitate to contact us at creatity.com

This app is only a simple demo version, extended fully professional AI for predictions is available for our customers.

Description

This app allows you to predict, extrapolate and interpolate the given data by several methods, including artificial intelligence and machine learning.

Linear regression quantifies the relationship between one or more predictor variable(s) and one outcome variable. Linear regression is commonly used for predictive analysis and modelling.

Polynomial curve fitting is when we fit our data to the graph of a polynomial function. The same least squares method can be used to find the polynomial, of a given degree, that has a minimum total error.

Fourier extrapolation/fast Fourier transform (FFT) is an algorithm that computes the discrete Fourier transform (DFT) of a sequence, or its inverse (IDFT). Fourier analysis converts a signal from its original domain (often time or space) to a representation in the frequency domain and vice versa. The DFT is obtained by decomposing a sequence of values into components of different frequencies.

Exponential smoothing is a time series forecasting method for univariate data that can be extended to support data with a systematic trend or, as in this app, seasonal component.

Autoregressive Integrated Moving Average, or ARIMA, is one of the most widely used forecasting methods for univariate time series data forecasting. Although the method can handle data with a trend, it does not support time series with a seasonal component. There is an extension to ARIMA that supports the direct modelling of the seasonal component of the series in this app.

Echo state networks (ESN) provide an architecture and supervised learning principle for recurrent neural networks (RNNs). The main idea is (i) to drive a random, large, fixed recurrent neural network with the input signal, thereby inducing in each neuron within this "reservoir" network a nonlinear response signal, and (ii) combine a desired output signal by a trainable linear combination of all of these response signals.

Typical usage scenario

To use the extrapolation function, you need to send 10 valid numeric values and a chosen method to:

http://creatity.com:5000/extrapolation?v1={1}&v2={2}&v3={3}&v4={4}&v5={5}&v6={6}&v7={7}&v8={8}&v9={9}&v10={10}&method={11}

Where {1}-{10} are numeric values and the {11} should contain one of the string values below:

  • 'linr' - Linear regression
  • 'polf' - Polynomial fitting
  • 'four' - Fourier extrapolation
  • 'exps' - Exponential smoothing (smoothing_level=0.5)
  • 'seaexp' - Seasonal exponential smoothing (seasonal_periods=5)
  • 'sarim' - Seasonal arima
  • 'esn' - Echo state network

As a response, the API will send you 5 extrapolated values
response example:
{"method": "esn", "status": "ok", "values": [10.898862075217195, 11.592030844286437, 12.0508216141132, 12.316445188891105, 12.45680531532113]}

Features and limitations

- must be able to use a REST connection.

Dependencies [optional]

  • Created in Mendix Studio Pro 8.11.0
  • AtlasUI was Used

Installation [optional]

[Describe the necessary steps to install the content]

Configuration [optional]

To edit colour, width, height, legend, grid, switch between straight/curved lines and more, edit ‘linechart1’ on homepage (for some changes, you will need to edit series settings).

 

Releases

Version: 1.0.0
Framework Version: 8.11.0
Release Notes: Main functionality Version 1.0.0