错误|有了这个工具,不执行代码就可以找PyTorch模型错误( 三 )
文章图片
对于张量形状错误(如上图的错误类型) , PyTea 将原始 Python 代码翻译成 PyTea IR 进行查找 , 如下图是 PyTea IR 示例:
文章图片
上面提到 , PyTea 会跟踪转换后的 IR 的每个可能执行路径 , 并收集有关张量形状约束 。 其实约束是 PyTorch 应用程序所需要的条件 , 以便在没有任何张量形状误差的情况下执行它 。 例如 , 一个矩阵乘法运算的两个操作数必须共享相同的维数 。 下图显示了约束的抽象语法:
文章图片
约束的抽象语法部分截图
如何使用 PyTea
首先 , 安装环境要求:node.js >= 12.x , python >= 3.8 , z3-solver >= 4.8 。
安装和使用可参考以下代码:
# install node.js
sudo apt-get install nodejs
# install python z3-solver
pip install z3-solver
# download pytea
wget https://github.com/ropas/pytea/releases/download/v0.1.0/pytea.zip
unzip pytea.zip
# run pytea
python bin/pytea.py path/to/source.py
# run example file
python bin/pytea.py packages/pytea/pytest/basics/scratch.py
编译代码:
# install dependencies
npm run install:all
pip install z3-solver
# build
npm run build
网友纷纷表示:这个工具绝对是必要的!
推荐阅读
- 物流|市占率全球第一,引领行业变革,深圳这个独角兽企业分享经验
- 品牌|家用燃气灶具新国标本月实施,这个功能必须有
- 平台|暨大这个实验室有趣又有料
- 益生菌产品|益生菌产业发展有了指导方向
- 消费者|这个赛道能让人“躺平”,大厂、VC们都来了
- 人工智能|这个赛道,竟然是 AI 行业的新拐点
- 女声|喜欢听ACG音乐的话,不要碰森海塞尔这个牌子
- 图片|在这个纷扰复杂的世俗世界里……
- 网友|月球表面“神秘小屋”真相被揭开,居然是这个
- 警告!|听说这个App上线就送对象 结果上线就骗了我六块钱