TowardsDataScience 博客中文翻译 2020(二百八十三)

原文:TowardsDataScience Blog

协议:CC BY-NC-SA 4.0

幂 BI 中的日期

原文:https://towardsdatascience.com/dates-in-power-bi-ada30f85e4b3?source=collection_archive---------8-----------------------

与日期打交道——可能有些有趣。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

柯蒂斯·麦克牛顿在 Unsplash 上的照片

在 Power BI 中,许多专家强烈推荐的方法是在处理日期时创建一个日期表格。我在没有它的情况下工作过,这绝对不是一个好主意。这让我头疼,也给了我不必要的痛苦。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

日期表很重要!这里有三个原因。

日期计算 — DAX 需要一个日期表来进行日期计算!没有它,那些 SAMEPERIODLASTYEAR、LASTQUARTER 或 DATESBETWEEN 类型的计算就无法工作。也许会,但会非常复杂。为什么伤你的头?

周末/节假日 —如果您需要在计算中排除节假日,并且您没有日期表?这将非常困难。

不同的粒度 —有时,您需要在基于月的表和基于日的表之间进行比较。你需要一些东西来加入他们,这样你才能充分地报道。

在本文中,我将向您展示如何在 M (Power Query)和 DAX 中创建日历表。

我们开始吧!

创建日期表

我们打开幂查询吧(如果不知道从哪里打开,看看这篇文章里的基础知识。)

我想要的表是一个财政年度所有日期的列表,包括星期几、月份和周数…如果可能的话,还包括节假日。我们只想标记这些。

像下面这样的会很好。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

为了在 Power Query 中做到这一点,我们需要创建一个新的查询。

创建一个新的查询—右键点击查询窗格>选择新的空白查询>选择高级编辑器(顶部的按钮)

完成后,将此功能插入高级编辑器。

Source = List.Dates(#date(2019,04,01),365,#duration(1,0,0,0))

好吧,那到底是什么意思?

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这意味着我正在使用一个列表。Dates 函数,创建一个日期表,从 2019 年 4 月 1 日开始,持续时间为 365 天。

一旦你输入这个,Power Query 会给我们一个从 2020 年 4 月 1 日到 365 天之后的所有日期的列表。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

现在它以列表格式出现,所以我们必须将它转换成表格,以便使用我们的其他函数。您可以选择列>右键>到表格。它会帮你把它变成一张桌子。

现在让我们添加一些其他功能。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在这里您可以浏览许多其他功能。您可以使用这些函数,方法是获取所列函数的名称,并将其引用到您的日期列。

例如,如果我对添加星期几感兴趣,我可以输入日期。DayOfWeekName([日期]) 。此外,如果我只对数字感兴趣,即一周中的实际日期,我可以使用日期。day ofweek([日期])

链接中列出了许多功能,需要做很多实验,所以我只使用了我最常用的功能。我并不都记得。

最后,你会得到一个如下图所示的表格。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

现在为你的 PBI 报告输入所有这些内容是相当乏味的,所以我为你创建了一个简单的脚本。将数据加载到 PBI 时,您可能需要调整数据类型。

下面是一个基本数据表的脚本—复制下面的右键单击>选择新的空白查询>选择高级编辑器>粘贴下面的

根据您的需要添加 4 个参数,您就可以开始了。

(Year as number, Month as number, Days as number, Duration as number) =>let
    Source = List.Dates(#date(Year,Month,Days),Duration,#duration(1,0,0,0)),
    #"Converted to Table" = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Added Custom" = Table.AddColumn(#"Converted to Table", "Custom", each Date.DayOfWeek([Column1])),
    #"Renamed Columns5" = Table.RenameColumns(#"Added Custom",{{"Column1", "Date"}}),
    #"Added Custom1" = Table.AddColumn(#"Renamed Columns5", "Custom.1", each Date.DayOfWeekName([Date])),
    #"Renamed Columns" = Table.RenameColumns(#"Added Custom1",{{"Custom", "Day of Week"}, {"Custom.1", "Day of Week Name"}}),
    #"Added Custom2" = Table.AddColumn(#"Renamed Columns", "Custom", each Date.DayOfYear([Date])),
    #"Renamed Columns1" = Table.RenameColumns(#"Added Custom2",{{"Custom", "Day of Year"}}),
    #"Added Custom3" = Table.AddColumn(#"Renamed Columns1", "Custom", each Date.Month([Date])),
    #"Renamed Columns2" = Table.RenameColumns(#"Added Custom3",{{"Custom", "Month"}}),
    #"Added Custom4" = Table.AddColumn(#"Renamed Columns2", "Custom", each Date.MonthName([Date])),
    #"Renamed Columns3" = Table.RenameColumns(#"Added Custom4",{{"Custom", "Month Name"}})
in
    #"Renamed Columns3"

一旦输入,电源查询将为您带来一个日期表。现在,您可以根据需要输入周长。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

当加载到报表中时,您只需将您的表标记为日期表。将表标记为日期表的说明如下。

然后,您将有一个日期表。

DAX 中的日期表

在 DAX 中创建日期表的过程非常相似。

您必须在 Power BI 报告视图中选择表格工具>新表格,完成后,您可以通过此功能填充您的表格。

Table = CALENDAR(DATE(2019,04,01),DATE(2020,03,31))

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

一旦您使用这个函数创建了一个新表,您将得到如下结果。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

现在,转到表格工具>标记为日期表格将其标记为日期表格

Power BI 将要求您选择日期列。一旦选中,它将验证该表是一个日期表。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

完成后,您可以使用 FORMAT 函数添加其他列。在这里,我添加了格式(表格[日期]," DD ")和其他格式,我选择了一些我常用的格式,但是你也可以添加你自己的格式样式,看看下面的最后一个专栏。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

当然也有其他格式。你可以在这里获得更多信息

接下来呢?

您现在知道了如何使用 DAX 和 m 创建一个简单的日期表,那么这一切有什么意义呢?这是为了将您的表(可能是事实表)与您的日期表连接起来。

类似这样的东西可能会帮助你。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

现在,您可以在事实表和日期表之间创建多对一联接。

由于您的日期现在反映在日期表中,您现在可以进行如下计算。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

我个人的最爱。

获取两个日期之间的总销售额。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

现在,这些 DAX 日期计算只有在你有一个日期表,并且以这种方式连接的情况下才有效。也许您的事实表很小,您可以在事实表中包含一个日期列,但它不会很漂亮。

还有很多很多很酷的 DAX 日期时间智能函数都是这里

日期栏一开始就搞砸了——所以我不能加入。

我也明白了。“您向我展示了如何在 DAX 和 M 中构建一个日期表,以及一些使用时间智能的方法,这很好,但是我甚至无法开始,因为事实表中的日期列一开始就被搞砸了!”

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

以下是你可以做的——而且对我来说几乎一直都有效。希望你的表没有被弄得一排排颠倒月份和日期…那可能本身就是另一篇文章了。

我建议在幂查询中使用“列按例”。这里的“人工智能”在查询。我不能在这里使用日期列,因为它是文本格式的,即使转换成日期,它也会抛出错误。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

开始自己填充日期列,AI 将会选择你正在做的事情并为你创建新的日期列。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

注意当你添加斜线的时候,它是如何选择你正在做的事情的?

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

它得到了你想要做的事情!

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

作者图片

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

现在,您可以对日期表进行连接了。

希望你喜欢这篇文章!

保持鼓励,保持安全,祝您的数据之旅好运!

Datetime2 —为什么应该(不应该)使用它?

原文:https://towardsdatascience.com/datetime2-why-you-should-not-use-it-70e50ae2bab9?source=collection_archive---------3-----------------------

选择正确的数据类型并不像您第一眼看到的那样简单

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

乔恩·泰森在 Unsplash 上的照片

几周前,我正在处理一个业务请求,为客户调查准备一个数据集成场景。在最初的概念阶段和逻辑数据建模之后,在物理数据建模阶段,我在考虑既能满足业务需求又能确保 SQL Server 资源得到最佳利用的某些数据类型。

我的建议是对所有 Datetime 列使用 Datetime2 数据类型,而我的老板坚持使用老式的 Datetime 。我想,他是一个老派的家伙,习惯于使用传统的数据类型,所以我将证明他是错的,并说服他改用更新的(顺便说一下,也是微软推荐的)数据类型。

介绍

在继续之前,我需要简要强调一下 DatetimeDatetime2 数据类型之间的主要特征和差异。

下表给出了这两者的简要概述:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

日期时间

Datetime 是一种“传统”数据类型,用于存储关于日期和时间的数据。它占用 8 个字节的内存,4 个字节用于日期部分,4 个字节用于时间部分。

所以,让我们来看看幕后发生了什么:

DECLARE @dt DATETIME = '2020-05-28 12:00:00.000';
SELECT CAST(@dt as varbinary(8));

我们得到了以下十六进制值:0x0000ABC900C5C100

因此,如果我们取前 8 个字符(0000ABC9)并将其转换为十进制,我们将得到 43977 个整数值。该值显示自 1900–01–01 以来的天数,可以按如下方式进行测试:

SELECT DATEADD(DD, 43977, '1900-01-01') AS DateTimeTest

我们看到我们之前“定义”的日期(2020 年 5 月 28 日)就在那里。

让我们检查时间部分,去掉最后 8 个字符(00C5C100)。把它转换成十进制,得到 12960000。这个数字表示从午夜开始的时钟滴答数。而且,由于精度为 1/300 秒,我们可以进行以下计算,以获得更多人类可读的结果:

SELECT 12960000/ 300 AS SecFromMidnight
      ,12960000/ ( 300 * 60) AS MinsFromMidnight
      ,12960000/ ( 300 * 60 * 60) as HoursFromMidnight

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

一旦我们将这个时间部分“添加”到前一个日期部分,我们将得到 2020–05–28 12:00:00.000,就像第一个声明中一样。

日期时间 2

Datetime2 是在 SQL Server 2008 中引入的,所以它在这里足够长,可以与它的“哥哥”进行一些比较。主要区别在于数据存储的方式:在 Datetime 类型中,先日期后时间,在 Datetime2 中,3 个字节,最后表示日期部分!

让我们用与前面相同的数据进行检查:

DECLARE @dt DATETIME2(3) = '2020-05-28 12:00:00.000';
SELECT CAST(@dt as varbinary(8));

现在,十六进制值是:0x03002E930224410B

所以,我们取日期的最后 6 个字符(3 个字节),但是最右边的字节在数据时间 2 中是最重要的,所以它先取:0B4124。把它转换成十进制,我们得到 737572。当我们将其添加到日期时间 2 数据类型的“0001–01–01”起点时,我们将日期(2020–05–28)恢复为:

SELECT DATEADD(DD,737572,convert(date,'0001-01-01')) AS DateTimeTest

对于时间部分,事情变得更加复杂,因为它依赖于定义的精度。在我们的例子中,它是 3 位精度,但它可以达到 7 位(这是默认的,以防我们没有定义任何特定的值)。根据精度不同, Datetime2 占用 6 到 8 个字节的存储空间。

回到我们的例子:

SELECT CAST(0x02932E00 AS INT)/ POWER(10,3) AS SecFromMidnight
      ,CAST(0x02932E00 AS INT)/ (POWER(10,3) * 60) AS MinsFromMidnight
      ,CAST(0x02932E00 AS INT)/ (POWER(10,3) * 60 * 60) as HoursFromMidnight

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

同样,我们得到了预期的结果。

回到我们最初的场景…

好了,这是两种数据类型的简要概述。创建表时,在许多情况下,人们无法预见特定表中将存储多少数据。有时,你创建了一个表,认为它不会超过某个阈值,但过了一会儿,你意识到你的假设是不正确的。

然而,我们确信这张桌子会很大!我说的大,是指一两年后可能接近 1 亿行。回到我们最初创建最优表的请求,我认为将数据存储为 2 位数精度的 Datetime2 (需要 6 个字节),乘以至少 5 个 Datetime 列,可以为我们节省大量空间。

需要更少的存储,更高的精度,更大的日期范围,符合 SQL 标准…

为什么还有人使用日期时间呢?

但是,我开始深入挖掘。并尝试在网上搜索寻找专家对这个话题的看法。我想,Datetime2 一定有什么(我的意思是,我的老板通常知道他在说什么,呵呵)。所以,我发现这个讨论有着 Datetime2 的被充分证明的缺点。

主要问题是缺乏对日期进行基本数学运算的(简单)可能性,例如计算两个日期之间的天数、小时数、分钟数等。

下面是一个关于日期时间类型的基本示例:

SELECT CONVERT(DATE, GETDATE()+1) AS Tomorrow;

如果您试图对 Datetime2 做同样的事情,您将得到一个错误:

SELECT CONVERT(DATE,SYSDATETIME()+1) AS Tomorrow;

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

另一个非常明显的缺点是,如果您试图计算当月的第一天,这是一种非常常见的情况:

SELECT  CurrentMonthStart = DATEADD(mm,DATEDIFF(mm,0,SYSDATETIME()),0);

结果是意料之中的:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

但是,你不会想到它的数据类型是:日期时间,而不是日期时间 2

SELECT  SQL_VARIANT_PROPERTY(DATEADD(mm,DATEDIFF(mm,0,SYSDATETIME()),0),'BASETYPE') AS DataTypeTest

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这意味着每次使用这些计算进行比较时,您都将完成隐式数据转换!

另一个真正重要的考虑来自于这样一个事实,即由于数据存储的方式(还记得前面解释过的字节逆序),SQL Server 不能正确地对 Datetime2 列使用统计信息。关于这些问题的更多信息,请参见亚伦·贝特朗的文章

错误的估计会导致非最优的查询计划,从而降低性能,这是一个更大的缺点。

因此,结果是错误的估计和糟糕的查询计划,常见场景中的隐式数据转换,无法使用基本的数学运算进行日期计算…

究竟为什么有人想使用 Datetime2?

我用机器学习和人工智能做了一个约会算法

原文:https://towardsdatascience.com/dating-algorithms-using-machine-learning-and-ai-814b68ecd75e?source=collection_archive---------9-----------------------

为约会应用程序利用无监督机器学习

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

亚历山大·辛恩在 Unsplash 上的照片

对单身的人来说,约会是艰难的。约会应用程序可能更难。约会应用程序使用的算法在很大程度上被使用它们的不同公司保密。今天,我们将尝试通过使用人工智能和机器学习构建一个约会算法来揭示这些算法。更具体地说,我们将以聚类的形式利用无监督的机器学习。

希望我们可以通过使用机器学习将用户配对来改善约会简档匹配的过程。如果像 Tinder 或 Hinge 这样的约会公司已经利用了这些技术,那么我们至少会多了解一点他们的档案匹配过程和一些无监督的机器学习概念。然而,如果他们不使用机器学习,那么也许我们肯定可以自己改进配对过程。

将机器学习用于约会应用和算法背后的想法已经在下面的前一篇文章中进行了探索和详细描述:

[## 可以用机器学习来寻找爱情吗?

medium.com](https://medium.com/datadriveninvestor/applying-machine-learning-to-find-love-3558dafcc4a1)

这篇文章讨论了人工智能和约会应用的应用。它列出了项目的大纲,我们将在本文中完成。总体概念和应用很简单。我们将使用 K-Means 聚类分层凝聚聚类 来对约会简档进行聚类。通过这样做,我们希望为这些假设的用户提供更多与他们相似的匹配,而不是与他们不同的个人资料。

现在我们已经有了开始创建这个机器学习约会算法的大纲,我们可以开始用 Python 来编码了!

在这里注册一个中级会员,可以无限制地访问和支持像我这样的内容!在你的支持下,我赚了一小部分会费。谢谢!

获取约会档案数据

由于公开的约会档案很少或不可能得到,这是可以理解的,因为安全和隐私风险,我们将不得不求助于假的约会档案来测试我们的机器学习算法。下面的文章概述了收集这些虚假约会资料的过程:

[## 我为数据科学制作了 1000 份假的约会资料

towardsdatascience.com](/generating-fake-dating-profiles-for-data-science-cd3b929972bc)

一旦我们有了伪造的约会档案,我们就可以开始使用 【自然语言处理(NLP) 来探索和分析我们的数据,特别是用户的 bios。我们有另一篇文章详细介绍了整个过程:

[## 我在约会档案上使用了机器学习 NLP

medium.com](https://medium.com/swlh/using-nlp-machine-learning-on-dating-profiles-1d9328484e85)

有了收集和分析的数据,我们将能够继续进行项目的下一个激动人心的部分— 集群

准备配置文件数据

首先,我们必须首先导入我们需要的所有必要的库,以便这个聚类算法能够正确运行。我们还将加载熊猫数据框架,这是我们在伪造假约会资料时创建的。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

数据框包含我们所有的数据为每个假的约会配置文件

数据集准备就绪后,我们可以开始聚类算法的下一步。

缩放数据

下一步,将有助于我们的聚类算法的性能,是扩大约会类别(电影,电视,宗教等)。这将潜在地减少将我们的聚类算法适应和转换到数据集所花费的时间。

# Instantiating the Scaler
scaler = MinMaxScaler()# Scaling the categories then replacing the old values
df = df[['Bios']].join(
              pd.DataFrame(
          scaler.fit_transform(
                               df.drop('Bios',axis=1)), 
                               columns=df.columns[1:], 
                               index=df.index))

向量化 Bios

接下来,我们将不得不矢量化我们从假的个人资料。我们将创建一个包含矢量化 bios 的新数据框架,并删除原来的“ Bio ”列。对于矢量化,我们将实施两种不同的方法,看看它们是否对聚类算法有显著影响。这两种矢量化方法是: 计数矢量化TFIDF 矢量化 。我们将尝试这两种方法,以找到最佳的矢量化方法。

这里,我们可以选择使用CountVectorizer()TfidfVectorizer()来矢量化约会简介 bios。当 Bios 被矢量化并放置到它们自己的数据框架中时,我们将把它们与缩放的日期类别连接起来,以创建一个具有我们需要的所有功能的新数据框架。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们的 DF 包括矢量化的 bios 和定年类别

基于这个最终的 DF,我们有 100 多个特性。因此,我们必须使用主成分分析(PCA)来降低数据集的维数。

数据帧上的 PCA

为了缩减这个庞大的特征集,我们必须实现【PCA】。这项技术将减少我们的数据集的维度,但仍然保留了许多可变性或有价值的统计信息。

我们在这里做的是拟合和转换我们最后的 DF,然后绘制方差和特征数。该图将直观地告诉我们有多少特征导致了差异。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

占差异百分比的特征数

运行我们的代码后,占方差 95% 的特征数为 74 。记住这个数字,我们可以将它应用到我们的 PCA 函数中,以从 117 减少最后一个 DF 中的主成分特征74 的数量。这些特征现在将被用来代替原来的 DF 来适应我们的聚类算法。

聚类约会简档

随着我们的数据缩放,矢量化,主成分分析,我们可以开始聚类的日期配置文件。为了将我们的配置文件聚集在一起,我们必须首先找到要创建的最佳集群数量。

聚类的评估指标

聚类的最佳数量将基于特定的评估度量来确定,这些评估度量将量化聚类算法的性能。由于没有确定的集群创建数量,我们将使用几个不同的评估指标来确定集群的最佳数量。这些指标是 轮廓系数戴维斯-波尔丁评分

这些指标各有优缺点。选择使用哪一个纯粹是主观的,如果你愿意,你可以自由地使用另一个指标。

找到正确的集群数量

下面,我们将运行一些代码,这些代码将使用不同数量的聚类来运行我们的聚类算法。

通过运行这段代码,我们将经历几个步骤:

  1. 为我们的聚类算法遍历不同数量的聚类。
  2. 使算法适合我们的 PCA 数据框架。
  3. 将配置文件分配给它们的集群。
  4. 将各自的评估分数附加到列表中。稍后将使用该列表来确定最佳聚类数。

此外,还可以选择在循环中运行两种类型的聚类算法:分层凝聚聚类k 均值聚类。有一个取消注释所需聚类算法的选项。

评估集群

为了评估聚类算法,我们将创建一个评估函数来运行我们的分数列表。

使用该函数,我们可以评估所获得的分数列表,并绘制出这些值,以确定最佳聚类数。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

戴维斯-波尔丁评分

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

轮廓系数得分

基于这两个图表和评估指标,集群的最佳数量似乎是 12 。对于算法的最后一次运行,我们将使用:

  • CountVectorizer 代替 TfidfVectorizer 对 bios 进行矢量化。
  • 分层凝聚聚类代替 KMeans 聚类。
  • 12 个集群

有了这些参数或函数,我们将对我们的约会档案进行聚类,并为每个档案分配一个编号,以确定它们属于哪个聚类。

运行最终的聚类算法

万事俱备,我们终于可以发现每个约会档案的聚类分配了。

我们最终聚类算法的代码

一旦我们运行了代码,我们就可以创建一个包含集群分配的新列。这个新的数据框架现在显示了每个约会概况的分配。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们已经成功地将我们的约会档案分组!现在,我们可以通过仅选择特定的集群编号来过滤数据帧中的选择。也许可以做得更多,但为了简单起见,这种聚类算法运行良好。

结束语

通过利用无监督的机器学习技术,如分层凝聚聚类,我们成功地将超过 5000 个不同的约会概况聚类在一起。请随意更改和试验代码,看看是否有可能改善整体结果。希望在本文结束时,您能够了解更多关于 NLP 和无监督机器学习的知识。

该项目还有其他潜在的改进,例如实现一种方法来包含新的用户输入数据,以查看他们可能与谁匹配或聚集在一起。也许创建一个仪表板来完全实现这个聚类算法,作为一个原型约会应用程序。总是有新的令人兴奋的方法来继续这个项目,也许最终,我们可以通过这个项目帮助解决人们的约会困境。

看看下面这篇文章,看看我们是如何为这个约会应用程序创建 web 应用程序的:

[## 我如何使用 Streamlit 构建 Web 应用程序

towardsdatascience.com](/how-to-use-streamlit-to-create-web-applications-218af44064f5)

资源

[## Marcos an 93/人工智能媒婆

github.com](https://github.com/marcosan93/AI-Matchmaker) [## 我在约会档案上使用了机器学习 NLP

medium.com](https://medium.com/swlh/using-nlp-machine-learning-on-dating-profiles-1d9328484e85) [## 我为数据科学制作了 1000 份假的约会资料

towardsdatascience.com](/generating-fake-dating-profiles-for-data-science-cd3b929972bc) [## 可以用机器学习来寻找爱情吗?

medium.com](https://medium.com/datadriveninvestor/applying-machine-learning-to-find-love-3558dafcc4a1)

#NLP365 的第 101 天:深入研究 RASA 的饮食结构

原文:https://towardsdatascience.com/day-101-of-nlp365-in-depth-study-of-rasas-diet-architecture-3cdc10601599?source=collection_archive---------16-----------------------

内线艾 NLP365

用于意图和实体分类的最新架构

大家好,我的名字是瑞安。我在伦敦做数据科学家。我对自然语言处理(NLP)非常有热情,我目前正在从事项目#NLP365 (+1),在那里我记录了我在 2020 年的每一天的 NLP 学习旅程。请随意查看我在过去 100 天里学到的东西这里

今天的帖子是关于 RASA 的饮食结构。我真的很喜欢 RASA 的饮食结构,虽然我发现 RASA 的解释视频非常有用,但我不想在将来再次访问饮食结构时重新观看整个视频,所以下面是我对 RASA 饮食的所有笔记:)

饮食有什么特别的?

DIET 代表双重意图和实体转换器。DIET 是一个多任务转换器架构,可以同时执行意图分类和实体识别。它由多个组件组成,允许我们灵活地更换不同的组件。例如,我们可以尝试使用不同的单词嵌入,比如 BERT 和 GloVe。

许多预先训练的语言模型非常沉重,因为它需要很大的计算能力,推理时间很长,所以尽管它们的性能很强,但它们不是为对话式人工智能应用程序设计的。饮食不同,因为它:

  • 是一种模块化体系结构,允许软件开发人员在实验中有更大的灵活性
  • 在准确性方面与预先训练的语言模型相匹配
  • 优于当前的 SOTA,训练速度快 6 倍

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

饮食模型的高级概述[1]

饮食建筑是什么?

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

饮食结构的深入概述[2]

首先,我们需要哪些训练数据来训练饮食模型?该架构要求数据集具有输入文本、意图标签和实体标签。

该架构有许多组件,需要优化(最小化)的总损耗由三个损耗组成:

  1. 实体损失
  2. 意向损失
  3. 掩模损失

实体损失

训练时输入的句子如何与实体损失联系起来?以下是将输入句子与实体损失联系起来的层次:

  1. 个体令牌路径
  2. 变压器层
  3. 条件随机场

个体令牌路径被分成两个子路径

  1. 预埋预埋。这可以是伯特或手套。在这里,您可以尝试不同的嵌入。输出是令牌的数字表示
  2. 稀疏特征+前馈神经网络。由作为特征的字符级 N-grams 的单热编码器组成,并被传递到前馈层

两个子路径的输出合并在一起,并馈入另一个 FFNN。FFNN 的输出是一个 256 维向量。

单个令牌路径的输出被馈入 2 层变压器层。点击这里看一篇关于变形金刚的好文章。随后,变换器层的输出被馈入条件随机场(CRF)层。在 CRF 中,我们有一个 FFNN,它获取 transformer 层的输出,并对输出的实体进行分类。例如,单词“ping”具有 game_name 的实体。在这些 FFNN 之间,我们有一个转移矩阵。转移矩阵背后的思想是捕捉这样一种情况,即如果有一个令牌是一个实体,那么它的相邻令牌也很有可能是一个实体。对于每个令牌,我们都有地面真实实体的标签,这可以在训练期间用来训练我们的 FFNN 和转移矩阵(它们的权重)。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

实体损失和输入令牌之间的联系[2]

意向损失

上图饮食建筑图中有一个特殊的类令牌(CLS)。这个特殊的类标记背后的思想是,它将总结整个输入句子,并导出代表整个输入句子的数字表示。这个特殊的类标记遵循与个体标记相同的路径,然而,预训练的嵌入和稀疏特征的输出略有不同:

  1. 预训练嵌入的输出现在是句子嵌入。根据所使用的预训练嵌入,计算方式会有所不同。
  2. 特殊类标记的稀疏特征是各个标记的所有单独稀疏特征的总和。

因为类标记是整个输入句子的总结,所以类标记应该能够预测意图。特殊的类令牌将通过单独的令牌路径、转换器层,然后到达嵌入层。同时,输入句子的真实意图通过嵌入层。正在计算两个嵌入层的输出之间的相似性(以及意图损失)。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

意图丧失与特殊阶级令牌 CLS(绿线)之间的联系[2]

掩模损失

在体系结构中添加这个掩码标记是为了使模型也可以作为语言模型来训练。语言模型是在给定一组输入标记的情况下,模型预测最合适的下一个标记。在训练期间,模型会随机屏蔽一些单词,算法的目标是预测被屏蔽的原始单词是什么。下图显示了这是如何工作的。掩码令牌将通过转换器传递到嵌入层。同时,被屏蔽的令牌(图中的单词 pong)通过单独的令牌路径,并且也进入嵌入层。计算这两个嵌入之间的相似性函数。该模型的目标之一是最小化掩模损失。屏蔽损失越低,模型预测屏蔽令牌就越好。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

掩码丢失和掩码令牌之间的联系[2]

FFNN 特性

关于结构中所有 FFNN 的两个特别注意事项。首先,它们没有完全连接。FFNN 从一开始就有 80%左右的辍学率。这使得 FFNN 更加轻便。第二,所有的 FFNN 共享相同的权重。所有 FFNN 后稀疏特征共享权重(W1),并且所有 FFNN 后合并两条路径的输出共享另一组权重(W2)。

结束的

当他们已经在使用预训练的模型时,为什么他们使用掩码令牌并再次训练语言模型?以允许模型适应数据集的域。特别是在聊天机器人或社交媒体上下文中,有更多拼写错误的单词或俚语或命令文本,因此再次训练语言模型将允许模型捕捉这些领域特定的语言。

该架构旨在允许模型学习我们输入句子的更一般的表示。在训练过程中,所有的权重都必须基于三种不同的损失进行优化:实体、意图和屏蔽损失,因此,模型不能只学习一种使其中一种损失最小化的表示。此外,该架构的设计方式使您可以打开或关闭多个组件。该架构旨在处理意图和实体分类,但如果我们只想让模型进行意图分类,我们可以“关闭”实体和屏蔽损失,只专注于优化训练期间的意图损失。我非常喜欢学习 RASA 的饮食模式,下一步是尝试 RASA 图书馆。

来源:

  1. https://blog . rasa . com/introducing-dual-intent-and-entity-transformer-diet-state-of-art-performance-on-a-lightweight-architecture/
  2. https://www.youtube.com/watch?v=vWStcJDuOUk&list = pl 75 E0 QA 87 DLG-za 8 Eli 6t 0 _ PBX afk-cxb
  3. 【https://www.youtube.com/watch?v=KUGGuJ0aTL8】&list = pl 75 E0 QA 87 DLG-za 8 Eli 6t 0 _ PBX afk-cxb&index = 3

#NLP365 第 102 天:NLP 论文摘要——财经微博中的隐式和显式方面提取

原文:https://towardsdatascience.com/day-102-of-nlp365-nlp-papers-summary-implicit-and-explicit-aspect-extraction-in-financial-bdf00a66db41?source=collection_archive---------51-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 100 天里学到了什么。

今天的 NLP 论文是财经微博中的隐式和显式方面提取。以下是研究论文的要点。

目标和贡献

使用无监督和有监督技术从金融微博中进行方面提取。贡献在于它提取了特定领域(金融)的方面,并处理了隐式和显式方面的提取。

注记和数据集

  1. 预定义了一个股票投资分类法,以提取隐含和明确的方面
  2. 创建了一个包含 7 个方面类和 32 个方面子类的语料库。语料库有 368 条信息,其中 218 条是隐含方面,150 条是明确方面

模型

  1. 分布式语义模型
  2. 监督 ML 模型 XGBoost、随机森林、SVM 和条件随机场

分布式语义模型

本质上,它使用单词嵌入来计算语义相关度。有两个步骤:

  1. 提取候选人。使用形态句法模式选择相关的名词和动词短语,包括副词、形容词等修饰语。例如,“收入下降”。
  2. 计算与类别的相关度。一旦提取了候选项,计算语义相关度包括将候选项向量与方面子类向量进行比较。多个候选单词被组合成一个向量。为每个消息中所有可能的成对记号组合计算余弦相似度,并保留最高得分对。

监督 ML 模型

这是一个多类监督分类问题。它涉及特征工程、机器学习算法优化以及模型选择和评估:

  1. 特征工程。这包括 BoW(二进制计数、频率计数和 TFIDF)、词性标注、数字和预测的实体情感
  2. ML 算法优化。选择了 4 ML 算法:XGBoost、随机森林、SVM 和条件随机场。超参数调整使用粒子群优化(PSO)方法
  3. 模型选择和评估。选择 DSM 和 ML 模型中的最佳模型(使用 CV ),并使用留一法选项验证所选模型

结果

XGBoost 得分最高,被选中。下图显示了 XGBoost 在方面类和方面子类分类以及隐式和显式方面分类上的结果。XGBoost 在 7 个方面的分类上取得了 71%的准确率,在显式方面分类上取得了 82%的准确率,在隐式方面分类上取得了 35%的准确率。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

模型验证和隐式与显式方面的结果分解[1]

结论

显式方面分类表现良好,但是隐式方面分类仍然需要更多工作,且可以用更大的数据集和更好的特征工程来处理。

来源:

[1]盖拉特,托马斯等,“财经微博中的隐性和显性体抽取。”计算语言学协会年会)。计算语言学协会,2018。网址:【https://www.aclweb.org/anthology/W18-3108.pdf

【https://ryanong.co.uk】原载于 2020 年 4 月 11 日

#NLP365 的第 103 天:NLP 论文摘要——通过构造辅助句利用 BERT 进行基于方面的情感分析

原文:https://towardsdatascience.com/day-103-nlp-research-papers-utilizing-bert-for-aspect-based-sentiment-analysis-via-constructing-38ab3e1630a3?source=collection_archive---------22-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 100 天里学到了什么。

今天的 NLP 论文是 通过构造辅助句 利用 BERT 进行基于方面的情感分析。以下是研究论文的要点。

目标和贡献

针对基于方面的目标情感分析(TABSA),微调预训练的 BERT。TABSA 是一项任务,通过这项任务,您可以针对与给定目标相关的特定方面识别出细粒度的意见极性。在基于方面的情感分析(ABSA)中,你没有目标-方面对,只有方面。本文的贡献在于:

  1. 一种新的处理 TABSA 的方法,通过创建辅助句把它当作一个句子对分类任务
  2. 通过使用微调的 BERT 在 SentiHood 和 SemEval-2014 任务 4 数据集上实现 SOTA 结果

数据集

感知

  • 5215 个句子,其中 3862 个包含单个目标,其余包含多个目标
  • 每个句子包含一个带有情感极性的目标体对列表
  • 给定一个句子和目标,我们需要 a)检测对目标体的提及,b)确定检测到的目标体对的极性

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

感知标签示例[1]

塞姆瓦尔-2014 年任务 4

这是 ABSA 而不是塔布萨,所以他们没有目标-方面对,只有方面。允许模型同时处理子任务 3(方面检测)和子任务 4(方面极性)。

方法学

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

所有助句方法概述

本文采用四种方法构造辅助句,将 TABSA 转换为句子对分类任务。使用(位置 1,安全)作为目标-特征对示例:

问答的句子

  • 使用目标-体对生成一个问题。格式必须保持不变
  • 例如,“你认为 location-1 的安全性如何?”

对 NLI 的判决

  • 这里创造的句子不是一个标准句子,而是一个含有目标体对的假句子
  • 例如,“位置-1-安全”

问答部分的句子

  • 为句子添加情感标签,并将其视为二元分类问题,将每个句子分类为是或否
  • 每个目标-特征对将有三个新的序列。下面是一个例子:

位置-1 的安全方面的极性为正

位置-1 的安全方面的极性为负

位置-1 的特征安全性的极性为“无”

  • 我们将具有最高匹配分数概率的类别作为预测类别

对 NLI 的判决-B

  • 同样,对于 NLI-B,助动词句从真题变成伪句如下:

位置— 1 —安全—积极

位置-1-安全-负

位置-1-安全-无

实验和结果

这里有两个实验设置,因为我们有两个不同的数据集。

感知实验设置

感知度的评估只考虑数据集中最常见的 4 个方面(一般、价格、交通位置、安全)。以下是选择用于比较的模型:

  • 。具有 n 元语法和位置标签功能的 LR
  • LSTM——决赛 。以最终状态表示的 biLSTM
  • LSTM-洛克 。以与目标位置相关联的状态作为表示
  • LSTM+TA+SA 。具有复杂目标级和句子级注意机制的 biLSTM
  • SenticLSTM 。LSTM+TA+SA 升级版,引入 Sentic Net 外部信息
  • Dmu-Entnet 。具有跟踪实体的延迟存储器更新机制的外部存储器链的双向 EntNet

感知结果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

感知结果——所选模型、BERT-single 和 BERT-pair 之间的比较[1]

  • BERT-single 在特征检测方面优于 Dmu-Entnet,但在情感分类准确性方面得分较低
  • BERT-pair 在特征检测和情感分类方面远远超过其他模型。伯特对问答模型往往在情感分析上表现更好,而伯特对 NLI 模型往往在方面检测上表现更好

SemEval-2014 任务 4 实验设置

BERT-pair 模型与性能最好的系统进行了比较,即 XRCE、NRC-Canada 和 ATAE-LSTM。

SemEval-2014 年任务 4 成果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

SemEval-2014 任务 4 子任务 3(表 4)和子任务 4(表 5)之间的结果细分。子任务 3 是方面检测,子任务 4 是方面极性[1]

  • BERT-single 模型足以在两个子任务上取得更好的结果
  • 伯特对模型实现了对伯特单模型的进一步改进

结论和未来工作

为什么 BERT-pair 的实验结果好那么多?

  • 把目标体对转换成辅助句相当于扩大了语料库,因此,我们的模型有了更多的数据
  • 伯特似乎在问答和 NLI 任务中表现良好,表明在处理句子对分类方面的优势。这可能归因于无监督的掩蔽语言模型和下一句预测任务
  • 在 TABSA 上直接微调预训练的 BERT 不会产生好的结果。通过将 TABSA 转换为句子对分类任务,上下文现在类似于问答和 NLI,因此可以利用预训练 BERT 的优势

从单句分类到句子对分类任务的转换已经产生了强有力的结果。未来的工作可以将这种转换方法应用于其他类似的任务。

来源:

*[1]孙,迟,,黄,邱希鹏.“通过构造辅助句,利用 bert 进行基于方面的情感分析.” arXiv 预印本 arXiv:1903.09588 (2019)。网址:【https://arxiv.org/pdf/1903.09588.pdf *

【https://ryanong.co.uk】原载于 2020 年 4 月 12 日

#NLP365 的第 104 天:NLP 论文摘要——感知:城市街区基于目标特征的情感分析数据集

原文:https://towardsdatascience.com/day-104-of-nlp365-nlp-papers-summary-sentihood-targeted-aspect-based-sentiment-analysis-f24a2ec1ca32?source=collection_archive---------49-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。请随意查看我在过去 100 天里学到的东西这里

今天的 NLP 论文是sensitivity:城市街区基于目标特征的情感分析数据集 。以下是研究论文的要点。

目标和贡献

介绍了基于方面的目标情感分析(TABSA)的任务。这项工作扩展了基于方面的情感分析和目标情感分析,前者假设每个文档只有一个实体,后者假设对目标实体只有一个情感。这些贡献如下:

  1. 介绍基于方面的目标情感分析(TABSA)的任务
  2. 介绍了基于雅虎问答平台文本的感知数据集。
  3. 使用逻辑回归和 LSTM 为未来的基准测试开发几个强基线模型

基于方面的情感分析(ABSA)和目标情感分析的局限性

情绪分析(总体情绪)-> ABSA 和针对性情绪分析->针对性 ABSA。

ABSA 涉及在同一文本单元中提取对一个实体的不同方面的情感。用于 ABSA 的数据集主要假设在一个评论片段中只讨论一个实体,但是可以表达对多个方面的意见。目标情感分析针对给定句子中提到的某个目标实体执行情感分析。该任务假设每个实体只有一个情感,并且数据集到目前为止每个文本单元只包含一个目标实体。

塔布萨 vs ABSA

我认为通过一个例子来说明这两个任务的区别是最好的方法。

ABSA 数据集的一个示例:

“空间的设计令人惊叹,但服务却糟透了!”

ABSA 的任务是识别对环境方面的积极情绪和对服务方面的消极情绪。然而,假设这两种意见都是关于同一家餐馆的。

TABSA 数据集的合成示例:

“麦当劳的空间设计很棒,但服务很糟糕,另一方面,肯德基的员工非常友好,食物也总是很美味。”

在这个例子中,有两个目标实体:麦当劳和肯德基。当前的 ABSA 任务只能识别对服务方面表达的正面和负面意见,但不能识别这些意见的目标实体。TABSA 旨在提取目标实体及其各个方面和相关情感。

感知数据集

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

TABSA 的标签示例[1]

  • 包含带有一个或两个位置实体提及的注释句子
  • 它有 5215 个句子,其中 3862 个句子包含一个位置实体,1353 个句子包含两个位置实体
  • 下面是数据集中不同方面的图表,以及属于每个方面的句子数量。数据集只有正面或负面情绪:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

按方面和情感细分的句子数量[1]

  • 位置实体名称被位置 1 和位置 2 屏蔽
  • 数据集还包括极性类别“无”,其中句子不包含对位置 l 的方面 a 的意见

TABSA 任务本质上是给定一个句子,提供元组(l,a,p)的列表,其中 p 是实体 l 的方面 a 的极性

实验

从数据集中选择了四个最常见的方面:“价格”、“安全”、“运输位置”和“一般”。结果被分解为单个位置的句子、两个位置的句子和整个测试集。其想法是,单个位置句子的结果将展示模型执行正确情感分析的能力,而两个位置句子的结果将展示模型检测某个方面的相关情感并识别意见的目标实体的能力。

基线模型

  • 逻辑回归的不同变异与语言特征
  • 具有最终和位置输出状态的 LSTM

估价

  • F1 分数—特征检测
  • 准确性——情感分类
  • AUC(ROC 曲线下面积)—特征和情感检测

结果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

总体结果比较[1]

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

按方面细分的结果[1]

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

单位置和两位置句子的结果比较[1]

  • 表现最好的模型是带有位置掩蔽和位置信息的逻辑回归。LSTM 表现不佳可能是由于缺乏训练数据。
  • 逻辑回归对 LSTM 的持续优于突出了当数据量低时特征工程的优势。

结论和未来工作

  • 改进基线的方法可以包括使用解析树来识别每个位置的上下文
  • 数据扩充可用于使模型对数据的变化更加稳健

来源:

[1] Saeidi,Marzieh 等人,“感知:城市街区基于目标特征的情感分析数据集。” arXiv 预印本 arXiv:1610.03771 (2016)。网址:【https://www.aclweb.org/anthology/C16-1146.pdf

【https://ryanong.co.uk】原载于 2020 年 4 月 13 日

#NLP365 的第 105 天:NLP 论文摘要——用注意力超过注意力的神经网络进行方面级情感分类

原文:https://towardsdatascience.com/day-105-of-nlp365-nlp-papers-summary-aspect-level-sentiment-classification-with-3a3539be6ae8?source=collection_archive---------43-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 100 天里学到了什么。

今天的 NLP 论文是 方面级情感分类与注意力过度注意神经网络 s。下面是研究论文的关键要点。

目标和贡献

介绍了一种用于基于方面的情感分析的 AOA 神经网络。AOA 模块联合学习方面和句子的表示,并且明确地捕捉方面和上下文句子之间的交互。在笔记本电脑和餐馆数据集上的结果优于以前基于 LSTM 的架构。

数据集

使用来自 SemEval 2014 任务 4 的两个特定领域数据集进行实验:笔记本电脑和餐馆。准确性是评估标准。数据集汇总如下图所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

带有情感的数据集汇总统计数据[1]

方法学

在这个任务中,我们被给定一个句子和一个体目标,我们的目标是对句子中体目标的情感极性进行分类。在下面显示的架构中有 4 个主要组件:单词嵌入、双 LSTM、注意力超过注意力(AOA)和最终预测。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

基于方面的情感分析的建议架构[1]

单词嵌入和双 LSTM

单词嵌入是一个标准化的步骤,我们将文本句子和方面目标转换成它的数字表示。这里没什么特别的。一旦我们得到了词向量,我们就把它们分别输入到两个双 LSTM 中,来学习词在句子和体目标中隐藏的语义。

注意力过度集中(AOA)

下一步是使用 AOA 模块计算文本的注意力权重。下面是以下步骤:

  1. 计算两个隐藏状态之间的成对交互矩阵,其中每个条目的值代表句子和目标之间的词对的相关性
  2. 执行列级 softmax 以获得𝛼,目标到句子的关注
  3. 执行行方式 softmax 以获得𝛽,句子到目标的注意
  4. 计算𝛽的列平均值,以获得目标级别的关注度𝛽,它告诉我们方面目标中的重要部分
  5. 最终句子级注意力𝛾是每个单独的目标到句子注意力𝛼的加权和,如下所示:𝛾=𝛼𝛽 𝑇

最终预测

通过将来自 AOA 模块的句子注意力应用于句子隐藏状态来计算最终的句子表示,如下所示:𝑟=ℎ_𝑠^𝑇 *𝛾.这个最终句子表示被馈送到具有 softmax 函数的线性层中,以输出情感类别的概率。给定方面目标,具有最高概率的情感类是句子的预测标签。

实验和结果

模型比较

  • 多数 。简单基线,获取训练集中出现最频繁的情感,并将其分配给测试集中的样本
  • T5【LSTM】T6
  • TD-LSTM 。使用 LSTMs 来捕获方面术语周围的上下文
  • AT——LSTM。结合 LSTM 隐藏状态和方面嵌入计算注意向量
  • ATAE-LSTM 。AT-LSTM 的扩展,它将方面嵌入附加到每个单词嵌入中
  • 伊恩 。计算句子和体项的隐藏表示,并使用它来计算目标的注意力向量。句子和目标嵌入用于最终分类

结果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

跨两个数据集的模型比较(准确性)[1]

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

展示句子中的哪些标记对最终的情感分类贡献最大[1]

  • 根据结果表,AOA-LSTM 在与其他基线方法的比较中表现最佳
  • 我们还包括了一个表格,通过可视化句子注意向量𝛾.来展示哪个单词对体情感极性贡献最大

结论和未来工作

在误差分析中,存在模型不能有效处理的情况。一是复杂的情感表达。另一个是生僻的成语。在未来的工作中,我们可以将句子的语法结构或先前的语言知识输入 AOA 神经网络。

来源:

[1]黄、、、欧和凯瑟琳·m·卡利。"方面级情感分类与注意力-注意力神经网络."社会计算、行为文化建模和预测以及建模和仿真中的行为表现国际会议。施普林格,查姆,2018。网址:【https://arxiv.org/pdf/1804.06536v1.pdf

【https://ryanong.co.uk】原载于 2020 年 4 月 14 日

#NLP365 的第 106 天:NLP 论文摘要——用于特征提取的无监督神经注意模型

原文:https://towardsdatascience.com/day-106-of-nlp365-nlp-papers-summary-an-unsupervised-neural-attention-model-for-aspect-b874d007b6d0?source=collection_archive---------55-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 100 天里学到了什么。

今天的 NLP 论文是 一个用于方面提取的无监督神经注意模型 。以下是研究论文的要点。

目标和贡献

目标是改进一致方面的发现,因为现有的工作没有产生高度一致的方面。本文提出了一种新的神经模型,基于注意力的方面提取(ABAE ),它通过使用单词嵌入来利用单词共现的分布来提高连贯性。该模型还使用一种注意机制来在训练过程中削弱不相关的单词,这进一步提高了方面的一致性。

传统 LDA 的弱点

  • 不要直接对单词共现统计进行编码,这很重要,因为它们可以保持主题的连贯性
  • LDA 模型需要估计每个文档的主题分布。然而,评论文档往往很短,这使得估计每个文档的主题分布更加困难

数据集

两个真实世界的数据集:Citysearch(餐馆)和 BeerAdvocate(啤酒)。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

两个评估数据集的汇总统计数据[1]

城市搜索语料库

这是一个餐馆评论文集。有 3400 个手动标记的方面。这些注释用于方面提取的评估。有 6 个定义的方面标签:食物、员工、氛围、价格、趣闻和杂项。

BeerAdvocate

大约有 1000 篇评论(9245 句话)被标注了 5 个方面的标签:感觉、外观、气味、味道、整体。

基于注意力的特征抽取(ABAE)

提出的模型,基于注意力的方面提取(ABAE),使用单词嵌入显式编码单词出现统计,使用降维来提取最重要的方面,并使用注意力机制来移除不相关的单词以进一步提高方面的一致性。

最终目标是学习方面嵌入并将其映射到嵌入空间。以下是 ABAE 建筑图以及主要步骤的突出显示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

ABAE 模型架构[1]

  1. 将我们词汇表中的每个单词映射到它们各自的单词嵌入中。体嵌入是用来逼近我们词汇中的体词的
  2. 利用注意机制过滤掉非体貌词并构造一个句子嵌入,𝑧𝑠.注意力机制告诉模型应该对单词 I 关注多少,以便捕捉句子的主要方面
  3. 将句子嵌入重构为来自 T(方面嵌入矩阵)的方面嵌入的线性组合。𝑝𝑡是 k 个方面嵌入的权重向量,它告诉模型输入句子与相关方面的相关程度。通过将𝑧𝑠的维数从 d 维降低到 k(方面的数量)维和 softmax 非线性来获得𝑝𝑡。这个降维和重构的过程保留了嵌入体中的体词的大部分信息

培训目标是最大限度地减少重建损失。换句话说,该模型旨在尽量缩小𝑟𝑠和𝑧𝑠.之间的差异

实验

基线模型

  • LocLDA :标准 LDA。每个句子都被视为一个单独的文档
  • K-means :使用单词嵌入的 K-means 质心计算初始方面矩阵
  • SAS :提取方面和特定方面意见的混合模型
  • BTM:为短文本设计的双主题模型。它对无序词对的共现进行建模,以解决数据稀疏问题

估价

基于现有的工作,作者将餐馆和啤酒语料库的方面数量设置为 14 个。他们根据两个标准评价 ABAE:

  1. 架构能识别有意义的和语义一致的方面吗?
  2. 该架构能提高方面检测的性能吗?

结果

外观质量

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

由模型分类并映射到相应黄金方面的推断方面列表[1]

推断方面比黄金方面更精细。例如,它可以区分主菜和甜点。为了评估方面的质量,我们使用一致性分数。更高的一致性分数表明更好的方面可解释性,因此更有意义和语义一致性。下面是餐馆和啤酒语料库中每个模型的平均一致性分数。两个发现:1) ABAE 优于先前的模型,以及 2) k-means 在单词嵌入上足以比所有主题模型执行得更好,向我们显示单词嵌入是比 LDA 更强的用于捕获共现的模型。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

主题中顶级术语的数量与这些术语的连贯性之间的关系[1]

作者还进行了人体评估。首先,人类法官必须评估他们有多少连贯的方面。如果一个方面的前 50 个术语中的大部分一致地表示该方面,则该方面是一致的。结果如下,ABAE 发现了最多的相干态。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

ABAE 模型发现的相干态数目[1]

第二,人类裁判必须评估某个方面的顶项是否正确。只有当大多数裁判认为顶部术语反映了相关方面时,它才被认为是正确的。如下图所示。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

ABAE 模型对不同主题的术语进行分类的精确度[1]

方面检测

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

方面召回餐馆数据集上的结果[1]

给定一个评论句子,ABAE 首先分配一个推断的方面标签,然后映射到适当的黄金标准标签。上表显示了餐馆语料库的结果。表中的 SERBM 模型报告了在餐馆语料库上的方面检测的 SOTA 结果,并且 ABAE 能够在员工和氛围方面胜过它。

啤酒语料库的结果如下所示。请注意,作者将味觉和嗅觉结合在一起,因为它们都高度相关。ABAE 在各方面都超过了所有车型,除了口味方面。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

方面召回啤酒数据集上的结果[1]

另一个发现是,注意力机制被证明是驱动 ABAE 表现的关键因素。下表显示了 ABAE 和 ABAE 之间的性能比较,其中 ABAE 是没有注意机制的 ABAE 模型。ABAE 在所有方面,所有指标上都超过了 ABAE。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

ABAE 和 ABAE——(无注意机制)模型的消融研究[1]

结论和未来工作

与 LDA 模型相比,ABAE 显式地捕捉单词共现,并克服了数据稀疏的问题。实验结果表明,与以前的模型相比,ABAE 学习了更高质量的方面,并且在捕捉评论方面更有效。基于这篇论文,这是第一个用于方面提取的无监督神经技术。ABAE 是一个简单而有效的神经注意模型,它的规模很大。

来源:

[1]何,r .,李,W.S .,吴,H.T .和达尔迈尔,d .,2017 年 7 月。用于特征提取的无监督神经注意模型。在计算语言学协会第 55 届年会会议录(第 1 卷:长篇论文)(第 388–397 页)。网址:【https://www.aclweb.org/anthology/P17-1036.pdf

【https://ryanong.co.uk】原载于 2020 年 4 月 15 日

#NLP365 的第 107 天:NLP 论文摘要——让领导偏向于你:一个简单有效的新闻摘要方法

原文:https://towardsdatascience.com/day-107-of-nlp365-nlp-papers-summary-make-lead-bias-in-your-favor-a-simple-and-effective-4c52b1a569b8?source=collection_archive---------53-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 100 天里学到了什么。

今天的 NLP 论文是 让铅偏向于你:一种简单有效的新闻摘要方法 。以下是研究论文的要点。

目标和贡献

目的是使用新闻数据中现有的领先偏倚来预训练无标记数据集上的摘要模型。我们希望该模型使用文章的其余部分来预测引导句。引导偏差是新闻数据集中的一个常见问题,文章开头的几个句子包含最重要的信息,因此在新闻数据集上训练的模型会偏向于选择这些句子,而忽略文章后面的句子。

数据集

我们根据前 3 个句子与文章其余部分的重叠不停顿词比率过滤文章后,收集了 21.4M 篇文章(2016 年 6 月—2019 年 6 月)。高重叠不间断单词比率告诉我们有很强的语义联系。

在三个基准新闻摘要数据集上进行评估:

  1. 纽约时报(NYT)语料库— 104K 新闻文章
  2. Xsum — 227K 新闻文章
  3. CNN/每日邮报— 312K 新闻文章

方法学

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用 lead-3 作为摘要的数据集创建流程[1]

给定一篇新闻文章,我们把 lead-3 作为目标摘要,把文章的其余部分作为新闻内容,如上图所示。这允许我们利用未标记的新闻数据集来训练我们的摘要模型。这种预训练方法可以应用于任何具有结构偏差的数据集,例如,具有摘要的学术论文或具有目录的书籍。然而,预训练需要仔细的检查和清理,以确保我们对我们的内容有一个好的目标总结。

实验

抽象概括模型是传统的变换器编码器-解码器架构。我们不会在此详述架构。用未标记的导联-3 (PL)对目标数据集进行微调的预训练被表示为 PL-FT,而没有微调的被表示为 PL-NoFT。

数据清理流程是怎样的?

  1. 使用正则表达式删除媒体机构、日期和其他无关内容
  2. 只保留前三句有 10-150 个单词的文章,文章的其余部分有 150-1200 个单词。此外,删除所有在文章其余部分重复出现 lead-3 句子的文章。这是为了过滤掉太长或太短的文章,并鼓励抽象的总结
  3. 删除含有“不相关”前 3 句的文章。使用前导 3 句子和文章其余部分之间的重叠单词的比率来计算相关性。高重叠词比率意味着前三句是文章其余部分的典型总结。阈值比率为 0.65。

模型比较

  • Lead-X:使用前 X 个句子作为摘要(对于 NYT 和 CNN/DM,X = 3;对于 XSum,X = 1)
  • 指针生成器网络
  • DRM:使用深度强化学习
  • TConvS2S:卷积神经网络
  • 自下而上:总结的两步方法
  • SEQ:使用重构和话题丢失
  • GPT-2:预训练语言模型

结果

评估指标是传统的 ROUGE 分数(ROUGE-1、ROUGE-2 和 ROUGE-1)。所有三个评估数据集的结果如下图所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

NYT 和 CNN/每日邮报测试集的 ROUGE 分数[1]

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

XSum 测试集[1]的 ROUGE 分数

  • PL-FT 模型在 NYT 和 Xsum 数据集上都优于所有基线模型。在美国有线电视新闻网/每日邮报上,除了自下而上,它的表现超过了所有
  • PL-NoFT 在 CNN/Daily Mail 上的表现远远超过了所有无监督的模型。在 Xsum 中也表现不错。PL-NoFT 在所有三个数据集上都是相同的模型,展示了它的泛化能力

抽象性

PL-noFT 和 PL-FT 生成的摘要比参考摘要具有更新颖的单字。PL-noFT 与其他 n-grams 中的参考具有相似的新颖率,但是 PL-FT 在微调后具有相对较低的新颖率。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

新 n 元语法在生成的摘要中所占的百分比,用于衡量抽象性[1]

人类评估

对 PL 模型和指针生成器网络生成的摘要进行人工评估。评分系统和结果如下所示。结果表明,PL-noFT 和 PL-FT 都优于指针生成器网络。这展示了预训练和微调策略的威力。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

人体评价时的评分标准和评价结果[1]

结论和未来工作

本文利用新闻数据中存在的倾向性作为目标摘要和训练前摘要模型。我们的未经微调的预训练模型在不同的新闻摘要数据集上取得了 SOTA 结果。通过微调,性能进一步提高。总的来说,这种预训练方法可以应用于任何存在结构偏差的数据集。

来源:

[1]朱,,等.“使引导偏向于你:一种简单而有效的新闻摘要方法” arXiv 预印本 arXiv:1912.11602 (2019)。网址:【https://arxiv.org/pdf/1912.11602.pdf

【https://ryanong.co.uk】原载于 2020 年 4 月 16 日

#NLP365 的第 108 天:NLP 论文摘要——用于关系提取和语义角色标注的简单 BERT 模型

原文:https://towardsdatascience.com/day-108-of-nlp365-nlp-papers-summary-simple-bert-models-for-relation-extraction-and-semantic-98f7698184d7?source=collection_archive---------31-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 100 天里学到了什么。

今天的 NLP 论文是 用于关系抽取和语义角色标注的简单 BERT 模型 。以下是研究论文的要点。

目标和贡献

使用基于 BERT 的模型来实现关系提取和语义角色标记的 SOTA 性能。该论文声称是第一个成功地将 BERT 应用于关系抽取和语义角色标注的论文。

什么是语义角色标注?

对于语义角色标注,目标是提取句子的述元结构。这意味着我们要找出是什么事件,什么时候发生的,谁参与了,在哪里发生的等等。这对于逻辑推理很重要的下游 NLP 任务很有用。

用于关系抽取的 BERT

给定一个句子和两个实体跨度(非重叠),我们的目标是预测两个实体之间的关系。下图是 BERT 架构的示意图。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

用于关系抽取的 BERT 体系结构[1]

流程如下:

  1. 向输入句子添加特殊标记([CLS]和[SEP]),并用屏蔽标记屏蔽实体提及,以防止过度拟合。有两种论元类型(主语和宾语)和两种实体类型(位置和人)。例如,[S-PER]表示主体实体是人。请参见上图中带有特殊标记的输入句子示例。
  2. 使用单词块标记器进行标记化,并输入 BERT 编码器以获得上下文化的表示
  3. 删除第一个[SEP]标记后的任何序列
  4. 计算相对于主体实体和客体实体的位置序列
  5. 将两个位置序列转换为位置嵌入,并将其连接到上下文化的表示中
  6. 把它放进一个单层的 BiLSTM
  7. 两个方向上的最终隐藏状态被送入一个多层(一个隐藏层)感知器

结果

用于关系提取的评估数据集是 TAC 关系提取数据集(TACRED)。结果如下所示。BERT-base 模型能够胜过所有其他现有的独立模型,然而,当与集合模型比较时,它仍然下降。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

关于关系抽取任务的 BERT 结果[1]

语义角色标注的 BERT

语义角色标记由 4 个子任务组成:

  1. 谓词检测
  2. 谓词意义歧义消除
  3. 变元识别
  4. 论点分类

可以使用基于跨度和/或基于依赖来完成参数注释。本文将这两种标注方法统一起来。

谓词意义歧义消除

这里的目标是正确标记上下文中谓词的含义。步骤如下:

  1. 使用单词块标记器的标记化
  2. 谓词(或标记)用适当的标签进行标记
  3. 其余的单词用“O”或“X”标记。“o”代表任何单词的第一个标记,而“X”代表单词的剩余部分
  4. 将序列馈入 BERT 编码器以获得上下文化的表示
  5. 将谓词指示符嵌入连接到上下文化嵌入,以让模型知道哪些标记是谓词标记
  6. 将级联的嵌入和标签集馈送到 MLP 中用于最终预测

论点识别和分类

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

语义角色标注的 BERT 架构[1]

这里的目标是识别论元跨度或句法中心,并将它们映射到正确的语义角色标签。我们的输入是一个句子-谓词对,我们需要预测一个序列,其中标签集在生物标签方案和谓词参数之间重叠。模型如上图所示。

  1. 将句子格式输入到[CLS]句子[SEP]谓词[SEP]中,以便谓词可以通过注意机制与整个句子进行交互
  2. 将输入馈入 BERT 编码器
  3. 将输出与谓词指示器嵌入连接起来
  4. 将连接的输出送入一层 BiLSTM
  5. 每个标记隐藏状态与谓词隐藏状态连接在一起,并被送入 MLP 进行最终预测

结果

对于基于跨度的语义角色标注,评估数据集是 CoNLL 2005 和 2012。对于基于依赖的语义角色标记,评估数据集是 CoNLL 2009。

结果如下所示。在表 2 中,我们有谓词意义消歧的准确性结果。以前的 SOTA 是一个具有语言学特征的 BiLSTM,基于 BERT 的模型能够胜过使用 MLP 模型的模型。表 3 展示了排除谓词意义歧义的论证识别和分类的结果。在比较中,基于 BERT 的模型再次胜过所有模型。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

语义角色标注的 BERT 结果[1]

表 4 和表 5 显示了基于依赖性和基于跨度的语义角色标记的端到端结果。我们可以在表 4 中看到,伯特-LSTM-大型模型能够在 F1 分数方面胜过之前的 SOTA,并且击败没有任何语言特征的不同集成模型。对于基于跨度的语义角色标注,伯特-LSTM-大型模型优于包括集成模型在内的所有模型,但在 CoNLL 2012 数据集上,其 F1 分数略低于集成模型。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

BERT 与基于依赖和基于跨度的 SRL 的结果比较[1]

结论和未来工作

基于 BERT 的简单模型产生的结果为未来的研究提供了强有力的基线。潜在的未来工作可能涉及重新引入句法特征,以评估它是否进一步改善目前的结果。额外的工作可以是多任务学习,看看我们是否能从同时学习关系提取和语义角色标记中受益。

来源:

[1]石,p .和林,j . 2019 .用于关系抽取和语义角色标注的简单 BERT 模型。 arXiv 预印本 arXiv:1904.05255 。网址:【https://arxiv.org/pdf/1904.05255.pdf

【https://ryanong.co.uk】原载于 2020 年 4 月 17 日

#NLP365 的第 109 天:NLP 论文摘要—研究适当评分范围内的摘要评估指标

原文:https://towardsdatascience.com/day-109-of-nlp365-nlp-papers-summary-studying-summarization-evaluation-metrics-in-the-619f5acb1b27?source=collection_archive---------48-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 100 天里学到了什么。

今天的 NLP 论文是 研究适当评分范围 内的摘要评价度量。以下是研究论文的要点。

目标和贡献

评估指标的作用极其重要,因为它们在很大程度上指导着特定领域的研究进展。自动评估指标的目标是准确地评估生成的接近人类判断的摘要。该论文表明,在表现相似的评价指标和得分较高的评价指标之间存在强烈的分歧。这种分歧意味着我们不知道在评估我们生成的摘要时应该信任哪些指标。本文的贡献如下:

  1. 引入一种方法学来研究高分范围内的评价指标,发现指标之间存在低/负相关性。这项工作希望鼓励研究人员在适当的评分范围内收集更多的人类注释

没有很多手动标注的数据集,现有的数据集是在 2008 年的共享任务中创建的,因此与当前水平相比,标注的摘要是平均水平。下图对此进行了说明。如你所见,基本事实摘要的分数分布(蓝色)不同于现代摘要系统生成的摘要的分数分布(红色)。不能保证评估指标在红色分布(高分范围)中的行为与人工评估相似,本文的目的是评估高分范围中的评估指标,以评估它们的评估能力是否与人工评估一致和相关。该文件计算不同评分范围中的度量对之间的相关性,而不需要人工评估。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

不同分数级别摘要之间的分布[1]

实验设置—数据生成

本文研究了以下指标:

  1. 胭脂-2 (R-2) 。生成的摘要和基本事实之间的二元模型重叠
  2. 胭脂-L (R-L) 。生成的摘要和地面实况之间的最长公共子序列
  3. 胭脂-WE (R-WE) 。基于余弦相似度和单词嵌入的软匹配
  4. JS 发散(JS-2) 。使用 Jensen-Shannon 散度来衡量二元模型分布之间的差异
  5. S3 。最大化其与手动金字塔注释相关性的度量

作者使用遗传算法进行总结,以生成优化每个指标的总结。生成的数据集(表示为 W)由 160,523 个汇总组成,每个指标大约有 1763 个汇总。为了关注高分摘要,我们使用 LexRank 过滤掉表现不佳的摘要。在去除重复和过滤之后,这导致了每个主题大约 102 个摘要的最终数据集(T)。人类判断摘要被表示为。

相关分析

辛普森悖论

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

不同评分级别摘要上不同评估指标之间的成对相关性[1]

从上图中,我们可以看到,对于数据集 A 和 W,评估指标之间有很高的相关性,其中 R-2 和 JS-2 的相关性最强。这可以用他们都是基于二元模型的事实来解释。R-L 与其他指标的相关性最小。然而,在高分汇总(T)中,度量之间的相关性很低,有些甚至是负的。当我们检查比 LexRank 更好的摘要时,衡量改进的度量标准之间没有全球一致的意见。事实上,结果显示,这种分歧随着得分较高的总结而增加,如下图所示。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

汇总分数的度量标准之间的不一致程度[1]

这就是众所周知的辛普森悖论,根据你从哪个亚人群中得出不同的结论。结果告诉我们,我们当前的评估标准善于区分非常差的概要和非常好的概要,但是不能区分高分的概要。

跨指标衡量一致的改进

给定一组评估指标,为了跨指标测量一致的改进(指标彼此一致),我们计算以下 F/N 比:

  1. 选择一个摘要
  2. 在这些摘要中,哪一个比 s 好一个度量(N)
  3. 在所有指标(F)的总结中,哪些优于 s
  4. f 除以 N 得到比值

下图显示了对 5000 个随机样本汇总重复的这一过程。结果表明,随着总结平均分的增加,持续改进的比例(F/N 比)迅速下降。通过使用多个彼此不一致的评估度量,很难识别出具有高置信度的高分摘要。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

随着总结得分的增加,对持续改进的衡量[1]

结论和未来工作

高分汇总中评估指标之间的不一致意味着很难评估高分汇总,研究人员面临辛普森悖论的风险很高。该分析是在 TAC-2008 和 TAC-2009 数据集上进行的,因为它们是评估评估指标的标准数据集。未来的工作可以将这种分析扩展到其他数据集和/或其他 NLP 任务,如机器翻译。

来源:

[1] Peyrard,m .,2019 年 7 月。在适当的评分范围内研究总结评估指标。《计算语言学协会第 57 届年会会议录》(第 5093–5100 页)。网址:【https://www.aclweb.org/anthology/P19-1502.pdf

【https://ryanong.co.uk】原载于 2020 年 4 月 18 日

#NLP365 的第 110 天:NLP 论文摘要——方面提取的双重嵌入和基于 CNN 的序列标记

原文:https://towardsdatascience.com/day-110-of-nlp365-nlp-papers-summary-double-embeddings-and-cnn-based-sequence-labelling-for-b8a958f3bddd?source=collection_archive---------49-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 100 天里学到了什么。在本文的最后,你可以找到以前的论文摘要,按自然语言处理领域分类:)

今天的 NLP 论文是 双重嵌入和基于 CNN 的序列标注进行方面提取 。以下是研究论文的要点。

目标和贡献

提出了一种新的双嵌入卷积神经网络(DE-CNN)模型用于有监督的特征提取。这两种预训练嵌入是通用嵌入和特定领域嵌入。本文首次将双重嵌入和 CNN 模型用于特征提取,性能优于 SOTA 方法。

数据集

有两个来自 SemEval 2014 和 2016 的评估数据集:笔记本电脑领域和餐馆领域数据集。请参见下面的数据集统计摘要。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

笔记本电脑和餐厅数据集的汇总统计数据[1]

双重嵌入 CNN(去 CNN)

当构建方面提取的模型时(或者一般而言),除了实现 SOTA 结果之外,还有另外两个重要的方面:

  1. 自动化特征学习
  2. 由于推理速度和实用性,简化和轻量级模型总是首选

DE-CNN(上图)就是针对这两个方面提出来的。第一个方面使用通用嵌入和特定领域嵌入的双重嵌入机制来解决。嵌入的质量至关重要,因为它们通常是 NLP 管道中的第一步。大多数方面提取只包括通用的嵌入,如 Word2Vec 或 GloVe。这可能不合适,因为不管上下文如何,对某些方面单词的通用嵌入保持不变。这就是为什么在处理细粒度含义时,特定于领域的嵌入在方面提取中非常有用。第二个方面是通过下述事实解决的,即 DE-CNN 是用于序列标记的纯 CNN 模型。下面是体系结构图和每个组件的简短描述:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

DE-CNN 的模型架构[1]

  1. 输入单词序列经过两个独立的嵌入层,得到两个连续的表示:输入的一般嵌入和特定领域嵌入
  2. 将这两个嵌入连接在一起
  3. 将级联嵌入馈送到 4 层 CNN,并获得所有单词的表示。注意,这些 CNN 层没有 max-pooling 层,因为我们需要模型很好地表示输入序列中的每个单词
  4. 我们将 CNN 的输出输入到一个全连接的层,使用 softmax 函数计算输入序列中每个单词的标签概率分布。标签是{B,I,O}。b 和 I 代表体短语的开始词和非开始词,O 代表非体词

实验

模型比较

本文中的基准模型分为以下三组:

单一任务方法

  1. 条件随机场。使用手套嵌入
  2. HIS_RD 。SemEval 任务中的最佳系统
  3. NLANGP 。SemEval 任务中的最佳系统
  4. WBEmb 。使用具有 3 种不同嵌入的 CRF
  5. BiLSTM。
  6. 比尔斯特姆-CNN-CRF 。命名实体识别的 SOTA 模型

多任务方法

  1. RNCRF 依赖树神经网络和条件随机场的联合模型
  2. CMLA 。多层耦合注意网络
  3. 最小。由三个 LSTM 组成,其中两个 lstm 共同学习提取方面和观点,最后一个 LSTM 学习区分情感和非情感句子

去 CNN 的变体

  1. GloVe-CNN 。没有特定领域的嵌入
  2. 域-CNN 。没有通用嵌入
  3. MaxPool-DE-CNN 。包括最大池层
  4. DE-OOD-CNN 。用域外嵌入替换特定于域的嵌入
  5. 去 Google-CNN 。使用 GoogleNews 嵌入代替手套
  6. 去 CNN-CRF 。用 CRF 层替换 softmax 函数

结果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

DE-CNN 和基线模型的变化之间的 F1 分数比较[1]

上面的结果表显示,DE-CNN 的性能优于所有基准模型。结果表明,拥有一个独立的嵌入层,无论是通用的还是特定领域的,都不足以获得好的结果。不同领域的特定领域嵌入是不同的,笔记本电脑和餐馆数据集之间的结果差异向我们表明,DE-CNN 在具有许多特定领域方面的领域中将表现得更好。

结论和未来工作

通过错误分析,DE-CNN 似乎有两大错误:

  1. 标签不一致。同一个方面有时被标记,有时不被标记
  2. 看不见的方面。该模型未能提取彼此密切相关的一对方面。这可能是一个潜在的未来工作,包括连接词的语义

来源:

[1]徐,h,刘,b,舒,l 和余,p . s . 2018 .面向方面提取的双重嵌入和基于 cnn 的序列标记。 arXiv 预印本 arXiv:1805.04601 。网址:【https://www.aclweb.org/anthology/P18-2094.pdf

【https://ryanong.co.uk】原载于 2020 年 4 月 19 日

特征提取/基于特征的情感分析

总结

其他人

#NLP365 第 111 天:NLP 论文摘要——仇恨言论检测中的种族偏见风险

原文:https://towardsdatascience.com/day-111-of-nlp365-nlp-papers-summary-the-risk-of-racial-bias-in-hate-speech-detection-bff7f5f20ce5?source=collection_archive---------65-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。请随意查看我在过去 182 天里学到的东西这里。在本文的最后,你可以找到以前的论文摘要,按自然语言处理领域分类:)

今天的 NLP 论文是 仇恨言论检测中种族偏见的风险 。以下是研究论文的要点。

目标和贡献

调查种族偏见是如何被标注者引入到仇恨言论检测的数据集中,增加了对少数民族的伤害,并提出了一种方法来改善方言和种族,以减少标注中的种族偏见。本文的贡献如下:

  1. 在一些常见的仇恨言论数据集中,发现了非裔美国人英语(AAE)的表面市场与毒性评级之间的意外关联
  2. 我发现,在这些数据集上训练的模型传播了这些偏见,AAE 的推文被贴上攻击性标签的可能性增加了一倍
  3. 提出了一种方言和种族启动,通过突出推文中推断的方言或作者的种族背景来减少标注中的种族偏见

方法学

这篇论文用 AAE 方言来代表种族。这意味着每条推文将被归类为 AAE 推文或不是。选择 AAE 方言的理由是,它是美国黑人在社交媒体中常用的语言。使用链接到 AAE 英语或白人英语的词汇检测器来进行方言估计。给定一条推文,检测器将输出该推文是 AAE 语或白色对齐英语的概率。

有毒语言数据集中的偏见

该分析是在仇恨言论检测中常见的两个推特数据集上进行的:

  1. DWMW17 。2.5 万条推文带有 3 个攻击性标签:仇恨言论、攻击性或无
  2. FDCL18 。10 万条推文带有 4 个攻击性标签:仇恨、辱骂、垃圾邮件或无

数据偏差

该论文计算了每个攻击性标签和方言之间的相关性,以及它是 AAE 推文的概率。结果如下表所示,AAE 推文和不同的仇恨言论标签之间有很强的相关性。例如,AAE 推文和攻击性标签之间的相关性为 0.42,这意味着如果一条推文被分类为攻击性的,那么它很有可能是 AAE 推文。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

按类别细分的数据集[1]

模型中的偏差传播

这项调查分为两步:

  1. 找出 AAE 和白人对齐的英语推文之间的假阳性(FP)的差异
  2. 使用我们训练好的模型(在 DWMW17 和 FDCL18 数据集上)计算 Demographic16 和 Userlevelrace18 twitter 有毒语言数据集上的平均毒性率

结果如下图所示。左图是第一步的结果,中图和右图展示了第二步的结果。左边的表格告诉我们,尽管模型在两个数据集上都取得了很高的准确率,但 DWMW17 分类器预测大约 46%的非冒犯性 AAE 推文是冒犯性的。在 FDCL18 分类器中也发现了类似的发现。与此同时,两个分类器都倾向于在白色对齐的 tweets 的“无”类别上具有高 FP 率,这表明模型的潜在歧视。

这些结果得到了第二步结果的进一步支持,在人口统计学 16 数据集中,AAE 的推文被归类为攻击性或辱骂性的可能性增加了一倍。在 Userlevelrace18 数据集中也发现了类似的种族偏见。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

按种族和人口统计进行分类准确性和深入结果分析[1]

方言和种族启动效应

使用 Amazon Mechanical Turk 进行了一项实验,以评估方言信息对攻击性评级的影响。流程如下:

  1. 要求员工对一条推文是否冒犯他们进行分类(否/可能/是)
  2. 让员工对一条推文是否冒犯了任何人进行分类(否/可能/是)

然而,当工作人员对推文进行分类时,有三种情况:

  1. 控制
  2. 方言
  3. 人种

在方言启动中,工作人员被给予推文的方言(这可能是 AAE 推文),并被指示使用推文的方言作为作者种族的代表。在种族启动中,工作人员被指示根据推文作者推断的方言来考虑其最可能的种族背景。结果如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

AAE 推文的攻击性注释比例[1]

结果表明,在方言和种族条件下启动工作人员减少了 AAE 推文的攻击性分类数量。其他发现包括注释者更有可能将一条推文归类为冒犯他人,而不是冒犯自己,这显示了冒犯性语言的主观性。

结论和未来工作

结果表明,提出的方言和种族启动降低了 AAE 推文被贴上攻击性标签的可能性。这告诉我们,我们应该额外注意注释过程,以避免仇恨言论检测中的任何意外偏差。

来源:

[1] Sap,m .,Card,d .,Gabriel,s .,Choi,y .和 Smith,N.A .,2019,7 月。仇恨言论检测中的种族偏见风险。在计算语言学协会第 57 届年会的会议录(第 1668-1678 页)。网址:【https://homes.cs.washington.edu/~msap/pdfs/sap2019risk.pdf

【https://ryanong.co.uk】原载于 2020 年 4 月 20 日

特征提取/基于特征的情感分析

总结

其他人

#NLP365 的第 112 天:NLP 论文摘要——基于方面的情感分析的挑战数据集和有效模型

原文:https://towardsdatascience.com/day-112-of-nlp365-nlp-papers-summary-a-challenge-dataset-and-effective-models-for-aspect-based-35b7a5e245b5?source=collection_archive---------60-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 257 天里学到了什么。在本文的最后,你可以找到以前的论文摘要,按自然语言处理领域分类:)

今天的 NLP 论文是 基于方面的情感分析的挑战数据集和有效模型 。以下是研究论文的要点。

目标和贡献

引入了一种新的基于方面的情感分析(ABSA)数据集,称为多方面多情感(MAMS),其中每个句子包含至少两个不同的方面和两个不同的情感。提出的 MAMS 数据集可以解决现有 ABSA 数据集的共同问题,其中大多数句子包含不同方面的相同情感,从而将 ABSA 退化为句子级情感分析。论文还为数据集提出了一个简单的基线模型 CapsNet-BERT。

数据集构建

MAMS 的数据集构建分为三个步骤:

  1. 数据收集
  2. 数据注释
  3. 数据集分析

数据收集

对 Citysearch New York 数据集进行类似于 SemEval-2014 数据集的注记。删除任何超过 70 个单词的句子。

数据注释

创建了两个版本的 MAMS 数据集来处理基于方面的情感分析的两个领域:方面-术语情感分析(ATSA)和方面-类别情感分析(ACSA)。对于 ATSA,我们提取句子中的方面术语,并将它们与适当的情感进行映射,并删除具有相同情感的一个方面或多个方面的任何句子。数据集还包括每个特征项的开始和结束位置。对于 ACSA,我们预定义了八个方面类别:食物、服务、员工、价格、氛围、菜单、地点和其他。每个句子都被映射到一个方面类别,以及对该方面类别的适当情感。该数据集仅包括具有至少两个不同情感的独特体类别的句子。

数据集分析

ATSA 包含 13854 个句子,平均 2.62 个体项。ACSA 有 8879 个句子,平均 2.25 个体范畴。请注意,MAMS 中的所有句子都包含不同情绪的多个方面。现有的 ABSA 数据集(SemEval-2014 和 Twitter)包含的多方面多情感句子不超过 30%,有些甚至不到 1%。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

MAMS 数据集的描述性统计[1]

CapsNet-BERT

给定一个句子和一个方面术语或一个方面类别,我们希望该模型预测该句子关于方面的情感。提议的模型是 CapsNet-BERT,它由 4 层组成:

  1. 嵌入层
  2. 编码层
  3. 初级被膜层
  4. 类别胶囊层

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

CapsNet-BERT [1]

嵌入层

在这一层,我们将输入的句子和体转换成单词嵌入。对于方面项嵌入,我们将其计算为方面词嵌入的平均值。对于方面类别嵌入,我们随机初始化嵌入并在训练中学习。嵌入层的输出是方面感知的句子嵌入,其中我们将方面嵌入与句子中的每个单词嵌入连接起来。

编码层

我们采用体貌感知句子嵌入,并通过剩余连接将其输入到双向 GRU 中,以获得上下文化的表示。

初级被膜层

使用线性变换和挤压激活,我们使用上下文化表示得到主胶囊 P,使用来自嵌入层的方面嵌入得到方面胶囊。这一层还有两种机制:

  1. 方面感知标准化。这是为了应对句子长度的变化导致训练不稳定的事实,因此我们使用方面胶囊来归一化主胶囊权重,以选择重要的主胶囊。
  2. 胶囊引导路由。这利用了情感类别的先验知识来改进路由过程。在训练期间,情感矩阵被初始化,并被输入到 squash 激活中以获得情感胶囊。然后通过测量主胶囊和情感胶囊之间的相似性来计算路由权重。

类别胶囊层

使用初级胶囊、方面感知的标准化权重和胶囊引导的路由权重,我们可以计算最终类别胶囊。注意,对于 CapsNet-BERT,嵌入和编码层被替换为预训练的 BERT。

实验和结果

有三个评估数据集:ATSA、ACSA 和 SemEval-2014 餐厅评论。

模型比较

模型分为 4 类:

  1. 总部设在 LSTM
  2. 基于 CNN 的
  3. 基于注意力
  4. 消融研究,以比较 CapsNet 和 BERT 组合的有效性以及所提出的机制的效果

结果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

ATSA 和 ACSA 子任务的实验结果[1]

  • 如上所述,句子级情感分类器(TextCNN 和 LSTM)在 SemEval-2014 中表现有竞争力,但在 MAMS 数据集上表现不佳
  • SemEval-2014 上的 SOTA ABSA 方法在 MAMS 数据集上表现不佳或一般,表明 MAMS 数据集的高难度水平
  • 没有正确模拟单词序列的基于注意力的模型在 MAMS 中表现很差,因为它们丢失了句子的序列信息,因此无法将上下文与方面联系起来
  • CapsNet 在 6 个数据集的 4 个数据集上表现优于 BERT,显示了 CapsNet 的实力。CapsNet-BERT 的组合在所有数据集上都优于所有模型
  • CapsNet-DR 和 CapsNet-BERT-DR 用于测量胶囊导向路径的有效性。我们使用标准化的动态路由(DR ),这降低了模型的性能,性能不如我们的 CapsNet-BERT

来源:

[1]蒋,q,陈,l,徐,r,敖,x,杨,m,2019,11 月。基于方面的情感分析的挑战数据集和有效模型。在2019 自然语言处理经验方法会议和第九届自然语言处理国际联合会议(EMNLP-IJCNLP) (第 6281–6286 页)的会议录中。

原载于 2020 年 4 月 21 日【https://ryanong.co.uk】

特征提取/基于特征的情感分析

总结

其他人

#NLP365 的第 113 天:NLP 论文摘要——关于使用 Transformer 语言模型的提取和抽象神经文档摘要

原文:https://towardsdatascience.com/day-113-of-nlp365-nlp-papers-summary-on-extractive-and-abstractive-neural-document-87168b7e90bc?source=collection_archive---------51-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 257 天里学到了什么。在本文的最后,你可以找到以前的论文摘要,按自然语言处理领域分类:)

今天的 NLP 论文是 关于使用 Transformer 语言模型 的提取和抽象神经文档摘要。以下是研究论文的要点。

目标和贡献

提出了一种长文档的抽象摘要方法。这是通过提取和抽象概括的两步过程实现的。提取步骤的输出用于训练抽象转换器语言模型。这一提取步骤对最终总结结果非常重要。此外,生成的抽象概要比使用复制机制的先前工作更抽象,并且还产生更高的 ROUGE 分数。这些贡献是:

  1. 展示了 transformer 语言模型在总结长篇科学文章方面的有效性,优于 Seq2Seq 模型
  2. 与以前的工作相比,提出的模型能够产生更抽象的摘要,并且仍然获得更高的 ROUGE 分数

人类总结过程

  1. 阅读并理解源文件
  2. 选择源文档中最重要的部分
  3. 解释这些重要部分中的关键概念
  4. 生成连贯流畅的输出摘要

数据集

有四种不同的长文档汇总数据集:

  1. arXiv
  2. Pubmed
  3. 大专利
  4. 报刊阅览室

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

汇总数据集的描述性统计[1]

结构

提议的框架分为两个独立的部分:

  1. 摘录总结。一种分层文档模型,它复制或分类文档中的句子以构建摘录摘要
  2. 抽象概括。摘录摘要以及文档用于调节转换器语言模型

摘录摘要

提取步骤包括使用两种不同的分层文档模型进行句子提取:分层 seq2seq 句子指针和句子分类器。目标是过滤掉嘈杂的句子,提取重要的句子,更好地训练我们的 transformer 语言模型。分级 seq2seq 语句指针具有编码器-解码器架构:

  1. 编码器是单词和句子级别(分级)的双向 LSTM
  2. 解码器是自回归 LSTM

分级编码器结合了单词级和句子级的方向 LSTM。令牌级 biLSTM 对文档中的每个句子进行编码,以获得句子嵌入。句子级 biLSTM 对这些句子嵌入进行编码,以获得文档表示。解码器是一个自回归 LSTM,它将先前提取的句子的隐藏状态作为输入,并预测下一个要提取的句子。

类似于指针网络,句子分类器使用分级 LSTM 来编码文档并产生句子嵌入序列。最终的文档表示是这些句子嵌入的平均值。最终的文档表示被连接到每个嵌入的句子,并被馈送到具有 sigmoid 函数的神经网络中,以获得每个句子被包括在摘要中的概率。

抽象概括

我们使用“格式化的”数据从头开始训练一个单一的 transformer 语言模型。转换器语言模型是 GPT-2。通过自回归分解单词的联合分布来训练语言模型。这启发我们以特定的格式组织训练数据,我们将基础事实摘要放在模型通常用来生成摘要的信息之后。这样,我们在训练期间对文档和摘要的联合分布进行建模,并在推理时使用条件分布(给定文档)来生成摘要。因此,训练数据被格式化为 4 个不同的部分:

  1. 论文简介。假设简介应包含足够的内容以生成摘要
  2. 摘录摘要(摘自摘录摘要)
  3. 摘要(地面实况总结)
  4. 论文其余部分。用于训练语言模型以理解领域语言

对于一些数据集,引言部分将是整个文档,因为没有论文部分的其余部分。下图展示了整体框架。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

建议对研究论文进行抽象概括的训练过程[1]

结果和分析

表 2 和表 4 显示,我们的提取模型在 arXiv 和 PubMed 数据集上都优于所有以前的提取基线。在新闻编辑室数据集(表 6)上,我们的 TLM 远远超过了另一个抽象模型 Seq2Seq,也超过了指针生成器网络。然而,消费后模型主导了提取和混合结果。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

arXiv 和 PubMed 上的总结结果[1]

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

bigPatent 和新闻编辑室的总结结果[1]

性能最好的 TLM (TLM-I+E (G,M))在除了 ROUGE-L 之外的大多数 ROUGE 得分指标上都超过了以前的抽象结果。我们认为这可能是因为我们没有适当的复制机制,这使得在大型 n 元文法上获得精确匹配非常具有挑战性。下图支持了这一假设,因为话语感知模型的复制机制可以从源文档中复制多达 25 个字母。此外,下图还展示了我们的 TLM 通过生成的摘要和源文档之间低百分比的 n 元语法重叠生成了比以前的工作更抽象的摘要。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

对生成的摘要进行 n 元语法重叠分析[1]

我们还通过在训练和测试中包括基本事实提取的句子来测量我们的 TLM (TLM-I+E (G,G))的上限性能。最后,下图展示了 TLM 生成的摘要的定性结果。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

提议模型生成的摘要示例[1]

结论和未来工作

生成的摘要的流畅性和连贯性是很强的。然而,仍然存在抽象概要产生虚构/不准确内容的问题。在评估总结模型时,潜在的未来工作可以更加关注事实的正确性和一致性。

来源:

[1] Subramanian,s .,Li,r .,Pilault,j .和 Pal,c .,2019。基于 transformer 语言模型的抽取和抽象神经文档摘要。 arXiv 预印本 arXiv:1909.03186

原载于 2020 年 4 月 22 日【https://ryanong.co.uk】

特征提取/基于特征的情感分析

总结

其他人

#NLP365 的第 114 天:NLP 论文摘要——科学文献的摘要系统

原文:https://towardsdatascience.com/day-114-of-nlp365-nlp-papers-summary-a-summarization-system-for-scientific-documents-aebdc6e081f8?source=collection_archive---------40-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 257 天里学到了什么。在本文的最后,你可以找到以前的论文摘要,按自然语言处理领域分类:)

今天的 NLP 论文是 一个科学文献的摘要系统 。以下是研究论文的要点。

目标和贡献

用于总结计算机科学研究论文的 IBM Science Summariser。该系统可以识别不同的场景,例如科学文档的发现、探索和理解。提议的系统以两种方式总结研究论文:自由文本查询或通过选择分类值,如科学任务、数据集等。提议的系统吸收了 270,000 篇论文。

IBM Science Summariser 生成关注用户查询的摘要(以查询为中心的摘要)。它独立地总结了论文的各个部分,允许用户只关注相关的部分。这允许用户的查询和论文中的各种实体之间的交互。

下图展示了 IBM Science Summariser 的用户界面。用户提出他们的查询(或使用元数据字段上的过滤器)。然后,相关论文连同总结结果一起返回。每个部分都清楚地显示,实体精确地突出显示。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

IBM Science Summariser 的用户界面[1]

科学文章的总结——什么,为什么,如何?

科学论文的摘要系统由什么组成?

  1. 提取结构
  2. 从 PDF 中提取表格和图表
  3. 识别重要的实体
  4. 生成有用的摘要

为什么需要这样做?

以下是学术研究人员的痛点:

  1. 及时了解当前工作
  2. 准备研究项目/拨款申请
  3. 写论文时准备相关作品
  4. 检验一个想法的新颖性

第一个痛点往往发生在每天/每周,信息过载,大量时间花在阅读论文上。难点 2-4 很重要,但不太常见。

研究人员如何搜索和阅读研究论文?

  1. 研究人员通过关键词、实体(如任务名称、数据集名称或模型等)或引文进行搜索。例如,“班的最先进的结果”
  2. 阅读标题->摘要。然而,研究人员提到,摘要的信息量不足以确定相关性

系统概况

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

IBM 科学摘要的总体框架[1]

该系统(如上图)有两个组件:

  1. 摄取管道和搜索引擎(Elasticsearch)
  2. 总结

摄入管道

该系统包含来自 arXiv 和 ACL 的 270,000 篇论文。管道由 3 个主要步骤组成:

  1. 提取论文的正文、表格和图表
  2. 使用注释和实体丰富元数据
  3. 实体提取

该系统使用 Science-Parse 提取 PDF 文本、表格和图表。Science-Parse 支持将图形和表格提取到图像文件(及其标题文本)中。检测文本段落中的图表引用。我们还提取了任务、数据集和指标。输出以 JSON 格式返回。Elasticsearch 用于索引论文,我们索引其标题、摘要文本、章节文本和一些元数据。

该系统有三种类型的实体:任务、数据集和指标。实现了基于字典和基于学习的方法。基于字典的是使用 paperswithcode 网站手工创建的。为了涵盖所有不断发展的主题,我们采用了基于学习的方法来分析整篇论文,以提取三种类型的实体。这被视为一个文本蕴涵任务,其中论文内容是文本和目标任务-数据集-指标(TDM)三元组作为假设。这种方法迫使模型学习文本和三元组之间的相似性模式。总体而言,该系统已经索引了来自整个语料库的 872 个任务、345 个数据集和 62 个指标。

总结

摘要可以是通用的,也可以是针对查询的。各节之间的语言可能有很大的不同,因此各节被独立地总结,然后这些基于节的总结被组合在一起成为一个总结。摘要的输入是查询(可选)、实体和搜索引擎返回的相关论文。总结分为多个步骤:

  1. 查询处理
  2. 预处理
  3. 总结

如果给出查询 Q,它可以非常精确,也可以非常详细。如果它简短而精确,我们将使用查询扩展来扩展它,查询扩展将 Q 转换为 100 个单字项(通过分析从 Q 返回的顶级论文获得)。如果 Q 是 verbose,则使用定点加权模式对查询词进行排序。如果没有问题,论文的关键短语被用作查询的代理。

在预处理方面,我们执行句子标记化、单词标记化、小写和停用词的去除。每个句子然后被转换成单字母和双字母 BoW 表示。

在摘要方面,我们使用了 SOTA 无监督的、提取的、查询聚焦的摘要算法。该算法接受论文部分、查询 Q、期望的摘要长度(10 个句子)和一组链接到查询的实体。生成的摘要是通过非监督优化方案从论文部分选择的句子的子集。这句话的选择是提出了一个多标准优化问题,其中几个总结质量目标的考虑。这些汇总质量是:

  1. 查询显著度。摘要是否包含许多与查询相关的术语(余弦相似度)?
  2. 实体覆盖。摘要中包含的实体与我们的实体集匹配吗?
  3. 文字报道。总结涵盖了论文部分的多少内容?
  4. 句子长度。我们希望摘要偏向于更长的句子,这样会提供更多的信息。

人类评估

评估设置

我们接触了 12 位作者,请他们评价他们合著的两篇论文的摘要。这样我们总共有 24 篇论文。对于每篇论文,我们生成两种类型的摘要:基于章节的摘要和与章节无关的摘要(将论文内容视为平面文本)。这是为了让我们评估部门总结的好处。这使我们总共有 48 个摘要需要评估。

作者需要对每个摘要执行 3 项任务:

  1. 对于每个句子,确定该句子是否应该作为摘要的一部分(精度的二进制度量)
  2. 总结中涵盖论文各部分的程度(回忆的衡量标准,1-5 分,3 分为好)
  3. 评估摘要的整体质量(1-5 分,3 分为好)

结果

结果如下图所示。在任务 2 中,68%的论文以章节为基础的总结得分较高。基于章节的摘要的平均分数是 3.32,这突出了基于章节的摘要的质量。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

总结结果——不可知部分与基于部分的对比[1]

结论和未来工作

作为未来的工作,IBM Science Summariser 计划增加对更多实体的支持,并吸收更多的论文。正在进行更多的定性研究,以评估其使用情况和摘要质量,包括摘要的自动评价。

来源:

[1] Erera,s .,shmu Eli-朔伊尔,m .,Feigenblat,g .,Nakash,O.P .,Boni,o .,Roitman,h .,Cohen,d .,Weiner,b .,Mass,y .,Rivlin,o .和 Lev,g .,2019 .科学文献摘要系统。 arXiv 预印本 arXiv:1908.11152

原载于 2020 年 4 月 23 日 https://ryanong.co.uk

特征提取/基于特征的情感分析

总结

其他人

#NLP365 第 115 天:NLP 论文摘要——sci Bert:科学文本的预训练语言模型

原文:https://towardsdatascience.com/day-115-of-nlp365-nlp-papers-summary-scibert-a-pretrained-language-model-for-scientific-text-185785598e33?source=collection_archive---------53-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 257 天里学到了什么。在本文的最后,你可以找到以前的论文摘要,按自然语言处理领域分类:)

今天的 NLP 论文是 SCIBERT:科学文本的预训练语言模型 。以下是研究论文的要点。

目标和贡献

发布了 SCIBERT,这是一个在多个科学语料库上训练的预训练语言模型,用于执行不同的下游科学 NLP 任务。这些任务包括序列标记、句子分类、依存句法分析等等。在这些下游任务中,SCIBERT 已经取得了新的 SOTA 结果。我们还对微调与特定任务架构的性能、冻结嵌入的效果以及域内词汇的效果进行了广泛的实验。

方法学

西伯特和伯特有什么不同?

  1. 科学词汇
  2. 科学团体训练

SCIBERT 基于 BERT 架构。一切都和 BERT 一样,除了它是在科学实验体上预先训练的。BERT 使用 WordPiece 来标记输入文本,并为模型构建词汇表(BASEVOCAB)。词汇表包含最常用的单词/子单词单元。我们使用句子片段库在科学语料库上构建新的单词片段词汇表(SCIVOCAB)。BASEVOCAB 和 SCIVOCAB 之间有 42%的重叠,表明需要新的词汇来处理科学文本。

SCIBERT 接受了语义学者 114 万篇论文的训练。论文的全文被使用,包括摘要。这些论文的平均长度为 154 个句子,句子使用 ScispaCy 拆分。

实验装置

下游的 NLP 任务是什么?

  1. 命名实体识别(NER)
  2. 微微萃取
  3. 文本分类(CLS)
  4. 关系抽取(REL)
  5. 依存句法分析(DEP)

PICO 提取是一项序列标记任务,它在描述临床试验论文中的参与者、干预、比较和结果的文本中提取跨度。

模型比较

  1. 两个基于 BERT 的模型。带 BASEVOCAB 有壳和无壳版本的普通 BERT
  2. 四个赛伯特模型。有外壳和无外壳,有 BASEVOCAB 和 SCIVOCAB 两种版本

有套管模型用于 NER,无套管模型用于所有其他任务。

微调伯特

我们遵循相同的方法为各种下游任务微调 BERT。对于 CLS 和 REL,我们将[CLS]令牌的最终 BERT 矢量馈入线性层。对于序列标记(NER 和皮科),我们将每个令牌的最终 BERT 向量送入线性层。对于依赖性分析,我们使用具有依赖性标签和弧嵌入的模型以及 BERT 向量上的双分配矩阵注意力。

冻结 BERT 嵌入

我们探索在简单的特定任务模型上使用 BERT 作为预训练的上下文化单词嵌入,以观察它在这些 NLP 任务上的表现。对于文本分类,它是一个具有多层感知器的 2 层 BiLSTM。对于序列标记,它是一个 2 层 BiLSTM 和一个条件随机场(CRF)。对于依赖关系解析,它与上面的两层 BiLSTM 模型相同。

结果

结果分为三个部分:生物医学领域,计算机科学领域和多个领域。高水平的结果展示了 SCIBERT 在科学文本上优于 BERT-Base,并在许多下游任务上实现了新 SOTA。

对于生物医学领域,SCIBERT 在所有七个生物医学数据集上都超过了 BERT,在四个数据集上取得了 SOTA 结果,在其他三个数据集上低于 SOTA。在下图中,我们对 SCIBERT 和 BIOBERT(一个更大的模型)进行了直接比较,发现 SCIBERT 在两个数据集上的表现优于 BIOBERT,在另外两个数据集上的表现也有竞争力,如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

SCIBERT 与 BIOBERT 的结果[1]

对于计算机科学和多个领域,SCIBERT 胜过 BERT,并在所有五个数据集上都取得了 SOTA 结果。上面讨论的所有结果如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

基于 BERT 的模型在不同 NLP 任务上的测试性能[1]

结果还展示了在冻结嵌入之上微调 BERT 而非特定任务架构的强大效果。微调的 BERT 始终优于冻结嵌入模型,并且优于大多数具有冻结嵌入的 SCIBERT,除了两个数据集。我们还评估了领域内词汇的重要性,并观察到使用 SCIVOCAB 时 F1 增加了 0.60。改进的幅度表明,尽管领域内词汇是有用的,但它不是关键驱动因素。关键驱动因素是对科学文本的预处理过程。

结论和未来工作

除了在一些下游任务上取得 SOTA 成果外,SCIBERT 在生物医学任务上的得分也与 BIOBERT 不相上下。在未来的工作中,我们将发布更大版本的 SCIBERT(匹配 BERT-Large ),并对来自不同领域的论文进行实验,目标是训练一个跨多个领域工作的单一总结模型。

来源:

[1] Beltagy,I .,Lo,k .和 Cohan,a .,2019 年。SciBERT:科学文本的预训练语言模型。 arXiv 预印本 arXiv:1903.10676

原载于 2020 年 4 月 24 日【https://ryanong.co.uk】

特征提取/基于特征的情感分析

总结

其他人

#NLP365 的第 116 天:NLP 论文摘要——科学论文的数据驱动摘要

原文:https://towardsdatascience.com/day-116-of-nlp365-nlp-papers-summary-data-driven-summarization-of-scientific-articles-3fba016c733b?source=collection_archive---------51-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 257 天里学到了什么。在本文的最后,你可以找到以前的论文摘要,按自然语言处理领域分类:)

今天的 NLP 论文是 数据驱动的科学文章摘要 。以下是研究论文的要点。

目标和贡献

从科学文章中创建了两个多句子摘要数据集:标题-摘要对(title-gen)和摘要-正文对(abstract-gen ),并对其应用了广泛的提取和抽象模型。title-gen 数据集包含 500 万篇生物医学论文,而 abstract-gen 数据集包含 90 万篇论文。分析表明,科学论文适合数据驱动的总结。

什么是数据驱动汇总?

这是一种说法,即总结模型的近期 SOTA 结果在很大程度上依赖于大量训练数据。

数据集

两个评估数据集是 title-gen 和 abstract-gen。Title-gen 使用 MEDLINE 构建,abstract-gen 使用 PubMed 进行。title-gen 将摘要与论文标题配对,而 abstract-gen 数据集将全文(没有表格和图表)与摘要摘要配对。文本处理管道如下:

  1. 符号化和小写
  2. 移除 URL
  3. 数字被替换为# token
  4. 仅包括摘要长度为 150–370 个标记、标题长度为 6–25 个标记和正文长度为 700–10000 个标记的对

我们还计算了每个数据对的重叠分数和重复分数。重叠分数测量摘要(标题或摘要)和输入文本(摘要或全文)之间的重叠标记。重复分数测量文本中每个句子与文本其余部分的平均重叠。这是为了测量存在于论文正文中的重复内容,其中相同的概念被一遍又一遍地重复。下面是两个数据集的统计摘要。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

数据集[1]的统计数据

实验设置和结果

模型比较

  1. 提取总结方法。这里有两个无监督基线:TFIDF-emb 和 rwmd-rank。TFIDF-emb 通过计算其组成单词嵌入的加权和来创建句子表示。Rwmd-rank 根据句子与文档中所有其他句子的相似程度对句子进行排序。Rwmd 代表宽松单词移动器的距离,它是用于计算相似性的公式,随后使用 LexRank 对句子进行排序。
  2. 抽象总结方法。这里有三条基线:lstm、fconv 和 c2c。Lstm 是常见的 LSTM 编码器-解码器模型,但是具有单词级的注意机制。Fconv 是一个子字级的 CNN 编码器-解码器,使用字节对编码(BPE)将字分成更小的单元。字符级模型擅长处理罕见/不在词汇表中(OOV)的单词。C2c 是一个字符级的编码器-解码器模型。它使用 CNN 从输入中构建字符表示,并将其送入 LSTM 编码器-解码器模型。

结果

评价指标为胭脂评分、流星评分、重叠评分和重复评分。尽管 ROUGE scores 有弱点,但它们在 summarisaiton 中很常见。METEOR 评分用于机器翻译,Overlap 评分可以衡量模型在多大程度上直接从输入文本复制文本作为摘要。重复分数可以衡量摘要中包含重复短语的频率,这是抽象摘要中的一个常见问题。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

标题生成和抽象生成数据集的结果[1]

对于 title-gen 结果(表 2),rwmd-rank 是最好的提取模型,然而,c2c(抽象模型)远远超过所有提取模型,包括 oracle。c2c 和 fconv 都取得了相似的结果,具有相似的高重叠分数。对于抽象基因结果(表 3),铅-10 是一个强大的基线,只有提取模型设法超过它。所有提取模型获得相似的胭脂分数和相似的重复分数。抽象模型在 ROUGE 评分上表现不佳,但在 METEOR 评分上优于所有模型,因此很难得出结论。

定性评估是常见的,并且在生成的摘要上进行。见下面标题-性别定性评估的例子。观察结果如下:

  1. 标题提取模型选择的句子位置变化很大,摘要中的第一句最重要
  2. 许多抽象生成的标题往往是高质量的,显示了它们选择重要信息的能力
  3. Lstm 倾向于生成更多的新单词,而 c2c 和 fconv 倾向于从输入文本中复制更多的单词
  4. 生成的标题偶尔会出现用词不当的错误,过于笼统,无法抓住论文的要点。这可能会导致事实上的不一致
  5. 对于 abstract-gen,看来引言和结论部分与生成摘要最相关。然而,重要的内容分散在各个部分,有时读者更关注方法和结果
  6. fconv 抽象模型的输出质量很差,缺少一致性和内容流。摘要中还存在句子或短语重复的常见问题

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

句子选择分析[1]

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

不同模型的定性总结结果[1]

结论和未来工作

结果喜忧参半,模型在标题生成方面表现良好,但在抽象生成方面表现不佳。这可以用理解长输入和输出序列的高难度来解释。未来的工作是混合提取-抽象的端到端方法。

来源:

[1]n . I . niko lov,m . Pfeiffer 和 r . h . Hahn loser,2018 年。科学论文的数据驱动摘要。 arXiv 预印本 arXiv:1804.08875

原载于 2020 年 4 月 25 日【https://ryanong.co.uk】

特征提取/基于特征的情感分析

总结

其他人

#NLP365 的第 117 天:NLP 论文摘要-摘要文本摘要:低资源挑战

原文:https://towardsdatascience.com/day-117-of-nlp365-nlp-papers-summary-abstract-text-summarization-a-low-resource-challenge-61ae6cdf32f?source=collection_archive---------73-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 257 天里学到了什么。在本文的最后,你可以找到以前的论文摘要,按自然语言处理领域分类:)

今天的 NLP 论文是 摘要文本摘要:低资源挑战 。以下是研究论文的要点。

目标和贡献

提出了一种迭代数据扩充技术,使用真实的德语汇总数据生成合成数据。随后,他们使用 Transformer 为德语建立了一个抽象概括模型。本文解决了其他非英语语言的 NLP 任务中存在的低资源挑战。当与没有数据扩充而训练的模型相比时,数据扩充提高了抽象概括模型的性能。

方法学

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

数据集的统计数据[1]

转换器模型是使用 OpenNMT-py 实现的。上图展示了我们数据集汇总统计数据。我们使用了两个德国维基数据集,即 SwissText 2019 和 Common Crawl。SwissText 2019 用作真实数据,而 Common Crawl 用作合成数据。真实数据 SwissText 2019 (100K 数据)分为 train、val、test 比例为 90:5:5。对于通用爬网,以下是生成合成数据的以下步骤:

  1. 使用 SwissText 数据集构建最常用德语词汇
  2. 基于词汇和阈值的通用爬行数据集中的句子选择。例如,一个句子有 20 个单词,阈值是 10%,只有当它在我们的词汇表中至少有 20 个单词时,才会被选择
  3. 从步骤 2 中随机选择句子
  4. 100K 个选择的句子被用作摘要,我们需要建立一个模型来生成相应的输入文本。因此,我们使用摘要作为输入,目标是文本。这是反向训练的模型,如下所示。最终的总数据集为 190K

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

使用逆向系统生成合成数据[1]

最后,为了提高合成数据的质量,我们使用了如下所示的迭代方法。我们将首先使用真实的和合成的数据来训练我们的变压器模型。然后,我们将使用经过训练的变压器模型来重新生成我们的合成数据,以训练我们的最终变压器模型。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

合成数据再生的最终过程[1]

实验设置和结果

有如下三种实验设置:

  1. S1 。仅使用真实数据(90K)来训练我们的变压器模型。这是基线
  2. S2 。使用真实和合成数据(190K)训练我们的变压器模型
  3. S3 。使用真实的和再生的合成数据来训练我们的变压器模型

结果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

开发和测试集的结果[1]

尽管努力提高 S3 合成数据的质量,S2 模型表现最好。如下图所示,ROUGE score 的开发在早期迭代中达到了顶峰,展示了通过更快的训练过程可以达到良好的结果。与 S1 相比,S2 模型在单词和短语生成以及摘要长度方面往往有更多的差异。S2 的平均摘要长度是 41.42,而 S1 是 39.81。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

ROUGE-1 学习曲线[1]

结论和未来工作

潜在的未来工作可能涉及对合成摘要数据的进一步调查,并利用迁移学习对具有低资源数据的非英语语言进行文本摘要。

来源:

[1]帕里达,s .和莫特利切克,p . 2019,11 月。低资源挑战。在2019 自然语言处理经验方法会议暨第九届国际自然语言处理联合会议(EMNLP-IJCNLP) (第 5996–6000 页)。

原载于 2020 年 4 月 26 日 https://ryanong.co.uk**的

特征提取/基于特征的情感分析

总结

其他人

#NLP365 的第 118 天:NLP 论文摘要——通过结合全球和本地上下文对长文档进行摘要

原文:https://towardsdatascience.com/day-118-of-nlp365-nlp-papers-summary-extractive-summarization-of-long-documents-by-combining-aea118a5eb3f?source=collection_archive---------64-----------------------

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

阅读和理解研究论文就像拼凑一个未解之谜。汉斯-彼得·高斯特在 Unsplash 上拍摄的照片。

内线艾 NLP365

NLP 论文摘要是我总结 NLP 研究论文要点的系列文章

项目#NLP365 (+1)是我在 2020 年每天记录我的 NLP 学习旅程的地方。在这里,你可以随意查看我在过去的 262 天里学到了什么。在本文的最后,你可以找到以前的论文摘要,按自然语言处理领域分类:)

今天的 NLP 论文是 结合全局和局部上下文 对长文档的抽取摘要。以下是研究论文的要点。

目标和贡献

提出了一种新颖的摘要模型,它结合了全球和本地上下文来总结一个长文档。在给定的长文档中,它通常包含各种主题。我们相信使用这些主题来指导总结会有所改进。我们利用全局上下文(整个文档)和局部上下文(部分)来确定一个句子的信息是否足以包含在摘要中。这些贡献如下:

  1. 首次使用 LSTM 减号进行文本摘要
  2. 该模型在 ArXiv 和 PubMed 数据集上取得了 SOTA 结果,并显示出随着文档长度的增加,性能有所提高
  3. 发现模型的性能可以主要归因于局部情境的建模

方法学

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

整体模型架构[1]

该架构由三个组件组成:

  1. 句子编码器
  2. 文件编码器
  3. 句子分类器

句子编码器

要计算句子嵌入,我们只需使用平均单词嵌入的简单方法。在计算句子嵌入时,这已经被证明和 RNN 和 CNN 一样有效。BERT 句子嵌入表现不佳。

文件编码器

文档编码器是一个 biGRU,这意味着每个句子有两个隐藏状态,一个向前的(黄色)和一个向后的隐藏状态(蓝色)。该文档编码器创建三个输出:

  1. 句子表征
  2. 文档表示
  3. 主题片段表示

对于每个句子,句子表示将简单地是向前和向后隐藏状态的连接。对于文档表示,它将是向前和向后隐藏状态的最终状态的串联(红色)。对于主题片段表示,我们使用 LSTM-负。LSTM 减用于学习文本跨度嵌入。它最初是为依存句法分析而提出的,在依存句法分析中,一个句子被分成三个部分(前缀、中缀和后缀), LSTM-负号用于为每个部分创建嵌入。它的工作原理如下:

  1. 对整个句子应用 LSTM,以获得句子中每个单词的隐藏状态
  2. 要为每个段(从单词 I 到单词 j)创建嵌入,请计算隐藏状态 I 和隐藏状态 j 之间的差异。这背后的想法是,给定自然 LSTM,每个隐藏状态包含来自先前隐藏状态加上当前单词的信息,这允许模型使用段外部和内部的信息来创建段嵌入
  3. 最终的主题表示是向前和向后片段嵌入的连接(上图中 C 的细节)

句子分类器

有了句子和文档编码器,我们现在有了句子表示、文档表示和主题段表示。这三种表示被输入到多层感知器(MLP)中,以预测该句子是否应该包括在摘要中。已经探索了结合这三种表示的两种方法:

  1. 串联。简单地将所有三个表示连接在一起,形成最终的表示
  2. 细心语境。这是我们计算每个句子的加权上下文向量的地方,允许模型学习在文档和主题段表示上关注多少权重。这个加权的上下文向量与相应的句子表示连接,并被馈送到具有 sigmoid 激活函数的 MLP 中,以确定该句子是否应该被包括在摘要中

实验设置和结果

有两个评估数据集:arXiv 和 PubMed。我们将使用 ROUGE 和 METEOR 作为自动评估指标,将我们的模型与之前的抽象和抽取模型进行比较。

模型比较

用于比较的模型分为不同的类别:

  1. 传统提取模式。SumBasic、LSA 和 LexRank
  2. 神经抽象模型。注意序列、指针生成器网络和话语意识
  3. 神经提取模型。程&拉帕塔和 SummaRuNNer
  4. 基线、销售线索和预测。基线仅是 MLP 的 feed 句子表示(没有本地或全局上下文),lead 是前 k 个单词,oracle 使用地面实况提取标签来测量模型性能的上限

结果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

arXiv 和 Pubmed 数据集上模型的总体结果[1]

ROUGE-1 和 ROUGE-2 用于测量摘要的信息量,而 ROUGE-1 用于测量摘要的流畅性。表 2 展示了 ArXiv 数据集上的结果,表 3 展示了 PubMed 数据集上的结果。正如预期的那样,在 ROUGE-1 和 ROUGE-2 中,神经提取模型远远超过了传统提取模型和神经提取模型。ROUGE-L 上的结果是混合的,这可能是因为我们的模型是在 ROUGE-1 地面真实提取标签上训练的。话语感知抽象模型优于 ROUGE-L 中的所有提取模型,这可能是因为它们是直接在抽象摘要上训练的。低铅结果表明,科学论文中不存在像新闻文章中那样的句子位置偏差,尽管科学论文中可能存在其他位置偏差,这可能是未来的潜在工作。

我们的模型在所有评估指标上都优于所有其他提取模型。我们的模型相对于基线模型的性能提升证明了包含本地和全球背景的好处。我们方法的目标是有效地处理长文档的摘要。下图显示了随着文档长度的增加,我们的模型与当前的 SOTA 模型相比有了很好的性能提升。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Pubmed 和 arXiv 数据集上增加文档长度的模型结果[1]

消融研究

消融研究旨在研究将全球和本地背景纳入我们的总结方法的效果,并评估哪一个对整体绩效贡献更大。从下面的结果来看,似乎本地主题上下文极大地提高了模型的整体性能。相比之下,纳入全球背景似乎没有太大好处。这样做的原因留待今后的工作。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

消融研究的结果[1]

结论和未来工作

未来潜在的工作将是研究处理冗余的方法。我们还可以将特征工程(例如句子位置、显著性)等传统方法集成到我们的神经模型中。此外,我们可以研究一种更好的表示文档的结构,如话语树。对总结的评价一直是总结中的一个大问题。ROUGE scores 并不像评估指标那样可靠,因此在未来引入人工评估将是一件好事。最后,提取和抽象总结方法的整合值得在未来探索。

[1]肖,w .和卡雷尼尼,g . 2019 .结合全局和局部上下文的长文档文摘。 arXiv 预印本 arXiv:1909.08089

原载于 2020 年 4 月 27 日 https://ryanong.co.uk

特征提取/基于特征的情感分析

总结

其他人

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值