論文の概要: Static Analysis Driven Enhancements for Comprehension in Machine Learning Notebooks
- arxiv url: http://arxiv.org/abs/2301.04419v4
- Date: Tue, 11 Jun 2024 11:37:17 GMT
- ステータス: 処理完了
- システム内更新日: 2024-06-13 01:37:54.366754
- Title: Static Analysis Driven Enhancements for Comprehension in Machine Learning Notebooks
- Title(参考訳): 機械学習ノートにおける理解のための静的解析駆動型強化
- Authors: Ashwin Prasad Shivarpatna Venkatesh, Samkutty Sabu, Mouli Chekkapalli, Jiawei Wang, Li Li, Eric Bodden,
- Abstract要約: Jupyterノートブックを使えば、開発者はリッチテキストとインラインビジュアライゼーションでコードスニペットをインターリーブできる。
最近の研究では、Jupyterノートの大部分が文書化されておらず、物語構造が欠けていることが示されている。
本稿では、コードセルに分類型マークダウンヘッダーを付加する新しいツールベースのアプローチであるHeaderGenを提案する。
- 参考スコア(独自算出の注目度): 7.142786325863891
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Jupyter notebooks enable developers to interleave code snippets with rich-text and in-line visualizations. Data scientists use Jupyter notebook as the de-facto standard for creating and sharing machine-learning based solutions, primarily written in Python. Recent studies have demonstrated, however, that a large portion of Jupyter notebooks available on public platforms are undocumented and lacks a narrative structure. This reduces the readability of these notebooks. To address this shortcoming, this paper presents HeaderGen, a novel tool-based approach that automatically annotates code cells with categorical markdown headers based on a taxonomy of ML operations, and classifies and displays function calls according to this taxonomy. For this functionality to be realized, HeaderGen enhances an existing call graph analysis in PyCG. To improve precision, HeaderGen extends PyCG's analysis with support for handling external library code and flow-sensitivity. The former is realized by facilitating the resolution of function return-types. The evaluation on 15 real-world Jupyter notebooks from Kaggle shows that HeaderGen's underlying call graph analysis yields high accuracy (95.6% precision and 95.3% recall). This is because HeaderGen can resolve return-types of external libraries where existing type inference tools such as pytype (by Google), pyright (by Microsoft), and Jedi fall short. The header generation has a precision of 85.7% and a recall rate of 92.8%. In a user study, HeaderGen helps participants finish comprehension and navigation tasks faster. To further evaluate the type inference capability of tools, we introduce TypeEvalPy, a framework for evaluating type inference tools with a micro-benchmark containing 154 code snippets and 845 type annotations. Our comparative analysis on four tools revealed that HeaderGen outperforms other tools in exact matches with the ground truth.
- Abstract(参考訳): Jupyterノートブックを使えば、開発者はリッチテキストとインラインビジュアライゼーションでコードスニペットをインターリーブできる。
データサイエンティストはJupyterノートブックを、主にPythonで書かれた機械学習ベースのソリューションの作成と共有のためのデファクトスタンダードとして使っている。
しかし、最近の研究では、公共のプラットフォームで利用可能なJupyterノートの大部分が文書化されておらず、物語構造が欠けていることが示されている。
これにより、これらのノートの読みやすさが低下する。
本稿では,ML操作の分類に基づく分類的マークダウンヘッダーをコードセルに自動アノテートし,その分類に従って関数呼び出しを分類・表示する,新しいツールベースのアプローチであるHeaderGenを提案する。
この機能を実現するために、HeaderGenはPyCGの既存のコールグラフ分析を強化した。
精度を向上させるため、HeaderGenはPyCGの分析を拡張し、外部ライブラリコードの処理とフロー感度をサポートする。
前者は関数戻り型の解決を容易にすることで実現される。
Kaggleによる15個の実世界のJupyterノートの評価は、HeaderGenの基盤となるコールグラフ解析は高い精度(95.6%の精度と95.3%のリコール)が得られることを示している。
これは、HeaderGenがpytype(Google)、pyright(Microsoft)、Jediのような既存の型推論ツールが不足している外部ライブラリの戻り型を解決できるためである。
ヘッダ生成の精度は85.7%、リコールレートは92.8%である。
ユーザスタディでは、HeaderGenが参加者の理解とナビゲーション作業の高速化を支援する。
ツールの型推論機能をさらに評価するために,154のコードスニペットと845の型アノテーションを含むマイクロベンチマークを備えた型推論ツール評価フレームワークであるTypeEvalPyを紹介した。
4つのツールの比較分析により、HeaderGenは他のツールよりも優れていることが分かりました。
関連論文リスト
- Typhon: Automatic Recommendation of Relevant Code Cells in Jupyter Notebooks [0.3122672716129843]
本稿では,Jupyterノートブックのコードセルを自動的に推薦するTyphonを提案する。
Typhonは開発者のマークダウン記述セルをトークン化し、データベースから最もよく似たコードセルを探す。
我々は、KaggleコンペティションからJupyterノートブックのTyphonツールを評価し、そのアプローチが適度な精度でコードセルを推薦できることを発見した。
論文 参考訳(メタデータ) (2024-05-15T03:59:59Z) - A Flexible Cell Classification for ML Projects in Jupyter Notebooks [0.21485350418225244]
本稿では,ルールベースと決定木分類器を組み合わせたハイブリッド分類手法により,より柔軟な細胞分類手法を提案する。
われわれはJupyLabelというツールで新しいフレキシブルな細胞分類手法を実装した。
論文 参考訳(メタデータ) (2024-03-12T11:50:47Z) - Unlocking Insights: Semantic Search in Jupyter Notebooks [1.320904960556043]
意味探索能力を高めるために,大規模言語モデルの応用について検討する。
我々の目的は、図や表、関連する関数やメソッド、その他の関連する情報など、生成された出力を取得することである。
本稿では,ノートの全内容の総合的なセマンティック理解を実現するセマンティック検索フレームワークについて紹介する。
論文 参考訳(メタデータ) (2024-02-20T18:49:41Z) - SparseCoder: Identifier-Aware Sparse Transformer for File-Level Code
Summarization [51.67317895094664]
本稿では,大規模なソースコードプロジェクトの理解と維持を支援するファイルレベルのコード要約について検討する。
長いコードシーケンスを効果的に処理するための識別子対応スパース変換器であるSparseCoderを提案する。
論文 参考訳(メタデータ) (2024-01-26T09:23:27Z) - Retrieval Augmented Classification for Long-Tail Visual Recognition [143.2716893535358]
本稿では,標準画像分類パイプラインを明示的な検索モジュールで拡張するための汎用的なアプローチであるRetrieval Augmented Classification (RAC)を紹介する。
RACは、標準のベースイメージエンコーダと並列検索ブランチを融合し、プリエンコードされた画像と関連するテキストスニペットの非パラメトリック外部メモリをクエリする。
我々は、RACの検索モジュールが、プロンプトなしで、テールクラスで高いレベルの精度で学習できることを実証した。
論文 参考訳(メタデータ) (2022-02-22T23:40:51Z) - APANet: Adaptive Prototypes Alignment Network for Few-Shot Semantic
Segmentation [56.387647750094466]
Few-shotのセマンティックセマンティックセマンティクスは、指定されたクエリイメージに、ラベル付きサポートイメージのみで、新規クラスのオブジェクトをセグメントすることを目的としている。
ほとんどの高度なソリューションは、各クエリ機能を学習したクラス固有のプロトタイプにマッチさせることでセグメンテーションを実行するメトリクス学習フレームワークを利用している。
本稿では,クラス固有およびクラス非依存のプロトタイプを導入することで,適応型プロトタイプ表現を提案する。
論文 参考訳(メタデータ) (2021-11-24T04:38:37Z) - Generalized Funnelling: Ensemble Learning and Heterogeneous Document
Embeddings for Cross-Lingual Text Classification [78.83284164605473]
emphFunnelling (Fun)は、最近提案された言語間テキスト分類手法である。
Emph Generalized Funnelling (gFun) はFunの一般化である。
gFunは、Funや最先端のベースラインよりも大幅に改善されていることを示す。
論文 参考訳(メタデータ) (2021-09-17T23:33:04Z) - TexSmart: A Text Understanding System for Fine-Grained NER and Enhanced
Semantic Analysis [61.28407236720969]
本手法では,詳細な名前付きエンティティ認識(NER)とセマンティック分析機能強化をサポートするテキスト理解システムであるTexSmartを紹介する。
TexSmartにはユニークな機能があります。
まず、TexSmartのNER関数は1000以上のエンティティタイプをサポートし、他のほとんどの公開ツールは、通常、数十のエンティティタイプをサポートする。
第2に、TexSmartはセマンティック拡張やディープセマンティック表現のような新しいセマンティック分析機能を導入し、ほとんどの以前のシステムにはない。
論文 参考訳(メタデータ) (2020-12-31T14:58:01Z) - Captum: A unified and generic model interpretability library for PyTorch [49.72749684393332]
我々は,PyTorch用の新しい,統一されたオープンソースモデル解釈可能性ライブラリを紹介する。
このライブラリには、多くの勾配と摂動に基づく属性アルゴリズムの汎用的な実装が含まれている。
分類モデルと非分類モデルの両方に使用できる。
論文 参考訳(メタデータ) (2020-09-16T18:57:57Z) - CORAL: COde RepresentAtion Learning with Weakly-Supervised Transformers
for Analyzing Data Analysis [33.190021245507445]
ソースコード、特に科学的なソースコードの大規模解析は、データサイエンスのプロセスをよりよく理解する約束を持っている。
本稿では,抽象構文木と周辺自然言語コメントからコードの共同表現を計算するための,弱い教師付きトランスフォーマーベースのアーキテクチャを提案する。
本モデルでは,手軽に手軽に管理できる弱さを生かし,専門家による供給よりも38%の精度向上を実現し,ベースラインを上回ります。
論文 参考訳(メタデータ) (2020-08-28T19:57:49Z) - ReproduceMeGit: A Visualization Tool for Analyzing Reproducibility of
Jupyter Notebooks [0.0]
本稿では、Jupyter NotebooksのGitHubを分析する可視化ツールであるReproduceMeGitを紹介する。
このツールは、再現可能なノートブックの数、例外となったノートブック数、オリジナルのノートブックと異なる結果を得たノートブック数などの情報を提供する。
論文 参考訳(メタデータ) (2020-06-22T10:05:52Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。