中文

将程序编译到神经网络

机器学习 2024-07-23 v1 人工智能

摘要

程序的神经网络替代品是一种神经网络,用于模拟程序的行为。研究人员已使用这些神经网络替代品来自动调谦程序输入、适应程序以适应新设置,以及加速计算。研究人员传统上通过在单个程序的输入输出示例上进行训练来开发神经网络替代品。或者,使用在大数据集中包含许多程序的语言模型可以消费程序文本,以充当神经网络替代品。然而,使用语言模型同时生成替代品并充当替代品,会导致资源消耗与准确率之间的权衡。我们提出了神经替代品编译技术,用于直接从程序文本生成神经网络替代品,而无需将神经替代品的生成与执行耦合在一起。我们使用在C程序数据集上进行训练的超网络实现神经替代品编译器,发现它们产生的神经替代品在数据效率上高出 1.91.9-9.5×9.5\times,视觉结果更接近真实值 1.01.0-1.3×1.3\times,训练所需的epoch数减少 4.34.3-7.3×7.3\times

关键词

引用

@article{arxiv.2407.15078,
  title  = {Learning to Compile Programs to Neural Networks},
  author = {Logan Weber and Jesse Michel and Alex Renda and Michael Carbin},
  journal= {arXiv preprint arXiv:2407.15078},
  year   = {2024}
}