自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (18)
  • 收藏
  • 关注

原创 WFST(Weighted Finite State Transducer)

WFST (Weighted Finite State Transducer),即加权有限状态转换器。这是一种在自然语言处理(NLP)、语音识别、文本到语音合成(TTS)等领域中广泛使用的数学模型。WFST 是有限状态机(Finite State Machine, FSM)的一种扩展形式,它不仅能够表示状态之间的转换关系,还能为这些转换赋予权重,从而支持概率、成本或其他度量信息的传递。

2024-09-04 10:55:59 364

原创 一致性哈希(Consistent Hashing)

一致性哈希(Consistent Hashing)是一种特殊的哈希算法,主要用于解决,尤其是在需要(节点)的情况下。传统哈希算法在节点变化时可能会导致大部分甚至全部的数据重新分布,这样会导致大量的数据迁移,增加了系统的复杂性和成本。而一致性哈希算法的设计目标是在添加或移除节点时,尽可能减少数据的迁移量,从而提高系统的稳定性和效率。一致性哈希的基本思想是将所有的数据键(keys)和存储节点(nodes)通过哈希函数映射到一个固定的环形空间(通常称为哈希环)。

2024-09-04 10:36:07 846

原创 红黑树(Red-Black Tree)

红黑树(Red-Black Tree)是一种自平衡的二叉查找树(Binary Search Tree, BST),它通过在每个节点上附加一个存储位表示颜色(红色或黑色)来确保树的平衡。红黑树能够在 O(log n) 时间内执行插入、删除和查找操作,这里的 n 是树中节点的数量。

2024-08-22 18:25:36 548

原创 FST(Finite State Transducer)

有限状态转换器(Finite State Transducer,简称FST)是一种计算模型,它是有限状态自动机(Finite State Automaton,简称FSA)的扩展。FSA是一种理论计算模型,用于表示和处理正则语言,它包含一组状态和在这些状态之间的转换,通常用于模式匹配、文本搜索等任务。与FSA不同的是,FST不仅接受输入字符串,还能产生输出字符串,因此它可以用于建模输入和输出之间的关系,如字符串的转换和映射。

2024-08-22 18:00:49 890

原创 AC自动机-2(AhoCorasickDoubleArrayTrie)

AhoCorasickDoubleArrayTrie的构建可能会消耗大量内存,在实际使用中,可以先在一个大内存的机器上构建好AC DAT,序列化成文件,然后在使用的节点上直接反序列进行试用,正如 hanlp实现中的save和load方法。可以看到,其构建过程首先构造了一个普通的Trie树,然后基于这个普通Trie树构建了DAT,在构建DAT的过程中,也给先前构建好的普通Trie树添加了DAT的索引。, 最后又压缩了DAT了,loseWeight();,实际是一个为尾压缩的方法。

2024-08-22 12:01:53 448

原创 AC自动机-1

AC自动机(Aho-Corasick Automaton)是一种高效的多模式字符串匹配算法。它是由Alfred Aho和Margaret Corasick在1975年提出的。这种算法可以在。Trie树的构造比较简单,在此不再赘述。fail指针的构造和fail指针的构造过程如下:考虑字典树中当前的结点的父结点是通过字符的边指向,即。假设深度小于的所有结点的 fail 指针都已求得。如此即完成了的构建。

2024-08-21 18:46:40 936

原创 相似度计算方法-皮尔逊相关系数 (Pearson Correlation Coefficient)

皮尔逊相关系数(Pearson correlation coefficient)是一种统计度量,用于量化两个变量之间的线性关系强度和方向。对于两个变量和,它们的观测值分别为和,皮尔逊相关系数可以用以下公式计算:这里:是变量的平均值;是变量的平均值;是变量和变量在第个观测值处的偏差乘积;和分别是变量和变量的偏差平方和。

2024-08-15 15:16:54 1558

原创 相似度计算方法-闵可夫斯基距离(Minkowski Distance)

闵可夫斯基距离(Minkowski Distance)是一种广义的距离度量方法,它涵盖了多种常见的距离度量,如欧几里得距离(Euclidean distance)和曼哈顿距离(Manhattan distance)。Minkowski距离定义了两个点在n维空间中的距离,可以根据不同的参数p来调整距离度量的方式。对于两个点和在n维空间中的Minkowski距离可以用以下公式表示:这里,是一个正实数,决定了距离度量的具体形式。

2024-08-15 14:34:03 563

原创 相似度计算方法-编辑距离 (Edit Distance)

编辑距离 (Edit Distance)的定义、计算公式、代码实现、优劣势以及应用场景

2024-08-15 13:39:06 1730

原创 相似度计算方法-汉明距离 (Hamming Distance)

汉明距离 (Hamming Distance)的定义、计算公式、代码实现、优劣势以及应用场景

2024-08-15 10:49:58 1110

原创 相似度计算方法-杰卡德相似度 (Jaccard Similarity)

杰卡德相似度 (Jaccard Similarity)的定义、计算公式、代码实现、优劣势以及应用场景

2024-08-15 10:18:39 935

原创 相似度计算方法-余弦相似度 (Cosine Similarity)

余弦相似度的定义、计算公式、代码实现、优劣势以及应用场景

2024-08-14 18:40:11 2243

原创 相似度计算方法-曼哈顿距离 (Manhattan Distance)

曼哈顿距离的定义、计算公式、代码实现、优劣势以及应用场景

2024-08-14 17:36:45 541

原创 相似度计算方法-欧几里得距离 (Euclidean Distance)

欧几里得距离的定义、计算公式、代码实现、优劣势以及应用场景

2024-08-14 17:11:06 994

原创 LSM Tree

LSM Tree(Log-Structured Merge Tree)是一种数据结构和算法,用于高效地管理和存储大量数据。它主要用于设计键值存储系统和数据库,特别适合写入密集的场景。

2024-08-12 17:10:02 338

原创 跳跃表(Skip List)

跳跃表(Skip List)是一种概率型数据结构,它通过在链表上添加多层索引来加快查找速度。跳跃表的设计目标是实现一个高效的搜索、插入和删除操作的有序数据结构,其性能可以与平衡树相媲美,但实现起来更为简单。

2024-08-12 16:48:58 713

原创 B+树 VS B树

B+树是一种平衡树数据结构,常用于数据库和文件系统中。它是B树的一个变种,具有以下特点:1. 所有数据都存储在叶子节点,内部节点只存储键值。2. 叶子节点通过指针相连,形成一个有序链表,便于范围查询。3. 每个节点可以存储多个键值,通常比B树的节点要多。4. 树的高度通常较低,有利于减少磁盘I/O操作。B+树的主要优势包括:1. 高效的范围查询:由于叶子节点相连,可以快速进行范围搜索。2. 更好的磁盘利用率:内部节点不存储数据,可以容纳更多索引,减少树的高度。

2024-08-12 16:07:34 235

原创 子串查找算法KMP

KMP算法(Knuth-Morris-Pratt算法)是一种高效的字符串匹配算法,由Donald Knuth、James H. Morris和Vaughan Pratt在1977年共同发明。它通过利用已经部分匹配这个有效信息,避免了暴力匹配中的大量回溯,从而显著提高了匹配效率。预处理模式串,生成部分匹配表(next数组)。利用这个表在匹配失败时快速滑动模式串,减少不必要的比较。预处理阶段:计算模式串的部分匹配表。匹配阶段:利用部分匹配表进行快速匹配。

2024-08-12 14:02:36 981

原创 双数组字典树(DoubleArrayTrie)

双数组字典树(Double-Array Trie)是一种高效的字符串检索数据结构,它结合了Trie树的快速查找特性和数组的紧凑存储优势。这种数据结构主要用于实现高速字符串匹配,特别适合处理大规模字典和自然语言处理任务。

2024-08-06 00:28:47 718

原创 基数树(Radix Tree)

基数树(Radix Tree),也称为紧凑前缀树(Compact Prefix Tree)或 Patricia 树(Patricia Tree),是一种用于存储和检索字符串键值的数据结构。基数树与Trie树(前缀树)类似,但通过压缩公共前缀来减少节点的数量,从而节省存储空间。基数树非常适合用于查找具有公共前缀的字符串。

2024-08-02 11:49:41 728

原创 是不是所有递归都可以改写为循环?

大多数递归算法可以被改写为等效的循环算法,但这并不意味着所有的递归都可以直接且简单地转换为循环。- 这种情况下,递归转换为循环通常需要额外的逻辑来跟踪递归的状态,例如使用栈来模拟递归调用的堆栈。- DFS通常使用递归来实现,但如果要转换为循环版本,通常需要手动维护一个栈来跟踪节点的访问顺序。- 尾递归是一种特殊的递归形式,其中递归调用是函数体中的最后一个操作。有些递归算法由于其固有的递归性质或复杂性,很难直接转换为简单的循环。- 这种情况下,转换为循环可能需要更加复杂的逻辑来模拟递归树的结构。

2024-08-02 10:04:42 393

原创 Transformer简介

Transformer是一种基于自注意力机制的神经网络结构,它通过多层的自注意力网络,可以自动地捕捉输入序列中的长距离依赖关系。这个新的表示形式可以捕获输入序列中的不同方面的信息,从而使得模型可以更好地理解输入序列。总之,Transformer是一种重要的自然语言处理模型,它通过自注意力机制和残差连接等技术实现了对输入序列的深度理解和表示。自注意力机制:自注意力机制是Transformer的核心技术之一,它可以自动地捕捉输入序列中的长距离依赖关系。文本分类:文本分类是将给定的文本分为不同的类别的一种任务。

2023-09-05 09:24:16 959

Eclipse快捷键

eclipse的快捷键大全,java开发人员必掌握的东西,对熟练使用eclipse有很大帮助。

2011-11-03

Java编程实例100(附源代码)

100个Java程序实例,对Java的初学者非常有帮助!

2011-06-12

Java编程思想第四版

Java编程思想第四版(Think In Java 4th),Java程序员必读经典教程。

2011-06-12

c++语言程序设计课后答案(清华大学郑莉)

c++语言程序设计课后答案(清华大学郑莉),用于辅助学习,课后练习用。

2011-04-05

程序员电子杂志2009高清版

程序员电子杂志2009高清pdf版,涵盖了2009年全部12期,程序员必读的杂志。

2011-04-05

数据结构C语言版1800题

数据结构1800题,无论你是考验还是找工作,拿来做做,对你以后的发展有用。

2011-04-05

数据结构C语言版二叉树及其查找结构

C语言版数据结构中二叉树的查找算法,对学习数据结构的新手有帮助。

2011-04-05

Delphi实现的QQ窗口抖动

调用windows API接口,用Delphi7实现QQ窗口的抖动 。

2011-03-09

Delphi7应用教程

Delphi7应用教程,包括Pascal语言的语法,非常适合初学者。

2011-03-09

数据结构C语言版顺序表的集合运算

数据结构C语言版顺序表的集合运算,顺序表交集 顺序表并集 顺序表差集。

2010-05-25

数据结构c语言版链表删除重复节点

数据结构c语言版链表删除重复节点,包含数据类型、结构的定义和函数的实现

2010-05-25

数据结构C语言版链表的集合运算

数据结构C语言版链表的集合运算,包含交集、并集、差集。

2010-05-25

数据结构C语言版系数矩阵的转置

数据结构C语言版系数矩阵的转置,包括结构的定义和转置的实现。

2010-05-25

vc6.0的MFC帮助文件

MFC的帮助文件,对刚学习MFC的同学有帮助。

2010-03-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除