Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Parallel architectures for the kNN classifier -- design of soft IP cores and FPGA implementations

Published: 30 September 2013 Publication History

Abstract

We designed a variety of k-nearest-neighbor parallel architectures for FPGAs in the form of parameterizable soft IP cores. We show that they can be used to solve large classification problems with thousands of training vectors, or thousands of vector dimensions using a single FPGA, and achieve very high throughput. They can be used to flexibly synthesize architectures that also cover: 1NN classification (vector quantization), multishot queries (with different k), LOOCV cross-validation, and compare favorably to GPU implementations. To the best of our knowledge this is the first attempt to design flexible IP cores for the popular kNN classifier.

References

[1]
Bennett, K. P. and Mangasarian, O. L. 1992. Robust linear programming discrimination of two linearly inseparable sets. Optimiz. Methods Softw. 1, 23--34.
[2]
Breast Cancer Dataset. 2010. archive.ics.uci.edu/ml/datasets/Breast+Cancer+Wisconsin+(Diagnostic).
[3]
Breast Cancer Dataset. 1992. http://archive.ics.uci.edu/ml/datasets/Breast+Cancer+Wisconsin+%28 Original%29.
[4]
Cappello, P., Davidson, G., Gersho, A., Koc, C., and Somayazulu, V. 1986. A systolic vector quantization processor for real-time speech coding. In Proceedings of the IEEE International Conference on Acoustic, Speech and Signal Processing. 2143--2146.
[5]
Chen, Y. A., Lin, Y. L., and Chang, L. W. 1992. A systolic algorithm for the k - nearest neighbors problem. IEEE Trans. Comput. 41, 103--108.
[6]
Core Generator Tool. 2008. Xilinx user guide. http://www.xilinx.com/itp/xilinx6/books/docs/cgn/cgn.pdf.
[7]
Duda, R. O., Hart, P. E., and Stork, D. G. 2000. Pattern Classification. Wiley-Interscience.
[8]
Garcia, V., Debreuve, E., and Barlaud, M. 2008. Fast k nearest neighbor search using gpu. In Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops. 1--6.
[9]
Jones, H. D., Powell, A., Bouganis, C. S., and Cheung, Y. K. P. 2010. GPU versus fpga for high productivity computing. In Proceedings of the International Conference on Field Programmable Logic and Applications. 119--124.
[10]
Kestur, S., Davis, D. J., and Williams, O. 2010. BLAS comparison on fpga, cpu and gpu. In Proceedings of the IEEE Annual Symposium on VLSI. 288--293.
[11]
Kung, S. Y. 1988. VLSI Array Processors. Prentice Hall.
[12]
Kurgan, L. A., Cios, K. J., Tadeusiewicz, R., Ogiela, M., and Goodenday, L. S. 2001. Knowledge discovery approach to automated cardiac spect diagnosis. Artif. Intell. Med. 23, 149--169.
[13]
Kwai, D. M. and Parhami, B. 2001. Scalable linear array architecture with data-driven control for ultrahigh speed vector quantization. J. VLSI Signal Process. Syst. 28, 235--243.
[14]
Liu, J., Li, B., and Liang, D. 2007. Design and implementation of fpga-based modified bknn classifier. Int. J. Comput. Sci. Netw. Secur. 7, 67--71.
[15]
Lucas, S. M. 1998. A fast exact parallel implementation of the k-nearest neighbor pattern classifier. In Proceedings of the IEEE World Congress on Computational Intelligence. 1867--1872.
[16]
Mangasarian, O. L., Setiono, R., and Wolberg, W. H. 1990. Pattern recognition via linear programming: Theory and application to medical diagnosis. In Large-Scale Numerical Optimization, T. F. Coleman and Y. Li, Eds., SIAM Publications, Philadelphia, PA, 22--30.
[17]
Manolakos, E. S. and Logaras, E. 2007. High throughput systolic som ip core for fpgas. In Proceedings of the IEEE International Conference on Acoustic, Speech and Signal Processing. II-61-II-64.
[18]
Manolakos, E. S. and Stamoulias, I. 2010. IP-cores design for the knn classifier. In Proceedings of the IEEE International Symposium on Circuits and Systems. 4133--4136.
[19]
Spectf. 2010. Heart dataset. http://archive.ics.uci.edu/ml/datasets/SPECTF+Heart.
[20]
Stokes, L. M. 2007. A brief look at fpgas, gpus and cell processors. Int. Test Eval. Assoc. J. 28, 2, 9--11.
[21]
Tahir, M. A. and Bouridane, A. 2006. An fpga based coprocessor for cancer classification using nearest neighbor classifier. In Proceedings of the IEEE International Conference on Acoustic, Speech and Signal Processing.
[22]
Tahir, M. A., Bouridane, A., Kurugollu, F., and Amira, A. 2005. A novel prostate cancer classification technique using intermediate memory tabu search. EURASIP J. Appl. Signal Process. 14, 2241--2249.
[23]
Thomas, D. B., Howes, L., and Luk, W. 2009. A comparison of cpus, gpus, fpgas, and massively parallel processor arrays for random number generation. In Proceeding of the ACM/SIGDA International Symposium on Field Programmable Gate Arrays. 63--72.
[24]
Wolberg, W. H. and Mangasarian, O. L. 1990. Multisurface method of pattern separation for medical diagnosis applied to breast cytology. Proc. Nat. Acad. Sci. 9193--9196.
[25]
Xilinx Power Tools Tutorial. 2010. http://www.xilinx.com/support/documentation/sw_manuals/xilinx11/ug733.pdf.
[26]
Xst. 2008. User guide 10.1. www.xilinx.com.
[27]
Yeh, Y. J., Li, H. Y., Hwang, W. J., and Fang, C. Y. 2007. FPGA implementation of k-nn classifier based on wavelet transform and partial distance. In Proceedings of the Scandinavian Conference on Image Analysis. 512--521.

Cited By

View all
  • (2024)CuMONITOR: Continuous Monitoring of Microarchitecture for Software Task Identification and ClassificationDigital Threats: Research and Practice10.1145/36528615:3(1-22)Online publication date: 28-Mar-2024
  • (2024)Optimized k-Nearest neighbors search implementation on resource-constrained FPGA platformsMicroprocessors and Microsystems10.1016/j.micpro.2024.105089109(105089)Online publication date: Sep-2024
  • (2024)Machine learning algorithms for FPGA Implementation in biomedical engineering applications: A reviewHeliyon10.1016/j.heliyon.2024.e2665210:4(e26652)Online publication date: Feb-2024
  • Show More Cited By

Index Terms

  1. Parallel architectures for the kNN classifier -- design of soft IP cores and FPGA implementations

        Recommendations

        Comments

        Information & Contributors

        Information

        Published In

        cover image ACM Transactions on Embedded Computing Systems
        ACM Transactions on Embedded Computing Systems  Volume 13, Issue 2
        Special issue on application-specific processors
        September 2013
        254 pages
        ISSN:1539-9087
        EISSN:1558-3465
        DOI:10.1145/2514641
        Issue’s Table of Contents
        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Journal Family

        Publication History

        Published: 30 September 2013
        Accepted: 01 March 2012
        Revised: 01 September 2011
        Received: 01 February 2011
        Published in TECS Volume 13, Issue 2

        Permissions

        Request permissions for this article.

        Check for updates

        Author Tags

        1. Architectures
        2. VLSI array architectures
        3. classification
        4. embedded systems design
        5. k-nearest-neighbor classifier
        6. soft IP cores

        Qualifiers

        • Research-article
        • Research
        • Refereed

        Contributors

        Other Metrics

        Bibliometrics & Citations

        Bibliometrics

        Article Metrics

        • Downloads (Last 12 months)28
        • Downloads (Last 6 weeks)0
        Reflects downloads up to 15 Oct 2024

        Other Metrics

        Citations

        Cited By

        View all
        • (2024)CuMONITOR: Continuous Monitoring of Microarchitecture for Software Task Identification and ClassificationDigital Threats: Research and Practice10.1145/36528615:3(1-22)Online publication date: 28-Mar-2024
        • (2024)Optimized k-Nearest neighbors search implementation on resource-constrained FPGA platformsMicroprocessors and Microsystems10.1016/j.micpro.2024.105089109(105089)Online publication date: Sep-2024
        • (2024)Machine learning algorithms for FPGA Implementation in biomedical engineering applications: A reviewHeliyon10.1016/j.heliyon.2024.e2665210:4(e26652)Online publication date: Feb-2024
        • (2022)STPAcc: Structural TI-Based Pruning for Accelerating Distance-Related Algorithms on CPU-FPGA PlatformsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2021.309339441:5(1358-1370)Online publication date: May-2022
        • (2022)Optimized implementation of an improved KNN classification algorithm using Intel FPGA platform: Covid-19 case studyJournal of King Saud University - Computer and Information Sciences10.1016/j.jksuci.2022.04.00634:6(3815-3827)Online publication date: Jun-2022
        • (2021)A Modified KNN Algorithm for High-Performance Computing on FPGA of Real-Time m-QAM DemodulatorsElectronics10.3390/electronics1005062710:5(627)Online publication date: 9-Mar-2021
        • (2021)Enhancing Performance of Gabriel Graph-Based Classifiers by a Hardware Co-Processor for Embedded System ApplicationsIEEE Transactions on Industrial Informatics10.1109/TII.2020.298732917:2(1186-1196)Online publication date: Feb-2021
        • (2020)ParaML: A Polyvalent Multicore Accelerator for Machine LearningIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2019.292752339:9(1764-1777)Online publication date: Sep-2020
        • (2020)Bandwidth Efficient Near-Storage Accelerator for High-Dimensional Similarity Search2020 International Conference on Field-Programmable Technology (ICFPT)10.1109/ICFPT51103.2020.00026(129-138)Online publication date: Dec-2020
        • (2019)kNN-STUFF: kNN STreaming Unit for FpgasIEEE Access10.1109/ACCESS.2019.29558647(170864-170877)Online publication date: 2019
        • Show More Cited By

        View Options

        Get Access

        Login options

        Full Access

        View options

        PDF

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        Media

        Figures

        Other

        Tables

        Share

        Share

        Share this Publication link

        Share on social media