Localization & Repair module.
To finally compute the probability distribution over bug locations and repairs, we employ individual
modules for localization and repair based on the computed vector representation \(\mathbf {r}_i\) .
The localization module is a multilayer perceptron that computes a bugginess score for each potential bug location
based on the vector representation \(\mathbf {r}_i\)  and the original token embedding.
The objective of the localization module is to learn how likely the token \(t_i\)  does not fit its surrounding context (represented by \(\mathbf {r}_i\) ). The localization probability is computed as a softmax distribution over all potential bug locations.
The repair module is designed similar to CopyNet [1]}. Given the vector representation \(\mathbf {r}_i\)  of a potential bug location, the repair module computes a repairing score between the bug location
and each repair candidate at token \(t_j\)  (represented by \(\mathbf {r}_j\) ). In addition, a similar score
is obtained based on token embeddings of an external vocabulary \(V\)  (e.g. other binary operators). The repair probability score is then computed as softmax distribution between all repair candidates.
