# Prediction Method of Underwater Acoustic Transmission Loss Based on Deep Belief Net Neural Network
## 2 Deep Belief Net (DBN)  
### Principle of DBN Algorithm  
DBN is a generative model of deep learning, which can be used for unsupervised learning and as an autoencoder, and can also be used for supervised learning and used as a classifier. From the perspective of unsupervised learning, its purpose is to retain the characteristics of the original features as much as possible while reducing the dimension of the features; from the perspective of supervised learning, its purpose is to make the classification error rate as small as possible. As the basic building block of DBN, RBM is a probabilistic modeling method based on energy function. It has strong unsupervised learning ability and is a key model in the process of constructing and training DBN. The model performs continuous state transitions on the input features of the sample, so that the model can finally fit the distribution characteristics of the sample set, can learn arbitrarily complex rules in the data, and is suitable for the training and learning of large-scale dynamic data features in complex sea areas. The core of the algorithm is to optimize the connection weights between layers with a layer-by-layer greedy learning algorithm [16; 17; 18]. As shown in Figure 1, each RBM contains a pair of visible layers \((v_{1},\ v_{2},\ldots,v_{m})\) and hidden layer \((h_{1},h_{2},\ldots,h_{n})\), where each layer is connected by a fully connected layer [19] and \(w\) is the weight value of the connection between the two layers. It is a random neural network model without feedback. Suppose that in a restricted Boltzmann machine network, the number of visible units is m, the state of visible units set in a certain layer is represented by a vector \(v\), and the state of hidden units in a certain layer is represented by a vector \(h\). \(V_{i}\) and \(h_{j}\) represent the states of the \(i\) visible unit and the \(j\) hidden unit, respectively. When the state of the nodes in the visible layer and the hidden layer is determined, the energy function of the RBM [20] can be expressed as:  
\[E(v,h|\theta)=-\sum_{i=1}^{n}a_{i}v_{i}-\sum_{j=1}^{m}b_{j}h_{j}-\sum_{i=1}^{n }\sum_{j=1}^{m}v_{i}w_{ij}h_{j} \tag{1}\]  
in which \(\theta=(w,a,b)\) is the parameter of RBM: \(W_{ij}\) is the connection weight between the visible unit \(i\) and the hidden unit \(j\); \(a_{i}\) is the bias of the visible unit \(i\); and \(b_{j}\) is the bias of the hidden unit \(j\). When \(\theta\) is known, since the state of RBM obeys the regular distribution, the joint probability distribution of any set of visible and hidden unit node states \((v,h)\) is:  
\[P(v,h|\theta)=\frac{e^{-E(v,h|\theta)}}{Z(\theta)} \tag{2}\]  
in which, \(Z(\theta)=\sum_{v,h}e^{-E(v,h|\theta)}\) is the normalization factor. Figure 1: Schematic diagram of restricted Boltzmann machine. For the distribution \(P(v|\theta)\) of the input data \(v\), it can be determined by the likelihood function of the joint probability distribution \(P(v,h|\theta)\):  
\[P(v,h|\theta)=\frac{\sum_{h}e^{-E(v)h|\theta)}}{Z(\theta)} \tag{3}\]  
Because the connection between RBM layers is restricted, regardless of whether it is a visible layer or a hidden layer, there is no connection between nodes in the layer, and its activation state is also independent. Therefore, when the visible unit is given, the activation probability of the \(j\) hidden unit is:  
\[P\big{(}h_{j}=1\big{|}h,\theta\big{)}=\delta\Big{(}b_{i}+\sum_{j}h_{ij}W_{ij} \Big{)} \tag{4}\]  
in which, \(\delta(x)=\frac{1}{1+e^{-x}}\) is the sigmoid activation function. Similarly, when the hidden unit is given, the activation probability of the \(i\) visible element is:  
\[P(v_{i}=1\big{|}v,\theta)=\delta\Big{(}a_{j}+\sum_{i}v_{i}W_{ij}\Big{)} \tag{5}\]  
When the state \(v\) of the visible layer node is known, the above formula can be used to calculate \(P(h\,|\,v)\) to determine the state of the hidden layer \(h\); then the state of the visible layer \(V_{1}\) can be obtained by calculating \(P(v\,|\,h)\).