Regression and predictive analytics based on historical database information
Detection and classification of object on images and video streams
For highly complicated and non-linear problems.
We use Convolutional neural networks are for problems related to the classification of data – most often images or video frames. The advantage of convolutional networks is that they are not sensitive to the arrangement of the searched pattern among the input data – i.e. the searched object in the image as other methods.
We implement Decision Trees (DT) when we are to classify data sets that are highly sensitive to changes in parameter values. DTs are particularly useful when among the input data there are variables with a categorical value (e.g. fuel type, plant species) . The process of creating decision trees is significantly different from learning a neural network. Its labor intensity depends on the size of the target tree. Decision trees can also be used for regression, however, the results returned by the decision tree may be highly discontinuous – there may be sudden changes in the result depending on a change in input parameters.
Artificial intelligence / Machine Learning algorithms are available in a wide range of programming libraries available for various platforms. It is worth distinguishing three large libraries that we use for the Python language:
- tensorflow – a library that allows you to implement, among others shallow and deep neural networks and decision trees. It allows you to conduct the training process on the GPU.
- keras – a library that uses tensorflow. It facilitates the use of neural networks and allows you to create your own analytical models. Thanks to tensorflow, it allows you to conduct the training process on the GPU.
- scikit-learn – a library containing a rich set of SI algorithms. It does not support the GPU, but in return provides greater portability between hardware platforms. Thanks to a rich set of algorithms, it allows you to create more sophisticated AI solutions.