Abstract
The data mining and machine learning community is often faced with two key problems: working with imbalanced data and selecting the best features for machine learning. This paper presents a process involving a feature selection technique for selecting the important attributes and a data sampling technique for addressing class imbalance. The application domain of this study is software engineering, more specifically, software quality prediction using classification models. When using feature selection and data sampling together, different scenarios should be considered. The four possible scenarios are: (1) feature selection based on original data, and modeling (defect prediction) based on original data; (2) feature selection based on original data, and modeling based on sampled data; (3) feature selection based on sampled data, and modeling based on original data; and (4) feature selection based on sampled data, and modeling based on sampled data. The research objective is to compare the software defect prediction performances of models based on the four scenarios. The case study consists of nine software measurement data sets obtained from the PROMISE software project repository. Empirical results suggest that feature selection based on sampled data performs significantly better than feature selection based on original data, and that defect prediction models perform similarly regardless of whether the training data was formed using sampled or original data
چکیده
جامعه داده کاوی و یادگیری ماشین معمولاً با دو مشکل اصلی مواجه است: کار کردن با داده های نا متوازن و انتخاب بهترین ویژگی ها برای یادگیری ماشین. این مقاله فرایندی را ارائه می کند که شامل یک روش انتخاب ویژگی برای انتخاب ویژگی های مهم و یک روش نمونه برداری از داده برای برطرف کردن عدم توازن کلاس است. دامنه کاربرد این تحقیق، مهندسی نرم افزار به ویژه پیش بینی کیفیت نرم افزار با استفاده از مدل های دسته بندی است. وقتی از انتخاب ویژگی و نمونه برداری داده استفاده می کنیم باید سناریوهای مختلفی را در نظر بگیریم. چهار سناریوی ممکن عبارتند از 1) انتخاب ویژگی بر اساس داده های اصلی و مدل سازی (پیش بینی نقص) بر اساس داده های اصلی؛ 2) انتخاب ویژگی بر اساس داده های اصلی و مدل سازی بر اساس داده های نمونه برداری شده؛ 3) انتخاب ویژگی بر اساس داده های نمونه برداری شده و مدل سازی بر اساس داده های اصلی؛ و 4) انتخاب ویژگی بر اساس داده های نمونه برداری شده و مدل سازی بر اساس داده های نمونه برداری شده. هدف اصلی این تحقیق مقایسه کارایی پیش بینی نقص نرم افزار در مدل های مبتنی بر این چهار سناریو است. نمونه مطالعاتی از نه مجموعه داده ی سنجش نرم افزاری تشکیل شده که از منبع پروژه های نرم افزاری PROMISE به دست آمده اند. نتایج تجربی نشان می دهند که انتخاب ویژگی بر اساس داده های نمونه برداری شده نسبت به انتخاب ویژگی بر اساس داده های اصلی کارایی بیشتری دارد و مدل های پیش بینی نقص صرف نظر از اینکه داده های آموزشی با استفاده از داده های اصلی یا نمونه برداری شده ایجاد شوند، کارایی مشابهی دارند.
1-مقدمه
هدف داده کاوی و یادگیری ماشین، استخراج اطلاعات مخفی اما مفید از منابع داده است. در مورد جنبه های مختلف داده کاوی و یادگیری ماشین از جمله پیش پردازش داده، آموزش مدل، ارزیابی مدل و تشخیص و اعتبارسنجی الگو، تحقیقات زیادی انجام شده است. ما در این کار به فعالیت های پیش پردازش داده، به ویژه انتخاب ویژگی از یک مجموعه داده می پردازیم که مشکل عدم توازن کلاس دارد. ..