JP2021535473A - 大量な文書コーパスにおけるトークン・マッチング - Google Patents

大量な文書コーパスにおけるトークン・マッチング Download PDF

Info

Publication number
JP2021535473A
JP2021535473A JP2021507838A JP2021507838A JP2021535473A JP 2021535473 A JP2021535473 A JP 2021535473A JP 2021507838 A JP2021507838 A JP 2021507838A JP 2021507838 A JP2021507838 A JP 2021507838A JP 2021535473 A JP2021535473 A JP 2021535473A
Authority
JP
Japan
Prior art keywords
pair
tokens
entities
machine
data representation
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
JP2021507838A
Other languages
English (en)
Other versions
JP7052145B2 (ja
Inventor
リーボヴィッツ,ガイ
Original Assignee
ネットアップ,インコーポレイテッド
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 ネットアップ,インコーポレイテッド filed Critical ネットアップ,インコーポレイテッド
Publication of JP2021535473A publication Critical patent/JP2021535473A/ja
Application granted granted Critical
Publication of JP7052145B2 publication Critical patent/JP7052145B2/ja
Active 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/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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • 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
    • G06F16/316Indexing structures
    • G06F16/325Hash tables
    • 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/33Querying
    • G06F16/3331Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Algebra (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

複数のエンティティを含む辞書を受信するステップであり、各エンティティは1トークンとnトークンとの間の長さを有する、ステップと、1からnまでインデックス付けされているn個のブルームフィルタ(BF)ペアを含む確率的データ表現モデルを構築するステップと、前記エンティティのデータ表現を前記確率的データ表現モデルに設定するステップであり、ここでは、iでインデックス付けされた各BFペアに関して、(1)第1のBFに、少なくとも(i+1)個のトークンを有する全てのエンティティの最初のi個のトークンが設定され、かつ、(2)第2のBFに、正確にi個のトークンを有する全てのエンティティが設定されるステップと、テキストコーパスを受信するステップであり、前記テキストコーパスはトークンへと分割されているステップと、前記テキストコーパスにおける各トークンを前記設定された確率的データ表現モデルに対して自動的にマッチングするステップであり、ここで、前記マッチングは、前記各BFペアを前記インデックスの順番で逐次的に照合して、一致を決定するステップ、を含む方法。

Description

本発明は、機械学習の分野に関する。
テキスト分析、もしくは、大量の構造化されていないデータから構造化された情報を抽出することは、今日の企業において重要な見地になっている。テキスト分析における一般的なタスクは「辞書マッチング(dictionary matching、DM)」であり、これは非構造化テキストにおける単語とパターンの特定な集合(set)の検出である。電子メール、Webエンティティ、およびマシン・データログといった、構造化されていないテキストデータの量のこれまでの増加に伴い、DMのタスクを計算効率的な方法で実行することが、ますます重要になってきている。しかしながら、DM演算子(DM operators)が、テキスト分析のかなりの時間を要する部分を占めることがしばしばである。なぜなら、これらの演算子は、テキストコーパス(text corpora)をスキャンするが、一方で、後続のステップは、文書の結果および部分だけに作用するからである。従って、DMのタスクにおける計算(computing)およびメモリの要求を低減することは、非常に価値があり得る。
前述の関連技術の例、および、それに関連する制限は、例示的であり、かつ、排他的ではないものとして意図されている。関連技術の他の制限は、明細書を読み、かつ、図面を学習することによって、当業者にとった明らかになるだろう。
以下の実施形態、および、その態様は、システム、ツール、および、方法と関連して説明され、かつ、図示されており、それらは、範囲を限定するものではなく、例示的であり、かつ、説明的であるように意図されている。
いくつかの実施形態において、以下のステップを含む方法が提供される。設定段階(populating stage)においては、複数のエンティティを含む辞書を受信するステップであり、ここで、各エンティティは、1トークンとnトークンとの間の長さを有するステップと、n個のブルームフィルタ(Bloom filter、BF)ペアを含む確率的データ表現モデルを自動的に構築するステップであり、ここで、各BFペアは1からnまでインデックス付けされているステップと、前記エンティティのデータ表現を前記確率的データ表現モデルに自動的に設定するステップであり、ここでは、iでインデックス付けされた各BFペアに関して、(1)前記BFペア内の第1のBFに、少なくとも(i+1)個のトークンを有する全てのエンティティの最初のi個のトークンが設定され、かつ、(2)前記BFペア内の第2のBFに、正確にi個のトークンを有する全てのエンティティが設定される、ステップと、を含む。マッチング段階(matching stage)においては、テキストコーパスを受信するステップであり、ここで、前記テキストコーパスはトークンへと分割されているステップと、前記テキストコーパスにおける各トークンを前記設定された確率的データ表現モデルに対して自動的にマッチングするステップであり、ここで、前記マッチングは、前記各BFペアを前記インデックスの順番で逐次的に照合して、一致を決定する、ステップと、を含む。
いくつかの実施形態においては、また、少なくとも1つのハードウェアプロセッサ、および、プログラム命令が保管された非一時的なコンピュータで読取り可能な記憶媒体を含む、システムも提供される。本プログラム命令は、少なくとも1つのハードウェアプロセッサによって実行可能であり、設定段階においては、複数のエンティティを含む辞書を受信し、ここで、各エンティティは、1トークンとnトークンとの間の長さを有しており、n個のブルームフィルタ(BF)ペアを含む確率的データ表現モデルを自動的に構築し、ここで、各BFペアは1からnまでインデックス付けされており、前記エンティティのデータ表現を前記確率的データ表現モデルに自動的に設定し、ここでは、iでインデックス付けされた各BFペアに関して、(1)前記BFペア内の第1のBFに、少なくとも(i+1)個のトークンを有する全てのエンティティの最初のi個のトークンが設定され、かつ、(2)前記BFペア内の第2のBFに、正確にi個のトークンを有する全てのエンティティが設定されている。マッチング段階においては、テキストコーパスを受信し、ここで、前記テキストコーパスはトークンへと分割されており、そして、前記テキストコーパスにおける各トークンを前記設定された確率的データ表現モデルに対して自動的にマッチングする。ここで、前記マッチングは、前記各BFペアを前記インデックスの順番で逐次的に照合して、一致を決定することを含む。
いくつかの実施形態においては、さらに、そこで具現化されるプログラム命令を有する非一時的なコンピュータで読取り可能な記憶媒体を含むコンピュータプログラム製品が提供される。本プログラム命令は、少なくとも1つのハードウェアプロセッサによって実行可能であり、設定段階においては、複数のエンティティを含む辞書を受信し、ここで、各エンティティは、1トークンとnトークンとの間の長さを有しており、n個のブルームフィルタ(BF)ペアを含む確率的データ表現モデルを自動的に構築し、ここで、各BFペアは1からnまでインデックス付けされており、前記エンティティのデータ表現を前記確率的データ表現モデルに自動的に設定し、ここでは、iでインデックス付けされた各BFペアに関して、(1)前記BFペア内の第1のBFに、少なくとも(i+1)個のトークンを有する全てのエンティティの最初のi個のトークンが設定され、かつ、(2)前記BFペア内の第2のBFに、正確にi個のトークンを有する全てのエンティティが設定されている。マッチング段階においては、テキストコーパスを受信し、ここで、前記テキストコーパスはトークンへと分割されており、そして、前記テキストコーパスにおける各トークンを前記設定された確率的データ表現モデルに対して自動的にマッチングする。ここで、前記マッチングは、前記各BFペアを前記インデックスの順番で逐次的に照合して、一致を決定することを含む。
いくつかの実施形態において、各BFペアは、指定された数のハッシュ関数を有し、ここで、前記指定された数は、エラー確率を最小化するために計算された最適な数に等しい。
いくつかの実施形態において、前記指定された数は、最適な数より少ない。いくつかの実施形態において、前記指定された数は、前記BFペアのインデックス付けが増加すると、さらに減少する。
上述の例示的な態様および実施形態に加えて、さらなる態様および実施形態が、図面を参照し、かつ、以下の詳細な説明を検討することによって、明らかになる。
例示的な実施形態が、参照図に示されている。図において示されているコンポーネントおよび特徴(features)の寸法は、一般的に、簡便性および表現の明確性のために選択されており、そして、必ずしも縮尺通りに示されてはいない。図面は、以下に列挙されている。
図1Aは、文書トークン化(document tokenization)プロセスを示している。 図1Bは、マルチグラム(multi-gram)・トークン・マッチング・プロセスを示している。 図2は、ブルームフィルタ(Bloom filter)のオペレーションを模式的に示している。 図3は、一つの実施形態に従って、ブルームフィルタ・ペアを含む逐次確率的データ表現(sequential probabilistic data presentation)を示している。 図4は、一つの実施形態に従って、逐次確率的データ表現を使用して、大きなテキストコーパスに対してトークンの辞書を自動的にマッチングする方法における機能ステップに係るフローチャートである。
ここにおいて開示されているのは、辞書エンティティの逐次確率的データ表現を使用して、大きなテキストコーパスに対するエンティティの辞書の自動的、高速、かつ、効率的なマッチングのための方法、システム、およびコンピュータプログラム製品である。開示される方法は、高精度であり、かつ、大規模なマッチング・オペレーションが可能であり、一方で、時間、メモリ、および、計算リソースの必要性を低減している。
ここで使用されるように、「辞書マッチング(DM)」は、また、「トークン・マッチング」としても参照され、テキストにおける所与のトークンの全ての出現を発見するタスクである。この問題の最も基本的なインスタンスは、正確なトークン・マッチング問題、すなわち、テキストにおけるパターンの出現を正確に全て見つける問題である。近似(approximate)トークン・マッチング(ファジィ(fuzzy)トークン・マッチングとしても、また、知られているもの)は、パターンの近似マッチングを見つける技術である。典型的には、テキストコーパスについてDMが実行される前に、「トークン化」の前処理段階が実行され、テキストを、例えば、単語(words)および文(sentences)へと分割する。トークンは、処理のための有用な意味単位(semantic unit)として一緒にグループ化される、文書中のキャラクタ・シーケンス(character sequence)のインスタンスとして定義され得る。トークン化プロセスは、所定の句読点を除去しながら、図1Aに示されるように、テキストを、例えばホワイトスペースにおいて分割することによって、行うことができる。他の場合に、トークン化は、特殊文字、または、より複雑なパターン、例えば、アポストロフィ、ハイフネーション、ポゼッション(possessions)、略語、および、短縮形を取り扱うための追加のストラテジを含み得る。トークン化器(tokenizer)の出力は、一式のタプル(tuples)であってよく、それぞれが、テキストデータの中でトークンの開始および終了オフセットから構成されている。
トークンのシーケンスで構成されるパターンは、マルチトークンパターンとして参照される。例えば、図1Bに示されるように、個人のフルネームを含んでいる辞書において、2つの別個の辞書エンティティは、“Samuel Adams”および“Samuel Adams Johns”であってよい。テキスト入力が文字列“Samuel Adams Johns”を含む場合に、DMタスクは、可能な一致としての“Samuel Adams”の誤検知(false positive)を拒否しながら、フルネームだけの一致を返すことが期待されている。
上述のように、DMのタスクは、典型的には、非常にメモリ集中型(memory-extensive)である。なぜなら、全ての可能な一致を見つけるために、オペレーションは、メモリにおいて大きなテキストコーパスを保持し、そして、スキャンしなければならないからである。DMタスクのメモリ要求は、図1Bに示されるように、マルチトークン・パターン・マッチングが必要とされる場合、および、別個の辞書エンティティと一致し得るサブストリングをストリングが含んでいる場合には、さらに、より複雑になる可能性がある。
従って、いくつかの実施形態において、本発明は、辞書及び/又はテキストコーパスのサイズを拡大する際に、低いメモリ要求および低いエラー率を維持するために、空間効率の良い(space-efficient)確率的データ表現の組み合わせを使用する。いくつかの実施形態において、ブルーム(Bloom)及び/又は類似フィルタのペア(pair)の特定の逐次構造が、各トークンについて確率的データ表現を辞書に保管するために使用され得る。ここで、フィルタのペアは、データ構造の照会(querying)の最中に計算および誤検知エラーの数を低減するために構成される方法において相互依存的(interdependent)である。
以下の説明は、大量のエンティティの確率的表現を保管するために、ブルームフィルタ(BF)の逐次相互依存的ペアの使用に焦点を当てている。しかしながら、様々な実施形態において、ブルームフィルタの異なる構造、ブルームフィルタの異なるタイプ、及び/又は、他の確率的データ表現フィルタ及び/又はモデルの異なるタイプが使用され得る。
BFは、集合メンバーシップ(set membership)を決定するためにハッシュ変換を使用する方法であり、そして、テキスト分析およびDMタスクといった、大きなデータセットについて高速な集合メンバーシップテストが必要とされるところで特に有用である。BFは確率的な方法なので、エラー率を有しており、これは包含(inclusion)の側だけに発生する(すなわち、誤検知エラー)。真のメンバーは、集合に属していないとして決して報告されないが、いくつかの非メンバーが、メンバーとして報告されることがある。
BFは、データセットを表すベクトル(フィルタ)を計算するために、ハッシュ変換を使用する。集合(set)におけるメンバーシップは、潜在的なメンバーに対するハッシュの結果をベクトルと比較することによってテストされ得る。例えば、所与のn個の要素の集合S、
S={x,x,・・・,x
は、mビットのアレイB,
B=[b,b,b,b,・・・,bm−1,b
によって表され得る。
BFは、範囲{1,・・・,m}にわたり一様に分布すると仮定されているk個の独立したハッシュ関数h・・・hを使用する。図2を参照すると、集合Sを設定する(populate)ためには、全てのS∈Sが、以下を使用して、BF Bに対して追加される必要がある。
1≦i≦kそれぞれについて、B[h(x)]=1
照会の最中に、要素yがBF B内にあるかどうかを確認する。
1≦i≦kそれぞれについて、全てのB[h(y)]==1である場合には、真(True)を返し、そうでない場合には、偽(False)を返す。
BFは、タスクについて許容される誤検知率の関数として、時間効率における固有の改善を提供する。より具体的に、単純なBFの予想される複雑性は、挿入(insertion)と照会(querying)のために測定され、かつ、フィルタによって「保管すること”storing“」に割り当てられたハッシュ関数の数kに依存する。ハッシュ関数に依存している単純なBFは、集合の中にアイテムを設定するか、または、照会するために固定の定数O(k)の時間量を必要とするだろう。ここで、この時間定数は、集合の中のアイテムの数とは独立している。
k個のハッシュ関数を使用し、n個の要素をmビットで保管している単一のBFが与えられると、期待される誤検知確率は以下のとおりである。
Figure 2021535473
従って、許容可能な誤検知率の特定の値が与えられると、ハッシュ関数kの最適数、並びに、ビットベクトルの長さmは、次のように導出され得る。
Figure 2021535473
この結果を説明するために、0.01の誤検知確率を伴う100万アイテムの集合を表すBFは、9,585,059ビット(1.14MB)、および、7個のハッシュ関数を必要とするだけである。
しかしながら、DMのタスクについて、全てのエンティティを同時に保持するための単一のBF及び/又は類似の確率的データ表現の使用は、多くの制限を課すものである。
・テキスト内で見つかった全ての可能性あるトークンを、BF内の様々な長さの全ての可能性あるトークンとマッチングするための、著しく長い照会時間。
および、
・(図1Bを参照して上述したように)サブトークンを含むトークンの存在が考慮されない場合の、多数の冗長な計算。
である。
従って、いくつかの実施形態において、本発明は、逐次的BF(sequential BF)の構造を使用することを提供し、ここでは、BFの設定(populating)においてサブトークン化が考慮される。単一のBFストレージモデルと比較して、本発明のマルチBF、逐次照会モデルは、より速い設定および照会時間、並びに、マッチングにおけるより少ない誤検知エラーを提供する。
本発明の作動原理が、図3に関して詳細に説明されている。例えば、1から4トークンまでの長さを有するエンティティを伴う辞書の典型的な例において、本発明は、4ペアのBFを含むBF構造を構築するために構成されている。異なる長さを伴うエンティティを含む辞書について、BFペアの数は、予想される最も長いトークンの長さと一致する。いくつかの実施形態において、各ペアにおける第1のBFはBF Contとして示されてよく、そして、各ペアにおける第2のBFはBF Stopとして示されてよい。ここで、iは、1からnまでのインデックス番号と等しい。図3に示されるように、BFの設定の最中に、
・1と(n−1)との間のインデックスiを有する全てのペアにおける第1のBFは、少なくとも(n+1)個のトークンを有する全てのエンティティの第1のi個のトークンを用いて設定される。従って、例えば、エンティティ“Bank of England”(n=3)の場合に、BF Contは“Bank”を保管し、かつ、BF Contは“Bank of”を保管する。そして、
・i=nでインデックスされたペアにおける第2のBFは、正確にn個のトークンを含む全てのエンティティを保管する。従って、例えば、BF Stopは“Bank of England”(n=3)を保管する。
いくつかの実施形態において、上述のように、一旦、BFが全てのエンティティを用いて設定されると、所与のトークン・マッチング・タスクのために、BFは、現在のトークンで始まる全ての可能性あるエンティティをマッチングするために、逐次的に照会される。例えば、図3に示されるように、3グラム(3-gram)の用語“Bank of England”をマッチングすることは、以下のBFを逐次的に照会することを含む。
(i)BF Contにおける“Bank”、
(ii)BF Contにおける“Bank of”、および、
(iii)BF Stopにおける“Bank of England”である。
同様に、4グラム(4-gram)の用語“United Nations Secretary General”をマッチングすることは、以下のBFを逐次的に照会することを含む。
(i)BF Contにおける“United”、
(ii)BF Contにおける“United Nations”、
(iii)BF Contにおける“United Nations Secretary”、および、
(iv)BF Stopにおける“United Nations Secretary General”である。
理解されるように、「高次(“high order”)」BF(すなわち、BF ContおよびBF Stopといった、より長いエンティティを表すもの)は、マルチグラム(multi-gram)トークンの相対的なスパース性(sparsity)のせいで、頻繁に照会されることがより少なそうである。
いくつかの実施形態において、トークンの所与の集合の平均トークン長さqは、少なくとも部分的に、BF設定時間(populating time)およびBF照会時間(querying time)の両方と、以下のように、相関され得る。
・設定:長さqの単一トークンに関して、0からq-2でインデックス付けされたBFContフィルタに対する期待される(q−1)個のBF挿入、および、全てのBFStopフィルタに対する1個のBF挿入が存在し、構造内の全てのBFに対して合計でq個の挿入である。
・照会:長さqのトークンの正確な一致に関して、マッチングプロセスは、0からq-2まで全てのBFContおよび全てのBFStopを照会する。合計で2q個の照会である。部分的な一致に関して、照会プロセスは、nグラム(n-gram)トークンがもはや類似していないところまで、全てのBFContおよび全てのBFStopを照会する。いずれにせよ、照会の総数は(2q−1)個を超えない。
従って、トークンの長さqは、全てのトークンにわたる平均として直接的に導出され、トークンの設定および照会の両方の複雑性を制限する。さらに、qは、また、辞書におけるトークンの分布にも依存し、複数の長さのトークン(multi-length-tokens)は、様々な辞書において異なる分布率を有してよく、いくつかの長さは、他の長さよりも頻繁に発生し得る、等。同様に、照会時間は、ある程度、トークン化の最中にテキストコーパス内で見つかったトークンの分布によって、変動し得る。究極的には、設定および照会の両方について予想される複雑性は、O(k・q)である。qは、典型的には、低い固定数、例えば、2と3との間であることが期待され、そして、大部分のユースケースにおいて、5より高くないので、予想される複雑性は、O(k)として表され得る。
いくつかの実施形態において、逐次的にペアなBF構造は、さらに、全てのエンティティを表すために必要とされるハッシュ関数の数の著しい減少を可能にするために構成され得る。BFにおける複数のハッシュ関数の主な目的は、誤検知率を低減することであるので、本発明によって開示されるように、依存する照会のシーケンスを含む照会プロセスが、結果としてより少ない誤検知を生じ得ることが期待され得る。
例えば、2つの単一のBFそれぞれが1%の誤検知率を有する場合には、両方の構造を含む照会における誤検知リターンの確率は、0.1%×0.1%、または、概ね0.01%まで、であろう。例えば、上述のように、図3を参照すると、3グラムの用語“Bank of England”のマッチングは、3つの別個の対比を通じた、その用語の逐次的なマッチングを含んでいる。BF:BF Cont,BF Cont,およびBF Stopである。この場合に、誤検知リターンについて、3つのBFは全て、誤検知の一致を返す必要がある。BFそれぞれは誤検知のリターンについて特定の確率を有しているので、3つのBF全てが同時に誤検知を返す可能性は著しく低減される。
この全体的に低下した誤検知確率を利用するために、いくつかの実施形態において、BFContは、より少ない数のハッシュ関数を使用して構造化されてよく、これは、上述のように、より少ない設定および照会時間を結果として生じ得る。
さらに、BFを構造化する場合に、より高い許容可能な誤検知率が、フィルタのオーダーが増加するにつれて、BFContに割り当てられ得る。例えば、6グラムのトークンをマッチングする場合に、BF ContおよびBF Contでは、より厳密でない誤検知率が使用され得る。なぜなら、間違った一致の可能性は、逐次的な照会の先行する連鎖によって既に低下しており、そして、BF Contの誤検知率によってさらに低減されるからである。従って、ハッシュ関数の全体的に低減された数、並びに、各構造によって照会されるトークンの低減された数は、トークン・マッチングの最中に照会される構造の増加した数を遅れずに(in time)に補償する。
図4は、逐次確率的データ表現を使用して、大きなテキストコーパスに対してトークンの辞書を自動的にマッチングする方法のフローチャートである。400においては、nグラムで長さ1からnまでのトークンを含む辞書が受信される。402においては、例えば、n個のBFのペアを使用して、構造を表す逐次確率的データが構築される。
404において、少なくとも(i+1)個のトークンを有する全てのエンティティのうち最初のi個のトークンは、iでインデックス付けされたBFペアの第1のBF内に保管される。406においては、正確にi個のトークンを含む全てのエンティティが、iでインデックス付けされたBFペアの第2のBF内に保管される。
いくつかの実施形態において、本発明の例示的に実装されるコンピュータプログラムコードは、以下のコンピュータ命令を含み得る。
Figure 2021535473
408においては、トークン化されたテキストコーパスからトークンが受信される。410においては、各テキストコーパストークンがBF構造に対して逐次的にマッチングされ、一致を特定する。いくつかの実施形態において、本発明の例示的な照会コンピュータプログラムコードは、以下のコンピュータ命令を含み得る。
Figure 2021535473
本発明は、システム、方法、及び/又は、コンピュータプログラム製品であり得る。コンピュータプログラム製品は、コンピュータで読取り可能な記憶媒体(または、メディア)を含み、本発明の態様をプロセッサに実行させるためのコンピュータで読取り可能なプログラム命令をその上に有している。
コンピュータで読取り可能な記憶媒体は、命令実行装置による使用のための命令を保持し、かつ、保管することができる有形の装置であってよい。コンピュータで読取り可能な記憶媒体は、例えば、これらに限定されるわけではないが、電子記憶装置、磁気記憶装置、光記憶装置、電磁記憶装置、半導体記憶装置、または、これらの適切な組み合わせであってよい。コンピュータで読取り可能な記憶媒体のより具体的な例に係る非網羅的リストは、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、消去可能プログラマブル読取り専用メモリ(EPROMまたはフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読取り専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピー(登録商標)ディスク、記録された命令を有する機械的に符号化されたデバイス、および、前述のものに係る任意の適切な組み合わせ、を含む。コンピュータで読取り可能な記憶媒体は、ここにおいて使用されるように、それ自体、一時的な信号であると解釈されるべきではない。電波または他の自由に伝搬する電磁波、導波管または他の伝送媒体を通じて伝搬する電磁波(例えば、光ファイバケーブルを通過する光パルス)、または、電線を通じて伝送される電気信号、といったものである。むしろ、コンピュータで読取り可能な記憶媒体は、非一時的(すなわち、非揮発性)媒体である。
ここにおいて記載のコンピュータで読取り可能なプログラム命令は、コンピュータで読取り可能な記憶媒体から各計算/処理装置へ、もしくは、ネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、及び/又は、無線ネットワークを介して、外部コンピュータまたは外部記憶装置へダウンロードすることができる。ネットワークは、銅線伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、及び/又は、エッジサーバを含み得る。各計算/処理装置におけるネットワークアダプタカードまたはネットワークインターフェイスは、ネットワークからコンピュータで読取り可能なプログラム命令を受信し、そして、それぞれの計算/処理装置におけるコンピュータで読取り可能な記憶媒体に保管するために、コンピュータで読取り可能なプログラム命令を転送する。
本発明のオペレーションを実行するためのコンピュータで読取り可能なプログラム命令は、アセンブラ命令、インストラクション・セット・アーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、もしくは、Java、Smalltalk、C++、等といった、オブジェクト指向プログラミング言語、および、「C」プログラミング言語または類似のプログラミング言語といった、従来の手続き型プログラミング言語を含む、1つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードまたはオブジェクトコードのいずれか、であり得る。コンピュータで読取り可能なプログラム命令は、ユーザのコンピュータ上で全体的に、ユーザのコンピュータ上で部分的に、スタンドアロンのソフトウェアパッケージとして、実行され、ユーザのコンピュータ上で部分的に、かつ、リモートコンピュータ上で部分的、もしくは、リモートコンピュータまたはサーバ上で全体的に、実行され得る。後者のシナリオにおいて、リモートコンピュータは、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)を含む、任意のタイプのネットワークを介してユーザのコンピュータに接続されてよく、もしくは、外部コンピュータに対して(例えば、インターネットサービスプロバイダを使用するインターネットを介して)接続が行われてよい。いくつかの実施形態において、例えば、プログラマブル論理回路、フィールドプログラマブルゲートアレイ(FPGA)、または,
プログラマブル論理アレイ(PLA)を含む、電子回路は、本発明の態様を実行するために、電子回路をパーソナライズすることにように、コンピュータで読取り可能なプログラム命令の状態情報を利用することによって、コンピュータで読取り可能なプログラム命令を実行し得る。
本発明の態様は、本発明の実施形態に従った方法、装置(システム)、および、コンピュータプログラム製品のフローチャート図及び/又はブロック図を参照して、ここにおいて説明されている。フローチャート図及び/又はブロック図の各ブロック、および、フローチャート図及び/又はブロック図におけるブロックの組み合わせは、コンピュータで読み取り可能なプログラム命令によって実装され得ることが理解されよう。
これらのコンピュータで読取り可能なプログラム命令は、マシンを生成するように、汎用コンピュータ、専用コンピュータ、または、他のプログラマブルデータ処理装置のプロセッサに提供されてよく、その結果、コンピュータまたは他のプログラマブルデータ処理装置のプロセッサを介して実行される命令が、フローチャート及び/又はブロック図のブロックにおいて指定された機能/動作を実行する。これらのコンピュータで読取り可能なプログラム命令は、また、コンピュータ、プログラマブルデータ処理装置、及び/又は、他の装置を特定の方法で機能させることができるコンピュータで読取り可能な記憶媒体に保管されてもよく、その結果、そこに保管された命令を有するコンピュータで読取り可能な記憶媒体は、フローチャート及び/又はブロック図のブロックにおいて指定された機能/動作の態様を実施する命令を含む製造物品を構成する。
コンピュータで読取り可能なプログラム命令は、また、コンピュータ、他のプログラマブル装置、または、コンピュータ実装プロセスを生成するための他の装置に一連の動作ステップを実行させるように、コンピュータ、他のプログラマブルデータ処理装置、または、他の装置へとロードされてよく、その結果、コンピュータ、他のプログラマブル装置、または、他の装置において実行される命令は、フローチャート及び/又はブロック図のブロックにおいて指定された機能・動作を実施する。
図面におけるフローチャートおよびブロック図は、本発明の様々な実施形態に従った、システム、方法、および、コンピュータプログラム製品の可能な実施に係るアーキテクチャ、機能性、および、オペレーションを説明している。この点について、フローチャートまたはブロック図における各ブロックは、指定された論理機能を実装するための1つ以上の実行可能な命令を含む、モジュール、セグメント、または、命令の一部を表すことができる。いくつかの代替的な実装において、ブロックに示される機能は、図に示された順序から外れて発生してよい。例えば、連続して示される2つのブロックは、実際には、実質的に同時に実行されてよく、もしくは、包含される機能性に応じて、ときどき、逆の順序でブロックが実行されてよい。ブロック図及び/又はフローチャート図の各ブロック、および、ブロック図及び/又はフローチャート図におけるブロックの組み合わせは、指定された機能または動作を実施するか、もしくは、特定目的のハードウェアおよびコンピュータ命令の組み合わせを実行する特定目的のハードウェアベースのシステムによって実施され得ることにも、また、留意されたい。
本発明の様々な実施形態の記載は、説明の目的のために提示されてきたが、開示される実施形態について網羅的または限定するように意図されたものではない。多くの変更および変形が、説明された実施形態の範囲および精神から逸脱することなく、当業者にとっては明らかであろう。ここにおいて使用される用語は、実施形態の原理、市場で見出される技術に対する実際的な適用または技術的な改善を最もよく説明するため、もしくは、ここにおいて開示される実施形態を当業者などが理解できるように選択されたものである。

Claims (18)

  1. 複数のエンティティを含む辞書を、サーバによって、受信するステップであり、各エンティティは、1トークンとnトークンとの間の長さを有する、ステップと、
    n個のブルームフィルタ(BF)ペアを含む確率的データ表現モデルを、前記サーバによって、自動的に構築するステップであり、各BFペアは、1からnまでインデックス付けされている、ステップと、
    前記複数のエンティティのデータ表現を、前記サーバによって、前記確率的データ表現モデルに自動的に設定するステップと、
    トークンへと分割されたテキストコーパスを、前記サーバによって、受信するステップと、
    前記テキストコーパスにおける各トークンを、前記サーバによって、前記設定された確率的データ表現モデルに対して自動的にマッチングするステップと、
    を含む、方法。
  2. iでインデックス付けされた各BFペアに関して、前記BFペアにおける第1のBFに、少なくとも(i+1)個のトークンを有する前記複数のエンティティから最初のi個のトークンが設定され、かつ、前記BFペアにおける第2のBFに、正確にi個のトークンを有する前記複数のエンティティから全てのトークンが設定される、
    請求項1に記載の方法。
  3. 前記マッチングは、さらに、
    マッチングを決定するために、1からnまでのインデックス付けの順番で各BFペアを逐次的に照会するステップ、を含む、
    請求項1に記載の方法。
  4. 各BFペアは、指定された数のハッシュ関数を有しており、
    指定された数それぞれは、エラー確率を最小化するように計算された最適な数に等しい、
    請求項1に記載の方法。
  5. 各BFペアは、指定された数のハッシュ関数を有しており、
    指定された数それぞれは、エラー確率を最小化するように計算された最適な数より少ない、
    請求項1に記載の方法。
  6. 各BFペアは、指定された数のハッシュ関数を有しており、
    指定された数それぞれは、エラー確率を最小化するように計算された最適な数より少なく、
    前記指定された数は、さらに、前記BFペアのインデックス付けが増加するにつれて、減少する、
    請求項1に記載の方法。
  7. コンピューティング・システムであって、
    マシンで実行可能なコードを有するマシンで読取り可能な媒体を含むメモリであり、トークン・マッチングの方法を実行するための命令が保管されている、メモリと、
    前記メモリに結合されたプロセッサであり、前記マシンで実行可能なコードを実行するように構成されている、プロセッサと、を含み、
    前記マシンで実行可能なコードが実行されると、前記プロセッサに、
    複数のエンティティを含む辞書を受信し、各エンティティは、1トークンとnトークンとの間の長さを有しており、
    n個のブルームフィルタ(BF)ペアを含む確率的データ表現モデルを自動的に構築し、各BFペアは、1からnまでインデックス付けされており、
    前記複数のエンティティのデータ表現を、前記確率的データ表現モデルに自動的に設定し、
    トークンへと分割されたテキストコーパスを受信し、かつ、
    前記テキストコーパスにおける各トークンを前記設定された確率的データ表現モデルに対して自動的にマッチングする、
    ようにさせる、
    システム。
  8. iでインデックス付けされた各BFペアに関して、前記BFペアにおける第1のBFに、少なくとも(i+1)個のトークンを有する前記複数のエンティティから最初のi個のトークンが設定され、かつ、前記BFペアにおける第2のBFに、正確にi個のトークンを有する前記複数のエンティティから全てのトークンが設定される、
    請求項7に記載のシステム。
  9. 前記マシンで実行可能なコードは、さらに、前記プロセッサに、
    マッチングを決定するために、1からnまでのインデックス付けの順番で各BFペアを逐次的に照会する、
    ようにさせる、
    請求項7に記載のシステム。
  10. 各BFペアは、指定された数のハッシュ関数を有しており、
    指定された数それぞれは、エラー確率を最小化するように計算された最適な数に等しい、
    請求項7に記載のシステム。
  11. 各BFペアは、指定された数のハッシュ関数を有しており、
    指定された数それぞれは、エラー確率を最小化するように計算された最適な数より少ない、
    請求項7に記載のシステム。
  12. 各BFペアは、指定された数のハッシュ関数を有しており、
    指定された数それぞれは、エラー確率を最小化するように計算された最適な数より少なく、
    前記指定された数は、さらに、前記BFペアのインデックス付けが増加するにつれて、減少する、
    請求項7に記載のシステム。
  13. 非一時的なマシンで読取り可能な媒体であって、マシンで実行可能なコードを含む方法を実行するための命令を保管しており、少なくとも1つのマシンによって命令が実行されると、前記マシンに、
    複数のエンティティを含む辞書を受信し、各エンティティは、1トークンとnトークンとの間の長さを有しており、
    n個のブルームフィルタ(BF)ペアを含む確率的データ表現モデルを自動的に構築し、各BFペアは、1からnまでインデックス付けされており、
    前記複数のエンティティのデータ表現を、前記確率的データ表現モデルに自動的に設定し、
    トークンへと分割されたテキストコーパスを受信し、かつ、
    前記テキストコーパスにおける各トークンを前記設定された確率的データ表現モデルに対して自動的にマッチングする、
    ようにさせる、
    非一時的なマシンで読取り可能な媒体。
  14. iでインデックス付けされた各BFペアに関して、前記BFペアにおける第1のBFに、少なくとも(i+1)個のトークンを有する前記複数のエンティティから最初のi個のトークンが設定され、かつ、前記BFペアにおける第2のBFに、正確にi個のトークンを有する前記複数のエンティティから全てのトークンが設定される、
    請求項13に記載の非一時的なマシンで読取り可能な媒体。
  15. 前記非一時的なマシンで読取り可能な媒体は、さらに、前記マシンに、
    マッチングを決定するために、1からnまでのインデックス付けの順番で各BFペアを逐次的に照会する、
    ようにさせる、マシンで実行可能なコードを含む、
    請求項13に記載の非一時的なマシンで読取り可能な媒体。
  16. 各BFペアは、指定された数のハッシュ関数を有しており、
    指定された数それぞれは、エラー確率を最小化するように計算された最適な数に等しい、
    請求項13に記載の非一時的なマシンで読取り可能な媒体。
  17. 各BFペアは、指定された数のハッシュ関数を有しており、
    指定された数それぞれは、エラー確率を最小化するように計算された最適な数より少ない、
    請求項13に記載の非一時的なマシンで読取り可能な媒体。
  18. 各BFペアは、指定された数のハッシュ関数を有しており、
    指定された数それぞれは、エラー確率を最小化するように計算された最適な数より少なく、
    前記指定された数は、さらに、前記BFペアのインデックス付けが増加するにつれて、減少する、
    請求項13に記載の非一時的なマシンで読取り可能な媒体。
JP2021507838A 2018-08-22 2019-08-21 大量な文書コーパスにおけるトークン・マッチング Active JP7052145B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US16/108,497 2018-08-22
US16/108,497 US10248646B1 (en) 2018-08-22 2018-08-22 Token matching in large document corpora
US16/271,839 US10796092B2 (en) 2018-08-22 2019-02-10 Token matching in large document corpora
US16/271,839 2019-02-10
PCT/US2019/047527 WO2020041486A1 (en) 2018-08-22 2019-08-21 Token matching in large document corpora

Publications (2)

Publication Number Publication Date
JP2021535473A true JP2021535473A (ja) 2021-12-16
JP7052145B2 JP7052145B2 (ja) 2022-04-11

Family

ID=65898340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021507838A Active JP7052145B2 (ja) 2018-08-22 2019-08-21 大量な文書コーパスにおけるトークン・マッチング

Country Status (5)

Country Link
US (2) US10248646B1 (ja)
EP (1) EP3811276A1 (ja)
JP (1) JP7052145B2 (ja)
CN (1) CN112970024A (ja)
WO (1) WO2020041486A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10248646B1 (en) * 2018-08-22 2019-04-02 Cognigo Research Ltd. Token matching in large document corpora
US11790170B2 (en) * 2019-01-10 2023-10-17 Chevron U.S.A. Inc. Converting unstructured technical reports to structured technical reports using machine learning
CN113887610B (zh) * 2021-09-29 2024-02-02 内蒙古工业大学 基于交叉注意力蒸馏Transformer的花粉图像分类方法
US11809378B2 (en) 2021-10-15 2023-11-07 Morgan Stanley Services Group Inc. Network file deduplication using decaying bloom filters

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009535747A (ja) * 2006-05-02 2009-10-01 エクセジー・インコーポレイテツド 近似パターン合致の方法および装置

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6169969B1 (en) * 1998-08-07 2001-01-02 The United States Of America As Represented By The Director Of The National Security Agency Device and method for full-text large-dictionary string matching using n-gram hashing
US7305612B2 (en) 2003-03-31 2007-12-04 Siemens Corporate Research, Inc. Systems and methods for automatic form segmentation for raster-based passive electronic documents
US7933208B2 (en) 2004-09-27 2011-04-26 Polytechnic Institute Of New York University Facilitating storage and querying of payload attribution information
US7623710B2 (en) 2006-02-14 2009-11-24 Microsoft Corporation Document content and structure conversion
TW200821913A (en) * 2006-11-15 2008-05-16 Univ Nat Chiao Tung String matching system by using bloom filter to achieve sub-linear computation time and method thereof
US7996369B2 (en) * 2008-11-14 2011-08-09 The Regents Of The University Of California Method and apparatus for improving performance of approximate string queries using variable length high-quality grams
US8484438B2 (en) 2009-06-29 2013-07-09 Oracle America, Inc. Hierarchical bloom filters for facilitating concurrency control
US8266179B2 (en) * 2009-09-30 2012-09-11 Hewlett-Packard Development Company, L.P. Method and system for processing text
US8572126B2 (en) * 2010-06-25 2013-10-29 Educational Testing Service Systems and methods for optimizing very large n-gram collections for speed and memory
JP5716554B2 (ja) 2011-06-06 2015-05-13 富士通株式会社 検索プログラム、検索方法、検索装置、およびノード
US8949371B1 (en) * 2011-09-29 2015-02-03 Symantec Corporation Time and space efficient method and system for detecting structured data in free text
US8880510B2 (en) 2011-12-23 2014-11-04 Sap Se Unique value calculation in partitioned tables
US9015269B2 (en) 2012-06-19 2015-04-21 Canon Kabushiki Kaisha Methods and systems for notifying a server with cache information and for serving resources based on it
US8977626B2 (en) 2012-07-20 2015-03-10 Apple Inc. Indexing and searching a data collection
IN2012KO01022A (ja) 2012-09-05 2015-06-05 Indian Inst Technology Kharagpur
US20140115182A1 (en) 2012-10-24 2014-04-24 Brocade Communications Systems, Inc. Fibre Channel Storage Area Network to Cloud Storage Gateway
US9251133B2 (en) 2012-12-12 2016-02-02 International Business Machines Corporation Approximate named-entity extraction
US9361327B1 (en) 2012-12-28 2016-06-07 Emc Corporation Rolling bloom filter for data with retention policy
US9171153B2 (en) 2013-05-17 2015-10-27 Hewlett-Packard Development Company, L.P. Bloom filter with memory element
US9679024B2 (en) 2014-12-01 2017-06-13 Facebook, Inc. Social-based spelling correction for online social networks
US10114900B2 (en) 2015-03-23 2018-10-30 Virtru Corporation Methods and systems for generating probabilistically searchable messages
US9965546B2 (en) * 2015-03-24 2018-05-08 Sap Se Fast substring fulltext search
US10726016B2 (en) 2015-10-15 2020-07-28 Oracle International Corporation In-memory column-level multi-versioned global dictionary for in-memory databases
US9842132B2 (en) 2015-10-23 2017-12-12 International Business Machines Corporation Bloom filter index for device discovery
KR101856827B1 (ko) 2015-11-19 2018-05-10 국방과학연구소 계층적 블룸 필터를 사용한 동적 자원 환경에서의 빠른 서비스 발견 방법 및 장치
US10691731B2 (en) * 2015-11-26 2020-06-23 International Business Machines Corporation Efficient lookup in multiple bloom filters
US10417210B2 (en) * 2016-08-30 2019-09-17 Salesforce.Com, Inc. Multi-token matching scheme
CN106874458B (zh) 2017-02-14 2019-10-22 中国科学技术大学 一种基于分层分配的多层数据库的布隆过滤器构造方法
US10248646B1 (en) 2018-08-22 2019-04-02 Cognigo Research Ltd. Token matching in large document corpora

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009535747A (ja) * 2006-05-02 2009-10-01 エクセジー・インコーポレイテツド 近似パターン合致の方法および装置

Also Published As

Publication number Publication date
EP3811276A1 (en) 2021-04-28
US10248646B1 (en) 2019-04-02
CN112970024A (zh) 2021-06-15
US20200065371A1 (en) 2020-02-27
JP7052145B2 (ja) 2022-04-11
WO2020041486A1 (en) 2020-02-27
US10796092B2 (en) 2020-10-06

Similar Documents

Publication Publication Date Title
JP7052145B2 (ja) 大量な文書コーパスにおけるトークン・マッチング
CN108292310B (zh) 用于数字实体相关的技术
CN109670163B (zh) 信息识别方法、信息推荐方法、模板构建方法及计算设备
US10467203B2 (en) Data de-duplication
US9069818B2 (en) Textual search for numerical properties
US20160335244A1 (en) System and method for text normalization in noisy channels
US11409754B2 (en) NLP-based context-aware log mining for troubleshooting
EP3754900A1 (en) Method for validating transaction in blockchain network and node for configuring same network
US10915537B2 (en) System and a method for associating contextual structured data with unstructured documents on map-reduce
EP3748507B1 (en) Automated software testing
CN113836314B (zh) 知识图谱构建方法、装置、设备以及存储介质
CN111435406A (zh) 一种纠正数据库语句拼写错误的方法和装置
US20170132206A1 (en) Reduction of memory usage in feature generation
CN113220710B (zh) 数据查询方法、装置、电子设备以及存储介质
US8606772B1 (en) Efficient multiple-keyword match technique with large dictionaries
US11481547B2 (en) Framework for chinese text error identification and correction
CN116383412B (zh) 基于知识图谱的功能点扩增方法和系统
US11042578B2 (en) Multigram index for database query
CN113742332A (zh) 数据存储方法、装置、设备及存储介质
US11341190B2 (en) Name matching using enhanced name keys
US11550777B2 (en) Determining metadata of a dataset
US9916296B2 (en) Expanding entity and relationship patterns to a collection of document annotators using run traces
US9009200B1 (en) Method of searching text based on two computer hardware processing properties: indirect memory addressing and ASCII encoding
US20230214394A1 (en) Data search method and apparatus, electronic device and storage medium
US10565197B2 (en) Search performance using smart bitmap operations

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210215

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: 20220308

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220330

R150 Certificate of patent or registration of utility model

Ref document number: 7052145

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150