RunTyper:利用动态分析提升Python的深度类型推断能力

《ACM Transactions on Software Engineering and Methodology》:RunTyper: Enhancing Deep Type Inference Using Dynamic Analysis for Python

【字体: 时间:2025年11月08日 来源:ACM Transactions on Software Engineering and Methodology

编辑推荐:

  动态语言如Python的灵活类型系统带来运行时类型错误,需有效自动类型推断策略。RunTyper通过动态分析与静态规则结合,验证并优化深度学习模型预测,在用户自定义类型上准确率提升显著(53.7% vs 41.9%)。其性能优于HiTyper(17.0%→22.9%)和GPT-4处理能力(提升17%),解决传统方法难以预测的稀有类型问题。

  

摘要

像Python这样的动态语言因其提供的灵活性而备受重视,这主要归功于它们的动态类型系统。然而,这种灵活性往往伴随着代价:与类型相关的错误通常只在运行时才会显现出来,这可能导致难以定位的错误。这种情况凸显了有效自动类型推断策略的迫切需求。最近,在基于深度学习的方法开发方面取得了显著进展,这些方法旨在解决这些问题。尽管这些方法具有潜力,但在处理罕见类型(主要是Python中的用户定义类型)时却面临相当大的限制,因为这些类型在训练数据集中的代表性往往不足。为了解决Python中动态特性的固有不可预测性问题,我们提出了一个名为RunTyper的创新框架。RunTyper独特地将动态分析与一个结合了动态工具和静态规则的复杂框架集成在一起。这种混合方法被用来验证和优化深度神经网络所做的预测。与基于深度学习的类型推断工具Type4Py相比,实验结果表明RunTyper的准确率显著更高,达到了53.7%,而Type4Py的准确率仅为41.9%。此外,一系列实验表明RunTyper在处理用户定义类型时性能显著提升。与同样致力于优化深度类型推断但仅依赖静态规则的HiTyper相比,RunTyper的准确率从17.0%提高到了22.9%,提升了35%。更重要的是,实验还显示RunTyper将GPT-4处理用户定义类型的准确率提高了17%。这些发现强调了RunTyper在优化和提升深度预测模型结果方面的能力,以及它准确推断传统上难以预测的罕见类型的能力。
相关新闻
生物通微信公众号
微信
新浪微博
  • 搜索
  • 国际
  • 国内
  • 人物
  • 产业
  • 热点
  • 科普
  • 急聘职位
  • 高薪职位

知名企业招聘

热点排行

    今日动态 | 人才市场 | 新技术专栏 | 中国科学人 | 云展台 | BioHot | 云讲堂直播 | 会展中心 | 特价专栏 | 技术快讯 | 免费试用

    版权所有 生物通

    Copyright© eBiotrade.com, All Rights Reserved

    联系信箱:

    粤ICP备09063491号