什么是文本编辑距离(Levenshtein Distance)?
一、文本编辑距离(Levenshtein Distance)的定义
文本编辑距离(Levenshtein Distance)是一种量化两个字符串差异程度的度量标准。它定义为从一个字符串变换到另一个字符串所需的最少单字符编辑操作次数。编辑操作仅包含三种:插入一个字符、删除一个字符以及替换一个字符。该距离值越小,表示两个字符串越相似。
二、文本编辑距离(Levenshtein Distance)的工作原理
计算Levenshtein距离通常采用动态规划算法。给定源字符串S与目标字符串T,长度分别记为m和n。算法首先构建一个(m+1)行与(n+1)列的矩阵D。初始化第一列D[i][0]为i(表示删除i个字符),第一行D[0][j]为j(表示插入j个字符)。随后按行遍历每个矩阵单元(i,j),计算三个候选值的最小值。候选值分别为D[i-1][j]加1(删除)、D[i][j-1]加1(插入)、D[i-1][j-1]加cost(替换)。其中cost依据字符匹配情况确定:若S的第i个字符等于T的第j个字符,则cost为0,否则cost为1。矩阵右下角D[m][n]的最终数值即为从S到T的编辑距离。该算法以明确的操作代价量化文本差异程度。
三、文本编辑距离(Levenshtein Distance)在产品中的应用
TextIn通用文档解析实践中定义了两种明确的编辑距离标准:标准编辑距离与树状编辑距离。标准编辑距离用于衡量普通文本的识别准确度,即预测文本与真实文本之间所需的最小单字符编辑操作数。该值越低,解析精度越高。根据公开测评数据,TextIn xParse在处理纯文本时的标准编辑距离(Edit Dist)可低至0.12(英文场景)和0.16(中文场景)。树状编辑距离则用于衡量文档结构的还原准确度,包括标题层级、表格结构等。具体方法是将文档的层级或表格抽象为树状结构,计算预测树与真值树之间的编辑距离。该距离直接反映逻辑结构还原的精确程度。TextIn通过自研文档树引擎优化该指标,以应对复杂版式文档的解析需求。通过这两项编辑距离指标,TextIn能够量化解析误差,并对OCR识别错误、字段缺失或结构偏差进行自动化校正,最终输出高可信度的结构化数据。
本文所有产品性能效果和案例数据仅供参考,均不作为履约依据,具体效果请以贵司实测效果为准。
