論文の概要: Generative Type Inference for Python
- arxiv url: http://arxiv.org/abs/2307.09163v1
- Date: Tue, 18 Jul 2023 11:40:31 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-23 17:14:07.280548
- Title: Generative Type Inference for Python
- Title(参考訳): Python用の生成型推論
- Authors: Yun Peng, Chaozheng Wang, Wenxuan Wang, Cuiyun Gao, Michael R. Lyu
- Abstract要約: 本稿では静的解析から静的ドメイン知識を取り入れた数ショットの生成型推論手法であるTypeGenを紹介する。
TypeGenは、静的解析の型推論ステップを、型依存グラフ(TDG)に基づいたプロンプトに変換することで、COTプロンプトを生成する。
実験の結果、TypeGenは引数型予測では10.0%、Top-1 Exact Matchでは22.5%で最高のベースラインであるType4Pyを上回っている。
- 参考スコア(独自算出の注目度): 62.01560866916557
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Python is a popular dynamic programming language, evidenced by its ranking as
the second most commonly used language on GitHub. However, its dynamic type
system can lead to potential type errors, leading researchers to explore
automatic type inference approaches for Python programs. The rule-based type
inference approaches can ensure the accuracy of predicted variable types, but
they suffer from low coverage problems. Supervised type inference approaches,
while feature-agnostic, require large, high-quality annotated datasets and are
limited to pre-defined types. As zero-shot approaches, the cloze-style
approaches reformulate the type inference problem into a fill-in-the-blank
problem. However, their performance is limited.
This paper introduces TypeGen, a few-shot generative type inference approach
that incorporates static domain knowledge from static analysis. TypeGen creates
chain-of-thought (COT) prompts by translating the type inference steps of
static analysis into prompts based on the type dependency graphs (TDGs),
enabling language models to learn from how static analysis infers types. By
combining COT prompts with code slices and type hints, TypeGen constructs
example prompts from human annotations. TypeGen only requires very few
annotated examples to teach language models to generate similar COT prompts via
in-context learning. Moreover, TypeGen enhances the interpretability of results
through the use of the input-explanation-output strategy. Experiments show that
TypeGen outperforms the best baseline Type4Py by 10.0% for argument type
prediction and 22.5% in return value type prediction in terms of top-1 Exact
Match by using only five examples. Furthermore, TypeGen achieves substantial
improvements of 27% to 84% compared to the zero-shot performance of large
language models with parameter sizes ranging from 1.3B to 175B in terms of
top-1 Exact Match.
- Abstract(参考訳): Pythonは人気のある動的プログラミング言語で、GitHubで2番目に一般的に使われている言語としてランク付けされている。
しかし、その動的型システムは潜在的な型エラーを引き起こす可能性があるため、研究者はPythonプログラムの自動型推論アプローチを探索する。
ルールベースの型推論アプローチは、予測された変数型の精度を保証するが、カバレッジの低い問題に悩まされる。
教師付き型推論アプローチは、機能に依存しないが、大きな高品質のアノテートデータセットを必要とし、事前に定義された型に限定されている。
ゼロショットのアプローチでは、クローゼスタイルのアプローチは型推論問題を補間問題に再構成する。
しかし、パフォーマンスは限られている。
本稿では静的解析から静的ドメイン知識を取り入れた数ショット生成型推論手法であるTypeGenを紹介する。
typegenは、静的解析の型推論ステップを型依存グラフ(tdgs)に基づいてプロンプトに変換することによって、chain-of-thought(cot)プロンプトを生成する。
COTプロンプトとコードスライスと型ヒントを組み合わせることで、TypeGenは人間のアノテーションからサンプルプロンプトを生成する。
typegenは、言語モデルにコンテキスト内学習を通じて同様のcotプロンプトを生成するための注釈付き例をほんのわずかしか必要としない。
さらに、TypeGenは入出力戦略を用いて結果の解釈可能性を高める。
実験の結果、TypeGenは引数型の予測では10.0%、Top-1 Exact Matchでは22.5%のベースラインであるType4Pyをわずか5つの例で上回っている。
さらに、TypeGenは1.3Bから175Bまでのパラメータサイズを持つ大きな言語モデルのゼロショット性能と比較して、27%から84%の大幅な改善を実現している。
関連論文リスト
- Language Models for Text Classification: Is In-Context Learning Enough? [54.869097980761595]
最近の基礎言語モデルでは、ゼロショットや少数ショットの設定で多くのNLPタスクで最先端のパフォーマンスが示されている。
より標準的なアプローチよりもこれらのモデルの利点は、自然言語(prompts)で書かれた命令を理解する能力である。
これにより、アノテーション付きインスタンスが限られているドメインのテキスト分類問題に対処するのに適している。
論文 参考訳(メタデータ) (2024-03-26T12:47:39Z) - Type Prediction With Program Decomposition and Fill-in-the-Type Training [2.7998963147546143]
大規模な言語モデルを活用する型予測のための検索ベースのアプローチであるOpenTauを構築した。
TypeScriptの型予測のための新しいデータセットで作業を評価し、ファイルタイプチェックの47.4%(14.5%の絶対的改善)とファイル毎の3.3型のエラー率を示している。
論文 参考訳(メタデータ) (2023-05-25T21:16:09Z) - TypeT5: Seq2seq Type Inference using Static Analysis [51.153089609654174]
本稿では,型予測をコード入力タスクとして扱う新しい型推論手法を提案する。
本手法では静的解析を用いて,型シグネチャがモデルによって予測されるコード要素毎に動的コンテキストを構築する。
また,モデルの入力コンテキストに事前の型予測を組み込んだ反復復号方式を提案する。
論文 参考訳(メタデータ) (2023-03-16T23:48:00Z) - Type4Py: Deep Similarity Learning-Based Type Inference for Python [9.956021565144662]
類似度学習に基づくpythonの型推論モデルであるtype4pyを提案する。
高次元空間における同種の型と異種の型を区別することを学ぶ階層的ニューラルネットワークモデルを設計する。
Top-1の予測を考えると、Type4PyはTypilusとTypeWriterよりも19.33%、13.49%高い精度である。
論文 参考訳(メタデータ) (2021-01-12T13:32:53Z) - Unsupervised Label-aware Event Trigger and Argument Classification [73.86358632937372]
まず,利用可能なツール(srlなど)でイベントを識別し,それを事前に定義されたイベントタイプに自動マップする,教師なしイベント抽出パイプラインを提案する。
事前訓練された言語モデルを利用して、イベントトリガと引数の両方の事前定義された型を文脈的に表現します。
我々は、トリガーの83%と引数の54%を正しい型にマッピングし、以前のゼロショットアプローチのパフォーマンスをほぼ倍にしました。
論文 参考訳(メタデータ) (2020-12-30T17:47:24Z) - Advanced Graph-Based Deep Learning for Probabilistic Type Inference [0.8508198765617194]
本稿では,新しい型フローグラフ(TFG)表現で動作するグラフニューラルネットワーク(GNN)モデルについて紹介する。
我々のGNNモデルは、所定の入力プログラムに対してTFGの型ラベルを予測するために訓練されている。
我々の2つのGNN構成の精度は、それぞれ87.76%と86.89%である。
論文 参考訳(メタデータ) (2020-09-13T08:13:01Z) - Learning Sparse Prototypes for Text Generation [120.38555855991562]
プロトタイプ駆動のテキスト生成は、トレーニングコーパス全体の保存とインデックスを必要とするため、テスト時に非効率である。
本稿では,言語モデリング性能を向上するスパースなプロトタイプサポートセットを自動的に学習する新しい生成モデルを提案する。
実験では,1000倍のメモリ削減を実現しつつ,従来のプロトタイプ駆動型言語モデルよりも優れていた。
論文 参考訳(メタデータ) (2020-06-29T19:41:26Z) - LambdaNet: Probabilistic Type Inference using Graph Neural Networks [46.66093127573704]
本稿では,グラフニューラルネットワークに基づくTypeScriptの確率型推論手法を提案する。
弊社のアプローチでは、数値や文字列などの標準型と、トレーニング中に遭遇していないユーザ定義型の両方を予測できる。
論文 参考訳(メタデータ) (2020-04-29T17:48:40Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。