INTENT:交互式张量转换合成

自动机器学习(AutoML)界面计算方法在HCI中的应用软件工程师与开发者AI/ML 研究员与工程师统计学家与数据科学家

文献标题

INTENT: Interactive Tensor Transformation Synthesis

文献信息

  • 主题领域: 深度学习与程序合成的交互式可视化
  • 关键词: 程序合成, 深度学习, 交互式可视化, TensorFlow, 类比学习, 用户研究, 人机交互, 数据流图, 张量变换, 可解释性

研究背景与问题

  • 问题与挑战:

    • 深度学习(DL)的优异表现使其广泛应用,但编程框架(如 TensorFlow)对初学者有较高的学习门槛。
    • TensorFlow 中的张量操作复杂,需要扎实的线性代数和微积分知识。
    • 现有 DL 编程面临问题:
      • API 文档不足或设计晦涩。
      • 大量 API 操作符带来选择障碍。
      • 编程中使用的操作常与传统编程语义不同,例如条件操作。
    • 对合成代码的理解与验证困难,也被称为“最后一英里问题”。
  • 研究重要性:

    • 降低普通程序员采用 DL 框架的障碍。
    • 提高自动代码生成(合成)的可理解性和可调试性,增强用户对代码的信任。
    • 使程序员更高效地完成复杂张量变换任务。
  • 研究动机:

    • 此前的 TensorFlow 合成工具(如 TF-Coder)虽能生成代码,但缺乏交互性,用户难以理解生成的代码,也无法自定义调整生成过程。

解决方案

  • 方法和创新:

    • INTENT系统: 提出一个交互式程序合成系统 —— INTENT,能够根据用户提供的自然语言描述和输入/输出示例自动生成 TensorFlow 张量变换代码。
    • 三大模块架构:
      1. 多模态张量变换代码合成器。
      2. 数据流图可视化工具,展示代码中的中间操作步骤及数据流。
      3. 即时程序验证模块,支持用户直接修改并验证代码。
    • 主要创新点:
      • 引入数据流图可视化技术,直观展现张量变换过程。
      • 实现基于用户反馈(如标记操作符为“想要”或“不需要”)的合成调整机制。
      • 提供嵌入式代码编辑器和自动验证,无需用户切换到 IDE。
  • 实施步骤与关键技术:

    • 利用输入输出示例、多层感知模型(MLP)和朴素贝叶斯模型来推断程序操作符的优先级。
    • 构建带权重的合成搜索算法,在程序空间中优先搜索优先级高且复杂度低的解决方案。
    • 使用 TensorFlow 的自动微分功能,计算程序中张量元素的依赖关系,绘制数据元素来源可视化路径,以增强用户理解。

研究成果

  • 具体成果:

    • 成功开发了 INTENT 系统,并开源于 GitHub。
    • 设计了数据流图+数据来源可视化工具,显著提高了用户对生成代码的理解度。
    • 实现了用户标记操作符(如“想要”或“不需要”)以及代码内嵌式测试的功能。
  • 实验与评估:

    • 用户实验:
      • 研究对18位程序员进行了用户研究,比较了 INTENT 与 TF-Coder 的任务完成效率。
      • 使用 INTENT 完成任务的成功率为 100%,而 TF-Coder 的成功率为 78%。
      • 使用 INTENT 平均完成时间为 5.8 分钟,仅为 TF-Coder 的一半。
      • 使用 INTENT 的用户对合成结果的信心评分显著提升(Likert评分从5.44提高到6.72,p=0.005)。
    • 可视化效果:
      • 数据流图帮助用户快速理解复杂的张量操作逻辑,89%的用户表示强烈认可。
      • 即时验证和调整功能减少了用户切换开发环境的需求。
  • 与现有方案的优势:

    • INTENT 相较于无交互支持的 TF-Coder,在用户体验、代码生成理解度及复杂任务解读能力上取得重大提升。
    • 数据流可视化为合成代码增加语义透明性,解决了“最后一英里问题”。
  • 局限性与未来方向:

    • 时间问题: 在搜索空间较大的情况下,程序生成需要数十秒甚至更长时间。
    • 限定性支持: 当前仅支持 TensorFlow 张量变换,未来可扩展至更广泛的深度学习任务(如神经网络架构构建)。
    • 用户类型偏重: 系统服务对象是有编程经验的开发者,未来可探索对非编程用户的适配。
    • 方向扩展:
      • 减少合成时间的优化算法(如分布式计算)。
      • 支持通过特定约束或自然语言实现整个神经网络的设计和合成。

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/papers/uist/84965/2022

广告推荐

学习 AI 编程到 CodeNow

open_in_new打开DOI链接
DOI: https://doi.org/10.1145/3526113.3545653
一眼看懂

论文快照

fact_check
dataset
来源
UIST
calendar_month
年份
2022
emoji_events
奖项
未标记奖项
group
作者
6 位作者
sell
研究子方向
自动机器学习(AutoML)界面、计算方法在HCI中的应用
work
职业/产业
软件工程师与开发者、AI/ML 研究员与工程师、统计学家与数据科学家
article
内容状态
已索引正文
hub
相关论文
5 篇相关论文