FPGA Implementation of a Support Vector Machine Based Classification System and Its Potential Application in Smart Grid

Support Vector Machines (SVMs) is a popular classification and regression prediction tool that uses supervised machine learning theory to maximize the predictive accuracy. This paper focuses on the field programmable gate array (FPGA) implementation of a Support Vector Machine classification system. Owing to the advanced parallel calculation feature provided by FPGA, a fast data classification can be achieved by the FPGA-based two-class SVM classifier. The classification system works both in linear mode and non-linear mode, depending on the dimensions of the classification. Simulated results demonstrate that the classification system is effective in fast data classification, and it is a promising technique for Smart Grid to strengthen its communication security.

[1]  Shun-ichi Amari,et al.  A Theory of Pattern Recognition , 1968 .

[2]  Russell Tessier,et al.  FPGA Architecture: Survey and Challenges , 2008, Found. Trends Electron. Des. Autom..

[3]  V. Vapnik Estimation of Dependences Based on Empirical Data , 2006 .

[4]  Martin Langhammer Floating point datapath synthesis for FPGAs , 2008, 2008 International Conference on Field Programmable Logic and Applications.

[5]  Nello Cristianini,et al.  An Introduction to Support Vector Machines and Other Kernel-based Learning Methods , 2000 .

[6]  William M. Pottenger,et al.  Hardware-based support vector machine classification in logarithmic number systems , 2005, 2005 IEEE International Symposium on Circuits and Systems.

[7]  Rasmus Ulslev Pedersen,et al.  An Embedded Support Vector Machine , 2006, 2006 International Workshop on Intelligent Solutions in Embedded Systems.

[8]  Austin Carpenter,et al.  CUSVM: A CUDA IMPLEMENTATION OF SUPPORT VECTOR CLASSIFICATION AND REGRESSION , 2009 .

[9]  V. Vapnik Pattern recognition using generalized portrait method , 1963 .

[10]  E. Gilbert An Iterative Procedure for Computing the Minimum of a Quadratic Form on a Convex Set , 1966 .

[11]  F.M. Cleveland,et al.  Cyber security issues for Advanced Metering Infrasttructure (AMI) , 2008, 2008 IEEE Power and Energy Society General Meeting - Conversion and Delivery of Electrical Energy in the 21st Century.

[12]  Anupam Basu,et al.  Embedded Support Vector Machine : Architectural Enhancements and Evaluation , 2007, 20th International Conference on VLSI Design held jointly with 6th International Conference on Embedded Systems (VLSID'07).

[13]  Christos-Savvas Bouganis,et al.  A scalable FPGA architecture for non-linear SVM training , 2008, 2008 International Conference on Field-Programmable Technology.

[14]  Narayanan Vijaykrishnan,et al.  A Hardware Efficient Support Vector Machine Architecture for FPGA , 2008, 2008 16th International Symposium on Field-Programmable Custom Computing Machines.

[15]  Vikramaditya R. Jakkula,et al.  Tutorial on Support Vector Machine ( SVM ) , 2011 .

[16]  Srihari Cadambi,et al.  A Massively Parallel FPGA-Based Coprocessor for Support Vector Machines , 2009, 2009 17th IEEE Symposium on Field Programmable Custom Computing Machines.

[17]  Harris Drucker,et al.  Support vector machines for spam categorization , 1999, IEEE Trans. Neural Networks.

[18]  Girisha Garg,et al.  Optimal Kernel Learning for EEG based Sleep Scoring System , 2011 .

[19]  Patrick D. McDaniel,et al.  Security and Privacy Challenges in the Smart Grid , 2009, IEEE Security & Privacy.

[20]  J. Mercer Functions of Positive and Negative Type, and their Connection with the Theory of Integral Equations , 1909 .

[21]  Jason Weston,et al.  Gene Selection for Cancer Classification using Support Vector Machines , 2002, Machine Learning.

[22]  Marta Ruiz-Llata,et al.  FPGA Implementation of Support Vector Machines for 3D Object Identification , 2009, ICANN.

[23]  Anthony Widjaja,et al.  Learning with Kernels: Support Vector Machines, Regularization, Optimization, and Beyond , 2003, IEEE Transactions on Neural Networks.

[24]  Christos-Savvas Bouganis,et al.  Novel Cascade FPGA Accelerator for Support Vector Machines Classification , 2012, IEEE Transactions on Neural Networks and Learning Systems.

[25]  Theocharis Theocharides,et al.  A Parallel Hardware Architecture for Real-Time Object Detection with Support Vector Machines , 2012, IEEE Transactions on Computers.

[26]  Vladimir Cherkassky,et al.  The Nature Of Statistical Learning Theory , 1997, IEEE Trans. Neural Networks.

[27]  Shawn Martin Training support vector machines using Gilbert's algorithm , 2005, Fifth IEEE International Conference on Data Mining (ICDM'05).

[28]  Corinna Cortes,et al.  Support-Vector Networks , 1995, Machine Learning.

[29]  Alexander J. Smola,et al.  Support Vector Method for Function Approximation, Regression Estimation and Signal Processing , 1996, NIPS.

[30]  C. Bennett,et al.  Networking AMI Smart Meters , 2008, 2008 IEEE Energy 2030 Conference.

[31]  Andrea Boni,et al.  Low-Power and Low-Cost Implementation of SVMs for Smart Sensors , 2007, IEEE Transactions on Instrumentation and Measurement.

[32]  Hyeran Byun,et al.  Applications of Support Vector Machines for Pattern Recognition: A Survey , 2002, SVM.

[33]  Conversion and delivery of electrical energy in the 21st century , 2008, 2008 IEEE Power and Energy Society General Meeting - Conversion and Delivery of Electrical Energy in the 21st Century.

[34]  Richard O. Duda,et al.  Pattern classification and scene analysis , 1974, A Wiley-Interscience publication.

[35]  Davide Anguita,et al.  A digital architecture for support vector machines: theory, algorithm, and FPGA implementation , 2003, IEEE Trans. Neural Networks.

[36]  Vladimir Vapnik,et al.  An overview of statistical learning theory , 1999, IEEE Trans. Neural Networks.

[37]  V. Vapnik,et al.  Bounds on Error Expectation for Support Vector Machines , 2000, Neural Computation.

[38]  Patrick Haffner,et al.  Support vector machines for histogram-based image classification , 1999, IEEE Trans. Neural Networks.

[39]  Vladimir N. Vapnik,et al.  The Nature of Statistical Learning Theory , 2000, Statistics for Engineering and Information Science.

[40]  Bernhard Schölkopf,et al.  Comparing support vector machines with Gaussian kernels to radial basis function classifiers , 1997, IEEE Trans. Signal Process..

[41]  Vladimir Vapnik,et al.  Statistical learning theory , 1998 .

[42]  Kurt Keutzer,et al.  Fast support vector machine training and classification on graphics processors , 2008, ICML '08.

[43]  Christos-Savvas Bouganis,et al.  Performance comparison of GPU and FPGA architectures for the SVM training problem , 2009, 2009 International Conference on Field-Programmable Technology.

[44]  Mong-Kai Ku,et al.  Support vector machine FPGA implementation for video shot boundary detection application , 2009, 2009 IEEE International SOC Conference (SOCC).