博客
关于我
(原创)Bugzilla众包行为模式挖掘
阅读量:798 次
发布时间:2023-04-17

本文共 1040 字,大约阅读时间需要 3 分钟。

The Firefox Temporal Defect Dataset

近年来,加拿大学者在Bugzilla上的Firefox bug反馈讨论组中对1998~2014年的反馈数据进行了深入分析,揭示了开发者之间的交流模式。这些发现与我当前的研究课题有着高度的关联,因此我决定撰写这篇博文,记录我的探索过程。

数据集采用CSV格式,这种格式以其直观性和可读性著称,开发者可以快速理解并利用数据。数据集包含以下几个关键字段:

  • bug_id:缺陷的唯一标识符。
  • 提出时间:该行为的记录时间。
  • 行为类型:描述具体执行的操作。
  • 行为到bug提出时间的间隔:表示行为完成所需的时间(以天为单位)。

每种行为类型由一个字母表示,如N、C、W、Z等。通过对数据的分析,可以发现不同缺陷的解决过程存在显著差异。例如,某些缺陷仅需四个行为完成,而另一些缺陷可能在一天内通过两个行为解决。这表明不同缺陷的复杂性和解决难度存在差异。

作者通过基于时间序列的频繁模式挖掘算法,挖掘出了一些频繁出现的行为模式。例如,N-C模式(先执行N行为,再执行C行为)在16年间共发生了1952次。更复杂的模式如N-C-W-C-Z形式也出现了143次。这些模式不仅具有较高的频度,而且具有严格的时间顺序。

在此基础上,我计划扩展现有的时间序列频繁模式挖掘方法,探索更多模式类型,如C-C、C-C-C等。同时,我还需要引入一种“乱序”模式,以更全面地分析开发者之间的交流方式。具体实现细节尚待完成,但希望能够通过这些扩展,发现更多有趣的模式。

尽管目前尚不清楚这些模式是否具有里程碑式的意义,但从学术研究的角度,这项工作至少可以为频繁模式挖掘算法提供新的实践验证。为了实现这一目标,我需要确保所挖掘出的模式频度较高,这样才能认为这些模式具有一定的实用价值。

接下来,我将着重于算法的实现。通过对现有代码的优化与扩展,我希望能够实现更高效的模式挖掘。特别是在支持度(freq_num)和时间阈值的引入方面,我计划在2.x版本中进行测试与验证。

在代码实现过程中,我发现通过引入剪枝策略可以显著提升算法效率。例如,min_support == 0的分支虽然看似无关紧要,但在实际应用中却能带来明显的性能提升。尽管如此,我也意识到现有的时间阈值概念尚未完善,这一点在实际测试中得到了证实。

最后,我希望通过Pycharm进行快速开发与测试。有了这份代码,我相信能够为时间序列频繁模式挖掘提供新的思路与解决方案。

持续更新中...

转载地址:http://hvgfk.baihongyu.com/

你可能感兴趣的文章
MTCNN 人脸检测
查看>>
MyEcplise中SpringBoot怎样定制启动banner?
查看>>
MyPython
查看>>
MTD技术介绍
查看>>
MySQL
查看>>
MySQL
查看>>
mysql
查看>>
MTK Android 如何获取系统权限
查看>>
MySQL - 4种基本索引、聚簇索引和非聚索引、索引失效情况、SQL 优化
查看>>
MySQL - ERROR 1406
查看>>
mysql - 视图
查看>>
MySQL - 解读MySQL事务与锁机制
查看>>
MTTR、MTBF、MTTF的大白话理解
查看>>
mt_rand
查看>>
mysql -存储过程
查看>>
mysql /*! 50100 ... */ 条件编译
查看>>
mudbox卸载/完美解决安装失败/如何彻底卸载清除干净mudbox各种残留注册表和文件的方法...
查看>>
mysql 1264_关于mysql 出现 1264 Out of range value for column 错误的解决办法
查看>>
mysql 1593_Linux高可用(HA)之MySQL主从复制中出现1593错误码的低级错误
查看>>
mysql 5.6 修改端口_mysql5.6.24怎么修改端口号
查看>>