Abstract
Support vector machine (SVM) is considered as one of the most powerful classifiers for hyperspectral remote sensing images. However, it has high computational cost. In this paper, we propose a novel two-level parallel computing framework to accelerate the SVM-based classification by utilizing CUDA and OpenMP. For a binary SVM classifier, the kernel function is optimized on GPU, and then a second-order working set selection (WSS) procedure is employed and optimized especially for GPU to reduce the cost of communication between GPU and host. In addition to the parallel binary SVM classifier on GPU as data-processing level parallelization, a multiclass SVM is addressed by a “one-against-one” approach in OpenMP, and several binary SVM classifiers are run simultaneously to conduct task-level parallelization. The experimental results show that the solver in this framework offered a speedup of $18.5\times$ over the popular LIBSVM software in the training process for data with 200 bands, 13 classes, and 95 597 training samples, and $81.9\times$ in the testing process for data with 103 bands, 9 classes, 1892 support vectors (SVs), and 42 776 testing samples.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
More From: IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.