Data Classification With Multiprocessing
Anuja Dixit Shreya Byreddy Guanqun Song Ting Zhu
Classification is one of the most important tasks in Machine Learning (ML)
and with recent advancements in artificial intelligence (AI) it is important to
find efficient ways to implement it. Generally, the choice of classification
algorithm depends on the data it is dealing with, and accuracy of the algorithm
depends on the hyperparameters it is tuned with. One way is to check the
accuracy of the algorithms by executing it with different hyperparameters
serially and then selecting the parameters that give the highest accuracy to
predict the final output. This paper proposes another way where the algorithm
is parallelly trained with different hyperparameters to reduce the execution
time. In the end, results from all the trained variations of the algorithms are
ensembled to exploit the parallelism and improve the accuracy of prediction.
Python multiprocessing is used to test this hypothesis with different
classification algorithms such as K-Nearest Neighbors (KNN), Support Vector
Machines (SVM), random forest and decision tree and reviews factors affecting
parallelism. Ensembled output considers the predictions from all processes and
final class is the one predicted by maximum number of processes. Doing this
increases the reliability of predictions. We conclude that ensembling improves
accuracy and multiprocessing reduces execution time for selected algorithms.