論文の概要: Assessing Validity of Static Analysis Warnings using Ensemble Learning
- arxiv url: http://arxiv.org/abs/2104.11593v1
- Date: Wed, 21 Apr 2021 19:39:20 GMT
- ステータス: 処理完了
- システム内更新日: 2021-04-26 12:55:44.232231
- Title: Assessing Validity of Static Analysis Warnings using Ensemble Learning
- Title(参考訳): アンサンブル学習による静的解析警告の有効性評価
- Authors: Anshul Tanwar, Hariharan Manikandan, Krishna Sundaresan, Prasanna
Ganesan, Sathish Kumar Chandrasekaran, Sriram Ravi
- Abstract要約: 静的分析(SA)ツールは、コードの潜在的な弱点を特定し、事前に修正するために使われ、コードが開発中である。
これらのルールベースの静的解析ツールは一般的に、実際のものとともに多くの誤った警告を報告します。
機械学習(ML)ベースの学習プロセスを提案し、ソースコード、履歴コミットデータ、および分類器アンサンブルを使用してTrue警告を優先します。
- 参考スコア(独自算出の注目度): 4.05739885420409
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Static Analysis (SA) tools are used to identify potential weaknesses in code
and fix them in advance, while the code is being developed. In legacy codebases
with high complexity, these rules-based static analysis tools generally report
a lot of false warnings along with the actual ones. Though the SA tools uncover
many hidden bugs, they are lost in the volume of fake warnings reported. The
developers expend large hours of time and effort in identifying the true
warnings. Other than impacting the developer productivity, true bugs are also
missed out due to this challenge. To address this problem, we propose a Machine
Learning (ML)-based learning process that uses source codes, historic commit
data, and classifier-ensembles to prioritize the True warnings from the given
list of warnings. This tool is integrated into the development workflow to
filter out the false warnings and prioritize actual bugs. We evaluated our
approach on the networking C codes, from a large data pool of static analysis
warnings reported by the tools. Time-to-time these warnings are addressed by
the developers, labelling them as authentic bugs or fake alerts. The ML model
is trained with full supervision over the code features. Our results confirm
that applying deep learning over the traditional static analysis reports is an
assuring approach for drastically reducing the false positive rates.
- Abstract(参考訳): 静的分析(SA)ツールは、コードの潜在的な弱点を特定し、事前に修正するために使われ、コードが開発中である。
複雑なレガシーコードベースでは、これらのルールベースの静的解析ツールは、一般的に実際の警告とともに多くの誤った警告を報告します。
SAツールは多くの隠れたバグを発見したが、報告された偽の警告の量で失われている。
開発者は本当の警告を特定するのに多くの時間と労力を費やします。
開発者の生産性に影響を与える以外に、真のバグもこの課題のために見逃されている。
そこで本研究では,機械学習(ml)ベースの学習プロセスを提案する。ソースコード,履歴コミットデータ,分類器センブルを用いて,与えられた警告リストから真の警告を優先する。
このツールは開発ワークフローに統合され、偽の警告をフィルターし、実際のバグを優先する。
ツールによって報告された静的解析警告の大きなデータプールから,ネットワークCコードのアプローチを評価した。
これらの警告は開発者によってリアルタイムに対処され、本物のバグや偽の警告としてラベル付けされる。
MLモデルは、コード機能の完全な監視でトレーニングされている。
その結果,従来の静的解析レポートにディープラーニングを適用することは,偽陽性率を大幅に下げるための確実なアプローチであることが確認された。
関連論文リスト
- Understanding Code Understandability Improvements in Code Reviews [79.16476505761582]
GitHub上のJavaオープンソースプロジェクトからの2,401のコードレビューコメントを分析した。
改善提案の83.9%が承認され、統合され、1%未満が後に復活した。
論文 参考訳(メタデータ) (2024-10-29T12:21:23Z) - FineWAVE: Fine-Grained Warning Verification of Bugs for Automated Static Analysis Tools [18.927121513404924]
ASAT(Automated Static Analysis Tools)は、バグ検出を支援するために、時間とともに進化してきた。
これまでの研究は、報告された警告を検証するための学習ベースの方法を探究してきた。
我々は,バグに敏感な警告をきめ細かい粒度で検証する学習ベースアプローチであるFineWAVEを提案する。
論文 参考訳(メタデータ) (2024-03-24T06:21:35Z) - Quieting the Static: A Study of Static Analysis Alert Suppressions [7.324969824727792]
我々は、FinderbugsやSpotbugsを使って、設定やソースコードのアノテーションを警告する1,425のオープンソースプロジェクトについて検討する。
ほとんどの警告は抑制されているが、一部の警告は頻繁に抑圧されている。
発見は、静的解析ツールの使用に関するコミュニケーションと教育の改善の必要性を浮き彫りにする。
論文 参考訳(メタデータ) (2023-11-13T17:16:25Z) - ACWRecommender: A Tool for Validating Actionable Warnings with Weak
Supervision [10.040337069728569]
静的解析ツールは潜在的なバグを見つけるために開発者の間で人気を集めているが、その広く採用されていることは、偽のアラーム率の高さによって妨げられている。
従来の研究は、行動警告の概念を提案し、行動警告と誤警報を区別するために機械学習手法を適用した。
本稿では,ACWRecommenderと呼ばれる2段階のフレームワークを提案する。
論文 参考訳(メタデータ) (2023-09-18T12:35:28Z) - CONCORD: Clone-aware Contrastive Learning for Source Code [64.51161487524436]
セルフ教師付き事前トレーニングは、多くのダウンストリームSEタスクに価値のあるジェネリックコード表現を学ぶための牽引役になった。
汎用的な表現学習のために、開発者が日々どのようにコードをコーディングするかは、要因としても不可欠である、と私たちは主張する。
特に,表現空間に良性クローンを近づける自己教師型コントラスト学習戦略であるCONCORDを提案する。
論文 参考訳(メタデータ) (2023-06-05T20:39:08Z) - Tracking the Evolution of Static Code Warnings: the State-of-the-Art and
a Better Approach [18.350023994564904]
静的バグ検出ツールは、悪いプログラミングプラクティスや潜在的な欠陥など、開発者がコード内の問題を検出するのに役立つ。
最近のソフトウェア開発において、コードレビューや継続的統合のような静的バグ検出を統合しようとする動きは、報告された警告を即時に修正する動機付けをより良くしている。
論文 参考訳(メタデータ) (2022-10-06T03:02:32Z) - Annotation Error Detection: Analyzing the Past and Present for a More
Coherent Future [63.99570204416711]
我々は、潜在的なアノテーションの誤りを検知するための18の手法を再実装し、9つの英語データセット上で評価する。
アノテーションエラー検出タスクの新しい形式化を含む一様評価設定を定義する。
私たちはデータセットと実装を,使いやすく,オープンソースのソフトウェアパッケージとしてリリースしています。
論文 参考訳(メタデータ) (2022-06-05T22:31:45Z) - Learning to Reduce False Positives in Analytic Bug Detectors [12.733531603080674]
偽陽性のバグ警告を識別するためのトランスフォーマーに基づく学習手法を提案する。
我々は,静的解析の精度を17.5%向上させることができることを示した。
論文 参考訳(メタデータ) (2022-03-08T04:26:26Z) - Sample-Efficient Safety Assurances using Conformal Prediction [57.92013073974406]
早期警戒システムは、安全でない状況が差し迫ったときに警告を提供することができる。
安全性を確実に向上させるためには、これらの警告システムは証明可能な偽陰性率を持つべきである。
本稿では,共形予測と呼ばれる統計的推論手法とロボット・環境力学シミュレータを組み合わせたフレームワークを提案する。
論文 参考訳(メタデータ) (2021-09-28T23:00:30Z) - Software Vulnerability Detection via Deep Learning over Disaggregated
Code Graph Representation [57.92972327649165]
この研究は、コードコーパスから安全でないパターンを自動的に学習するためのディープラーニングアプローチを探求する。
コードには解析を伴うグラフ構造が自然に認められるため,プログラムの意味的文脈と構造的規則性の両方を利用する新しいグラフニューラルネットワーク(GNN)を開発する。
論文 参考訳(メタデータ) (2021-09-07T21:24:36Z) - D2A: A Dataset Built for AI-Based Vulnerability Detection Methods Using
Differential Analysis [55.15995704119158]
静的解析ツールによって報告されたラベル問題に対する差分解析に基づくアプローチであるD2Aを提案する。
D2Aを使用して大きなラベル付きデータセットを生成し、脆弱性識別のためのモデルをトレーニングします。
論文 参考訳(メタデータ) (2021-02-16T07:46:53Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。