Cargando…
A Parallel Architecture for the Partitioning around Medoids (PAM) Algorithm for Scalable Multi-Core Processor Implementation with Applications in Healthcare
Clustering is the most common method for organizing unlabeled data into its natural groups (called clusters), based on similarity (in some sense or another) among data objects. The Partitioning Around Medoids (PAM) algorithm belongs to the partitioning-based methods of clustering widely used for obj...
Autores principales: | , , , , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
MDPI
2018
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6308709/ https://www.ncbi.nlm.nih.gov/pubmed/30477277 http://dx.doi.org/10.3390/s18124129 |
_version_ | 1783383252669562880 |
---|---|
author | Mushtaq, Hassan Khawaja, Sajid Gul Akram, Muhammad Usman Yasin, Amanullah Muzammal, Muhammad Khalid, Shehzad Khan, Shoab Ahmad |
author_facet | Mushtaq, Hassan Khawaja, Sajid Gul Akram, Muhammad Usman Yasin, Amanullah Muzammal, Muhammad Khalid, Shehzad Khan, Shoab Ahmad |
author_sort | Mushtaq, Hassan |
collection | PubMed |
description | Clustering is the most common method for organizing unlabeled data into its natural groups (called clusters), based on similarity (in some sense or another) among data objects. The Partitioning Around Medoids (PAM) algorithm belongs to the partitioning-based methods of clustering widely used for objects categorization, image analysis, bioinformatics and data compression, but due to its high time complexity, the PAM algorithm cannot be used with large datasets or in any embedded or real-time application. In this work, we propose a simple and scalable parallel architecture for the PAM algorithm to reduce its running time. This architecture can easily be implemented either on a multi-core processor system to deal with big data or on a reconfigurable hardware platform, such as FPGA and MPSoCs, which makes it suitable for real-time clustering applications. Our proposed model partitions data equally among multiple processing cores. Each core executes the same sequence of tasks simultaneously on its respective data subset and shares intermediate results with other cores to produce results. Experiments show that the computational complexity of the PAM algorithm is reduced exponentially as we increase the number of cores working in parallel. It is also observed that the speedup graph of our proposed model becomes more linear with the increase in number of data points and as the clusters become more uniform. The results also demonstrate that the proposed architecture produces the same results as the actual PAM algorithm, but with reduced computational complexity. |
format | Online Article Text |
id | pubmed-6308709 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2018 |
publisher | MDPI |
record_format | MEDLINE/PubMed |
spelling | pubmed-63087092019-01-04 A Parallel Architecture for the Partitioning around Medoids (PAM) Algorithm for Scalable Multi-Core Processor Implementation with Applications in Healthcare Mushtaq, Hassan Khawaja, Sajid Gul Akram, Muhammad Usman Yasin, Amanullah Muzammal, Muhammad Khalid, Shehzad Khan, Shoab Ahmad Sensors (Basel) Article Clustering is the most common method for organizing unlabeled data into its natural groups (called clusters), based on similarity (in some sense or another) among data objects. The Partitioning Around Medoids (PAM) algorithm belongs to the partitioning-based methods of clustering widely used for objects categorization, image analysis, bioinformatics and data compression, but due to its high time complexity, the PAM algorithm cannot be used with large datasets or in any embedded or real-time application. In this work, we propose a simple and scalable parallel architecture for the PAM algorithm to reduce its running time. This architecture can easily be implemented either on a multi-core processor system to deal with big data or on a reconfigurable hardware platform, such as FPGA and MPSoCs, which makes it suitable for real-time clustering applications. Our proposed model partitions data equally among multiple processing cores. Each core executes the same sequence of tasks simultaneously on its respective data subset and shares intermediate results with other cores to produce results. Experiments show that the computational complexity of the PAM algorithm is reduced exponentially as we increase the number of cores working in parallel. It is also observed that the speedup graph of our proposed model becomes more linear with the increase in number of data points and as the clusters become more uniform. The results also demonstrate that the proposed architecture produces the same results as the actual PAM algorithm, but with reduced computational complexity. MDPI 2018-11-25 /pmc/articles/PMC6308709/ /pubmed/30477277 http://dx.doi.org/10.3390/s18124129 Text en © 2018 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/). |
spellingShingle | Article Mushtaq, Hassan Khawaja, Sajid Gul Akram, Muhammad Usman Yasin, Amanullah Muzammal, Muhammad Khalid, Shehzad Khan, Shoab Ahmad A Parallel Architecture for the Partitioning around Medoids (PAM) Algorithm for Scalable Multi-Core Processor Implementation with Applications in Healthcare |
title | A Parallel Architecture for the Partitioning around Medoids (PAM) Algorithm for Scalable Multi-Core Processor Implementation with Applications in Healthcare |
title_full | A Parallel Architecture for the Partitioning around Medoids (PAM) Algorithm for Scalable Multi-Core Processor Implementation with Applications in Healthcare |
title_fullStr | A Parallel Architecture for the Partitioning around Medoids (PAM) Algorithm for Scalable Multi-Core Processor Implementation with Applications in Healthcare |
title_full_unstemmed | A Parallel Architecture for the Partitioning around Medoids (PAM) Algorithm for Scalable Multi-Core Processor Implementation with Applications in Healthcare |
title_short | A Parallel Architecture for the Partitioning around Medoids (PAM) Algorithm for Scalable Multi-Core Processor Implementation with Applications in Healthcare |
title_sort | parallel architecture for the partitioning around medoids (pam) algorithm for scalable multi-core processor implementation with applications in healthcare |
topic | Article |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6308709/ https://www.ncbi.nlm.nih.gov/pubmed/30477277 http://dx.doi.org/10.3390/s18124129 |
work_keys_str_mv | AT mushtaqhassan aparallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT khawajasajidgul aparallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT akrammuhammadusman aparallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT yasinamanullah aparallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT muzammalmuhammad aparallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT khalidshehzad aparallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT khanshoabahmad aparallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT mushtaqhassan parallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT khawajasajidgul parallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT akrammuhammadusman parallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT yasinamanullah parallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT muzammalmuhammad parallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT khalidshehzad parallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare AT khanshoabahmad parallelarchitectureforthepartitioningaroundmedoidspamalgorithmforscalablemulticoreprocessorimplementationwithapplicationsinhealthcare |