基于深度学习的数据竞争检测方法

  • chap0 Introduction
    • 本文贡献:
    • 原文及笔记下载
  • chap1 DeleRace
    • 1.1 检测框架
    • 1.2 选取实际应用程序
    • 1.3 特征提取
      • 1.3.1 WALA 特征提取操作步骤
      • 1.3.2 数值特征(指令级别)
      • 1.3.3 文本特征(方法级别)
    • 1.4 文本特征向量化
      • 使用 Keras 的嵌入层进行文本特征向量化
    • 1.5 数据均衡分布——过采样
    • 1.6 CNN—LSTM 神经网络
  • chap2 实验结果与分析
    • 2.3 RQ(research question)
    • 2.6 DeleRace检测结果
  • 2.7 与其他深度神经网络方法对比

chap0 Introduction

数据竞争是指2个或多个线程同时访问1个 内存位置并且至少有1个线程执行写操作.
DeleRace(deep-learning-based data race detection):首先使用工具 WALA 从多个实际应用程序中中提取指令、方法和文件级别中多个代码特征,对其向量化 并构造训练样本数据;;然后通过ConRacer 工具对真实数据竞争进行判定进而标记样本数据,并采用SMOTE 增强算法使正负数据样本分布均衡化;最后** 构建 CNN-LSTM 的深度神经网络 **,加以训练构建分类器,进而实现对数据竞争的检测。

本文贡献:

1)构建数据集用了26个不同领域的实际应用程序
2)提出一种适合数据竞争检测的深度学习模 型DeleRace
3)验证了DeleRace 的有效性.

原文及笔记下载

点击下载

chap1 DeleRace

1.1 检测框架

DeleRace方法框架各功能标注如图所示

1.2 选取实际应用程序

从 DaCapo[20] ,JGF[21] ,IBM Contest[22] ,PJBench[23] 四 个基准测试程序套件中选取26个含有数据竞争的并发程序

1.3 特征提取

1.3.1 WALA 特征提取操作步骤


1.3.2 数值特征(指令级别)

每个访问操作包含4条指令级别的特征.

1.3.3 文本特征(方法级别)

每个访问操作均包含包名、类名、方法名、变量名等文本特征,其中包名和类名为文件级别的特征,方法名和变量名 为方法级别的特征.

1.4 文本特征向量化

使用 Keras 的嵌入层进行文本特征向量化

1)首先将单词表中的单词进行词 频统计并进行整数编码;
2)然后将每个单词的编码M经过嵌入层处 理后映射为一个8维向量;
3)对嵌入层进行训练并更新权重;
4)最后得到一个真正可以代表每个单词的数值向量

1.5 数据均衡分布——过采样

SMOTE:其基本思想是对少数类样本进行分析,并根据 少数类样本合成新样本,然后添加到数据集中。

  • 这里先选定一个正样本,找出这个正样本
    的K近邻(假设K=4),随机从K个近邻中选择一
    个样本,在正样本和被选出的近邻样本的连线上随
    机找一个点,这个点就是我们生成的新的正样本,一
    直重复这个过程,直到正样本和负样本数量均衡.通
    过SMOTE算法,将原有的12 836条训练样本扩充
    到25 438条,从而使正样本和负样本的数据样本数
    量达到了均衡.

如 图3所示

1.6 CNN—LSTM 神经网络

训练网络时,首先将每对访问操作的特征信息 输入到CNN-LSTM 神经网络中;,每个卷积层后都有一个最大池化 层来降低特征维数,避免过拟合.函数Concatenate 把CNN输出的卷积特征和LSTM 提取的时序 特征融合到另一个全连接层进行二分类,并通过 Dropout方法来防止过拟合,最终输出测试程序中 含有数据竞争的个数.

chap2 实验结果与分析

2.3 RQ(research question)

通过回答6个研究问题对 DeleRace 方 法进行评估

2.6 DeleRace检测结果

RQ2:DeleRace 是否能准确有效地检测出数据竞争?(表7)

2.7 与其他深度神经网络方法对比

RQ3:DeleRace是否优于现有的基于深度学习 的数据竞争检测工具,与其他的深度神经网络相比, DeleRace的表现会如何(表8)

深度学习——day38 读论文:基于深度学习的数据竞争检测方法(DeleRace计算机研究与发展 2022)相关推荐

  1. 在envi做随机森林_基于模糊孤立森林算法的多维数据异常检测方法

    引用:李倩, 韩斌, 汪旭祥. 基于模糊孤立森林算法的多维数据异常检测方法[J]. 计算机与数字工程, 2020, 48(4): 862-866. 摘要:针对孤立森林算法在进行异常检测时,忽略了每一条 ...

  2. python小波分析法检测火焰_一种基于小波分析的网络流量异常检测方法

    一种基于小波分析的网络流量异常检测方法 杜臻 ; 马立鹏 ; 孙国梓 [期刊名称] <计算机科学> [年 ( 卷 ), 期] 2019(046)008 [摘要] 对大量网络流量数据进行高质 ...

  3. 论文学习——基于集成LSTM-AE的时间序列异常检测方法

    文章目录 0 封面 1 标题 2 摘要 3 结语 4 引言 4.1 一个问题 4.1 新方向 5 实验设计 写在前面:<华中科技大学学报(自然科学版)>:主办单位:华中科技大学:中文核心: ...

  4. 论文 基于度量学习的小样本学习研究 阅读心得

    论文主要工作: 本文提出带间隔的小样本学习, 提升了所学习嵌入表示的质量. 为引入间隔, 本文根据小样本场景特点提出了多路对比损失, 使得小样本学习模型可以学习到一个更加具有判别性的度量空间,同时泛化 ...

  5. 【自然语言处理】【对比学习】SimCSE:基于对比学习的句向量表示

    相关博客: [自然语言处理][对比学习]SimCSE:基于对比学习的句向量表示 [自然语言处理]BERT-Whitening [自然语言处理][Pytorch]从头实现SimCSE [自然语言处理][ ...

  6. 深度相机 物体三维重建_基于深度相机的实时物体三维重建方法与流程

    本发明涉及三维成像领域,特别是一种能够实时地对物体或人体进行三维重建的方法. 背景技术: 三维重建技术一直是计算机图形学和计算机视觉领域的热点课题.三维重建就是从输入数据中建立3D模型.随着各种面向普 ...

  7. 论文笔记:基于并行注意力 UNet的裂缝检测方法

    0 简介 论文:基于并行注意力 UNet的裂缝检测方法(Parallel Attention Based UNet for Crack Detection): 发表:2021年发表在<计算机研究 ...

  8. 论文:基于粒子群优化的测试数据生成及其实证分析-----生成过程以及实验(计算机研究与发展)

    来源:2012年版的计算机研究与发展期刊 基于PSO的测试数据生成 (1) 核心问题:  如何保证PSO搜索算法和测试过程的协作运行  算法的基本的流程: (1)对被测程序P进行静态分析并完成: 1. ...

  9. 基于激光雷达点云的3D检测方法汇总(LiDAR only)

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨柒柒@知乎 来源丨https://zhuanlan.zhihu.com/p/436452723 ...

最新文章

  1. 在Ubuntu 14.04 64bit上安装CHM阅读器KchmViewer 5.3
  2. oracle查询转insert语句,oracle中将查出来的数据转化为insert into语句
  3. 东北大学java期末试卷,[东北大学]18年6月考试《Java语言程序设计I》考核作业(答案)...
  4. UML大战需求分析阅读笔记——03
  5. 计算机跨专业考研方向java,【计算机考研】 初试出成绩前应该做的6件事
  6. 链表C++ | 从尾部打印头部(使用栈、递归实现)_3
  7. Movavi Video Editor如何添加影片慢动作效果
  8. 最强代码生成器平台,杀疯了~
  9. python实现猜数字游戏
  10. javah生成java头文件
  11. python的扩展名是_python文件扩展名是什么
  12. 乐鑫Esp32学习之旅 17 全网首发,esp32 sdk直连京东微联·小京鱼·IoT开放平台,实现叮咚音响语音智能控制。
  13. WSJ0中的wv文件如何转换为wav文件
  14. 数据增强——mixup
  15. 小飞鱼通达二开 致远OA配置(写数据到通达OA第三方系统)接口(图文)
  16. ftp server - sftpgo_v2.2.2_windows_x86_64的简单使用
  17. 你学不好英语,可能是精神内耗太多了
  18. 一步控制台编译java_在控制台运行一个 Java 程序 Test . class ,使用的命令正确的是( )_学小易找答案...
  19. 巧用快捷键轻松设置Eexel单元格格式(转)
  20. 文心一言的魔性作图,我愣住了……

热门文章

  1. AI智能化测试——各大厂质量保障实践分享汇总(下)
  2. xp运行linux软件下载,为你演示xp系统利用U盘直接运行Linux软件 的解决方案
  3. 【雅思阅读】王希伟阅读P2(阅读填空)
  4. A Verifiable Secret Shuffle of Homomorphic Encryptions学习笔记
  5. 立体像对空间前方交会(利用外方位元素交会出地面点三维坐标)
  6. STM32------ADC(电压检测)
  7. 海外游戏代投需要注意的
  8. 幽默搞笑:我赶紧把手抽开,这死胖子暗恋我十年,死心不改啊
  9. 麒麟OS和龙芯环境编译安装GreatSQL
  10. WSL 安装22.04 出现something went wrong错误