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...

Descripción completa

Detalles Bibliográficos
Autores principales: Mushtaq, Hassan, Khawaja, Sajid Gul, Akram, Muhammad Usman, Yasin, Amanullah, Muzammal, Muhammad, Khalid, Shehzad, Khan, Shoab Ahmad
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