问题标签 [summarization]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
3385 浏览

text - 关于“自动文本摘要器(基于语言)”

我将“自动文本摘要(语言方法)”作为我最后一年的项目。我已经收集了足够多的研究论文并浏览了它们。我仍然不太清楚“如何去做”的事情。基本上我找到了“AUTOMATIC TEXT SummariZER (statistical based)”,发现它比我的项目要容易得多。我的项目指南告诉我不要选择这个(基于统计的)并选择基于语言的。

任何曾经从事过甚至听说过此类项目的人都会知道,总结任何文档仅意味着对每个句子进行评分(通过某种涉及某些特定算法的方法),然后选择得分超过阈值分数的句子。现在这个项目最困难的部分是选择合适的算法进行评分,然后再实施。

我有中等的编程技能,并且想用 JAVA 编写代码(因为在那里我会得到很多 API,从而减少开销)。现在我想知道对于我的项目,我应该使用什么方法和算法。还有如何实现它们。

0 投票
4 回答
10272 浏览

mysql - MySQL ON DUPLICATE KEY UPDATE 与唯一键中的可为空列

我们的 MySQL 网络分析数据库包含一个汇总表,该汇总表在导入新活动时全天更新。我们使用 ON DUPLICATE KEY UPDATE 以便汇总覆盖之前的计算,但由于汇总表的 UNIQUE KEY 中的列之一是可选的 FK,并且包含 NULL 值,因此遇到了困难。

这些 NULL 旨在表示“不存在,并且所有此类情况都是等效的”。当然,MySQL 通常将 NULL 视为“未知,并且所有这些情况都不等价”。

基本结构如下:

一个“活动”表,其中包含每个会话的条目,每个条目都属于一个活动,以及一些条目的可选过滤器和事务 ID。

一个“摘要”表,其中包含活动表中会话总数的每日汇总,以及包含事务 ID 的那些会话的总数。这些摘要是分开的,每个活动和(可选)过滤器的组合都有一个。这是一个使用 MyISAM 的非事务表。

实际的汇总查询如下所示,计算会话和事务的数量,然后按活动和(可选)过滤器分组。

一切都很好,除了 filter_id 为 NULL 的情况的摘要。在这些情况下,ON DUPLICATE KEY UPDATE 子句与现有行不匹配,并且每次都会写入新行。这是由于“NULL!= NULL”这一事实。然而,在比较唯一键时,我们需要的是“NULL = NULL”。

我正在寻找解决方法的想法或对我们迄今为止提出的问题的反馈。到目前为止,我们已经想到的解决方法如下。

  1. 在运行汇总之前删除所有包含 NULL 键值的汇总条目。(这就是我们现在正在做的事情)如果在汇总过程中执行查询,这会产生负面影响,即返回缺少数据的结果。

  2. 将 DEFAULT NULL 列更改为 DEFAULT 0,这允许 UNIQUE KEY 一致地匹配。这具有使针对汇总表的查询开发过于复杂的负面影响。它迫使我们使用大量的“CASE filter_id = 0 THEN NULL ELSE filter_id END”,并且由于所有其他表的 filter_id 都具有实际的 NULL,因此连接起来很尴尬。

  3. 创建一个返回“CASE filter_id = 0 THEN NULL ELSE filter_id END”的视图,并直接使用此视图而不是表。汇总表包含几十万行,我被告知视图性能很差。

  4. 允许创建重复条目,并在汇总完成后删除旧条目。与提前删除它们有类似的问题。

  5. 添加一个包含 0 表示 NULL 的代理列,并在 UNIQUE KEY 中使用该代理项(实际上,如果所有列都不是 NULL,我们可以使用 PRIMARY KEY)。
    这个解决方案似乎是合理的,只是上面的例子只是一个例子;实际的数据库包含六个汇总表,其中一个在 UNIQUE KEY 中包含四个可为空的列。有些人担心开销太大。

您是否有更好的解决方法、表结构、更新过程或 MySQL 最佳实践可以提供帮助?

编辑:澄清“空的含义”

包含 NULL 列的汇总行中的数据仅在汇总报告中作为单个“包罗万象”行的意义上被认为属于一起,汇总了该数据点不存在或未知的那些项目。因此,在汇总表本身的上下文中,含义是“那些不知道值的条目的总和”。另一方面,在关系表中,这些确实是 NULL 结果。

将它们放入汇总表上的唯一键的唯一原因是在重新计算汇总报告时允许自动更新(通过 ON DUPLICATE KEY UPDATE)。

也许更好的描述方式是通过具体示例,其中一个汇总表按地理区域按受访者提供的公司地址的邮政编码前缀分组结果。并非所有受访者都提供了营业地址,因此事务和地址表之间的关系是非常正确的 NULL。在此数据的汇总表中,为每个邮政编码前缀生成一行,其中包含该区域内的数据汇总。将生成一个附加行来显示不知道邮政编码前缀的数据的摘要。

将其余数据表更改为具有显式“THERE_IS_NO_ZIP_CODE”0 值,并在 ZipCodePrefix 表中放置一个表示该值的特殊记录是不正确的——这种关系确实是 NULL。

0 投票
1 回答
102 浏览

django - 计算具有三个或更多项目的记录

我想将记录分为两类:

  1. 具有三个或更多记录的项目
  2. 少于三个项目的项目

我该怎么做?我正在考虑使用 annotate()。

0 投票
6 回答
725 浏览

database - 不同分辨率的数据

我有两个表,记录从外部源源不断地插入到这些表中。假设这些表保存了用户交互的统计信息。当用户单击按钮时,该单击的详细信息(用户、单击时间等)将写入其中一个表。当用户将鼠标悬停在该按钮上时,会将带有详细信息的记录添加到其他表中。

如果有很多用户不断地与系统交互,就会产生大量的数据,并且这些表会大大增加。

当我想查看数据时,我想以每小时或每天的分辨率查看它。

有没有一种方法或最佳实践可以在所需的分辨率中以增量方式(随着数据的收集)不断总结数据?

或者有没有更好的方法来解决这类问题?

PS。到目前为止,我发现像 Talend 这样的 ETL 工具可以让生活变得轻松。

更新:我目前正在使用 MySQL,但我想知道无论数据库、环境等如何的最佳实践。

0 投票
2 回答
1219 浏览

sql - 在 SQL Server 2008 中分解汇总表

我从外部来源收到了汇总格式的数据。我需要一种方法来分解它以适应我正在使用的系统。

为了说明,假设我收到的数据如下所示:

我希望这是一种像这样的分类格式:

谢谢卡尔
_

0 投票
1 回答
1108 浏览

mysql - 如何在mysql上选择部分文本?

我有一列保存LONGTEXT在mysql上。此文本保存富文本。我目前正在阅读所有文本,然后使用 javascript 修复它以获取第一个100字符,而不是在中间拆分单词。

然而,这种方式似乎并不是最好的方式。我想直接使用查询选择摘要,但我也想小心不要包含 html 标记的字符。

下面的函数似乎可以很好地剥离 html。

0 投票
3 回答
2203 浏览

r - 计算数据框中值的唯一组合和汇总值

我想在我的数据框中使用var1和的独特组合var2

如前所述,unique(foo)结果如下:

基于独特的组合,我如何获得:

  • n,值的出现次数var1
  • svar,每个var1值的var2值的总和。

输出可能如下所示:

0 投票
1 回答
147 浏览

nlp - winword中摘要功能的背景

Winword 中有一个自动摘要工具。有人知道背景,即使用了哪些算法,或者我在哪里可以找到有关此功能的其他背景信息?

谢谢

0 投票
1 回答
233 浏览

sql-server - 使用sql汇总数据

我有记录条目表,其中包含相关的以下列:eventype, userid. 我可以使用以下查询简单地汇总数据以获得每个用户事件类型的总数

但是,无论用户如何,我还需要为每个单独的事件类型计算总计。我该怎么做?

干杯

0 投票
3 回答
4734 浏览

r - tapply() 函数依赖于 R 中的多个列

R中,我有一个包含 Location、sample_year 和 count 的表。所以,

我想要一个汇总表,它检查“Location”和“sample_year”列,并根据这个独特的组合而不是单个列对“count”求和。所以,最终结果应该是:

我可以将列和数据合并到一个新列中以创建唯一的 Location-sample_year 但这不是一个干净的解决方案,尤其是如果我需要在某个时候将其扩展到三列。必须有更好的方法。