<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Three-Step Intelligent Pruning for Data Classification in Just-in- Time Software Defect Prediction</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Nan Luo</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ying Ma</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer and Information Engineering, Xiamen University of Technology</institution>
          ,
          <addr-line>Xiamen</addr-line>
          ,
          <country country="CN">China</country>
        </aff>
      </contrib-group>
      <fpage>128</fpage>
      <lpage>134</lpage>
      <abstract>
        <p>Just-in-time software defect prediction technology is a defect prediction method that enables defect prediction of software change levels. The difficulties of learning classifiers from imbalanced data is demonstrated in a variety of real-world applications,especially in this era of big data, which has generated more classification tasks. Researchers have taken many existing JIT-SDP efforts to assume that the features of software releases remain costant over time. However, the researchers did not consider that JIT-SDP may be affected by the gradual evolution of class imbalance. Specifically, class imbalance (that is, the number of changes caused by defects is not adequately represented) has been changing over time, and the number of clean class changes and defect class changes may both increase or decrease, so here In this case, the existing JIT-SDP method becomes inapplicable. Taking these factors into consideration, we propose a new imbalanced classification framework, which aims to achieve data class balance by applying a new three-step smart pruning strategy, i.e., first undersampling the majority class, then undersampling the minority class. Oversampling is performed, since the minority class becomes the majority class after oversampling, as a result, the final stage is to intelligently undersample the minority group that eventually becomes the dominant group. Through these three steps, data balance is achieved before classification. Experiments show that this new framework is very computationally efficient, leading to better performance even under highly imbalanced distributions of clean and defective data. At the same time, our proposed framework can also be easily adapted to most existing learning methods to improve their performance on imbalanced data.</p>
      </abstract>
      <kwd-group>
        <kwd>1 Machine Learning</kwd>
        <kwd>JIT-SDP</kwd>
        <kwd>Class Imbalance</kwd>
        <kwd>Artifical Intelligence</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>It is well known that reducing the number of software defects is a challenging problem, and the
process of software debugging requires high labor and material costs, especially when testing resources
are limited and software teams are often under intense pressure to deliver quickly. Therefore,
researchers have come up with many machine learning methods to predict if there are any flaws in the
source code of software, these machine learning methods can allocate more attention to software
components that may contain defects by rationally distributing testing and inspection efforts.
Just-inTime (JIT) SDP is a special type of SDP method that, as soon as a software change occurs, identifies
the change that caused the defect (ie Just-in-Time).</p>
      <p>
        In the current big data environment, most classifiers and learning techniques cannot handle the issue
of class imbalance well. Therefore, the issue of class imbalance is also an important factor to be
considered in instant defect prediction research. Among the traditional methods of dealing with
imbalanced data, several common algorithms include upsampling oversample for the minority class and
downsampling undersample for the majority class[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], and artificially synthesized minority class
proposed by Chawla et al.[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]Oversampling (SMOTE). Borderline SMOTE[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], ADASYN[
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] (Adaptive
Synthetic Sampling), and Majority Weighted Minority Oversampling (MWMOTE)[
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] are some popular
smart sampling strategies.
      </p>
      <p>A technique is used in our job,SSO-SMOTE-SSO is applied instead of oversampling rate boosting
(ORB). The purpose of intelligently pruning training data is achieved by combining undersampling and
oversampling in layers. The SSO algorithm is in charge of intelligent undersampling of majority class
data (expressed in the first and third steps of the algorithm), while the SMOTE algorithm is in charge
of minority class oversampling. Because it prunes both the majority and minority classes and keeps
only sample information that is useful for the classification task, such a sequential combination provides
an efficient solution to the class imbalance problem in the instant software defect prediction task. Our
paper is organized as follows: Section II contains a literature survey related to related work, Section III
has the precise procedures for the suggested strategy for dealing with imbalanced data, Section IV
analyzes the experimental setup and result analysis, and the last section presents general conclusions
are drawn.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Related work</title>
      <p>In this section, we first briefly introduce the meaning and common evaluation metrics of instant
defect prediction, then introduce class imbalance learning and validation delay in defect prediction, and
finally introduce the methods involved in machine learning to solve class imbalance.</p>
      <p>
        The software defect prediction technology mainly includes module-level, file-level and change-level
defect prediction according to different prediction granularities. The change-level defect prediction
aims at predicting whether the introduced code has defects when the developer submits the code. , so it
is also called just-in-time defect prediction. Kim et al.[
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] were the first to investigate JIT-SDP. They
classified changes into clean and defective changes based on software change features such as adding
and removing deltas, directory/file names, metrics complexity, and so on. Several other research has
looked into the features of software changes that lead to defects and the underlying metrics (i.e., input
characteristics) used to predict them, Shihab et al.[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] investigated dangerous(defect-causing) changes,
including the day of the week[
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] and time of day[
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] when the change was committed. Lines of code
had been introdduced, and flaws were touching files, they discovered (i.e. ratio of bug fixes to total
changes touching files), number of bug reports associated with commits, and developer experience were
the top indicators of risky changes. Kamei et al.[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] conducted one of the largest JIT-SDP studies. They
used a number of factors gleaned from commits and bug reports, which are thought to be good markers
of software modifications that result in problems. They demonstrated that the indicators they utilised in
their research were highly predictive for both open source and commercial applications. As a result, we
employ the same measures in this study. The general just-in-time software defect prediction model is
shown in Figure 1.
      </p>
    </sec>
    <sec id="sec-3">
      <title>2.2. Verification Latency in JIT-in-SDP</title>
      <p>
        The fact that the labels of training samples may come later than their input features is referred to as
validation latency. Tan et al.[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] discovered that neglecting validation delays results in unduly
optimistic predictions of prediction performance, so they propose storing additional batches of training
data over time and using all batches received to develop a JIT -SDP classifier. After a predetermind
waiting time has elapsed, training examples are only available for building fresh batches. Their research
did not look into how long it takes to identify problems in the real world, and their proposed solution
assumes no change in class imbalance. Unlike their work, this study explores the impact of class
imbalance evolution on the JIT-SDP classifier’s prediction performance over time, provides techniques
to better handle class imbalance evolution, and investigates how long software changes normally take
to be identified as generating the defect class.
      </p>
    </sec>
    <sec id="sec-4">
      <title>2.3. SDP Class Imbalance Learning</title>
      <p>
        Class imbalance refers to the fact that the number of instances from different classes is not the same,
or even varies greatly. This is a common occurrence in a variety of real-world applications, such as in
fraud detection (normal vs. fraudulent), medicine (healthy vs. sick), software changes (clean vs.
defective). Mahmood et al.[
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] showed that as the data became more imbalanced, the predictive
performance of the SDP classifier (according to the Mathews correlation coefficient) became worse;
Wang and Yao[
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] did not Balanced learning techniques have been comprehensively studied, including
resampling, threshold shifting, and ensemble; Bennin et al.[
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] presented a synthetic oversampling
approach based on genetic chromosome theory. Kamei et al.[
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] studied the application of four
resampling strategies for fault-prone module detection. However, these methods adopt a fixed
resampling rate and consider the imbalance rate to be fixed over time, i.e., there is no need to
contemplate the growth of a class imbalance. Specifically, rather of allowing the resampling rate to
dynamically adjust to the current level of imbalance in the data, their parameter tuning procedure locks
the resampling rate utilised across the dataset to a single value. Uneven distribution of data brings great
difficulty to applying canonical learning algorithms on unbalanced data only. Although such problems
have been extensively studied, the existing models' performance still needs to be enhanced.
      </p>
    </sec>
    <sec id="sec-5">
      <title>2.4. Machine Learning to Tackle Cla-ss Imbalance Evolution</title>
      <p>
        To cope with class imbalance evolution, Wang et al.[
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] suggested two online class imbalance
learning methods: enhanced undersampling online bagging UOB (Undersampling Online Bagging) and
improved oversampling online bagging OOB (Oversampling Online Bagging) (Oversampling Online
Bagging). These approaches keep track of the present rate of imbalance, i.e. the ratio of examples
 ( )belonging to each class  ∈ {0,1} as follows:
      </p>
      <p>where t represents the current time step; each time step corresponds to the algorithm being presented
with a new training example;( ( ) ==  ) represents if the training sample at time t is class c, it returns
1, otherwise it returns 0; 0 ≪  ‘ ≤ 1,  ‘ is a predefined parameter, which is emphasized for adjusting
the latest data. A smaller  ‘ is used for the current data, 

( ) can reflect the change of the imbalance
rate faster, but noise may have a greater impact. Tracking the evolution of class imbalances entails
tracking (but not yet resolving) variations in imbalance rates. For the first time, this work investigates
the class imbalance evolution learning method under the condition of JIT-SDP, based on UOB and
 ( ) =  ′ ( −1)


+ (1 −  ′)( ( ) ==  ),
(1)
OOB.</p>
    </sec>
    <sec id="sec-6">
      <title>3. Proposed Method</title>
      <p>In this section, SSO and SMOTE are the essential components of our suggested hybrid
SSOMajSMOTE-SSOMin. We present information regarding SSO, SMOTE, and the proposed variant
threestep sampling approach, as well as the related pseudo-code introduction.</p>
    </sec>
    <sec id="sec-7">
      <title>3.1. Verification Latency Learning C-lassification Framework</title>
      <p>Because we have no way of knowing whether a new software change will produce a bug at the
moment it is submitted, we consider that within Ω (wait time) days after the change submission, once
the change is found to cause a defect, the change will be marked as causing a defect Defective class
changes that would otherwise be marked as clean class changes. This waiting time Ω can be set by the
software administrator. After many experiments, it is found that it is more appropriate to set the waiting
time value to 90 days. This framework can also be applied to other classifiers.</p>
    </sec>
    <sec id="sec-8">
      <title>3.2. A Three-step intelligent prun-ing strategy:SSO-SMOTE-SSO</title>
      <p>
        To better address the problem of class imbalance, we use a three-step smart pruning technique to
replace the ORB[
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] algorithm. Inspired by the work on oversampling and undersampling methods for
dealing with imbalanced classes, we try to stack several sampling methods in steps, i.e. perform a smart
pruning process for imbalanced classes through specific consecutive three processes. : 1. First, use the
sample subspace optimization algorithm (SSO) to undersample the majority class. SSO is a strategy for
locating the most representative majority class samples through intelligent majority class
undersampling, and then use these samples with the minority class. Class combination to provide
distinguishing information between the two; 2. Oversample the minority class using the SMOTE
algorithm. SMOTE's core strategy entails analysing minority class samples and artificially synthesising
new samples based on the minority class samples, which are then added to the data set; 3. The SSO
algorithm is used again to undersample the minority class after oversampling, so this strategy is called
SSO-SMOTE-SSO. Figures 2 to 4 summarize the pseudocode of the three algorithms involed.
      </p>
    </sec>
    <sec id="sec-9">
      <title>4. Experiments &amp; Analysis</title>
      <p>
        To analyse the performance of just-in-time (JIT) models, we employ two well-known software
projects, QT and OPENSTACK. Developed by The Qt Company, Qt is a cross-platform application
framework that allows individual developers and organizations to contribute. OPENSTACK is an
opensource cloud computing software platform that is delivered as an infrastructure-as-a-service, giving
clients access to their resources. To obtain software changes that cause defect classes, we use Commit
Guru[
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], a tool that evaluates and delivers change-level analysis, which provides change-level
indicators: (1) the size of the change; (2) what was the file changed; (3) the proliferation of changes; (4)
the developers' experience in making the adjustments; (5) the reason for the changes. The datasets used
in our work are simply summarised in Table I. Mc Intosh and Kamei [19] originally gathered and
curated this dataset. After final processing, Table 1 shows the relevant information from the two project
datasets, with the QT dataset having 23,912 commits and the OPENSTACK dataset having 22,757
commits.
      </p>
      <p>Table 1</p>
      <sec id="sec-9-1">
        <title>Information of the dataset used in this work</title>
      </sec>
      <sec id="sec-9-2">
        <title>Dataset QT</title>
      </sec>
      <sec id="sec-9-3">
        <title>OPENSTACK</title>
        <p>Timespan
start
06/2011
01/2011</p>
        <p>In the research of immediate defect prediction, the AUC score is often used as the evaluation index
of the model. AUC stands for Area under the Receiver Operating Characteristic Curve, and it refers to
the area beneath the curve of the receiver operating characteristic (ROC), which is mainly used for
Investigates performance on imbalanced class datasets, with values ranging from 0 to 1. The suggested
approach is used to analyse the QT and OPENSTACK data sets, and the ROC curve's area under the
curve (AUC) is given in Table 2. The results of multiple experiments show that for the treatment of
class imbalance problems, SSO-SMOTE is used. - The effect obtained by SSO processing the dataset
is more significant than that obtained by using only a single SMOTE method.</p>
        <p>Table 2</p>
      </sec>
      <sec id="sec-9-4">
        <title>Area Under Curve (AUC) from ROC curve analysis for various datasets</title>
      </sec>
      <sec id="sec-9-5">
        <title>Methods</title>
      </sec>
      <sec id="sec-9-6">
        <title>SMOTE</title>
      </sec>
      <sec id="sec-9-7">
        <title>SSO-SMOTE-SSO QT 0.742 0.765</title>
      </sec>
      <sec id="sec-9-8">
        <title>OPENSTACK 0.758 0.803</title>
      </sec>
    </sec>
    <sec id="sec-10">
      <title>5. Conclusion</title>
      <p>In this paper, we identify and predict approxi-mately 50,000 modifications from two open source
projects using an innovative methodology that combines oversampling and undersampling methods to
finish the processing of imbalance classes in on-the-fly software defect prediction.This study
investigates the evolution of class imbalance in JIT-SDP, demonstrating that class imbalance is a
significant issue in JIT-SDP by verifying the delay architecture, after that, a three-step intelligent
sampling for class imbalance dataset was used. The method is used in a model that predicts software
defects in real time, and the correction of unbalanced data is completed before the classification process,
and the balanced data set is obtained to complete the defect prediction. In real datasets, the proposed
mixed sampling strategy provides an effective solution to the imbalanced number of clean and faulty
class changes (i.e. QT and OPENSTACK). Our future research will focus on how to handle
classimbalanced data distributions more quickly and accurately to produce an on-the-fly software defect
prediction model with shorter run times and more accurate prediction outputs.</p>
    </sec>
    <sec id="sec-11">
      <title>6. References</title>
      <p>[19] S. McIntosh and Y. Kamei, “Are fifix-inducing changes a moving target?: A longitudinal case
study of just-in-time defect prediction,” in Proceedings of the 40th International Conference on
Software Engineering, ser. ICSE ’18. New York, NY, USA: ACM, 2018, pp. 560– 560. [Online].
Availa-ble:http://doi.acm.org/10.1145/3180155.3182514.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Japkowicz</surname>
            , Nathalie, and
            <given-names>Shaju</given-names>
          </string-name>
          <string-name>
            <surname>Stephen</surname>
          </string-name>
          .
          <article-title>"The class imbalance problem: A systematic study." Intelligent data analysis 6</article-title>
          , no.
          <issue>5</issue>
          (
          <year>2002</year>
          ):
          <fpage>429</fpage>
          -
          <lpage>449</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>Chawla</surname>
            ,
            <given-names>Nitesh V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kevin</surname>
            <given-names>W.</given-names>
          </string-name>
          <string-name>
            <surname>Bowyer</surname>
            , Lawrence O. Hall, and
            <given-names>W. Philip</given-names>
          </string-name>
          <string-name>
            <surname>Kegelmeyer</surname>
          </string-name>
          .
          <article-title>"SMOTE: synthetic minority over-sampling technique</article-title>
          .
          <source>" Journal of artificial intelligence research 16</source>
          (
          <year>2002</year>
          ):
          <fpage>321</fpage>
          -
          <lpage>357</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3] Han,
          <string-name>
            <given-names>Hui</given-names>
            ,
            <surname>Wen-Yuan</surname>
          </string-name>
          <string-name>
            <given-names>Wang</given-names>
            , and
            <surname>Bing-Huan Mao</surname>
          </string-name>
          .
          <article-title>"Borderline-SMOTE: a new over-sampling method in imbalanced data sets learning."</article-title>
          <source>In International Conference on Intelligent Computing</source>
          , pp.
          <fpage>878</fpage>
          -
          <lpage>887</lpage>
          . Springer, Berlin, Heidelberg,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>He</surname>
            ,
            <given-names>Haibo</given-names>
          </string-name>
          , Yang Bai,
          <article-title>Edwardo A</article-title>
          .
          <string-name>
            <surname>Garcia</surname>
            , and
            <given-names>Shutao</given-names>
          </string-name>
          <string-name>
            <surname>Li</surname>
          </string-name>
          .
          <article-title>"ADASYN: Adaptive synthetic sampling approach for imbalanced learning."</article-title>
          <source>In Neural Networks</source>
          ,
          <year>2008</year>
          .
          <source>IJCNN</source>
          <year>2008</year>
          .
          <article-title>(IEEE World Congress on Computational Intelligence)</article-title>
          . IEEE International Joint Conference on, pp.
          <fpage>1322</fpage>
          -
          <lpage>1328</lpage>
          . IEEE,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Barua</surname>
            , Sukarna, Md Monirul Islam, Xin Yao, and
            <given-names>Kazuyuki</given-names>
          </string-name>
          <string-name>
            <surname>Murase</surname>
          </string-name>
          .
          <article-title>"MWMOTE--majority weighted minority oversampling technique for imbalanced data set learning</article-title>
          .
          <source>" IEEE Transactions on Knowledge and Data Engineering</source>
          <volume>26</volume>
          , no.
          <issue>2</issue>
          (
          <year>2014</year>
          ):
          <fpage>405</fpage>
          -
          <lpage>425</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>S.</given-names>
            <surname>Kim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. J. W.</given-names>
            <surname>Jr.</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zhang</surname>
          </string-name>
          , “
          <article-title>Classifying software changes: Clean or buggy?” IEEE Transactions on Software Engineering (TSE)</article-title>
          , vol.
          <volume>34</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>181</fpage>
          -
          <lpage>196</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>E.</given-names>
            <surname>Shihab</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. E.</given-names>
            <surname>Hassan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Adams</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Z. M.</given-names>
            <surname>Jiang</surname>
          </string-name>
          , “
          <article-title>An industrial study on the risk of software changes</article-title>
          ,”
          <source>in Proceedings of the 20th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (FSE)</source>
          ,
          <year>2012</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>11</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>J.</given-names>
            <surname>Sliwerski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Zimmermann</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Zeller</surname>
          </string-name>
          , “
          <article-title>When do changes induce ´ fixes?</article-title>
          ”
          <source>in Proceedings of the 17th International Workshop on Mining Software Repositories, ser. MSR '05</source>
          ,
          <year>2005</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>5</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>J.</given-names>
            <surname>Eyolfson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Tan</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Lam</surname>
          </string-name>
          , “
          <article-title>Do time of day and developer experience affect commit bugginess?</article-title>
          ”
          <source>in Proceedings of the 8th Working Conference on Mining Software Repositories (MSR)</source>
          ,
          <year>2011</year>
          , pp.
          <fpage>153</fpage>
          -
          <lpage>162</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Kamei</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Shihab</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Adams</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. E.</given-names>
            <surname>Hassan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Mockus</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Sinha</surname>
          </string-name>
          , and
          <string-name>
            <given-names>N.</given-names>
            <surname>Ubayashi</surname>
          </string-name>
          , “
          <article-title>A largescale empirical study of just-in-time quality assurance</article-title>
          ,
          <source>” IEEE Transactions on Software Engineering (TSE)</source>
          , vol.
          <volume>39</volume>
          , no.
          <issue>6</issue>
          , pp.
          <fpage>757</fpage>
          -
          <lpage>773</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>M.</given-names>
            <surname>Tan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Tan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Dara</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Mayeux</surname>
          </string-name>
          , “
          <article-title>Online defect prediction for imbalanced data</article-title>
          ,”
          <source>in Proceedings of the 37th International Conference on Software Engineering (ICSE)</source>
          ,
          <year>2015</year>
          , pp.
          <fpage>99</fpage>
          -
          <lpage>108</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>Z.</given-names>
            <surname>Mahmood</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Bowes</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Lane</surname>
          </string-name>
          , and T. Hall, “
          <article-title>What is the impact of imbalance on software defect prediction performance?</article-title>
          ”
          <source>in Proceedings of the 11th International Conference on Predictive Models and Data Analytics in Software Engineering (PROMISE)</source>
          ,
          <year>2015</year>
          , pp.
          <fpage>4</fpage>
          .
          <fpage>1</fpage>
          -
          <issue>4</issue>
          .4.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>S.</given-names>
            <surname>Wang</surname>
          </string-name>
          and
          <string-name>
            <given-names>X.</given-names>
            <surname>Yao</surname>
          </string-name>
          , “
          <article-title>Using class imbalance learning for software defect prediction</article-title>
          ,
          <source>” IEEE Transactions on Reliability (TR)</source>
          , vol.
          <volume>62</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>434</fpage>
          -
          <lpage>443</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>K. E.</given-names>
            <surname>Bennin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Keung</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Phannachitta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Monden</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Mensah</surname>
          </string-name>
          , “Mahakil:
          <article-title>Diversity based oversampling approach to alleviate the class imbalance issue in software defect prediction</article-title>
          ,
          <source>” IEEE Transactions on Software Engineering (TSE)</source>
          , vol.
          <volume>44</volume>
          , no.
          <issue>6</issue>
          , pp.
          <fpage>534</fpage>
          -
          <lpage>550</lpage>
          ,
          <year>June 2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Kamei</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Monden</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Matsumoto</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Kakimoto</surname>
          </string-name>
          , and
          <string-name>
            <given-names>K.</given-names>
            <surname>Matsumoto</surname>
          </string-name>
          , “
          <article-title>The effects of over and under sampling on fault-prone module detection</article-title>
          ,”
          <source>in Proceedings of the 1st International Symposium on Empirical Software Engineering and Measurement (ESEM)</source>
          ,
          <year>2007</year>
          , pp.
          <fpage>196</fpage>
          -
          <lpage>204</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>S.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. L.</given-names>
            <surname>Minku</surname>
          </string-name>
          , and
          <string-name>
            <given-names>X.</given-names>
            <surname>Yao</surname>
          </string-name>
          , “
          <article-title>Resampling-based ensemble methods for online class imbalance learning,” IEEE Transactions on Knowledge and Data Engineering (TKDE)</article-title>
          , vol.
          <volume>27</volume>
          , no.
          <issue>5</issue>
          , pp.
          <fpage>1356</fpage>
          -
          <lpage>1368</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>Cabral</surname>
            <given-names>G G</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Minku</surname>
            <given-names>L L</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shihab</surname>
            <given-names>E</given-names>
          </string-name>
          , et al.
          <article-title>Class imbalance evolution and verification latency in justin-time software defect prediction</article-title>
          [C]//2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE). IEEE,
          <year>2019</year>
          :
          <fpage>666</fpage>
          -
          <lpage>676</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>M. D. Zeiler</surname>
            and
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Fergus</surname>
          </string-name>
          , “
          <article-title>Stochastic pooling for regularization of deep convolutional neural networks</article-title>
          ,
          <source>” arXiv preprint arXiv:1301.3557</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>