Predicting is making claims about something that will happen, often based on information from past and from current state.
Everyone solves the problem of prediction every day with various degrees of success. For example weather, harvest, energy consumption, movements of forex (foreign exchange) currency pairs or of shares of stocks, earthquakes, and a lot of other stuff needs to be predicted.
In technical domain predictable parameters of a system can be often expressed and evaluated using equations - prediction is then simply evaluation or solution of such equations. However, practically we face problems where such a description would be too complicated or not possible at all. In addition, the solution by this method could be very complicated computationally, and sometimes we would get the solution after the event to be predicted happened.
It is possible to use various approximations, for example regression of the dependency of the predicted variable on other events that is then extrapolated to the future. Finding such approximation can be also difficult. This approach generally means creating the model of the predicted event.
Neural networks can be used for prediction with various levels of success. The advantage of then includes automatic learning of dependencies only from measured data without any need to add further information (such as type of dependency like with the regression). The neural network is trained from the historical data with the hope that it will discover hidden dependencies and that it will be able to use them for predicting into future. In other words, neural network is not represented by an explicitly given model. It is more a black box that is able to learn something.
It is possible to predict various types of data, however in the rest of this text we will focus on predicting of time series (see figure 1). Time series shows the development of a value in time. Of course, the value can be influenced by also other factors than just time. Time series represents discrete history of a value and from a continuous function it can be obtained using sampling.
Figure 1 - Example of time series