尝试UVTransE

这篇博客介绍了UVTransE,它是VTransE的升级版,着重于利用并联框信息来提升关系识别的性能。作者通过减法模型改进了谓词向量的获取方式,提高了模型的召回率。博客还涵盖了代码运行中可能遇到的问题及解决方法,包括代码注释、文件路径调整、pickle文件读取等,并提供了结果截图。后续会有详细的代码阅读文章发布。
摘要由CSDN通过智能技术生成

尝试UVTransE

这篇论文是在VTransE 上进行改进的,具体的VTransE 运行代码是matlab caffe

可以参考我的另一篇文章: https://blog.csdn.net/u012211422/article/details/115800878?spm=1001.2014.3001.5501

其中这篇文章涉及三种任务,predicate 识别,phrase识别,relationship 识别。

如图所示。predicate 是最简单的一种,框和类别都标注好 ,只预测之间的关系。

phrase 和relationship 都是只给一个图片,难度大,然后phrase 直接框出一个框,并给出三元组。而relationship 是分别框出主语和宾语,并给出类别和谓词。

其中文中说了两种评价准则recall @ 100 recall @ 50,我认为应该是模型选出最高置信度的100个和50个,看命中率

代码来源:https://github.com/zhung2/uvtranse

这篇文章的整体框架如下:

其主要思想是VtransE 使用的是s+p~o  其中s 是主语框特征,p 是谓词,作为翻译向量。o 为宾语框特征。但是它没有考虑并联框的特征,而只关注了主语和宾语的框。本文就是关注了并联框的信息。而该并联框代表了谓词,作者使用了减法模型,将并联框的特征向量分别减去主语和宾语的特征向量,就可以得到谓词向量。

1.注释一些信息

该代码中有很多是需要注释掉的。例如

如果运行train.py出现,import initialze Not Found the module. 等问题就是需要注释,作者已经给你写好了注释后,应该写的内容例如下图的红色区域

 2.如果出现train.txt 找不到

请注释掉vrd.py 中的这一行

3.如果运行出现找不到1_net.pth 找不到

这时可能在某个目录下多出一个刚刚生成的checkpoint

而不是代码中同名目录,它里面只有opt.txt。 所以这个时候你要创建vgg16,创建空文件1_net.pth。 这样你就可以真正的运行代码了。 

4.pickle 文件读取不了

出现pickle文件读取不了问题,是因为作者提供的是python2生成的pickle 文件,需要使用指定python2 格式进行读取,整体程序python3 运行

 5.结果截图

后期会整理一篇代码阅读文章,已经整理好,下面链接打开即可

https://blog.csdn.net/u012211422/article/details/118873734

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值