楠本研究室

業績一覧

ホーム業績一覧

ソースコードの「自然さ」を利用した自動生成ファイルの特定

ソースコードの「自然さ」を利用した自動生成ファイルの特定
電子情報通信学会技術研究報告, vol.117, no.380, pp.019-024 (2018)
概要: 近年,ソースコード解析に関する研究が盛んに行われている.ソースコードの解析において,解析対象のソースファイルの中には自動生成ファイルが含まれていることがある.しかし解析結果が目立たない場合や解析時間が増加する場合があるため,多くの場合自動生成ファイルは除外して解析する必要がある.自動生成ファイルを除外する方法として,ソースコードが自動生成ファイルであるかを目視で判定するという方法がある.しかしこの方法は時間的コストが大きくなってしまう.他にも自動生成ファイル内に存在する特有のコメント文を文字列検索することにより特定するという方法があるが,この方法に関しても,自動生成ファイル特有のコメント文が消された場合に,自動生成ファイルを自動的に特定できないといった問題がある.そこで本研究では,自動生成コードとしての「自然さ」と人が作成したコードとしての「自然さ」を比較することで任意の自動生成ファイルを自動的に特定する手法を提案する.コードの自然さ,すなわち,自動生成あるいは人が生成したコードとしてもっともらしい度合いは,確率的言語モデルであるN-gram言語モデルによって数値化する.この提案手法を評価するために,4つの自動生成プログラムから生成された自動生成ファイル群を対象に実験を行った.その結果,高い精度で自動生成ファイルを特定できた.また,機械学習に基づいた既存の手法と比較した結果,精度が向上していることを確認した.
@inproceedings{土居真之2018,
  author = {土居 真之 and 肥後 芳樹 and 有馬 諒 and 下仲 健斗 and 楠本 真二},
  title = {ソースコードの「自然さ」を利用した自動生成ファイルの特定},
  booktitle = {電子情報通信学会技術研究報告},
  volume = {117},
  number = {380},
  pages = {019--024},
  year = {2018},
  month = {jan}
}