加载模型报错 The name '' looks like an (invalid) Operation name, not a Tensor.

在尝试加载已导出的模型时遇到错误,原因是模型中使用了未命名的稀疏向量。解决方案包括:一是将稀疏向量分解为三部分并分别存储,确保每个部分都有正确名称;二是改用普通向量代替稀疏向量,避免出现命名问题。通过这两种方法可以解决加载模型时报的'The name '' looks like an (invalid) Operation name, not a Tensor.'错误。" 112123322,10539645,C++字符转二进制与二进制加壳技术解析,"['二进制安全', '程序保护', '加壳技术', 'C++', '逆向工程']

使用estimator.export_saved_model('saved_model', serving_input_receiver_fn)导出模型之后,再使用tf.contrib.predictor.from_saved_model加载模型报错:ValueError: The name '' looks like an (invalid) Operation name, not a Tensor. Tensor names must be of the form "<op_name>:<output_index>".

报错详细内容:

INFO:tensorflow:Restoring parameters from saved_model/1577241037/variables/variables
Traceback (most recent call last):
  File "serve.py", line 241, in <module>
    predict_fn = tf.contrib.predictor.from_saved_model(latest)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/contrib/predictor/predictor_factories.py", line 153, in from_saved_model
    config=config)
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/contrib/predictor/saved_model_predictor.py", line 162, in __init__
    for k, v in input_names.items()}
  File "/usr/local/lib/python3.6/dist-packages/tensorflow/contrib/predictor/saved_model_predictor.py", line
<think>我们正在解决用户在Vitis中创建项目时遇到的错误:'Invalid application project name. A project with that name already exists in the workspace.'。这个错误表明用户试图创建一个与现有项目同名的应用程序项目。以下将详细说明解决步骤。 </think>### Vitis中解决"Invalid application project name"错误的完整指南 当在Vitis中出现`Invalid application project name. A project with that name already exists in the workspace.`错误时,表示你尝试创建的项目名称在工作区中已存在。以下是系统性的解决方法: #### 方法1:重命名项目(推荐解决方案) 1. **打开现有项目属性** - 右键单击项目资源管理器中的冲突项目 → 选择`Properties` - 在`C/C++ Project Settings`中修改项目名称: ```properties Project Name: my_project_v2 # 添加后缀或前缀 ``` - 保存更改并点击`Apply and Close` 2. **清理工作区** ```bash # 在Vitis终端执行 vitis -clean ``` 这将清除所有缓存配置(需重启Vitis)[^1] #### 方法2:删除冲突项目 1. **完全移除现有项目** - 在项目资源管理器中右键冲突项目 → `Delete` - **关键步骤**:勾选`Delete project contents on disk`彻底删除 2. **重建项目时的注意事项** ```mermaid graph TB A[创建新项目] --> B{名称校验} B -->|名称唯一| C[成功创建] B -->|名称冲突| D[自动添加(1)后缀] D --> E[检查workspace/.metadata目录] ``` 若名称冲突,Vitis会自动添加后缀如`(1)`,检查`.metadata`目录确保无残留配置 #### 方法3:修改工作区配置 1. **手动编辑配置文件** - 定位工作区目录: ``` <workspace_path>/.metadata/.plugins/org.eclipse.core.resources/.projects ``` - 删除与冲突项目同名的文件夹(如`my_project/`) - **重要**:同时删除同级`.spr`文件中对应的项目条目[^1] 2. **迁移项目时的特殊处理** - 当导入已有项目时,修改`.project`文件中的`<name>`标签: ```xml <projectDescription> <name>new_project_name</name> <!-- 修改此处 --> ... </projectDescription> ``` #### 验证与预防措施 1. **名称校验规则** - 有效命名规范: $$ \text{valid\_name} = [a-zA-Z][a-zA-Z0-9\_\-]{0,31} $$ - 禁止字符:`#@$%^&*()+=|<>?`等特殊符号 2. **自动化检查脚本** ```bash # 检查工作区重复项目 find . -name ".project" | xargs grep -l "<name>my_project</name>" ``` 3. **最佳实践** - 创建项目时添加版本后缀:`uart_driver_v1` - 定期清理`.metadata`目录 - 使用独立工作区管理不同项目
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值