Note:[ wechat:Y466551 | 付费咨询,非诚勿扰 ]

论文信息

论文标题:CNN-Based Broad Learning for Cross-Domain Emotion Classification
论文作者:Rong Zeng, Hongzhan Liu , Sancheng Peng , Lihong Cao, Aimin Yang, Chengqing Zong,Guodong Zhou
论文来源:2023 aRxiv
论文地址:download 
论文代码:download
视屏讲解:click

1 介绍

  出发点:许多研究者关注的是传统的跨域情感分类,即粗粒度情绪分类。然而,跨领域的情绪分类问题却很少被涉及到。

  摘要:在本文中,提出了一种基于卷积神经网络(CNN)的广泛学习方法,通过结合 CNN 和广泛学习的强度来进行跨域情感分类。首先利用 CNN 同时提取领域不变和领域特定特征,通过广泛学习来训练两个更有效的分类器。然后,为了利用这两个分类器,设计了一个共同训练模型来为它们进行提升。

  贡献:

    • 提出了一种结合深度学习和广泛学习的模型,即基于卷积神经网络(CNN)的广泛学习(CBL);
    • 开发了四个真实世界的数据集,涉及四个不同领域;
    • 结果表明,该方法比基线方法能更有效地提高情绪分类的性能;

2 方法

模型框架:

  

2.1 Maximum mean discrepancy

  MMD 公式:

    $\operatorname{MMD}\left(X_{s}, X_{t}\right)=\left\|\frac{1}{N_{s}} \sum_{i=1}^{N_{s}} \phi\left(x_{s}^{i}\right)-\frac{1}{N_{t}} \sum_{i=1}^{N_{t}} \phi\left(x_{t}^{i}\right)\right\|_{\mathcal{H}}^{2}  \quad\quad(1)$

2.2 Feature extraction

  本小节,为了同时提取 DIF(域不变特征) 和 DSF (域特定特征),先使用两个不同的映射器将数据映射到一个域不变的空间和一个域特定的空间中。

  首先使用 BERT 来生成 $X_s$ 和 $X_{tl}$ 的词向量,其描述如下:

    $\begin{array}{l}\boldsymbol{W}_{i n v}^{s}=\operatorname{BERT}_{i n v}\left(X_{s} ; \theta_{i n v}^{\mathrm{BERT}}\right) \in \mathbf{R}^{\left(N_{s} l\right) \times 768} \\\boldsymbol{W}_{i n v}^{t l}=\operatorname{BERT}_{i n v}\left(X_{t l} ; \theta_{i n v}^{\mathrm{BERT}}\right) \in \mathbf{R}^{\left(N_{t l} l\right) \times 768}  \\\boldsymbol{W}_{s p e c}^{s}=\operatorname{BERT}_{s p e c}\left(X_{s} ; \theta_{\text {spec }}^{\mathrm{BERT}}\right) \in \mathbf{R}^{\left(N_{s} l\right) \times 768}  \\\boldsymbol{W}_{s p e c}^{t l}=\operatorname{BERT}_{s p e c}\left(X_{t l} ; \boldsymbol{\theta}_{\text {spec }}^{\mathrm{BERT}}\right) \in \mathbf{R}^{\left(N_{t l} l\right) \times 768}\end{array} \quad\quad(2)$

  基于此,使用 CNN 和 最大池化 ,提取 n-gram feature 和 salient feature,可以描述如下:

    $\begin{array}{l}\boldsymbol{F}_{i n v}^{s}=\mathrm{CNN}_{i n v}\left(\boldsymbol{W}_{i n v}^{s} ; \theta_{i n v}^{\mathrm{CNN}}\right) \in \mathbf{R}^{N_{s} \times q}  \\\boldsymbol{F}_{i n v}^{t l}=\mathrm{CNN}_{i n v}\left(\boldsymbol{W}_{i n v}^{t l} ; \theta_{i n v}^{\mathrm{CNN}}\right) \in \mathbf{R}^{N_{t l} \times q}  \\\boldsymbol{F}_{s p e c}^{s}=\mathrm{CNN}_{s p e c}\left(\boldsymbol{W}_{s p e c}^{s} ; \boldsymbol{\theta}_{\text {spec }}^{\mathrm{CNN}}\right) \in \mathbf{R}^{N_{s} \times q}  \\\boldsymbol{F}_{\text {spec }}^{t l}=\mathrm{CNN}_{\text {spec }}\left(\boldsymbol{W}_{\text {spec }}^{t l} ; \boldsymbol{\theta}_{\text {spec }}^{\mathrm{CNN}}\right) \in \mathbf{R}^{N_{t l} \times q}\end{array} \quad\quad(3)$

  对于 DIF,希望它能够编码源域和目标域共享的特性:

    $L_{s i m}=\operatorname{MMD}\left(\boldsymbol{F}_{i n v}^{s}, \boldsymbol{F}_{i n v}^{t l}\right) \quad\quad(4)$

  对于 DSF,希望它只从目标域中提取特征,这些特性通常应该出现在目标域中,而很少出现在源域中:

    $L_{d i f f}=-\operatorname{MMD}\left(\boldsymbol{F}_{\text {spec }}^{s}, \boldsymbol{F}_{\text {spec }}^{t l}\right) \quad\quad(5)$

2.3 BL-Based classifier

  为增强节点语义特征,设计了基于 DIF 的域不变分类器(DIC)和基于 DSF 的域特定分类器(DSC)两种分类器。

  对于 DIC,第 $i$ 组增强节点可以表示如下:

    $\begin{array}{l}\boldsymbol{E}_{i n v}^{i} & =\varphi\left(\theta_{i n v}^{i}\left[\boldsymbol{F}_{i n v}^{s}, \boldsymbol{F}_{i n v}^{t l}\right]+\boldsymbol{\beta}_{i n v}^{i}\right) \\i & =1,2, \ldots, n_{i n v}\end{array}  \quad\quad(6)$

  增强的节点特征:$\boldsymbol{E}_{i n v} \triangleq\left[\boldsymbol{E}_{i n v}^{1}, \boldsymbol{E}_{i n v}^{2}, \ldots, \boldsymbol{E}_{i n v}^{n_{i n v}}\right]$ 。

  因此,DIC 的输出可以表示如下:

    $\hat{\boldsymbol{Y}}_{i n v}=\left[\boldsymbol{F}_{i n v}^{s}, \boldsymbol{F}_{i n v}^{t l}, \boldsymbol{E}_{i n v}\right] \boldsymbol{\theta}_{i n v}^{\mathrm{BL}}=\boldsymbol{A}_{i n v} \theta_{i n v}^{\mathrm{BL}}   \quad\quad(7)$

  由于 DSC 只需要对目标域数据进行分类,因此我们对 $\boldsymbol{F}_{\text {spec }}^{\text {tl }}$ 到增强节点的 $n_{\text {spec }}$ 组进行了非线性映射。因此,第 $j$ 组增强节点可以表示如下:

    $\begin{array}{l}\boldsymbol{E}_{s p e c}^{j} & =\varphi\left(\boldsymbol{\theta}_{s p e c}^{j} \boldsymbol{F}_{s p e c}^{t l}+\boldsymbol{\beta}_{s p e c}^{j}\right) \\j & =1,2, \ldots, n_{s p e c}\end{array}  \quad\quad(8)$

  增强的节点特征:$\boldsymbol{E}_{\text {spec }} \triangleq\left[\boldsymbol{E}_{\text {spec }}^{1}, \boldsymbol{E}_{\text {spec }}^{2}, \ldots, \boldsymbol{E}_{\text {spec }}^{n_{\text {spec }}}\right]$

  因此,DSC的输出可以表示如下:

    $\hat{\boldsymbol{Y}}_{s p e c}=\left[\boldsymbol{F}_{s p e c}^{t l}, \boldsymbol{E}_{s p e c}\right] \boldsymbol{\theta}_{s p e c}^{\mathrm{BL}}=\boldsymbol{A}_{s p e c} \theta_{s p e c}^{\mathrm{BL}}   \quad\quad(9)$

2.4 Co-training

  至于DIF,训练的目的是尽量减少以下损失:

    $L_{i n v}=L_{s i m}\left(\theta_{i n v}^{\mathrm{BERT}}, \boldsymbol{\theta}_{i n v}^{\mathrm{CNN}}\right)+\alpha L_{c}\left(\boldsymbol{\theta}_{i n v}^{\mathrm{BERT}}, \theta_{i n v}^{\mathrm{CNN}}\right)   \quad\quad(10)$

    $\begin{aligned}L_{c}= & \frac{1}{N_{s}+N_{t l}} \sum_{i=1}^{N_{s}}-y_{s}^{i} \ln P\left(y_{s}^{i} \mid \boldsymbol{F}_{i n v}^{s i}\right)+  \frac{1}{N_{s}+N_{t l}} \sum_{j=1}^{N_{t l}}-y_{t l}^{j} \ln P\left(y_{t l}^{j} \mid \boldsymbol{F}_{i n v}^{t l j}\right)\end{aligned}  \quad\quad(11)$

  在到DSF时,训练的目的是尽量减少下面的损失:

    $L_{\text {spec }}=L_{\text {diff }}\left(\boldsymbol{\theta}_{\text {spec }}^{\mathrm{BERT}}, \theta_{\text {spec }}^{\mathrm{CNN}}\right)+\gamma L_{t}\left(\theta_{\text {spec }}^{\mathrm{BERT}}, \boldsymbol{\theta}_{\text {spec }}^{\mathrm{CNN}}\right)  \quad\quad(12)$
    $L_{t}=\frac{1}{N_{t l}} \sum_{i=1}^{N_{t l}}-\boldsymbol{Y}_{t l}^{i} \log f c\left(y_{t l}^{i} \mid \boldsymbol{F}_{s p e c}^{t l i}\right)  \quad\quad(13)$
  对于 DIC,我们需要求解一个合适的 $\boldsymbol{\theta}_{i n v}^{\mathrm{BERT}}$,使 $\boldsymbol{Y}_{i n v}$ 和 $\hat{\boldsymbol{Y}}_{i n v}$ 之间的差异尽可能小,其中 $\boldsymbol{Y}_{i n v}$ 表示标记源数据和标记目标数据的地面真实标签。因此,采用岭回归作为目标函数,其表示如下:

    $\underset{\boldsymbol{\theta}_{i n v}^{\mathrm{BL}}}{\operatorname{argmin}}\left(\left\|\boldsymbol{Y}_{i n v}-\hat{\boldsymbol{Y}}_{i n v}\right\|_{2}^{2}+\lambda_{1}\left\|\boldsymbol{\theta}_{i n v}^{\mathrm{BL}}\right\|_{2}^{2}\right) \quad\quad(14)$

  对于 DSC,同样,目标函数表示如下:

    $\underset{\boldsymbol{\theta}_{\text {spec }}^{\mathrm{BL}}}{\operatorname{argmin}}\left(\left\|\boldsymbol{Y}_{\text {spec }}-\hat{\boldsymbol{Y}}_{\text {spec }}\right\|_{2}^{2}+\lambda_{2}\left\|\boldsymbol{\theta}_{\text {spec }}^{\mathrm{BL}}\right\|_{2}^{2}\right) \quad\quad(15)$

  $\boldsymbol{Y}_{\text {spec }}$ 表示已标记的目标数据的地面真实标签。

  因此,采用岭回归作为目标函数,得到最优解 $\theta_{i n v}^{\mathrm{BL}}$,表示如下:

    $\boldsymbol{\theta}_{i n v}^{\mathrm{BL}}=\left(\lambda_{1} \boldsymbol{I}+\boldsymbol{A}_{i n v} \boldsymbol{A}_{i n v}^{\mathrm{T}}\right)^{-1} \boldsymbol{A}_{i n v}^{\mathrm{T}} \boldsymbol{Y}_{i n v}   \quad\quad(16)$

  其中,$I$ 表示单位矩阵。

  同样,得到最优解 $\theta_{\text {spec }}^{\mathrm{BL}}$ 规范,表示如下:

    $\theta_{\text {spec }}^{\mathrm{BL}}=\left(\lambda_{2} \boldsymbol{I}+\boldsymbol{A}_{\text {spec }} \boldsymbol{A}_{\text {spec }}^{\mathrm{T}}\right)^{-1} \boldsymbol{A}_{\text {spec }}^{\mathrm{T}} \boldsymbol{Y}_{\text {spec }}  \quad\quad(17)$

2.5 完整算法

    

3 实验结果

数据集

  

情感分类

  

论文解读(CBL)《CNN-Based Broad Learning for Cross-Domain Emotion Classification》的更多相关文章

  1. CVPR2020论文解读:CNN合成的图片鉴别

    CVPR2020论文解读:CNN合成的图片鉴别 <CNN-generated images are surprisingly easy to spot... for now> 论文链接:h ...

  2. 论文解读(LG2AR)《Learning Graph Augmentations to Learn Graph Representations》

    论文信息 论文标题:Learning Graph Augmentations to Learn Graph Representations论文作者:Kaveh Hassani, Amir Hosein ...

  3. 论文解读(ARVGA)《Learning Graph Embedding with Adversarial Training Methods》

    论文信息 论文标题:Learning Graph Embedding with Adversarial Training Methods论文作者:Shirui Pan, Ruiqi Hu, Sai-f ...

  4. 论文解读(GLA)《Label-invariant Augmentation for Semi-Supervised Graph Classification》

    论文信息 论文标题:Label-invariant Augmentation for Semi-Supervised Graph Classification论文作者:Han Yue, Chunhui ...

  5. 《Stereo R-CNN based 3D Object Detection for Autonomous Driving》论文解读

    论文链接:https://arxiv.org/pdf/1902.09738v2.pdf 这两个月忙着做实验 博客都有些荒废了,写篇用于3D检测的论文解读吧,有理解错误的地方,烦请有心人指正). 博客原 ...

  6. 自监督学习(Self-Supervised Learning)多篇论文解读(下)

    自监督学习(Self-Supervised Learning)多篇论文解读(下) 之前的研究思路主要是设计各种各样的pretext任务,比如patch相对位置预测.旋转预测.灰度图片上色.视频帧排序等 ...

  7. 自监督学习(Self-Supervised Learning)多篇论文解读(上)

    自监督学习(Self-Supervised Learning)多篇论文解读(上) 前言 Supervised deep learning由于需要大量标注信息,同时之前大量的研究已经解决了许多问题.所以 ...

  8. A Unified Deep Model of Learning from both Data and Queries for Cardinality Estimation 论文解读(SIGMOD 2021)

    A Unified Deep Model of Learning from both Data and Queries for Cardinality Estimation 论文解读(SIGMOD 2 ...

  9. 论文解读(MGAE)《MGAE: Masked Autoencoders for Self-Supervised Learning on Graphs》

    论文信息 论文标题:MGAE: Masked Autoencoders for Self-Supervised Learning on Graphs论文作者:Qiaoyu Tan, Ninghao L ...

  10. 论文解读(USIB)《Towards Explanation for Unsupervised Graph-Level Representation Learning》

    论文信息 论文标题:Towards Explanation for Unsupervised Graph-Level Representation Learning论文作者:Qinghua Zheng ...

随机推荐

  1. 2021-09-12:请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。函数 myAtoi(string

    2021-09-12:请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数).函数 myAtoi(string ...

  2. WARNING: The repository located at mirrors.aliyun.com is not a trusted or secure host and is being

    更换下载源: https://pypi.tuna.tsinghua.edu.cn/simple/

  3. 2023-05-23:如果交换字符串 X 中的两个不同位置的字母,使得它和字符串 Y 相等, 那么称 X 和 Y 两个字符串相似。如果这两个字符串本身是相等的,那它们也是相似的。 例如,“tars“

    2023-05-23:如果交换字符串 X 中的两个不同位置的字母,使得它和字符串 Y 相等, 那么称 X 和 Y 两个字符串相似.如果这两个字符串本身是相等的,那它们也是相似的. 例如,"t ...

  4. python基础:重新认识装饰器

    Python中的装饰器是你进入Python大门的一道坎,不管你跨不跨过去它都在那里. 为什么需要装饰器 我们假设你的程序实现了say_hello()和say_goodbye()两个函数. def sa ...

  5. Mysql DDL执行方式-pt-osc介绍 | 京东云技术团队

    1 引言 大家好,接着上次和大家一起学习了<MySQL DDL执行方式-Online DDL介绍>,那么今天接着和大家一起学习另一种MySQL DDL执行方式之pt-soc. 在MySQL ...

  6. How to fix the problem that Raspberry Pi cannot use the root user for SSH login All In One

    How to fix the problem that Raspberry Pi cannot use the root user for SSH login All In One 如何修复树莓派无法 ...

  7. 微信小程序脚手架火爆来袭,集成 Taro、uniapp 第三方模版,支持小程序 CI 上传,预览,发布

    微信小程序脚手架 @wechat-mp/cli 微信小程序脚手架,集成 Taro.uniapp 第三方模版,支持小程序 CI 上传,预览,发布 注意事项 需要在微信公众平台开发管理-开发设置-IP白名 ...

  8. React后台管理系统08 左侧菜单栏点击事件以及设置只有一个菜单展开项

    我们在Menu组件身上添加一个点击事件:对应的函数写一个回调函数:获取当前对象的e的身上的key, 这里其实不难看出e就是当前点击时的menu对象,我们这里获取的是e的key,对应上面定义的属性. 此 ...

  9. 【Promptulate】一个强大的LLM Prompt Layer框架

    本文节选自笔者博客: https://www.blog.zeeland.cn/archives/promptulate666 前言 在构建了[prompt-me]一个专为 Prompt Enginee ...

  10. Codeforces Round #877 (Div. 2) A-E

    A 代码 #include <bits/stdc++.h> using namespace std; using ll = long long; bool solve() { int n; ...