講演抄録/キーワード |
講演名 |
2021-03-06 13:40
CNN-BIシステムによる物体検出アルゴリズムを用いたプログラムの不具合発見のための研究 ○小川一彦・中谷多哉子(放送大) KBSE2020-45 |
抄録 |
(和) |
我々は,プログラムの不具合の箇所を予測するため,不具合を起こしたプログラムのソースコードを画像化し,物体検出に適用される深層学習のアルゴリズムによる学習を行い,プログラムの不具合の箇所を予測できるか検証した.
不具合を起こすプログラムの記述は,ソースコードの見た目に共通点があり,深層学習のひとつであるCNN(Convolutional Neural Network)を適用することで,不具合を発見できると考えたのである.
物体検出のアルゴリズムは,CNNによるリアルタイムオブジェクトの検出アルゴリズムであるYOLO(You Look Only Onse)を使用した.
本稿では,不具合の推論を行う上で課題であった推論の精度の向上と,不具合の箇所の特定を試みた.
我々が,これまで行なってきた画像認識による分類ではなく,物体検出アルゴリズムを用いて不具合の箇所を推論させることで精度の向上を目指す.
プログラムの不具合を推論させるため,実際に不具合対応した箇所をソースコード片として学習させる.
学習後,学習結果のモデルを用いて,被験者の5本のプログラムを推論させる.
推論では,物体検出アルゴリズムが,動物や人工物を検出するように,被験者のプログラムを画像化したソースコードに,バウンディングボックスで不具合の箇所を囲む.
実験の結果,画像認識を用いた推論と比較して,プログラムの不具合を推論する精度が向上すること,および不具合の箇所を指摘することを検証する. |
(英) |
In order to predict the location of program faults, we generated images the source code of a faulty program and trained it with a deep learning algorithm applied to object detection to see if We found program fragments where faults may exist.
We found that the program statements that cause of faults have something in common in the appearance of the source code, and that we could find the faults by applying CNN (Convolutional Neural Network), a type of deep learning.
For the object detection algorithm, we used YOLO (You Look Only Ones), a CNN-based real-time object detection algorithm.
In this paper, we attempted to improve the accuracy of inference and to identify the location of faults, which has been a problem in inferring faults.
Our goal is to improve the accuracy by using an object detection algorithm to infer the location of faults, instead of the image recognition method we have used so far.
In order for the learning models to infer the faults in the program, they learn the actual faults as source code fragments.
After training, we use the learning model to reason about the subject's five programs.
In the inference, we used bounding boxes to enclose faults in the source code of the subject's programs, just as an object detection algorithm would detect animals or artifacts.
In our experiments, we verify that our method improves the accuracy of inferring faults in programs and points out the fault compared to previous inference methods using image recognition. |
キーワード |
(和) |
プログラムの不具合推論 / 畳み込みニューラルネットワーク / ソースコードの画像化 / 深層学習 / 物体検出 / / / |
(英) |
bug inference / convolutional nural network / image of source code / deep learning / object detection / / / |
文献情報 |
信学技報, vol. 120, no. 423, KBSE2020-45, pp. 65-70, 2021年3月. |
資料番号 |
KBSE2020-45 |
発行日 |
2021-02-26 (KBSE) |
ISSN |
Online edition: ISSN 2432-6380 |
著作権に ついて |
技術研究報告に掲載された論文の著作権は電子情報通信学会に帰属します.(許諾番号:10GA0019/12GB0052/13GB0056/17GB0034/18GB0034) |
PDFダウンロード |
KBSE2020-45 |