ارائه مدلی برای انتخاب ویژگی در پیش بینی خطاهای نرم افزار مبتنی بر الگوریتم ممتیک و منطق فازی

نوع مقاله : مقاله پژوهشی

نویسندگان

1 دانشجوی کارشناسی ارشد، دانشکده کامپیوتر، دانشگاه جامع امام حسین(ع)، تهران، ایران

2 استادیار، دانشگاه جامع امام حسین (ع)، تهران، ایران

3 پژوهشگر، دانشگاه سمنان، سمنان، ایران

چکیده

امروزه به‌دلیل هزینه‌های بالا، انجام آزمون جامع و کامل بر روی تمامی بخش‌های نرم‌افزاری امکان‌پذیر نیست. اما اگر بخش‌های مستعدخطا قبل از انجام آزمون شناسایی شوند، می‌توان تمرکز اصلی آزمون را بر روی این بخش‌ها قرار داد که منجر به صرفه‌جویی در هزینه‌ها می‌شود. شناسایی بخش‌های مستعدخطا، هدف اصلی پیش‌بینی خطا در نرم‌افزار است. یک مدل پیش‌بینی‌کننده، بخش‌های نرم‌افزاری به همراه ویژگی‌های آن‌ها را به عنوان ورودی دریافت کرده و پیش‌بینی می‌کند که کدام یک از آن‌ها مستعدخطا هستند. معمولا برای ساخت این مدل‌ها از فنون یادگیری ماشین استفاده می‌شود که عملکرد این فنون، بسیار وابسته به مجموعه داده آموزشی است. مجمعه داده آموزشی معمولا دارای ویژگی‌های نرم‌افزاری زیادی است که برخی از آن‌ها نامرتبط و یا افزونه بوده و حذف این ویژگی‌ها با استفاده از روش‌های انتخاب ویژگی انجام می‌گردد. در این تحقیق، روش جدیدی برای انتخاب ویژگی مبتنی بر پوشش ارائه شده که از الگوریتم ممتیک، تکنیک جنگل تصادفی و معیار جدید مبتنی بر سیستم استنتاج فازی استفاده می‌کند. نتایج بررسی نشان می‌دهد که معیار ارزیابی فازی ارائه شده، عملکرد بهتری را نسبت به معیارهای موجود داشته و باعث بهبود کارایی انتخاب ویژگی می‌شود. هدف نهایی این تحقیق، رسیدن به یک مدل قدرتمند پیش‌بینی‌کننده خطاهای نرم‌افزاری با کارایی بالا بودهو نتایج مقایسه نشان می‌دهد که مدل ارائه شده، دارای عملکرد و کارایی بالاتری نسبت به دیگر مدل‌ها است.

کلیدواژه‌ها


[1]     N. Rajkumar and C. Viji, “An Efficient Software Fault Prediction Scheme to Assure Qualified Software Implementation using Improved Classification Methods,” International Journal of Innovative Technology and Exploring Engineering (IJITEE), vol. 8, no. 8S, 2019.##
[2]     J. Goyal and B. Kishan, “Progress on Machine Learning Techniques for Software Fault Prediction,” International Journal of Advanced Trends in Computer Science and Engineering, vol. 8, 2019.##
[3]     H. Turabieh, M. Mafarja, and X. Li, “Iterated feature selection algorithms with layered recurrent neural network for software fault prediction,” Expert systems with applications, vol. 122, pp. 27-42, 2019.##
[4]     M. Babamir and F. Karimian, “Evaluation of Classifiers in Software Fault-Proneness Prediction,” Journal of AI and Data Mining, vol. 5, 2017.##
[5]     Y. Jian, X. Yu, Z. Xu, and Z. Ma, “A Hybrid Feature Selection Method for Software Fault Prediction,” IEICE Transactions on Information and Systems, vol. 102, no. 10, pp. 1966-1975, 2019.##
[6]     R. Moussa and D. Azar, “A PSO-GA approach targeting fault-prone software modules,” Journal of Systems and Software, vol. 132, pp. 41-49, 2017.##
[7]     L. Kumar, S. K. Sripada, A. Sureka, and S. K. Rath, “Effective fault prediction model developed using least square support vector machine (LSSVM),” Journal of Systems and Software, vol. 137, pp. 686-712, 2018.##
[8]     S. Wang and X. Yao, “Using class imbalance learning for software defect prediction,” IEEE Transactions on Reliability, vol. 62, no. 2, pp. 434-443, 2013.##
[9]     A. Abu Zaher, R. Berretta, N. Noman, and P. Moscato, “An adaptive memetic algorithm for feature selection using proximity graphs,” Computational Intelligence, vol. 35, no. 1, pp. 156-183, 2019.##
[10]   K. Gao, T. M. Khoshgoftaar, H. Wang, and N. Seliya, “Choosing software metrics for defect prediction: an investigation on feature selection techniques,” Software: Practice and Experience, vol. 41, no. 5, pp. 579-606, 2011.##
[11]   X.-Y. Liu, Y. Liang, S. Wang, Z.-Y. Yang, and H.-S. Ye, “A hybrid genetic algorithm with wrapper-embedded approaches for feature selection,” IEEE Access, vol. 6, pp. 22863-22874, 2018.##
[12]   Z. Zhu, Y.-S. Ong, and M. Dash, “Wrapper–filter feature selection algorithm using a memetic framework,” IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics), vol. 37, no. 1, pp. 70-76, 2007.##
[13]   E. Elakkiya and S. Selvakumar, “GAMEFEST: Genetic Algorithmic Multi Evaluation measure based FEature Selection Technique for social network spam detection,” Multimedia Tools and Applications, pp. 1-33, 2019.##
[14]   M. Ghosh, S. Begum, R. Sarkar, D. Chakraborty, and U. Maulik, “Recursive memetic algorithm for gene selection in microarray data,” Expert Systems with Applications, vol. 116, pp. 172-185, 2019.##
[15]   S. C. Yusta, “Different metaheuristic strategies to solve the feature selection problem,” Pattern Recognition Letters, vol. 30, no. 5, pp. 525-534, 2009.##
[16]   A. Tharwat, “Classification assessment methods,” Applied Computing and Informatics, 2020.##
[17]   S. Chatterjee and B. Maji, “A Mahalanobis distance based algorithm for assigning rank to the predicted fault prone software modules,” Applied Soft Computing, vol. 70, pp. 764-772, 2018.##
[18]   L. A. Zadeh, “Fuzzy sets,” Information and control, vol. 8, no. 3, pp. 338-353, 1965.##
[19]   E. Erturk and E. A. Sezer, “Iterative software fault prediction with a hybrid approach,” Applied Soft Computing, vol. 49, pp. 1020-1033, 2016.##
[20]   Y. L. S. Rani, V. Sucharita, D. Bhattacharyya, and H.-J. Kim, “Performance evaluation of feature selection methods on large dimensional databases,” International Journal of Database Theory and Application, vol. 9, no. 9, pp. 75-82, 2016.##
[21]   H. Faris et al., “An efficient binary salp swarm algorithm with crossover scheme for feature selection problems,” Knowledge-Based Systems, vol. 154, pp. 43-67, 2018.##
[22]   I. Tumar, Y. Hassouneh, H. Turabieh, and T. Thaher, “Enhanced binary moth flame optimization as a feature selection algorithm to predict software fault prediction,” IEEE Access, vol. 8, pp. 8041-8055, 2020.##
[23]   R. Shatnawi, “The application of ROC analysis in threshold identification, data imbalance and metrics selection for software fault prediction,” Innovations in Systems and Software Engineering, vol. 13, no. 2-3, pp. 201-217, 2017.##
[24]   M. M. Kabir, M. Shahjahan, and K. Murase, “A new local search based hybrid genetic algorithm for feature selection,” Neurocomputing, vol. 74, no. 17, pp. 2914-2928, 2011.##
[25]   J. Lee, I. Yu, J. Park, and D.-W. Kim, “Memetic feature selection for multilabel text categorization using label frequency difference,” Information Sciences, vol. 485, pp. 263-280, 2019.##
[26]   B. Chakraborty, “Feature subset selection by particle swarm optimization with fuzzy fitness function,” in 2008 3rd international conference on intelligent system and knowledge engineering, vol. 1: IEEE, pp. 1038-1042, 2008.##
[27]   M. Bardamova, A. Konev, I. Hodashinsky, and A. Shelupanov, “A fuzzy classifier with feature selection based on the gravitational search algorithm,” Symmetry, vol. 10, no. 11, p. 609, 2018.##
[28]   B. Chakraborty and A. Kawamura, “A new penalty-based wrapper fitness function for feature subset selection with evolutionary algorithms,” Journal of Information and Telecommunication, vol. 2, no. 2, pp. 163-180, 2018.##
[29]   A. Kalsoom, M. Maqsood, M. A. Ghazanfar, F. Aadil, and S. Rho, “A dimensionality reduction-based efficient software fault prediction using Fisher linear discriminant analysis (FLDA),” The Journal of Supercomputing, vol. 74, no. 9, pp. 4568-4602, 2018.##
[30]   I. Guyon, J. Weston, S. Barnhill, and V. Vapnik, “Gene selection for cancer classification using support vector machines,” Machine learning, vol. 46, no. 1-3, pp. 389-422, 2002.##
[31]   B. Xue, M. Zhang, and W. N. Browne, “Particle swarm optimization for feature selection in classification: A multi-objective approach,” IEEE transactions on cybernetics, vol. 43, no. 6, pp. 1656-1671, 2012.##
[32]   L.-Y. Chuang, H.-W. Chang, C.-J. Tu, and C.-H. Yang, “Improved binary PSO for feature selection using gene expression data,” Computational Biology and Chemistry, vol. 32, no. 1, pp. 29-38, 2008.##
[33]   P. Patchaiammal  and R. Thirumalaiselvi, “Genetic Evolutionary Learning Fitness Function (GELFF) for Feature Diagnosis to Software Fault Prediction,” International Journal of Innovative Technology and Exploring Engineering (IJITEE), vol. 8, no. 11S, 2019.##
[34]   P. Bermejo, J. A. Gámez, and J. M. Puerta, “Speeding up incremental wrapper feature subset selection with Naive Bayes classifier,” Knowledge-Based Systems, vol. 55, pp. 140-147, 2014.##
[35]   C. Pascoal, M. R. Oliveira, A. Pacheco, and R. Valadas, “Theoretical evaluation of feature selection methods based on mutual information,” Neurocomputing, vol. 226, pp. 168-181, 2017.##
[36]   M. Khonji, A. Jones, and Y. Iraqi, “An empirical evaluation for feature selection methods in phishing email classification,” International Journal of Computer Systems Science & Engineering, vol. 28, no. 1, pp. 37-51, 2013.##
[37]   C. A. Kumar, M. Sooraj, and S. Ramakrishnan, “A comparative performance evaluation of supervised feature selection algorithms on microarray datasets,” Procedia computer science, vol. 115, pp. 209-217, 2017.##
[38]   I. H. Laradji, M. Alshayeb, and L. Ghouti, “Software defect prediction using ensemble learning on selected features,” Information and Software Technology, vol. 58, pp. 388-402, 2015.##
[39]   G. Kou, P. Yang, Y. Peng, F. Xiao, Y. Chen, and F. E. Alsaadi, “Evaluation of feature selection methods for text classification with small datasets using multiple criteria decision-making methods,” Applied Soft Computing, vol. 86, p. 105836, 2020.##
[40]   J. Huang and C. X. Ling, “Using AUC and accuracy in evaluating learning algorithms,” IEEE Transactions on knowledge and Data Engineering, vol. 17, no. 3, pp. 299-310, 2005.##
[41]   S. Chatterjee and B. Maji, “A new fuzzy rule based algorithm for estimating software faults in early phase of development,” Soft Computing, vol. 20, no. 10, pp. 4023-4035, 2016.##
[42]   J. N. Mandrekar, “Receiver operating characteristic curve in diagnostic test assessment,” Journal of Thoracic Oncology, vol. 5, no. 9, pp. 1315-1316, 2010.##
[43]   P. Cingolani and J. Alcalá-Fdez, “jFuzzyLogic: a java library to design fuzzy logic controllers according to the standard for fuzzy control programming,” International Journal of Computational Intelligence Systems, vol. 6, no. sup1, pp. 61-75, 2013.##
[44]   M. Shepperd, Q. Song, Z. Sun, and C. Mair, “Data quality: Some comments on the nasa software defect datasets,” IEEE Transactions on Software Engineering, vol. 39, no. 9, pp. 1208-1215, 2013.##
دوره 9، شماره 3 - شماره پیاپی 35
شماره پیاپی 35، فصلنامه پاییز
آذر 1400
صفحه 143-163
  • تاریخ دریافت: 14 بهمن 1399
  • تاریخ بازنگری: 25 فروردین 1400
  • تاریخ پذیرش: 08 خرداد 1400
  • تاریخ انتشار: 01 آذر 1400