Low complexity VLSI architecture for improved primal–dual support vector machine learning core

https://doi.org/10.1016/j.micpro.2023.104806Get rights and content

Abstract

Support Vector Machine (SVM) is an efficient classification tool providing good accuracy and reliability. The primal–dual method is an interior-point method for SVM training with considerable scalability and accuracy. In this paper, an improved primal–dual method for SVM learning is proposed. The proposed primal–dual method offers faster convergence of the SVM learning core by up to 25%, which is made possible by reducing the number of iterations required for obtaining the optimal solution while maintaining its accuracy. We also propose a low-complexity pipelined very large scale integration (VLSI) architecture for implementing the improved primal–dual method both on field-programmable gate array (FPGA) and 65 nm application specific integrated circuit (ASIC) platforms. The computational complexity of the proposed VLSI architecture is independent of the size of the training data and the feature vector.

Introduction

Support vector machine (SVM) is an efficient and popular machine learning tool used for supervised classification. It is a statistical tool for classification with good generalization capacity, higher accuracy, and reliability [1]. Cortes and Vapnik invented SVM in 1993 [2], as an extension of the perceptron learning technique that guarantees a hyperplane separating the data classes for learning. SVM has applications in the fields of medical image analysis [3], handwriting recognition [4], financial engineering [5], face recognition [6], speech recognition [7], bioinformatics [8], text and hypertext categorization [9], prediction [10], [11] and various remote sensing applications including detection and classification of multispectral, hyperspectral, radar data, etc. [12], [13], [14]. SVM classification comprises mainly two stages, training the classifier and testing the incoming data based on the learned model. In the training phase, support vectors are extracted to build a model, classifying an incoming test sample [15]. The memory requirement and computational complexity of SVM are related to the number of training samples/ dataset size, dimensionality, and the number of support vectors. In large-scale classification problems with real-time data, the classification process takes considerable time due to the need for large data throughput [16]. There are several techniques to train the SVM; the most important are decomposition, active set, and interior point methods. The original problem is divided into several sub-problems in decomposition and active set methods, making them easier to solve. The decomposition method optimizes a fixed number of variables at a time. Advantages of this method include using limited memory resources and efficiently dealing with a large dataset compared to traditional SVM training. Sequential minimal optimization (SMO) is the most commonly used and efficient decomposition training method [17]. Library for Support Vector Machines (LIBSVM) [18] and SVMlight [19] are two other commonly used decomposition methods for SVM training. As only a few variables are updated in each iteration, decomposition methods have slow convergence. The active set method is a sequential training technique, primarily targeted for training small and medium-sized problems [20], [21]. Support vector machine-quadratic problem (SVM-QP), support vector machine-revised simplex quadratic problem (SVM-RSQP), and simplex methods [22] are primarily used active set methods. If training time is limited or the data size is large, the active set method may not be efficient. The interior-point method (IPM) efficiently classifies large-scale datasets as it scales efficiently, reducing its computational complexity [23]. It also provides excellent stability, robustness, and good early approximation. The interior point method is suitable for parallel and multicore environments. Classification performance of interior point method for large, noisy and dense data is consistent and accurate. The number of iterations required grow very slowly with the problem dimension [24].
Primal–Dual Support Vector Machine (PDSVM) [25] is a type of interior point methods other than the barrier point method. PDSVM is an SVM training method based on Primal–Dual linear programming applications [26]. PDSVM is preferred over the barrier method due to its accuracy and efficiency [27]. PDSVM is robust in terms of accurate solutions, especially in optimal global solutions. In this method, the number of iterations required grows slowly with an increase in the number of constraints. In PDSVM, both primal and dual information has been utilized to solve quadratic problems with bounded variables [28]. Based on the nature of the constraints, it is solved in its original space itself without the need for transforming them to some other space. This results in saving memory required for computation. PDSVM method is relatively accurate and faster in classifying problems of medium, large size as well as noisy data [27]. The most commonly used SVM training technique is SMO owing to its advantages. PDSVM has better scalability and faster computation than SMO. PDSVM scales better with increased data size as compared to SMO, making it a better SVM training method for medium and larger dataset problems [29].
Real-time classification problems, including medical image analysis, handwriting recognition, face recognition, etc., are primarily of medium or large set data size in nature. Also, in practical applications, larger possible data set is used for learning as the classification accuracy increases with data size. PDSVM is a highly suitable SVM classifier for real-time classification applications.
Field-programmable gate array (FPGA) is an appropriate device for hardware implementation of SVM, owing to its high performance, programming flexibility, and efficiency in achieving a high accuracy rate [30]. FPGA has a similar classification and a better processing time accuracy compared to general purpose central processing unit (CPU). Real-time classification applications commonly require fast hardware support. Computationally complex algorithms like the PDSVM can be easily implemented in FPGA by exploiting the parallelism available in FPGA with reasonable accuracy [31]. Accordingly, various works presenting hardware implementation of SVM in FPGA have been found in the literature [3], [32], [33]. Anguita et al. have done an efficient implementation of kernel based perceptron on fixed-point digital hardware [34]. Very large scale integration (VLSI) architecture of SMO has been discussed in [35]. A multi-class SVM-based recognition system in FPGA has been proposed by Manikandan et al. [36]. However, there is a scarcity of literature discussing dedicated hardware for primal–dual SVM in all hardware platforms, including FPGA. A dedicated classification system based on a primal–dual method can be utilized as a standalone device for machine learning applications. It can also be easily integrated into embedded systems intended for various image analysis applications.
The main contributions of this article are:
  • 1.
    An improved primal–dual SVM learning core with faster convergence is proposed. Faster convergence is achieved by reducing the number of iterations required for obtaining the optimal solution.
  • 2.
    A dedicated low-complexity pipelined VLSI architecture is proposed for the improved PDSVM. The proposed architecture utilizes very few computational components for implementation. Also, its computational complexity is independent of the size of both the data and the feature vector.
  • 3.
    The proposed VLSI architecture is implemented on both FPGA and 65nm application specific integrated circuit (ASIC) platforms. The experimental results on the architecture are presented and compared with the state-of-the-art literature.
The rest of the paper is organized as follows. Section 2 discusses fundamentals of SVM and PDSVM. Section 3 presents an improved primal–dual SVM algorithm. In Section 4, simulation results of the improved PDSVM are discussed. Section 5 presents the hardware implementation of the improved primal–dual SVM method. The implementation results are presented and discussed in Section 6, and conclusions are drawn in Section 7.

Access through your organization

Check access to the full text by signing in through your organization.

Access through your organization

Section snippets

Background

In this section, the fundamentals of both SVM and Primal–dual SVM are discussed. SVM is a supervised classifier with high accuracy and reliability. There are several techniques for training an SVM classifier. The primal–dual SVM is a highly scalable, accurate, and fast computing algorithm, beneficial for medium and large-scale datasets.

Initialization phase

In the initialization phase, an initial support feasible solution is computed. It is used as an input in the optimization phase instead of using an arbitrary support. By using the initial SFS as an input in the optimization phase, the number of iterations required to converge to the optimal solution is reduced to a large extent. The methodological flowchart for proposed improved PDSVM learning core is shown in the Fig. 2.
In the paper [25], an interior point method is used to obtain the initial

Simulation results

In this section, simulation results of the proposed improved PDSVM are discussed. Images from the UCI Machine Learning Repository dataset [39] are used in the simulation of the improved Primal–Dual SVM for binary classification. Simulations have been performed on Intel Core-i7, 3.10 GHz, 8 GB RAM, MATLAB 2015A on 64 bit Windows 10 system. Performance of the improved PDSVM is compared with original PDSVM and SMO in both linear kernel and Gaussian kernel. The Gaussian kernel used is defined as K(x

VLSI architecture of the proposed Primal–Dual SVM learning core

In this section, detailed VLSI architecture of the proposed PDSVM learning core is described. The proposed PDSVM hardware architecture mainly consists of modules such as the initialization block, sub optimality measure computation block, adaptive search direction block, dual direction block, primal and dual step length computational block, optimal step size block, and the final block for all the updations. Here we use signed fixed-point number representation. The training set samples with their

Implementation results

The proposed pipelined VLSI architecture of the improved primal–dual SVM learning core has been implemented in both ASIC and FPGA platforms. The proposed designs for the PDSVM learning core are synthesized with UMC 65 nm libraries using Synopsys Design Compiler. As there are no prior implementations for the PDSVM in the literature, we compare the proposed VLSI implementation results with other SVM training models from the literature. In Table 9, the results of comparing the FPGA synthesis with

Conclusion

An improved primal–dual SVM learning core that increases the speed of training of the SVM model is proposed in this paper. PDSVM is a considerably faster and more accurate SVM approach for large-scale and noisy real-time data. For real-time data classifications, such as the categorization of medical images, it scales better and provides faster computing. The proposed PDSVM learning core succeeds in reducing the number of iterations required for training the model thereby reducing the overall

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
Radhika V. Menon received the B.Tech. degree in Electronics and Communication Engineering from Mahatma Gandhi University, Kottayam, India, in 2009, and the M.Tech. degree in VLSI and Embedded Systems from Govt. Model Engineering College, CUSAT, Kochi, India, in 2012. She is currently pursuing the Ph.D. degree with the Department of Electronics and Electrical Communication Engineering, IIT Kharagpur. Her research interests include VLSI architectures for machine learning and image processing.

References (46)

  • CristianiniN. et al.

    An introduction to support vector machines and other kernel-based learning methods

    (2000)
  • CortesC. et al.

    Support-vector networks

    Mach. Learn.

    (1995)
  • EbrahimzadehR. et al.

    Efficient handwritten digit recognition based on histogram of oriented gradients and SVM

    Int. J. Comput. Appl. Technol.

    (2014)
  • Van GestelT. et al.

    Financial time series prediction using least squares support vector machines within the evidence framework

    IEEE Trans. Neural Netw.

    (2001)
  • OsunaE. et al.

    Training support vector machines: an application to face detection

  • ByvatovE. et al.

    Support vector machine applications in bioinformatics

    Appl. Bioinform.

    (2003)
  • JoachimsT.

    Transductive inference for text classification using support vector machines

  • ZhaoW. et al.

    Applications of support vector machine in genomic prediction in pig and maize populations

    Front. Genet.

    (2020)
  • ChenX. et al.

    Rain detection from X-band marine radar images: A support vector machine-based approach

    IEEE Trans. Geosci. Remote Sens.

    (2019)
  • WangR. et al.

    A support vector regression-based method for target direction of arrival estimation from HF radar data

    IEEE Geosci. Remote Sens. Lett.

    (2018)
  • YanQ. et al.

    Detecting sea ice from TechDemoSat-1 data using support vector machines with feature selection

    IEEE J. Sel. Top. Appl. Earth Obs. Remote Sens.

    (2019)
  • BurgesC.J.

    A tutorial on support vector machines for pattern recognition

    Data Min. Knowl. Discov.

    (1998)
  • NalepaJ. et al.

    Selecting training sets for support vector machines: a review

    Artif. Intell. Rev.

    (2018)
  • Radhika V. Menon received the B.Tech. degree in Electronics and Communication Engineering from Mahatma Gandhi University, Kottayam, India, in 2009, and the M.Tech. degree in VLSI and Embedded Systems from Govt. Model Engineering College, CUSAT, Kochi, India, in 2012. She is currently pursuing the Ph.D. degree with the Department of Electronics and Electrical Communication Engineering, IIT Kharagpur. Her research interests include VLSI architectures for machine learning and image processing.
    Indrajit Chakrabarti (Member, IEEE) received the Ph.D. degree from the Indian Institute of Technology (IIT) Kharagpur, India in 1997. He is currently serving as a Professor in the Department of Electronics and Electrical Communication Engineering, IIT Kharagpur. He has published more than 140 articles in peer-reviewed international journals and conferences. His research interests include VLSI architectures for image and video processing, digital signal processing, error control coding, and wireless communication.
    View full text