論文の概要: Data Augmentation for Code Translation with Comparable Corpora and Multiple References
- arxiv url: http://arxiv.org/abs/2311.00317v2
- Date: Fri, 04 Oct 2024 04:16:21 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-10-07 15:08:44.496331
- Title: Data Augmentation for Code Translation with Comparable Corpora and Multiple References
- Title(参考訳): 比較可能なコーパスと多重参照を用いたコード翻訳のためのデータ拡張
- Authors: Yiqing Xie, Atharva Naik, Daniel Fried, Carolyn Rose,
- Abstract要約: 我々は、自然言語ドキュメントから生成されたプログラムを含む、比較可能なコーパスの複数のタイプを構築し、分析する。
単一の参照変換に対する過度な適合を低減するため、利用可能な並列データに対する追加の翻訳参照を自動生成する。
実験の結果,Java,Python,C++間の変換において,平均7.5%の計算精度でコードT5が大幅に改善された。
- 参考スコア(独自算出の注目度): 21.754147577489764
- License:
- Abstract: One major challenge of translating code between programming languages is that parallel training data is often limited. To overcome this challenge, we present two data augmentation techniques, one that builds comparable corpora (i.e., code pairs with similar functionality), and another that augments existing parallel data with multiple reference translations. Specifically, we build and analyze multiple types of comparable corpora, including programs generated from natural language documentation using a code generation model. Furthermore, to reduce overfitting to a single reference translation, we automatically generate additional translation references for available parallel data and filter the translations by unit tests, which increases variation in target translations. Experiments show that our data augmentation techniques significantly improve CodeT5 for translation between Java, Python, and C++ by an average of 7.5% Computational Accuracy (CA@1), which verifies the correctness of translations by execution. The code is available at https://github.com/Veronicium/CMTrans.
- Abstract(参考訳): プログラミング言語間でコードを翻訳する際の大きな課題のひとつは、並列トレーニングデータに制限があることだ。
この課題を克服するために、同等のコーパス(例えば、類似した機能を持つコードペア)を構築する2つのデータ拡張技術と、複数の参照変換で既存の並列データを拡張する2つの方法を提案する。
具体的には、コード生成モデルを用いて自然言語文書から生成されたプログラムを含む、複数の種類の比較コーパスを構築し、分析する。
さらに,単一参照翻訳への過度な適合を低減するため,利用可能な並列データに対する追加の翻訳参照を自動生成し,単体テストによる翻訳をフィルタリングすることにより,対象翻訳のばらつきが増大する。
実験の結果,Java,Python,C++間の翻訳では,平均7.5%の計算精度(CA@1)でコードT5が大幅に向上し,実行による翻訳の正確性を検証することがわかった。
コードはhttps://github.com/Veronicium/CMTransで公開されている。
関連論文リスト
- CodeRosetta: Pushing the Boundaries of Unsupervised Code Translation for Parallel Programming [15.391781573025787]
我々は,プログラミング言語とHPC拡張間の翻訳に特化して設計されたエンコーダ・デコーダモデルであるCodeRosettaを紹介する。
CodeRosettaはC++から並列C++翻訳タスクで評価される。
以上の結果から,CodeRosettaはC++の最先端のベースラインよりも翻訳に優れていた。
論文 参考訳(メタデータ) (2024-10-27T17:34:07Z) - AdaCCD: Adaptive Semantic Contrasts Discovery Based Cross Lingual
Adaptation for Code Clone Detection [69.79627042058048]
AdaCCDは、その言語でアノテーションを使わずに、新しい言語のクローンコードを検出する新しい言語間適応手法である。
5つのプログラミング言語からなる多言語コードクローン検出ベンチマークを構築し,AdaCCDの言語間適応性を評価する。
論文 参考訳(メタデータ) (2023-11-13T12:20:48Z) - Bilingual Corpus Mining and Multistage Fine-Tuning for Improving Machine
Translation of Lecture Transcripts [50.00305136008848]
本研究では,並列コーパスマイニングのためのフレームワークを提案し,Coursera の公開講義から並列コーパスを迅速かつ効果的にマイニングする方法を提案する。
日英両国の講義翻訳において,約5万行の並列コーパスを抽出し,開発・テストセットを作成した。
また,コーパスの収集とクリーニング,並列文のマイニング,マイニングデータのクリーニング,高品質な評価スプリットの作成に関するガイドラインも提案した。
論文 参考訳(メタデータ) (2023-11-07T03:50:25Z) - Program Translation via Code Distillation [20.668229308907495]
伝統的な機械翻訳は、教師あり翻訳に並列コーパスに依存している。
最近の教師なしニューラルネットワーク翻訳技術は、データ制限を克服している。
コード蒸留(CoDist)と呼ばれる新しいモデルを提案する。
論文 参考訳(メタデータ) (2023-10-17T04:59:15Z) - CodeTransOcean: A Comprehensive Multilingual Benchmark for Code
Translation [8.979765541978292]
CodeTransOceanは、コード翻訳のための最大のプログラミング言語をサポートする大規模な包括的なデータセットである。
CodeTransOceanは3つの新しい多言語データセット、すなわち、複数のポピュラープログラミング言語間の翻訳をサポートするMultilingualTrans、ニッチプログラミング言語とポピュラー言語間の翻訳を行うNicheTrans、大言語モデル(LLM)による翻訳コードの実行可能性を評価するLLMTransで構成されている。
論文 参考訳(メタデータ) (2023-10-08T00:16:18Z) - The Effect of Alignment Objectives on Code-Switching Translation [0.0]
我々は、ある言語から別の言語への単言語文の翻訳が可能な単一の機械翻訳モデルを訓練する方法を提案している。
このモデルは、人間の意味でのバイリンガルモデルと見なすことができる。
論文 参考訳(メタデータ) (2023-09-10T14:46:31Z) - Original or Translated? On the Use of Parallel Data for Translation
Quality Estimation [81.27850245734015]
並列データと実QEデータの間には,大きなギャップがある。
並列データの場合、それは無差別であり、翻訳文はソースまたはターゲットサイドで発生する可能性がある。
パラレルコーパスのソース元部分の使用は、そのターゲット元よりも一貫して優れています。
論文 参考訳(メタデータ) (2022-12-20T14:06:45Z) - Using Document Similarity Methods to create Parallel Datasets for Code
Translation [60.36392618065203]
あるプログラミング言語から別のプログラミング言語へのソースコードの翻訳は、重要で時間を要する作業です。
本稿では、文書類似性手法を用いて、ノイズの多い並列データセットを作成することを提案する。
これらのモデルは、妥当なレベルのノイズに対して、地上の真実に基づいて訓練されたモデルと相容れない性能を示す。
論文 参考訳(メタデータ) (2021-10-11T17:07:58Z) - Meta Back-translation [111.87397401837286]
プリトレーニングされたバック翻訳モデルから擬似並列データを生成する新しい手法を提案する。
本手法は,生成する擬似並列データに対して,検証セット上で良好な処理を行うためのフォワードトランスレーションモデルを訓練するように,事前訓練されたバックトランスレーションモデルを適用するメタラーニングアルゴリズムである。
論文 参考訳(メタデータ) (2021-02-15T20:58:32Z) - Code to Comment "Translation": Data, Metrics, Baselining & Evaluation [49.35567240750619]
本稿では,この課題に対する最近のコード・コンパートメント・データセットについて分析する。
それらをWMT19と比較する。WMT19は、アート自然言語翻訳者の状態のトレーニングに頻繁に使用される標準データセットである。
ソースコードデータとWMT19自然言語データの間には,いくつかの興味深い違いがある。
論文 参考訳(メタデータ) (2020-10-03T18:57:26Z) - Unsupervised Translation of Programming Languages [19.56070393390029]
ソース・トゥ・ソース(source-to-source)またはトランスコンパイラ(transcompiler)は、ソースコードをハイレベルなプログラミング言語から別のプログラミング言語に変換するシステムである。
私たちは、オープンソースのGitHubプロジェクトからソースコードでモデルをトレーニングし、C++、Java、Python間の関数を高い精度で翻訳できることを示しています。
論文 参考訳(メタデータ) (2020-06-05T15:28:01Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。