Handling Imbalance Functional and Non-Functional Software Requirement Classification Based on Machine Learning Algorithms
摘要
In the domain of software engineering, explicit classification of software specifications, including both functional and non-functional categories, is indispensable for attaining optimal efficiency. This study investigates into the implementation of Term Frequency-Inverse Document Frequency (TF-IDF) features with machine learning methods to computerize the classification of textual requirements documents. Various classifiers, comprising k-nearest Neighbor, Decision Tree, Gradient Boosting, LightGBM, CatBoost, Random Forest (RF), Ensemble Stacking, Logistic Regression, and Support Vector Machine (SVM), are applied and assessed on an imbalanced dataset over a combined data oversampling methodology. After moderating the effects of class inequity distribution, the models show significant performance. Comparative analysis exposes that KNN accomplishes optimal accuracy at 72.16% and an F1 score of 69.82%, attaining 100% sensitivity with the use of the original dataset. Conversely, Logistic Regression achieves 79.38% accuracy and a 78.31 F1-score after addressing class imbalances concluded the proposed combined data oversampling method, which integrates SMOTE, ADASYN, and Random Oversampling techniques. Our work highlights the feasibility of automated approaches in software requirements classification. By improving manual efforts, these precise models can assistance in specification analysis and advance development processes.