論文の概要: Data Augmentation for Code Translation with Comparable Corpora and
Multiple References
- arxiv url: http://arxiv.org/abs/2311.00317v1
- Date: Wed, 1 Nov 2023 06:01:22 GMT
- ステータス: 処理完了
- システム内更新日: 2023-11-02 14:29:36.353308
- Title: Data Augmentation for Code Translation with Comparable Corpora and
Multiple References
- Title(参考訳): 比較コーパスと複数参照を用いたコード翻訳のためのデータ拡張
- Authors: Yiqing Xie and Atharva Naik and Daniel Fried and Carolyn Rose
- Abstract要約: 我々は、自然言語ドキュメントから生成されたプログラムを含む、比較可能なコーパスの複数のタイプを構築し、分析する。
単一の参照変換に対する過度な適合を低減するため、利用可能な並列データに対する追加の翻訳参照を自動生成する。
実験の結果,Java,Python,C++間の変換において,平均7.5%の計算精度でコードT5が大幅に改善された。
- 参考スコア(独自算出の注目度): 23.764843421101176
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- 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つのデータ拡張手法を提案する。1つは類似するコーパス(コードペアと類似機能)を構築し,もう1つは既存の並列データを複数の参照変換で拡張する。
具体的には、コード生成モデルを用いて自然言語文書から生成されたプログラムを含む、複数の種類の比較コーパスを構築し、分析する。
さらに,単一参照翻訳への過度な適合を減らすために,利用可能な並列データに対する追加の翻訳参照を自動生成し,対象翻訳のばらつきを増加させるユニットテストによって翻訳をフィルタリングする。
実験の結果,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)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。