FinLex An effective use of word embeddings for financial lexicon generation

FinLex: An effective use of word embeddings for financial lexicon generation 论文阅读

文章目录

    • FinLex: An effective use of word embeddings for financial lexicon generation 论文阅读
  • Abstract
  • Methodology
    • 具体词表例子
    • LM 词列表与 FinLex 词列表
  • 词列表在分类任务中的表现
    • 结果
  • 未来工作方向

Abstract

这篇文章主要是介绍了一个新方法,其效果与目前最好的LM词表相比显示出相当的性能

FinLex主要解决的问题是:

  1. 现有文献中的方法是依赖专家来创建这些词语集合。但这引入了一定程度的主观性和缺乏稳健性。
  2. 随着概念数量的增加,并随着时间的不同而有不同的表示——可能是由于语言的发展、经济变化(例如,诉讼的主题规则可能会改变),以及不同主题甚至同一主题的专业知识分布的变化,对如何构建词语集合的学科性和可重复性的需求应运而生。

FinLex的主要贡献是:

  1. 首先,该方法用可重复的算法取代了人类的主观选择。
  2. 其次,它可以由未来的建模者改进,因此更容易开发和适应。
  3. 第三,它并没有排除领域专家的作用——它只是给他们提供了一个更优的基础,以供他们用来细化结果。
  4. 最后,专家的作用也更加客观,因为专家强加观点的地方变得透明。这使得整个词语集合生成的过程以前所未有的方式变得透明。

Methodology

该方法(标记为 FinLex)如下。它接受一对词 (w1, w2) 作为输入。这些词可以是同义词或反义词。程序如下:

  1. 嵌入模型选择:从预训练的词嵌入模型中检索一大组词嵌入。词嵌入是固定维度 D(通常是 300)的数值向量,代表每个词,因此,每个词可以想象成 D 维空间中的一个点。生成嵌入的独特词的集合被称为“词汇表”,词汇表的大小记为 V。因此,词嵌入的集合可以用一个大小为 V×D 的矩阵表示。可以把这想象成把 V 个词投影到 D 维空间。在这个向量空间中,与相同概念和上下文相关的词会更接近彼此。
    • 标准的数据源包括 Facebook 的 FastText,斯坦福大学的全局向量(GloVe),以及谷歌的 word2vec。每种方法都有稍微不同的方式从大型文本语料库生成词嵌入(例如,BOW,SkipGram,GloVe 等)。我们使用 FastText 作为嵌入的来源(基于 Mikolov 等人的工作),这些嵌入通常是大小为 300 的向量,但我们已使用 FastText 内置的降维功能将其减少到大小为 100,以提高计算效率。我们注意到这是一个初步的方法,可以尝试嵌入尺寸 D 及生成嵌入的来源和技术的各种变体。较新的 Transformer 模型如 BERT 使用更大的嵌入尺寸(D = {768,1024}),但使用这些模型时,相同的词可能会因周围上下文的不同而产生不同的嵌入。我们将上下文嵌入与词袋(BoW)模型的结合留待后续研究。
  2. 选取相似词:对于 w 1 w_1 w1 w 2 w_2 w2,在嵌入空间中找到使用余弦相似性最相似的 K 个词,记为 w S ( w i ) w_S(w_i) wS(wi),i = 1,2。对于本文中的例子,我们将 K 设置为 1000。这是一个较大的相似词数量,代表了词汇表可能的最大规模。此外,在将最相似的词集与英语词典相交之后,许多词会被筛除,因此我们最终得到的词集通常会小于 1000。
  3. 过滤标准词:然后我们将词转换为小写形式,并将该集合与一个标准英语词列表(记为集合 w E w_E wE)进行交集操作。在我们的案例中,我们简单地使用了哈佛查询中的词,但也可以使用任何词列表,例如麻省理工学院的词列表。因此,我们有了新的集合 S ( w i ) = w S ( w i ) ∩ w E S(w_i) = w_S(w_i) \cap w_E S(wi)=wS(wi)wE, i = 1,2。这样可以确保得到一个与概念词 w i w_i wi 相关的干净的词列表。
  4. 合并:这里我们有两种情况,取决于这对词是同义词还是反义词。使用一对词是一个新思路,它提供了更广泛的概念包容性并在词汇表生成中提高了准确性。
    1. 同义词:如果 w 1 w_1 w1 w 2 w_2 w2 是同义词,我们将这两个集合合并为一个单一的词集合,即 S ( w 1 ) ∪ S ( w 2 ) S(w_1) \cup S(w_2) S(w1)S(w2)。如果有两个概念上相关的词,比如欺诈和疏忽,这样做可以让概念的涵盖范围更广。我们注意到,如果我们想要基于单个词的词列表,就像文献中的先前应用那样,我们会设置 w 1 = w 2 w_1 = w_2 w1=w2
    2. 反义词:如果 w 1 , w 2 w_1, w_2 w1,w2 是反义词,那么输出将是两个词集合 S ( w i ) S(w_i) S(wi),i = 1,2,每个集合都是独立地使用余弦相似性生成的。如果一个词同时出现在 S ( w 1 ) S(w_1) S(w1) S ( w 2 ) S(w_2) S(w2) 中,那么我们只保留在其与 w 1 w_1 w1 w 2 w_2 w2 更近的那个列表中,并从另一个列表中删除它。这确保了一个词不能同时属于两个对立的概念。在使用词嵌入时这一点尤为重要,因为有可能意义相反的词也会在嵌入空间中邻近出现,因为它们与概念词有关,即使它们的意义是对立的。例如,如果反义词是“战争”和“和平”,“冲突”这个词可能会同时出现在两个列表中,如果它更靠近“战争”(正如应该的那样),那么它将从基于“和平”的列表中移除。这是一个简单的制衡机制,有助于筛选出误分类的词。

此过程会在 w 1 , w 2 w_1, w_2 w1,w2 为同义词时创建一个单一的词列表,而在它们为反义词时创建两个词列表。我们不会移除停用词,也不会对词进行词干提取,因此同一词的多种形式可能会出现,这与 LM 词列表的情况一样。请注意,此过程可以很容易地扩展到使用多个词来表示一个概念的情况,即反义词对中每个概念都有多个词描述。

具体词表例子

下图为 FinLex 生成的负面和正面词列表。

在这里插入图片描述

这些词与概念词的关系相当紧密。显然有些词是不合适的,例如在负面词列表中:中立、因果、真相、暗示、确定、正常。在正面词列表中也有一些不正确的词,如被动、压力、自私、犹豫。这些词可以通过少量的人工努力手动筛选掉。

然而,在本文的研究中,为了展示保持过程完全自动化的潜力,我们没有包括人工干预

下表则列出了词表与标准词表的交集,并显示了前50个被排除的与positive最相近的词和前50个保留下来的词。

在这里插入图片描述

能看出被排除的top50中有大量的拼写错误的词(虽然我没看出positive与positive有什么区别,服了)。拼写错误的词之所以出现是因为词嵌入的语料库基于Wiki文本,后者也包含了许多拼写错误的词,但它们却出现在概念词的上下文中。

LM 词列表与 FinLex 词列表

本文还检查了LM 词列表与 FinLex 词列表之间的重叠部分。

在这里插入图片描述

我们可以看到,交集词的小集合都表达了不确定性。有趣的是,大量存在于 LM 词汇表中而不在 FinLex 中的词,反之亦然。这两个列表都非常清楚地包含了我们认为与不确定性概念相关的词。

那么为什么会有如此小的重叠呢?

  • 可能是机制不同。人工策划可能是基于心理检索或是通过使用词库的方式,这是一种直接的方法。机器策划的方法利用了词嵌入中的文本上下文,因此是一种间接的方法,即不一起出现但在相似上下文中出现的词倾向于具有相似的词嵌入。这表明,人类和机器共同策划词汇表可能是有用的。无论如何,人类进一步策划机器生成的词汇表可能有助于移除不属于词列表的词。

词列表在分类任务中的表现

本文考虑了各种数据集来评估词列表作为分类分析特征的表现。对于数据集中的每个文档,我们计算文档中属于给定词列表的词的比例,并将这个比例作为一列(数值特征)添加到数据集中。例如,对于 LM 的负面词,我们创建一个单独的列。同样,对于 LM 和 FinLex 的每一个词列表也是如此。

评估所用的数据集如下:

  1. Financial Phrase Bank (FPB)数据集包含带有三种标签(离散的 y 变量)类别的金融新闻标题:负面、中性和正面。情感得分基于多名标注者的手动标注。有4846条新闻标题,情感水平为:负面13%,中性59%,正面28%。
  2. 还有一个基于上面的 FPB 数据集的子集,包含2264条所有标注者一致同意的新闻标题(负面占13%,中性占61%,正面占25%)。
  3. 灾难推文数据集 (https://www.kaggle.com/vstepanenko/disaster-tweets)该数据集包含11,370条推文,其中19%与灾难相关,其余的不相关。因此,该数据集的标签也是不平衡的。该数据集支持二元分类练习,在这里我们拟合机器学习模型以预测一条推文是否与灾难相关。
  4. Reddit 新闻频道的 Reddit 新闻数据集(https://www.kaggle.com/aaron7sun/stocknews) 该数据集包含每天排名前25(基于 Reddit 排名)的新闻标题,并附有一个二元标签,指示道琼斯工业平均指数调整后的收盘值是否上涨或保持不变。该数据集包含1989天的数据。对于每一天,我们将所有25条新闻标题合并成一个文档来配合标签。然后使用该数据集来拟合用于二元分类的机器学习模型。

比较的模型如下:

  1. 首先,我们使用了每篇文本文档的词频-逆文档频率(TF-IDF)表示来进行分类。这种标准方法使用文章中的所有词(不仅仅是词列表计数的数值得分),并且是一个有用的baseline。
    • 如果我们有一个包含 N 篇文本的文章数据集,并且所有文章中有一个包含 V 个独特词的词汇表,那么可以在一个维度为 V×N 的词-文档矩阵中列出每篇文章中的词(术语)频率计数。对于该数据集的每一行,即该行词在所有列文档中的词频(TF)计数,我们将矩阵中的值除以包含该词的文档数量,即乘以逆文档频率(IDF)。
  2. Loughran-McDonald 的负面、正面、不确定性和诉讼倾向词列表来计算每篇文档中出现在每个列表中的词的比例。这将每篇文档转换为包含4个数值列的数据。
  3. 为了与 LM 特征集进行比较,我们使用了由 FinLex 算法生成的相同的四个特征(负面、正面、不确定性和诉讼倾向词列表)。我们在这些4个变量上拟合了机器学习模型。
  4. 我们使用之前的 FinLex 数据集,并通过添加基于欺诈和疏忽、安全、风险、确定性、不确定性、公平和不公平的新词汇表的附加列来增强它。我们称这个变量集为 FinLex+ 模型。

所有四种文本表示方式随后被拟合到一组机器学习模型的集成中。我们使用了一个名为 AutoGluon 的自动机器学习(AutoML)包来进行分类(Erickson 等人)。AutoGluon 是一个开源的 AutoML 框架,只需一行 Python 代码即可在未处理的表格数据集(数值加上文本)上训练机器学习模型。与主要关注模型/超参数选择的现有 AutoML 框架不同,AutoGluon Tabular 通过集成多个模型并在多层中堆叠它们来取得成功。所有实验中都使用了相同的模型集成。这些模型包括前馈神经网络、k-近邻算法、随机森林、额外树、LightGBM、XGBoost 和 CatBoost。这种方法支持对超参数选择的不可知性。

AutoGluon 是一种先进的方法,用于构建最佳的机器学习模型,然后将它们集成在一起以获得更好的模型。我们在这里提供一些简要的细节。代表文本的数值变量(X 自变量)和标签(Y 因变量)被用来训练上面提到的每一种机器学习模型(可以把它想象成拟合多个独立的非线性回归模型)。来自每个模型的预测值被加到 X 变量中,然后模型被重新拟合到扩展的自变量集。接着,来自每个模型的预测值被加权以创建一个组合预测,其中模型的权重由一个寻找最优模型权重的神经网络确定。整个方法被称为“堆叠集成”,这是一种准确且有效地汇集个体 ML 模型群体智慧的方式。

为什么在拟合4个数据集的机器学习模型时使用 AutoGluon 集成方法?

  • 通过在数据集上集成并加权不同的机器学习分类器,我们可以为每个数据集找到最佳模型。有可能在 FinLex 数据集上 XGBoost 表现更好,而在 LM 数据集上随机森林表现更好。如果我们只将4个数据集拟合到 XGBoost,我们会发现 FinLex 的表现优于 LM。通过 AutoGluon 进行集成,我们确保每个数据集能够自动找到其最佳预测模型,这使得不同词汇表之间的比较更加公平。

结果

报告了五个指标(参见表的行):

  1. 准确率,即正确预测的百分比;
  2. Matthews 相关系数(MCC),其范围从 -1 到 +1,其中高于 0 的分数表明分类能力;
  3. 精确度,即模型正确预测的特定类别的数量,这侧重于假阳性的多少;
  4. 召回率,即模型正确预测的每个类别的案例数量,这侧重于假阴性的多少;
  5. 最后,F1 分数,精确度和召回率的调和平均数。

在这里插入图片描述

上表显示了不同词汇表在四个数据集上的分类性能。我们可以看到,

  1. TF-IDF 的结果是最好的,因为它基于全文本,而不仅仅是基于词的得分。
  2. 基于未经进一步人工策划的 FinLex 的分类器的性能略逊于 LM。因此,算法策划的金融词汇表在这类分类任务上的表现并不如 LM,但差距不大,这表明这种方法可能是为其他应用开发更多词列表的一个良好起点。
  3. 在最后一个数据集(Reddit)上,FinLex 的表现优于其他方法。
  4. 我们增加了经过算法策划但未进一步人工策划的新列表(欺诈、疏忽、风险性和安全性),并将这一特征集称为 FinLex+。这一特征集包含了算法创建的额外词列表,这些列表可能包含区分正面情绪和负面情绪的词,因此我们在分类准确率上看到的提升是合理的,这也表明这些新词列表是一个额外的贡献。

未来工作方向

  • 这项工作可以扩展到除了新闻分类之外的其他金融应用和数据集。例子包括信用评分、分析师报告评分、使用新的风险和安全评分进行市场风险评分,以及通过增强 LM 的诉讼倾向词列表与 FinLex 的欺诈和疏忽列表来预测诉讼。
  • 使用该词汇表算法在其他数据集上也能发挥作用。尽管新闻文章较短,可能更适合本研究中的数值评分,但使用较长的金融文件(如监管文件、法律卷宗和分析师收益电话会议记录)来比较 LM 与 FinLex 也许会更有趣。
    用该词汇表算法在其他数据集上也能发挥作用。尽管新闻文章较短,可能更适合本研究中的数值评分,但使用较长的金融文件(如监管文件、法律卷宗和分析师收益电话会议记录)来比较 LM 与 FinLex 也许会更有趣。
  • 随着这些任务标记数据集的可用性越来越广泛,使用本文中的算法开发新的词列表将缩短其工业应用的时间。其他值得进一步研究的课题包括使用在金融相关数据集上训练的词嵌入,以及将我们的算法应用于生成其他行业的词列表。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/141927.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

EMT-DAVT--基于子空间分布对齐和决策变量转移的多目标多任务优化

EMT-DAVT–基于子空间分布对齐和决策变量转移的多目标多任务优化 title: Multiobjective Multitasking Optimization With Subspace Distribution Alignment and Decision Variable Transfer author: Weifeng Gao, Jiangli Cheng, Maoguo Gong, Hong L…

FreeRTOS实战指南 — 3.1 C语言链表

目录 1 单向链表 1.1 单链表的概念 1.2 链表增加头结点的作用 1.3 单链表的实现 2 循环链表 3 双向链表 为什么学习链表?FreeRTOS使用链表来管理任务调度,来维护不同优先级的就绪任务;许多内部数据结构,如任务控制块&#x…

机器学习 vs 深度学习:深入浅出解析两者的区别

在当今科技飞速发展的时代,**机器学习(Machine Learning)和深度学习(Deep Learning)**成为了人工智能(AI)领域的热门话题。无论你是技术专家、学生,还是对AI感兴趣的普通读者&#x…

Pointnet++改进57:全网首发SCSA(2024最新注意力机制)|即插即用,提升特征提取模块性能

简介:1.该教程提供大量的首发改进的方式,降低上手难度,多种结构改进,助力寻找创新点!2.本篇文章对Pointnet++特征提取模块进行改进,加入SCSA注意力机制,提升性能。3.专栏持续更新,紧随最新的研究内容。 目录 1.理论介绍 2.修改步骤 2.1 步骤一 2.2 步骤二 2.3 步骤…

搭子app有哪些?找搭子用什么软件?8款找搭子平台清单分享

在这个快节奏的现代社会,人们常常渴望找到志同道合的伙伴,一同分享生活中的喜怒哀乐、探索未知的领域。而找搭子软件的出现,如同璀璨星辰照亮了我们的社交天空。下面就为你带来一份精心整理的找搭子软件清单。 1. 咕哇找搭子小程序&#xff1…

2----手机维修工具 集合解锁 修复参数 刷机支持高通 MTK 展讯等芯片 支持一些PDA设备

这款工具在早些年使用较普遍. 。支持的机型非常多。不但支持国内品牌机型还支持很多国外机。总计多达几百种型号。功能选项较多。唯一的缺点是英文版。需要一定的英文基础的友友使用。支持各类机型修复系统 修复参数 读取信息 备份分区等等。以及一些小品牌机型的root 备份基带…

RT-DETR改进策略:BackBone改进|Swin Transformer,最强主干改进RT-DETR

摘要 在深度学习与计算机视觉领域,Swin Transformer作为一种强大的视觉Transformer架构,以其卓越的特征提取能力和自注意力机制,正逐步引领着图像识别与检测技术的革新。近期,我们成功地将Swin Transformer引入并深度整合至RT-DERT(一种高效的实时目标检测与识别框架)中…

解决iframe嵌套第三方页面被拒绝

背景 很多时候,出于安全考虑,没有第三方页面的允许,我们是无法直接通过iframe去打开别人的第三方页面的,通常他们会通过在页面请求的响应头增加X-Frame-Options (去了解)和Content-Security-Policy (去了解)。 目的 可是有些时…

尚品汇-秒杀商品存入缓存、Redis发布订阅实现状态位(五十一)

目录: (1)秒杀业务分析 (2)搭建秒杀模块 (3)秒杀商品导入缓存 (4)redis发布与订阅实现 (1)秒杀业务分析 需求分析 所谓“秒杀”&#xff0…

I2C/IIC学习笔记

I2C/IIC 有些同学I2C和IIC分不清,I2C和IIC实际上是指同一种通信协议。I2C是Inter-Integrated Circuit的缩写,而IIC是它的另一种表述方式,代表的是同一个意思,即“集成电路间总线”。I2C是一种由飞利浦公司(现恩智浦半…

【题解】【枚举】—— [USACO1.5] 回文质数 Prime Palindromes

【题解】【枚举】—— [USACO1.5] 回文质数 Prime Palindromes [USACO1.5] 回文质数 Prime Palindromes题目描述输入格式输出格式输入输出样例输入 #1输出 #1 提示 思路1.素数筛法1.1.思路解析1.2.参考代码 解法1.打表1.1.思路解析1.2.AC代码 解法2.构造回文数2.1.思路解析2.2.…

Matlab Simulink 主时间步(major time step)、子时间步(minor time step)

高亮颜色说明:突出重点 个人觉得,:待核准个人观点是否有误 高亮颜色超链接 文章目录 对Simulink 时间步的理解Simulink 采样时间的类型Discrete Sample Times(离散采样时间)Controllable Sample Time(可控采样时间) Continuous Sample Times(…

基于springboot大学生就业招聘系统的设计与实现

大学生就业招聘系统的设计与实现 摘要 随着信息互联网信息的飞速发展,大学生就业成为一个难题,好多公司都舍不得培养人才,只想要一专多能之人才,不愿是承担社会的责任,针对这个问题开发一个专门适应大学生就业招聘的…

HTML+CSS - 网页布局之多列布局定位

1. 多列布局 CSS中多列布局处理文本内容&#xff0c;特别适合对于长段落或者大量文本进行自动分栏显示 类似于grid分布&#xff0c;但相较之下更加简洁明了 基本语法 <div class"container"><p>这是一些示例文本&#xff0c;当我们使用 column-count…

CGAL GIS 应用 - 从点云到DTM

CGAL GIS 应用 - 从点云到DTM GIS应用中使用的许多传感器(例如激光雷达)都会生成密集的点云。此类应用通常利用更高级的数据结构:例如&#xff0c;不规则三角网(TIN)&#xff0c;它可以作为数字高程模型(DEM)的基础&#xff0c;特别是用于生成数字地形模型(DTM)。 点云也可以通…

SOMEIP_ETS_111: SD_Empty_Entries_Array

测试目的&#xff1a; 验证DUT能够忽略声明了条目数组长度为零的SubscribeEventgroup消息。 描述 本测试用例旨在确保DUT在接收到一个Entries数组长度为零的SubscribeEventgroup消息时&#xff0c;能够正确地忽略该消息&#xff0c;不对其进行解释或响应。 测试拓扑&#x…

移动UI案例:工具类app整套案例

工具类App是指提供各种实用工具和功能的手机应用程序。这些工具可以包括但不限于日历、闹钟、备忘录、翻译、计算器、单位转换、天气预报、地图导航、音乐播放器、相机、视频编辑等。这些工具类App能够帮助用户解决日常生活和工作中的各种问题&#xff0c;提高效率和便利性。 …

基于是springboot小区物业管理系统

小区物业管理系统 摘 要 随着科学技术的飞速发展&#xff0c;各行各业都在努力与现代先进技术接轨&#xff0c;通过科技手段提高自身的优势&#xff1b;对于小区物业管理系统当然也不能排除在外&#xff0c;随着网络技术的不断成熟&#xff0c;带动了小区物业管理系统&#x…

Redis的存储原理和数据模型

一、Redis是单线程还是多线程呢&#xff1f; 我们通过跑redis的代码&#xff0c;查看运行的程序可以得知&#xff0c;Redis本身其实是个多线程&#xff0c;其中包括redis-server&#xff0c;bio_close_file&#xff0c;bio_aof_fsync&#xff0c;bio_lazy_free&#xff0c;io_t…

猫头虎分享:Python库 SQLAlchemy 的简介、安装、用法详解入门教程

&#x1f42f; 猫头虎分享&#xff1a;Python库 SQLAlchemy 的简介、安装、用法详解入门教程 大家好&#xff0c;我是猫头虎&#xff01;今天有粉丝问猫哥&#xff1a;“在项目开发中如何高效地进行数据库操作&#xff1f;是否有一个灵活又强大的ORM库推荐&#xff1f;”正好&…