## 3 Sources of Stochastic Noises
### Support Vector Machine (SVM)  
The SVM is placed in the same NLE block as in Figure 3a. In Figure 5b the supervised support vector regressor (SVR)-NLE is shown [28; 30], which in contrast to other versions such as in [27] that only classifies the data (i.e., support vector classifier, SVC), SVR is considered more advanced as it performs both classification and regression and for simplicity is called SVR. It is comprised of \(k\) hidden nodes (support vectors), with each node being associated to each subcarrier \(k\). The procedure of SVR is similar to [28; 30]. In summary, the received symbols for each subcarrier \(x[k]\) are processed by the NLE supported vectors which are scaled by weight values (Lagrange multipliers) for each subcarrier \(w_{k,i}\), after which, the outputs for different \(k\) are summed. The distribution of noisy constellation points is learnt during an initial training process similarly to ANN. Once the distribution is learnt, the detector  
Figure 4: Steps required in the ANN training process [17; 18]. Figure 3: (a) CO-OFDM receiver including non-linear equalization (NLE). (b) Artificial neural network (ANN)-NLE. MMSE: minimum-mean square-error [21; 22]. can make decision for the new unknown observation symbols. A hyperplane is also obtained through approximation of a nonlinear function using a set of Kernels (sigmoid function) of training dataset. SVR maps the data to a high-dimension feature space as shown in Figure 5a, using a nonlinear mapping \(\varphi\) and then linear regression is formulated by introducing the \"\(\varepsilon\)-insensitive\" loss function in the following form \(f(x,w)=\sum\limits_{i=1}^{M}w_{k,i}\varphi_{k,i}(x)+b\), where \(f(x,w)\) is the target linear model, \(\varphi_{k,i}(x)\) denotes a set of nonlinear transformations of input \(x\), and \(b\) is the bias term. The number of vectors in every hidden node is equal to the number of points of the constellation; hence for example for 4-QAM is 4. The \"\(\varepsilon\)-insensitive\" loss function can be learnt through training process by minimizing the error, \(\psi(w,\xi)=\frac{1}{2}\|\ w\ \|^{2}+C\sum\bigl{(}\xi_{k}^{-}+\xi_{k}^{+} \bigr{)}\), where \(\xi_{k}^{-},\xi_{k}^{+}\) are slack variables corresponding to the upper and lower bounds on the output function and \(C\) is the penalty parameter. Depending on how much loss is ignored, the latter equation can be approximated by the Lagrange loss function \(L(y,f(x,w))\). It should be indicated that an unsupervised and faster version of SVM was employed in [31; 33] and [29], respectively. For the unsupervised SVM, the [PERSON]'s and [PERSON] constant modulus algorithm (CMA) cost functions were employed in the penalty term of an SVM-like cost function, being iteratively minimized by re-weighted least squares (IRWLS) [23; 25]. Figure 6 depicts (a) such SVM algorithm in CO-OFDM for blind-NLE (BNLE) operation, and (b) shows the inherent IRWLS pseudocode. In this algorithm, the received OFDM symbols for each subcarrier \(x\{k\}\) are processed by the BNLE which are scaled by the vector of filter coefficients (weights) for each subcarrier \((k)\ w_{k,i}\) (where \(i\) is the symbol) by means of a hybrid maximum likelihood and recursive least-square process [25]. In the IRWLS steps, described in Figure 6b, \(w\) refers to the weights, \(y\) refers to the received symbols (reference sequence), while \(L_{\varepsilon}(e_{i})\) is the loss function, \(C\) a penalty regulation parameter, \(e_{i}\) the penalization term for the \(i\)th symbol, and \(N\)s is the total number of subcarriers. Finally, \(R_{s}\) and \(R_{P}\) refer to the [PERSON]'s and [PERSON]'s constants, respectively. For the fast version of SVM, a Newton SVM was implemented with an architecture as shown in Figure 6c. Newton SVM suppresses the input space features for a nonlinear programming formulation of supervised SVM classifiers. This stand-alone method can handle classification problems in very high dimensional spaces.