# Soft-Output Detector Using Multi-Layer Perceptron for Bit-Patterned Media Recording
## 3 Proposed Soft-Output Detector Using Multi-Layer Perceptron  
In this section, we describe a design of a soft-output MLP detector. The artificial NN (ANN) has been receiving increased attention as a signal processing tool in communication problems. The MLP, which is a class of ANN, can be applied to solve problems such as two-class classification, multi-class classification, and regression. For regression, the identity function and mean square error are mainly exploited as activation functions in the output layer and loss function to predict a numerical target value. As the input data \(\{-1,\) 1} are used as target values in BPMR, the prediction value of regression is approximately \(\{-1,1\}\), as shown in Figure 2a. Moreover, as the sigmoid function and binary cross-entropy (or categorical cross-entropy) are used as activation functions in the output layer and loss function to solve the binary-class (or multiple-class) classification problem (in which the goal is to predict a discrete label of input data), the classifier that implements binary-class classification classifies input into two classes such as \(\{0,1\}\), as shown in Figure 2b. Thus, as the prediction values are similar to the hard decision value, it is difficult to achieve some decoding gain when conducting error correction coding and modulation coding of the data.  
To predict reliable information similar to the soft decision value and provide it to the decoder, we design the MLP detector. Figure 3 shows the configuration of the MLP detector, which consists of an input layer, hidden layers, and an output layer. The input layer consists of \((2M_{m}+1)\times(2N_{m}+1)\) neurons. For each hidden layer, all neurons include a rectified linear unit (ReLU) as an activation function. The output layer has one neuron with an identity function and the binary cross-entropy is used as the loss function to estimate reliable value. For the MLP detector, we use the user data \(a_{jk}\) as the target value and the readback signal \(\mathbf{r}_{jk}\) as the input sequence of the MLP detector is given as follows:  
Figure 1: Block diagram of BPMR system with the soft output MLP detector.  
Figure 2: The prediction output value: (**a**) regression MLP; (**b**) classification MLP.  
(4)  
We set \(M_{m}=1\) and \(N_{m}=1\) for the MLP detector input sequence. We use batch normalization (BN), which can deal with gradient problems, normalize the input, and scale the result [14]. The BN can be added before or after the activation function. We add the technique after the activation function of all layers. For the initialization of the weights, we use a He initialization, which initializes the weights of all the layers and mitigates gradient problems [15]. Furthermore, to increase the accuracy, we use an ensemble technique, which provides a new prediction by aggregating the predictions from all predictors. The ensemble will help us achieve better results than the best individual predictor by aggregating the predictions of a group of predictors. Adaptive moment estimation (Adam) as an optimizer is used to update the weights of the MLP network and boost the training speed [16]. The MLP detector is designed by [PERSON], which helps to develop deep-learning models [17].