[論文レビュー] ALFAA: Active Learning Fingerprint Based Anti-Aliasing for Correcting Developer Identity Errors in Version Control Data
ALFAAは、時差帯パターン、変更されたファイル、およびコミットメッセージの埋め込みという行動的フィンガープリント(時間帯パターン、変更されたファイル、コミットメッセージの埋め込み)を用いて、バージョン管理データ内の開発者IDの誤りを是正するアクティブラーニングに基づくフィンガープリント手法を提案する。本手法は、商業的および研究的手法と比較して顕著に高い正確性を達成し、誤りを数倍まで低減し、ID是正が推定された開発者コミュニティネットワークの整合性を著しく向上させることを示している。
Graphs of developer networks are important for software engineering research and practice. For these graphs to realistically represent the networks, accurate developer identities are imperative. We aim to identify developer identity errors from open source software repositories in VCS, investigate the nature of these errors, design corrective algorithms, and estimate the impact of the errors on networks inferred from this data. We investigate these questions using over 1B Git commits with over 23M recorded author identities. By inspecting the author strings that occur most frequently, we group identity errors into categories. We then augment the author strings with 3 behavioral fingerprints: time-zone frequencies, the set of files modified, and a vector embedding of the commit messages. We create a manually validated set of identities for a subset of OpenStack developers using an active learning approach and use it to fit supervised learning models to predict the identities for the remaining author strings in OpenStack. We compare these predictions with a commercial effort and a leading research method. Finally, we compare network measures for file-induced author networks based on corrected and raw data. We find commits done from different environments, misspellings, organizational IDs, default values, and anonymous IDs to be the major sources of errors. We also find supervised learning methods to reduce errors by several times in comparison to existing methods and the active learning approach to be an effective way to create validated datasets and that correction of developer identity has a large impact on the inference of the social network. We believe that our proposed Active Learning Fingerprint Based Anti-Aliasing (ALFAA) approach will expedite research progress in the software engineering domain for applications that depend upon graphs of developers or other social networks.
研究の動機と目的
- バージョン管理システムにおける開発者ID誤りの一般的な原因を特定・分類すること。
- 表記のスペルミス以外の非文法的行動的フィンガープリント(例:時差帯の使用、ファイル変更パターン、コミットメッセージの埋め込み)が、同音異義語の区別にどのように寄与できるかを調査すること。
- 予測の不確実性が最も高いものを優先して手動ラベル付けを行うアクティブラーニング戦略を用いて、手動ラベル付け作業の負荷を最小限に抑えること。
- ID誤りが推定された開発者コミュニティネットワークの測定値に与える影響を評価し、是正の必要性を示すこと。
- ソフトウェア工学研究における開発者ネットワーク分析の信頼性を向上させるスケーラブルでオープンソースのソリューションを開発すること。
提案手法
- 本手法は、3つの情報源から行動的フィンガープリントを構築する:コミットの時差帯頻度、変更されたファイルの集合、NLP技術を用いたコミットメッセージのベクトル埋め込み。
- OpenStack開発者の手動検証済みサブセットを用いて訓練された教師あり学習モデル(ランダムフォレスト)を適用し、未検証の著作者文字列に対する正しいIDを予測する。
- 不確実性の高い予測を繰り返し選択して手動ラベル付けを行うアクティブラーニングを用い、人的作業の負荷を最小限に抑えつつモデルの正確性を最大化する。
- 同音異義語は、頻度の高い著作者文字列を介して特定され、その後、フィンガープリントベースの照合によりコミットが正しい開発者に割り当てられる。
- 高不確実性または高頻度クラスタ内でのみO(n²)の類似度計算に焦点を当てることで、大規模データセットへのスケーラビリティを確保する。
- 修正済みデータと元のデータの間で、次数中心性、クラスタリング係数、制約、固有ベクトル中心性といったネットワーク指標を比較し、影響を評価する。
実験結果
リサーチクエスチョン
- RQ1バージョン管理データにおける開発者ID誤りの主な原因は何であるか?
- RQ2名前のスペルミス以外の行動的フィンガープリント(例:時差帯の使用、ファイル変更パターン、コミットメッセージの埋め込み)は、ソフトウェアリポジトリにおける同音異義語の区別にどのように寄与できるか?
- RQ3高精度なID解決を達成しつつ、手動ラベル付け作業の負荷をどのように最小限に抑えることができるか?
- RQ4提案手法は、商業的および研究ベースの区別手法と比較してどのように異なるか?
- RQ5ID誤りは、推定された開発者コミュニティネットワークの構造と指標にどのような影響を与えるか?
主な発見
- 主な誤り要因は、環境依存のコミット、スペルミス、組織またはツールのID(例:'Jenkins Build')、デフォルト名(例:'root')、および匿名識別子であった。
- 行動的フィンガープリントを用いた教師あり学習により、商業的ソリューションおよび最近の研究手法と比較して、ID誤りが数倍まで低減された。
- 修正済みデータと元のデータの間で、ネットワーク指標(次数中心性、クラスタリング係数、制約、固有ベクトル中心性)のスピアマン順位相関係数がすべて0.95未満であったため、ネットワーク構造に顕著な歪みが生じていることが示された。
- 開発者の25パーセンタイルにおいて、修正済みネットワークでは共同作業者数が210であったが、元のネットワークでは113にとどまっていたため、協働関係の推定が顕著に低く評価されていた。
- 固有ベクトル中心性は、元のネットワークでは0.007(修正済み:0.024)であり、4倍以上も低かったため、専門性や影響力の推定に深刻な歪みが生じていた。
- アクティブラーニングアプローチにより、最小限の手動ラベル付けで迅速にモデルの性能が向上し、大規模適用の可能性を示した。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。