hah
This commit is contained in:
parent
f0301f5279
commit
dcdf396d35
|
@ -634,7 +634,8 @@ $diffSim$的输入是两个\pr 分别修改的文件集合。
|
|||
|
||||
在上式中,$N_{detected}$是标准数据集中对应的源PR被探测出来的重复PR的数量,
|
||||
一个重复PR的源PR被探测出来的判断标准是源PR出现在与重复PR最相似的Top-k \pr 列表中。
|
||||
$N_{total}$是标准数据集中所有重复PR对的数量。
|
||||
$N_{total}$是标准数据集中用于测试的重复PR对的数量,
|
||||
在本实验中,我们把标准数据集随机分成两等份,一部分用于训练,一部分用于测试。
|
||||
recall-rate@k衡量了探测方法能够为多少比例的重复PR探测出其源PR。
|
||||
|
||||
\section{实验结果}
|
||||
|
@ -654,21 +655,21 @@ recall-rate@k衡量了探测方法能够为多少比例的重复PR探测出其
|
|||
|
||||
在图~\ref{fig:textVSdiff}中,我们展示了各种方法的探测效果。其中,
|
||||
``$TS_{t}$''(标题相似度), ``$TS_{d}$''(描述相似度),
|
||||
``$DS_{f}$''(变更相似度) 分别代码上述的三种不同的实验设计。
|
||||
``$DS$''(变更相似度) 分别代码上述的三种不同的实验设计。
|
||||
从图中可以看出,无论推荐的大小如何变化,标题相似度比描述相似度要好,而变更相似度的探测效果是最好的。
|
||||
比如,当推荐列表设置为20的时候,变更相似度平均能够找到62.4\%的重复\pr ,
|
||||
而描述相似度和标题相似度分别能够找到 39.6\% 和 46.6\%。
|
||||
比如,当推荐列表设置为20的时候,变更相似度平均能够找到63.5\%的重复\pr ,
|
||||
而描述相似度和标题相似度分别能够找到 38.7\% 和 47.2\%。
|
||||
|
||||
\subsection{RQ2: 基于混合相似度的探测效果}
|
||||
进一步地,我们想检测综合利用文本信息和变更信息是否能够提高探测效果。
|
||||
因此,我们在探测重复\pr 的时候把多种相似度(即``$TS_{t}$'',``$TS_{d}$'',``$DS_{f}$'')混合起来,
|
||||
因此,我们在探测重复\pr 的时候把多种相似度(即``$TS_{t}$'',``$TS_{d}$'',``$DS$'')混合起来,
|
||||
并且用前文介绍的贪心搜索算法求他们的线性加权值。
|
||||
和上一节一样,我们还是评估此方法的recall-rate@k。
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[width=0.96\textwidth]{figures/detect.png}
|
||||
\caption{基于组合相似度的探测效果}
|
||||
\caption{基于混合相似度的探测效果}
|
||||
\label{fig:detect}
|
||||
\end{figure}
|
||||
|
||||
|
@ -676,7 +677,7 @@ recall-rate@k衡量了探测方法能够为多少比例的重复PR探测出其
|
|||
我们用盒图展示了在所有调研项目上的探测效果概况,每一个盒图中的红点是对所有项目探测效果的平均加权值,
|
||||
这些红点用线连起来代表了基于混合相似度探测方法的平均效果,
|
||||
与图~\ref{fig:textVSdiff}中所示的各个方法的探测效果相比,可以发现综合利用文本信息和变更信息的混合相似度的探测效果有了明显的提升,
|
||||
比如,当推荐列表设置为20的时候,混合相似度平均能够找到68.5\%的重复\pr.
|
||||
比如,当推荐列表设置为20的时候,混合相似度平均能够找到69.8\%的重复\pr.
|
||||
|
||||
|
||||
|
||||
|
@ -696,10 +697,11 @@ recall-rate@k衡量了探测方法能够为多少比例的重复PR探测出其
|
|||
表~\ref{table:wts}显示了不同权值导致的探测效果。
|
||||
由于自动搜索方法为每一个调研项目搜索到的权值是不一样的,因此我们并没有详细列出每一个项目的特定权值。
|
||||
表中的探测效果仍然是调研项目的平均加权结果。
|
||||
从表中可以看出, 由自动搜索算法求得的$WT_{GS}$ 的探测效果是最好的,
|
||||
随机生成的权重向量的探测效果波动幅度很大,recall-rate@20有些高达0.679,而有些则只有0.575。
|
||||
而把各类相似度等同对待的$WT_{EQ}$相比于随机生成的$WT_{RD}$的平均效果有明显提升,recall-rate@20达到了0.678。
|
||||
另外,我们注意到虽然$WT_{GS}$的效果优于$WT_{EQ}$,不过这种优势并不是太明显。
|
||||
从表中可以看出, 由自动搜索算法求得的$WT_{GS}$ 的探测效果是比较好的,
|
||||
当推荐列表大小设置为20时,其能探测到大约70\%的重复\pr。
|
||||
随机生成的权重向量的探测效果波动幅度很大,recall-rate@20有些高达0.697,而有些则只有0.506。
|
||||
而把各类相似度等同对待的$WT_{EQ}$相比于随机生成的$WT_{RD}$的平均效果也有所提升,recall-rate@20达到了0.692。
|
||||
% 另外,我们注意到虽然$WT_{GS}$的效果优于$WT_{EQ}$,不过这种优势并不是太明显。
|
||||
% 这说明在对新项目进行探测时,不去对历史\pr 进行人工标注以训练$WT_{GS}$的各参数,
|
||||
% 而直接利用$WT_{EQ}$累加各个相似度是一种可选的做法。
|
||||
|
||||
|
@ -722,34 +724,61 @@ recall-rate@k衡量了探测方法能够为多少比例的重复PR探测出其
|
|||
% 一个 greedy search 算法得到的 老算法
|
||||
% $WT_{GS}$&- & - & - & 0.319 & 0.536 & 0.603 & 0.652& 0.675 \\ \hline
|
||||
% 20的时候
|
||||
$WT_{GS}$&- & - & - & 0.304 &0.524 &0.608 &0.658 &0.685 \\ \hline
|
||||
$WT_{GS}$&- & - & - & 0.314 &0.528 &0.620 &0.669 &0.698 \\ \hline
|
||||
|
||||
% 一个 同等对待的(1,1,1) 老算法
|
||||
% $WT_{EQ}$&1.00 & 1.00 & 1.00 & 0.311 & 0.525 & 0.601 & 0.646& 0.671\\\hline
|
||||
$WT_{EQ}$&1.00 & 1.00 & 1.00 & 0.297 & 0.514 & 0.598 & 0.648& 0.678 \\\hline
|
||||
% 全数据集
|
||||
% $WT_{EQ}$&1.00 & 1.00 & 1.00 & 0.297 & 0.514 & 0.598 & 0.648& 0.678 \\\hline
|
||||
$WT_{EQ}$&1.00 & 1.00 & 1.00 & 0.310 & 0.527 & 0.614 & 0.663& 0.692\\ \hline
|
||||
|
||||
%20个随机生成的
|
||||
\multirow{20}*{$WT_{RD}$}
|
||||
&0.91 & 0.87 & 0.46 & 0.279 & 0.483 & 0.559 & 0.608& 0.644\\
|
||||
&0.90 & 0.47 & 0.84 & 0.288 & 0.506 & 0.592 & 0.641& 0.671\\
|
||||
&0.81 & 0.30 & 0.22 & 0.248 & 0.425 & 0.501 & 0.547& 0.575\\
|
||||
&0.57 & 0.93 & 0.65 & 0.282 & 0.493 & 0.580 & 0.628& 0.659\\
|
||||
&0.53 & 0.87 & 0.98 & 0.296 & 0.508 & 0.599 & 0.651& 0.668\\
|
||||
&0.79 & 0.84 & 0.19 & 0.258 & 0.454 & 0.524 & 0.564& 0.593\\
|
||||
&0.09 & 0.01 & 0.27 & 0.268 & 0.491 & 0.568 & 0.613& 0.639\\
|
||||
&0.07 & 0.93 & 0.97 & 0.248 & 0.436 & 0.525 & 0.577& 0.603\\
|
||||
&0.89 & 0.83 & 0.34 & 0.278 & 0.471 & 0.546 & 0.594& 0.619\\
|
||||
&0.06 & 0.21 & 0.45 & 0.284 & 0.501 & 0.577 & 0.623& 0.646\\
|
||||
&0.80 & 0.38 & 1.00 & 0.291 & 0.509 & 0.596 & 0.649& 0.675\\
|
||||
&0.87 & 0.97 & 0.67 & 0.285 & 0.497 & 0.584 & 0.629& 0.663\\
|
||||
&0.92 & 0.77 & 0.45 & 0.281 & 0.484 & 0.559 & 0.609& 0.641\\
|
||||
&0.09 & 0.01 & 0.81 & 0.262 & 0.477 & 0.557 & 0.600& 0.623\\
|
||||
&0.73 & 0.36 & 0.19 & 0.255 & 0.439 & 0.514 & 0.556& 0.582\\
|
||||
&0.73 & 0.53 & 0.79 & 0.299 & 0.520 & 0.597 & 0.650& 0.679\\
|
||||
&0.70 & 0.28 & 0.94 & 0.286 & 0.508 & 0.594 & 0.642& 0.670\\
|
||||
&0.85 & 0.07 & 0.98 & 0.254 & 0.467 & 0.555 & 0.608& 0.638\\
|
||||
&0.28 & 0.71 & 0.88 & 0.283 & 0.496 & 0.580 & 0.632& 0.654\\
|
||||
&0.71 & 0.61 & 0.29 & 0.281 & 0.476 & 0.550 & 0.598& 0.626\\
|
||||
&0.76 & 0.39 & 0.31 & 0.286 & 0.470 & 0.548 & 0.606& 0.627\\
|
||||
&0.07 & 0.30 & 0.07 & 0.211 & 0.385 & 0.442 & 0.494& 0.522\\
|
||||
&0.97 & 0.61 & 0.33 & 0.286 & 0.472 & 0.548 & 0.598& 0.620\\
|
||||
&0.22 & 0.82 & 0.31 & 0.230 & 0.409 & 0.486 & 0.534& 0.566\\
|
||||
&0.15 & 0.58 & 0.94 & 0.285 & 0.493 & 0.573 & 0.628& 0.651\\
|
||||
&0.32 & 0.13 & 0.40 & 0.299 & 0.513 & 0.609 & 0.661& 0.686\\
|
||||
&0.73 & 0.55 & 0.70 & 0.312 & 0.529 & 0.615 & 0.668& 0.691\\
|
||||
&0.78 & 0.09 & 0.80 & 0.274 & 0.475 & 0.570 & 0.624& 0.656\\
|
||||
&0.80 & 0.94 & 0.03 & 0.241 & 0.420 & 0.490 & 0.523& 0.550\\
|
||||
&0.95 & 0.79 & 0.98 & 0.316 & 0.530 & 0.617 & 0.667& 0.696\\
|
||||
&0.65 & 0.89 & 0.54 & 0.297 & 0.507 & 0.584 & 0.628& 0.663\\
|
||||
&0.17 & 0.52 & 0.96 & 0.296 & 0.501 & 0.587 & 0.634& 0.658\\
|
||||
&0.19 & 0.05 & 0.49 & 0.296 & 0.525 & 0.605 & 0.648& 0.672\\
|
||||
&0.43 & 0.89 & 0.03 & 0.215 & 0.392 & 0.440 & 0.476& 0.506\\
|
||||
&0.37 & 0.74 & 0.26 & 0.255 & 0.450 & 0.523 & 0.568& 0.595\\
|
||||
&0.65 & 0.72 & 0.85 & 0.314 & 0.533 & 0.618 & 0.669& 0.697\\
|
||||
&0.01 & 0.15 & 0.72 & 0.274 & 0.475 & 0.552 & 0.600& 0.622\\
|
||||
&0.76 & 0.89 & 0.06 & 0.246 & 0.428 & 0.498 & 0.536& 0.566\\
|
||||
&0.15 & 0.13 & 0.94 & 0.321 & 0.536 & 0.621 & 0.657& 0.679\\
|
||||
&0.49 & 0.92 & 0.48 & 0.272 & 0.475 & 0.554 & 0.607& 0.639\\
|
||||
|
||||
|
||||
|
||||
|
||||
% 全数据集
|
||||
% &0.91 & 0.87 & 0.46 & 0.279 & 0.483 & 0.559 & 0.608& 0.644\\
|
||||
% &0.90 & 0.47 & 0.84 & 0.288 & 0.506 & 0.592 & 0.641& 0.671\\
|
||||
% &0.81 & 0.30 & 0.22 & 0.248 & 0.425 & 0.501 & 0.547& 0.575\\
|
||||
% &0.57 & 0.93 & 0.65 & 0.282 & 0.493 & 0.580 & 0.628& 0.659\\
|
||||
% &0.53 & 0.87 & 0.98 & 0.296 & 0.508 & 0.599 & 0.651& 0.668\\
|
||||
% &0.79 & 0.84 & 0.19 & 0.258 & 0.454 & 0.524 & 0.564& 0.593\\
|
||||
% &0.09 & 0.01 & 0.27 & 0.268 & 0.491 & 0.568 & 0.613& 0.639\\
|
||||
% &0.07 & 0.93 & 0.97 & 0.248 & 0.436 & 0.525 & 0.577& 0.603\\
|
||||
% &0.89 & 0.83 & 0.34 & 0.278 & 0.471 & 0.546 & 0.594& 0.619\\
|
||||
% &0.06 & 0.21 & 0.45 & 0.284 & 0.501 & 0.577 & 0.623& 0.646\\
|
||||
% &0.80 & 0.38 & 1.00 & 0.291 & 0.509 & 0.596 & 0.649& 0.675\\
|
||||
% &0.87 & 0.97 & 0.67 & 0.285 & 0.497 & 0.584 & 0.629& 0.663\\
|
||||
% &0.92 & 0.77 & 0.45 & 0.281 & 0.484 & 0.559 & 0.609& 0.641\\
|
||||
% &0.09 & 0.01 & 0.81 & 0.262 & 0.477 & 0.557 & 0.600& 0.623\\
|
||||
% &0.73 & 0.36 & 0.19 & 0.255 & 0.439 & 0.514 & 0.556& 0.582\\
|
||||
% &0.73 & 0.53 & 0.79 & 0.299 & 0.520 & 0.597 & 0.650& 0.679\\
|
||||
% &0.70 & 0.28 & 0.94 & 0.286 & 0.508 & 0.594 & 0.642& 0.670\\
|
||||
% &0.85 & 0.07 & 0.98 & 0.254 & 0.467 & 0.555 & 0.608& 0.638\\
|
||||
% &0.28 & 0.71 & 0.88 & 0.283 & 0.496 & 0.580 & 0.632& 0.654\\
|
||||
% &0.71 & 0.61 & 0.29 & 0.281 & 0.476 & 0.550 & 0.598& 0.626\\
|
||||
|
||||
% 老算法
|
||||
% &0.29 & 0.33 & 0.13 & 0.272 & 0.470 & 0.532 & 0.572& 0.605\\
|
||||
|
@ -789,7 +818,7 @@ recall-rate@k衡量了探测方法能够为多少比例的重复PR探测出其
|
|||
通过对20余个项目的调研和分析,我们构建了一个历史重复\pr 数据集,
|
||||
根据此测试集,我们测试了各类相似度对实际探测效果的影响。
|
||||
最终,我们发现变更相似度的效果优于文本相似度的效果,而综合利用两种相似度的混合相似度能产生更好的效果。
|
||||
当探测的相似\pr 列表大小设置为20时,混合相似度平均能探测到68.5\%的重复\pr 。
|
||||
当探测的相似\pr 列表大小设置为20时,混合相似度平均能探测到约70\%的重复\pr 。
|
||||
|
||||
|
||||
我们目前的研究主要基于GitHub上一些流行的开源项目,虽然这些项目由不同编程语言开发,并被应用于不同的领域,
|
||||
|
|
BIN
figures/4sim.png
BIN
figures/4sim.png
Binary file not shown.
Before Width: | Height: | Size: 160 KiB After Width: | Height: | Size: 157 KiB |
Binary file not shown.
Before Width: | Height: | Size: 186 KiB After Width: | Height: | Size: 185 KiB |
Loading…
Reference in New Issue