JP2014029713A - データベース内に近似文字列照合を実装するための方法およびシステム - Google Patents

データベース内に近似文字列照合を実装するための方法およびシステム Download PDF

Info

Publication number
JP2014029713A
JP2014029713A JP2013193143A JP2013193143A JP2014029713A JP 2014029713 A JP2014029713 A JP 2014029713A JP 2013193143 A JP2013193143 A JP 2013193143A JP 2013193143 A JP2013193143 A JP 2013193143A JP 2014029713 A JP2014029713 A JP 2014029713A
Authority
JP
Japan
Prior art keywords
string
computer
candidate
character string
database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013193143A
Other languages
English (en)
Other versions
JP5613307B2 (ja
Inventor
J Merz Christopher
クリストファー・ジェイ・マーズ
Mcgeehan Thomas
トーマス・マギーハン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mastercard International Inc
Original Assignee
Mastercard International Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mastercard International Inc filed Critical Mastercard International Inc
Publication of JP2014029713A publication Critical patent/JP2014029713A/ja
Application granted granted Critical
Publication of JP5613307B2 publication Critical patent/JP5613307B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24558Binary matching operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/02Comparing digital values
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

【課題】文字列候補とデータベース内に格納された複数の文字列レコードとの文字列照合を行うためのコンピュータベースの方法を提供する。
【解決手段】a)データベース内の参照文字列集合を識別するステップであって、前記参照文字列は異種文字列集合の最適化探索を使用して識別されるステップと、b)前記参照文字列集合における参照文字列のうちの1つに関するnグラム表現を生成するステップと、c)前記文字列候補のnグラム表現を生成するステップと、d)これらのnグラム表現間の類似性を決定するステップと、e)前記識別された参照文字列集合における残りの参照文字列についてステップb)およびステップd)を反復するステップと、f)前記文字列候補および前記識別される集合における参照文字列のnグラム表現間の決定された前記類似性に基づいてデータベース内の文字列候補に指数を付けるステップと、を含む。
【選択図】図4

Description

本発明は概して加盟店予測システムに関し、特に、銀行カードネットワーク内に含まれるデータベースレコードへの加入に関連してデータベース内に近似文字列照合を実装するための方法およびシステムに関する。
歴史的にみると、消費者取引の支払いに「チャージ」カードを使用することはせいぜい地域的なものであって、クレジット発行銀行と多様な地域加盟店との間の関係性に基づくものであった。支払いカード産業は、発行銀行が協会(例えば、MasterCard)を形成し、そして第三者取引処理会社(例えば、「Merchant Acquirers」)を取り込むことにより、加盟店とカード発行者との銀行関係に関わらず、カード所有者がいずれの加盟店の施設においてもそのチャージカードを広範に使用できるように発展してきた。
例えば、本出願の図1は、カード支払い取引を有効化するための例示的な複数関係者による支払いカード産業システムを示している。図示されているように、加盟店と発行者とは、必ずしも1対1の関係を有している必要はない。さらに、今日のカード支払い産業においては、カード発行者が特定の加盟店、または加盟店グループと特別な、またはカスタマイズされた関係性を有する様々なシナリオが存在する。
2500万件を超える加盟店が、支払いカードの形式を受け入れている。協会の1つは、何千件もの加盟店の名称および加盟店ロケーションの住所情報を本明細書ではデータウェアハウスと称するものに格納されている。加盟店ロケーションのレベルでは、このデータウェアハウスに何百万件ものエントリが存在する。ロケーションエントリのうちの多くは、取引データにおける名称および/または住所の情報の変動に起因して重複していることが知られている。例えば、同じ街路であっても住所が様々に表記される可能性があり、その全てが有効である(例えば、400 South Fourth Street、400 S.Fourth St.、400 South 4th Street、他)。名称もまた、時として幾つかの方式で表示される可能性があり、その全てが有効である。現在のデータベース技術では、類似するフィールド値を有する名称および住所等のエントリを識別する能力が極めて限定的である。従って、重複に近い加盟店の名称および加盟店ロケーションがデータウェアハウスに多く入力されている。
協会のある典型的な処理の一日において、データウェアハウス内に既に格納されている約500万件のロケーションエントリに対して照合チェックを行う必要があるロケーション候補(例えば、新しい加盟店ロケーション)は約15,000件存在する。照合のためのチェックは、少なくとも2つの目的を果たす。その1つとして、類似の名称および/または住所を有するロケーションは、幾つかの実体ではなく1つの実体として識別され得る。さらに、名称または住所があまりに相違していれば、協会は、1つの実体が転居している、または1つの実体が営業を停止していて別の実体に取って代わられていると決定することができる。
この名称およびロケーションの照合問題は、第三者がデータウェアハウスを保持する協会に取引ファイルを、ひいてはデータウェアハウスの強化および/または認証に使用される加盟店の名称および住所(ロケーション)のリストを提供する幾つかの他のコンテキストにおいても生じる。別の第三者の例では、国内の大規模小売業者に関する全てのロケーションのリストが受信される場合もあれば、チェーン店の名称および住所のリストが受信される場合もある。データウェアハウスの保持を担っているチームは、受信されるリストを小売業者またはチェーンの既知のロケーションと照合するタスクを任される。
既存のロケーションと新しいロケーションとの照合をチェックする1つの方法は、文字列照合アルゴリズムを介するものである。従って、文字列照合に利用される可能性のあるソリューションは何れも、データベース(データウェアハウス)システムの枠組み内でスケーラブルであるはずである。近似文字列照合に対しては、第三者ソリューションが存在する。しかしながら、これらのソリューションには、典型的には、ソリューションが法外な費用がかかり、特有のドメインまたはツールであり、もしくはソリューションがデータベース(データウェアハウス)システムの外部に存在することを含むような1つまたはそれ以上の欠点を有している。
従って、データベースシステム内でスケーラブルに加盟店レコードを照合するためにデータウェアハウスチームが名称および住所の近似照合を実行できるようにする技術を開発するという、これまでに未だ果たされていない目的が存在している。所望される結果は、例えば取引履歴データを利用して将来の金融カード取引を予測しかつデータから関連づけられるべきことが存在するかどうかを決定する他のダウンストリームアプリケーションをサポートすることのできる小型で正確なデータウェアハウスであろう。
ある態様においては、文字列候補とデータベース内に格納された複数の文字列レコードとの文字列照合を行うためのコンピュータベースの方法が提供される。本方法は、a)データベース内の参照文字列集合を識別するステップであって、前記参照文字列は異種文字列集合の最適化検索を使用して識別されるステップと、b)前記参照文字列集合における参照文字列のうちの1つに関するnグラム表現を生成するステップと、c)前記文字列候補のnグラム表現を生成するステップと、d)これらのnグラム表現間の類似性を決定するステップと、e)前記識別された参照文字列集合における残りの参照文字列についてステップb)およびステップd)を反復するステップと、f)前記文字列候補および前記識別された集合における参照文字列のnグラム表現間の決定された前記類似性に基づいてデータベース内の文字列候補に指数を付けるステップと、を含む。
別の態様では、最適化探索を使用してデータベース内の異種参照文字列集合を識別し、文字列候補のnグラム表現を生成し、前記集合内の異種参照文字列の各々についてnグラム表現を生成し、前記文字列候補のnグラム表現と前記異種参照文字列集合の各nグラム表現との間の類似性を決定し、かつ前記両nグラム表現において前記決定された類似性に基づいてデータベース内の文字列候補に指数をつけるようにプログラムされたコンピュータが提供される。
さらに別の態様では、文字列候補をデータベース内の参照文字列集合と近似照合させるための、コンピュータベースの方法が提供される。本方法は、文字列候補のnグラム表現と参照文字列集合における各参照文字列のnグラム表現とを個々に比較することと、前記文字列候補に関連づけられる2進指数値を生成することとを含み、前記2進指数値は文字列候補と参照文字列の各々との間の類似性を示す。
日常的なカード支払い取引を有効化するための例示的な複数関係者による支払いカード産業システムを示す略図である。 本発明の一実施形態によるシステムのサーバアーキテクチャの例示的な一実施形態を示す単純化したブロック図である。 本発明の一実施形態によるシステムのサーバアーキテクチャの例示的な一実施形態を示す拡大ブロック図である。 加盟店集合体予測システムのためのハイレベルコンポーネントを示すフローチャートである。 前記加盟店集合体予測システムに関連づけられるスコアリングエンジンのオペレーションを示すフローチャートである。 加盟店ロケーションを分類するアルゴリズムに入力されるデータを示すフローチャート250である。 加盟店ロケーションを分類するアルゴリズムを記述するフローチャートである。 加盟店の集合体および集合を分類システムにおける文書として示す線図である。 データベース内の参照文字列または主要コンポーネントの集合の決定を示すフローチャートである。 文字列候補の類似性メトリックを決定するための参照文字列の集合の使用を示すフローチャートである。
本明細書に記述する実施形態は、データベース内で近似列(例えば、文字列)照合を検索し、一方ではデータベース全体で類似性メトリックを計算する必要のない効率的な方法に関する。例えばコンテンツが若干変わる受信されたロケーションデータの近似文字列照合では、ロケーションの一致を決定することができる。この効率性は、照合されているフィールドの文字列のスペースを網羅する参照文字列の集合に対する各文字列の相対位置(一致の度合い)を捕捉する2進指数を生成することによって達成される。金融取引カードシステムの運用に関連づけられる加盟店の名称およびロケーションのコンテキストで説明しているが、近似文字列照合技術は文字列照合ではなく加盟店の名称および住所情報の情報検索等のより一般的なタスクに適用可能である点に留意することが重要である。一例は、文書照合のための技術をコンピュータシステム内で利用することである。
本明細書に記述しているシステムおよびプロセスの技術的効果は、下記、即ち(a)データベースシステム内で加盟店レコードをスケーラブルに照合するために、名称および住所の近似照合を実行する技術、(b)複数の参照文字列の各々に対する文字列候補の類似性メトリックの決定を行なうこと、(c)照合されているフィールドに関してデータベース内の文字列のスペースを網羅する参照文字列集合に対する各文字列候補の相対位置を捕捉する2進指数を生成すること、および(d)文字列候補と複数の文字列レコードを含むデータベースとの間の近似文字列照合を、レコードのデータベース全体の類似性メトリックを計算する必要なしに検索すること、のうちの少なくとも1つを含む。
ある実施形態では、あるコンピュータプログラムが提供され、前記プログラムはコンピュータ読取り可能媒体上に具現され、かつ管理のためのクライアントユーザインタフェース・フロントエンドおよび一般ユーザの入力およびレポートのためのウェブインタフェースを有する構造化問合せ言語(SQL)を使用する。ある例示的な実施形態では、このシステムはウェブ対応であって、企業体のイントラネット上で実行される。さらに別の実施形態では、このシステムは、認証されたアクセスを有する個人によって企業体のファイアウォールの外側でインターネットを介して十分にアクセスされる。さらなる例示的な実施形態では、このシステムはWindows(登録商標)環境(Windowsは、ワシントン州レドモンド所在のMicrosoft社の登録商標である)において実行されている。このアプリケーションはフレキシブルであり、かつ主要な機能性を危うくすることなく様々な異なる環境で実行されるように設計される。
これらのシステムおよびプロセスは、本明細書に記述される特有の実施形態に限定されない。さらに、各システムおよび各プロセスのコンポーネントは、本明細書に記述されている他のコンポーネントおよびプロセスとは独立して別個に実施され得る。また各コンポーネントおよびプロセスは、他のアッセンブリパッケージおよびプロセスと組み合わせて使用され得る。
背景として、図1は、取引履歴が少なくとも部分的に加盟店集合体予測システムによって利用される日常的なカード支払い取引を有効化するための例示的な複数関係者による支払いカード産業システムを示すダイアグラム20である。本明細書において使用しているように、加盟店集合体とは、加盟店ロケーションのハイレベルなグルーピングを指す。より具体的には、1件の小売業者に関する様々な個々の加盟店ロケーションが集められて(例えば、データベース内で互いにリンクされて)1つの加盟店集合体が形成される。従って、1つの加盟店ロケーションは、1つの加盟店集合体の1つのコンポーネントである。典型的には、加盟店集合体はストアチェーンを指す場合に使用され、ロケーションは、本明細書において詳述するように、取引データのデータベースに格納されている幾つかのフィールド値に基づいて集合化される。
本発明は、MasterCard(登録商標)インターチェンジを使用するクレジットカードの支払いシステム等の支払いカードシステムに関する。MasterCard(登録商標)インターチェンジは、MasterCard International社によって普及されている、MasterCard International Incorporated(登録商標)の会員である金融機関間で金融取引データを交換するための独自仕様の通信標準である。(MasterCardは、ニューヨーク州パーチェス所在のMasterCard International社の登録商標である。)
ある典型的な支払いカードシステムでは、「発行者」と呼ばれる金融機関が消費者にクレジットカード等の支払いカードを発行し、消費者はこの支払いカードを使用して加盟店からの購入に対する支払いを申し出る。支払いカードによる支払いを受け入れるためには、加盟店は通常、金融支払いシステムの一部である金融機関と契約を結ばなければならない。この金融機関は一般に、「加盟店銀行」または「アクワイアリングバンク」または「アクワイアラバンク」と呼ばれる。消費者22が支払いカード(金融取引カードとしても知られる)による購入の支払いを申し出ると、加盟店24は購入高に関して加盟店銀行26から認証を要求する。この要求は電話によって実行される場合もあるが、通常は販売時点端末の使用を介して実行される。販売時点端末は、支払いカード上の磁気ストライプから消費者の口座情報を読み取って加盟店銀行の取引処理コンピュータと電子的に通信する。或いは、加盟店銀行は第三者が取引処理を代行することを認可する場合もある。この場合、販売時点端末はこの第三者と通信するように構成される。このような第三者は通常、「加盟店プロセッサ」または「アクワイアリングプロセッサ」と呼ばれる。
インターチェンジ28を使用して、加盟店銀行または加盟店プロセッサのコンピュータはカード発行者銀行30のコンピュータと通信し、その消費者の口座が堅実な状態にあるかどうか、およびその購入がその消費者の利用可能な信用限度額の範囲内であるかどうかを決定する。これらの決定に基づいて、認証要求は謝絶または受容される。要求が受容されれば、加盟店に認証コードが発行される。
認証要求が受け入れられると、消費者の口座32の利用可能信用限度額が下げられる。通常、MasterCard International Incorporated(登録商標)等の銀行カード協会は、商品が出荷されるまで、またはサービスが届けられるまで加盟店に取引をチャージまたは「獲得」させないという規則を普及させていることに起因して、課金は消費者口座へ即時的には計上されない。加盟店が商品を出荷する、またはサービスを届けると、加盟店は、例えば販売時点端末上への適切なデータ入力処置によってその取引を獲得する。取引が獲得される前に消費者が取引をキャンセルすれば、「無効」が発生する。取引が獲得された後に消費者が商品を返品すれば、「クレジット」が発生する。
取引が獲得された後、この取引は、加盟店と、加盟店銀行と、発行者との間で決済される。決済とは、その取引に関連づけられる加盟店の口座と、加盟店銀行と発行者との間の金融データまたは資金の転送を指す。通常、取引は獲得されて「バッチ」に累積され、バッチはグループとして決済される。このような取引に関連づけられるデータは、本明細書において詳述するように、将来の購入活動を予測する分野において利用される。
金融取引カードまたは支払いカードは、クレジットカード、デビットカードおよびプリペイドカードを指す可能性がある。これらのカードは全て、取引を実行するための支払い方法として使用され得る。本明細書に記述しているように、「金融取引カード」または「支払いカード」という言い回しはクレジットカード、デビットカードおよびプリペイドカード等のカードを含むが、支払い勘定情報を保持している場合がある移動電話、パーソナルデジタルアシスタント(PDA)およびキーフォブ等の他の任意のデバイスも含む。
図2は、本発明の一実施形態による例示的なシステム100を示す単純化されたブロック図である。ある実施形態において、システム100は、例えばカスタマイズされた発行者−加盟店の関係性を実装すると同時に取引に関連づけられる履歴データの処理を実行するために使用される支払いカードシステムである。別の実施形態において、システム100は、支払い取引に適用されるべき処理コードを入力するために口座保持者によって利用されることが可能な支払いカードシステムである。
より具体的には、この例示的な実施形態において、システム100はサーバシステム112と、サーバシステム112へ接続されるクライアントシステム114とも称される複数のクライアントサブシステムとを含む。ある実施形態では、クライアントシステム114はウェブブラウザを含むコンピュータであり、よってサーバシステム112はインターネットを使用してクライアントシステム114へアクセス可能である。クライアントシステム114は、ローカルエリアネットワーク(LAN)または広域ネットワーク(WAN)等のネットワーク、ダイアルイン接続、ケーブルモデムおよび専用高速ISDN回線を含む多くのインタフェースを介してインターネットへ相互接続される。クライアントシステム114は、ウェブベース電話、パーソナルデジタルアシスタント(PDA)または他のウェブベースの接続可能機器を含むインターネットへ相互接続することができる任意のデバイスであり得る。データベースサーバ116は、後に詳述するように、様々な事柄に関する情報を含むデータベース120へ接続される。ある実施形態では、サーバシステム112上に集中データベース120が格納され、クライアントシステム114の1つにおける潜在的ユーザはクライアントシステム114のうちの1つを介してサーバシステム112へログオンすることにより、集中データベース120へアクセスすることができる。ある代替実施形態では、データベース120はサーバシステム112から遠隔に格納され、かつ非集中式であってもよい。
後に論じるように、データベース120は、銀行カードネットワーク上で実行される販売行動の一部として生成される、加盟店、口座名義人または顧客および購入に関するデータを含む取引データを格納する。データベース120はさらに、報酬プログラムおよび特典に関する、異なる報酬プログラムおよび特典に関連づけられる処理コードおよび業務規定を含むデータも含む。
図3は、本発明の一実施形態によるシステム122のサーバアーキテクチャを示す例示的な実施形態の拡大ブロック図である。(図2に示す)システム100のコンピュータに等しいシステム122におけるコンポーネントは、図3では、図2で使用している同じ参照数字を使用して識別されている。システム122は、サーバシステム112と、クライアントシステム114とを含む。サーバシステム112はさらに、データベースサーバ116と、アプリケーションサーバ124と、ウェブサーバ126と、ファックスサーバ128と、ディレクトリサーバ130と、メールサーバ132とを含む。データベースサーバ116およびディレクトリサーバ130へは、ディスク記憶ユニット134が結合される。サーバ116、124、126、128、130および132は、ローカルエリアネットワーク(LAN)136内で結合されている。さらに、LAN136へは、システム監督者のワークステーション138、ユーザのワークステーション140および監督者のワークステーション142も結合される。或いは、ワークステーション138、140および142はインターネットリンクを使用してLAN136へ結合され、またはイントラネットを介して接続される。
各ワークステーション138、140および142は、ウェブブラウザを有するパーソナルコンピュータである。これらのワークステーションにおいて実行される機能は、典型的には個々のワークステーション138、140および142において実行されるものとして示されるが、このような機能は、LAN136へ結合される多くのパーソナルコンピュータのうちの1つにおいて実行され得る。ワークステーション138、140および142は、単にLAN136へのアクセスを有する個人により実行され得る異なるタイプの機能の理解を促進する目的で、別々の機能に関連づけられるものとして示されているに過ぎない。
サーバシステム112は、ISPインターネット接続148を使用して従業員を含む様々な個人144へ、かつ例えば口座名義人、顧客、監査人、他である第三者146へ通信可能式に結合されるように構成される。この例示的な実施形態における通信はインターネットを使用して実行されるように示されているが、他の実施形態では、他の任意の広域ネットワーク(WAN)型通信を利用することができる。即ち、これらのシステムおよびプロセスは、インターネットを使用する実施に限定されない。さらに、かつWAN150ではなく、ローカルエリアネットワーク136がWAN150の代わりに使用される可能性もある。
この例示的な実施形態では、ワークステーション154を有する任意の認証された個人がシステム122にアクセスすることができる。クライアントシステムのうちの少なくとも1つは、リモートロケーションに位置づけられるマネージャワークステーション156を含む。ワークステーション154および156は、ウェブブラウザを有するパーソナルコンピュータである。また、ワークステーション154および156は、サーバシステム112と通信するように構成される。さらに、ファックスサーバ128は、電話回線を使用してクライアントシステム156を含む遠隔に位置づけられたクライアントシステムと通信する。ファックスサーバ128は、他のクライアントシステム138、140および142とも通信するように構成される。
図4は、各コンポーネントが金融取引カードネットワークのオペレーションに関する予測を提供する集団的または集合的な加盟店予測システムの一実施形態のハイレベル機能コンポーネントを示すフローチャート200である。従って、さらに述べるように、これらの予測は1つの予測へと集合される。この予測の集合化は、アンサンブル予測と称されることがある。本明細書に記述しているこれらの実施形態に関する一例は、受信された加盟店ロケーションデータに関する集合予測を含む。図4に関連して紹介しているが、本明細書では、全ての予測アルゴリズムについてより詳細に説明する。
第1のコンポーネントは類似ロケーション予測アルゴリズム202(k類似ロケーション予測アルゴリズムと称される場合がある)であり、これは、所定の加盟店ロケーションに最も類似する「k」件の加盟店ロケーションを検索するように構成される。予測アルゴリズム202はさらに、検索された「k」件の最も類似するロケーションの中から類似する加盟店ロケーションの1グループをモードグループとして分類するように動作可能である。
文書予測アルゴリズムとしての集合ロケーション204は、あらゆるフィールドと、既知の値のスペースにおけるロケーションの各集合体(ハイレベルのデータ分類)に関するフィールド値との関連性を計算するために利用され、結果は文書として格納される。これらの文書からの最も関連のある値は、予測を生成するために利用される。
予測が特定の第三者ブランドに関連づけられる場合には、ロケーション照合システムを含む第三者データ予測アルゴリズム206が利用される。アルゴリズム206への少なくとも1つの入力は第三者から受信される取引レコードを含み、これが予測の生成に利用される。ある実施形態では、この予測は、第三者データソースとのロケーション照合が実行された後に生成される。フローチャート200には、その一実施形態が主としてベンフォードの法則に基づき、かつさらには同一のグルーピングに属する加盟店について観察される、Benfordにより識別される分布から比較的一貫した方法で拡散する傾向に基づく数値サイン予測アルゴリズム208が含まれる。アルゴリズム208から結果的に生じる予測は、各加盟店ロケーションに比較して最も類似する数値分布を有するロケーショングループになる。
ある実施形態において、オラクル(Oracle)に実装されるトップレベル統計モデルおよびスコアリングエンジン210は、アルゴリズム202、204、206および208からの予測を利用して、データベース内に新しく受信および/または格納されるデータ間のグループメンバーシップを決定する。このデータの一例は、加盟店ロケーションデータである。少なくとも1つの実施形態では、かつ本明細書でさらに述べるように、データベース内の加盟店ロケーションデータはロケーションおよび距離に関して、例えば所定のロケーションから所定の距離内にある幾つかの加盟店ロケーションに関して記述される。少なくとも1つの態様において、ロケーションおよび距離は必ずしも地理的なものではなく、むしろデータベースに格納されている加盟店データを利用して計算されるような類似性に基づいている。特定の実施形態では、ロケーションおよび距離は、データベース内のフィールド値およびフィールドのトークン化された値に関するクロス属性加重式ターム出現頻度/文書出現頻度逆数(TF/IDF)の計算によって測定されるような類似性に基づいている。
図5は、スコアリングエンジン210のオペレーションを示すフローチャート220である。具体的には、スコアリングエンジン210は、222において、アルゴリズム202、204、206および208からの加盟店ロケーション予測をオラクルデータマイニング(ODM)アプリケーション224における予測に関するメタデータと共に使用し、個々の予測を取り囲む状況を記述し、次いで226において、集合化された個々の予測から最終予測を生成する。この最終予測は、加盟店ロケーションに関するものであってもよい。またこのアプリケーションは、複数のアルゴリズム202、204、206および208に関する集合予測に関連づけられる信頼スコアの生成も行う。
次に、4つのアルゴリズム202、204、206および208の各々についてさらに詳しく説明する。
k件の類似ロケーション(アルゴリズム202)
図6は、類似性に基づいて、例えばロケーションの類似性に基づいて加盟店ロケーションを分類するアルゴリズム202へ入力されるデータを示すフローチャート250である。チェーンまたはコレクション(例えば、グループ)メンバーシップを導出するコンテキストにおいて有意義であることが知られるロケーションレベルフィールドの集合またはロケーション座標252は、金融取引カードを引き受ける機関のデータベース254から識別される。さらに、日常的な新規/変更ロケーションデータベース256並びにその関連の新規/変更ロケーション座標258からのデータは、後述する加盟店ロケーション分類アルゴリズムへ供給される。
図7は、加盟店ロケーションをグループメンバーシップに分類するために利用されるアルゴリズムのうちの1つ(図4に示すアルゴリズム202)を記述するフローチャート280である。アルゴリズム202は、少なくとも図6のフローチャート250に関して記述されているデータを利用する。具体的には、282において、データベース内の加盟店ロケーションデータが、所定のロケーションから所定の距離内にある幾つか(k件)のロケーションについて検索される。さらに、284において、所定の距離内にあるロケーションが類似性について検索され、任意の新規/変更ロケーションが決定される。286では、特定の特徴スペース(取引データをアルゴリズム202へ入力する起点エリア)内の前記(k件の)ロケーション間で発生する加盟店ロケーションを分類することによって、モード値が決定される。(k件の)ロケーション記録の分類によって結果的に得られる最も出現頻度の高い値は最高の重みを有し、かつモード値と称され、後述するように決定される。このモード値は、288においてアルゴリズム202から予測として返される。
後に詳しく述べるように、フィールド(ロケーション座標252および258)はトークン化され、特徴スペースを網羅するトークン化された全てのフィールド値に関して文書出現頻度の逆数が計算される。ある実施形態では、各ロケーションについて、各フィールド値およびトークン化された各フィールド値の重みメトリックの疎行列がターム出現頻度/文書出現頻度逆数として計算される。予測値は、1つまたはそれ以上のフィールドタイプおよびフィールド値に基づいて所定のロケーションフィールドを他のあらゆるロケーションフィールドに結合することによって計算される。
疎行列はロケーション、ターム値のフィールドタイプおよび重みおよびタームトークンを含み、下記の段落に記述するように生成される。
行列は、全てのフィールド値およびトークン化されたフィールド値の文書出現頻度逆数を含んで生成され、かつある実施形態では9個のディメンションを網羅する。ある特定の実施形態では、これらの9個のディメンションは、加盟店カテゴリコード、インターバンクカード協会(ICA)コード、事業領域、加盟店名、加盟店電話番号、アクワイアリング加盟店ID、ティア加盟店ID、加盟店の正式名称および連邦税IDを含む。これらのディメンションは、全ての加盟店ロケーションレコードに包含される。文書出現頻度の逆数は、レコード数を特定の値を含むレコードの数で除算した商の(ある特定の実施形態では2を底とする)対数である。一例を表1に示す。ある実施形態において、この商は、9個のディメンションの各々について別々に計算される。レコードの数は、加盟店ロケーションの数として計算される。特定のタームを含むレコードの数は、各フィールドタイプ内に各タームを含む加盟店ロケーションの数を計数することによって計算される。
Figure 2014029713
各ロケーション毎に、表2に示すような、クロス属性正規化ターム出現頻度−文書出現頻度二重逆数重みが9個のディメンションを網羅する値およびトークン化された値について計算される。この場合も、9個のディメンションは加盟店カテゴリコード、ICAコード、事業領域、加盟店名、加盟店電話番号、アクワイアリング加盟店ID、ティア加盟店ID、加盟店の正式名称および連邦税IDを含む。
Figure 2014029713
所定のロケーションに関するグループメンバーシップ予測および信頼度は、予測すべきロケーションをフィールドタイプおよびフィールド値上の他の全てのロケーションへ結合し、次いで共通するフィールドタイプおよびフィールド値に関してターム出現頻度−文書出現頻度二重/逆数重みの積を合計することによって計算される。ロケーション結果は次に結果スコアの降順にソートされ、最も高いスコアを有する例えば13件のロケーション間で発生するモードグループが予測として与えられる。この予測の信頼スコアは、上位13件のロケーションのうちで同一のグループ(予測された値)を含んでいたロケーションの数、予測されたグループに属するk件のロケーションの個々の重みおよびこれらの重み間の分散によって表される。
文書予測としての集合ロケーション(アルゴリズム204)
図8は、文書内の集合へ分類系として集合化されたロケーションを示すダイアグラム300である。集合ロケーションの文書を生成するアルゴリズム204(図4に示す)は、インターネット検索エンジンによって一般に使用される文書関連性アルゴリズムに類似するものである。具体的には、加盟店ロケーションの各集合体またはコレクションに対する所定の加盟店ロケーションの関連性は、下記のようにして計算される。
文書302を生成するためには、例えば住所である関連特徴が複数のロケーション304に関するデータベースのデータから抽出されて集合に、例えば集合306にグルーピングされる。説明を目的として、ダイアグラム300は、4つのロケーション集合306、308、310および312を含んでいる。集合312は集合Mとラベリングされているが、これは、特定の実施において、集合の数は図示されている4つより多い、または少ない場合があることを示す。同様に、1集合内のロケーションの数も1から「N」まで変わる可能性がある。
各々が抽出された関連する特徴を含む生成された文書302、320、322および324は、辞書330に集められる。辞書330を利用して疎行列340が形成され、これにより、抽出された特徴を使用して、各集合加盟店グループ毎にターム出現頻度および文書出現頻度逆数の少なくとも一方に基づいて、各フィールド値およびトークン化されたフィールド値の関連性が計算される。
疎行列340内では、ロケーションレベルの重みの行列が、フィールドタイプおよびフィールド値に基づいて加盟店グループの重みの行列に結合される。ある実施形態では、これらの重みの和が関連性エンジン350によって利用され、各ロケーションの各加盟店グループに対する関連性が決定される。関連性が最も高い加盟店グループは、先に述べた予測値として返される。より具体的には、グループ、フィールドタイプおよびタームルールおよびタームトークンの重みから成る疎行列は、次の段落で説明するようにして生成される。
まず、全ての加盟店ロケーションレコードに亘り、本明細書において別段で列挙した9個のディメンション、具体的には加盟店カテゴリコード、ICAコード、事業領域、加盟店名、加盟店電話番号、アクワイアリング加盟店ID、ティア加盟店ID、加盟店の正式名称および連邦税IDを網羅する全てのフィールド値およびトークン化されたフィールド値の文書頻度の逆数を含む行列が生成される。
文書予測アルゴリズムとしての集合ロケーションに関して、かつ表3に示すように、文書頻度の逆数は、比率、即ち特定の値を含むレコードの数で除算されたレコードの数の対数(ある特定の実施形態では2を底とする)である。ある実施形態では、文書頻度の逆数は9個のディメンションの各々について別々に計算される。レコードの数は、加盟店ロケーションの数として計算される。特定のタームを含むレコードの数は、各フィールドタイプ内の各タームを含む加盟店ロケーションの数を計数することによって計算される。
Figure 2014029713
各グループ毎に、かつ各グループに属する全てのロケーション毎に、表4に示すように、加盟店カテゴリコード、ICAコード、事業領域、加盟店名、加盟店電話番号、アクワイアリング加盟店ID、ティア加盟店ID、加盟店の正式名称および連邦税IDである9個のディメンションを網羅する値およびトークン化された値について、クロス属性正規化ターム出現頻度−文書頻度の二重逆数が計算される。
Figure 2014029713
所定のロケーションに関する1つのグループメンバーシップ予測は、先に説明した(k件の)類似ロケーション行列からの行をフィールドタイプおよびフィールド値上のグループ行列に結合し、次いで共通のフィールドタイプおよびフィールド値のターム出現頻度−文書頻度の二重逆数の重みの積を合計することによって計算される。予測されるグループおよび信頼スコアは、最も高い類似性スコア(一致するフィールド値およびトークン化された値の重みの積の和によって与えられる)を有するグループである。結果的に生じるスコアは、この予測の信頼性である。
第三者データ予測とロケーション照合(アルゴリズム206)
アンサンブル予測の第3のコンポーネントは、加盟店ロケーションによって金融取引のデータベースに照合されたことのある第三者提供データを使用するアルゴリズム206(図4に示す)である。ある実施形態では、これらの第三者レコードに、例えば売り手に関するチェーンIDが割り当てられる。これらのチェーンIDは、金融取引カードブランド(例えば、カード発行者)に関連づけられる加盟店ロケーションのグループにリンクされる。従って、予測は単に、第三者レコードがリンクされているチェーンに対応する加盟店データのグルーピングになる。このリンク付けは、次の段落で説明するようにロケーション照合に続いて発生する。
ロケーションが(売り手によって)チェーンへ割り当てられている場合、加盟店ロケーションのデータセットは第三者データプロバイダから抽出される。第三者加盟店ロケーションのスペース内の各チェーンは、対応する適切なグループへ割り当てられる。近似加盟店ロケーション照合エンジンは、第三者加盟店ロケーションレコードの集合をカード発行者により保持される加盟店ロケーションレコードの集合へ結合するために使用される。次に、所定のロケーションに関する予測グループが、カード発行者の加盟店ロケーションレコードに一致した第三者ロケーションレコードに対応するチェーンに相当するグループとして計算される。信頼スコアは、近似加盟店ロケーション照合エンジンによって割り当てられる照合信頼スコアである。
数値サイン予測(アルゴリズム208)
ある実施形態において、加盟店数値サインアルゴリズム208(図4に示す)は、第1の位置における一日当たりの取引額および取引量の数表示分布に関する観察を使用する。具体的に言えば、この分布は、様々な加盟店データが集合される際には幾分か一意になる傾向がある。さらに、この分布は、自然データにおいてベンフォードの法則が提案する分布に合致している傾向がある。実世界の例では、ファーストフードレストランのチェーンは、取引額の最初の数字として特定の数字を繰返し現出させる傾向を示すことがある。このような傾向は少なくとも部分的に、例えば、ファーストフードレストランチェーンのフランチャイズ加盟店がある特定のロケーションまたは住所に存在することを確認するために利用され得る。
このようなアルゴリズムを利用する予測の一例は、各加盟店集合(加盟店データのグルーピング)からの加盟店ロケーションのランダムな10パーセントサンプルである。加盟店集合毎に、第1の位置の取引額および取引量において発生する数字1−9の分布が計算されかつ集約され、この分布と、ベンフォードの法則により識別される分布との間の角距離が計算される。
次には、所定の加盟店ロケーションについて、第1の位置の取引額および取引量において発生する数字1−9の分布が計算され、この分布と、ベンフォードの法則により識別される分布との間の角距離が計算される。加盟店ロケーションの角距離に最も近い角距離を有する加盟店集合は、その所定のロケーションの加盟店集合予測として与えられる。
より具体的には、かつ各グループ毎に、取引計数、取引額および平均取引額の間における、グループ内の全てのロケーションを網羅する各数字(即ち、1、2、3、4、5、6、7、8、9)の出現頻度の分布が計算され、全体に対する比率として表される。前記分布は次に、表に格納される。表5は、これを表したものである。
Figure 2014029713
各グループに関する分布が計算されると、各グループに関する数値サインが、このグループの分布ベクトルとベンフォードの法則が提案する分布ベクトルとのドット積を計算することによって決定される。このドット積(発散角度)は、各グループの分布ベクトルの平方和によって除算される。ベンフォードの法則において識別される分布が計算され、表に格納される。表6は、これを表したものである。
Figure 2014029713
各ロケーション毎に、所定のロケーションに関して1か月の期間内に観察された取引計数、取引額および平均取引額を網羅する各数字(1、2、3、4、5、6、7、8、9)の出現頻度の分布が計算され、全体に対する比率として表される。これらの分布は次に表に格納され、表7はこれを表す。
Figure 2014029713
各ロケーションに関する分布が計算されると、各ロケーションに関する数値サインが、このロケーションの分布ベクトルとベンフォードの法則が提案する分布ベクトルとのドット積を計算することによって決定される。このドット積(発散角度)は、各ロケーションの分布ベクトルの平方和によって除算され、かつベンフォードの法則において識別される分布が計算され、表に格納される。表8は、これを表したものである。
Figure 2014029713
次に、所定のロケーションに関するグループメンバーシップ予測が、この所定のロケーションの数値サインに最も近い数値サインを有するグループを見つけることによって計算され、信頼スコアがこれらの2サイン間の距離として計算される。
統計モデルとスコアリング
図5に関連して先に述べたように、4つの予測アルゴリズム(202、204、206および208)からの各予測値は、222において、各予測の環境を記述する豊富なメタデータ集合と共に集められ、Oracleデータマイニング(ODM)アプリケーション224へ入力される。ODMアプリケーション224は、ある実施形態では、ラベリングされたトレーニングデータを使用して構築される統計モデル(決定木)を利用して各予測値へ信頼スコアを割り当てる。次には、最も高い信頼スコアを有する予測値が各加盟店ロケーションの最終的な集合値予測として提供される。
近似文字列照合
先に述べたように、アンサンブル予測の1つのコンポーネントは、例えば金融取引カード提携加盟店ロケーションのデータベースへ照合されているロケーションデータを使用するアルゴリズムである。幾つかのデータは、第三者ソースによって提供されてもよい。後述の実施形態は、データベース内のデータについて近似列(例えば、文字列)照合を検索するための方法およびシステムに関する。この実施形態では、文字列照合を利用して、例えばあるロケーションを表す文字列がそのデータベースにおいて別の文字列によって表されているかどうかが決定される。このようなアルゴリズムは、取引レコードにおいて発生する変形に起因して、特にこれらのレコードは加盟店の名称およびロケーションに関連することから、様々な実施形態において適切である。
近似文字列照合のデータベースシステムは、正確に一致する、または共通のフィールド値等の共通の結合キーがデータ内に存在しない場合に、1つのレコード集合を別のレコード集合へ結合するように動作可能である。おそらくは、これらのレコード集合には幾分かの類似性が存在する。
典型的には、2つのデータセットが1つのデータベース内で結合されると、これらは1つまたは複数のフィールドで正確な値を共有する。データ内の変形に起因して2つのデータソース(レコード集合)によって正確なフィールド値が共有されない場合、個々のデータソースからのデータセットを結合する伝統的な方法は、2つの値を取って、そこでその類似性を計算してリターンするという機能を実装することである。データセットを結合する基準として、このタイプの機能の使用することは、結合されるべき各データセット内のレコードの数の積に等しい反復回数を必要とする。
一例として、データセットA内に10,000件のレコードが存在しかつデータセットB内に500,000件のレコードが存在すれば、類似性計算機能はデータセットAをデータセットBへ結合するために50億回呼び出されることになる。さらに、このような機能が呼び出される場合、指数または機能ベース指数はデータベースオプティマイザによって使用されなくなる。このタイプのデータセットは非常に非効率的であって、自明でないデータ量を有するデータセットの結合に使用するにはあまりに処理が集約的に過ぎる。
文字列照合技術は、様々な実施形態において下記のコンポーネントのうちの1つまたはそれ以上を利用して実装されるものが開発されている。具体的には、主成分因子分析(PCFA)を使用して生成される結合基準において参照文字列集合が使用される。PCFAは、既知の値のスペース内に存在する極めて異種である文字列集合を識別しようとするものであり、前記文字列集合は参照文字列として使用される。
別のコンポーネントは、リレーショナルデータベース管理システム(RDBMS)におけるパフォーマンスを最大化するために純粋なASCII構造化問合せ言語(SQL)に実装されるnグラム頻度類似性計算である。さらに、RDBMSには、nグラム頻度類似性計算を使用して2進キーを形成するためのプロセスも実装される。2進キーは、後述するように、PCFAにおいて識別された参照文字列の各々に対する所定のレコードの類似性を示す。
ある実施形態では、全てのnグラムの文書頻度逆数(IDF)を含むテーブルおよびクロス属性加重ターム出現頻度/文書頻度逆数(TF/IDF)計算のSQL実装であるとして、RDBMS内でデータ駆動標準化機能セットが実装される。
文字列照合技術の一実施形態は、同じ2進キー値を共有するレコードを結合し、次いで全ての一致するnグラムのTF/IDFの重みの積を合計することによってこれらを関連性毎にソートするパラメータ化された分析SQLクエリを含む。そのレコードが所定のしきい値より上でi番目の参照文字列に一致すれば、2進キーにおけるi番目のビットは論理1に設定される。
RDBMS内では、結合により生じる各照合へ信頼スコアを割り当てるように、プロセスが実装され、同時に、データセットの結合において取り込まれるデータを格納するRDBMSデータモデルも包含される。
データセット結合問題の1つのシンプルなものとしては、1つの名称(または住所)を、Oracleテーブル等のデータベース内に含まれる名称(または住所)のより大きい集合に対して照合することである。このnグラム照合の一例を表9に示す。
Figure 2014029713
データセット結合のソリューションに必要とされるエレメントは、文字列間の任意の類似性を測定するためのメトリックである。nグラムは単にn文字より成る一意の文字列であり、nグラム照合は、nグラム間の照合を決定するためのプロセスである。nが2に等しい事例では、表1における住所候補は下記の各2グラム、即ち「10」、「00」、「01」、「14」、「4<スペース>」、「<スペース>S」、「S<スペース>」、「<スペース>C」、「Cl」、「la」、...、「Rd」から成る。
表10は、nグラム照合アルゴリズムを要約したものである。これは、文字列候補(例えば、Candidate_array)のnグラム頻度ベクトルを決定することと、照合データベース候補(例えば、Candidate_Match_Array)における各エントリのnグラム頻度ベクトルを決定することと、前記Candidate_arrayと前記Candidate_Match_Arrayとの間の類似性の度合いを測定することと、特定のしきい値を超える照合候補を保持することを含む。例えば、「JoJo’s Diner」は下表のようになる。
Figure 2014029713
表11、表12および表13は、nグラム照合メトリックの例である。「内積」はアレイのドット積であり、「大きさ」は平方和の平方根であり、「(角度の)余弦」は大きさの積で除算されたドット積であり、角度は大きさの積で除算されたドット積の逆余弦である。
Figure 2014029713
Figure 2014029713
Figure 2014029713
参照文字列
上記表および記述は、文字列を量的に表現しかつこれらの間の類似性を測定する能力を示している。この時点で、各レコードの指数は、参照文字列の小集合に対するその相対位置に基づいて構築され得る。
参照文字列を選ぶことにより、参照文字列の各々に対する新しいレコードの相対位置を計算することができる。さらに、データベース内のあらゆるレコードは、参照文字列に対するその固有の予め計算された位置を有する。従って、新しいレコードとデータベース全体との間の完全な類似性メトリックを計算する必要なしに、同じ近接性で指数が付けられたレコードを検索することによって近似照合を見つけることができる。参照文字列を選択する1つの目的は、異種であるレコードを選ぶことであり、こうしてより良い見通しが得られる。次の段落では、参照文字列選択の1つの手法を概説する。
参照文字列は、指数付けされているデータベースから文字列のサンプルをとることによって識別される。サンプル内の各文字列のnグラム表現は、頻度のベクトルを生成することによって生成される。但し、ベクトルのi番目の成分は、その文字列においてnグラムが発生した回数を含む。類似性行列は、余弦類似性メトリックを使用してあらゆるサンプル文字列ペア間の類似性を測定することにより生成される。
類似性データのコレクションにおいて異種成分を見つけるための1つの技術が、主成分分析である。主成分分析は類似性行列に対して実行され、最初のk個の主成分が保持される。各成分上の最大負荷を有するサンプル文字列が保持され、参照文字列集合が形成される。
2進指数および情報検索
指数を生成できるように類似する文字列をグループに纏め、近似文字列照合の間に高速検索候補を提供するために、潜在的な各レコード候補および各比較レコードがnグラム頻度類似性SQL計算を使用して参照文字列の各々と比較される。
類似性計算が予め定義されたしきい値より高いスコアを産生すれば、参照文字列に対応する2進キーの位置に値1が割り当てられる。スコアがしきい値より低ければ、対応するキー位置に0が割り当てられる。
NGRAM類似性計算
所定の2つの文字列内に存在する全ての一意のN−GRAMSの出現頻度を含む二次元ベクトルを形成するSQLクエリが開発されている。このクエリは、次に、各頻度積の合計を頻度ベクトルの各ディメンションの大きさの平方で割って、正規化された類似性メトリックに到達する。
このような計算は、次の例、即ち比較文字列Aが「MASTERCARD」であり、かつ比較文字列Bが「MASTERCHARGE」である例によって表される。下表、表14は、2つの比較文字列内に存在するあらゆる一意のnグラムの出現頻度を含む二次元ベクトルである。
Figure 2014029713
文字列Aの大きさは、ディメンションAにおける各頻度値の平方和の平方根として計算され、具体的には、文字列Aの大きさは3.0である。文字列Bの大きさは、ディメンションBにおける各頻度値の平方和の平方根として計算され、具体的には、大きさBは3.3166247903554である。ベクトルのドット積が計算され、この例の場合、ドット積は7.0(AおよびBの双方が値1を有する表エントリの数)である。類似性はドット積/(大きさAx大きさB)として、即ちこの例示的な例では0.703526470681448として計算される。
2進キー値の形成
類似性計算が予め定義されたしきい値より高いスコアを産生すれば、参照文字列に対応する2進キーの位置に値1が割り当てられる。スコアがしきい値より低ければ、対応するキー位置に0が割り当てられる。ある実施形態において、2進キー位置を決定するためのプロセスは、SQLおよびPL/SQLの組合せを使用して実装される。このアルゴリズムの実装は、アルゴリズム内の以前の反復においてその正確な値に関する2進キー値が計算されていれば所定の文字列に2進キー値を自動的に割り当てるように、分析的構造化問合せ言語を使用することにより、必要とされる文字列比較計算の数を最小化する。この最適化は、SQLで達成される。
一意の識別子および各2進キー値は、RDBMS内の仕切られた索引構成表(IOT)に格納される。一意のデータセットは各々単一のパーティション内に格納され、2つのデータセットが同じパーティションを共有することはない。ロードパフォーマンスを最大化するために、この表への各データセットのロードは、create table as select(CTAS)およびパーティション交換を使用して達成される。各パーティション内のデータは、結合パフォーマンスを最大化するために2進キー値順に格納される。
データの標準化
類似性比較および2進キー値分布の精度を高めるために、ある実施形態では、データが既知の略語および同義語について標準化される。このようなデータ標準化を達成するために、様々なフィールドタイプに関して全ての既知の変形および同義語をその個々の標準表現と共に含むテーブルが生成される。次に、アルゴリズムは各データエレメントをトークン化しかつ任意の既知の変形または同義語をその標準形式にマップするように作動する。
IDFテーブル
近似照合結合に関与するフィールド内に存在する全てのnグラムについて加重TF/IDFを計算する際のパフォーマンスをより高速にするために、レコード候補のスペース内に存在する全ての2文字nグラムの文書頻度逆数を含むテーブルが構築される。スペース内の全てのnグラムの形成はPL/SQLを介して達成されるが、IDFの計算はASCII SQLで行われる。IDFテーブルは、各データカテゴリの可能なnグラムの各々についてIDF値を格納する。このテーブルは、結合パフォーマンスを最大化するために、データカテゴリおよびnグラムに従って索引構成される。
クロス属性加重TF/IDF
近似照合結合に関与するフィールド毎に、所定のレコード内に存在する2文字nグラムの各々へ重みまたは重大さを割り当てるために、各nグラム値についてクロス属性加重ターム出現頻度/文書頻度逆数TF/IDF値が計算される。nグラムタームおよび所定の各レコードおよびフィールド内でのその個々の出現頻度は、入力としてREF_CURSORをとるパイプライン表関数を使用して計算される。この計算は、伝統的な加重TF/IDF計算とは僅かに異なり、各フィールド内の各nグラムについてTF/IDFを計算した後に、各フィールド内の全てのnグラムの重みを同じレコードの他のフィールド内に存在するnグラムの全体の重みに従って上下に調整する。この技術により、各フィールド内の値の全体的な重大さに従った照合nグラムの相対的重みに対するレコードレベルの動的調整が生じる。
先に述べたように、所定のデータセット内の各レコードの一意の識別子は、結合パフォーマンスを最大化するために、そのnグラムタームおよび計算された重みスコアと共に仕切られた索引構成表(IOT)に格納される。このテーブルは、一意の識別子、データカテゴリおよびnグラムターム値に従って編成される。一意のデータセットは各々、テーブル内の別々のパーティション内に格納される。各パーティションは、ロードパフォーマンスを最大化するためにcreate table as selectおよびパーティション交換を使用してロードされる。
結合クエリ
2進キーおよびクロス属性TF/IDF計算がRDBMSへロードされると、分析的な結合クエリを使用して全ての照合レコード候補が検索され、かつ比較レコードに照らしたその関連性または照合品質に従ってソートされる。これは、まず一致する2進キー値を有するレコードを結合し、次に結果的に生じるレコード候補のnグラム値を結合しかつこれらの重みの積の合計を計算することによって達成される。
信頼スコアの割当て
結合クエリの結果は、各入力およびレコード候補に対して超低レベル比較を実行し、次いで先に述べたOracleデータマイニングアプリケーションに使用するための統計モデルを使用して信頼スコアを割り当てるRDBMS内に実装された関数を介して送信される。
近似文字列照合に関連づけられる上述のプロセスを、さらに図9および図10に示す。図9および図10は各々、参照文字列集合の決定を示し、かつ文字列候補の類似性メトリックを決定するための参照文字列集合の利用を示すフローチャート400および450である。各成分上の最大ローディングを有するサンプル文字列は、参照文字列集合を形成するために保持される。これらのサンプル文字列は、相関目的で主成分を表している。類似性メトリックは、文字列候補と決定された参照文字列集合内の個々の文字列との比較における幾つかの一致するnグラムに基づいている。
具体的には、かつ図9を参照すると、データベースは潜在的照合候補データのスペース402を含む。このスペース402は、本明細書において文字列のデータベース(即ち、加盟店の名称および/またはロケーションデータ)と称することがある。本明細書で記述しているように、404において、照合フィールドまたはデータベースレコードのランダムなサンプルが、例えば異種文字列集合の最適化探索に基づいて生成される。406において、類似性行列が計算され、かつ408において主成分因子分析が適用され、その結果主成分410が生じ、その各々は対応する参照文字列を参照する。この参照文字列集合は、この集合が具体的には異種データを包含するように生成されることから、文字列候補に対する比較に有益である。
次に、図10を参照すると、452において、文字列候補を受信した時点で、各文字列候補と各主成分に関連づけられる参照文字列との間の類似性が計算される。本明細書で記述しているように、このような比較はnグラム照合アルゴリズムに基づく場合もあり、よって、454において、文字列候補の各参照文字列およびその対応する主成分に対する類似性を示す2進キーが生成される。456では、高速かつ効率的な近似文字列照合のために、レコード(参照文字列)がその個々の2進キーレコードの比較に基づいて文字列候補へ結合される。このようなプロセスは、ユーザが参照文字列(加盟店の名称および/またはロケーションデータを含んでもよい)と加盟店の名称および/またはロケーションデータを表す場合もある文字列候補との間の高確率照合を迅速に検索することを可能にする。458において、照合されるべき各データベースレコードの2進キーを生成することにより、460では、参照文字列の文字列候補に対する照合ファイルを生成することができる。
以上、様々な特有の実施形態に関して本発明を説明したが、当業者には、本発明をクレームの精神および範囲内にある変形によって実施し得ることが認識されるであろう。

Claims (15)

  1. 文字列候補とデータベース内に格納された複数の文字列レコードとの文字列照合を行うためのコンピュータベースの方法であって、
    異種参照文字列集合を生成するように最適化探索を使用して、前記データベース内に格納された前記複数の文字列レコードにおける異種文字列集合を、コンピュータを用いて識別するステップと、
    前記文字列候補における全ての一意のnグラムの出現頻度と、前記参照文字列における全ての一意のnグラムの出現頻度とを含む二次元ベクトルを、前記コンピュータを用いて計算するステップと、
    前記二次元ベクトルに基づいて、前記文字列候補の前記参照文字列に対する類似性メトリックを、前記コンピュータを用いて計算するステップと、
    前記文字列候補に関連づけられるベクトルの大きさを大きさAとして、前記コンピュータを用いて決定するステップと、
    前記参照文字列に関連づけられるベクトルの大きさを大きさBとして、前記コンピュータを用いて決定するステップと、
    前記2つのベクトル間のドット積を、前記コンピュータを用いて計算するステップと、
    前記類似性メトリックを(ドット積/(大きさAx大きさB))に従って、前記コンピュータを用いて計算するステップと、
    前記文字列レコードにおいて選択された前記文字列の1つのnグラム表現と各々の前記異種参照文字列集合のnグラム表現との比較に基づいて前記データベース内に格納された各文字列レコードに関する2進指数を、前記コンピュータを用いて生成するステップであって、前記2進指数のi番目のビットが、前記i番目の参照文字列と前記文字列候補の一致の度合いを表すステップと、
    文字列候補レコードにおけるそれぞれの文字列候補の1つに関する2進指数を、前記コンピュータを用いて生成するステップと、
    2進指数が前記文字列候補の2進指数と一致する前記データベース内に格納された各文字列レコードの場合のみ、選択された文字列が文字列候補レコードのそれぞれの前記文字列と一致する各文字列レコードを、前記コンピュータを用いて見つけ出すステップと、および
    前記一致に基づいて、前記データベース内の前記文字列候補レコードに、前記コンピュータを用いて指数を付けるステップと、を含むコンピュータベースの方法。
  2. 前記文字列候補の類似性メトリックを計算するステップは、前記コンピュータにより、構造化問合せ言語の計算を使用して前記二次元ベクトルのコンテンツを比較するステップを含む、請求項1記載のコンピュータベースの方法。
  3. 類似性メトリックを計算するステップは、nグラム頻度類似性計算をASCII構造化問合せ言語で、前記コンピュータを用いて、実装するステップを含む、請求項1記載のコンピュータベースの方法。
  4. 前記コンピュータにより、前記nグラム頻度類似性計算を使用して、前記文字列候補と前記識別された参照文字列の各々との間の類似性を示す2進キーを形成するステップをさらに含む、請求項3記載のコンピュータベースの方法。
  5. 前記データベース内の前記文字列候補レコードに指数を付けるステップは、
    nグラム頻度類似性計算を、前記コンピュータを用いて実装するステップと、
    前記計算を使用して、前記文字列候補に関連づけられるレコードと前記識別された参照文字列の各々に関連づけられるレコードとの間の類似性を示す2進キーを、前記コンピュータを用いて形成するステップと、
    同じ2進キー値を共有するレコードを、前記コンピュータを用いて結合するステップと、
    前記結合されたレコードを、全ての一致するnグラムの頻度重みの積を合計することによって関連性毎に、前記コンピュータを用いてソートするステップと、を含む、請求項1記載のコンピュータベースの方法。
  6. 前記文字列候補に指数を付けるステップは、前記参照文字列集合と比較した前記文字列候補の類似性メトリックの行列を、前記コンピュータを用いて生成するステップを含む、請求項1記載のコンピュータベースの方法。
  7. 前記文字列候補レコードに指数を付けるステップは、
    前記類似性メトリックが予め定義されたしきい値を上回れば、前記参照文字列に対応する2進キーに値1を、前記コンピュータを用いて割り当てるステップと、
    前記類似性メトリックが予め定義されたしきい値を下回れば、前記参照文字列に対応する2進キーに値0を、前記コンピュータを用いて割り当てるステップと、を含む、請求項1記載のコンピュータベースの方法。
  8. 前記データベース内に格納された前記複数の文字列レコードにおける異種文字列集合を識別するステップは、主成分因子分析を使用して異種文字列レコード集合を、前記コンピュータにより識別するステップを含む、請求項1記載のコンピュータベースの方法。
  9. コンピュータであって、
    最適化探索を利用する、データベース内の異種参照文字列集合を識別し、
    前記参照文字列の各々について、前記文字列候補における全ての一意のnグラムおよび前記参照文字列のうちの1つにおける全ての一意のnグラムの出現頻度を含む二次元ベクトルを計算し、
    前記二次元ベクトルに基づいて、前記文字列候補の前記参照文字列に対する類似性メトリックを計算し、
    前記文字列候補に関連づけられるベクトルの大きさを大きさAとして決定し、
    前記参照文字列に関連づけられるベクトルの大きさを大きさBとして決定し、
    前記2つのベクトル間のドット積を計算し、
    前記類似性メトリックを(ドット積/(大きさAx大きさB))に従って計算し、
    前記文字列レコードにおいて選択された前記文字列の1つのnグラム表現と各々の前記異種参照文字列集合のnグラム表現との比較に基づいて前記データベース内に格納された各文字列レコードに関する2進指数を生成し、前記2進指数のi番目のビットが、前記i番目の参照文字列と前記文字列候補の一致の度合いを表し、
    文字列候補レコードにおけるそれぞれの1つの文字列候補に関する2進指数を生成し、
    2進指数が前記文字列候補の2進指数と一致する前記データベース内に格納された各文字列レコードの場合のみ、選択された文字列が文字列候補列レコードのそれぞれの前記文字列と一致する各文字列レコードを見つけ出し、および
    前記一致に基づいて、前記データベース内の前記文字列候補レコードに指数を付けるようにプログラムされるコンピュータ。
  10. 前記類似性メトリックを計算するために、前記コンピュータは、構造化問合せ言語計算
    を利用して前記二次元ベクトルのコンテンツを比較するようにプログラムされる、請求項
    9記載のコンピュータ。
  11. 前記コンピュータは、
    前記決定された類似性が予め定義されたしきい値を上回れば、前記参照文字列に対応する2進キーに値1を割り当て、かつ、
    前記決定された類似性が予め定義されたしきい値を下回れば、前記参照文字列に対応する2進キーに値0を割り当てるようにプログラムされる、請求項9記載のコンピュータ。
  12. 前記コンピュータは、主成分因子分析を使用して前記データベース内の異種参照文字列集合を識別するようにプログラムされる、請求項9記載のコンピュータ。
  13. 文字列候補とデータベース内に格納された参照文字列集合との近似照合を行うためのコンピュータベースの方法であって、
    異種参照文字列集合を生成するように最適化探索を使用する前記データベース内に格納された前記複数の文字列レコードにおける異種文字列集合を、コンピュータを用いて識別するステップと、
    前記文字列レコードにおいて選択された前記文字列の1つのnグラム表現と各々の前記異種参照文字列集合のnグラム表現との比較に基づいて前記データベース内に格納された各文字列レコードに関する2進指数を、前記コンピュータを用いて生成するステップであって、前記2進指数のi番目のビットが、前記i番目の参照文字列と前記文字列候補の一致の度合いを表すステップと、
    文字列候補レコードにおけるそれぞれの文字列候補の1つに関する2進指数を、前記コンピュータを用いて生成するステップと、
    前記コンピュータを用いて、
    a)前記文字列候補の前記nグラム表現に関連づけられるベクトルの大きさ(A)を決定するステップと、
    b)前記参照文字列のうちの1つの前記nグラム表現に関連づけられるベクトルの大きさ(B)を決定するステップと、
    c)前記2つのベクトル間のドット積を計算するステップと、
    d)前記参照文字列に対する前記文字列候補の類似性メトリックを(ドット積/(大きさAx大きさB))に従って計算するステップと、
    各参照文字列についてステップb)、ステップc)およびステップd)を反復するステップと、
    により前記nグラム表現を比較するように構造化問合せ言語のnグラム頻度類似性計算を使用して、前記文字列候補の前記2進指数を前記参照文字列集合内の各参照文字列の前記2進指数と個々に比較するステップと、を含むコンピュータベースの方法。
  14. 前記文字列候補は加盟店の名称および加盟店の住所のうちの一方であり、かつ前記データベース内の前記参照文字列集合は各々加盟店の名称および加盟店の住所のより大きい集合である、請求項13記載のコンピュータベースの方法。
  15. 同じ2進指数値を共有するレコードを、コンピュータを用いて結合するステップと、
    前記結合されたレコードを、全ての一致するnグラム表現の頻度重みの積を合計することによって関連性毎に、前記コンピュータを用いてソートするステップと、をさらに含む、請求項13記載のコンピュータベースの方法。
JP2013193143A 2007-12-31 2013-09-18 データベース内に近似文字列照合を実装するための方法およびシステム Expired - Fee Related JP5613307B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/967,494 US7925652B2 (en) 2007-12-31 2007-12-31 Methods and systems for implementing approximate string matching within a database
US11/967,494 2007-12-31

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2010541468A Division JP5372956B2 (ja) 2007-12-31 2008-12-04 データベース内に近似文字列照合を実装するための方法およびシステム

Publications (2)

Publication Number Publication Date
JP2014029713A true JP2014029713A (ja) 2014-02-13
JP5613307B2 JP5613307B2 (ja) 2014-10-22

Family

ID=40799785

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2010541468A Expired - Fee Related JP5372956B2 (ja) 2007-12-31 2008-12-04 データベース内に近似文字列照合を実装するための方法およびシステム
JP2013193143A Expired - Fee Related JP5613307B2 (ja) 2007-12-31 2013-09-18 データベース内に近似文字列照合を実装するための方法およびシステム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2010541468A Expired - Fee Related JP5372956B2 (ja) 2007-12-31 2008-12-04 データベース内に近似文字列照合を実装するための方法およびシステム

Country Status (11)

Country Link
US (2) US7925652B2 (ja)
EP (1) EP2240847A4 (ja)
JP (2) JP5372956B2 (ja)
KR (1) KR101462707B1 (ja)
AU (1) AU2008343493B2 (ja)
BR (1) BRPI0821428A2 (ja)
CA (1) CA2710753C (ja)
MX (1) MX2010007274A (ja)
RU (2) RU2487394C2 (ja)
SG (1) SG186687A1 (ja)
WO (1) WO2009085555A2 (ja)

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9041744B2 (en) 2005-07-14 2015-05-26 Telecommunication Systems, Inc. Tiled map display on a wireless device
US7925652B2 (en) * 2007-12-31 2011-04-12 Mastercard International Incorporated Methods and systems for implementing approximate string matching within a database
US8738486B2 (en) * 2007-12-31 2014-05-27 Mastercard International Incorporated Methods and apparatus for implementing an ensemble merchant prediction system
US8666976B2 (en) 2007-12-31 2014-03-04 Mastercard International Incorporated Methods and systems for implementing approximate string matching within a database
US8775441B2 (en) * 2008-01-16 2014-07-08 Ab Initio Technology Llc Managing an archive for approximate string matching
US10269024B2 (en) * 2008-02-08 2019-04-23 Outbrain Inc. Systems and methods for identifying and measuring trends in consumer content demand within vertically associated websites and related content
US8191766B2 (en) * 2008-03-04 2012-06-05 Mastercard International Incorporated Methods and systems for managing merchant identifiers
EP2277105A4 (en) * 2008-04-07 2012-09-19 Telecomm Systems Inc PROXIMITY SEARCH FOR POINT OF INTEREST NAMES COMBINING UNEXPECTED CHAIN CORRESPONDENCE WITH INCREASING RAY SEARCH
US8266168B2 (en) * 2008-04-24 2012-09-11 Lexisnexis Risk & Information Analytics Group Inc. Database systems and methods for linking records and entity representations with sufficiently high confidence
US8321958B1 (en) 2008-07-30 2012-11-27 Next It Corporation Detecting presence of a subject string in a target string and security event qualification based on prior behavior by an end user of a computer system
US8594627B2 (en) 2008-10-06 2013-11-26 Telecommunications Systems, Inc. Remotely provisioned wirelessly proxy
US8396658B2 (en) * 2008-10-06 2013-03-12 Telecommunication Systems, Inc. Probabilistic reverse geocoding
CN107273977A (zh) 2008-10-23 2017-10-20 起元技术有限责任公司 用于标识匹配的方法、系统和机器可读硬件存储装置
US9135396B1 (en) * 2008-12-22 2015-09-15 Amazon Technologies, Inc. Method and system for determining sets of variant items
US8484148B2 (en) * 2009-05-28 2013-07-09 Microsoft Corporation Predicting whether strings identify a same subject
US8271499B2 (en) * 2009-06-10 2012-09-18 At&T Intellectual Property I, L.P. Incremental maintenance of inverted indexes for approximate string matching
US20110040604A1 (en) * 2009-08-13 2011-02-17 Vertical Acuity, Inc. Systems and Methods for Providing Targeted Content
WO2011044578A1 (en) * 2009-10-11 2011-04-14 Patrick Walsh Method and system for performing classified document research
US20110161091A1 (en) * 2009-12-24 2011-06-30 Vertical Acuity, Inc. Systems and Methods for Connecting Entities Through Content
JP2011243148A (ja) * 2010-05-21 2011-12-01 Sony Corp 情報処理装置、情報処理方法及びプログラム
US20110314010A1 (en) * 2010-06-17 2011-12-22 Microsoft Corporation Keyword to query predicate maps for query translation
US8463797B2 (en) * 2010-07-20 2013-06-11 Barracuda Networks Inc. Method for measuring similarity of diverse binary objects comprising bit patterns
US8805095B2 (en) * 2010-12-03 2014-08-12 International Business Machines Corporation Analysing character strings
US11295394B2 (en) * 2010-12-07 2022-04-05 Groupon, Inc. Method and system for credit card holder identification
US9418385B1 (en) * 2011-01-24 2016-08-16 Intuit Inc. Assembling a tax-information data structure
WO2013010130A1 (en) * 2011-07-13 2013-01-17 Mastercard International, Inc. Instantaneous merchant information retrieval for financial transactions
US20130117074A1 (en) * 2011-11-09 2013-05-09 Infosys Limited Method and system to measure operational efficiency levels of business functions
CN108388632B (zh) 2011-11-15 2021-11-19 起元科技有限公司 数据分群、分段、以及并行化
US9298693B2 (en) 2011-12-16 2016-03-29 Microsoft Technology Licensing, Llc Rule-based generation of candidate string transformations
US8924446B2 (en) 2011-12-29 2014-12-30 Verisign, Inc. Compression of small strings
US20130311362A1 (en) 2012-04-26 2013-11-21 Mastercard International Incorporated Systems and methods for verifying payee information in electronic payments
US8732183B2 (en) * 2012-05-29 2014-05-20 Sap Portals Israel Ltd Comparing strings of characters
US20140006440A1 (en) * 2012-07-02 2014-01-02 Andrea G. FORTE Method and apparatus for searching for software applications
CN103530299B (zh) * 2012-07-05 2017-04-12 阿里巴巴集团控股有限公司 一种搜索结果的生成方法及装置
US8719236B2 (en) * 2012-08-23 2014-05-06 Microsoft Corporation Selecting candidate rows for deduplication
US8630953B1 (en) 2012-09-14 2014-01-14 Mastercard International Incorporated Methods and systems for creating a transaction lifecycle for a payment card transaction
US20140082021A1 (en) * 2012-09-18 2014-03-20 Geoffrey R. Hendrey Hierarchical ordering of strings
US20140129285A1 (en) * 2012-11-07 2014-05-08 Xerox Corporation Systems and methods for efficient workflow similarity detection
US10157418B1 (en) * 2012-12-07 2018-12-18 Capital One Financial Services Systems and computer-implemented processes for occupational risk assessment
US20140214886A1 (en) 2013-01-29 2014-07-31 ParElastic Corporation Adaptive multi-client saas database
US9286618B2 (en) 2013-03-08 2016-03-15 Mastercard International Incorporated Recognizing and combining redundant merchant designations in a transaction database
US9021450B2 (en) 2013-03-11 2015-04-28 International Business Machines Corporation Scalable and precise string analysis using index-sensitive static string abstractions
US10140664B2 (en) * 2013-03-14 2018-11-27 Palantir Technologies Inc. Resolving similar entities from a transaction database
US10262358B2 (en) 2013-05-02 2019-04-16 Mastercard International Incorporated Merchant continuity correction using cardholder loyalty information
US20150006358A1 (en) * 2013-07-01 2015-01-01 Mastercard International Incorporated Merchant aggregation through cardholder brand loyalty
US9830325B1 (en) * 2013-09-11 2017-11-28 Intuit Inc. Determining a likelihood that two entities are the same
US8938686B1 (en) 2013-10-03 2015-01-20 Palantir Technologies Inc. Systems and methods for analyzing performance of an entity
US10521866B2 (en) 2013-10-15 2019-12-31 Mastercard International Incorporated Systems and methods for associating related merchants
US10026114B2 (en) * 2014-01-10 2018-07-17 Betterdoctor, Inc. System for clustering and aggregating data from multiple sources
US10572935B1 (en) * 2014-07-16 2020-02-25 Intuit, Inc. Disambiguation of entities based on financial interactions
US9747273B2 (en) * 2014-08-19 2017-08-29 International Business Machines Corporation String comparison results for character strings using frequency data
US9591014B2 (en) 2015-06-17 2017-03-07 International Business Machines Corporation Capturing correlations between activity and non-activity attributes using N-grams
US10475052B2 (en) 2015-12-22 2019-11-12 Mastercard International Incorporated Systems and methods for use in evaluating aggregate merchant sets
US10152596B2 (en) 2016-01-19 2018-12-11 International Business Machines Corporation Detecting anomalous events through runtime verification of software execution using a behavioral model
CN105956067B (zh) * 2016-04-27 2019-07-05 北京小米移动软件有限公司 资源搜索方法及装置
US9892789B1 (en) 2017-01-16 2018-02-13 International Business Machines Corporation Content addressable memory with match hit quality indication
EP3602350A4 (en) * 2017-03-19 2021-01-27 Ofek Eshkolot Research And Development Ltd. SYSTEM AND METHOD FOR GENERATING FILTERS FOR SEARCHING FOR K-MISAPPARATIONS
US10496706B2 (en) 2017-04-17 2019-12-03 International Business Machines Corporation Matching strings in a large relational database
US11640436B2 (en) * 2017-05-15 2023-05-02 Ebay Inc. Methods and systems for query segmentation
KR101945234B1 (ko) * 2017-07-14 2019-02-08 (주)인터버드 마지막 알파벳 제거 알고리즘을 이용한 반도체 부품 검색 방법
RU2667608C1 (ru) * 2017-08-14 2018-09-21 Иван Александрович Баранов Способ обеспечения целостности данных
CN109857740B (zh) * 2019-01-25 2021-06-04 上海赜睿信息科技有限公司 字符串的存储方法、匹配方法、电子设备及可读存储介质
US11232267B2 (en) * 2019-05-24 2022-01-25 Tencent America LLC Proximity information retrieval boost method for medical knowledge question answering systems
RU2728953C1 (ru) * 2019-05-28 2020-08-03 Публичное Акционерное Общество "Сбербанк России" (Пао Сбербанк) Способ и система определения схожести векторных представлений участников транзакций
US11783342B1 (en) * 2019-07-09 2023-10-10 Wells Fargo Bank, N.A. Blockchain blacklist anti-money laundering system (BBAMLS)
US10819849B1 (en) 2019-10-10 2020-10-27 Motorola Solutions Inc. Device, system and method for address validation
US11586615B2 (en) * 2020-07-29 2023-02-21 Bank Of America Corporation System for generation of resource identification numbers to avoid electronic misreads
RU2766156C1 (ru) * 2021-02-03 2022-02-08 Общество с ограниченной ответственностью "Технологии Отраслевой Трансформации" (ООО "ТОТ") Способ и устройство определения населенного пункта, в котором установлен терминал
US11989165B2 (en) 2021-08-04 2024-05-21 Mastercard International Incorporated Server systems and methods for merchant data cleansing in payment network
US20230133690A1 (en) * 2021-11-01 2023-05-04 Salesforce.Com, Inc. Processing forms using artificial intelligence models
CN116484830B (zh) * 2023-06-26 2023-12-26 山东省标准化研究院(Wto/Tbt山东咨询工作站) 基于大数据的互联网广告智能监测系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001075964A (ja) * 1999-08-31 2001-03-23 Sony Corp 情報処理装置および情報処理方法、並びに記録媒体
JP2001101411A (ja) * 1999-09-28 2001-04-13 Japan Science & Technology Corp パターン・マッチング・システムおよび方法
JP2002183171A (ja) * 2000-12-12 2002-06-28 Matsushita Electric Ind Co Ltd 文書データ・クラスタリングシステム
JP2002534742A (ja) * 1999-01-08 2002-10-15 コンピュータ アソシエイツ シンク,インコーポレイテッド Dbmsプロシージャの再帰的パス解析のためのシステムおよび方法
JP2003006214A (ja) * 2001-06-26 2003-01-10 Canon Inc 文書検索処理方法及び装置並びに記憶媒体
US20060020607A1 (en) * 2004-07-26 2006-01-26 Patterson Anna L Phrase-based indexing in an information retrieval system
JP2007122403A (ja) * 2005-10-28 2007-05-17 Fuji Xerox Co Ltd 文書タイトルおよび関連情報の自動抽出装置、抽出方法および抽出プログラム

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06195386A (ja) * 1992-12-25 1994-07-15 Toshiba Corp データ検索装置
JPH0927004A (ja) * 1995-07-13 1997-01-28 Toshiba Corp 情報検索システム
US6006221A (en) 1995-08-16 1999-12-21 Syracuse University Multilingual document retrieval system and method using semantic vector matching
JP3160201B2 (ja) * 1996-03-25 2001-04-25 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 情報検索方法、情報検索装置
US6073095A (en) 1997-10-15 2000-06-06 International Business Machines Corporation Fast vocabulary independent method and apparatus for spotting words in speech
RU2163026C2 (ru) * 1997-10-15 2001-02-10 Удмуртский государственный университет Способ прогнозирования погоды
JPH11143877A (ja) * 1997-10-22 1999-05-28 Internatl Business Mach Corp <Ibm> 圧縮方法、辞書の見出し語インデックス・データを圧縮するための方法、及び機械翻訳システム
US6167369A (en) 1998-12-23 2000-12-26 Xerox Company Automatic language identification using both N-gram and word information
US7406214B2 (en) 1999-05-19 2008-07-29 Digimarc Corporation Methods and devices employing optical sensors and/or steganography
AU780926B2 (en) 1999-08-03 2005-04-28 Bally Technologies, Inc. Method and system for matching data sets
US6944344B2 (en) * 2000-06-06 2005-09-13 Matsushita Electric Industrial Co., Ltd. Document search and retrieval apparatus, recording medium and program
JP3573688B2 (ja) * 2000-06-28 2004-10-06 松下電器産業株式会社 類似文書検索装置及び関連キーワード抽出装置
US7328211B2 (en) * 2000-09-21 2008-02-05 Jpmorgan Chase Bank, N.A. System and methods for improved linguistic pattern matching
EP1490790A2 (en) 2001-03-13 2004-12-29 Intelligate Ltd. Dynamic natural language understanding
US6625600B2 (en) * 2001-04-12 2003-09-23 Telelogue, Inc. Method and apparatus for automatically processing a user's communication
US7698228B2 (en) 2001-04-27 2010-04-13 Accenture Llp Tracking purchases in a location-based services system
GB2388739B (en) 2001-11-03 2004-06-02 Dremedia Ltd Time ordered indexing of an information stream
US7290048B1 (en) 2002-03-29 2007-10-30 Hyperformix, Inc. Method of semi-automatic data collection, data analysis, and model generation for the performance analysis of enterprise applications
JP2004094916A (ja) * 2002-07-08 2004-03-25 Cannac:Kk 問題解決支援システム、問題解決支援方法、及びプログラム
JP3781005B2 (ja) * 2002-12-12 2006-05-31 セイコーエプソン株式会社 文書抽出装置及び文書抽出プログラム並びに文書抽出方法
US7296011B2 (en) 2003-06-20 2007-11-13 Microsoft Corporation Efficient fuzzy match for evaluating data records
JP2005352888A (ja) 2004-06-11 2005-12-22 Hitachi Ltd 表記揺れ対応辞書作成システム
JP2006004366A (ja) * 2004-06-21 2006-01-05 Advanced Telecommunication Research Institute International 機械翻訳システム及びそのためのコンピュータプログラム
WO2006116570A2 (en) 2005-04-25 2006-11-02 The Ticket Reserve, Inc. Methods and apparatus to predict demand for a product or service
US20070073745A1 (en) 2005-09-23 2007-03-29 Applied Linguistics, Llc Similarity metric for semantic profiling
JP2007122398A (ja) * 2005-10-27 2007-05-17 Kenichi Nakamura フラグメントの同一性判定方法およびコンピュータプログラム
US20070162481A1 (en) 2006-01-10 2007-07-12 Millett Ronald P Pattern index
US7925652B2 (en) 2007-12-31 2011-04-12 Mastercard International Incorporated Methods and systems for implementing approximate string matching within a database

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002534742A (ja) * 1999-01-08 2002-10-15 コンピュータ アソシエイツ シンク,インコーポレイテッド Dbmsプロシージャの再帰的パス解析のためのシステムおよび方法
JP2001075964A (ja) * 1999-08-31 2001-03-23 Sony Corp 情報処理装置および情報処理方法、並びに記録媒体
JP2001101411A (ja) * 1999-09-28 2001-04-13 Japan Science & Technology Corp パターン・マッチング・システムおよび方法
JP2002183171A (ja) * 2000-12-12 2002-06-28 Matsushita Electric Ind Co Ltd 文書データ・クラスタリングシステム
JP2003006214A (ja) * 2001-06-26 2003-01-10 Canon Inc 文書検索処理方法及び装置並びに記憶媒体
US20060020607A1 (en) * 2004-07-26 2006-01-26 Patterson Anna L Phrase-based indexing in an information retrieval system
JP2007122403A (ja) * 2005-10-28 2007-05-17 Fuji Xerox Co Ltd 文書タイトルおよび関連情報の自動抽出装置、抽出方法および抽出プログラム

Also Published As

Publication number Publication date
JP5372956B2 (ja) 2013-12-18
KR20100123684A (ko) 2010-11-24
US20110167060A1 (en) 2011-07-07
MX2010007274A (es) 2010-12-02
CA2710753C (en) 2016-06-07
WO2009085555A2 (en) 2009-07-09
RU2623802C2 (ru) 2017-06-29
EP2240847A2 (en) 2010-10-20
RU2013119801A (ru) 2014-11-10
BRPI0821428A2 (pt) 2015-06-16
US8219550B2 (en) 2012-07-10
JP5613307B2 (ja) 2014-10-22
AU2008343493B2 (en) 2014-01-09
KR101462707B1 (ko) 2014-11-27
US7925652B2 (en) 2011-04-12
SG186687A1 (en) 2013-01-30
AU2008343493A1 (en) 2009-07-09
JP2011509463A (ja) 2011-03-24
WO2009085555A3 (en) 2010-01-07
RU2487394C2 (ru) 2013-07-10
EP2240847A4 (en) 2012-12-05
US20090171955A1 (en) 2009-07-02
CA2710753A1 (en) 2009-07-09
RU2010125681A (ru) 2011-12-27

Similar Documents

Publication Publication Date Title
JP5613307B2 (ja) データベース内に近似文字列照合を実装するための方法およびシステム
JP5485911B2 (ja) アンサンブル加盟店予測システムを実装するための方法および装置
US8666976B2 (en) Methods and systems for implementing approximate string matching within a database
US11393044B2 (en) Systems and methods for associating related merchants
US20230153870A1 (en) Unsupervised embeddings disentanglement using a gan for merchant recommendations
NL2012438A (en) Resolving similar entities from a database.
JP2011508353A5 (ja)
US11782936B2 (en) Entity data attribution using disparate data sets
US20230297552A1 (en) System, Method, and Computer Program Product for Monitoring and Improving Data Quality
WO2014004478A1 (en) Methods and systems for implementing approximate string matching within a database
US20150254750A1 (en) Performing commerce queries using a commerce graph

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140625

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140812

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140905

R150 Certificate of patent or registration of utility model

Ref document number: 5613307

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees