python - 获取tensorflow迭代张量中的对象列表
问题描述
所以我想在张量流中返回一个对象列表,当我尝试时,列表对象是使用大小为 [n,k,d] 的张量 X 构造的:
listofobject = [Myobject(x) for x in X]
它返回:
OperatorNotAllowedInGraphError: iterating over `tf.Tensor` is not allowed: AutoGraph did convert this function. This might indicate you are trying to use an unsupported feature.
我也试过:
listofobject = tf.map_fn(lambda x:Myobject(x), X)
并得到这个错误:
ValueError: Tried to convert 'y' to a tensor and failed. Error: None values not supported.
当我检查对象的构造函数内部时,有时我的 x 形状是 [None, d] 不确定我在这里缺少什么。我的问题是,在张量流中返回这样的对象列表的正确方法是什么?
解决方案
您能否详细说明您为什么需要它。
两种方法:
tf.ragged.constant([Myobject(x) for x in X])
2:
tf.map_fn(Myobject,elems=X,fn_ouput_signature=tf.RaggedTensorSpec(dtype=tf.float32orWHATEVER))
因为问题是衣衫褴褛,或者这些值是占位符,请您注意一下。
推荐阅读
- python - 计算 pandas Dataframe 列和包含字符串值的列表之间的余弦相似度
- python - 如何在 Python Django 中创建多数据库
- node.js - Redis 不会从缓存中检索数据
- flutter - 如何在连接器中连接多个模型(ScopedModel)
- amazon-web-services - 如何在 AWS API Gateway 中将对象转换为 JSON?
- swift - 如何始终在 Vapor 3 和 Fluent 中返回一个数组(即使对于单个实体请求)
- python - Python 或 R 可以将本地数据帧与 SAS 中的 Proc SQL 等数据库表连接起来吗?
- azure - 电源外壳。获得免费的 Azure 服务计划,没有应用程序/插槽
- c++ - 链表简单代码异常处理错误来了,程序失败
- flutter - Flutter中发生超时时如何关闭HTTP连接?