# A Review of Plant Disease Detection Systems for Farming Applications
## 2 Literature Review: Precision Agriculture Research Developments
### SVM Classifier  
The support vector machine, sometimes known as SVM, is a predictive model used to solve both regression and classification tasks [3]. It is a supervised learning model that works well for numerous practical problems and can solve both linear and non-linear tasks [3; 71]. The SVM concept is relatively simple; a vector or a hyperplane that splits the data into groups is generated by this technique [72]. In Figure 10, the optimal hyperplane is used to separate the two classes of data (the blue squares and green circles). The two planes (dashed lines) parallel to the optimal hyperplane are called the positive and negative imaginary planes, which are the planes passing through the closest data points to either side of an optimal hyperplane [72]. These closest points to the optimal hyperplane are called the support vectors and are used to determine the exact position of an optimal hyperplane [73]. There might be several possible hyperplanes, but the optimal hyperplane is the one with the maximum marginal distance, which is the distance between the two marginal planes [72; 73]. The maximized margin results in a more generalized solution compared to smaller margins; should the training data change, the algorithm with a smaller margin will have accuracy challenges [73]. Insome cases, data classes are not always easily separable with a straight line or place as in the case of Figure 10. Therefore, when data classes show a property of non-linearity, transforming a space in which these data classes occur from a low-dimension (often two-dimensional) into a high-dimension space (often three-dimensional) space using the kernel method. The kernel method is a computation of a dot product of the dimensions in the new high-dimension space [72; 73; 74]; (17) below gives the general solution of a hyperplane, where \(\overset{\rightarrow}{x}\) is any data point or support vector, \(\overset{\rightarrow}{\omega}\) is the weight vector that applies the bias of the support vectors, and \(\omega_{0}\) is the constant [74]. \[\mathrm{g}(\overset{\rightarrow}{x})=\overset{\rightarrow}{\omega}\overset{ \rightarrow}{x}+\omega_{0} \tag{17}\]  
\[\text{and}\ \mathrm{g}(\overset{\rightarrow}{x})=\left\{ \begin{array}{ ll}1,&\text{for Class $1$ vectors}\\ -1,&\text{for Class $2$ vectors}\end{array} \right.\]  
ANN Classifier  
An ANN is a supervised learning model that is a collection of interlinked input and output nodes in which each link has an associated bias value called a weight [75]. A single input layer, one or perhaps more intermediate layers that are normally called hidden layers, and one or more output layers make up the structure of an ANN [75; 76]. The weight of each connection is modulated as the network operates to facilitate neural network learning [76]. The performance of the network is enhanced by adjusting the weight continuously [75]. ANN can be divided into two groups based on connection types: feed-forward networks and recurrent networks [33]. In contrast to recurrent neural networks, feed-forward neural networks do not have cycle-forming connections between units [76]. The architecture, transfer function, and learning rule all have an impact on how a neural network behaves [49; 76]. The weighted total of input triggers the activation of  
Figure 10: SVM classification algorithm [72]. neural network neurons [75]. Figure 11 shows a generalized model of an ANN model with the input layer, the hidden intermediate layer (purple layer), and the output layer. The k-nearest neighbors algorithm, sometimes known as k-NN, is the most straightforward machine learning technique [78]. It is a non-parametric technique used for problems involving regression and classification [74; 78]. Non-parametric implies that no dataset for initial training is necessary [78]. Therefore, k-NN does not require the use of any presumptions [79]. The k-closest training examples in the feature space provide the input for classification and regression tasks, respectively [78].