训练过程中获取lod信息
N浀循环 发布于2020-05-27 17:35 浏览:149 回复:5
0
收藏

有个疑问,如下代码:
seq_feature = fluid.layers.data(name='seq',dtype='float32',shape=[228], lod_level=1)

创建了如下输入后,想获取seq_feature的lod信息怎么获得?比如想要获取到(1,3,7)这样的lod信息

目的是在训练过程中需要获得每个序列的长度和位置,用于比如local attention这样的操作

收藏
点赞
0
个赞
共5条回复 最后由taoge31回复于2020-05-30 12:53
#6taoge31回复于2020-05-30 12:53:53
#4 鹿鼎记肯定回复
lod跟tensor的运算方式差不多,只要用支持lod的api运算就好了,可以参考一些官方案例,比如词向量、个性化推荐、情感分析这些。 https://www.paddlepaddle.org.cn/documentation/docs/zh/user_guides/nlp_case/label_semantic_roles/README.cn.html
展开

作者想问的问题跟我一样,是组网的时候怎么描述已经定义的lodtensor变量的lod信息

0
#5taoge31回复于2020-05-30 12:53:40

作者想问的问题跟我一样,是组网的时候怎么描述已经定义的lodtensor变量的lod信息

0
#4鹿鼎记肯定回复于2020-05-28 14:11:07
#3 taoge31回复
这个还是不行,不是要打印显示出来,是需要在组网的时候获取lod的数据进行运算。
展开

lod跟tensor的运算方式差不多,只要用支持lod的api运算就好了,可以参考一些官方案例,比如词向量、个性化推荐、情感分析这些。

https://www.paddlepaddle.org.cn/documentation/docs/zh/user_guides/nlp_case/label_semantic_roles/README.cn.html

0
#3taoge31回复于2020-05-28 13:45:02
#2 鹿鼎记肯定回复
有两种方法 一个是用fluid.layers.Print打印,https://www.paddlepaddle.org.cn/documentation/docs/zh/api_cn/layers_cn/Print_cn.html#print 另一种是把要拿的数据放在fetch_list中,类似于out = exe.run(feed={...}, fetch_list=[seq_feature]),out就是fetch_list中的值
展开

这个还是不行,不是要打印显示出来,是需要在组网的时候获取lod的数据进行运算。

0
#2鹿鼎记肯定回复于2020-05-27 19:25:35

有两种方法

一个是用fluid.layers.Print打印,https://www.paddlepaddle.org.cn/documentation/docs/zh/api_cn/layers_cn/Print_cn.html#print

另一种是把要拿的数据放在fetch_list中,类似于out = exe.run(feed={...}, fetch_list=[seq_feature]),out就是fetch_list中的值

0
TOP
切换版块