This commit is contained in:
starlee 2017-12-06 10:58:02 +08:00
parent f0301f5279
commit dcdf396d35
3 changed files with 63 additions and 34 deletions

View File

@ -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
% 一个 同等对待的111 老算法
% $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上一些流行的开源项目虽然这些项目由不同编程语言开发并被应用于不同的领域

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