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

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

▶ タタ コンサルタンシー サービシズ リミテッドの特許一覧

特許7474587対話型インタフェース及びデータベースクエリを用いた文書画像からの情報抽出の方法及びシステム
<>
  • 特許-対話型インタフェース及びデータベースクエリを用いた文書画像からの情報抽出の方法及びシステム 図1
  • 特許-対話型インタフェース及びデータベースクエリを用いた文書画像からの情報抽出の方法及びシステム 図2
  • 特許-対話型インタフェース及びデータベースクエリを用いた文書画像からの情報抽出の方法及びシステム 図3
  • 特許-対話型インタフェース及びデータベースクエリを用いた文書画像からの情報抽出の方法及びシステム 図4
  • 特許-対話型インタフェース及びデータベースクエリを用いた文書画像からの情報抽出の方法及びシステム 図5A
  • 特許-対話型インタフェース及びデータベースクエリを用いた文書画像からの情報抽出の方法及びシステム 図5B
  • 特許-対話型インタフェース及びデータベースクエリを用いた文書画像からの情報抽出の方法及びシステム 図6
  • 特許-対話型インタフェース及びデータベースクエリを用いた文書画像からの情報抽出の方法及びシステム 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-17
(45)【発行日】2024-04-25
(54)【発明の名称】対話型インタフェース及びデータベースクエリを用いた文書画像からの情報抽出の方法及びシステム
(51)【国際特許分類】
   G06V 30/164 20220101AFI20240418BHJP
   G06F 16/21 20190101ALI20240418BHJP
   G06F 16/2452 20190101ALI20240418BHJP
   G06F 16/58 20190101ALI20240418BHJP
   G06T 7/00 20170101ALI20240418BHJP
   G06V 30/194 20220101ALI20240418BHJP
   G06V 30/412 20220101ALI20240418BHJP
【FI】
G06V30/164
G06F16/21
G06F16/2452
G06F16/58
G06T7/00 350C
G06V30/194
G06V30/412
【請求項の数】 12
【外国語出願】
(21)【出願番号】P 2019217153
(22)【出願日】2019-11-29
(65)【公開番号】P2020095713
(43)【公開日】2020-06-18
【審査請求日】2022-10-24
(31)【優先権主張番号】201821045427
(32)【優先日】2018-11-30
(33)【優先権主張国・地域又は機関】IN
(73)【特許権者】
【識別番号】510337621
【氏名又は名称】タタ コンサルタンシー サービシズ リミテッド
【氏名又は名称原語表記】TATA Consultancy Services Limited
【住所又は居所原語表記】Nirmal Building,9th Floor,Nariman Point,Mumbai 400021,Maharashtra,India.
(74)【代理人】
【識別番号】100094569
【弁理士】
【氏名又は名称】田中 伸一郎
(74)【代理人】
【識別番号】100103610
【弁理士】
【氏名又は名称】▲吉▼田 和彦
(74)【代理人】
【識別番号】100109070
【弁理士】
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100067013
【弁理士】
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100086771
【弁理士】
【氏名又は名称】西島 孝喜
(74)【代理人】
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【弁理士】
【氏名又は名称】近藤 直樹
(74)【代理人】
【識別番号】100139712
【弁理士】
【氏名又は名称】那須 威夫
(74)【代理人】
【識別番号】100176418
【弁理士】
【氏名又は名称】工藤 嘉晃
(72)【発明者】
【氏名】ラヴケシュ ヴィグ
(72)【発明者】
【氏名】ゴータム シュロフ
(72)【発明者】
【氏名】アリンダム チョードゥリー
(72)【発明者】
【氏名】ロヒット ラフル
(72)【発明者】
【氏名】グンジャン セーガル
(72)【発明者】
【氏名】ヴィシュワナス ドレスワミー
(72)【発明者】
【氏名】モニカ シャルマ
(72)【発明者】
【氏名】アシュウィン スリニヴァサン
【審査官】新井 則和
(56)【参考文献】
【文献】米国特許出願公開第2010/0061634(US,A1)
【文献】特開平07-037034(JP,A)
【文献】米国特許出願公開第2018/0336198(US,A1)
【文献】米国特許出願公開第2015/0379343(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06V 30/164
G06V 30/194
G06V 30/412
G06T 7/00
G06F 16/21
G06F 16/2452
G06F 16/58
(57)【特許請求の範囲】
【請求項1】
文書の画像から関連情報を抽出する方法(200)であって、前記方法は、
前記画像を入力画像として取得するステップ(202)と、
前記入力画像にノイズ除去方法を実行して前記入力画像からノイズを取り除くステップであって、前記ノイズ除去方法は、条件付き敵対的生成ネットワーク(cGAN)を用いることによって実行される、ステップ(204)と、
文書識別子を実行して前記文書のタイプを識別するステップであって、前記タイプは、印刷されたテキスト又は手書きのテキストの何れかである、ステップ(206)と、
前記識別された文書のタイプに応じて前記画像に光学文字認識(OCR)を実行して、テキストエンティティのセットを検出するステップ(208)と、
前記テキストエンティティのセット間の関係を設定するためのスキーマを設計するステップ(210)と、
前記検出されたテキストエンティティのセット及び前記スキーマをリレーショナルデータベースに格納するステップ(212)と、
ユーザによる自然言語クエリを提供して、対話型インタフェースを用いて前記画像から関連情報を抽出するステップ(214)と、
前記自然言語クエリをSQLクエリに変換するステップ(216)と、
前記SQLクエリを前記リレーショナルデータベースに提供し、前記リレーショナルデータベースから関連情報を抽出するステップ(218)と、
を含むプロセッサ実装ステップを含む方法。
【請求項2】
前記検出されたテキストエンティティのセット及び前記スキーマを前記リレーショナルデータベースに格納するステップの後に、前記SQLクエリを前記リレーショナルデータベースに直接提供するステップを更に含む、ことを特徴とする請求項1に記載の方法。
【請求項3】
覚特徴を前記入力画像に存在する文字のセットにマップするための再帰型符号器-復号器モデルを用いて前記手書きテキストを処理するステップを更に含む、ことを特徴とする請求項1に記載の方法。
【請求項4】
前記自然言語クエリ及びこの意図を分類するステップを更に含む、ことを特徴とする請求項1に記載の方法。
【請求項5】
前記関連情報を抽出するのに用いられたSQLクエリのセットのワークフローを格納するステップを更に含む、ことを特徴とする請求項1に記載の方法。
【請求項6】
前記テキストエンティティのセットは、その空間座標に関連付けられ、この情報は、近傍の前記テキストエンティティの所在を伝達する、ことを特徴とする請求項1に記載の方法。
【請求項7】
前記文書識別子は、畳み込みニューラルネットワーク(CNN)からなるシャムネットワークを用いて実行される、ことを特徴とする請求項1に記載の方法。
【請求項8】
前記テキストエンティティのセットは、ワード、ライン、テキストブロック、チェックボックス、矢印、OMRサークル、ロゴ、テーブル、図形又はテキストボックスのうちの1又は2以上である、ことを特徴とする請求項1に記載の方法。
【請求項9】
前記文書識別子は、OCRを実行する前に正しいテンプレートを確認するために実行される、ことを特徴とする請求項1に記載の方法。
【請求項10】
前記入力画像のノイズは、カメラの揺れ、不適切なフォーカス、画像化ノイズ、コーヒーの染み、しわ、低解像度、暗い照明、又は反射のうちの1又は2以上に起因する、ことを特徴とする請求項1に記載の方法。
【請求項11】
最初の前記SQLクエリを、最初の前記クエリと比べてより単純な1より多いクエリに分解するステップを更に含む、ことを特徴とする請求項1に記載の方法。
【請求項12】
文書の画像から関連情報を抽出するシステム(100)であって、前記システムは、
前記画像を入力画像として提供する入力モジュール(102)と、
メモリ(104)と、
前記メモリと通信するプロセッサ(106)と、
を備え、前記プロセッサは更に、
前記入力画像にノイズ除去方法を実行して前記入力画像からノイズを除去するノイズ除去モジュールであって、前記ノイズ除去方法は、条件付き敵対的生成ネットワーク(cGAN)を用いることによって実行される、ノイズ除去モジュール(108)と、
前記文書のタイプを識別する文書識別子(110)であって、前記タイプは、印刷されたテキスト又は手書きのテキストの何れかである、文書識別子(110)と、
前記識別された文書のタイプに応じて前記画像に光学文字認識(OCR)を実行して、テキストエンティティのセットを検出するOCRエンジン(112)と、
前記エンティティのセット間の関係を設定するスキーマを設計するスキーマ設計モジュール(114)と、
前記検出されたテキストエンティティのセット及び前記スキーマをリレーショナルデータベースに格納する格納モジュール(116)と、
ユーザによる自然言語クエリを提供して、前記画像から関連情報を抽出する対話型インタフェース(118)と、
前記自然言語クエリをSQLクエリに変換する変換モジュール(120)と、
前記SQLクエリを前記リレーショナルデータベースに提供して、前記リレーショナルデータベースから前記関連情報を抽出するデータベースクエリモジュール(122)と、
を備える、ことを特徴とするシステム(100)。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照及び優先権)
本特許出願は、2018年11月30日に出願されたインド特許出願第201821045427号に対する優先権を主張するものである。
【0002】
本明細書の実施形態は、一般に、画像からのデータ抽出の分野に関する。詳細には、特定的ではないが、本発明は、対話型インタフェース及びデータベースクエリを用いた文書画像から関連情報を抽出するエンド・ツー・エンドシステム及び方法を提供する。
【背景技術】
【0003】
最先端のニューラルネットワークを有するコンピュータビジョンの分野における最近の進歩は、光学文字認識(OCR)の精度を押し上げている。しかしながら、OCRによって取り込まれない視覚構造を文書が有する場合には、文字/テキストの抽出だけでは不十分であることが多い。テーブル、チャート、脚注、ボックス、見出しからの情報の抽出及び当該文書の対応する構造化表現の検索は依然として課題であり、多数の現実世界のユースケースに用途がある。
【0004】
ディープラーニングの進歩のお蔭でOCRの精度が大幅に向上したが、これらだけでは走査される文書からの効率的な情報の抽出には不十分である。ほとんどの文書が、テーブル、テキストボックス、ブロック、チャート及びグラフの形式のリッチビジュアル構造を有する。画像に存在する異なるエンティティ間のビジュアル関係は、抽出の前に存在する情報の理解及び論理的思考には不可欠なことである。また、専門的知識又は業務ルールの頻繁な取り込みは、多くの場合、抽出性能を向上させ、抽出データ妥当性確認及び訂正を可能にすることができる。
【0005】
画像からのテキストの抽出は、数十年にわたる活発な研究の分野とされてきた。比較的単純なテキストレイアウト及び優良品質の走査による文書の解釈は、これらの進歩の結果として現在では十分に容易になっている。しかしながら、多様な視覚レイアウトを有する幾つかの異なるテンプレートに従う文書を扱う時には、意味的正しい情報を取り出すことが極めて困難である可能性がある。この問題の解決に向けた幅広い種類の作業が存在してきた。
【0006】
研究グループは、文書インスタンスが、文書のカテゴリーを定義する事前格納モデルのセットに一致する情報抽出システムを開発してきた。抽出された文書テキストは、キーワードの事前コンパイルリスト及びこれらの異綴語と比較される。この結果は、ワードモデルのデータベースの各文書及びこれらの論理的関係に一致される。別の方法は、文書からのコンテンツの一致、解釈及び抽出に用いられる文書の概念的モデルを構築することをユーザに要求する。この作業は、キーフィールドの抽出よりも文書の分類及び編成に重きを置く。これらの従来技術は、画像におけるエンティティ間の関係を取り込むために文書の属性関係グラフベースの表現を構築するが、これらのシステムは、適切なテンプレート文書モデルを作成するためにユーザからの相当な専門的知識に頼る。
【0007】
情報抽出のための現行の方法は、画素座標のレベルのプログラミングを必要とし、初心者ユーザによる迅速な配備に十分に抽象的ではない。更に、大多数の既存の方法は、NLからSQLクエリを生成するハンドクラフト規則ベースの方法を用いる。何れかの新しい英語文が扱われる場合、新しいデータのインデックスを作成し、辞書、メタデータなどを更新するようなマニュアル介入が必要になる。
【発明の概要】
【発明が解決しようとする課題】
【0008】
以下は、実施形態の基本的な理解を提供するために、本開示の一部の実施形態の簡易的な要約を提示している。この要約は、実施形態について広範囲にわたる概要ではない。これは、実施形態の主要な/重要な要素を識別すること、又は実施形態の範囲を正確に記述することを意図するものではない。この唯一の目的は、以下に提示する詳細な説明の前置きとして簡易的な形式で一部の実施形態を示すことである。
【課題を解決するための手段】
【0009】
前述の観点から、本明細書の実施形態は、画像から関連情報を抽出するシステムを提供する。本発明のシステムは、入力モジュール、メモリ及びプロセッサを備える。この入力モジュールは入力画像として画像を提供する。プロセッサは、ノイズ除去モジュール、文書識別子、光学文字認識エンジン、スキーマ設計モジュール、格納モジュール、対話型インタフェース、変換モジュール及びデータベースクエリモジュールを含む。ノイズ除去モジュールは、入力画像にノイズ除去方法を実行し、入力画像からノイズを取り除く。文書識別子は、印刷されたテキスト又は手書きのテキストかの文書のタイプを識別する。OCRエンジンは、識別された文書のタイプに応じて画像に光学文字認識(OCR)を実行し、テキストエンティティのセットを検出する。スキーマ設計モジュールは、テキストエンティティのセット間の関係を設定するスキーマを設計する。格納モジュールは、リレーショナルデータベースに検出されたテキストエンティティのセット及びスキーマを格納する。対話型インタフェースは、ユーザによる関連情報を抽出する自然言語クエリを提供する。変換モジュールは、自然言語クエリをSQLクエリに変換する。データベースクエリモジュールは、SQLクエリをリレーショナルデータベースに提供し、リレーショナルデータベースから関連情報を抽出する。
【0010】
別の態様では、実施形態は、画像から関連情報を抽出する方法を提供する。最初に、画像が入力画像として取得される。次のステップで、ノイズ除去方法が入力画像に実行され、入力画像からノイズを取り除く。文書識別子が、文書のタイプを識別するために実行され、このタイプは印刷されたテキスト又は手書きのテキストの何れかである。次のステップで、光学文字認識(OCR)が、識別された文書のタイプに応じて画像に実行され、テキストエンティティのセットを検出する。次にテキストエンティティのセット間の関係を設定するスキーマが設計される。検出されたテキストエンティティのセット及びスキーマがリレーショナルデータベースに格納される。次のステップで、対話型インタフェースを用いてユーザによる関連情報を抽出するために自然言語クエリが提供される。自然言語クエリは次にSQLクエリに変換される。最終的に、SQLクエリはリレーショナルデータベースに提供され、リレーショナルデータベースから関連情報を抽出する。
【0011】
本明細書の何れのブロック図も本発明の主題の原理を具現化する例示的なシステムの概念図を表すことは、当業者には理解されるべきである。同様に、何れのフローチャート、流れ図、状態遷移図、疑似コードなども、コンピュータ可読媒体に実質的に表すことができ且つこのようなコンピュータデバイス又はプロセッサが明示的に示されているか否かに関わらずコンピュータデバイス又はプロセッサによって実行される様々な処理を表すことが理解されるであろう。
【0012】
更に別の実施形態では、1又は2以上のハードウェアプロセッサによって実行された時に、1又は2以上のハードウェアプロセッサに対して、デジタル製品及びデジタルサービスを構築するための1又は2以上の統一アーキテクチャモデルを設計する方法を実行させる1又は2以上の命令を含む、1又は2以上の非一時的機械可読情報ストレージ媒体が提供され、本方法は、画像を入力画像として取得するステップ、入力画像にノイズ除去方法を実行して入力画像からノイズを取り除くステップ、文書識別子を実行して印刷されたテキスト又は手書きのテキストかの何れかである文書のタイプを識別するステップ、識別された文書のタイプに応じて画像に光学文字認識(OCR)を実行しテキストエンティティのセットを検出するステップ、テキストエンティティのセット間の関係を設定するスキーマを設計するステップ、検出されたテキストエンティティのセット及びスキーマをリレーショナルデータベースに格納するステップ、ユーザによる自然言語クエリを提供して対話型インタフェースを用いて関連情報を抽出するステップ及び自然言語クエリをSQLクエリに変換するステップ、及びSQLクエリをリレーショナルデータベースに提供してリレーショナルデータベースから関連情報を抽出するステップのプロセッサ実施ステップを含む。
【0013】
前述の概要及び以下の詳細な説明は共に、例示的で解説的なものに過ぎず、請求項に記載される本発明を制限するものでないことを理解すべきである。
【0014】
本開示の一部に組み入れられ且つ本開示の一部を構成する添付図面は、例示的な実施形態を示し、明細書と共に開示される原理を説明する役割を果たす。
【図面の簡単な説明】
【0015】
図1】本開示の実施形態による対話型インタフェース及びデータベースクエリを用いて画像から関連情報を抽出するシステムを示すブロック図である。
図2】本開示の実施形態によるクエリの規則を書き込むシステムのワークフローを示す図である。
図3】本開示の実施形態による画像のノイズを除去するためのcGANのアーキテクチャを示す図である。
図4】本開示の実施形態による再帰符号器復号器を備えた畳み込みニューラルネットワークを示す図である。
図5A】本開示の実施形態による対話型インタフェース及びデータベースクエリを用いて画像から関連情報を抽出することに伴うステップを示す流れ図である。
図5B】本開示の実施形態による対話型インタフェース及びデータベースクエリを用いて画像から関連情報を抽出することに伴うステップを示す流れ図である。
図6】本開示の実施形態によるディープリーダスキーマの例を示す図である。
図7】本開示の実施形態による情報抽出に用いられるサンプルバンク文書の例を示す図である。
【発明を実施するための形態】
【0016】
添付図面を参照しながら例示的な実施形態について説明する。図では、参照数字の最左桁は、参照数字が最初に現れる図を特定している。便宜上、図全体を通して同じ参照数字が同じ又は同様の要素を示すのに用いられる。開示される原理の実施例及び特徴が本明細書で記載されるが、修正、適応及び他の実施構成が、開示される実施形態の精神及び範囲から逸脱することなく実施可能である。以下の詳細な説明は例示的なものとみなされ、真の範囲及び精神は添付の請求項によって示されるものとする。
【0017】
ここで同様の参照文字が図面全体を通して一貫して対応する特徴を示す図面、特に図1から図7を参照すると、好ましい実施形態が示され、これらの実施形態は以下の例示的なシステム及び/又は方法の関連において説明される。
【0018】
本開示の1つの実施形態によれば、対話型インタフェース及びデータベースクエリを用いて画像から関連情報を抽出するシステム100が図1のブロック図に示されている。システム100は、SQL又は自然言語クエリを介してクエリすることができるリレーショナル・テーブルへの画像に存在する様々な視覚エンティティ間の空間関係を利用する。システム100は、視覚エンティティ抽出のための最新のディープラーニングモデルを使用することによって、及びディープラーニングがNLP及びプログラム合成で作った最新の進歩を活用することによってこれを行う。
【0019】
システム100は、「ディープリーダ(DeepReader)フレームワーク」と呼ぶことができるフレームワークを用いる。ディープリーダフレームワークのワークフローが図2に示されている。このフレームワークは、文書からのパターンベースのエンティティの識別を介した文書画像からの情報抽出を容易にし、文書画像における様々なエンティティにわたるメタリレーショナルモデルを維持する。このモデルスキーマは、ディープビジョンモデルによって検出されたエンティティのアブストラクション及びこれらの間の関係の理解を容易にすることができる。システム100は、手書き及び印刷されたテキストの組み合わせを認識するのに適用されるビジョンアルゴリズムに働き掛けて、ノイズの影響を無くし、文書のタイプを識別しダイアグラムのオブジェクト/ライン/ボックスを検出する。システム100は更に、文書で検出されたエンティティ(ワード、テキストボックス、ラインなど)間の関連のある関係全てを取り込むようにするために、抽出されたエンティティをリッチ関係スキーマにマップする。関連情報及びフィールドは、リレーショナル・テーブルの上位にSQLクエリを書き込むことによって文書から抽出することができる。自然言語に基づくインタフェースを関係スキーマの上位に追加して、これによって自然言語でクエリを指定する非技術者のユーザが苦労なく情報をフェッチすることができる。
【0020】
本開示の1つの実施形態によれば、システム100は更に、図1のブロック図に示すように、入力モジュール102、メモリ104及びプロセッサ106を含む。プロセッサ106は、メモリ104と通信して機能する。プロセッサ106は更に、複数のモジュールを含む。複数のモジュールは、メモリ104に格納されたアルゴリズムのセットにアクセスして特定の機能を実行する。プロセッサ106は更に、ノイズ除去モジュール108、文書識別子110、光学文字認識(OCR)エンジン112、スキーマ設計モジュール114、格納モジュール116、対話型インタフェース118、変換モジュール120及びデータベースクエリモジュール122を含む。
【0021】
本開示の1つの実施形態によれば、入力モジュール102は、画像を入力画像としてシステム100に提供するよう構成される。画像は、文書又は何れかの他のソースから取り込むことができる。入力モジュール102は、多種多様なソフトウェア及びハードウェアインタフェース、例えば、ウェブインタフェース、グラフィカルユーザインタフェースなどを含むことができ、有線ネットワーク(例えば、LAN、ケーブルなど)、及びWLAN、セルラー、又は衛星などの無線ネットワークを含む、多種多様なネットワークN/W及びプロトコルタイプ内の複数の通信を容易にすることができる。
【0022】
システム100は、図2のワークフローに示された幾つかの段階の文書を処理する。本開示の1つの実施形態によれば、システム100は、ノイズ除去モジュール108を含む。ノイズ除去モジュール108は、入力画像にノイズ除去方法を実行して入力画像からノイズを取り除くよう構成される。通常、システム100に入力として提供される生の文書画像は、ボケており、ノイズが多いか又は色褪せている可能性がある。ノイズ除去モジュール108は、データ抽出の前に画像を鮮明にするために用いられる。
【0023】
画像品質の劣化は、カメラの揺れ、不適切なフォーカス、画像化ノイズ、コーヒーの染み、しわ、低解像度、暗い照明、又は反射などの様々な理由で起こる可能性がある。これらの種類の問題は、テキスト検出、OCR及びローカライゼーションのような多くのコンピュータビジョンアルゴリズムの性能に大きく影響する。ここでの目的は、ノイズの多い入力から直接的に高品質画像を再構築すること、また、画像における高構造化データを維持することである。テキスト文書がより詳細な情報を包含し、従ってノイズに対してより高感度であるときに、テキスト文書画像は自然なシーン画像とは著しく異なる。
【0024】
ノイズ除去方法は、敵対的生成ネットワーク(GAN)を用いることによって実行される。システム100は、条件付き敵対的生成ネットワーク(cGAN)を用いており、ここでは、生成器及び識別器の両方がその他の情報yに条件付けられる。本開示では、変数yは、クラスラベル、すなわち鮮明化画像によって表される。識別器だけが、付加的入力層としてyをフィードすることによって条件付けられてきた。cGANネットワークは、以下の最小-最大目的関数を用いて訓練される。
【数1】
ここで、Prはデータ分布であり、Pgは、
=G(z),z=P(z)によって定義されるモデル分布であり、zは、ノイズの多い画像データセットからのサンプルの1つである。
【0025】
画像のノイズ除去のためのcGANのアーキテクチャが図3に示されている。この図は、生成器モデル及び識別器モデルを示す。生成器ネットワークは、畳み込み層と逆畳み込み層の組み合わせからなる(図では区別できない)。ブロックの各々は、バッチノーマライゼーションが続き、畳み込み層で使用される起動はPReLUであるが、逆畳み込み層では、ReLU起動が用いられる。層の全てに対して、ストライドは1に設定される。入力と同じになるように各特徴マップの次元を維持するため、必要に応じてゼロパディングが用いられる。効率的なネットワーク訓練及び優良な収束性能のために、対照スキップ接続が図のように生成器ネットワークに用いられる。
【0026】
本開示の1つの実施形態によれば、プロセッサ106は更に、文書識別子110を含む。文書識別子110は、入力画像のタイプを識別するよう構成される。入力画像のタイプは、印刷されたテキスト又は手書きテキストの何れかとすることができる。ディープシャムネットワーク(deep Siamese network)が、文書識別に用いられる。シャムネットワークのベースは、従来の畳み込みニューラルネットワーク(CNN)を含む。
【0027】
文書識別子110の識別に応じて、出力が手書きのテキストである場合、手書き走査文書をデジタル化するための更なる処理が必要になる。本実施形態では、システム100は、画像に存在する文字のセットに視覚特徴をマップするための再帰型符号器-復号器モデルが続く畳み込み特徴抽出器を使用する手書きテキスト認識(HTR)エンジン124を用いる。モデルの一般的な概要を図4に示す。
【0028】
このモデルは2つのステップ、すなわち視覚特徴抽出とシーケンスラーニングを包含する。このモデルは、テキストシーケンス、ワード又はラインの画像から高密度特徴マップを抽出する7階層化完全畳み込みネットワークを用いる。これらの特徴マップは次に、特別に設計されたマップツーシーケンス層によって処理され、各々が個々の文字のローカル属性を符号化する特徴ベクトルのシーケンスを生成し、完全なシーケンスがその相互依存性を取り込み、これによって画像に存在するテキストの完全な視覚表現を提供する。
【0029】
視覚特徴シーケンスは次に、視覚特徴シーケンスのジストを表す文脈ベクトルを生成する符号器RNNにフィードされる。符号器RNNは、双方向LSTMセルを含み、順方向及び逆方向の両方に沿った依存性を取り込む。第2復号器LSTMは、この文脈ベクトルを用いて、文脈ベクトル及び以前の出力に各々が条件付けられる文字のシーケンスを出力する。層ノーマライゼーションは、RNN起動を安定化するために導入され、モデルを規則化するためにドロップアウトが追加された。符号器―復号器モデルはまた、注意機構(Attention mechanism)を用いて、長いセンテンスの場合に復号能力を更に増補する。
【0030】
このモデルは、テキスト認識に固有のクラスインバランス問題(class imbalance problem)に対処する標準的なカテゴリークロスエントロピー損失(categorical cross-entropy loss)に対する改善である焦点損失(focal loss)を用いて訓練される。推論であるが、シーケンスの全ての要素における同時分布(joint distribution)を最大化することによって仮説のセットに対して最良可能出力シーケンスをサーチするビームサーチアルゴリズムが用いられる。標準的な文書の走査画像には、事前訓練モデルが適用された。評価尺度は、単語誤り率(WER)及び文字誤り率(CER)であった。このモデルは、14.2%のWER及び8.7%のCERを達成した。
【0031】
本開示の1つの実施形態によれば、プロセッサ106は、光学文字認識(OCR)エンジン112を含む。OCRエンジン112は、識別された文書のタイプに応じて入力画像に光学文字認識(OCR)を実行してテキストエンティティのセットを検出するよう構成される。文書は、ワード、ライン、テキストブロック、及びテキストボックス、チェックボックス、矢印、OMRサークル、ロゴ、テーブル、図形のような多くのエンティティを有する。関心の情報は、これらのエンティティの1つ又は幾つかを含むことがあり、これは文書に存在するエンティティの全てを検出するために不可欠である。
【0032】
OCRエンジン112は、テキストのタイプに応じて情報を抽出する。ページラインに対して、接続された成分クラスタの間のユークリッド距離に基づいて水平クラスタリングが実行される。ページラインはローカライズされ、各ページラインパッチが標準的なOCRエンジン(テッセラクト、グーグルビジョン又はアビーファインリーダなど)を介して送信され、そのラインに対応するテキストを取得する。送信側の小さなパッチがOCRエンジンから高い精度を生じたことに留意されたい。
【0033】
同様に、テキストブロックは、ほぼ同じx座標で始まるラインのセットであり、これらの間の垂直距離は、ラインの高さの2倍より大きくない。特定のテキストブロック又はボックスの内側にあるラインは、ブロック又はボックスラインとは別に識別される。ボックスに対して、第1画像が閾値及び転置に続いて失われる。この後に各接続された成分の範囲がそのバウンドボックスの範囲と比較される。接続された成分の範囲がバウンドボックスの範囲のパーセント以内である場合、接続された成分はボックスとしてみなされる。
【0034】
本開示の1つの実施形態によれば、プロセッサ106は、スキーマ設計モジュール114及び格納モジュール116を含む。スキーマ設計モジュール114は、テキストエンティティのセット間の関係を設定するスキーマを設計するよう構成される。設計されたスキーマは、文書の全てに対して1つの統一スキーマである。データベースのスキーマは変化しない。スキーマは、文書の何れのタイプにも用いることができる。検出されたテキストエンティティのセット及びスキーマは、格納モジュール116を用いてリレーショナルデータベース126に格納される。スキーマは、情報抽出を容易にするために設計される。文字エンティティのセットは、その空間座標に関連付けられ、この情報が近傍のテキストエンティティの所在を伝達する。この情報は、様々な論理的及び空間的関係を推測するために用いられる。
【0035】
関係スキーマが文書からのデータを読み込まれた状態で、SQLを用いて標準的データベーススキーマのようにクエリすることができる。本開示の1つの実施形態によれば、プロセッサ106はデータベースクエリモジュール122を含む。データベースクエリモジュール122は、SQLクエリをリレーショナルデータベース126に提供してリレーショナルデータベース126から関連情報を抽出するよう構成される。
【0036】
本開示の1つの実施形態によれば、システム100は、SQL言語が堪能ではないユーザにアクセス可能にすることができる。プロセッサ106は、対話型インタフェース118及び変換モジュール120を含む。対話型インタフェース118は、自然言語クエリを提供してユーザによる関連情報を抽出するよう構成される。自然言語クエリは、SQLに関するユーザの知識に関わらず何れのユーザによっても提供することができる。変換モジュール120は、自然言語クエリを1つのSQLクエリに変換するよう構成される。自然言語は、シーケンス対シーケンスモデルを用いてSQLにクエリする。ディープリーダは、この作業を構築して、自然言語発話を内部でSQLクエリにマップする対話型インタフェース118をユーザに提供して、関連情報を抽出する。
【0037】
一方で、リレーショナルデータベースから要求される情報をフェッチするのに、単純なSQLクエリで十分である場合がある。往々にして、複雑なクエリ又は単純なクエリのシーケンスをパイプラインで実行して正しい情報を取得する必要がある。これらの複雑なクエリは、複数の単純なクエリに分解することができ、中間結果を格納及び蓄積する。中間結果は、視覚的に表示され、これによってユーザはより良いクエリを解釈及び記述することができる。このためには、中間結果は、セーブされてデータテーブルとして次のクエリにフィードされる。このようにクエリのシーケンスが実行されて、セーブして他の類似の文書に1つのショットで適用されて必要な情報を得ることができるワークフローを結果として生じる。これは、実施例の助けを借りて本開示の以下の部分でより詳細に説明する。
【0038】
本開示の1つの実施形態によれば、システム100はまた、インテント識別子128を含む。インテント識別子1128は、自然言語クエリを分類することによって意図を識別するよう構成される。自然言語を介してシステム100と対話する時にユーザは、多種多様な情報を要求することができる。インテント識別子128は、NLクエリを分類して意図を知るために必要である。所与のNL発話は3つのクラスにカテゴライズされる。これらは単純な抽出クエリであり、ワークフロー及びブックキーピングを作成又はセーブする。インテントが公知である状態で、NLクエリは、更なる処理のためのそれぞれのモデルに渡される。
【0039】
本開示の1つの実施形態によれば、システム100はワークフローを作成するよう構成される。単純なクエリは、リレーショナルデータベース126から容易に利用可能な情報だけをフェッチすることになる。複雑なクエリは、画像から関連情報を抽出するために実行する必要があることが多い。あらゆる可能な使用ケースに複雑なクエリを設計することで、SQLテンプレートスペースが膨張し、クエリ再使用が妨げられることになる。しかしながら、複雑なクエリを複数の単純なクエリに分解することができ、中間結果の格納及び構築を可能にする。シーケンスで実行される単純なクエリの様々な組み合わせが複雑なエンティティをフェッチすることになる。デフォルトでは、中間結果の出力が、更にクエリすることができる一時テーブルに格納される。
【0040】
本開示の1つの実施形態によれば、システム100はブックキーピングを維持することができる。意味のあるNLクエリのシーケンスが、要求される情報をフェッチすることになる。このワークフローは、同様のテンプレートによって新しい文書に適用することができる。従って、特定のエンティティを検索するためにワークフローを格納することは多くの価値を有する。キューを使用した単純なフレームワークは、シーケンスでコマンドの最新セットを格納するために構築されてきた。ユーザが意味のある情報をフェッチした状態で、ワークフローがセーブされる。「ワークフローをクリアにする」、「ワークフローをセーブする」、「この文書にワークフローを適用する」のような単純なNLクエリがブックキーピングに用いられる。
【0041】
作動中、画像から関連情報を抽出する方法を示す流れ図200図5A-5Bに示されている。最初にステップ202で、画像が入力画像として取得される。入力画像は何れかの走査された文書から取得することができる。次のステップ204で、ノイズ除去が入力画像に実行され、入力画像からノイズを取り除く。画像にノイズが多くなる様々な理由が存在する可能性がある。次のステップ206で、文書識別子110が文書のタイプを識別するために実行され、この場合のタイプは印刷されたテキスト又は手書きテキストの何れかである。手書きテキストである場合、入力画像はHTTRエンジン124を用いて更に処理される。
【0042】
次のステップ208で、光学文字認識(OCR)が、識別された文書のタイプに応じて画像に実行されテキストエンティティのセットを検出する。テキストエンティティのセットは、ワード、ライン、テキストブロック又はテキストボックス、チェックボックス、矢印、OMRサークル、ロゴ、テーブル、図形などの1又は2以上を含むことができる。次のステップ210で、テキストエンティティのセット間の関係を設定するためのスキーマが設計される。このスキーマは、情報抽出を容易にするよう設計される。テキストエンティティのセットは、その空間座標に関連付けられ、この情報が近傍のテキストエンティティの所在を伝達する。この情報は様々な論理的且つ空間的関係を推測するために用いられる。更にステップ212で、検出されたテキストエンティティのセット及びスキーマがリレーショナルデータベース126に格納される。
【0043】
次のステップ214で、ユーザによる対話型インタフェース118を用いて関連情報を抽出するために自然言語クエリが提供される。ステップ216で、自然言語クエリは1つのSQLクエリに変換される。最後にステップ218で、SQLクエリがリレーショナルデータベース126に提供され、リレーショナルデータベース126から関連情報を抽出する。別の実施形態ではSQLクエリがリレーショナルデータベースに直接提供され得ることを理解すべきである。
【0044】
本開示の1つの実施形態によれば、システム100は、実施例の助けを借りて説明することができる。
【0045】
図6は、関連のある関係が生画像から抽出された後でリレーショナルデータベースに読み込まれたスキーマの例を示す。スキーマの主エンティティは、ワード、ライン、テキストブロック、ボックス及びテーブルを含む。エンティティ内及びエンティティ間の関係は矢印の方向によって示されている。スキーマは、時間の経過につれてリッチになり、図は、瞬間の走査された文書画像に有用であるエンティティを強調する。
【0046】
ビジョン成分から識別されたラインエンティティは、ラインテキストに関する情報、ラインと共にライン内の個々のワード及びワード座標を含む。ワードの座標位置を用いて、ディープリーダは、他のワードの左/右/上/下のワードを抽出して、これをこのスキーマに維持する。同様に生ビジョンデータを用いて、これらが別のテーブルとしてスキーマに起こるワード及びラインを維持する。図7に示すように、ワード「SPEEPUR」は、関連付けられる座標と共にビジョン成分によって検出される。左のワードは「GILARCHALA」であり、右は「ヌル」、上は「COMPOSITE」、及び下は「BANGLADESH」である。従って、ディープリーダは、各ワード/ライン/ブロックなどの相対的空間位置を維持する。識別されたテキストブロックエンティティは、同様のスキーマの属性を含む。テキストブロックのあらゆるワード及びラインのラインID、ワードID、ワードテキスト、ラインテキストは、各ワード及びラインの座標並びにブロックで識別された個々のラインのテキストと共に、データベースに読み込まれる。テキストブロックのワードの下/上のラインなどの追加の関係も維持される。例えば「DRAWEE」はワードの下のライン関係を用いて文書から抽出することができる。テキストブロックのワードDRAWEEの下のラインは「ABCD PRIVATE LIMITED」である。
【0047】
現実世界における銀行受け取り、インボイスなどの文書の多くが、抽出に利用できる発生する一定の統一パターンを有することが観察されてきた。例えば、コロンはキー値ペアを定義する値を分離する。この背景知識は、キー値ペア関係を直接抽出するために用いられてきた。図7に示すように、「SWIFT:XABCLUS33」はキー値ペアの例である。キーSWIFTを用いて、このリレーショナル・テーブルにクエリすることによってこの値を直接フェッチすることができる。
【0048】
インテント識別子は、以下の例の助けを借りて分類することができる。インテント識別子が単純なクエリとして所与のNLクエリを分類した状態で、NLクエリは更なる処理のためにこのモデルに送信される。一般的なSQLクエリは以下のように構造化される。
SELECT $SELECT COL FROM $TABLE
WHERE $COND COL $OP $COND VAL
従って、NL発話をSQLクエリにマップするために以下のステップが実行される。
【0049】
エンティティ認識-上記に示された$COND_VALは、文書に固有のエンティティであり、同じものをNLセンテンスから抽出する必要がある。これは命名エンティティ認識(NER)問題に対応し、ここではこの問題抽出を解決するために条件ランダムフィールドCRF)が用いられる。NLクエリの各ワードは、エンティティ又は非エンティティの何れかとしてタグ付けされ、CRFがこの符号化で訓練される。$COND VALがCRFを用いて取得された状態で、同じものが辞書の標準的ワードに置き換えられる。例えば、「SWIFT」は、センテンス「SWIFTの右のワードを取って下さい」でCRFによってエンティティとして識別され、<COND VAL>の右のワードを取って下さい」に置き換えられる。これは、パイプラインの次のモデルによるNLクエリの処理を助けることになる。
【0050】
テンプレートマッピング-テンプレートベースの方法がSQLクエリの生成に用いられこれをスロットフィリング問題として定式化する。全ての単純なNLクエリがテンプレートプールのテンプレートの1つにマップされる。これは、ディープ順次モデルによって分類される修正されたNLクエリによって分類問題として定式化される。以下は使用される幾つかのサンプルSQLテンプレートである。
SELECT * FROM TABLE
WHERE id = (SELECT id FROM TABLE WHERE string = "VALUE")
SELECT * FROM TABLE WHERE primary str = "VALUE"
SELECT SUBSTR(line, pos(VALUE), ) FROM TEMP
SELECT SUBSTR(line, pos(VALUE1), pos(VALUE2)-pos(VALUE1) ) FROM
TEMP
【0051】
テーブルマッピング-正しいテンプレートが識別された状態で、TABLE及びVALUEのスロットを満たす必要がある。VALUEは、エンティティ認識モデルから容易に取得される。NLクエリは、関連のあるテーブルにマップすることができる多くの言語変形ワードを有する。例えば、センテンス「SWIFTの右のワードを取って下さい」及び「SWIFTのすぐ隣のワードを取って下さい」は、同じテーブル「rightof」にマップされる。このマッピングは、これらの変種を分類するために訓練されたLSTMモデルを用いて行われる。
【0052】
書面の説明は、当業者が実施形態を使用できるようにするために本明細書の主題を説明している。主題の実施形態の範囲は、請求項によって定義され、当業者に想起される他の修正を含むことができる。このような他の修正は、これらが請求項の文字言語と異ならない類似の要素を有する場合、又はこれらが請求項の文字言語からの実体のない相違を有する等価の要素を含む場合に、請求項の範囲内にあるものとする。
【0053】
本明細書での本開示の実施形態は、非技術者のユーザの困難を解決し画像からの効率的なデータ抽出のシステムを効果的に利用する。本開示は、対話型インタフェース及びデータベースクエリを用いて画像から関連情報を抽出する方法及びシステムを提供する。
【0054】
プログラムがサーバ又はモバイルデバイス又は何れかの適切なプログラマブルデバイスで実行される時に、保護の範囲がこのようなプログラム及び加えてメッセージを有するコンピュータ可読手段に拡張されること、このようなコンピュータ可読ストレージ手段が、本方法の1又は2以上のステップの実施のためのプログラムコード手段を包含することを理解されたい。ハードウェアデバイスは、例えば、サーバ又はパーソナルコンピュータのような何れかのタイプのコンピュータ、又はこれらの何れかの組み合わせを含むプログラムすることができる何れかのタイプのデバイスとすることができる。このデバイスは、例えば、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、又は、例えばASIC及びFPGAなどのハードウェア及びソフトウェア手段の組み合わせ、又は少なくとも1つのマイクロプロセッサ及びソフトウェアモジュールが位置付けれる少なくとも1つのメモリのようなハードウェア手段とすることができる手段を含むことができる。従って、この手段は、ハードウェア手段とソフトウェア手段の両方を含むことができる。本明細書で説明する方法の実施形態は、ハードウェア及びソフトウェアで実施することができる。このデバイスは、ソフトウェア手段を含むこともできる。或いは、実施形態は、異なるハードウェアデバイス上で、例えば複数のCPUを用いて実施することができる。
【0055】
本明細書の実施形態は、ハードウェア及びソフトウェア要素を含むことができる。ソフトウェアで実施される実施形態は、限定ではないが、ファームウェア、常駐ソフトウェア、マイクロコードなどを含む。本明細書で説明する様々なモジュールによって実行される機能は、他のモジュール又は他のモジュールの組み合わせで実施することができる。この説明の目的で、コンピュータ使用可能又はコンピュータ可読媒体は、命令実行システム、装置、又はデバイスによって又はこれらに接続して使用するプログラムを含む、格納する、伝送する、伝播する、又は移送することができる何れかの装置とすることができる。
【0056】
図示したステップは、図示した例示的な実施形態を説明するために示されており、進行中の技術的開発が、特定の機能が実行される方法を変更することを理解すべきである。これらの例は、例証の目的で本明細書に示されており、制限ではない。機能的構築ブロックの境界は、説明し易いように本明細では任意的に定義されている。指示された機能及びその関係が適切に実行される限り代替えの境界を定義することができる。代替え(本明細書で説明するものの等価物、延長、変種、偏差など)は、本明細書に包含される教示に基づいて当業者に明らかであろう。このような代替えは、開示する実施形態の範囲及び精神内に入る。「comprising」、「having」、「containig」、及び「including」という語、及び他の類似の形態は、意味において等価であり且つこれらの語の何れか1つに従う項目又は複数の項目がこのような項目又は複数の項目の網羅的なリストを意味するものではないオープンエンドとするか、又はリストされた項目又は複数の項目だけに制限されることを意味するものとする。本明細書及び添付の請求項で用いられる時に、単数形「a」、「an」、及び「the」は、本文脈が他に明確に指示しない限り複数の参照を含む点に留意されたい。
【0057】
1又は2以上のコンピュータ可読ストレージ媒体は、本開示に矛盾のない実施形態を実施するのに用いることができる。コンピュータ可読ストレージ媒体は、プロセッサによって可読の情報又はデータを格納することができる何れかのタイプの物理的メモリを指す。従って、コンピュータ可読ストレージ媒体は、プロセッサに本明細書で説明した実施形態に矛盾のないステップ又は段階を実行させる命令を含む1又は2以上のプロセッサによって実行される命令を格納することができる。「コンピュータ可読媒体」という語は、有形項目を含み、且つ搬送波及び過渡信号、すなわち非一時的信号を除外するものと理解すべきである。例には、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、揮発性メモリ、不揮発性メモリ、ハードドライブ、CD ROM、DVD、フラッシュドライブ、ディスク、及び何れかの他の公知の物理的ストレージ媒体が含まれる。
【0058】
本開示及び実施例は例示的なものとしてのみ考えられ、開示する実施形態の真の範囲及び精神は、以下の請求項によって示されるものとする。
【符号の説明】
【0059】
102 入力モジュール
104 メモリ
108 ノイズ除去モジュール
110 文書識別子
112 OCRエンジン
114 スキーマ考案モジュール
116 ストアリングモジュール
118 対話型インタフェース
120 変換モジュール
122 データベースクエリモジュール
124 HTRエンジン
126 データベース
128 インテント識別子
図1
図2
図3
図4
図5A
図5B
図6
図7