IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ サービスナウ・カナダ・インコーポレイテッドの特許一覧

<>
  • 特許-機密データの検出および置き換え 図1
  • 特許-機密データの検出および置き換え 図2
  • 特許-機密データの検出および置き換え 図3
  • 特許-機密データの検出および置き換え 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-11
(45)【発行日】2024-01-19
(54)【発明の名称】機密データの検出および置き換え
(51)【国際特許分類】
   G06T 11/60 20060101AFI20240112BHJP
【FI】
G06T11/60 100A
【請求項の数】 20
(21)【出願番号】P 2021522994
(86)(22)【出願日】2019-10-25
(65)【公表番号】
(43)【公表日】2022-01-14
(86)【国際出願番号】 CA2019051515
(87)【国際公開番号】W WO2020082187
(87)【国際公開日】2020-04-30
【審査請求日】2021-06-15
【審判番号】
【審判請求日】2023-05-08
(31)【優先権主張番号】62/751,159
(32)【優先日】2018-10-26
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】522314511
【氏名又は名称】サービスナウ・カナダ・インコーポレイテッド
【氏名又は名称原語表記】SERVICENOW CANADA INC.
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】ビュシラ,エレナ
(72)【発明者】
【氏名】パスケロ,ジェローム
(72)【発明者】
【氏名】ラザリュス,パトリック
【合議体】
【審判長】畑中 高行
【審判官】樫本 剛
【審判官】板垣 有紀
(56)【参考文献】
【文献】特表2017-530460(JP,A)
【文献】特開2017-69599(JP,A)
【文献】特開2011-170509(JP,A)
【文献】特開2013-137740(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00 - 19/20
G09G 5/00 - 5/40
H04N 5/64 - 5/655
(57)【特許請求の範囲】
【請求項1】
文書内の機密データを置き換えるためのシステムであって、
少なくとも1つの文書の画像を受取るための前処理モジュールと、
前記少なくとも1つの文書の前記画像を異なるクラスタフィールドに細分するためのクラスタ化モジュールとを含み、前記異なるクラスタフィールドの各々はデータを含み、前記異なるクラスタフィールドの各々はクラスタ位置を有し、前記システムはさらに、
クラスタデータ内容および前記クラスタ位置に基づいて前記異なるクラスタフィールドにおける特定のタイプのデータを認識することにより、前記異なるクラスタフィールドにおける前記データが機密データを含むかどうかを示す機密度を前記データに割り当てるためのデータタイプ判定モジュールを含み、前記機密度は信頼レベルを含み、前記システムはさらに、
前記異なるクラスタフィールドにおける少なくとも1つの特定のタイプのデータの機密度に基づいて、前記データの機密データを置き換えデータと置き換えるためのデータ置き換えモジュールを含み、前記信頼レベルは閾値を上回っている、システム。
【請求項2】
少なくとも1つの特定のタイプのデータの前記機密データは、
人の名前、
人の住所、
人の電話番号、
性別、
秘密情報、
身体的特徴、
財政情報、
健康関連情報、
ビジネス関連情報、
企業体の名前、
企業体の住所、
日付、
クレジットカード番号、
銀行口座データ、
社会保障番号/社会保険番号、
個人識別データ、および、
血液型、
のうち少なくとも1つを含む、請求項1に記載のシステム。
【請求項3】
前記クラスタ化モジュールは前記異なるクラスタフィールドの各々の周囲に境界ボックスを配置する、請求項1に記載のシステム。
【請求項4】
前記置き換えデータの要素はデータベースから無作為に選択される、請求項1に記載のシステム。
【請求項5】
前記置き換えデータは、データベースから選択されたデータ要素を連結することによって作成される、請求項1に記載のシステム。
【請求項6】
前記置き換えデータの一部は無作為に生成される、請求項1に記載のシステム。
【請求項7】
前記置き換えデータのうち少なくとも一部は、データベースから選択されたデータ要素を連結することによって作成される、請求項1に記載のシステム。
【請求項8】
特定のタイプの機密データの各インスタンスは特定の置き換えデータと置き換えられる、請求項1に記載のシステム。
【請求項9】
前記データタイプ判定モジュールは、前記文書上の前記データのロケーションおよび前記データ内の特定の単語の有無のうちの1つに基づいて特定のタイプのデータを認識する、請求項1に記載のシステム。
【請求項10】
前記機密データと、前記機密データと置き換えられる前記置き換えデータとは、同じタイプのデータである、請求項1に記載のシステム。
【請求項11】
前記置き換えデータは、前記画像から前記機密データを実質的に除去するブロックである、請求項1に記載のシステム。
【請求項12】
前記置き換えデータは前記システムの一部によって生成される、請求項1に記載のシステム。
【請求項13】
前記システムは、前記機密データの視覚的外観を認識する、請求項1に記載のシステム。
【請求項14】
前記視覚的外観は、前記機密データのフォント、サイズ、スタイル、および間隔のうち少なくとも1つを含む、請求項13に記載のシステム。
【請求項15】
置き換えデータは、置き換えられるべき機密データの前記視覚的外観と一致する、請求項13に記載のシステム。
【請求項16】
前記置き換えデータは、前記文書に継ぎ目なく混ざり合う、請求項15に記載のシステム。
【請求項17】
文書内の機密データを置き換えるための方法であって、
少なくとも1つの文書の画像を受取るステップと、
前記少なくとも1つの文書の前記画像を異なるクラスタフィールドに細分するステップとを含み、前記異なるクラスタフィールドの各々はデータを含み、前記異なるクラスタフィールドの各々はクラスタ位置を有し、前記方法はさらに、
クラスタデータ内容および前記クラスタ位置に基づいて前記異なるクラスタフィールドにおける特定のタイプのデータを認識することにより、前記異なるクラスタフィールドにおける前記データが機密データを含むかどうかを示す機密度を前記データに割り当てるステップを含み、前記機密度は信頼レベルを含み、前記方法はさらに、
前記異なるクラスタフィールドにおける少なくとも1つの特定のタイプのデータの機密度に基づいて、前記データの機密データを置き換えデータと置き換えるステップを含み、前記信頼レベルは閾値を上回っている、方法。
【請求項18】
前記文書はビジネス文書である、請求項17に記載の方法。
【請求項19】
前記機密データは、
人の名前、
人の住所、
人の電話番号、
性別、
秘密情報、
身体的特徴、
財政情報、
健康関連情報、
ビジネス関連情報、
企業体の名前、
企業体の住所、
日付、
クレジットカード番号、
銀行口座データ、
社会保障番号/社会保険番号、
個人識別データ、および、
血液型、
のうち少なくとも1つである、請求項18に記載の方法。
【請求項20】
前記置き換えデータは、前記画像から前記機密データを実質的に除去するブロックである、請求項17に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
技術分野
本発明は文書処理に関する。より具体的には、本発明は、文書内の機密情報を置き換えるためのシステムおよび方法に関する。
【背景技術】
【0002】
背景
21世紀初期は、複数の産業において機械学習が出現し、その偏在性が高まったことを特徴とした時代であった。しかしながら、機械学習が次段階へと進んでビジネス界に浸透するには、機械学習は、ビジネスを運営するための何千ものさまざまなタスクに対処できなければならない。これを可能にするために、機械学習システムは、このようなタスクを学習し、改良し、最終的に実行しなければならないだろう。また、これを適切に実行できるようにするために、機械学習システムは大量のデータへのアクセスを必要とするだろう。さらに、これらの大量のデータを用いてこのような機械学習システムを適切にトレーニングすることで、さまざまなビジネスプロセスを実現することができる。
【0003】
このような大量のデータが利用可能であることは明らかであろう。ビジネスの自動化の利用が増えているにも関わらず、ビジネス界は依然として紙やその写しを中心として展開している。一例として、ビジネスは依然として、(紙上の)文字、(紙上に印刷される)請求書、および(紙上に印刷される)領収書を用いて行なわれている。ペーパーレス社会がますます盛んに推奨されているが、実際には紙が依然として広く用いられており、紙を段階的に廃止する試みが進められているものの、このように紙を媒体としてデータを扱う形態が直ちに変化する可能性は低い。このような例として挙げられるのはペーパーレスの請求書および領収書であり、ペーパーレスであるにも関わらず、その見た目は紙に印刷されたものと同じままである。
【0004】
このようなビジネスプロセスを実行するために、上述のような紙の記録、請求書および文書を用いることで機械学習システムをトレーニングすることができる。しかしながら、この方針は、プライバシーといった、情報技術革命の別の主要な懸念に起因する問題を伴う。請求書、クレジットカード領収書、医療報告書などの現実世界の文書は全て、人々が自分以外の他者に利用されることを望まない情報を含んでいる。このため、機械学習システムのためのトレーニングデータセットにおいて現実世界の文書を使用できるようにしつつユーザのデータおよびプライバシーを保護できるシステムおよび方法が必要とされている。好ましくは、このようなシステムおよび方法は、適切に展開されれば、人の介入をほとんどまたは全く必要としないだろう。
【発明の概要】
【課題を解決するための手段】
【0005】
概要
本発明は、プライバシーおよび機密データを保護するためのシステムおよび方法に関する。文書の画像が前処理ステージで受取られるとともに、当該画像には、さらなる処理のために十分な画像が得られることを確実にするために画像前処理が適用される。前処理は、画質および画像の向きに関連する処理を含み得る。次いで、画像は初期処理ステージに送られる。初期処理ステージでは、文書内の関連データのロケーションが特定され、境界ボックスがデータの周囲に配置される。次いで、結果として得られた画像が処理ステージに渡される。このステージで、境界ボックス内のデータのタイプが判定され、適切な置き換えデータが生成される。次いで、置き換えデータが画像内に挿入され、これにより、画像内の機密データが除去されて置き換えられる。
【0006】
第1の局面では、本発明は、文書内の機密データを置き換えるためのシステムを提供する。当該システムは、
少なくとも1つの文書の画像を受取るための前処理モジュールと、
当該少なくとも1つの文書の各々の当該画像を異なるフィールドに細分するためのクラスタ化モジュールとを含み、当該フィールドの各々はデータを含み、当該システムはさらに、
当該異なるフィールドにおける特定のタイプのデータを認識することにより、当該異なるフィールドにおける当該データが機密データを含むかどうかを判定するためのデータタイプ判定モジュールと、
当該異なるフィールドにおける少なくとも1つの特定のタイプのデータの機密データを置き換えデータと置き換えるためのデータ置き換えモジュールとを含む。
【0007】
第2の局面では、本発明は、文書の画像がデータセット内のデータ点として用いられる前に当該画像を調整するための方法を提供する。当該方法は、
a)当該画像を受取るステップと、
b)当該画像における当該文書上の機密データのロケーションを判定するステップと、
c)ステップb)で判定された当該機密データのタイプを判定するステップと、
d)ステップc)で判定された当該機密データのタイプに基づいて置き換えデータを判定するステップと、
e)当該置き換えデータを当該ロケーションで当該画像に挿入することにより、当該機密データを当該置き換えデータと置き換えるステップとを含む。
【0008】
図面の簡単な説明
本発明の実施形態を添付の図面を参照して説明する。添付の図面においては、異なる図面における同一の参照符号は同一の要素を示す。
【図面の簡単な説明】
【0009】
図1】本発明の一局面に従ったシステムを示すブロック図である。
図2】本発明の別の局面に従ったシステムの構成を示すブロック図である。
図3図2のシステムの変形例を示す図である。
図4図2および図3のそれぞれのシステムにおける構成要素のうちの1つにおけるサブモジュールを詳細に示すブロック図である。
【発明を実施するための形態】
【0010】
詳細な説明
図1を参照すると、本発明の一局面に従ったブロック図が示されている。本発明のこの局面は、前処理ステージ20と、初期処理ステージ30と、処理ステージ40とを有するシステム10を含む。
【0011】
前処理ステージ20は、少なくとも1つの文書を含む画像を受取る。前処理ステージ20は、画像がさらなる処理のために十分な画質であるかどうかを判定する。この目的のために、前処理ステージは、画像のコントラスト、色、画像サイズ、向き、および鮮明度、ならびに、画像の明瞭度に影響を及ぼす可能性のあるアーチファクトの有無を分析し得る。これらの画質パラメータがさらなる処理のためには不十分である(たとえば、OCRが文字を判別できないような色バランスおよび/またはコントラストである)場合、前処理ステージは、必要に応じてこれらのパラメータを調整する。画像のコントラスト、色、幾何学的形状および鮮明度を調整することに加えて、前処理ステージはまた、画像のトリミング、および/または、画像の明瞭度に影響を及ぼす可能性のあるアーチファクトの除去、を実行し得る。
【0012】
上記に加えて、前処理ステージはまた、画像内のデータのより容易な処理を確実にするために画像の向きを調整し得る。具体的には、前処理ステージは、画像が画面上で確実に正方形になるように当該画像を回転させてもよい。この回転は、必要に応じて、(たとえば、文書が画像内で上下逆さまになっている場合)180度一回転させてもよく、または、(たとえば、文書が画像内で傾斜している場合)少しだけ回転させてもよい。同様に、画像は、画面上で確実に正方形になるように、幾何学的に平行移動させてもよい(すなわち、必要に応じて左/右に調整するかまたは移動させてもよい)。これにより、得られる画像をより容易に処理することが確実にされる。
【0013】
画像のさまざまなパラメータの調整は、予め定められた限度および/または規格に従ってさまざまな適切な画像調整モジュールによって実行され得ることが明らかであろう。このようなモジュールは、画像処理および/または画質調整の技術分野における当業者にとって周知である。
【0014】
また、実現例に応じて、画像が単一の文書のみを示す/参照することを確実にするように前処理ステージが当該画像を処理し得ることも明らかであろう。画像が複数の文書の画像の集まりである場合、前処理ステージは、元の画像を複数の画像に分割してもよい。この場合、各画像が示す文書は1つだけである。
【0015】
前処理ステージの後、調整された画像が初期処理ステージに送られる。初期処理ステージは、文書の調整済み画像を分析して、画像内の関連データのロケーションを特定し、そのデータの周囲に適切な境界ボックスを配置する。加えて、初期処理ステージは、境界ボックス内のデータのタイプを判定する。
【0016】
初期処理ステージは、文書内のデータのクラスタを判定する。データ抽出ステージは、文書内のデータのクラスタを判定し、データのクラスタの各クラスタ内のデータのタイプを判定し、データのさまざまな個々のクラスタの周囲に(必要に応じて)境界ボックスを配置する。データの各クラスタの(文書内の)ロケーションも判定され、必要に応じて、データの隣接クラスタが連結されて、より大きなクラスタが形成される。これは、1つのクラスタ内のデータがデータセットの一部である(たとえば、1つのクラスタが住所の第1の部分を有し、その隣りのクラスタが住所の第2の部分を有しており、これらの2つのクラスタが連結されて、住所を含むデータの単一クラスタが形成される)場合に必要となり得る。
【0017】
明確にするために、画素が論理的に一貫したテキストデータ/概念データのブロックにセグメント化されるように、クラスタ化アルゴリズムまたはプロセスが文書に適用される。一例として、患者の名前を含む画素同士は一緒にグループ化され、その患者の住所を含む(患者の名前の下で一列に並んだ)画素のクラスタとは別個にクラスタ化される。
【0018】
初期処理ステージが、文書内のデータの各クラスタ内のデータのタイプを判定することは明らかであろう。これは、クラスタ内のデータが画像、テキスト(すなわち、英数字)、表、署名、または、ビジネス文書において遭遇する可能性がある他の任意のタイプのデータであるかどうかを判定することを含む。この判定に加えて、初期処理ステージはまた、クラスタのパラメータだけでなく、クラスタ内のデータのパラメータも判定する。このため、初期処理ステージは、クラスタのサイズを(画素単位で)判定することができる。これは、画素における、または他の任意の適切な測定単位でのクラスタの長さ、幅および高さを判定することを意味し得る。テキストデータを含むデータのクラスタの場合、初期処理ステージは、テキストデータのフォントタイプおよびフォントサイズを判定し得る。画像データの場合、画像のサイズ、画像内の線、画像内の形状、さらには、画像内のテキストの存在の有無も判定され得る。表データの場合(すなわち、クラスタデータが表を含む場合)、初期処理ステージは、表内のデータのパラメータを判定してもよい。上記に加えて、初期処理ステージは、データ(特に、テキストデータ)のフォント、サイズ、スタイル、間隔等も認識する。
【0019】
初期処理ステージが、クラスタを判定するだけではなく、さまざまなクラスタを区切るのに必要な箇所に境界ボックスを配置することも明らかであろう。当然ながら、「境界ボックス」という語はまた、データのクラスタを区切るか輪郭を描くかまたは示すとともに画像上で機械可読である手段および方法のためのさまざまな形状、サイズおよび構成を含む。このような境界ボックスはまた、形状、サイズまたは向きが不規則な(たとえば、ある角度を付けて傾斜した)箱または形状を含む。
【0020】
また、初期処理ステージが、画像を含むクラスタデータ内の内容のタイプを判定できることも明らかであろう。初期処理ステージはまた、クラスタがロゴ、署名、または何らかの種類の絵を含むことを画像データが示すかどうかを判定するように構成され得る。上述したように、画像内の任意のテキストを判定し、必要に応じて、置き換え/除去のために抽出および/またはタグ付けすることができる。
【0021】
上述の記載から、初期処理ステージは、クラスタ内のテキストを判定するためにさまざまなクラスタに対してOCR機能を実行することが必要となるだろう。この機能のために、適切なOCRモジュールが用いられ得る。同様に、上述のタスクに特に適している他のモジュールが用いられてもよい。このため、クラスタ判定、クラスタ連結、画像認識、テキストパラメータ判定、画像パラメータ判定、および他の機能のための専用のモジュールが用いられてもよい。当然、システムの構成に応じて、1つ以上のモジュールによって複数の機能が実行されてもよい。OCR、データ分析、テキストおよび画像の分析および判定に関する技術分野の当業者であれば、どのモジュールおよびどの機能が本発明のさまざまなステージおよびモジュールを実現するのに必要であるかを判定することができる。
【0022】
初期処理ステージの後、関連する境界ボックスを有する画像は、次に、処理ステージに渡される。機密データ(たとえば、名前および住所)と見なされるデータタイプの場合、処理ステージは、同じタイプの同様のデータを生成し、機密データを適切な置き換えデータと置き換える。
【0023】
処理ステージは、まず、境界ブロック内のデータのうちどのデータが機密データで構成されているかを判定する。どのデータタイプがどの境界ブロック内にあるかを初期処理ステージが既に判定しているので、処理ステージは関連するデータタイプを探索するだけである。したがって、一実現例では、名前データ(たとえば、適切な名前および企業名)ならびに住所データ(たとえば、少なくとも番号および街路からなるデータ)が判定される。次いで、各機密データのための適切な置き換えデータが生成される。これは、適切な置き換えデータを無作為に生成するために用いることができる名前要素/住所要素および/または適切な名前のデータベースを参照して行うことができる。機密データのインスタンスごとに置き換えデータが生成されると、次に、置き換えデータが適切な態様で画像に挿入され、これにより、置き換えデータによって元の機密データを覆い隠すことおよび/もしくは上書きすること、または不明瞭にすること、がなされる。置き換えデータは機密データのフォント、サイズ、スタイル、間隔などに一致するように調整される。これにより、置き換えデータの置き換えテキストが継ぎ目なく文書に混ざり合う。
【0024】
置き換えデータを無作為に生成する場合、置き換えデータを生成するためにデータベースから無作為に選択されて連結される名前要素/住所要素のデータベースを用いる必要があることが明らかであろう。一例として、無作為な名前は、公知の/一般的なファーストネーム(たとえば、ビル(Bill)、ウィリアム(William)、ジェーン(Jane)、ジョー(Joe)、トム(Tom)、ステイシー(Stacey)など)のデータベースからファーストネームを最初に選択することによって生成されてもよい。次いで、公知の/一般的なラストネームのデータベースにアクセスして、公知の/一般的なラストネーム(たとえば、スミス(Smith)、キム(Kim)、パーク(Park)、シンハ(Singh)、フレッチャー(Fletcher)、クーパー(Cooper)など)を無作為に選択する。次に、これらの2つの無作為な要素を連結することで、結果として、文書の画像内の名前データの1つ以上のインスタンスを置き換えるために用いることができる無作為な置き換え名が得られる。住所については、公知の/一般的な街路名のデータベースにアクセスして、街路名(たとえば、公園、第1番、第2番、主、壁、川など)を無作為に選択する。次いで、一般的な街路名の追加部分を含んだ別のデータベースにアクセスして、無作為な街路の追加部分(たとえば、街路、通り、広場、小路、三日月形広場など)を探し出す。次いで、これらの住所要素を連結することで、街路名を得ることができる。街路番号については、適切な乱数生成器が、街路名と共に用いられるべき街路番号を生成し得る。住所を生成するために、無作為な都市名を上述の方法と併せて用いることもできる。無作為に生成された他の置き換えデータを用いて、他の機密データを置き換えることができる。一例として、社会保険番号または社会保障番号のインスタンスの代わりに、無作為に生成された番号を用いることができる。会社識別情報に関して、データベースから1つ以上の会社名要素を無作為に選択し、次いで、これらの要素を連結して無作為な置き換え用会社名を形成することによって、無作為な会社名も生成され得る。電話番号も無作為に生成され得るか、または、既知の偽番号が文書内に挿入されてもよい。一例として、市外局番を無作為に生成し、市内局番555を無作為に生成された4桁の数字とともに用いて、たとえば(212)555-4243といった既知の偽の番号を得ることもできる。
【0025】
当然、上述のデータベースの内容が偽データまたは無作為データである必要がないことは明らかであろう。文書中に元から存在している機密データの代わりに実データを当該文書に挿入することが望まれる場合もあるかもしれない。このような場合、文書に挿入されるべき実データ点を含む適切なデータベースが用いられてもよい。
【0026】
上述の代替例として、各機密データごとに新しい置き換えデータ点を生成する代わりに、住所または名前の各インスタンスごとに特定の置き換え名/住所を用いることができる。したがって、この代替例の一例として、名前の各インスタンスがJohn Doeなどの特定の名前と置き換えられ、住所の各インスタンスが「スプリングフィールド、エバーグリーンテラス、742(742 Evergreen Terrace, Springfield)」などの特定の置き換え住所と置き換えられるだろう。文書中の電話番号のすべてのインスタンスを置き換えるために特定の偽の電話番号が用いられてもよい。
【0027】
明確にするために、以下のいずれかは、文書中の機密データと見なされ得るとともに、上述の適切な置き換えデータと置き換えられ得る。具体的には、名前、住所、電話番号、社会保険番号、社会保障番号、健康保険番号、ライセンスプレート番号、会社名、ウェブサイトアドレス、電子メールアドレス、車両登録番号、IPアドレス、保険証券番号、クレジットカード番号、身分証明書番号、生年月日、血液型、銀行口座データ、および医療処方箋データである。より明確にするために、「機密データ」という語は、テキストデータだけでなく、画像データ、音声データ、または、ユーザ、企業体もしくは組織が自身/それ自体以外の誰かに利用可能になることを望まないであろう任意のタイプのデータ、も含み得る。このため、「機密データ」という語は、1つの文脈において機密データと見なされる可能性のあるものが別の文脈において機密データと見なされる可能性のないように、文脈に応じて定義され得る。同様に、「機密データ」はまた、ロゴ、企業ロゴ、または文書の画像中に存在し得る他の任意の画像を包含し得る。したがって、ロゴが機密データである場合、そのロゴは、適切な置き換えデータによってタグ付けおよび/または置き換えがなされてもよい。ロゴの場合、適切な置き換えデータは、汎用ロゴ、汎用画像、適切に生成された画像、ならびに/または、文書の画像から機密データを実質的にブロックおよび/もしくは除去するブロックを含み得る。
【0028】
さらにより明確にするために、いくつかの実現例では、個人データであると見なされ得るデータはいずれも、「機密データ」という語に含まれ得る。したがって、「個人データ」または「機密データ」が、識別された自然人または識別可能な自然人に関連する任意の情報を含み得ることと、識別可能な自然人が、特に名前、識別番号、ロケーションデータ、オンライン識別子などの識別子を参照することによって、または当該自然人の身体的、生理学的、遺伝的、精神的、経済的、文化的もしくは社会的な識別情報に特有の1つ以上の要因を参照することによって、直接的または間接的に識別可能な人であることと、が明らかであろう。「機密データ」はまた、或る自然人の先天的または後天的な遺伝的特徴に関連する個人データも含み得るものであって、これら遺伝的特徴は、当該自然人の生理学的機能もしくは健康についての固有の情報を与えるとともに、特に、当該自然人から得られる生体サンプルを分析することによって得られるものである。同様に、「機密データ」はまた、「生体認証データ」または個人データを含み得る。これらデータは、或る自然人の身体的特徴、生理学的特徴または行動特徴に関する特定の技術的処理の結果得られるものであって、これにより、顔の画像または指紋鑑定データなどの当該自然人の固有の識別情報が認められるかまたは裏付けられる。「機密データ」はまた、或る自然人の身体的健康または精神的健康に関連する個人データも含み得るものであって、健康医療サービスの規定も含め、当該個人の健康状態についての情報を示している。加えて、「機密データ」は、或る自然人についての仕事の実績、経済状況、健康、個人的嗜好、関心、信頼性、素行、ロケーション、または動向に関する分析もしくは識別または予測に用いられ得るデータを含み得る。
【0029】
本発明の一実現例では、システムの出力は、文書中のデータのさまざまなクラスタのリストである。各クラスタのパラメータ、内容、ロケーション/位置、およびクラスタの内容のパラメータは各クラスタに関連付けられている。したがって、この出力は、文書の所望の内容および/または関連する内容を判定するために機械学習システムによって用いられ得る。
【0030】
上述の実現例の場合、文書中のデータのさまざまなクラスタ内の機密データは、クラスタ内で、機械学習システムによってデータが処理される前に置き換えることができる。このため、本発明のシステムは文書の画像内の機密データを処理し、判定し、ロケーションを特定するとともに、当該システムは、文書内のデータを用いるであろう機械学習システムによって当該文書が処理される前に、当該機密データを適切な置き換えデータと置き換えるだろう。このため、機密データは、機械学習システムをトレーニングするためのデータセットの一部を形成しないだろう。しかしながら、機密データ自体がトレーニングのためのデータセットの一部を形成しない場合であっても、特に機密データが置き換えデータによって置き換えられた後に、元の機密データの文脈または特徴が保存されて、トレーニングデータセットの一部を形成することが明らかであろう。機密データの配置、位置決め、および性質はトレーニングデータセットの一部を形成し得るが、実際の機密データ自体はトレーニングデータセットの一部を形成しないだろう。
【0031】
本発明のさらに別の実現例では、文書の画像、クラスタの各々または境界ボックスの各々におけるデータがデータタイプによって分類される。分類を実施する場合、文書内のデータのさまざまなクラスタが、データクラスタのいくつかの特定のクラスに分類される。一例として、クラスタは、住所クラスタ(たとえば、請求書または明細書における住所ブロック)、文書タイトル/タイプのクラスタ(たとえば、請求書または明細書を示すブロック)、データクラスタ、項目記述クラスタ(たとえば、請求書、領収書または明細書において項目化された項目の記述)、署名クラスタ、名前クラスタ(たとえば、書簡中の挨拶ブロックまたは明細書/請求書中の「宛先」ブロック)、ロゴクラスタ、表記クラスタ(たとえば、注釈付き文書中の手書きメモブロック)、および、電子メールアドレスクラスタ(すなわち、電子メールアドレスを含むクラスタ)などとして分類することができる。この分類により、クラスタ内および/または境界ボックス内のデータのデータタイプを容易に判定することが可能になる。このような方策はまた、クラスタ内および/または境界ボックス内の機密データを置き換える際に用いられる適切な置き換えデータ点を生成する負担を軽減するだろう。
【0032】
一代替例では、本発明は、上述のモジュールまたはステージとは異なり、いくつかのモジュールを用いて実現することができる。この実現例では、文書の画像が入力モジュールにおいて受取られる。次いで、文書の内容が複数のクラスタに分割され、当該分割されたクラスタについての文書内の位置/ロケーションと、他のクラスタに対する当該分割されたクラスタの位置/ロケーションとが判定される。これらのクラスタは、文書内の特定のクラスタの位置決め/ロケーションおよび/またはクラスタの内容に基づいて、名前、住所および合計金額などの特定のタイプのデータを有するものとして分類される。クラスタ位置に加えて、他の考慮事項を用いて、クラスタに含まれるデータのタイプを判定してもよい。これらの考慮事項は、他のクラスタに対するクラスタのロケーション、クラスタのサイズ、およびクラスタ内の特定のテキストの有無を含み得る。クラスタ内のデータのタイプが判定されると、関連するデータに、機密データであるか否かについてタグ付けすることができる。クラスタが判定されてそれらの内容も判定されると、データの性質が判明する。さまざまなクラスタに機密データが見出された場合、適切な置き換えデータが生成されて、機密データの代わりに文書に挿入される。当然ながら、文書が以前から知られている場合、当該文書上の異なるタイプの特定のデータのロケーションおよび/または位置決めは、システムがこれらのデータのロケーションを判定するために画像および/または文書を分析する必要がなくなるように、当該システム内で事前構成され得ることが明らかであろう。
【0033】
図2を参照すると、本発明の一局面に従ったシステムのブロック図が示される。システム110は、画像受取りモジュール120、クラスタ判定モジュール130、位置判定モジュール140、データタイプ判定モジュール150、置き換えデータ生成モジュール160、およびデータ置き換えモジュール170を含む。当該システムは、文書の画像を受取り、当該画像を用いて文書内のデータのクラスタを判定し、さらに、文書内のさまざまなクラスタの位置/ロケーションを判定する。同様に、当該システムは、他のクラスタに対する当該クラスタの位置/ロケーションを判定する。次いで、当該システムは、当該クラスタの位置/ロケーションおよび/または当該クラスタの内容に基づいて、文書内の1つ以上のクラスタ中に存在するデータのタイプを判定する。加えて、1つ以上のクラスタ内のデータの性質(すなわち、データが機密データであるか否か)が判定される。1つ以上のクラスタ内に存在するデータのタイプに基づいて、適切な置き換えデータが生成され、この置き換えデータが文書の画像に挿入される。
【0034】
図2のシステムでは、画像受取りモジュール120は、文書の画像を受取るとともに、コントラスト、鮮明度、色などの画像のパラメータを調整するなどの前処理ステップを実行して、画像の処理をより容易にし得るかまたは少なくとも処理のし難さを低減させ得る。次いで、クラスタ判定モジュール130は、画像内のデータのグループを選んで、どのデータがどのクラスタを形成するかを判定する。次いで、位置判定モジュール140は、文書内の各クラスタの絶対位置(またはロケーション)および他のクラスタに対する各クラスタの位置を判定する。次いで、データタイプ判定モジュール150は、1つ以上のクラスタを分析して、クラスタの位置/ロケーションを含み得るいくつかの要因に基づいてクラスタ内のデータのタイプを判定する。クラスタ内のデータを判定するために用いられるこの位置は、(画素距離もしくはサイズの観点から)文書におけるクラスタの絶対位置、または、(ここでも画素距離もしくはサイズの観点から)他のクラスタに対する当該クラスタの位置であり得る。
【0035】
クラスタ内のデータのタイプが判定されると、データが機密であるかどうかを判定するためにデータの分析が行なわれる。この分析の結果に基づいて、適切な置き換えデータを生成し、次いで、文書に挿入することができる。データの機密度は、単にデータの性質にも依存し得ることが明らかであろう。一例として、すべての住所が機密データとして扱われてもよく、同様に、すべての適切な名前も機密データとして扱われてもよい。また、1つのデータが機密であるかどうかについての判定は、必ずしも二元的な問題はなく、確率および/または信頼レベルに基づき得ることも明らかであろう。したがって、当該システムは、特定のデータを識別し得るとともに、当該特定のデータが特定のデータタイプである確率または信頼レベル(たとえば、或るデータが住所または人名であることの信頼レベル)を割当て得る。加えて、当該システムは、潜在的に識別されたデータが機密性を有する確率(たとえば、(固有の人名であり得る)データが文書の主題を識別しているので機密性があるとされる信頼レベル)を割当て得る。したがって、当該システムは、信頼レベルの任意の適切な組合わせに基づいて、引き続き、(信頼レベルが所定の閾値を上回る場合には)当該データの除去/置き換えを行なってもよく、(信頼レベルが所定の閾値を下回る場合には)データに対して何も行なわず、または、(信頼レベルが所定の閾値に近い場合には)ユーザによるレビューのためにデータにフラグ付けしてもよい。当然、他の構成も可能であり、これら他の構成は、当該システムについての所望の許容誤差および最終結果に依存し得る。
【0036】
機密データが判定されると、置き換えデータ生成器160は、次いで、文書中に発見された機密データのために適切な置き換えデータを生成する。次いで、生成された置き換えデータは、データ置き換えモジュール170によって、文書の画像に挿入されて機密データと置き換えられる。いくつかの実現例では、置き換えデータは、置き換えられる機密データと同じ特徴を有し得る。このような実現例の場合、置き換えデータは、置き換えられる機密データと同じ色、フォント、サイズおよび/または色合いを有し得る。したがって、このような実現例は、視覚的特徴に関して、置き換えられる機密データと区別できない置き換えデータを生成する可能性がある。このような実現例の場合、機密データを分析すると、結果として、機密データのデータのタイプが得られるだけでなく、機密データの視覚的特徴および/またはテキスト上の特徴(たとえば、フォント、フォントサイズ、文字サイズ、文字間隔、色、文字ピッチ、背景色、前景色など)が識別されることとなるだろう。したがって、機密データのこのような特徴を用いて、置き換えデータをフォーマットおよび/または処理することで、結果として、元の機密データとは視覚的に区別できない置き換えデータを得ることができる。
【0037】
この文書のために、「位置」は、画像のうちクラスタが見出される場所を意味するものと解釈することができ、この「位置」は、画素の観点、画素間隔の観点、または、画像もしくは文書中の1つ以上の固定点からの距離測定のための他の何らかの形式の観点から、定量化可能である。同様に、「ロケーション」という語は、画像または文書内でクラスタが発見され得る区域または領域を意味すると解釈され得る。したがって、一例として、クラスタは、画像の右上四半分または画像の下半分にあるロケーションにあってもよい。同様に、別の例として、クラスタは、画像の右端からx個分の画素および画像の上端からy個分の画素の位置にあってもよい。当業者にとっては、システムの実現例に応じて「位置」および「ロケーション」という語が同義的に用いられ得ることが明らかであろう。
【0038】
図2に示すシステムが本発明のシステムの可能な一実現例のみを示していることが明らかであろう。当然、他の実現例も可能である。別の可能な実現例として、図3は、画像受取りモジュール120およびデータタイプ判定モジュール150が図2と同じである変形例を示す。この変形例では、データ置き換え生成器モジュール160およびデータ置き換えモジュール170の機能が単一のモジュールに組み合わされて置き換えモジュール180となる。図3の変形例では、モジュール130および140の機能が組合わされて単一のクラスタ処理モジュール160となり、その出力がデータタイプ判定モジュール150によって処理される。一実現例では、クラスタ処理モジュール160の出力は、複数のクラスタのリスト(各クラスタ内の任意の連結テキストを含む)とともに、各クラスタについての位置インジケータとを含む。次いで、データタイプ判定モジュール150がこのクラスタおよびクラスタ位置リストを分析することで、複数のクラスタのうち1つ以上のクラスタ内のデータを判定することができる。また、この変形例では、モジュール160および170の機能が組合わされてモジュール180となる。このため、モジュール180は、置き換えデータを生成して、この置き換えデータを文書内の関連クラスタに挿入する。
【0039】
データタイプ判定モジュール150が複数の実現例を有し得ることが明らかであろう。一実現例では、文書中の複数のクラスタのうち1つ以上のクラスタ内のデータを判定するために、ルールベースのモジュールが用いられる。モジュールによって実現されるルールは、クラスタの絶対位置、1つ以上の他のクラスタに対するその相対位置、クラスタの長さ、さらには、そのクラスタ内のデータを判定するためのそのクラスタの内容を考慮に入れたものであり得る。一例として、クラスタの位置が文書の先頭に近く、2つのより小さいクラスタに隣接しており、クラスタ内の文字または単語のフォントサイズが中間サイズである場合、そのクラスタは内部に住所を有し得る。上記の説明として、ビジネス書簡の場合、その書簡の宛先の住所ブロックは、文書の先頭の近くにあり、日付の行と問い合わせの行との間にある。日付の行は小さなクラスタであり、問い合わせの行(すなわち、用件(RE:)の行)も比較的小さなクラスタであるので、これら2つの小さなクラスタ間のクラスタは、通常、住所ブロックである。
【0040】
所望の結果が、文書から住所、日付および総ドル量を識別することである場合、機械学習システムでは、当該システムによって、サンプルからいくつかの類似性およびパターンを推定できることが明らかであろう。ルールベースのシステムでは、この推定を予め判定しておいて後にシステム内のルールにハードコード化する必要があるかもしれない。通常のビジネス文書では、一般に、住所ブロックは文書の先頭付近にある。同様に、請求書および領収書の場合、請求書または領収書の合計は、通常、文書の末尾付近に区別して離して配置されている。日付は、通常、文書の先頭付近にあって、通常、住所クラスタに隣接しているかまたは住所クラスタの隣にある。典型的なビジネス文書のサンプルから、ルールベースのデータ判定モジュールを構築することができる。これらのビジネス文書の構造のばらつきを考慮すると、当然、このようなルールベースのモジュールが予想通りに実行されない可能性もある。
【0041】
別の実現例では、ニューラルネットワークが、データタイプ判定モジュールにおいて用いられ得る。ニューラルネットワークは、さまざまなクラスタを日付クラスタ、住所クラスタ、または総量クラスタとして分類するタスクが課されている可能性もある。ある特定のサイズよりも大きいクラスタ(すなわち、予め定められた量を上回る量の文字を有するクラスタ)は、それらクラスタが本文クラスタを構成し得るものであって日付クラスタ、住所クラスタまたは総量クラスタではないので、廃棄されてもよい。ニューラルネットワークは或るデータセットでトレーニングされ得る。データセットには、さまざまなビジネス書簡、請求書、領収書、購入注文、請求書式、支払伝票、ならびに、日付クラスタ、住所クラスタおよび総額クラスタとして既に分類されているクラスタを含む他のビジネスタイプ文書が含まれる。ニューラルネットワークは、このようなデータセットを用いることにより、ビジネス文書中のクラスタうちどのクラスタがこれらのデータ点(すなわち、住所、日付、総額)を含んでいるかを判定するようにトレーニングされ得る。
【0042】
再び図3を参照すると、クラスタ処理モジュール160がまた、ニューラルネットワークを用いて、文書内のさまざまなクラスタを判定し得るとともに、文書内の各クラスタの位置を判定し得ることも明らかであろう。次いで、その結果を、データタイプ判定モジュール150を備えたニューラルネットワークに供給することで、日付クラスタ、住所クラスタおよび総額クラスタ(または他のクラスタ)を見出すことができる。さらに、見出されたこれらのクラスタ内のデータを識別することができ、必要に応じて、適切な置き換えデータと置き換えることができる。
【0043】
また、所望のクラスタを確実に見出すために文書中のさまざまなクラスタがさらに処理され得ることも明らかであろう。一例として、日付クラスタの場合、クラスタ内のテキストを分析して、暦月の名前またはその略語に対応するテキストを捜してスキャンすることができる。同様に、潜在的な住所クラスタを分析して、住所中に通常現われるテキスト(たとえば、「街路(「street」または「st.」)」、「大通り(「avenue」または「ave.」)」等)を捜してサーチすることができる。クラスタ内のデータのタイプを判定する際に、クラスタの相対的な位置決めも考慮することができる。一例として、文書の先頭付近であってより小さいサイズの2つのクラスタ間にある中間サイズのクラスタは、書簡内の住所クラスタであり得る。同様に、文書の一番先頭にある(とともに1つまたは2つのより小さいクラスタに隣接するかまたはそれよりも上方にある)中間サイズのクラスタは、領収書中の住所クラスタであり得る。別の例として、最大クラスタの真上にある中間サイズのクラスタは住所クラスタであり得る。クラスタの絶対位置も、クラスタ内のデータの決定要因となり得る。一例として、あらゆる領収書の先頭にあるクラスタは、その内部に住所を含んでいる。同様に、任意の請求書または領収書上の総額は文書の末尾(または末尾のごく近く)にある。当然、この分析および処理は、ルールベースのデータ判定モジュールにコード化され得るか、または、適切なニューラルネットワークをトレーニングする際の考慮事項として導入され得る。
【0044】
さらに別の変形例では、図1のシステムの出力は、上述のデータタイプ判定のためのニューラルネットワークへの適切な入力として用いられてもよい。次いで、ニューラルネットワークは、どのクラスタがどのデータを含み、したがって、どのデータを処理および/または置き換える必要があるかを判定することができる。
【0045】
置き換えデータ生成モジュール160が図4に示すような構成を有し得ることは明らかであろう。図4から、モジュールが、置き換えデータについての要求を受取る集合サブモジュール190を有し得ることが分かるだろう。当該要求は、要求されている置き換えデータのタイプ(たとえば、住所、名前、電話番号など)を含むだろう。この要求に基づいて、適切な置き換えデータ要素がデータベースサブモジュール200から収集され得るとともに、適切な数要素が乱数生成器サブモジュール210から生成され得る。次いで、さまざまな置き換えデータ要素が集合サブモジュール190に送り返され、次に、当該集合サブモジュール190が当該さまざまな要素を組合わせて適切な置き換えデータ点にする。次いで、この生成された置き換えデータがモジュール160の出力として送出され得る。
【0046】
上述の説明はOCRについて言及しているが、本発明が手書きテキストおよび/または手書きデータにも適用可能であり得ることが明らかであろう。このため、手書きテキストが認識され得ると、適切にタグ付けされ得るとともに、適切な置き換えデータに置き換えられ得る。このような置き換えデータはまた、画像内に挿入された置き換えデータが手書きテキストのように見えるように、または、手書きテキストの特徴を有するように、処理または生成されてもよい。当然、置き換えデータは、必要に応じてまたは所望に応じて、タイプされたテキストまたは他の適切なタイプのテキストデータであってもよい。
【0047】
本発明の別の代替的な実現例は、データベースを参照することなくデータを生成するデータ生成モジュールを用いてもよい。適切な名前/データ生成モジュールが、このような実現例のために用いられ得る。一例として、適切な名前、住所および他のデータを生成する敵対的生成ネットワークを有するモジュールが用いられてもよい。
【0048】
代替例として、上述の説明は、機密データを当該機密データと同じタイプの置き換えデータと置き換えることを詳述しているが、機密データは、単に文書の画像から除去されるだけでもよい。このような代替例の場合、機密データは、文書から機密データを実質的に削除するように、無地色の画像ブロックによって覆い隠されてもよい。このような代替例の場合、置き換えデータは単に機密データを実質的に除去するおよび/または覆い隠すデジタル画像ブロックであるだろう。
【0049】
本発明のさまざまな局面がソフトウェアシステム全体においてソフトウェアモジュールとして実現され得ることが明らかであろう。したがって、本発明は、実行されると、所定の機能でさまざまなソフトウェアモジュールを実現するコンピュータ実行可能命令の形態をとり得る。
【0050】
加えて、他に規定のない限り、本明細書で「画像」または「複数の画像」と言及している場合、それは、ピクセルまたは画素を含むデジタル画像または複数のデジタル画像を指すことが明らかであろう。同様に、「音声ファイル」または「複数の音声ファイル」と言及している場合、それは、他に規定のない限り、デジタル音声ファイルを指している。また、「映像」、「映像ファイル」、「データオブジェクト」、「データファイル」、および他のそのような語はすべて、他に規定のない限り、デジタルファイルおよび/またはデータオブジェクトを意味するものと解釈されるべきである。
【0051】
本発明の実施形態は、方法ステップの態様でプログラムされたコンピュータプロセッサまたは同様のデバイスによって実行されてもよく、または、これらのステップを実行するための手段を備えた電子システムによって実行されてもよい。同様に、電子メモリは、コンピュータディスケット、CD-ROM、ランダムアクセスメモリ(Random Access Memory:RAM)、読出専用メモリ(Read Only Memory:ROM)、または当該技術において公知の同様のコンピュータソフトウェア記憶媒体などを意味し、そのような方法ステップを実行するようにプログラムされてもよい。また、これらの方法ステップを表わす電子信号が通信ネットワークを介して伝送されてもよい。
【0052】
本発明の実施形態は、従来の任意のコンピュータプログラミング言語で実現されてもよい。たとえば、好ましい実施形態は、手続き型プログラミング言語(たとえば「C」もしくは「Go」)、またはオブジェクト指向言語(たとえば「C++」、「java(登録商標)」、「PHP」、「PYTHON」、もしくは「C#」)で実現されてもよい。本発明の代替的な実施形態は、予めプログラムされたハードウェア要素、他の関連する構成要素として、または、ハードウェア構成要素とソフトウェア構成要素との組合せとして実現されてもよい。
【0053】
実施形態は、コンピュータシステムとともに使用するためのコンピュータプログラム製品として実現され得る。そのような実現例は、一連のコンピュータ命令を含んでいてもよく、当該コンピュータ命令は、コンピュータ読取可能媒体(たとえばディスケット、CD-ROM、ROM、もしくは固定ディスク)などの有形媒体上に固定されるか、または、モデムもしくは他のインターフェイスデバイス、たとえば、媒体を通じてネットワークに接続された通信アダプタなどを介して、コンピュータシステムに伝送可能である。媒体は、有形媒体(たとえば光通信線または電気通信線)であってもよく、または、無線技術で実現される媒体(たとえば、マイクロ波、赤外線もしくは他の伝送手法)であってもよい。一連のコンピュータ命令は、本明細書中に前述された機能のすべてまたは一部を具現化するものである。当業者であれば、そのようなコンピュータ命令が、多くのコンピュータアーキテクチャまたはオペレーティングシステムとともに使用するためのいくつかのプログラミング言語で書かれ得ることを理解するはずである。さらに、そのような命令は、半導体デバイス、磁気デバイス、光学デバイスまたは他のメモリデバイスなどの任意のメモリデバイスに格納されてもよく、光学、赤外線、マイクロ波または他の伝送技術などの任意の通信技術を用いて伝送されてもよい。このようなコンピュータプログラム製品が、印刷された文書または電子文書とともに取外し可能媒体(たとえば、市販ソフトウェア)として配布され得ること、コンピュータシステムに(たとえば、システムROMもしくは固定ディスク上に)予め搭載され得ること、または、サーバからネットワーク(たとえばインターネットもしくはワールドワイドウェブ)を介して配布され得ること、が予想される。当然、本発明のいくつかの実施形態は、ソフトウェア(たとえば、コンピュータプログラム製品)とハードウェアとの組合せとして実現されてもよい。本発明のさらに他の実施形態は、全体がハードウェアとして、また全体がソフトウェア(たとえばコンピュータプログラム製品)として実現されてもよい。
【0054】
本発明を理解する人であれば、上述したものの代替的構造および実施形態または変形例に想到し得る。それらはすべて、添付の特許請求の範囲で定義されるとおり本発明の範囲内に収まるよう意図されている。
図1
図2
図3
図4