Skip to main content
QUICK REVIEW

[論文レビュー] Predicting Metamorphic Relation for Matrix Calculation Programs

Karishma Rahman, Upulee Kanewala|arXiv (Cornell University)|Feb 19, 2018
Software Testing and Debugging Techniques参考文献 10被引用数 3
ひとこと要約

本稿では、制御フローグラフ(CFG)上でランダムウォークカーネルを用いたグラフカーネルベースの機械学習手法を提案し、行列計算プログラムのメタモーフィックリレーションシップ(MR)を自動で予測する。この手法は高い予測精度を達成しており、並べ替えMRに対してAUC 0.81、加法的および乗法的MRに対しては0.7以上を記録した。これにより、行列プログラムにおけるMRを熟練者の手動入力なしに効果的に予測可能であることが示された。

ABSTRACT

Matrices often represent important information in scientific applications and are involved in performing complex calculations. But systematically testing these applications is hard due to the oracle problem. Metamorphic testing is an effective approach to test such applications because it uses metamorphic relations to determine whether test cases have passed or failed. Metamorphic relations are typically identified with the help of a domain expert and is a labor intensive task. In this work we use a graph kernel based machine learning approach to predict metamorphic relations for matrix calculation programs. Previously, this graph kernel based machine learning approach was used to successfully predict metamorphic relations for programs that perform numerical calculations. Results of this study show that this approach can be used to predict metamorphic relations for matrix calculation programs as well.

研究の動機と目的

  • 信頼できるテストオラクルを欠く科学的行列計算プログラムのテストにおけるオラクル問題に対処すること。
  • メタモーフィックテストにおいて重要なが人的作業が煩雑なメタモーフィックリレーションシップ(MR)の自動同定を実現すること。
  • 従来の数値プログラムに焦点を当てた研究を、複雑なデータ構造と演算を含む行列計算関数へと拡張すること。
  • グラフカーネルベースの機械学習が、行列ベースの関数におけるMRを効果的に予測できるかを評価すること。
  • ランダムウォークカーネルが、行列計算CFGにおけるMR関連パターンを捉えるのに一般化可能かどうかを評価すること。

提案手法

  • 行列計算関数から制御フローグラフ(CFG)を構築し、ノードを原子的演算、エッジを制御フローとして定義する。
  • メソッド呼び出しノードに戻り値の型をアノテートし、原子的演算の粒度を保つための後処理を実施する。
  • ランダムウォークカーネルを用いてCFG間の類似度を計算し、グラフ内のすべてのウォークペアの和を測定することで類似度を測定する。
  • サポートベクターマシン(SVM)分類器を、55個のオープンソース行列関数を用いて訓練・テスト用に学習し、MRを予測する。
  • 過学習を防ぐために、検証セットを用いて10分割交差検証によりハイパーパrameter(Cおよびλ)を最適化する。
  • 受信操作特性曲線(ROC)の下側面積(AUC)を用いてモデルの性能を評価し、正例と負例の正しい順序付け確率を測定する。

実験結果

リサーチクエスチョン

  • RQ1グラフカーネルベースの機械学習手法は、行列計算プログラムにおけるメタモーフィックリレーションシップを効果的に予測できるか?
  • RQ2ランダムウォークカーネルは、行列関数のMR予測において他のグラフカーネルと比較してどのように性能を発揮するか?
  • RQ3異なる種類の行列ベースMRに対して、最良の予測性能を示すハイパーパrameter設定(Cおよびλ)は何か?
  • RQ4検証セットおよびテストセットの性能から示されるように、モデルは未観測の行列関数へどの程度一般化可能か?
  • RQ5最適なλ値が示すように、CFG内の長い制御フローパathがMR予測においてより情報をもたらすとされるが、その程度はどの程度か?

主な発見

  • 提案手法は並べ替えMRの予測においてAUC 0.81を達成し、強力な予測性能を示した。
  • 加法的および乗法的MRの両方のAUCスコアが0.7以上であり、3種類のMRタイプすべてにおいて一貫した有効性を示した。
  • すべてのMRタイプにおいて最適なλ値が0.9であったことから、短いパスよりも長いパスがMR予測においてより情報をもたらすことが示唆された。
  • 検証AUCとテストAUCスコアの類似性から、過学習が低く抑えられ、予測モデルの一般化性能が優れていることが示された。
  • C値の選択が性能にほとんど影響を与えないことから、さまざまな正則化強度においてもモデルが安定していることが示された。
  • 結果から、グラフカーネルベースの学習が数値プログラムから行列計算プログラムへと成功裏に拡張可能であり、自動MR予測が可能であることが確認された。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。