論文の概要: Serenity: Library Based Python Code Analysis for Code Completion and
Automated Machine Learning
- arxiv url: http://arxiv.org/abs/2301.05108v1
- Date: Thu, 5 Jan 2023 02:09:08 GMT
- ステータス: 処理完了
- システム内更新日: 2023-01-15 22:59:22.642002
- Title: Serenity: Library Based Python Code Analysis for Code Completion and
Automated Machine Learning
- Title(参考訳): Serenity: コード補完と自動機械学習のためのライブラリベースのPythonコード解析
- Authors: Wenting Zhao, Ibrahim Abdelaziz, Julian Dolby, Kavitha Srinivas,
Mossad Helali, Essam Mansour
- Abstract要約: いくつかのタスクで十分であることが判明したPythonの静的解析のためのフレームワークを提案する。
Serenityは、(a)言語翻訳のコアにおける動的ディスパッチへの依存と(b)ライブラリの極端な抽象化という、2つの基本的なメカニズムを利用する。
本稿では、コード補完と自動機械学習という2つのアプリケーションで、Serenityの分析の効率性と有用性を示す。
- 参考スコア(独自算出の注目度): 8.362734311902278
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Dynamically typed languages such as Python have become very popular. Among
other strengths, Python's dynamic nature and its straightforward linking to
native code have made it the de-facto language for many research areas such as
Artificial Intelligence. This flexibility, however, makes static analysis very
hard. While creating a sound, or a soundy, analysis for Python remains an open
problem, we present in this work Serenity, a framework for static analysis of
Python that turns out to be sufficient for some tasks. The Serenity framework
exploits two basic mechanisms: (a) reliance on dynamic dispatch at the core of
language translation, and (b) extreme abstraction of libraries, to generate an
abstraction of the code. We demonstrate the efficiency and usefulness of
Serenity's analysis in two applications: code completion and automated machine
learning. In these two applications, we demonstrate that such analysis has a
strong signal, and can be leveraged to establish state-of-the-art performance,
comparable to neural models and dynamic analysis respectively.
- Abstract(参考訳): Pythonのような動的型付け言語は非常に人気がある。
その他の強みとして、pythonの動的性質とネイティブコードへの直接リンクは、人工知能のような多くの研究分野のデファクト言語となっている。
しかし、この柔軟性は静的解析を非常に困難にする。
サウンド、あるいはサウンド、Pythonのアナリティクスは依然としてオープンな問題ですが、いくつかのタスクで十分であることが判明した、Pythonの静的解析のためのフレームワークであるSerenityを紹介します。
Serenityフレームワークは2つの基本的なメカニズムを利用する。
(a)言語翻訳のコアにおける動的ディスパッチに依存すること、
(b) コードの抽象化を生成するためのライブラリの極端な抽象化。
コード補完と自動機械学習という2つのアプリケーションにおいて,serenityの分析の効率性と有用性を示す。
これら2つの応用において,これらの解析は強い信号を有し,ニューラルネットワークや動的解析に匹敵する最先端の性能を確立するために利用できることを示す。
関連論文リスト
- DyPyBench: A Benchmark of Executable Python Software [18.129031749321058]
我々は、Pythonプロジェクトの最初のベンチマークであるDyPyBenchを紹介します。
ベンチマークには、さまざまなアプリケーションドメインから50の人気のあるオープンソースプロジェクトが含まれており、合計681万行のPythonコードと30万のテストケースが含まれている。
我々は、DyPyBenchが他の動的解析の基礎を提供し、Pythonコードの実行時の振る舞いを研究することを想定する。
論文 参考訳(メタデータ) (2024-03-01T13:53:15Z) - Context-Sensitive Abstract Interpretation of Dynamic Languages [0.0]
Javaのような静的言語とPythonやJavaScriptのような動的言語の間には、IDEツールの品質に大きなギャップがあります。
これらの言語の現代的なフレームワークやライブラリは、最高のエルゴノミクスと可読性を達成するために、その動的能力を大いに利用しています。
本稿では,プログラムの動的メタプログラミングと実行を静的に解析することで,このギャップを埋めるアルゴリズムを提案する。
論文 参考訳(メタデータ) (2024-01-31T17:45:05Z) - TorchProbe: Fuzzing Dynamic Deep Learning Compilers [9.324205843411352]
PyTorch 2.0はPythonで任意のディープラーニングプログラムのコンパイルをサポートする。
動的特徴を含むテストケースを生成するためのコード変換を提案する。
我々は、PyTorchコンパイラとその基盤となるテンソルコンパイラTritonの20の既知のバグを特定した。
論文 参考訳(メタデータ) (2023-10-30T23:20:47Z) - LILO: Learning Interpretable Libraries by Compressing and Documenting Code [72.90003911433905]
LILOは、反復的に合成、圧縮、文書化を行う、ニューロシンボリックなフレームワークである。
LILOは、LLM誘導プログラム合成と、Stitchから自動化された最近のアルゴリズムの進歩を組み合わせたものである。
LILOのシンセサイザーが学習した抽象化を解釈し、デプロイするのを手助けすることで、AutoDocがパフォーマンスを向上させることが分かりました。
論文 参考訳(メタデータ) (2023-10-30T17:55:02Z) - A Static Evaluation of Code Completion by Large Language Models [65.18008807383816]
単純なプログラミング問題に対するモデル生成コードの機能的正当性を評価するために,実行ベースベンチマークが提案されている。
プログラムを実行せずにエラーを検出するlinterのような静的解析ツールは、コード生成モデルを評価するために十分に研究されていない。
抽象構文木を利用して,Pythonのコード補完における静的エラーを定量化する静的評価フレームワークを提案する。
論文 参考訳(メタデータ) (2023-06-05T19:23:34Z) - Pre-Trained Language Models for Interactive Decision-Making [72.77825666035203]
目的と観測を埋め込みのシーケンスとして表現する模倣学習の枠組みを述べる。
このフレームワークは様々な環境にまたがって効果的な一般化を可能にすることを実証する。
新たなゴールや新しいシーンを含むテストタスクでは、言語モデルによる初期化ポリシーはタスク完了率を43.6%改善する。
論文 参考訳(メタデータ) (2022-02-03T18:55:52Z) - Leveraging Language to Learn Program Abstractions and Search Heuristics [66.28391181268645]
LAPS(Language for Abstraction and Program Search)は、自然言語アノテーションを用いて、ライブラリとニューラルネットワークによる合成のための検索モデルの共同学習をガイドする手法である。
最先端のライブラリ学習システム(DreamCoder)に統合されると、LAPSは高品質なライブラリを生成し、検索効率と一般化を改善する。
論文 参考訳(メタデータ) (2021-06-18T15:08:47Z) - Automated Source Code Generation and Auto-completion Using Deep
Learning: Comparing and Discussing Current Language-Model-Related Approaches [0.0]
本稿では、異なるディープラーニングアーキテクチャを比較して、プログラミングコードに基づく言語モデルを作成し、使用する。
それぞれのアプローチのさまざまな長所と短所と、言語モデルを評価したり、実際のプログラミングコンテキストでそれらを適用するためのギャップについて論じる。
論文 参考訳(メタデータ) (2020-09-16T15:17:04Z) - Exploring Software Naturalness through Neural Language Models [56.1315223210742]
ソフトウェア自然性仮説(Software Naturalness hypothesis)は、自然言語処理で使用されるのと同じ手法でプログラミング言語を理解することができると主張している。
この仮説は,事前学習されたトランスフォーマーベース言語モデルを用いて,コード解析タスクを実行することによって検討する。
論文 参考訳(メタデータ) (2020-06-22T21:56:14Z) - OPFython: A Python-Inspired Optimum-Path Forest Classifier [68.8204255655161]
本稿では,OPFythonと表記されるPythonベースのOptimum-Path Forestフレームワークを提案する。
OPFythonはPythonベースのライブラリなので、C言語よりもフレンドリーな環境とプロトタイピングの作業スペースを提供する。
論文 参考訳(メタデータ) (2020-01-28T15:46:19Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。