1.紙読書
$ \ lfloor AB / P \ rfloor P $
私は下にあったICSE2019の決定方向を読んテーマに行く、読むためにスケジュール上の異なる方向に紙。
読書は現在、プログラム自動修復方向で
スポットやリファクタリング一貫性のないメソッド名に学びます 。
- 問題定義:スポットとリファクタリング一貫性のないメソッド名。(この方法は、既にメソッド名及びメソッド本体を含む実装しています。)
- バックグラウンド
- 段落ベクトル:メソッド名の間の類似度を計算するためにそれを使用。
- CNNS:同様の方法本体を識別するためにそれを使用。
- Word2Vec:メソッド本体のトークンを埋め込みます。
- 我々の方法:
教師なし学習
これらmethod--訓練と識別&提案に2つのフェーズがあります。
A。トレーニングメソッド名のベクトル空間とメソッド名のスペース-相は、二つのベクトル空間を生成するためにトレーニングセットにメソッド名とメソッド本体のトークンを取ります。
B。矛盾の識別
方法を考えると、彼らは(その名前のために隣接するベクトルの集合をとる\(n_i \) )と、本体(\(b_i \) )をそれぞれ(表記\(ADJ(n_i)\)と\(ADJ(b_i) \) )
隣接関係は、コサイン類似度によって測定されます。
場合[(のメソッド名\(ADJ(n_i)\))] \(\ bigcap \)〔のメソッド名(\(ADJ(b_i)\))] = \(\ emptyset \) 、それが矛盾しています。
同様の現象ではなく、同じ名前をキャプチャするために、それらは、代わりに、完全なメソッド名を比較する各メソッド名の最初のサブトークンを取るために一貫性の条件を緩和し、
場合【のメソッド名の最初のサブトークン(\(ADJ(n_i)\))] \(\ bigcap \)〔のメソッド名の最初のサブトークン(\(ADJ(b_i)\))] = (\ \ emptyset \) 、それは矛盾しています。
B。提案はのメソッド名のセットに新しい名前を選択することです(ADJ(\(b_i \) ))いくつか順位の戦略に応じました。