【论文笔记 2】Topic-Aware Neural Keyphrase Generation for Social Media Language(ACL19)

【论文笔记 2】Topic-Aware Neural Keyphrase Generation for Social Media Language(ACL19)

社交媒体下的主题感知和关键词

简介

题目:Topic-Aware Neural Keyphrase Generation for Social Media Language

作者:Yue Wang1∗ Jing Li2† Hou Pong Chan1 Irwin King1 Michael R. Lyu1 Shuming Shi2

作者单位:腾讯AiLab+港中大

发表会议:ACL

发表年限:19

背景 Modivation

背景:在庞大的社交媒体流中有效地自动提取主题。

解决问题:解决社交媒体稀疏信息中的主题提取问题(关键短语预测)

采用方法:DL方法,VAE+GRU(Bi-GRU GRU)

传统方法

  • 从帖子中提取单词或短语作为帖子的主题表示

    限制:无法产生帖子中没有的词语,这些有时候包含了关键的信息。同时在社交媒体的文本中,这种情况较为常见,因为用户在日常交流中倾向于简写或用一些其他词语指代。

  • 对一般文本的方法在处理社交语料的时候,不可避免会遇到数据稀疏的问题

    限制:在单独看某一个微博或推文的时候,有时候很难知道其具体在讲什么东西

idea

  • 使用生成模型解决对帖子中没有的短语的生成问题。所以方法中有keyphrases predict。
  • 第一个在社交媒体数据下,研究关键短语生成的潜在主题(社交媒体+短语生成+潜在主题,他们是第一个)

关键工作:

  • Keyphrase Prediction

    使用语料库级的潜在主题模型

  • Topic Modeling

    不同于LDA,使用Neural Topic Model 神经主题模型

框架架构:
在这里插入图片描述

核心:主题模型+生成模型

  • 主题模型(下方绿色):

    采用NTM,这里的架构与Miao的NVDM-GSM一样,输出输出都是词袋模型。过程为对词袋模型的表示和重构。对隐空间的约束采用KL散度。隐空间学习到的Z即为主题分布,该部分的目的是获取隐含的主题。

  • 生成模型(上方):

    输入为序列模型和主题分布,输出为可以描述主题的一个单词序列。标准的seq2seq结构

Pipe Line

  • NTM生成主题分布

    • 编码生成z的分布
      在这里插入图片描述

    • 对词进行重建
      在这里插入图片描述

    • 采用KL散度衡量重构误差

  • 生成模型生成keyphrase

    • Sequence Encoder

      采用双向GRU对序列模型表示的语料进行编码。提取语料中的上下文关系,然后对每一个词进行编码并储存。(hi为第i个词)
      X s e q [ x 1 , x 2 , . . . , x ∣ x ∣ ] → M [ h 1 , h 2 , . . . , h ∣ x ∣ ] → A X_{seq}[x_1,x_2,...,x_{|x|}]→M[h_1,h_2,...,h_{|x|}]→A Xseq[x1,x2,...,xx]M[h1,h2,...,hx]A

    • Sequence Decoder

      编码表示M以及主题θ作为输入,生成关键短语的过程如下
      在这里插入图片描述

      y为生成的目标短语,x为语料中词汇。最终结果为每个时隙语料的联合概率(独立事件)具体过程如下:

      • 改进GRU,添加主题信息(s为hidden state)
        在这里插入图片描述

      • 计算Attention权重
        在这里插入图片描述
        在这里插入图片描述

        然后对所有的a,h加权求和
        在这里插入图片描述

      • 则第j个时隙的关键词是
        在这里插入图片描述

      • 上述过程为基于生成的过程,这里同时还加入了从原文抽取词汇的机制(确定是否从原文复制词汇,还是从模型生成词汇),这里是直接拼接起来了。
        在这里插入图片描述

      • 最终模型输出:第j个时隙的target word的分布(这块有误,后面那一项是个标量,八成是写错了。应该要加上前一个GRU的output)
        在这里插入图片描述

  • 损失函数采用二者加和
    在这里插入图片描述

experiment

数据集:

  • 中文微博
  • Twitter
  • StackExchange
    在这里插入图片描述

结果

在不使用潜在主题的情况下,优于现有模型

使用潜在主题在社交媒体流这样的文法不严格的语料上(noisy)表现更好。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: calibratecamera 函数的flags 可以通过设置 CALIB_USE_INTRINSIC_GUESS 或者 CALIB_FIX_ASPECT_RATIO 来实现。具体方法是:将CALIB_USE_INTRINSIC_GUESS设置为True,CALIB_FIX_ASPECT_RATIO设置为False,然后它会自动寻找针孔模型的参数。 ### 回答2: 标定OpenCV相机的针孔模型需要设置calibratecamera函数的flags参数。 calibrateCamera函数OpenCV中用于相机标定的函数,它可以根据一组已知的三维物体点和对应的图像点来计算相机的内参矩阵和畸变系数。 flags参数是一个整数,用于指定标定过程中的一些选项。根据不同的需求,可以设置不同的标定标志位来调整标定的精确度和速度。 常用的标定标志位包括: 1. CALIB_USE_INTRINSIC_GUESS:使用初始猜测的内参矩阵和畸变系数进行标定。这样可以加快标定的速度,但精度可能会降低。 2. CALIB_FIX_INTRINSIC:固定内参矩阵和畸变系数。如果已经有了一个较好的内参矩阵和畸变系数,可以使用这个标志位来固定它们,仅求解外参矩阵。 3. CALIB_FIX_PRINCIPAL_POINT:固定主点坐标。如果已经知道主点的大致位置,可以使用这个标志位来固定主点坐标,仅求解其他参数。 4. CALIB_FIX_FOCAL_LENGTH:固定焦距。如果已经知道焦距的大致值,可以使用这个标志位来固定焦距,仅求解其他参数。 5. CALIB_FIX_ASPECT_RATIO:固定纵横比。如果已经知道相机的纵横比,可以使用这个标志位来固定纵横比,仅求解其他参数。 6. CALIB_ZERO_TANGENT_DIST:固定切向畸变系数。如果认为切向畸变系数为0,可以使用这个标志位来固定切向畸变系数,仅求解其他参数。 通过设置不同的标志位,可以根据实际需求来调整相机标定的过程,以达到较好的标定效果。 ### 回答3: 标定OpenCV相机的针孔模型需要使用`calibrateCamera`函数,并且可以通过设置`flags`参数来进行不同的标定方式选择。`flags`参数是一个整数,用于设定标定的方法和其他细节。 常见的flags参数设置方法有以下几种: 1. `cv2.CALIB_USE_INTRINSIC_GUESS`:使用已知的初始相机矩阵进行标定,加速标定过程; 2. `cv2.CALIB_FIX_PRINCIPAL_POINT`:固定主点坐标,不进行优化; 3. `cv2.CALIB_FIX_ASPECT_RATIO`:固定像素宽高比,不进行优化; 4. `cv2.CALIB_FIX_FOCAL_LENGTH`:固定焦距,不进行优化; 5. `cv2.CALIB_ZERO_TANGENT_DIST`:切向畸变系数初始化为0; 6. `cv2.CALIB_FIX_K1`:固定径向畸变系数k1,不进行优化; 7. `cv2.CALIB_FIX_K2`:固定径向畸变系数k2,不进行优化; 8. `cv2.CALIB_FIX_K3`:固定径向畸变系数k3,不进行优化; 9. `cv2.CALIB_FIX_K4`:固定径向畸变系数k4,不进行优化; 10. `cv2.CALIB_FIX_K5`:固定径向畸变系数k5,不进行优化; 11. `cv2.CALIB_FIX_K6`:固定径向畸变系数k6,不进行优化; 12. `cv2.CALIB_RATIONAL_MODEL`:使用鱼眼模型进行标定。 除了以上常见的flags参数设置方法,还有一些其他可选的标定方式可以根据实际需求进行设置。在调用`calibrateCamera`函数时,将`flags`参数设置为所需的数值即可选择相应的标定方法。这些标定方法的选择将直接影响标定结果的准确性和效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值