论文笔记:相似感知的多模态假新闻检测
整理了RecSys2020 Progressive Layered Extraction : A Novel Multi-Task Learning Model for Personalized Recommendations)论文的阅读笔记
- 背景
- 模型
- 实验
论文地址:SAFE
背景
在此之前,对利用新闻文章中文本信息和视觉信息之间的关系(相似性)的关注较少。这种相似性有助于识别虚假新闻,例如,虚假新闻也许会试图使用不相关的图片来吸引读者的注意力。本文提出了一种相似感知的新闻检测方法(SAFE),该方法研究新闻文章的多模态(文本和视觉)信息。首先,分别提取文本特征和视觉特征进行新闻表示。进一步研究了跨模态提取的特征之间的关系。这种新闻文本和视觉信息的表征以及它们之间的关系被共同学习并用于预测假新闻。所提出的方法有助于根据文本、图像或不匹配来识别新闻文章的真实性。
SAFE由三个模块组成,分别进行(1)多模态(文本和视觉)特征提取;(2)模态内(或者说模态无关)假新闻预测;(3)跨模态相似性提取。
主要贡献:提出了第一种研究新闻文本和视觉信息之间的关系(相似性)在预测假新闻中的作用的方法,联合利用多模态(文本和视觉)和关系信息来学习新闻文章的表示和预测假新闻。
模型
符号定义:对于一篇新闻(article) A = { T , V } A=\{T,V\} A={T,V}由视觉信息 V V V和文本信息 T T T组成,定义 t ∈ R d t\in R^d t∈Rd和 v ∈ R d v\in R^d v∈Rd作为相应的表示, t = M t ( T , θ t ) t=M_t(T,\theta_t) t=Mt(T,θt)、 v = M v ( V , θ v ) v=M_v(V,\theta_v) v=Mv(V,θv),定义相似度函数 s = M s ( t , v ) s=M_s(t,v) s=Ms(t,v),s是个0到1之间的值。通过这些信息,SAFE得到文章的二分类目标 y ^ = 0 / 1 \hat y=0/1 y^=0/1,定义总的函数: M p : ( M t , M v , M s ) ⟶ θ t , θ v , θ s y ^ ∈ { 0.1 } M_p:(M_t,M_v,M_s)\stackrel{\theta_t,\theta_v,\theta_s}{\longrightarrow}\hat y\in\{0.1\} Mp:(Mt,Mv,Ms)⟶θt,θv,θsy^∈{0.1}。
文本特征提取:本文使用经过全连接层扩展的Test-CNN提取每篇文章的表示,其结构如图二:

包含一个卷积层和最大池化,给定一段包含n个单词的内容,每个单词首先被编码为 x t l ∈ R k , l = 1 , 2 , . . . , n x_t^l\in R^k,l=1,2,...,n xtl∈Rk,l=1,2,...,n经过卷积层,我们会得到一个featuremap,定义为 C t = { c t i } i = 1 n − h + 1 C_t=\{c_t^i\}_{i=1}^{n-h+1} Ct={cti}i=1n−h+1, h h h就是卷积核的大小,对相邻的h个单词的表示进行卷积,这个过程的公式: c t i = σ ( w t ⋅ x t i : ( i + h − 1 ) + b t ) c_t^i=\sigma(w_t\cdot x_t^{i:(i+h-1)}+b_t) cti=σ(wt⋅xti:(i+h−1)+bt) x i : ( i + h − 1 ) = x i ⊕ x i + 1 ⊕ . . . ⊕ x i + h − 1 x^{i:(i+h-1)}=x_i\oplus x_{i+1} \oplus...\oplus x_{i+h-1} xi:(i+h−1)=xi⊕xi+1⊕...⊕xi+h−1 其中 ⊕ \oplus ⊕表示的是concat操作。通过公式我们可以看到,他这里所谓的卷积就是把窗口大小的单词表示全部拼接起来然后过一个全连接层,经过卷积后,每一个卷积核h,我们都会拿到一个n乘1的表示,n是单词数量。然后对于每一个卷积核形成的featuremap进行最大池化。到这里,我们定义拿到的结果为 c ^ t = m a x { c t i } i = 1 n − h + 1 , c ^ t ∈ R g \hat c_t=max\{c_t^i\}_{i=1}^{n-h+1},\hat c_t \in R^g c^t=max{cti}i=1n−h+1,c^t∈Rg,这个g就是卷积核的数量。
然后作者又对它进行了进一步的处理: t = W t c ^ t + b t t = W_t\hat c_t+b_t t=Wtc^t+bt拿到最终的文本表示。这是一个d维的,所以 W t W_t Wt的维度应该是d乘g。
图像特征提取,首先使用预训练的image2sentence model,然后还是使用Test-CNN提取表示,流程与上文相同,最后一步为 v = W v c ^ v + b v v = W_v\hat c_v+b_v v=Wvc^v+bv,拿到图像的d维表示。
到这里,我们可以直接把新闻中提取到的文本和图像表示拼起来进行预测了,可以用交叉熵损失训练模型。作者认为,除此之外,新闻文章的虚假性也可以通过评估文本信息与视觉信息的相关性来检测;假新闻创作者有时会主动使用不相关的图像进行虚假陈述,以吸引读者的注意,或者由于难以找到支持性的非操纵图像而被动使用它们。与提供相关文字和视觉信息的新闻文章相比,那些陈述和图片不一致的新闻文章更有可能是假的。于是作者基于余弦相似度定义了一个相似度: M s ( t , v ) = t ⋅ v + ∣ ∣ t ∣ ∣ ∣ ∣ v ∣ ∣ 2 ∣ ∣ t ∣ ∣ ∣ ∣ v ∣ ∣ M_s(t,v)=\frac {t\cdot v+||t|| \ ||v||}{2||t|| \ ||v||} Ms(t,v)=2∣∣t∣∣ ∣∣v∣∣t⋅v+∣∣t∣∣ ∣∣v∣∣ 这个相似度是在[0,1]的范围取值,通过计算得到的这个相似度,作者重新定义了损失函数,把相似度加进去: L ( θ t , θ v ) = − E ( a , y ) ( y l o g ( 1 − M s ( t , v ) ) + ( 1 − y ) l o g M s ( t , v ) ) \mathcal{L}(\theta_t,\theta_v)=-E_{(a,y)}(ylog(1-M_s(t,v))+(1-y)logM_s(t,v)) L(θt,θv)=−E(a,y)(ylog(1−Ms(t,v))+(1−y)logMs(t,v)) 本文总的模型:
实验
实验使用的数据集是FakeNewsNet中的PolitiFact(政治)和 GossipCop(八卦)两个领域的数据集,数据集概览:
实验结果:
消融实验设置:(1)综合新闻文本信息、视觉信息及其关系(SAFE)在所有变体中表现最好;(2)使用多模态信息(SAFE\S或SAFE\W)比使用单模态信息(SAFE\T或SAFE\V)表现更好;(3)通过独立使用多模态信息(SAFE\S)或挖掘它们之间的关系(SAFE\W)来检测假新闻是相当的;(4)文本信息(SAFE\V)比视觉信息(SAFE\T)更重要。
相关文章:
论文笔记:相似感知的多模态假新闻检测
整理了RecSys2020 Progressive Layered Extraction : A Novel Multi-Task Learning Model for Personalized Recommendations)论文的阅读笔记 背景模型实验 论文地址:SAFE 背景 在此之前,对利用新闻文章中文本信息和视觉信息之间的关系(相似…...
5G技术对物联网的影响
随着数字化转型的加速,5G技术作为通信领域的一次重大革新,正在对物联网(IoT)产生深远的影响。对于刚入行的朋友们来说,理解5G技术及其对物联网应用的意义,是把握行业发展趋势的关键。 让我们简单了解什么是…...
Nacos1.X源码解读(待完善)
目录 下载源码 注册服务 客户端注册流程 注册接口API 服务端处理注册请求 设计亮点 服务端流程图 下载源码 1. 克隆git地址到本地 # 下载nacos源码 git clone https://github.com/alibaba/nacos.git 2. 切换分支到1.4.7, maven编译(3.5.1) 3. 找到启动类com.alibaba.na…...
算法之双指针系列1
目录 一:双指针的介绍 1:快慢指针 2:对撞指针 二:对撞指针例题讲述 一:双指针的介绍 在做题中常用两种指针,分别为对撞指针与快慢指针。 1:快慢指针 简称为龟兔赛跑算法,它的基…...
苍穹外卖面试题
8. 如何理解分组校验 很多情况下,我们会将校验规则写到实体类中的属性上,而这个实体类有可能作为不同功能方法的参数使用,而不同的功能对象参数对象中属性的要求是不一样的。比如我们在新增和修改一个用户对象时,都会接收User对象…...
【Qt 学习之路】在 Qt 使用 ZeroMQ
文章目录 1、概述2、ZeroMQ介绍2.1、ZeroMQ 是什么2.2、ZeroMQ 主线程与I/O线程2.3、ZeroMQ 4种模型2.4、ZeroMQ 相关地址 3、Qt 使用 ZeroMQ3.1、下载 ZeroMQ3.2、添加 ZeroMQ 库3.3、使用 ZeroMQ3.4、相关 ZeroMQ 案例 1、概述 今天是大年初一,先给大家拜个年&am…...
CI/CD到底是啥?持续集成/持续部署概念解释
前言 大家好,我是chowley,日常工作中,我每天都在接触CI/CD,今天就给出我心中的答案。 在现代软件开发中,持续集成(Continuous Integration,CI)和持续部署(Continuous D…...
golang常用库之-disintegration/imaging图片操作(生成缩略图)
文章目录 golang常用库之什么是imaging库导入和使用生成缩略图 golang常用库之 什么是imaging库 官网:https://github.com/disintegration/imaging imaging 是一个 Go 语言的图像处理库,它提供了一组功能丰富的函数和方法,用于进行各种图像…...
CSS 控制 video 标签的控制栏组件的显隐
隐藏下载功能 <video src"" controlsList"nodownload" />controlslist 取值如下(设定多个值则使用空格进行间隔) 如:controlslist"nodownload nofullscreen noremoteplayback"nodownload:取消更多控件弹窗的下载功…...
数据可视化之维恩图 Venn diagram
文章目录 一、前言二、主要内容三、总结 🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 一、前言 维恩图(Venn diagram),也叫文氏图或韦恩图,是一种关系型图表,用于显示元素集合之间的重叠区…...
2024刘谦春晚第二个扑克牌魔术
前言 就是刚才看春晚感觉这个很神奇,虽然第一个咱模仿不过来,第二个全国人民这么多人,包括全场观众都有成功,这肯定是不需要什么技术,那我觉得这个肯定就是数学了,于是我就胡乱分析一通。 正文 首先准备…...
【k8s系列】(202402) 证书apiserver_client_certificate_expiration_seconds
apiserver_client_certificate_expiration_second证书定义的位置:kubernetes/staging/src/k8s.io/apiserver/pkg/authentication/request/x509/x509.go at 244fbf94fd736e94071a77a8b7c91d81163249d4 kubernetes/kubernetes (github.com) apiserver_client_certi…...
Rust变量与常量介绍
Rust是一门注重安全性和性能的系统编程语言,其中变量和常量的概念有着独特的设计和特性。在本文中,我们将深入了解Rust中的变量和常量,并解释它们之间的区别,同时通过多个例子进行说明。 Rust常量 在Rust中,常量是不…...
Flask基础学习2
连接mysql数据库测试(专业版) [注意1:要导入text库,否则可能出现找不到select 1错误] [注意2:若出现下列问题,可按照模板代码的顺序db SQLAlchemy(app) 的位置] RuntimeError: Either SQLALCHEMY_DATABASE_URI or SQLALCHEMY_B…...
文章页的上下篇功能是否有必要?boke112百科取消上下篇功能
也不知道是从什么时候开始,我们很多站长的博客网站文章页都会在文末添加上“上一篇”和“下一篇”功能,目的是进行站内SEO优化和方便用户阅读上下篇文章。 boke112百科不管是以前使用的Three主题还是现在使用的YIA主题,刚开始的文章页都是有…...
Lua序列化
我们经常需要序列化一些数据,为了将数据转换为字节流或者字符流,这样我们就可以保存到文件或者通过网络发送出去。我们可以在 Lua 代码中描述序列化的数据,在这种方式下,我们运行读取程序即可从代码中构造出保存的值。 number/st…...
Acwing---839. 模拟堆
模拟堆 1.题目2.基本思想3.代码实现 1.题目 维护一个集合,初始时集合为空,支持如下几种操作: I x,插入一个数 x;PM,输出当前集合中的最小值;DM,删除当前集合中的最小值(…...
STM32 STD/HAL库驱动W25Q64模块读写字库数据+OLED0.96显示例程
STM32 STD/HAL库驱动W25Q64 模块读写字库数据OLED0.96显示例程 🎬原创作者对W25Q64保存汉字字库演示: W25Q64保存汉字字库 🎞测试字体显示效果: 📑功能实现说明 利用W25Q64保存汉字字库,OLED显示汉字的时…...
Android 移动应用开发 创建第一个Android项目
文章目录 一、创建第一个Android项目1.1 准备好Android Studio1.2 运行程序1.3 程序结构是什么app下的结构res - 子目录(所有图片、布局、字AndroidManifest.xml 有四大组件,程序添加权限声明 Project下的结构 二、开发android时,部分库下载异…...
MATLAB语音去噪系统
目录 一、背景 二、GUI页面 三、程序 3.1 LMS滤波程序 3.2 GUI程序 四、附录 一、背景 本文介绍了一种最佳的自适应滤波器结构,该结构采用最小均方差(LMS)作为判据,通过不断迭代自适应结构来调整得到最佳滤波器…...
调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...
Zustand 状态管理库:极简而强大的解决方案
Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
【单片机期末】单片机系统设计
主要内容:系统状态机,系统时基,系统需求分析,系统构建,系统状态流图 一、题目要求 二、绘制系统状态流图 题目:根据上述描述绘制系统状态流图,注明状态转移条件及方向。 三、利用定时器产生时…...
华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建
华为云FlexusDeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色,华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型,能助力我们轻松驾驭 DeepSeek-V3/R1,本文中将分享如何…...
C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件,用于在原生应用中加载 HTML 页面: 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...
前端中slice和splic的区别
1. slice slice 用于从数组中提取一部分元素,返回一个新的数组。 特点: 不修改原数组:slice 不会改变原数组,而是返回一个新的数组。提取数组的部分:slice 会根据指定的开始索引和结束索引提取数组的一部分。不包含…...
在树莓派上添加音频输入设备的几种方法
在树莓派上添加音频输入设备可以通过以下步骤完成,具体方法取决于设备类型(如USB麦克风、3.5mm接口麦克风或HDMI音频输入)。以下是详细指南: 1. 连接音频输入设备 USB麦克风/声卡:直接插入树莓派的USB接口。3.5mm麦克…...
云安全与网络安全:核心区别与协同作用解析
在数字化转型的浪潮中,云安全与网络安全作为信息安全的两大支柱,常被混淆但本质不同。本文将从概念、责任分工、技术手段、威胁类型等维度深入解析两者的差异,并探讨它们的协同作用。 一、核心区别 定义与范围 网络安全:聚焦于保…...
