## 2 Operation Principle of the Proposed NN-Based Equalization Scheme  
Due to the strong linear and nonlinear abstract ability of neural networks, they can be used to restore kinds of signal distortion in optical fibers during the transmission through proper training. The schematic structure of the proposed NN-based equalizer is shown in Figure 1. It is a three-layer fully-connected network that consists of an input layer, two hidden layers and an output layer. Every circle is known as a neuron. Each neuron of the input layer represents a data sample, which is a vector of one-dimension data here. Each line denotes a multiplier that multiplies the output of the previous layer by the corresponding weight. Each neuron of the hidden layer and the output layer is a computing unit with summation and activation functions. The concrete relationship that lines and neurons represent can be expressed as:  
\[y=f(\sum\
olimits_{i=1}^{n}w_{i}x_{i}+b) \tag{1}\]  
where \(x_{i}\) is the neuron of the previous layer, \(y\) is the neuron of the subsequent layer, \(\omega_{i}\) is the corresponding weight, and parameter \(b\) is the bias. Though the bias is not plotted in the structure, it exists by default, as the essential unit only contains storage and always stores a value of 1. The bias unit is connected to all nodes in the next layer but has no input. \(f(\cdot)\) is an activation function that realizes nonlinearity modeling. The activation function of hidden layers is sigmoid here, while the output activation is purelin, as expressed below:  
\[\textit{sigmoid}(x)=\frac{1}{1+e^{-x}},\textit{ purelin}(x)=x \tag{2}\]  
Figure 1: The proposed neural network (NN)-based equalizer’s structure. It can be found that the linear equalizer used in the traditional DFE is similar to the neural network equalization. However, there are differences in offset, hidden layer, and activation function. For example, the expression of feed forward equalization (FFE) can be expressed as:  
\[y(n)=\sum\
olimits_{i=-k}^{k}\omega_{i}x(n+i) \tag{3}\]  
where \(x(n)\) is the \(n\)-th received symbol, \(y(n)\) is the corresponding output signal, and \(\omega_{i}\) is the weight for each sample in the sequence. Compared with Formula (1), there is no activation function and bias. The output here is the result of equalization, while the output of Formula (1) is the input of the hidden layer. This means DFE lacks the ability to overcome nonlinearities. The steps of neural network equalization are as follows. The received data X(n) after resampling and timing recovery is firstly preprocessed before feeding the input of the NN. As is shown in Figure 2a, X(n) is delayed to several vectors of data. The number of delays is considered a delay tap. Delay span denotes the number of symbols during one delay operation. These vectors of data are then merged into a set of high dimensional data. Data from each dimension are input to the NN at the same time. Figure 2b shows the flow chart of the proposed algorithm and depicts the process of the training stage. Firstly, the weights and bias are initialized, and the convergence conditions of the NN are set. The weights obey a normal distribution with a mean of 0, a variance of 1, and a bias of 1. The number of iterations is 10. The convergence condition is that the value of mean-square error (MSE) is less than 0.0001. The correct target data S(n) are the output of the NN that come from the timing recovery. The NN estimates the target $(n) from input by initial parameters. The MSE between $(n) and S(n) is calculated and then reduced by the update of the NN. When the neural network satisfies the preset convergence conditions, the algorithm jumps out of this cycle, indicating the completion of the training stage for NN equalization. Before the test stage, the data are preprocessed in the same way as the training stage. During the test stage, the data after preprocessing are fed to the trained NN, and the output of the NN are the equalized data.