C_Meng PSNA

Never wait for the storm to pass, just dance in the rain.

0%

Pre

时空知识库 这一概念使用较少,更多的是 时空数据库 ,本文认为时空知识库是在时空数据库的基础上的知识扩展。下文叙述中不再严格区分两个概念,主要以知识数据库为主。

时空数据库概念

时空数据库是一种特殊类型的数据库,它能够存储和管理与时间和空间相关的数据。随着科技的发展和数据的爆炸性增长,时空数据库的重要性也日益凸显。它不仅可以用于地理信息系统(GIS)、气象预测、交通管理等领域,还可以应用于智能城市、物联网、人工智能等新兴技术的发展。

时空数据库的概念源于对现实世界的模拟和分析需求。传统的数据库主要关注数据的存储和查询,而时空数据库则更加注重数据的时序和空间特征。它能够有效地处理和分析大量的时空数据,提供更加准确和全面的信息。

时空数据库特征

时空数据库的特点之一是支持时间和空间的索引。 时间索引可以帮助用户快速定位到某个时间点或时间段的数据,而空间索引则可以帮助用户快速定位到某个地理位置的数据。这种索引的设计和优化是时空数据库的关键技术之一。

时空数据库还具有多维数据模型。 传统的数据库主要采用关系模型,而时空数据库则采用多维数据模型。它可以将数据按照时间、空间和属性等多个维度进行组织和管理,提供更加灵活和高效的数据操作。

时空数据库还具有时空数据类型。 传统的数据库主要支持数值、字符和日期等基本数据类型,而时空数据库则支持点、线、面、体等时空数据类型。这些数据类型可以更好地表示和处理与时间和空间相关的数据。

时空数据库还具有时空数据操作。 传统的数据库主要支持数据的插入、更新和删除等基本操作,而时空数据库则支持时空数据的查询、分析和可视化等高级操作。这些操作可以帮助用户更好地理解和利用时空数据。

时空数据库还具有时空数据分析。 传统的数据库主要关注数据的存储和查询,而时空数据库则更加注重数据的分析和挖掘。它可以通过时空数据的聚类、分类、预测和优化等方法,提取出有价值的信息和知识。

关于时空数据库构建

相比于传统数据库的主要升级

  1. 实体对象模型升级。将面向存储和制图的点、线、面要素模型升级为面向分析和应用的实体对象模型,并借助语义化技术, 实现地物空间信息、属性信息、时态信息的实体化存储 ,同时提供不同粒度地理实体动态组合、聚合、专题信息实时挂接等功能,从而实现复合实体转换重组以及多源数据有机融合,更好为时空分析与业务应用提供数据支撑。

  2. 三维立体模型升级。将二维平面模型升级为三维立体模型,以二维地理实体为基础,通过三维时空动态匹配与自动挂接,自动提取传统三维地形数据(DEM、DSM)的高程信息,并有机融合基于激光扫描、倾斜摄影、三维重建等构建的真三维模型数据, 实现二维模型的三维化拓展 ,以更符合现实世界认知习惯的方式为用户提供全空间场景化时空信息产品。

  3. 动态时序模型升级。将静态版本模型升级为动态时序模型,以地理实体为载体,以基元版本数据为基础, 依照时序记录几何、属性、相互关系等信息的增加、删除或修改变化及相应时态信息 ,并以增量形式存储于基元版本数据中,实现对地理现象的产生、演变、消亡等动态时序变化信息的全周期存储、管理与表达。

构建过程

以下是 ref2 中的构建系统逻辑。

从这张图可以看出,首先数据流通过适当的采样程序被分割(离散化)成一系列数据块(句子),如上所述。这些数据块的大小(数据的数量M),以及采样周期Ts,在本文中没有讨论,因为它们是依赖于问题参数的,我们想要解释的是主要思想。

一般来说,数据块的大小M对应于代表监控环境中一个典型情况或机器典型工作条件(模式)的合理数量的数据。它可以在不同的物理系统中变化。例如,在从图形信息(图像序列)中获取知识时,一个数据块实际上就是一张图片中包含的所有RGB像素信息。

至于数据块之间的采样周期Ts,它们不必相等,因为下一个数据块可能在更远(不同)的时间瞬间可用(测量)。换句话说,所提出的进化知识库系统更像是一个在线系统,或者更准确地说,是一个准实时系统,从某种意义上说,新的数据块在它们可用的地方被处理(而不一定是在固定的采样时间内)。这种假设从计算的角度来看更宽松,也更接近现实世界中学习和知识构建的过程。

每个获得的单个数据块都将进一步处理,以提取最显著(重要)的知识项,这些将被称为近期知识项(近期KI)。这是通过一个特殊的新引入的序列聚类算法完成的,该算法将在下一节III中详细解释。这个算法的目标是从数据块中提取数据组(聚类)的中心(原型),以递减的顺序,从最大的聚类开始,继续到最小的聚类。这个序列过程的结束是由预先给定的阈值决定的,如图2.1所示。

一旦通过序列聚类提取出近期知识项(KI),它们就进一步用作图2.1所示的进化知识库(KB)更新算法的输入。在这里,根据知识库中已经存在(旧的)知识项,可以区分出三种不同的更新模式。它们被编号为0、1和2,并在下一个图2.2中展示。

关于时空数据库操作

初上文提到时空数据的“增删改查”基础操作,以及“查询分析可视化”等高级操作外,还应存在以下操作:

  • 记忆(learn):增加新的时空数据,并与更新现有数据的时空关联关系。
  • 遗忘(forget):删除原有时空数据,并删除相关关联关系以及其他数据表中的相关知识痕迹,如删除某一误判风险事件,同时应删除事件处置、原因溯源等一切相关时空数据。
  • 学习(relearn):更新已有时空数据,并更新时空相关数据,如更新某一风险判断政策或条件,应同时更新所有风险判断及处置相关数据。

以下是 ref2 中的关于三种操作对应的情况:

模式0表示知识库中现有的(旧的)知识项(Knowledge Item,KI)尚未被序列聚类中的任何近期KI“访问”。这意味着所有近期KI都位于这个现有KI的预定 resolution 参数之外。 resolution 参数是一个用来在知识库(KB)中将“接近的知识项”与“远离的知识项”分开的距离,如图2.2所示。从这个例子中可以看到,知识库中有两个模式为0的KI。这些被视为将在某种程度上逐渐淡出(遗忘步骤)的旧知识项。

模式1表示知识库中完全新的知识项(新KI)。这意味着近期KI与知识库中的所有现有KI都相距甚远。在这种情况下,这个新知识应该接受一个全新的(首次)学习步骤。在图2.2的例子中,有两种情况是模式1。

模式2表示近期KI位于知识库中现有KI的附近,即在由 resolution 参数定义的圆形区域内。这样的情况表明,知识库中的旧现有KI将升级为需要以某种方式重新学习刷新的知识项,同时考虑到近期KI所携带的知识量。在图2.2的例子中,有两种情况是模式2。

总结

时空数据库相比传统数据库的升级体现在以下方面:

数据结构方面

在进行数据ER图设计时,时间、空间特征应被单独构建为数据实体。

数据操作方面

简单的增删改查应升级成时空相关的“记忆”、“遗忘”、“学习”、“分析”等。

数据维护方面

应在动态性方面大幅强化,包括时空关系的自动挖掘,知识更新、失效的自动化判断,insight(如风险预警)的自动生成等。

整体构建过程

依然与传统数据库类似:

构建时空数据库是一个复杂的过程,需要考虑数据的收集、处理、存储和管理系统等多个方面。以下是构建时空数据库的具体步骤:

  1. 需求分析

    • 确定数据库的目标和用途。
    • 了解用户需求和期望的功能。
  2. 数据收集

    • 收集时空数据,可能包括地理信息、时间序列数据、遥感数据等。
    • 确定数据来源和收集方法。
  3. 数据预处理

    • 清洗数据,去除错误和不一致的数据。
    • 标准化数据格式,确保数据的一致性。
  4. 数据建模

    • 确定数据的空间和时间维度,并进行对应实体设计。
    • 设计时空数据模型与ER图,包括实体、关系和属性的定义。
  5. 选择技术平台(可视情况提前):

    • 选择适合时空数据存储和查询的数据库管理系统(如PostGIS、MongoDB等)。
  6. 数据集成

    • 将清洗和标准化后的数据导入数据库。
    • 进行数据整合,确保数据逻辑一致性。
  7. 建立索引和优化

    • 为提高查询效率,建立空间和时间索引。
    • 优化数据库性能,调整参数以适应大规模数据操作。
  8. 开发数据库管理系统

    • 开发或配置数据库管理系统,实现数据的增删改查等操作。
    • 实现数据可视化和分析工具。
  9. 数据更新策略

    • 制定数据更新和维护的策略。
    • 确定数据更新频率和方法。
  10. 安全性和隐私保护

    • 实施数据安全措施,保护数据不被未授权访问。
    • 确保符合数据保护法规。
  11. 测试和验证

    • 对数据库进行测试,确保功能正确性和性能满足要求。
    • 验证数据的准确性和完整性。
  12. 用户培训和文档编写

    • 为用户提供培训,确保他们能够有效使用数据库。
    • 编写用户手册和系统文档。
  13. 部署和上线

    • 将数据库部署到生产环境。
    • 正式上线提供服务。
  14. 监控和维护

    • 监控数据库性能和健康状况。
    • 定期维护和升级系统。

构建时空数据库是一个迭代和持续的过程,需要不断地根据用户反馈和技术发展进行优化和升级。

References

  1. https://wenku.baidu.com/view/2bd7de9f9a8fcc22bcd126fff705cc1754275f3b.html?_wkts_=1720526169067&bdQuery=%E6%97%B6%E7%A9%BA%E7%9F%A5%E8%AF%86%E5%BA%93
  2. https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5584860

  1. 将主启动“APPNAME”程序更名为“APPNAME.real”,文件位置一般为应用包内的Contents/MacOS
  2. 在同级目录下新建一个脚本文件,命名为“APPNAME”,执行chmod a+x APPNAME,这样应用启动时就会执行该脚本文件
  3. 修改脚本内容,比如:
1
2
3
4
5
6
#!/bin/bash

### (其他在APP启动时需要执行的内容,比如删除文件:)
# rm -rf "/Users/$(whoami)/Library/Application Support/APPNAME"

"`dirname "$0"`"/APPNAME.real $@

  1. K-means聚类:K-means是一种广泛使用的无监督学习算法,用于将数据点划分为具有相似特征的集群。在时空数据中,它可以用于发现模式和趋势。例如,通过将具有相似交通模式的日子聚类在一起,我们可以找出影响交通流量和交通拥堵的关键因素。
  2. 关联规则挖掘:关联规则挖掘是用于发现数据集中变量之间的有趣关系的一种方法。在时空数据中,它可以用于发现时间和空间上的关联规则。例如,我们可能发现某种商品在某个特定时间段的销售量与另一商品在同一时间段的销售量之间存在强烈的关联。
  3. 主成分分析(PCA):PCA是一种用于降低数据维度的机器学习算法。在时空数据中,PCA可以帮助我们减少数据的复杂性,并找出影响结果的主要因素。例如,在气候变化数据中,PCA可以帮助我们找出影响气候变化的主要因素,从而更好地预测和管理气候变化。
  4. 决策树和随机森林:决策树和随机森林是监督学习算法,用于根据输入变量预测一个或多个输出变量。在时空数据中,它们可以用于预测时间和空间上的事件。例如,我们可能使用这些算法来预测交通事故的发生,
  5. 神经网络:神经网络是一种模拟人脑工作机制的非线性算法,具有强大的模式识别和预测能力。在时空数据中,神经网络可以用于识别和预测时空模式。例如,我们可以训练神经网络来识别交通流量的时空模式,从而更准确地预测交通拥堵。

以上所述的算法各有其优点和局限性。K-means聚类对于发现集群很有用,但可能无法处理复杂的时空关系;关联规则挖掘可以发现有趣的关系,但可能无法处理复杂的时空维度;主成分分析可以帮助我们降低数据的复杂性,但可能无法处理复杂的时空关系;决策树和随机森林可以用于预测事件,但可能无法处理复杂的时空关系;神经网络可以处理复杂的时空关系,但可能需要对数据进行大量的预处理和后处理。

在实际应用中,我们通常需要结合具体的问题和应用场景,选择合适的算法进行处理。同时,也需要根据实际的数据质量和数据量,对算法进行适当的调整和优化。此外,由于大数据的处理需要大量的计算资源和存储资源,因此也需要考虑算法的效率和可扩展性。

references:
https://aiqicha.baidu.com/qifuknowledge/detail?id=10075551025

stage1:预训练。为了拥有广泛的视觉-语言知识,我们的模型在弱标注和细粒度数据集的混合上进行训练。我们在第一阶段给予弱标注数据集较高的采样比例,以获得更多样化的知识。

stage2:多任务训练。为了提高MiniGPT-v2在每项任务上的表现,我们在这个阶段只专注于使用细粒度数据集来训练我们的模型。我们排除了像GRIT-20M和LAION这样的弱监督数据集,并根据每项任务的频率更新数据采样比例。这种策略使我们的模型能够优先考虑高质量的对齐图像-文本数据,以在各种任务上实现卓越的性能。

stage3:多模态指令调整。随后,我们专注于使用更多的多模态指令数据集来调整我们的模型,并增强其作为聊天机器人的对话能力。我们继续使用第二阶段的数据集,并添加指令数据集,包括LLaVA(刘等人,2023b)、Flickr30k数据集(Plummer等人,2015)、我们构建的混合多任务数据集,以及语言数据集,Unnatural Instruction(Honovich等人,2022)。我们为第二阶段的细粒度数据集给出较低的数据采样比例,而为新的指令数据集给出较高的数据采样比例。

Ref:
https://arxiv.org/pdf/2310.09478v2

BLEU

BLEU (Bilingual Evaluation Understudy)是一种基于n-gram精度的评估指标,它通过计算机器翻译结果和参考翻译之间的n-gram匹配度来评估机器翻译的质量。

BLEU(Bilingual Evaluation Understudy)是一种评估机器翻译质量的方法,特别是它如何接近人类翻译的程度。BLEU分数是基于机器翻译输出与一组参考翻译之间的重叠程度来计算的。以下是BLEU分数的计算步骤:

  1. 选择N-gram

    • 确定你想要使用的N-gram大小。常见的选择是1-gram(单个词),2-gram(两个连续词),3-gram,以此类推,直到n-gram。
  2. 计算N-gram精确度

    • 对于每个N-gram大小,计算机器翻译输出中的N-gram与参考翻译中N-gram的精确度。精确度是指机器翻译输出中正确的N-gram数量除以机器翻译输出中N-gram的总数。
  3. 应用Brevity Penalty(BP)

    • 如果机器翻译输出比任何参考翻译都短,那么它可能会得到较低的BLEU分数,因为短的输出可能更容易与参考翻译匹配。BP用于惩罚这种短输出:
      $$
      \text{BP} =
      \begin{cases}
      1 & \text{if } c > \text{ref} \
      \exp(1 - \frac{\text{ref}}{c}) & \text{if } c \leq \text{ref}
      \end{cases}
      $$
    • 其中,$c$是机器翻译输出中的词数,$ref$是最短参考翻译中的词数。
  4. 计算加权和

    • 对于每个N-gram大小,计算其精确度与权重的乘积。权重通常按N-gram大小递减,例如,对于1-gram到4-gram,权重可能是(0.25, 0.25, 0.25, 0.25)。
  5. 计算几何平均值

    • 对所有N-gram的加权精确度进行几何平均,以得到最终的BLEU分数:
      $$
      \text{BLEU} = BP \times \exp\left(\sum_{n=1}^{N} \frac{w_n \cdot p_n}{\sum_{n=1}^{N} w_n}\right)
      $$
    • 其中,$(w_n)$是第n个N-gram大小的权重,$p_n$是第n个N-gram大小的精确度。
  6. 输出结果

    • 最终的BLEU分数范围从0到1,分数越高表示机器翻译的质量越接近人类翻译。

BLEU分数是一个快速且广泛接受的评估机器翻译质量的方法,但它也有局限性,例如它不能很好地评估语义的准确性和流畅性。因此,BLEU分数通常与其他评估方法一起使用,以获得更全面的翻译质量评估。

ROUGE

ROUGE(Recall-Oriented Understudy for Gisting Evaluation)是一种主要用于评估自动文摘和机器翻译的评估指标,它通过计算机器生成的摘要或翻译结果和参考摘要或翻译之间的n-gram重叠度来评估生成结果的质量。ROUGE指标主要关注评估生成的摘要或翻译与一组参考摘要或翻译之间的重叠程度。以下是几种常见的ROUGE指标的计算方法:

ROUGE-N (N-gram Recall)

  1. 计算N-gram

    • 对于每个参考摘要和生成的摘要,分别计算N-gram(连续的N个词)。
  2. 确定匹配的N-gram

    • 找出生成的摘要中的N-gram与参考摘要中的N-gram相匹配的数量。
  3. 计算召回率

    • 召回率(Recall)是生成的摘要中匹配的N-gram数量与参考摘要中N-gram总数的比例:
      $$
      \text{ROUGE-N Recall} = \frac{\text{匹配的N-gram数量}}{\text{参考摘要中的N-gram总数}}
      $$

ROUGE-L (Longest Common Subsequence)

  1. 计算最长公共子序列(LCS)

    • 确定生成的摘要和参考摘要之间的最长公共子序列。
  2. 计算长度比

    • 将LCS的长度与参考摘要和生成的摘要的长度进行比较。
  3. 计算F-measure

    • F-measure是精确度和召回率的调和平均数,用于评估ROUGE-L:
      $$
      \text{ROUGE-L F-measure} = \frac{(1 + \beta^2) \cdot \text{ROUGE-L Recall} \cdot \text{ROUGE-L Precision}}{\beta^2 \cdot \text{ROUGE-L Recall} + \text{ROUGE-L Precision}}
      $$
    • 其中,$\beta$是一个权重因子,通常取1,使得精确度和召回率的权重相等。

ROUGE-S (Skip-Bigram Co-occurrence)

比如:”他每天都会去公园散步。”
在这个例子中,如果我们考虑bigram(两个连续词),句子中的”每天”和”散步”是连续的,而在生成句子中它们不是连续的。但是,如果我们考虑skip-bigram,我们可以看到”散步”和”公园”在两个句子中都是成对出现的,尽管它们在原文中不相邻。这表明生成的句子在语义上与参考句子保持了一定的连贯性。

  1. 计算skip-bigram

    • Skip-bigram是指在文本中不连续出现的两个词,但它们在另一个文本中是连续的。
  2. 确定匹配的skip-bigram

    • 找出生成的摘要中的skip-bigram与参考摘要中的skip-bigram相匹配的数量。
  3. 计算召回率

    • 召回率是生成的摘要中匹配的skip-bigram数量与参考摘要中skip-bigram总数的比例。

METEOR

METEOR (Metric for Evaluation of Translation with Explicit ORdering)是一种综合考虑精度、召回率和语法流畅度的评估指标,它通过比较机器翻译结果和参考翻译在单词级别的匹配度来评估机器翻译的质量。METEOR考虑了词汇的匹配、句子结构、词形变化以及同义词。METEOR与BLEU分数不同,它不仅关注词的重叠,还关注词的顺序和意义。以下是METEOR分数的基本计算步骤:

  1. 语义相似度计算:使用语义相似度算法比较摘要中的每个单词与原文中相应单词的语义相似度。常用的语义相似度算法包括基于词向量、知识图谱和深度学习的方法。
  2. 文本对齐度计算:评估摘要中的句子与原文中的句子之间的文本对齐度。常用的文本对齐度算法包括基于编辑距离、余弦相似度和句法结构的方法。
  3. 平均精度计算:根据语义相似度和文本对齐度的结果,计算每个单词的平均精度。平均精度的计算方式是将语义相似度和文本对齐度的结果相加,并除以总的相关单词数。
  4. 最终得分计算:将平均精度扩展到整个摘要,计算METEOR得分。可以通过将每个单词的平均精度相加,并除以摘要中的总单词数,得到最终的METEOR得分。

METEOR分数的计算公式大致如下:

该算法首先计算 unigram 情况下的准确率P和召回率R(计算方式与BLEU、ROUGE类似),得到调和均值F值:

Meteor的特别之处在于,它不希望生成很“碎”的译文:比如参考译文是“A B C D”,模型给出的译文是“B A D C”,虽然每个unigram都对应上了,但是会受到很严重的惩罚。惩罚因子的计算方式为:

在评价句子流畅性的时候,用了 chunk 的概念(候选译文和参考译文能够对齐的、空间排列上连续的单词形成一个 chunk,这个对齐算法是一个有点复杂的启发式 beam search),chunk 的数目越少意味着每个 chunk 的平均长度越长,也就是说候选译文和参考译文的语序越一致。 unigrams_matched表示匹配上的unigram个数。

最后,METEOR计算为对应最佳候选译文和参考译文之间的准确率和召回率的调和平均:

用于机器翻译评测时,通常取 $\alpha$ =3,$\gamma$=0.5,$\theta$=3。

Refs:
https://blog.csdn.net/m0_62554628/article/details/136645353
https://developer.baidu.com/article/details/3121202

什么是关联规则

关联规则是一种条件语句,它们帮助揭示数据库、关系数据库或其他信息库中看似无关数据之间的关系。关联规则用于发现经常一起使用的对象之间的关系。关联规则的应用包括购物篮数据分析、分类、交叉营销、聚类、目录设计和领先损失分析等。

关联规则使用两个基本标准:支持度(support)和置信度(confidence)。它通过分析数据中的频繁使用的”如果/那么”模式来识别关系和生成规则。通常,关联规则需要同时满足用户指定的最小支持度和用户指定的最小置信度。

计算方法如下:

AIS Algorithm

AIS算法由Agrawal、Imielinski和Swami首次提出的用于挖掘关联规则的算法。它专注于提高数据库的质量以及处理决策支持查询所需的必要功能。计算流程如下:

  1. 首先,候选项集是通过扫描数据库获得。
  2. 对于每个事务,确定此事务中包含上一步的大项集是哪一项。
  3. 通过将这些大型项集与此事务中的其他项一起扩展,生成新的候选项集。

案例如下:

首先生成候选集{1}{2}{3}{5},支持度为2,3,3,3。下一步生产两个候选项集{1,3}{1,4}….{1,5},对应的支持度为2,1,…,1.这里当支持度大于等于2时记录为大项集{1,3}{2,3}{2,5}{3,5},下一步生产三个组合的项集,{1,3,4}{2,3,5}{1,3,5},此时发现{2,3,5}是最终的最大项集。

SETM Algorithm

在SETM算法中,候选项目集在扫描数据库时即时生成,但在扫描结束时进行计数。然后,以与AIS算法相同的方式生成新的候选项目集,但生成交易的事务标识符TID与候选项目集一起以顺序结构保存。它将候选生成过程与计数过程分开。在扫描结束时,通过聚合顺序结构来确定候选项目集的支持计数。SETM算法具有与AIS算法相同的缺点。另一个缺点是,对于每个候选项目集,其条目数量与其支持值一样多。计算流程如下:

  1. 候选项集将在数据库被扫描时动态生成,但在传递结束时进行计数。
  2. 新的候选项集的生成方式与AIS算法相同,但是生成事务的TID与候选项集保存在顺序结构中。如下图所示。
  3. 在传递结束时,通过排序和聚合(sorting and aggregating)这个顺序结构来确定候选项集的支持数。

首先生成候选集{1}{2}{3}{5},支持度分别为2,3,3,3。下一步生产两个候选项集{1,3}{1,4}….{2,5},对应的TID2进行排序获得c2.进行聚合操作获得c3,发现有{1,3,4}{2,3,5}{1,3,5},{2,3,5}为最大项集。

Apriori Algorithm

Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。其核心是基于两阶段频集思想的递推算法。

基本思想:首先找出所有的频集,这些项集出现的频繁性至少和预定义的最小支持度一样;然后由频集产生强关联规则,这些规则必须满足最小支持度和最小可信度。

AprioriTid Algorithm

AprioriTid算法对Apriori算法做了调整,它的特点是在第一次遍历数据库D之后,就不再使用数据库来计算支持度,而是用集合Ck来完成。

基本思想:跟Apriori算法的步骤基本相同,只是在第一次通过之后,数据库不用于计算候选项集;生成另一个集合C’,其中每个成员具有每个事务的TID以及该事务中存在的大项集,这个集用于计算每个候选项集。

FP-Growth Algorithm

又称FP-tree算法,是在不使用候选代的情况下查找频繁项集的另一种方法,从而提高了性能。其核心是使用名为频繁模式树(FP-tree)的特殊数据结构,保留了项集关联信息。

FP树是一种存储数据的树结构,如下图所示,每一路分支表示数据集的一个项集,数字表示该元素在某分支中出现的次数。

算法过程如下:

  1. 构建FP树
    • 遍历数据集获得每个元素项的出现次数,去掉不满足最小支持度的元素项
    • 读入每个项集并将其添加到一条已存在的路径中,若该路径不存在,则创建一条新路径(每条路径是一个无序集合)
  2. 从FP树中挖掘频繁项集
    • 从FP树中获得条件模式基
    • 利用条件模式基构建相应元素的条件FP树,迭代直到树包含一个元素项为止

未来发展与挑战

关联规则挖掘在数据挖掘领域具有广泛的应用前景,但同时也面临着一些挑战。未来的发展方向和挑战包括:

  1. 大数据处理:随着数据规模的增加,传统的关联规则挖掘算法在处理能力和效率方面面临挑战。未来的研究需要关注大数据处理技术,以提高算法的处理能力和效率。
  2. 多源数据集成:多源数据集成是关联规则挖掘中的一大挑战,因为不同数据源之间可能存在格式、质量、语义等差异。未来的研究需要关注多源数据集成技术,以提高关联规则挖掘的准确性和可靠性。
  3. 异构数据处理:异构数据是指不同类型的数据(如文本、图像、音频等)。未来的研究需要关注异构数据处理技术,以挖掘这些数据中的关联规则。
  4. 私密和安全:随着数据保护和隐私问题的重视,关联规则挖掘需要关注数据的私密和安全。未来的研究需要关注数据掩码、数据脱敏等技术,以保护数据的安全和隐私。
  5. 智能推荐系统:关联规则挖掘可以应用于智能推荐系统,为用户提供个性化的推荐。未来的研究需要关注智能推荐系统的发展,以提高推荐系统的准确性和用户体验。

方法比较

ref:
https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf&doi=d4058d9f3f66c53ddea776c974fbd740afd994b4
https://www.jiqizhixin.com/graph/technologies/d44f694a-2363-4fd1-93d8-a77983bff15c
https://www.163.com/dy/article/FD5U7JV60528OOR6.html
https://zhuanlan.zhihu.com/p/62919869
https://iopscience.iop.org/article/10.1088/1757-899X/1099/1/012032/pdf

关键元素结构化思考(BEST:Basic Elements Structured Thinking)常见以下方法:

用人渠道3B模型

  • Buy 外部招聘
  • Build 内部培养
  • Borrow 人力外包

360评估角度

  • 自己评
  • 上司评
  • 下属评
  • 同事评

4种读书方法

  • 不求甚解
  • 观其大略
  • 熟读精思
  • 主题阅读

4种市场竞争结构

  • 完全竞争
  • 垄断竞争
  • 寡头垄断
  • 完全垄断

4种组织文化

  • 部落文化
  • 创新文化
  • 市场文化
  • 等级文化

解决冲突4种办法

  • 竞争
  • 包容
  • 妥协
  • 合作

4种教养方式

  • 权威型
  • 专断型
  • 放纵型
  • 忽视型

6大写作冲突类型

  • 人对人
  • 人对技术
  • 人对自然
  • 人对超自然
  • 人对社会
  • 人对自我

6种领导风格

  • 指令型
  • 愿景型
  • 亲和型
  • 民主型
  • 领跑型
  • 辅导型

企业业务结构

  • 核心业务
  • 成长业务
  • 新型业务

职场关系摸型

  • 职业共同体
  • 利益共同体
  • 事业共同体
  • 命运共同体

复盘4步法

  • 回顾目标
  • 评估结果
  • 分析原因
  • 总结经验

马斯洛需求理论

  • 自我实现
  • 尊重需求
  • 社交归属需求
  • 安全需求
  • 生理需求

项目管理生命周期

  • 启动
  • 规划
  • 执行
  • 监控
  • 关闭

6sigma改进流程

  • 定义
  • 测量
  • 分析
  • 改进
  • 控制

教育目标

  • 记忆
  • 理解
  • 应用
  • 分析
  • 评价
  • 创造

时间管理矩阵

  • 重要
  • 紧急

阿里员工评价矩阵

波士顿矩阵

三环理论

杨三角

子绝四

  • 勿意
  • 勿必
  • 勿固
  • 勿我

营销4P

  • Product 产品
  • Price 价格
  • Place 渠道
  • Promotion 促销

PDCA

  • Plan 计划
  • Do 执行
  • Check 检查
  • Act 行动

人才管理

设计四原则

  • 对齐
  • 对比
  • 亲密
  • 重复

购买行为AIDA法则

  • Attention 注意
  • Interest 兴趣
  • Desire 欲望
  • Action 行动

企业文化洋葱模型

目标管理SMART法则

  • Specific 具体
  • Measurable 可测量
  • Attainable 可实现
  • Relevant 相关
  • Time-bound 时限

演讲5元素

  • 金句
  • 案例
  • 数据
  • 比方
  • 幽默

波特5力

  • 现有竞争者竞争的能力
  • 潜在竞争者进入的能力
  • 替代品的替代能力
  • 供应商议价能力
  • 买家议价能力

高效能人士的7个习惯

社群运营三近一反

  • 地域相近
  • 年龄相近
  • 兴趣相近
  • 性别相反

林彪打仗四快一慢

  • 向敌进军要快
  • 攻击准备要快
  • 扩张战果要快
  • 追击要快
  • 发起总攻要慢

麦肯锡信任公式

$$
信任=\frac{自制能力 \times 可靠性 \times 亲近程度}{自我利益取向}
$$

稻盛和夫人生成功公式

$$
人生成功=思维方式 \times 能力 \times 热情
$$

团队业绩公式

$$
销售业绩=线索数量 \times 漏斗各级转化率 \times 平均客单价
$$

SCP模型

  • Specific 具体细节
  • Compare 比较
  • emPower 赋能于人

3V/4V模型

  • Visual 视觉 55%
  • Volcal 听觉 38%
  • Verbal 语言 7%
  • (Value 价值)

55387模型

见3V

WOOP模型

  • Wish 愿望
  • Outcome 产出
  • Obstacle 障碍
  • Plan 计划

OKR模型

  • Objective
  • Key result

5W2H模型

  • Why 为什么做
  • What 做什么
  • Who 谁来做
  • When 何时做
  • Where 何地做
  • How 怎么做
  • How much 多少钱

SWOT模型

  • S (strengths)是优势
  • W (weaknesses)是劣势
  • O (opportunities)是机会
  • T (threats)是威胁

PEST/PESTEL模型

  • 政治(Political)
  • 经济(Economic)
  • 社会(Social)
  • 技术(Technological)
  • 环境因素(Environmental)
  • 法律因素(Legal)

明确问题

  1. motivation (case)
  2. 任务的具体输入输出
  3. 服务对象
  4. 服务场景

对应intro,要有故事来支撑

总结现有解决方案

  1. 传统经典解决方案,有哪几大类
  2. 最新/最火/最好的方案是哪一类、那几个

对应related works,快速入门可以看一些review文章

总结最近三年方案的工作内容

  1. benchmark、数据集
  2. 挑战有哪些
  3. contribution都是怎么写的
  4. 创新集中在哪些方面

对应related works,增加理解,需要对近几年的文章精读

确定研究框架

  1. 挑战
  2. 算法与创新点
  3. contribution设计
  4. 实验设计

关键在于算法与创新点设计,需要对前一部分2、3、4有深入理解,结合实际数据或场景需求

整体框架

下图展示了用于下载和处理常见网络爬虫数据快照的整个pipline。
首先下载所有WET文件并分组保存为二进制文件,然后计算所有段落的哈希。
接着独立处理WET文件的每个文档:使用二进制文件对段落进行语言识别并计算语言模型困惑度从而删除重复数据。
最后按语言和困惑度分数将文档重新分组为json文件。

数据获取和预处理

Common Crawl每月都会发布通过随机浏览和采样URL获得的网络快照。每个网页都有不同的可用格式:原始(WARC)、UTF-8文本(WET)和元数据(WAT)。

  • WARC(Web ARChive):它是一种用于存储和传输Web资源(例如HTML页面,图像和视频文件等)的文件格式。 WARC文件通常包含HTTP响应和元数据,用于记录Web爬虫收集的信息。
  • WAT(Web Archive Transformation):它是一种元数据文件格式,用于描述WARC文件中记录的Web内容。 WAT文件通常包含URL,域名和其他有关记录的元数据信息。
  • WET(Web Extraction Toolkit):它是一种将HTML页面转换为文本格式的文件格式。 WET文件通常包含从HTML页面中提取的文本内容,但不包括图像和其他资源。

特点:1. 每月快照之间几乎没有内容重叠。2. 完整的数据包由8年来收集的数PB的数据组成。3. 网页是从整个网站上无限制地抓取的,包含有许多不同的语言。4. 文本的质量也有很大的差异。

每个快照包含 20 到 30TB 的未压缩纯文本,相当于大约 30 亿个网页(例如,2019 年 2 月的快照包含 24TB 的数据)。可以独立下载和处理每个快照。对于每个快照,将 WET 文件重新分组为每个 5GB 的shard。
这些shards被保存到JSON文件中,其中一个条目对应一个网页。

去重

包括删除快照中不同网页中的重复段落,因为它们占文本的 70%。
首先通过将所有字符小写、用占位符(即 0)替换数字并删除所有 Unicode 标点符号和重音符号来标准化每个段落。
然后,重复数据删除通过两个独立的步骤完成。
首先,对于每个shard,我们计算每个段落的哈希码并将它们保存到二进制文件中。我们使用规范化段落的 SHA-1 的前 64 位作为密钥。
然后,我们通过将每个shard与所有二进制文件或其子集进行比较来消除重复数据。

这些步骤对于每个shard来说都是独立的,因此可以进行分布式。除了删除网络副本之外,此步骤还删除了许多样板文件,例如导航菜单、cookie 警告和联系信息。
特别是,它从其他语言的网页中删除了大量的英语内容。
这使得我们pipline的下一步的语言识别更加强大。

语言识别

包括按语言拆分数据。
这里使用来自 fastText ,改语言分类器在Wikipedia,Tatoeba和SETimes上进行了训练。
它使用字符 n-gram 作为特征,并使用分层softmax。
它支持 176 种语言,并在 [0, 1] 范围内为每种语言输出分数。它在单个 CPU 内核上每秒处理 1k 个文档。
对于每个网页,我们计算出最可能的语言和相应的分类器分数。如果该分数高于0.5,我们将文档分类为相应的语言。
否则语言没有明确标识,我们丢弃相应的页面。

基于语言模型的质量过滤

至此仍然存在内容质量低下的文档。
过滤掉这些样本的一种方法是计算网页与目标域(例如维基百科)的相似度分数。
此处建议使用在目标领域训练的语言模型的困惑度作为质量得分。

更准确地说,对于每种语言,根据目标域的数据训练一个tokenizer和语言模型。
这里使用 KenLM 库中实现的 5-gram Kneser-Ney 模型,因为它可以高效地处理大量数据。
然后,对数据集中的每个页面进行tokenization,并使用语言模型计算每个段落的困惑度。
困惑度越低,数据越接近目标域。
在此步骤结束时,每种语言被分平均地分为头、中、尾三个部分,对应于困惑度分数。

进一步过滤

通过维基百科参考的页面和随机抽样的页面,训练一个MLP作为discriminator,来判断输入的页面是否为维基百科参考页面。
训练完成后通过改判别器丢弃一部分非参考页面。

reference:
Wenzek, Guillaume, Marie-Anne Lachaux, Alexis Conneau, Vishrav Chaudhary, Francisco Guzmán, Armand Joulin, and Edouard Grave. “CCNet: Extracting high quality monolingual datasets from web crawl data.” arXiv preprint arXiv:1911.00359 (2019).
https://www.datalearner.com/blog/1051682313146748

references:
https://www.v7labs.com/blog/neural-networks-activation-functions#:~:text=An%20Activation%20Function%20decides%20whether,prediction%20using%20simpler%20mathematical%20operations.
https://blog.csdn.net/weixin_45134475/article/details/123672283
https://zhuanlan.zhihu.com/p/92412922

Sigmoid

$\sigma(x) = \frac{1}{1+e^{-x}}$

Tanh

$tanh(x) = \frac{1-e^{-2x}}{1+e^{-2x}}$

ReLU

$ReLU(x)=\left\lbrace\begin{array}{cll}
x & , & x \ge 0 \\
0 & , & x < 0
\end{array}\right.$

$ReLU(x) = \max(0, x)$

Leaky ReLU

$ReLU(x)=\left\lbrace\begin{array}{cll}
x & , & x \ge 0 \\
0.1x & , & x < 0
\end{array}\right.$

$ReLU(x) = \max(0.1x, x)$

ELU

$ELU(x)=\left\lbrace\begin{array}{cll}
x & , & x \ge 0 \\
\alpha(e^x-1) & , & x < 0
\end{array}\right.$

Swish

$swish(x) = x*sigmoid(x) =\frac{x}{1+e^{-x}}$

Maxout

$max(z_1, z_2, …)$

Softmax

$softmax(z_i) = \frac{e^{z_i}}{\sum_j e^{z_j}}$