# Mapping Irrigated and Rainfed Wheat Areas Using Multi-Temporal Satellite Data
## Materials and Methods
### Methods
#### 3.2.5 Classification of SVM  
SVM is a pattern recognition method that can solve pattern recognition problems, such as small sample size, nonlinearity, high dimensionality and local minima [24]. SVM has been widely used in remote sensing studies and can improve classification accuracy as compared to traditional classification methods, such as the maximum likelihood classification [27,56,57]. SVM projects raw input data into a higher dimensional space to enlarge the separability between different classes when they cannot be appropriately separated by a linear hyperplane. This transformation is realized through different kernel functions and training samples, which cause more scatter after projection into a higher dimensional space. Linear, polynomial, radial basis (RBF) and sigmoidal functions are the most commonly-used core functions, and the performance of the classification model is strongly influenced by different kernel functions [58].  
(1) Maximum Margin Hyperplane  
The maximum margin hyperplane is the farthest hyperplane from the training samples. The smallest distance from each training sample to a given hyperplane is regarded as a margin. The maximum margin hyperplane is related to the classification hyperplane that the margin between different classes is the largest [26]. The training samples that define the maximum margin hyperplane make up the support vector, and the other training samples do not contribute to the estimation of the hyperplane position. Accordingly, it is possible to obtain high classification accuracy through SVM using a small number of samples.  
(2) Variable Determination  
Variable determination plays a key role in improving the predictive ability of trained SVMs and ensuring that unknown data can be accurately predicted. The performance of SVMs is mainly influenced by kernel functions. Once the type of kernel functions is selected, variables (such as \(\gamma\)) and the error penalty \(C\), which are closely related to the kernel function, should be carefully chosen to ensure the most satisfactory classification results. A large value of \(C\) corresponds to higher error (_i.e._, overfitting the training sample), which can reduce the generalization capacity. It has been suggested that SVMs show a high degree of robustness to variations in variable values [59].  
Variables (such as \(\gamma\) and \(C\)) related to kernels can be estimated through a grid search, which is similar to an exhaustive search within a solution space [60]. The performance of a \(t\)-fold cross-validation is evaluated by including randomly-generated variables into the classifier. Then, the values of these variables are tuned and the performance is re-evaluated until all of the selected variables are tested. The variable pair (\(\gamma\) and \(C\)) that exhibits the highest cross-validation accuracy is selected.  
(3) \(t\)-Fold Cross-Validation  
During the process of \(t\)-fold cross-validation, training samples are equally divided into a user-defined number of subsets, \(t\). When establishing a SVM classification model, one of the \(t\) subsets is set as a validation sample, and the remaining \(t\)-1 subsets are set as training samples. This process is repeated sequentially until all datasets have been tested. The average error of a \(t\)-trial cross-validation is defined as the classification error. The percentage of correctly classified validation samples is defined as the accuracy. This method can effectively avoid overfitting and less learning, thus resulting in more realistic and accurate classification results compared with the one-trial method.