## 3 The Research Method Used  
In the conducted research, artificial neural networks were used to divide the considered set of mining companies into similar subsets. Self-organising networks (called Kohonen networks after their creator [22]) were used. They are distinct from the neural networks most commonly used in various studies. While most networks are learnt in the \"with teacher\" mode, the Kohonen network is taught \"without a teacher\". In 'with-teacher' learning, the learning data contain instances describing both input and output variables, whereas in 'without-teacher' learning, only instances involving input variables alone occur. This means that the Kohonen network attempts to learn the structure of the data. Consequently, one possible application of this type of network is exploratory data analysis. A Kohonen network can learn to recognise clusters present in the input data and simultaneously associate similar classes of data together. Thanks to the projection made by the Kohonen network, a better understanding of the data can be gained, which in turn makes it possible to improve the process of further analysis and use of the data--either with the same neural network or with other tools. A Kohonen network makes it possible to carry out classification according to the internal logic of the data itself, rather than based on some arbitrary criteria adopted. The networks in question have only two layers: an input layer and an output layer. The neurons in the output layer, which form the topological map, are considered as if they were distributed in space according to some fixed pattern--usually in the form of a two-dimensional square mesh [25]. Artificial neural networks use a simplified neuron model, which assumes that a weighted sum of input signals is calculated; when it exceeds a threshold level, the signal is fed to the output. The activation function f can be of various forms, such as linear, logistic, hyperbolic tangent, as well as others such as exponential and sine, among others. As noted earlier, SOM networks do not require a target score to be specified. Instead, where the neuron weights are not very different from the input vector (learning data), this area of the network (neuron weights) is modified to be even closer to the class of which the input vector is a member [26]. The idea of SOM networks was proposed by [PERSON], who provided the following algorithm for learning the network [27; 28]:  
1. The weights of the neurons are initialised (random numbers of small value). 2. A vector X containing the learning data is randomly selected from the learning dataset and fed into the input of the network. 3. For each neuron, the Euclidean distance d of its weights W from the drawn vector is calculated. The neuron whose weights are closest is referred to as the Best Matching Unit (BMU). The distance d is determined from the following relation (Equation (1)): \[d_{k}=\sqrt{\sum_{i=1}^{n}\left(\mathbf{X}_{i}-\mathbf{W}_{k,i}\right)^{2}}\text{ for }k=1. 2.\ \ldots.\ N\] (1) where \(n\)--length of the vector of learning data, \(k\)--neuron number and \(N\)--number of neurons. 4. In the next step, the BMU neighbourhood radius \(r\) is calculated. This is a value that decreases with each iteration. It is calculated from the following (Equation (2)): \[r=r_{0}exp\left(-\frac{it-1}{\lambda}\right)\] (2) where \(it\)--iteration number, \(r_{0}\)--initial neighbourhood radius and \(\lambda\)--constant characterising the decrease in radius as a function of iterations. 5. The weights of all neurons within the neighbourhood radius (including the BMU--\(d_{k}<r\)) are modified to be more similar to the input vector. The closer a neuron isto the BMU, the more its weights are modified, according to the following relation (Equation (3)):  
\[\mathbf{W}_{k.il+1}=\mathbf{W}_{k.il}+Ld_{k}(\mathbf{X}-\mathbf{W}_{k.il}) \tag{3}\]
6.