專利名稱:管理關(guān)于近似串匹配的檔案的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及管理關(guān)于近似串匹配的檔案(archive)。
背景技術(shù):
關(guān)于近似串匹配(也被稱做“模糊”或“不精確”串匹配或搜索)的各種技術(shù)被用 來根據(jù)串度量(也叫做“相似函數(shù)”)尋找在一定偏差內(nèi)匹配給定樣式串的串。被搜索的串 可以是被稱為“文本”的較大串的子串、或者可以是包含在例如數(shù)據(jù)庫的記錄中的串。串度 量的一種類別是“編輯距離”。編輯距離的一個示例是Levenshtein距離,其對需要將一個 串轉(zhuǎn)換為另一串的編輯操作(字符的插入、刪除或替換)的最小數(shù)目進行計數(shù)。近似串匹 配包括在線匹配和離線匹配,在在線匹配中在匹配開始之前無法處理(或“編索引”)要被 搜索的文本,在離線匹配中在匹配開始之前能夠處理文本。
發(fā)明內(nèi)容
在一個方面中,一般,描述一種用于管理確定與記錄中出現(xiàn)的串關(guān)聯(lián)的近似匹配 的檔案的方法。該方法包括處理記錄以確定對應(yīng)于在記錄中出現(xiàn)的串的一組串代表;為 該組中的至少一些串代表的每個產(chǎn)生多個接近代表,所述多個接近代表的每個是根據(jù)該串 中的至少一些相同字符而產(chǎn)生的;以及在檔案中存儲條目,所述條目的每個表示基于它們 各自的接近代表的在至少兩個串之間的潛在近似匹配。各個方面能夠包括以下特征的一個或多個。每個串代表包括一個串。每個接近代表包括該串中的至少一些相同字符。為該組中的給定串產(chǎn)生多個接近串包括產(chǎn)生其每個使得從給定串中刪除不同的 字符的接近串。為該組中的給定串產(chǎn)生多個接近串包括產(chǎn)生其每個使得從給定串中刪除單個字 符的接近串。為該組中的給定串產(chǎn)生多個接近串的步驟包括產(chǎn)生其中的至少一些使得從給定 串中刪除多個字符的接近串。產(chǎn)生其每個是從給定串中刪除不同的字符的接近串包括如果給定串比預(yù)定長度 短則產(chǎn)生其每個使得從給定串中刪除單個字符的接近串,以及如果給定串比預(yù)定長度長則 產(chǎn)生其中的至少一些使得從給定串中刪除多個字符的接近串。該方法還包括對于該組中的至少一些串代表的每個,確定記錄中對應(yīng)串的出現(xiàn)頻率。該方法還包括對于該組中的至少一些串代表的每個,基于包括該串的出現(xiàn)頻率 和在檔案中作為該串的潛在近似匹配而代表的至少一些串的出現(xiàn)頻率的總和產(chǎn)生表示相 應(yīng)串的重要性的重要性值。該重要性值是基于該總和的反來產(chǎn)生的。
4
該方法還包括通過確定短語中的串是否對應(yīng)于近似匹配來確定包括多個串的不 同短語是否對應(yīng)于近似匹配,其中基于它們相應(yīng)的重要性值來選擇所述短語中的串。短語中串的重要性值是基于該總和的,并且基于該串的長度、短語中串的位置、其 中出現(xiàn)串的記錄的字段、和其中該字段出現(xiàn)的記錄的源中的至少一個。該方法還包括對于檔案中至少一些條目的每個產(chǎn)生與條目相關(guān)聯(lián)的分值,其量 化至少兩個串之間的潛在近似匹配的質(zhì)量。該方法還包括通過將與條目相關(guān)聯(lián)的分值與閾值比較來確定與條目相關(guān)聯(lián)的串 是否對應(yīng)于近似匹配。該分值基于用來確定至少兩個串之間的潛在近似匹配的各自接近代表之間的對 應(yīng)性。處理記錄以確定對應(yīng)于在記錄中出現(xiàn)的串的一組串代表包括修改在至少一個記 錄中出現(xiàn)的串以產(chǎn)生修改串,以便包括在該組串代表中。修改串包括去除或替換標(biāo)點。修改串包括將串編碼為不同的代表。修改串包括將串編碼為數(shù)字代表。將串編碼為數(shù)字代表包括將串中的每個字符映射為素數(shù),并且將串表示為映射 到串中的字符的素數(shù)的乘積。該檔案包括基于來自用戶的輸入而表示至少兩個串之間的潛在近似匹配的至少
一些條目。在另一方面,一般,描述了一種存儲在計算機可讀介質(zhì)中的計算機程序,用于管理 用來確定與在記錄中出現(xiàn)的串相關(guān)聯(lián)的近似匹配的檔案。該計算機程序包括指令,用于促 使計算機來處理記錄以確定一組串代表,所述串代表對應(yīng)于在記錄中出現(xiàn)的串;為該組 中的至少一些串代表的每個,產(chǎn)生多個接近代表,所述多個接近代表的每個根據(jù)該串中的 至少一些相同字符而產(chǎn)生;以及存儲條目在檔案中,每個條目表示基于它們各自的接近代 表的在至少兩個串之間的潛在近似匹配。在另一方面,一般,描述了一種用于管理用來確定與在記錄中出現(xiàn)的串相關(guān)聯(lián)的 近似匹配的檔案的系統(tǒng)。該系統(tǒng)包括用于處理記錄以確定一組串代表的部件,所述串代表 對應(yīng)于在記錄中出現(xiàn)的串;用于對于該組中的至少一些串代表的每個產(chǎn)生多個接近代表的 部件,所述多個接近代表的每個根據(jù)該串中的至少一些相同字符而產(chǎn)生;以及用于存儲條 目在檔案中的部件,每個條目表示基于它們各自的接近代表的在至少兩個串之間的潛在近 似匹配。在另一方面,一般,描述了用于管理用來確定與在記錄中出現(xiàn)的串相關(guān)聯(lián)的近似 匹配的檔案的系統(tǒng)。該系統(tǒng)包括數(shù)據(jù)源,存儲記錄;計算機系統(tǒng),被配置來處理該數(shù)據(jù)源 中的記錄以確定一組串代表,所述串代表對應(yīng)于在記錄中出現(xiàn)的串,為該組中的至少一些 串代表的每個,產(chǎn)生多個接近代表,所述多個接近代表的每個根據(jù)該串中的至少一些相同 字符而產(chǎn)生;以及與所述計算機系統(tǒng)耦接的數(shù)據(jù)存儲器,存儲包括條目的檔案,每個條目表 示基于它們各自的接近代表的在至少兩個串之間的潛在近似匹配。各個方面能夠包括以下優(yōu)點的一個或多個。在典型的數(shù)據(jù)庫應(yīng)用中,不同記錄的給定字段在它們的內(nèi)容一致時匹配。如聯(lián)合和聚集之類的操作一般基于在特定字段中出現(xiàn)的匹配關(guān)鍵字將記錄分到組中??墒?,在一 些應(yīng)用中,能夠使用近似串匹配來執(zhí)行聯(lián)合或聚集以比較關(guān)鍵字是有用的。如果在預(yù)定準(zhǔn) 則下兩個記錄對應(yīng)的關(guān)鍵字字段足夠接近,則它們被說成近似匹配。例如,當(dāng)使用多于一個 的數(shù)據(jù)源來執(zhí)行該操作時,對于包括單詞或短語的關(guān)鍵詞,在每個源中的單詞的準(zhǔn)確拼寫 可能不同或者一個短語可能包含在另一中不存在的單詞。維持檔案以存儲在一個或多個數(shù)據(jù)源的記錄中出現(xiàn)的接近的串對。這些對和諸如 由檔案提供的分值的相關(guān)信息提高了聯(lián)合、聚集和使用近似串匹配的其他操作的效率。在 一些實施方式中,可以從計算圖形的組件訪問該檔案,該計算圖形對來自該數(shù)據(jù)源的數(shù)據(jù) 執(zhí)行操作,如下更詳細描述的。通過以下描述以及權(quán)利要求書,本發(fā)明的其它特征和優(yōu)點將變得明了。
圖1是用于執(zhí)行基于圖形的計算的系統(tǒng)的框圖。圖2是計算圖形的圖。圖3是預(yù)處理過程的流程圖。
具體實施例方式1系統(tǒng)概述關(guān)于近似串匹配(或“模糊匹配”)的技術(shù)能夠適用于各種類型的系統(tǒng),包括存儲 數(shù)據(jù)集(dataset)的不同形式的數(shù)據(jù)庫系統(tǒng)。如這里使用的,數(shù)據(jù)集包括數(shù)據(jù)的任何集合, 其允許部分值據(jù)被組織為具有用于各個字段(也叫做“屬性”或“列”)的值的記錄。數(shù)據(jù) 庫系統(tǒng)和所存儲的數(shù)據(jù)集能夠采用多種形式中的任意一個,此類精密復(fù)雜的數(shù)據(jù)庫管理系 統(tǒng)或文件系統(tǒng)存儲簡單平實的文件。各種數(shù)據(jù)庫系統(tǒng)的一個方面是記錄結(jié)構(gòu)的類型,其用 于數(shù)據(jù)集(這能夠包括用于每個記錄中的字段的字段結(jié)構(gòu))中的記錄。在一些系統(tǒng)中,數(shù)據(jù) 集的記錄結(jié)構(gòu)可以簡單地將各個文本文件定義為記錄,并且文件的內(nèi)容表示一個或多個字 段的值。在一些系統(tǒng)中,不需要單個數(shù)據(jù)集中的全部記錄具有相同的結(jié)構(gòu)(如,字段結(jié)構(gòu))。利用與圖形的頂點關(guān)聯(lián)的計算組件以及在與圖形的鏈接(弧、邊緣)對應(yīng)的組 件之間的數(shù)據(jù)流,復(fù)雜的計算通常能夠經(jīng)過直接圖形而被表示為數(shù)據(jù)流。在美國專利 5,966,072,EXECUTING COMPUTATIONS EXPRESSED ASGRAPHS 中描述了 實現(xiàn)這樣的基于圖形 的計算的系統(tǒng),通過引用在此并入。用于執(zhí)行基于圖形的計算的一種辦法是執(zhí)行多個過程, 每個過程與圖形的不同頂點關(guān)聯(lián),并且根據(jù)圖形的鏈接在各過程之間建立通信路徑。例如, 通信路徑能夠使用TCP/IP或UNIX域套接字,或使用共享存儲器在各過程之間傳遞數(shù)據(jù)。參考圖1,用于執(zhí)行基于圖形的計算的系統(tǒng)100包括耦接到數(shù)據(jù)存儲器102的開 發(fā)環(huán)境104和耦接到數(shù)據(jù)存儲器102的運行時間環(huán)境108。開發(fā)者101使用開發(fā)環(huán)境104 構(gòu)建應(yīng)用。應(yīng)用與由數(shù)據(jù)存儲器102中的數(shù)據(jù)結(jié)構(gòu)所指定的一個或多個計算圖形關(guān)聯(lián),所 述數(shù)據(jù)結(jié)構(gòu)可以是作為開發(fā)者使用開發(fā)環(huán)境104的結(jié)果而被寫入到該數(shù)據(jù)存儲器中的。關(guān) 于計算圖形105的數(shù)據(jù)結(jié)構(gòu)103指定例如計算圖形的頂點(組件或數(shù)據(jù)集)和在頂點之間 的鏈接(表示工作元素的流動)。數(shù)據(jù)結(jié)構(gòu)也能夠包括組件的各種特性、數(shù)據(jù)集(dataset) 和計算圖形的流程(也叫做“數(shù)據(jù)流圖形”)。
運行時間環(huán)境108可以被托管在諸如UNIX操作系統(tǒng)的合適操作系統(tǒng)的控制下的 一個或多個通用計算機中。例如,運行時間環(huán)境108能夠包括多節(jié)點并行計算環(huán)境,其包 括使用多個中央處理單元(CPU)的計算機系統(tǒng)的配置,所述多個中央處理單元可以是本地 (如,諸如SMP計算機的多處理器系統(tǒng))或本地分發(fā)的(如,耦接為集群或MPP的多處理 器)、或者遠程或遠程分發(fā)的(如,經(jīng)由LAN或WAN網(wǎng)絡(luò)耦接的多處理器)、或它們的任意組
I=I O運行時間環(huán)境108被配置來從數(shù)據(jù)存儲器102和/或用戶107中接收控制輸入以 執(zhí)行和配置計算。控制輸入能夠包括用于使用在所存儲的圖形數(shù)據(jù)結(jié)構(gòu)中指定的相應(yīng)計算 圖形來處理特定數(shù)據(jù)集的命令。用戶107能夠例如使用命令行或圖形接口來與運行時間環(huán) 境108交互。運行時間環(huán)境108包括預(yù)執(zhí)行模塊110和執(zhí)行模塊112。預(yù)執(zhí)行模塊110執(zhí)行任 何預(yù)處理過程,并且準(zhǔn)備和維持用于執(zhí)行計算圖形的資源,諸如字典111和用于近似串匹 配的檔案114。字典111存儲單詞和關(guān)于在數(shù)據(jù)集中出現(xiàn)的單詞的相關(guān)信息。檔案114存 儲來自基于單詞、短語的預(yù)處理的各種結(jié)果或者數(shù)據(jù)集的記錄。字典111和檔案114能夠以 各種格式中的任意一種來實現(xiàn)并且能夠被組織為數(shù)據(jù)的單個集合或作為多個字典和檔案。 執(zhí)行模塊112調(diào)度和控制對于分配給計算圖形的過程的執(zhí)行以執(zhí)行各組件的計算。執(zhí)行模 塊112能夠與耦接到系統(tǒng)100的、諸如從數(shù)據(jù)庫系統(tǒng)提供記錄的數(shù)據(jù)源116的外部計算資 源進行交互,在與圖形組件關(guān)聯(lián)的處理期間訪問所述外部計算資源。參考圖2,計算圖形105的簡單示例包括執(zhí)行聚集(rollup)操作的聚集組件200, 第一輸入數(shù)據(jù)集202、第二輸入數(shù)據(jù)集204以及輸出數(shù)據(jù)集206。輸入數(shù)據(jù)集聚集組件200 向提供工作組件的流(如,數(shù)據(jù)庫記錄),以及輸出數(shù)據(jù)集206接收由聚集組件200產(chǎn)生的 工作組件的流(如,聚合數(shù)據(jù)庫記錄)。輸入數(shù)據(jù)集202和204以及輸出數(shù)據(jù)集206表示 在由運行時間環(huán)境108可訪問的存儲介質(zhì)(諸如數(shù)據(jù)源116)中存儲的數(shù)據(jù)(如,數(shù)據(jù)庫文 件)。聚集組件200比較從輸入數(shù)據(jù)集接收的記錄的關(guān)鍵字段值,并且基于在關(guān)鍵字段值之 間的近似匹配而產(chǎn)生聚合記錄。圖3示出由預(yù)執(zhí)行模塊110執(zhí)行的預(yù)處理過程300,以準(zhǔn)備由計算圖形使用的字 典111和檔案114。過程300從用戶接收指示將處理哪些源和從那些源的哪個字段讀取單 詞的配置信息(302)。要讀取哪個字段的指示可以根據(jù)默認設(shè)置而是暗示的,如讀取全部字 段。過程300通過讀取所選擇的源的記錄的所選擇字段,在字典中存儲字段中出現(xiàn)的單詞, 并且更新諸如單詞頻率計數(shù)的統(tǒng)計來編譯字典111(304)。過程300通過對字典中的單詞產(chǎn) 生接近(close)單詞(308)以及根據(jù)各個接近單詞的比較而尋找潛在模糊匹配(310)來編 譯要存儲在檔案114中的潛在模糊匹配(306)。與作為潛在模糊匹配的單詞對一起存儲分 值,所述分值能夠在圖形執(zhí)行期間被用來確定該潛在模糊匹配是否為實際模糊匹配。過程 300通過基于存儲在檔案114中的結(jié)果計算關(guān)于字典中出現(xiàn)的單詞的重要性分值而更新字 典111(312)。例如,對于字典111中的每個單詞,過程300基于潛在模糊匹配來重新規(guī)格化 (renormalize)單詞頻率計數(shù)(314),如下面詳細描述的。然后,這些重新規(guī)格化的單詞頻 率計數(shù)能夠被用來計算可以在匹配短語和源的記錄時使用的重要性分值。在一些實施方式中,預(yù)處理過程300在每次新的源可用時或在現(xiàn)有源中接收到新 的記錄時被重復(fù)。該過程能夠由用戶激活或者以重復(fù)的間隔或響應(yīng)于一定事件而被自動激活。2模糊匹配許多商業(yè)面臨的挑戰(zhàn)是使用具有可能不完全相同的等價值的如“名稱”或“地址” 的字段來調(diào)和兩個(或更多個)數(shù)據(jù)集。調(diào)和數(shù)據(jù)庫可能涉及回答有關(guān)數(shù)據(jù)的各種問題,諸 如下述。在一個數(shù)據(jù)集中的公司名稱是否出現(xiàn)在另一個數(shù)據(jù)集中?如果是,它們是否具有 相同的地址?如果來自兩個數(shù)據(jù)集的公司名稱完全相同,則能夠使用聯(lián)合操作來比較相應(yīng) 的地址字段,該操作找到具有匹配關(guān)鍵字(這里,是公司名稱)的全部記錄。但是如果名稱 不完全相同呢? 一個名稱可能以單詞公司(COMPANY)結(jié)尾而另一個將其縮寫為CO并且第 三個不過將其完全地漏掉。類似OF或THE的冠詞可以在一個名稱中但是不在另一中。單 詞可能被拼錯(如,COMPNY代替COMPANY)。在一個源中的名稱可能包含附加信息,如聯(lián)系 人名稱或賬號。對于像企業(yè)名稱的一些事情,不管在不同出處的數(shù)據(jù)集中,還是即便在單個數(shù)據(jù) 集中也沒有固定的格式規(guī)則。該挑戰(zhàn)是找到匹配,一般為一組可能的匹配,即便名稱是不一 致的。能夠使用近似串匹配、也被熟知為“模糊”匹配來執(zhí)行這樣的匹配。該匹配是模糊的, 因為它們?nèi)萑体e誤或差異。當(dāng)操作使用模糊匹配時,如果發(fā)現(xiàn)兩個單詞或短語在可接受的不同或差異的一定 范圍中等價,盡管不必相同,則說它們是匹配的。例如,單詞的確切拼寫可能不一致或者一 個短語可以包含在另一中不出現(xiàn)的單詞。能夠使用分值來量化一致性的質(zhì)量。當(dāng)對應(yīng)于記 錄的給定字段中的匹配的關(guān)鍵字不需相同但是為等價時,利用模糊匹配可以執(zhí)行熟悉的操 作,諸如比較、聯(lián)合、聚集和查找。為了增加模糊匹配的速度,預(yù)執(zhí)行模塊110定期處理來自數(shù)據(jù)源的數(shù)據(jù)集,該數(shù) 據(jù)源已經(jīng)被識別為計算圖形潛在地可訪問的數(shù)據(jù)源。預(yù)執(zhí)行模塊110讀取出現(xiàn)在數(shù)據(jù)集的 記錄的所選擇字段中的數(shù)據(jù)。用戶能夠選擇要處理的全部可用的字段或者可用字段的所選 擇子集。在一些情況中字段中的數(shù)據(jù)可以對應(yīng)于單個單詞,并且在一些情況中數(shù)據(jù)可以對 應(yīng)于包含多個單詞的短語。(如這里所使用的,“單詞”是包括來自某個字符集的一序列字符 的任何串,而短語中的多個單詞由空格或諸如逗號的其他分界符分離開)用于將字段分解 為單詞的規(guī)則是可配置的并且該規(guī)則能夠在字段被初始選擇時被指定。在一些情況中,盡 管存在嵌入式空格(如,城市名稱或英國郵政編碼),但是可以通過將短語分解為“多個單 詞”,將嵌入式空格當(dāng)成字符對待而以與單個單詞相似的方式來處理具有多個單詞的短語, 如下更詳細地描述的那樣。這允許在模糊匹配中識別級聯(lián)的和斷開的單詞。例如,“john alien” 將匹配于 “johnallen” 或甚至是 “johnal len”。預(yù)執(zhí)行模塊110識別記錄中發(fā)生的一組單詞并且在字典111中存儲單詞的代表 (也叫做“單詞代表”或“串代表”)。也可以在字典111中存儲對于每個單詞的統(tǒng)計。例如, 可以在字典111中存儲給定數(shù)據(jù)集或全部數(shù)據(jù)集的記錄中的單詞的發(fā)生頻率??梢栽谧值?111中存儲關(guān)于單詞的上下文的信息。例如,上下文能夠包括該單詞出現(xiàn)的字段或字段組。 也能夠在字典111中存儲諸如在短語中它的位置的統(tǒng)計之類的其他關(guān)于單詞的信息。單詞 的代表可以是單詞自身,或者是以諸如不同字符集或非串代表(如,數(shù)字或字母數(shù)字編碼) 的不同形式的單詞的編碼代表,如下面更詳細地描述的。預(yù)執(zhí)行模塊110的處理包括對給定單詞產(chǎn)生一組“接近單詞”(或“接近代表”)。關(guān)于給定單詞的接近單詞與該給定單詞相關(guān)聯(lián)地存儲在字典111中。接近單詞被用來產(chǎn)生 在單詞對之間的潛在模糊匹配,如下面更詳細地描述的。處理的結(jié)果被存儲在檔案114中以由通過執(zhí)行模塊112執(zhí)行的圖形使用。在確定 是否應(yīng)當(dāng)處理給定記錄的過程中(如,在聯(lián)合或聚集組件中),一些圖形可以使用檔案114。 測量各記錄的相似性是在眾多上下文中出現(xiàn)的一種數(shù)據(jù)質(zhì)量活動。例如,兩個源可以共享 公共關(guān)鍵字,該公共關(guān)鍵字被用在聯(lián)合操作中以將來自兩個源的記錄拿到一起。需要比較 其中可能出現(xiàn)關(guān)鍵字的記錄中的字段。多個單詞可能存在于一個字段中并且多個字段常被 用于保存一定類型的數(shù)據(jù),如名稱或地址。在字段中的單詞的布置在源中可以不一致,額外 的單詞可以存在在一個源或其他源中,單詞可以是亂序的,并且可能存在排字錯誤。能夠使 用各種評分函數(shù)來計算表現(xiàn)記錄之間的匹配的質(zhì)量的特點的基本分值,然后由針對各種類 型的不一致性和錯誤的懲罰來加權(quán)該基本分值。與不同類型的錯誤相關(guān)聯(lián)的權(quán)重是可以調(diào) 整的,并且每個懲罰對于關(guān)于任何比較的分值的貢獻是值得報告的。各評分函數(shù)在它們?nèi)?何比較作為模糊匹配的單詞以及它們在計算分值中是否對單詞進行加權(quán)(統(tǒng)計上)上不 同。關(guān)于記錄的分值可以涉及跨越幾個單獨評分的個體或級聯(lián)的字段的加權(quán)分值。在匹配過程中存在3個評分級別單詞、短語和記錄。一般在預(yù)處理階段期間進 行單詞的評分,并且基于預(yù)定準(zhǔn)則確定兩個單詞是否是潛在模糊匹配,以及將潛在模糊匹 配與“模糊匹配分值”相關(guān)聯(lián)。短語的評分可以不僅考慮模糊匹配的單詞,而且可以考慮 一個或兩個短語中缺少單詞的概率、單詞亂序出現(xiàn)的概率或在它們之間存在額外單詞的概 率。評分算法可被配置為使得能夠調(diào)整不相符的不同源的重要性。第3個評分級別是整個 記錄。通過以上下文敏感的方式組合不同字段的分值來對它們進行評分。缺失或不一致的 信息能夠給予適當(dāng)?shù)臋?quán)重。檔案114存儲找到為潛在模糊匹配的單詞對以及對應(yīng)的模糊匹配分值。能夠由用 戶修改潛在模糊匹配和它們的模糊匹配分值的集合以將所計算的模糊匹配分值替換為不 同的模糊匹配分值并且增加與預(yù)定準(zhǔn)則不相關(guān)的潛在模糊匹配單詞對。為了短語比較的目的,檔案114也存儲“重要性分值”,其表示單詞對于包含該單 詞的短語的相對重要性。重要性分值使用在數(shù)據(jù)集中單詞出現(xiàn)的反向頻率,但是使用(使 用分值檔案確定的)涉及模糊匹配的變化的頻率來調(diào)整該值,并且可選地使用從單詞的長 度、在短語中的位置、源和上下文(如,單詞出現(xiàn)的字段)導(dǎo)出的附加信息。例如,因為數(shù)據(jù) 可能沒有位于正確的字段中并且需要識別這樣的錯誤,所以基于其中單詞出現(xiàn)的上下文來 調(diào)整該重要性分值可能是有用的。在一些情況下,出現(xiàn)在如地址字段的字段中的串可以以 非結(jié)構(gòu)化的格式被接收,但是不過其可以包含結(jié)構(gòu)。這些串能夠被解析并且識別單個元素。 按上下文的相對重要性能夠被用來指示給定的單詞是更有可能出現(xiàn)在一個上下文還是另 一個上下文中。例如,在地址字段,LONDON(倫敦)作為城市而非街道名稱的一部分。前后 關(guān)系的協(xié)調(diào)信息有助于解析如果在LONDON后面有另一城市名稱,則它可能是街道名稱的 一部分;如果它緊接在郵政編碼的前面,則它可能是城市。在一些實施方式中,檔案114存儲測量兩個短語之間的模糊匹配質(zhì)量的“短語比 較分值”。預(yù)執(zhí)行模塊110將各短語重疊以找到共享的和未使用的單詞的列表,并且使用它 們的相對重要性、校正(alignment)和單詞順序來計算該短語比較分值。存儲在檔案114的信息在它產(chǎn)生之后還能夠以各種方式被進一步處理。例如,在分值檔案中,可能的誤判(false positive)能夠使用黃金參考數(shù)據(jù)的自我評分的結(jié)果來識 別并且通過在初始評分期間應(yīng)用的η克(n-gram)分析來排除。也可以包括其他分值。例 如,來自多個字段的單詞或短語能夠被獨立評分并且組合它們的分值以對整個記錄評分。由使用模糊匹配的不同類型的操作訪問檔案114。一些操作包括使用精確匹配的 “正常版本”以及使用模糊匹配的“模糊版本”。聚集(或聚合)操作的模糊版本將相似的 記錄關(guān)聯(lián)為群組。這對鞏固在原始數(shù)據(jù)中存在標(biāo)識唯一實體的關(guān)鍵字的變型形式的記錄是 有用的。簡單定義與唯一實體關(guān)聯(lián)的記錄的群組可能是一個顯著性結(jié)果。一旦已經(jīng)定義群 組,則支持一般的聚合活動。因為模糊匹配是評分的等價關(guān)系,所以也將對群組的關(guān)聯(lián)進行 評分。這具有這樣的效果,與熟悉的情況相反,給定的實體將不必是唯一群組的成員。在群 組的成員上的聚合(如數(shù)字總和)則將不準(zhǔn)確但是僅將在反映群組成員的資格的不確定性 的錯誤范圍內(nèi)知曉??墒?,在全部群組上的聚合將仍然保持準(zhǔn)確,因為整體上的成員資格是 確定的。組件也能夠使用該分值檔案來識別各個單詞中的錯誤拼寫和其他錯誤。能夠由用 戶(如,根據(jù)檔案產(chǎn)生的列表)來確認所識別的錯誤,并且數(shù)據(jù)校正組件能夠校正數(shù)據(jù)中的 錯誤。基于模糊匹配的該糾錯能力能夠是對數(shù)據(jù)全面調(diào)節(jié)器(profiler)能力的擴展,如在 標(biāo)題為“Data Profiling”的美國專利申請?zhí)?0/941,402中更詳細描述的,這里通過引用 并入。2. 1匹配準(zhǔn)則各種準(zhǔn)則中的任意一個能夠被用于匹配質(zhì)量的測量??紤]兩個單詞,M00RGATE和 M00GRATE。一種類型的準(zhǔn)則是距離度量。存在多個不同的距離度量或用于測量兩個單詞之 間的距離的辦法。最簡單的一個是漢明(Hamming)距離,其對相應(yīng)字符是不同的位置的數(shù) 目進行計數(shù)。由于該數(shù)目依靠于校準(zhǔn),所以使用漢明距離最小的校準(zhǔn)。這對應(yīng)于要求將一 個單詞轉(zhuǎn)換為另一個的替換的最小數(shù)目,如以下示例所示。M00RGATEM00GRATE* *在該示例中,存在相應(yīng)字符不同的兩個位置,要求兩次替換來將一個單詞轉(zhuǎn)換為 另一個。由于在計算漢明距離中校準(zhǔn)很重要,所以“打亂”校準(zhǔn)的插入可能產(chǎn)生較大的距 離,如下示例。M00RGATEM00RGRATE氺氺氺氺在該示例中,在原始單詞中的單個插入產(chǎn)生漢明距離4。對于一些應(yīng)用,漢明距離 夸大了插入的重要性。對漢明距離的替換是“編輯距離”。編輯距離是盡可能地保持校準(zhǔn)而將一個單詞轉(zhuǎn) 換為另一個所需的編輯(其中“編輯”是插入、刪除或替換中的一個)的最小數(shù)目的計數(shù)。 單詞對M00RGATE和M00GRATE具有編輯距離2,因為其需要一次插入和一次刪除(或兩次替 換)來將一個單詞轉(zhuǎn)換為另一個。單詞對M00RGATE和M00RGRATE具有編輯距離1,因為其
10需要一次插入來將一個單詞轉(zhuǎn)換為另一個。存在用于計算編輯距離的各種算法。通過對插入、刪除和替換(甚至互換)分配 不同的權(quán)重,可以使得編輯距離分值反映不同類型的錯誤的重要性。編輯距離的復(fù)雜在于 其通常在計算上比漢明距離更浩大?!敖咏鼏卧~比較”是對上述編輯距離的替換,并且計算上迅速。由于在實際數(shù)據(jù)中 排字和抄錄錯誤的頻率相對地較低,所以在單個單詞中找到多于一個的錯誤較少見。(當(dāng) 然,諸如更多的將一個音節(jié)替換為語音上相似的一個的系統(tǒng)錯誤可以涉及多個字母,但是 這能夠被當(dāng)成非匹配單詞。)代替計算兩個給定單詞之間的編輯距離,預(yù)執(zhí)行模塊110使用 “刪除_聯(lián)合”過程來實現(xiàn)接近單詞比較以確定給定單詞是否是潛在模糊匹配。刪除_聯(lián)合 過程通過構(gòu)造從每個單詞中刪除單個字符而獲得的全部變型單詞而開始,以獲得關(guān)于每個 單詞的被叫做“刪除變型”的一組接近單詞。然后刪除_聯(lián)合過程比較兩組刪除變型以找 出是否任意的刪除變型是否匹配。如果它們匹配,則原始單詞被指定為潛在模糊匹配。刪 除_聯(lián)合過程的特征可以在于找到與有限組的等價變化相關(guān)的單詞,該等價變化涉及單次 刪除、單次插入或伴隨插入的刪除(這覆蓋替換和互換兩者)。在以下示例中更詳細地描述 刪除變型的產(chǎn)生和刪除-聯(lián)合過程。接近單詞比較的其他形式是可以的。例如,每個單詞 能夠具有根據(jù)不同組的等價變化而是“接近的”的一組接近單詞。刪除-聯(lián)合過程也能夠使用其中刪除多個字符的刪除變型,但是誤判的數(shù)目一般 隨刪除的字符的數(shù)目而上升。誤判是當(dāng)一個自然發(fā)生(“真實的”)單詞匹配另一個自然 發(fā)生單詞的時候。例如,CLARKE和CLAIRE是通過插入之后跟隨的刪除而相關(guān)的。的確,錯 誤能夠?qū)⒁粋€單詞轉(zhuǎn)錄為另一個,但是因為兩個單詞均是真實的,所以該可能性是每個單 詞無錯誤地自然發(fā)生。缺少有關(guān)哪個單詞是自然發(fā)生的信息,則給定模糊匹配算法無法直 接判斷哪個單詞是真實的(盡管存在推斷它的一些可能性,如下所述的),從而對于該算法 來說要檢測誤判是困難的。該情形是微妙的,因為一些改變可能是錯誤的而另一些則不是。 用于應(yīng)對誤判的一個辦法是給每個單詞附加進一步的度量,叫做“重要性分值”,其最初基 于如單詞在數(shù)據(jù)中出現(xiàn)的頻率的因素(單詞頻率計數(shù)或重新規(guī)格化的單詞頻率計數(shù)的反 (inverse))。例如,如果一個自然發(fā)生的單詞容易與另外一個弄錯,則二者的重要性降低, 反映在它們的可區(qū)分性中的置信度的喪失。關(guān)于誤判的潛在問題是其可能導(dǎo)致應(yīng)該被區(qū)分的記錄被報告成可能的匹配。在刪 除變型中使用單次刪除的一個優(yōu)點是,隨著單詞長度的增加(如超過大約5個字符),誤判 的數(shù)目迅速下降,因為一般在記錄中存在更少的長單詞,并且長單詞一般被更普遍地分離。 在一些實施方式中,用來產(chǎn)生刪除變型的刪除的數(shù)目能夠取決于單詞的長度。例如,對于具 有不超過5個字符的單詞,刪除單個字符,而對于具有超過5個字符的單詞,多達2個字符 被刪除(如,刪除變型包括單個字符被刪除的全部單詞和兩個單詞被刪除的全部單詞)。預(yù)執(zhí)行模塊110能夠包括減少大量評估的總體計算時間并且加速ad hoc評估的 特征。出現(xiàn)在記錄中的單詞和它們的刪除變型被存儲在字典ill中,并且刪除-聯(lián)合過程的 刪除比較的結(jié)果被預(yù)計算并存儲在檔案114中,其中它們是可用的而無需另外的評估。這 對關(guān)于名稱/地址數(shù)據(jù)的簡單觀察起到了杠桿作用基于自然語言的數(shù)據(jù)中單詞的數(shù)目相 對于可能最終被處理的記錄的數(shù)目是相當(dāng)?shù)匦?如,<< 1百萬)。并非每次其出現(xiàn)時重復(fù) 相同的相當(dāng)浩大的計算,檔案114存儲該結(jié)果(接近對和相關(guān)聯(lián)的模糊匹配分值)以用于重新使用。因為可能的單詞的數(shù)目相對較小,并且僅觀察的變型被存儲,從而檔案114的容
量是可管理的。檔案114具有另外的好處。如果在檔案114中的短語的模糊匹配分值小于預(yù)定閾 值(假定更低的分值指示更高質(zhì)量的匹配),則用于短語的評分算法將報告單詞之間的模 糊匹配。通過使得用戶能夠手動調(diào)整檔案114中的單詞對的模糊匹配分值,能夠避開不期 望的匹配(如,誤判)。另外,通過添加具有合適模糊匹配分值的對,在接近單詞比較中不 匹配的單詞能夠被添加為檔案114中的匹配。例如,添加對HSBC MIDLAND創(chuàng)建了在“HSBC BANK”和“MIDLAND BANK”之間的模糊匹配。這提供了一種用于應(yīng)用基于商業(yè)含義(這里, MIDLAND是HSBC從前的名稱)的同義詞的方法。通過手動添加條目并且設(shè)置該模糊匹配分 值以指示模糊匹配,多詞關(guān)聯(lián)(如對于INTERNATIONAL BUSINESS MACHINES的IBM)也能夠 被添加為檔案中的模糊匹配。在一些實施方式中,多詞關(guān)聯(lián)與單個單詞之間的關(guān)聯(lián)分開地 被存儲和/或處理。例如,在一些情況中,多詞關(guān)聯(lián)可以在標(biāo)準(zhǔn)化期間使用并且在短語比較 評分期間不是必需的。對于單詞、短語和記錄的匹配過程一般包括將候選者識別為潛在模糊匹配并且判 斷在候選者之間的匹配質(zhì)量以確定實際模糊匹配。匹配記錄可以涉及匹配來自相應(yīng)字段的單詞,或在一些情況中,涉及匹配來自一 個或多個字段的單詞的短語。例如,由于當(dāng)匹配名稱或地址時來自不同源的記錄中的存在 的單詞數(shù)目不必相同,所以能夠通過“短語匹配”來執(zhí)行在該上下文中的模糊匹配。預(yù)執(zhí)行 模塊110能夠選擇將空格當(dāng)成一個額外的字符,故短語就簡單地變?yōu)檩^長的單詞。當(dāng)使用 這種技術(shù)時,預(yù)執(zhí)行模塊110可以執(zhí)行另外的處理以應(yīng)對可選的單詞,以考慮到在具有被 當(dāng)成字符對待的空格的較長單詞中的區(qū)域會改變的事實。2. 2標(biāo)準(zhǔn)化和解析在模糊匹配的一些實施方式中,在比較之前短語被標(biāo)準(zhǔn)化。這按可預(yù)測的方式減 少可變性,例如,通過漏掉通用單詞,如OF或THE,或者通過將通用縮寫替換為完整的單詞, 諸如替換CO為COMPANY。該標(biāo)準(zhǔn)化能夠增加匹配的力度并且在一些辦法中改進匹配過程的 性能。困難在于一些信息可能在標(biāo)準(zhǔn)化期間丟失,或者會產(chǎn)生錯誤的識別C0RP很可能是 CORPORATION的縮寫,但是它可能為CORPS的錯誤拼寫。標(biāo)準(zhǔn)化可被配置為使得在一些情況中標(biāo)準(zhǔn)化不被使用或者被維持在最小,并且其 他機制被用來應(yīng)對通用單詞的問題和縮寫的替換。在一些實施方式中,全部短語被標(biāo)準(zhǔn)化 為大寫字母或小寫字母(同時保持如重音符號的字符變型),因為詞形一般在不同源之間 不一致并且大部分是假的區(qū)別。意圖是用于保持原始數(shù)據(jù)的完整性并且為處理中的以后步 驟對字段中的系統(tǒng)變型留出任何補償(如縮寫或同義詞)。這樣的原因是,雖然在地址字段 中如ST的單詞常意味者STREET,但是這并非總是如此,從而太早地將它替換會是潛在的問 題。能夠指定對于標(biāo)點字符的特別對待,因為這些在各源之間往往是不一致的。例如, 許多標(biāo)點字符或者是可選擇的、或者指示在另外的未結(jié)構(gòu)化的字段中的格式化。標(biāo)點的處 理類型的三種示例是替換為空的、替換為空格、以及替換為斷線。其他形式的標(biāo)準(zhǔn)化能夠 包括將一些預(yù)定的單詞或短語替換為其他單詞或短語,諸如替換一個單詞為同義詞。用戶 能夠使用在可配置的查找文件中的規(guī)則來控制標(biāo)點和單詞的替換。
解析向來自任意數(shù)目的字段的不同單詞或短語的部分分配含義。例如,解析可以 在處理地址時使用,該地址在一些源中可以顯露為結(jié)合到一個或兩個字段而同時在其他源 中它們被分散到8個或10個字段。能夠使用參考源來促進解析期望包括已知元素的字段, 該參考源提供用于識別和驗證元素的輔助信息。例如,能夠使用郵政地址文件(PAF文件) 作為識別和驗證地址的各個元素的參考源來處理解析地址字段。2. 3單詞頻率和上下文預(yù)執(zhí)行模塊110針對出現(xiàn)在記錄中的單詞掃描給定源的記錄,并且,在一些情況 中,將該掃描限制到記錄的所選擇字段。在給定源的記錄的所選擇字段中出現(xiàn)的單詞被存 儲在字典111中。在一些實施方式中,字典中的每個條目存儲單詞、單詞的頻率、單詞的位 置統(tǒng)計,以及單詞的上下文。頻率是單詞出現(xiàn)在該源的記錄的次數(shù)的計數(shù)(如,單詞可以在 給定記錄中出現(xiàn)多次)。頻率能夠是全部字段上的聚合計數(shù)或者是多次計數(shù)(其中每個計 數(shù)表示單詞在給定字段中出現(xiàn)多少次)。頻率也能夠被重新規(guī)格化,如下面更詳細地描述 的。如果單詞出現(xiàn)在給定字段的短語中,則對該短語計算該單詞在該短語中的位置。在字典 111中對于給定單詞的位置統(tǒng)計包括,例如,在該單詞出現(xiàn)的所有短語中該位置的平均和標(biāo) 準(zhǔn)偏差。一個叫做“上下文”的類別詞被存儲在字典111中以支持字段的邏輯組合。用戶 能夠在選擇要處理的字段時指定上下文。上下文的使用使得可以比較具有不同記錄結(jié)構(gòu)的 各個源,而不要求標(biāo)準(zhǔn)化到通用格式。這提高了各源之間的比較質(zhì)量,因為能夠從特定字段 中的單詞的存在中導(dǎo)出的源特定信息通過到通用格式的標(biāo)準(zhǔn)化而不會丟失。給定字段可以 出現(xiàn)在多個上下文中,允許比較的粒度和數(shù)據(jù)的模糊布置的容差二者的控制。例如,“地址”上下文可以被用來對包含作為地址的一部分的單詞的字段進行分 組。與上下文關(guān)聯(lián)的該字段名稱在各個源之間可以不同。例如,在一個源中的字段address IineU address_line2、address_line3可以都是地址上下文的一部分,而在另一源中地址 上下文可以包括建筑物_編號、街道、城市和郵編。單詞頻率計數(shù)和出現(xiàn)在不同字段的給定 單詞的重要性分值能夠被聚集以表示相關(guān)上下文的頻率。字典111被用于識別代表潛在模糊匹配的檔案114中的單詞并且識別由重要性分 值表示的每個單詞的重要性。能夠使用可有效訪問的多種文件格式的任意一種來維持該字 典111。例如,能夠以索引壓縮(級聯(lián)的)平實文件格式來存儲字典111,諸如在美國申請 序列號11/555,458中描述的格式,這里通過引用并入?;蛘邽榱瞬煌哪康?、源、字段編碼 或者為了例如加速訪問,字典111能夠保持在單個文件或多個文件中。關(guān)于單詞的其他信息能夠被包括在字典111中。例如,如果字段中的單詞根據(jù)重 要性按照降序順序排序這將重要單詞更早地置于短語中,則“重要性位置”是單詞在字段 中將具有的位置。例如,按照原始順序的短語可以是“Bank of America”。具有按照重要性 排序的單詞的短語可以是“AmericaBank of”。單詞“Bank”在原始短語中的位置是第1個 (3個之中)。單詞“Bank”的重要性位置是第2個(3個之中)。2. 4模糊匹配分值在源中和各源之間的單詞的潛在模糊匹配是預(yù)計算的并且與描述匹配的質(zhì)量的 特點的關(guān)于在單詞對之間的每個潛在匹配的模糊匹配分值一起被存儲在檔案114中。由于 源中獨特的單詞的數(shù)目一般比源中全部單詞的數(shù)目少很多,所以該預(yù)計算步驟通過消除單
13詞的冗余模糊比較來加速稍后的比較和字段的評分。最初,僅構(gòu)成潛在模糊匹配(根據(jù)諸 如接近單詞比較技術(shù)的預(yù)定準(zhǔn)則)的單詞被存儲在檔案114中。用戶能夠基于預(yù)定準(zhǔn)則通 過手動調(diào)整模糊匹配分值、或添加檔案114中關(guān)于單詞的模糊匹配分值的最初群體中未識 別的匹配對來修改和擴展檔案114。 在一些實施方式中,檔案114使用刪除聯(lián)合過程來增加模糊匹配分值。并非計算 每個單詞對之間的全部編輯距離,這將在計算上很浩大,而是在刪除聯(lián)合過程中僅附近的 單詞被比較。這是按以下方式實現(xiàn)的。對單詞字典111中的每個單詞(或?qū)τ谧值?11的 一部分,如對于給定源、上下文和/或字段),獲得通過刪除單個字符形成的每個變型。關(guān)于 給定原始單詞的“刪除集”包含條目的列表,每個條目具有關(guān)于原始單詞的關(guān)鍵字(“word_ key”)、原始單詞(“original”)、刪除變型(“delectior^var”)、和已經(jīng)從原始單詞中刪 除的字符的位置(“deletior^pos”)。該刪除集能夠與原始單詞一起存儲在字典111中,或 者可以在由預(yù)執(zhí)行模塊110使用以產(chǎn)生被存儲在檔案114中的潛在模糊匹配之后被丟棄。 原始單詞和刪除變型一起被包括在該刪除集中并且具有刪除字符位置為0。例如,以下是對 于單詞LONDON的刪除集word_key deletion_posdeletion_varoriginal
1 0LONDONLONDON
1 10ND0NLONDON
1 2LNDONLONDON
1 3L0D0NLONDON
1 4LONDNLONDON
1 5L0ND0LONDON注意,word_key, deletion_pos是識別給定刪除變型的唯一 “關(guān)鍵字”。該刪除聯(lián)合過程能夠被擴展到更多刪除,記錄刪除位置的序列,但是,由于多于一 個的刪除序列可能導(dǎo)向相同的單詞,以致對于給定刪除變型的“關(guān)鍵字”不再是唯一的。(可 是存在通過要求按照特定順序完成刪除而確定的規(guī)范的關(guān)鍵字,如從原始單詞的左邊開始 的順序,并且總是指示根據(jù)先前變型的刪除位置。)因此,從原始單詞LONDON中刪除兩個字 符(兩次均在第三位置)產(chǎn)生的刪除變型L00N將具有刪除集條目word_key deletion_pos deletion_var original13,3LOONLONDON刪除聯(lián)合過程通過對刪除_變型單詞執(zhí)行聯(lián)合操作來從一個或多個字典中的單 詞中確定潛在模糊匹配。通過比較所刪除的字符的位置來對模糊匹配的質(zhì)量進行評分。在 用于計算模糊匹配的過程的一個示例中,分值點被分配給如下的不同類型的改變每次刪 除為1個點、改變第一個字母為1個點、改變最后一個字母為1個點、如果所刪除的字符被 多于一個的位置分離為1個點。與每個類型的改變關(guān)聯(lián)的權(quán)重是可調(diào)整的。如果一個單詞 的刪除位置是0而其他不是0,則其為單次插入或刪除。如果刪除位置相同,則其為代替。 具有相同word_key和deletior^pos的匹配被忽視,因為這些是確切的匹配。指示成對字母 的刪除的匹配也被忽視,因為其不提供信息(如,通過刪除字符2或3得到MEET- > MET)。以下是對于原始單詞LONDON、L0D0N、L0MD0N和L0DN0N的來自各個刪除集的一系 列所選擇條目的示例。
word_keydeletion—_posdeletion_varoriginal
10LONDONLONDON
13L0D0NLONDON
14L0N0NLONDON
20L0D0NL0D0N
30L0MD0NL0MD0N
33L0D0NL0MD0N
40L0DN0NL0DN0N
43L0N0NL0DN0N
44L0D0NL0DN0N
在該示例中,-一些刪除變型條目已經(jīng)被抑制,因為它們不會導(dǎo)致有意思的匹配。合操作將第-一條巨與具有deletion_var的相同值的第二條目配對。結(jié)果得到的在原始詞對之間的潛在模糊匹配是
第-一條目第:二條目潛在模糊匹配
13 L0D0NLONDON20L0D0N L0D0NLONDON L0D0N
13 L0D0NLONDON33L0D0N L0MD0NLONDON L0MD0N
13 L0D0NLONDON44L0D0N L0DN0NLONDON L0DN0N
14 L0N0NLONDON43L0N0N L0DN0NLONDON L0DN0N
20 L0D0NL0D0N33L0D0N L0MD0NL0D0N L0MD0N分別地,以上示范的潛在模糊匹配表示單詞0-刪除、替換、互換、通過不同路徑獲 得的互換和單詞0-插入(單詞1-刪除)。代表潛在模糊匹配的檔案114中的每個單詞對 具有指示匹配的質(zhì)量的相關(guān)的模糊匹配分值。使用上述的過程,對于這些對的模糊匹配分值如下潛在模糊匹配模糊匹配分值LONDON LODON1LONDON LOMDON1LONDON L0DN0N2LONDON L0DN0N2L0D0N L0MD0N1作為將被識別為潛在模糊匹配的對進行評分的另一示例,單詞0ND0N和LONDON將 具有模糊匹配分值為4 (1對于第一個字母、1對于刪除L、1對于刪除0,1對于非相鄰刪除)。能夠?qū)哂衼碜园▎蝹€源的任意數(shù)目的源的單詞的字典111執(zhí)行聯(lián)合操作。在 一些情況中,字典111包括具有來自第一源(sourceO)的單詞的部分和具有來自第二源 (sourcel)的單詞的部分。能夠使用所選擇的源執(zhí)行刪除-聯(lián)合過程并且結(jié)果能夠被存儲 在檔案114中,一起存儲在檔案114中的還有哪個源被選擇的指示和諸如它們按照什么順 序被比較的其他信息。例如,代表潛在模糊匹配的檔案114中的每個單詞對也能夠與entry_ descriptor (條目描述符)相關(guān)聯(lián)。entry—descriptor能夠被實現(xiàn)為比特映射字段,其指 示該對的來源。一個比特指示該對是通過使用該刪除聯(lián)合方法的圖形產(chǎn)生的。其他比特指示該分值是否已經(jīng)被用戶修改、該對是否已經(jīng)被用戶插入(如引入同義詞)或者該對是否 是通過清除嵌入的標(biāo)點字符(叫做“清除的”)而產(chǎn)生的。標(biāo)點字符的清除(潛在地包括外語的發(fā)音符號)起因于因為經(jīng)驗表明多個標(biāo)點字 符能夠發(fā)生嵌入在單個單詞中。有時這些是有效可選擇的,如姓名首字母的句點;有時它們 看起來像拖尾的無用信息字符。由于往往涉及多于一個的字符,所以這樣的清除不會被單 次刪除方法獲得而多次刪除將帶來太多的誤判。以下是清除后單詞的一對示例。原始單詞清除后單詞S. I. ID.SIIDH0LDINGS###HOLDINGS來自單個源的單詞能夠彼此相對來評分。當(dāng)存在多于一個源時,來自每個源的單 詞能夠相對其他源(如,獨立的字段或上下文)的那些單詞而被評分。這識別可能不在自 身源內(nèi)出現(xiàn)的潛在模糊匹配。由于拼寫錯誤和排印錯誤是相對隔離的事件,故它們一般隨 各個源而改變。檔案114能夠存儲遍及所有源的潛在模糊匹配結(jié)果,例如以索引壓縮(級聯(lián)的) 平實文件格式來存儲,諸如在美國申請序列號11/555,458中描述的格式,這里通過引用并 入。以多文件格式并用于不同的目的的多個檔案114的使用是可能的(如,用于下述的多 詞分值)。當(dāng)新源被引入時,針對添加到字典111的它們自己的刪除集并針對已經(jīng)在字典 111的現(xiàn)有刪除集來對單詞進行評分。新的潛在模糊匹配對和分值能夠按照排序順序級聯(lián) 到現(xiàn)有檔案114的末尾。稍后的融合處理能夠為了性能而重新組織該檔案。在一些實施方式中,如果關(guān)于單詞對的檔案114的條目已經(jīng)存在,則該對被丟棄 并且不再評分。例如,這樣做是為了性能并且允許用戶修改通過刪除聯(lián)合過程而產(chǎn)生的分 值。由于檔案114是累積的,因為產(chǎn)生了大量所觀察到的對,所以需要被評分的單詞數(shù)目隨 時間下降。修改條目的分值對于個別地避開誤判來說是有用。計算圖形的組件能夠使用檔案 114中的分值來基于分值檔案中它們的分值是否低于給定閾值來確定單詞對是否是模糊匹 配。將檔案114中的給定單詞對的分值提高到閾值以上有效地避開了匹配(指示所識別的 潛在模糊匹配不是實際模糊匹配)。單詞對的明智的評分使得可以通過調(diào)整閾值來選擇性 地開啟和避開一組單詞。在一些實施方式中,一個或多個閾值被配置為取決于上下文,并且 給定對的分值也能夠取決于上下文(如,使用存儲在檔案114中的附加信息)。用戶也能夠添加不會在刪除_聯(lián)合過程中識別的單詞對到檔案114。這對于添加 同義詞或縮寫詞到分值檔案是有用的。例如,STREET和ST不會被刪除-聯(lián)合過程識別為 潛在模糊匹配,但是這可能是期望的等同。也可以添加綽號識別,如ROBERT和BOB(這是取 決于上下文分值的自然示例——這在個人名稱上下文中可以當(dāng)成匹配但是在其他上下文 則不然)。在檔案中的模糊匹配分值能夠通過來自進一步處理的結(jié)果(如,在那些單詞出現(xiàn) 的短語之間的已接受的匹配)的反饋而更新。2. 5單詞頻率重新規(guī)格化和重要性分值在檔案114增加了至少一些單詞對之后,其能夠被用來“重新規(guī)格化”在字典111 中的單詞頻率計數(shù)。通過添加作為潛在模糊匹配而涉及該單詞的全部單詞的計數(shù)來調(diào)整每個單詞的頻率。結(jié)果得到的重新規(guī)格化頻率被用來計算單詞的“重要性分值”,其進而將在 匹配短語時被使用。在數(shù)據(jù)中單詞頻率越小,則其在其與其他單詞可區(qū)分的方面更加重要。通過錯誤拼寫的單詞來說明將頻率重要性的概念應(yīng)用到原始單詞頻率計數(shù)的困 難。拼寫錯誤較少見因此實在是太為重要。通過利用與之匹配的更頻繁發(fā)生的單詞的計 數(shù)來調(diào)整它們的計數(shù),顯示出它們真實的相對重要性。高頻率匹配單詞不該必須地被認作 是“正確拼寫的”,因為這暗示可能不應(yīng)用的對匹配單詞的校正。并非全部低頻率單詞都被 錯誤拼寫以及并非全部匹配的高頻率單詞都是正確拼寫的甚至是錯誤拼寫的單詞。例如, NORTE可能是NORTH的錯誤拼寫或它可能只是西班牙語的North。LABLE可能是LABEL的錯 誤拼寫但是它也可能是TABLE的錯誤拼寫,二者將作為高頻率匹配發(fā)生。重要性攜帶可區(qū)分的強烈涵義。如果單詞與多個高頻率單詞匹配,如LABLE這樣, 則它被看成不那么重要的,因為存在對于它被錯誤地當(dāng)成另一單詞的較大的范圍。在檔案114中,重新規(guī)格化的單詞頻率計數(shù)能夠被存儲,并且諸如單詞列表的其 他信息用來執(zhí)行該重新規(guī)格化(如,為了診斷的目的)。以下是作為單詞AVENUE的潛在模 糊匹配的單詞的示例,以及示出單詞出現(xiàn)的上下文的示范短語及單詞出現(xiàn)在示范數(shù)據(jù)源的 次數(shù)的計數(shù)。在該示范數(shù)據(jù)源中,單詞AVENUE自身出現(xiàn)10,500次。
0150]單詞上下文 計數(shù)0151]AVENE237 Park Avene 10152]AVNENUE255 5th Avnenue Sff 10153]AVENUNE306 MAROON AVENUNE 20154]AVEUNUE236 TATE AVEUNUE 10155]AVENUESPhiladelphia & Reading Avenues 110156]AVENUUE57 NORTH TWELFTH AVENUUE 10157]AVENUS1900 9th Avenus 10158]AVEUNE1010 BELLEVERNON AVEUNE 40159]AVENIE3401 Hillview Avenie 10160]AVNUE540 G0DDARD AVNUE 10161]AVEBUE10319 FIRM0NA AVEBUE 10162]AVENYE132 JEFFERSON AVENYE 10163]VENUE725 North Mathilda Venue 10164]ANENUE3330 Evergreen Anenue 10165]VENDUEZI LA VENDUE 10166]AVENUE5200 NW 33rd Avenue. Suite 215 10167]單詞AVENUE將示出為具有16個潛在模糊匹配并且將通過那些匹配單詞的計
總和來調(diào)整10500的計數(shù)。這些匹配單詞的每個使得它們的計數(shù)由通過與AVENUE相關(guān)聯(lián) 的10500加上對于匹配單詞被識別為潛在模糊匹配的任意其他單詞來調(diào)整。一般,錯誤拼 寫的單詞比正確拼寫的單詞鏈接有更少的模糊匹配。 在以下示例中說明通過其來重新規(guī)格化單詞的頻率計數(shù)的過程。在該示例中, 關(guān)于sourceO的字典包括出現(xiàn)在被叫做“ legaladdress (合法地址)”的字段中的單詞 MEXICO (原始頻率計數(shù)11)和MEXICO (原始頻率計數(shù)259),而關(guān)于sourcel的字典包括出現(xiàn)在被叫做“taddreSS3”的字段中的單詞MEXCIO (原始頻率計數(shù)2)和MEXICO(原始 頻率計數(shù)311)(注意sourceO中加重音符的E)。在該示例中,基于在關(guān)于sourceO的字典的刪除集和關(guān)于sourcel的字典的刪除 集之間的聯(lián)合操作,存儲在檔案114中的單詞對包括sourceO和sourcel之間的潛在模糊 匹配。(以下示例將利用來自每個源的刪除集的自聯(lián)合的潛在模糊匹配來增加檔案。)因 此,以下兩個潛在模糊匹配對出現(xiàn)在檔案114中MEXICO MEXICOMEXICO MEXCIO重新規(guī)格化過程的示例如下。處理關(guān)于sourceO和sourcel 二者的字典,例如,開 始于sourceO中的單詞Μ ΧΚΧΧ在檔案114中查找該單詞以尋找在sourcel中出現(xiàn)的潛 在模糊匹配的列表。然后,在關(guān)于sourceO的原始字典中查找每個潛在模糊匹配。結(jié)果得 到的計數(shù)被添加到原始計數(shù)。應(yīng)用于上述示例的過程產(chǎn)生關(guān)于在sourceO的字典中的單詞 頻率計數(shù)的重新規(guī)格化的以下結(jié)果來自sourceO首次輸入單詞和原始計數(shù)Μ ΧΚΧ) H在檔案中查找,返回 {MEXICO}在sourceO字典中查找每個,添加計數(shù)sourceO =MEXICO 259找到{MEXICO}對于MEXICO的重新規(guī)格化計數(shù)=11+259 = 270來自sourceO的第二次輸入單 詞和原始計數(shù)MEXIC0 259在檔案中查找,返回{ MEXICO, MEXCI0}在sourceO字典中 查找每個,添加計數(shù)sourceO :MEXICO HsourceO :MEXCI0 未找到找到{Μ ΧΚΧ)}對于MEXICO的重新規(guī)格化計數(shù)=259+11 = 270假定對于具有原始單詞頻率計數(shù)5的單詞MiXIGA在sourceO字典中存在附加 條目。該單詞Μ ΧΙΟΑ在sourcel中不具有對于任何單詞的潛在模糊匹配,故它不出 現(xiàn)在檔案114中,因此將不參與對于sourceO (相對于sourcel)的重新規(guī)格化。可是,如果 已經(jīng)利用sourceO字典的刪除集上的自身聯(lián)合來擴展檔案114為具有該附加條目,則在檔 案114中將有以下附加條目
MEXICA MEXICO然后,對第一單詞Μ ΧΚΧ)的查找將添加Μ ΧΙΟΑ到該組所找到的潛在模糊 匹配中。對于Μ ΧΚΧ)的重新規(guī)格化則將執(zhí)行如下sourceO =MEXICO 259sourceO MEXICA 5找到{MEXICA, MEXICO}對于Μ ΧΚΧ)的重新規(guī)格化計數(shù)=11+5+259 = 275現(xiàn)在,重新規(guī)格化的單詞頻率更高,反映出附加潛在模糊匹配Μ ΧΙΟΑ的存在。然后計算基于重新規(guī)格化的單詞頻 率計數(shù)計算的重要性分值,例如對用非空記錄的總數(shù)除以重新規(guī)格化的單詞頻率計數(shù)求對 數(shù)。在重要性分值的這個版本中,單詞及其變型出現(xiàn)越頻繁,則重要性分值越低。負值指示 單詞出現(xiàn)常多于每個記錄一次。重新規(guī)格化的單詞頻率計數(shù)能夠被用來識別可能的錯誤拼寫或相反地可能的誤 判。簡言之,期望錯誤拼寫預(yù)計是少見的而誤判則不然。簡單的比率測試指示哪些單詞具 有比重新規(guī)格化的單詞頻率計數(shù)少得多的計數(shù)。這些很可能是錯誤拼寫。如果參考ngram 頻率則可以取得甚至更高的置信度。ngram是η字母單詞片段。遍及全部數(shù)據(jù)的ngram的 頻率分布指示不同字母組合的發(fā)生頻率。(該分布當(dāng)然是語言特定的。)該想法在于在檔 案的產(chǎn)生期間,在兩個單詞之間的改變的位置是已知的。橫越(span)改變的位置的兩字母 和三字母(以及更多的)單詞片段能夠被識別并查找它們的頻率。如果在一個單詞中與該 改變相關(guān)聯(lián)的ngram頻率與在另一個單詞中的ngram頻率相比低很多,則指示前一單詞很 可能被錯誤拼寫。另一方面,其每個具有相對較高計數(shù)的多個變型很可能是自然發(fā)生的變型——也 即,誤判。從評分的觀點看,誤判匹配的存在由于對其添加了相對更大的計數(shù)而降低了單詞 的重要性。在一些情況中,因為其指示該單詞可能被弄錯,所以這會是理想的。但是在另外 的情況中,各單詞樣子如此不同,以致不可能是錯誤產(chǎn)生的它們一當(dāng)然不是在相對計數(shù) 的級別。重要性可以完全是相對的。當(dāng)涉及多個源時,一些潛在模糊匹配單詞可能不會在 全部源中出現(xiàn)。這意味著調(diào)整后的計數(shù)能夠在各源之間變化。類似地,與單詞相關(guān)聯(lián)的字 段或上下文可以是相關(guān)的。例如,做出的該調(diào)整能夠適用于源、字段和上下文的解析。在相 對的情況中,只有當(dāng)在比較兩個源時在合適的源/字段/上下文中實際出現(xiàn)的潛在模糊匹 配才將被用于調(diào)整該計數(shù)。期望來自源特定變型的貢獻一般是較小的影響。2. 6 編碼在刪除_聯(lián)合過程中找到的接近單詞基于本質(zhì)上未從它們在原始數(shù)據(jù)集中的樣 子中改變的單詞中的字符的排列。接近單詞比較也能夠在通過使用“單詞編碼”改變的“單 詞的間隔”中進行。當(dāng)使用單詞編碼時所找到的接近集合可以不同。單詞編碼將單詞映射 到新的表示。映射可以是一對一、一對多或多對一。一些編碼可以將單詞變換為不同的字 符集,而一些編碼可以將單詞變換為數(shù)字表示。單詞編碼修改單詞的間隔從而根據(jù)給定度 量的單詞之間的距離可能變化。在應(yīng)用單詞編碼之后,就它們的自然字符表示來說并不接 近的單詞可以是接近的。例如,在一些實施方式中,預(yù)執(zhí)行模塊110執(zhí)行“素數(shù)編碼”,其中字符集中的每個 字符被編碼為素數(shù)(如,在字母表的每個字母被映射到不同的素數(shù),不管大小寫),并且編 碼的單詞是字符的素數(shù)的乘積。因為乘法是累積的(即獨立于因子的階),所以只要它們包 括相同的字符集,而不管它們的順序如何,則兩個編碼的單詞是相同的。該編碼對互換不敏 感或者真正地對加擾不敏感,并且是多對一映射的示例。對于給定編碼,刪除_聯(lián)合過程的變型在編碼以產(chǎn)生接近單詞之前能夠執(zhí)行字符 的刪除,或者在編碼以產(chǎn)生接近單詞之后能夠執(zhí)行接近單詞操作。能夠執(zhí)行用于素數(shù)編碼 的刪除-聯(lián)合過程的變型,其中模塊110將編碼乘積除以素數(shù)以刪除刪除變型中的對應(yīng)字符。對于一些編碼(如素數(shù)編碼),編碼之后的接近單詞操作產(chǎn)生如同在編碼之前已進行了 字符刪除的結(jié)果,但是對于其他編碼,如果在編碼之前已進行了字符刪除,則接近單詞操作 可以產(chǎn)生不同的結(jié)果。對于使用多個字母表或字符集(如,識別字符的計算機字節(jié)代碼)的一些語言,如 日語,編碼可以包括在編碼之間標(biāo)準(zhǔn)化字母表或字符集的選擇。2. 7 多詞多詞(multiword)是被當(dāng)成單詞的、包含嵌入空格的短語。在前一示例中,在評分 之前短語已經(jīng)被解析為沒有嵌入空格的單詞。這忽略了兩個潛在的錯誤源空格能夠被插 入單詞中而單詞之間的空格能夠被丟棄。另一示例是將與短語相關(guān)的同義詞處理為單個單 詞,如首字母縮寫詞。允許嵌入空格以削弱作為分隔符的空格的識別。這通過將短語的解析擴展為不 僅包含單個單詞,而且包括全部相鄰的一對詞和三個詞等來實現(xiàn)。短語被分解為比特定長 度短的它的全部子短語(多詞)。多詞(mword)中的全部嵌入空格被刪除以形成級聯(lián)單詞 (cword) 0這類似于通過刪除形成的單詞。cword變?yōu)槎嘣~字典和多詞檔案的關(guān)鍵字。當(dāng)比 較多詞時,匹配它們的cword然后給原始mword評分。目前,忽視在mword中錯誤拼寫的單 詞的概率。為對待這種情況,當(dāng)對mword對進行評分時參考該檔案。作為示例,考慮具有以下3個名稱的源JOHN A SMITHJO HNA SMITHJOHNA SMITH將第一條目mword 分解為長度 3 將給出一組 mword {JOHN, A, SMITH, JOHN A, A SMITH, JOHN A SMITH}。3實現(xiàn)方式能夠使用用于在計算機上執(zhí)行的軟件來實現(xiàn)這里描述的近似串匹配方法。例如, 該軟件形成一個或多個計算機程序中的進程,所述一個或多個計算機程序在一個或多個編 程的或可編程的計算機系統(tǒng)(其可以具有各種架構(gòu),諸如分布式、客戶端/服務(wù)器或網(wǎng)格) 上執(zhí)行,每個系統(tǒng)包括至少一個處理器、至少一個數(shù)據(jù)存儲系統(tǒng)(包括易失性和非易失性 存儲器和/或存儲元件)、至少一個輸入設(shè)備或端口以及至少一個輸出設(shè)備或端口。軟件可 以形成更大程序的一個或多個模塊,例如,提供與計算圖形的設(shè)計和配置有關(guān)的其他服務(wù)。 圖形的節(jié)點和元素能夠被實現(xiàn)為存儲在計算機可讀介質(zhì)中的數(shù)據(jù)結(jié)構(gòu)或遵循存儲在數(shù)據(jù) 倉庫中的數(shù)據(jù)模型的其他組織數(shù)據(jù)。軟件可以被提供在存儲介質(zhì)上,諸如⑶-R0M,可通過通用或?qū)S每删幊逃嬎銠C讀 取或者經(jīng)過網(wǎng)絡(luò)的通信介質(zhì)傳遞到(以傳播信號編碼)在其中被執(zhí)行的計算機上。全部功 能可以在專用計算機上執(zhí)行,或者使用專用硬件(諸如協(xié)處理器)來執(zhí)行??梢砸苑植际?方式實現(xiàn)軟件,其中由軟件指定的計算的不同部分由不同的計算機執(zhí)行。每個這樣的計算 機程序優(yōu)選地被存儲在或下載到通用或?qū)S每删幊逃嬎銠C可讀的存儲媒體或設(shè)備(如,固 態(tài)存儲器或媒體,或磁或光媒體),用于當(dāng)存儲媒體或設(shè)備被計算機系統(tǒng)讀取以執(zhí)行這里所 述的程序時配置和操作計算機。發(fā)明性系統(tǒng)也可以考慮實被現(xiàn)為計算機可讀存儲介質(zhì),配 置有計算機程序,其中存儲介質(zhì)被配置來使得計算機系統(tǒng)以特定的和預(yù)定的方式操作以執(zhí)行這里所述的功能。已經(jīng)描述了本發(fā)明的多個實施例。然而,將理解可以做出各種修改而不脫離本發(fā) 明的精神和范圍。例如,上述的一些步驟可以是順序獨立的,因此能夠按照不同于所述的順 序來執(zhí)行。應(yīng)該理解,前述說明意欲是說明性的而非限制本發(fā)明的范圍,該范圍由所附權(quán)利 要求的范圍來限定。例如,可以以不同的順序來執(zhí)行上述的多個功能步驟,而不會在本質(zhì)上 影響整個處理。其他實施例在以下權(quán)利要求的范圍中。
權(quán)利要求
一種用于管理用來確定與在記錄中出現(xiàn)的串相關(guān)聯(lián)的近似匹配的檔案的方法,該方法包括步驟處理記錄以確定一組串代表,所述串代表對應(yīng)于在記錄中出現(xiàn)的串;為該組中的至少一些串代表的每個產(chǎn)生多個接近代表,所述多個接近代表的每個根據(jù)該串中至少一些相同字符而產(chǎn)生;以及存儲條目在檔案中,每個條目表示基于它們各自的接近代表的在至少兩個串之間的潛在近似匹配。
2.根據(jù)權(quán)利要求1所述的方法,其中,每個串代表包括一個串。
3.根據(jù)權(quán)利要求2所述的方法,其中,每個接近代表包括該串中的至少一些相同字符。
4.根據(jù)權(quán)利要求3所述的方法,其中,為該組中的給定串產(chǎn)生多個接近串的步驟包括 產(chǎn)生其每個使得從給定串中刪除不同的字符的接近串。
5.根據(jù)權(quán)利要求4所述的方法,其中,為該組中的給定串產(chǎn)生多個接近串的步驟包括 產(chǎn)生其每個使得從給定串中刪除單個字符的接近串。
6.根據(jù)權(quán)利要求5所述的方法,其中,為該組中的給定串產(chǎn)生多個接近串的步驟包括 產(chǎn)生其中的至少一些使得從給定串中刪除多個字符的接近串。
7.根據(jù)權(quán)利要求4所述的方法,其中,產(chǎn)生其每個是從給定串中刪除不同的字符的接 近串的步驟包括如果給定串比預(yù)定長度短則產(chǎn)生其每個使得從給定串中刪除單個字符的 接近串,以及如果給定串比預(yù)定長度長則產(chǎn)生其中的至少一些使得從給定串中刪除多個字 符的接近串。
8.根據(jù)權(quán)利要求1所述的方法,還包括步驟對于該組中的至少一些串代表的每個,確 定記錄中對應(yīng)串的出現(xiàn)頻率。
9.根據(jù)權(quán)利要求8所述的方法,還包括步驟對于該組中的至少一些串代表的每個,基 于包括該串的出現(xiàn)頻率和在檔案中作為該串的潛在近似匹配而代表的至少一些串的出現(xiàn) 頻率的總和產(chǎn)生表示相應(yīng)串的重要性的重要性值。
10.根據(jù)權(quán)利要求9所述的方法,其中,該重要性值是基于該總和的反來產(chǎn)生的。
11.根據(jù)權(quán)利要求9所述的方法,還包括步驟通過確定短語中的串是否對應(yīng)于近似匹 配來確定包括多個串的不同短語是否對應(yīng)于近似匹配,其中基于它們相應(yīng)的重要性值來選 擇所述短語中的串。
12.根據(jù)權(quán)利要求11所述的方法,其中短語中串的重要性值是基于該總和的,并且基 于該串的長度、短語中串的位置、其中出現(xiàn)串的記錄的字段、和其中該字段出現(xiàn)的記錄的源 中的至少一個。
13.根據(jù)權(quán)利要求1所述的方法,還包括步驟對于檔案中至少一些條目的每個產(chǎn)生與 條目相關(guān)聯(lián)的分值,其量化至少兩個串之間的潛在近似匹配的質(zhì)量。
14.根據(jù)權(quán)利要求13所述的方法,還包括步驟通過將與條目相關(guān)聯(lián)的分值與閾值比 較來確定與條目相關(guān)聯(lián)的串是否對應(yīng)于近似匹配。
15.根據(jù)權(quán)利要求13所述的方法,其中,該分值基于用來確定至少兩個串之間的潛在 近似匹配的各自接近代表之間的對應(yīng)性。
16.根據(jù)權(quán)利要求1所述的方法,其中,處理記錄以確定對應(yīng)于在記錄中出現(xiàn)的串的一 組串代表包括修改在至少一個記錄中出現(xiàn)的串以產(chǎn)生修改串,以便包括在該組串代表中。
17.根據(jù)權(quán)利要求16所述的方法,其中,修改串包括去除或替換標(biāo)點。
18.根據(jù)權(quán)利要求16所述的方法,其中,修改串包括將串編碼為不同的代表。
19.根據(jù)權(quán)利要求18所述的方法,其中,修改串包括將串編碼為數(shù)字代表。
20.根據(jù)權(quán)利要求19所述的方法,其中,將串編碼為數(shù)字代表包括將串中的每個字符 映射為素數(shù),并且將串表示為映射到串中的字符的素數(shù)的乘積。
21.根據(jù)權(quán)利要求1所述的方法,其中,該檔案包括基于來自用戶的輸入而表示至少兩 個串之間的潛在近似匹配的至少一些條目。
22.—種存儲在計算機可讀介質(zhì)中的計算機程序,用于管理用來確定與在記錄中出現(xiàn) 的串相關(guān)聯(lián)的近似匹配的檔案,該計算機程序包括指令,用于促使計算機來處理記錄以確定一組串代表,所述串代表對應(yīng)于在記錄中出現(xiàn)的串; 對于該組中的至少一些串代表的每個,產(chǎn)生多個接近代表,所述多個接近代表的每個 根據(jù)該串中的至少一些相同字符而產(chǎn)生;以及存儲條目在檔案中,每個條目表示基于它們各自的接近代表的在至少兩個串之間的潛 在近似匹配。
23.一種用于管理用來確定與在記錄中出現(xiàn)的串相關(guān)聯(lián)的近似匹配的檔案的系統(tǒng),該 系統(tǒng)包括用于處理記錄以確定一組串代表的部件,所述串代表對應(yīng)于在記錄中出現(xiàn)的串; 用于對于該組中的至少一些串代表的每個產(chǎn)生多個接近代表的部件,所述多個接近代 表的每個根據(jù)該串中的至少一些相同字符而產(chǎn)生;以及用于存儲條目在檔案中的部件,每個條目表示基于它們各自的接近代表的在至少兩個 串之間的潛在近似匹配。
24.一種用于管理用來確定與在記錄中出現(xiàn)的串相關(guān)聯(lián)的近似匹配的檔案的系統(tǒng),該 系統(tǒng)包括數(shù)據(jù)源,存儲記錄; 計算機系統(tǒng),被配置來處理該數(shù)據(jù)源中的記錄以確定一組串代表,所述串代表對應(yīng)于在記錄中出現(xiàn)的串; 對于該組中的至少一些串代表的每個,產(chǎn)生多個接近代表,所述多個接近代表的每個 根據(jù)該串中的至少一些相同字符而產(chǎn)生;以及與所述計算機系統(tǒng)耦接的數(shù)據(jù)存儲器,存儲包括條目的檔案,每個條目表示基于它們 各自的接近代表的在至少兩個串之間的潛在近似匹配。
全文摘要
在一個方面,一般,描述了一種用于管理用來確定與在記錄中出現(xiàn)的串相關(guān)聯(lián)的近似匹配的檔案的方法。該方法包括步驟處理記錄以確定一組串代表,所述串代表對應(yīng)于在記錄中出現(xiàn)的串;為該組中的至少一些串代表的每個產(chǎn)生多個接近代表,所述多個接近代表的每個根據(jù)該串中至少一些相同字符而產(chǎn)生;以及存儲條目在檔案中,每個條目表示基于它們各自的接近代表的在至少兩個串之間的潛在近似匹配。
文檔編號G06F7/00GK101978348SQ200880128089
公開日2011年2月16日 申請日期2008年12月30日 優(yōu)先權(quán)日2008年1月16日
發(fā)明者阿倫·安德森 申請人:起元技術(shù)有限責(zé)任公司