(57)【要約】      （修正有）【課題】セルの意味を考慮して精度良く表を分類する分類器学習装置、表種類分類装置、分類器学習方法、表種類分類方法及びプログラムを提供する。【解決手段】表種類分類装置１５０は、セルの行列として記述された表形式データの各々について、表の各セルに対し、前記セルに記載されたテキスト情報に基づいてトークン系列を生成するトークン系列生成部７２と、生成されたトークン系列に含まれる各トークンをベクトルに変換して符号化トークン系列を生成するトークン符号化部７４と、符号化された符号化トークン系列をＨ次元のセルベクトルに符号化するセル符号化部７６と、符号化されたセルベクトルから得られる３次元テンソルデータを符号化する表符号化部７８と、表符号化ベクトルと、表形式データの表の種類を分類するための予め学習された分類器とに基づいて、表形式データの表の種類を分類する表種類分類部８０と、を含む。【選択図】図２
2018077586.tif 000002
【特許請求の範囲】
【請求項１】
セルの行列として記述された表形式データと表の種類を表す正解ラベルとの組の集合である訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記セルに記載されたテキスト情報に基づいてトークン系列を生成するトークン系列生成部と、
前記訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記トークン系列生成部により生成された前記トークン系列に含まれる各トークンをベクトルに変換して符号化トークン系列を生成するトークン符号化部と、
前記訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記トークン符号化部により符号化された前記符号化トークン系列をセルベクトルに符号化するセル符号化部と、
前記訓練データ集合に含まれる前記表形式データの各々について、前記セル符号化部により各セルについて符号化された前記セルベクトルから得られる３次元テンソルデータを符号化して表符号化ベクトルを出力する表符号化部と、
前記訓練データ集合に含まれる表形式データの各々についての、前記表符号化部が出力した表符号化ベクトルと、前記正解ラベルと、に基づいて、表形式データの表の種類を分類するための分類器を学習する学習部と、
を有する分類器学習装置。
【請求項２】
セルの行列として記述された表形式データについて、表の各セルに対し、前記セルに記載されたテキスト情報に基づいてトークン系列を生成するトークン系列生成部と、
表の各セルに対し、前記トークン系列生成部により生成された前記トークン系列に含まれる各トークンをベクトルに変換して符号化トークン系列を生成するトークン符号化部と、
表の各セルに対し、前記トークン符号化部により符号化された前記符号化トークン系列をセルベクトルに符号化するセル符号化部と、
前記セル符号化部により各セルについて符号化された前記セルベクトルから得られる３次元テンソルデータを符号化して表符号化ベクトルを出力する表符号化部と、
前記表符号化部が出力した表符号化ベクトルと、表形式データの表の種類を分類するための予め学習された分類器とに基づいて、前記表形式データの表の種類を分類する表種類分類部と、
を有する表種類分類装置。
【請求項３】
トークン系列生成部が、セルの行列として記述された表形式データと表の種類を表す正解ラベルとの組の集合である訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記セルに記載されたテキスト情報に基づいてトークン系列を生成し、
トークン符号化部が、前記訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記トークン系列生成部により生成された前記トークン系列に含まれる各トークンをベクトルに変換して符号化トークン系列を生成し、
セル符号化部が、前記訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記トークン符号化部により符号化された前記符号化トークン系列をセルベクトルに符号化し、
表符号化部が、前記訓練データ集合に含まれる前記表形式データの各々について、前記セル符号化部により各セルについて符号化された前記セルベクトルから得られる３次元テンソルデータを符号化して表符号化ベクトルを出力し、
学習部が、前記訓練データ集合に含まれる表形式データの各々についての、前記表符号化部が出力した表符号化ベクトルと、前記正解ラベルと、に基づいて、表形式データの表の種類を分類するための分類器を学習する
分類器学習方法。
【請求項４】
トークン系列生成部が、セルの行列として記述された表形式データについて、表の各セルに対し、前記セルに記載されたテキスト情報に基づいてトークン系列を生成し、
トークン符号化部が、表の各セルに対し、前記トークン系列生成部により生成された前記トークン系列に含まれる各トークンをベクトルに変換して符号化トークン系列を生成し、
セル符号化部が、表の各セルに対し、前記トークン符号化部により符号化された前記符号化トークン系列をセルベクトルに符号化し、
表符号化部が、前記セル符号化部により各セルについて符号化された前記セルベクトルから得られる３次元テンソルデータを符号化して表符号化ベクトルを出力し、
表種類分類部が、前記表符号化部が出力した表符号化ベクトルと、表形式データの表の種類を分類するための予め学習された分類器とに基づいて、前記表形式データの表の種類を分類する
表種類分類方法。
【請求項５】
コンピュータを、請求項１に記載の分類器学習装置、又は請求項２に記載の表種類分類装置の各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表形式データの表種類を分類するための分類器学習装置、表種類分類装置、方法、及びプログラムに関するものである。
【背景技術】
【０００２】
コンピュータ技術の発展により、Ｗｅｂ上のＨＴＭＬで記述された表データや、表計算ソフトウェアなどで作成されたスプレッドシート上の表データは大量に存在するようになった。表データには、縦あるいは横方向のリスト型表、縦あるいは横方向の属性型表、縦あるいは横方向の列挙型表、行列型表、その他のレイアウト用表など幾つかの種類が存在する。この表タイプを正しく理解することができれば、情報検索や質問応答など幅広いサービスに応用可能な知識が獲得できる。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Crestan, Eric and Patrick Pantel (2011). “Web-scale Table Census and Classification”. In: Proceedings of the 4th ACM International Conference on Web Search and Data Mining. ACM, pp. 545-554.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
表タイプを分類するための従来手法として、非特許文献１などがこれまで提案されている。
【０００５】
これらの従来手法は、表内のセルに記載されたテキスト情報について、テキストの長さ、テキストのタイプ（数値、日付、金額など）、テキストのパターン（特定の記号を含む）などの素性を利用しているが、セルの中に記載されたテキストの意味について考慮していない。
【０００６】
本発明は、上記従来技術の問題点に鑑みて成されたものであり、入力された表データの先頭Ｎ行および先頭Ｍ列から、各セルの意味ベクトルを、セル記載のテキストを構成するトークン系列から符号化して獲得し、符号化されたセルの集合を画像と同様のデータ形式を持つとみなしてさらに符号化することで、精度良く表を分類することができる分類器学習装置、表種類分類装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明に係る分類器学習装置は、セルの行列として記述された表形式データと表の種類を表す正解ラベルとの組の集合である訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記セルに記載されたテキスト情報に基づいてトークン系列を生成するトークン系列生成部と、前記訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記トークン系列生成部により生成された前記トークン系列に含まれる各トークンをベクトルに変換して符号化トークン系列を生成するトークン符号化部と、前記訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記トークン符号化部により符号化された前記符号化トークン系列をセルベクトルに符号化するセル符号化部と、前記訓練データ集合に含まれる前記表形式データの各々について、前記セル符号化部により各セルについて符号化された前記セルベクトルから得られる３次元テンソルデータを符号化して表符号化ベクトルを出力する表符号化部と、前記訓練データ集合に含まれる表形式データの各々についての、前記表符号化部が出力した表符号化ベクトルと、前記正解ラベルと、に基づいて、表形式データの表の種類を分類するための分類器を学習する学習部と、を有する。
【０００８】
本発明に係る表種類分類装置は、セルの行列として記述された表形式データについて、表の各セルに対し、前記セルに記載されたテキスト情報に基づいてトークン系列を生成するトークン系列生成部と、表の各セルに対し、前記トークン系列生成部により生成された前記トークン系列に含まれる各トークンをベクトルに変換して符号化トークン系列を生成するトークン符号化部と、表の各セルに対し、前記トークン符号化部により符号化された前記符号化トークン系列をセルベクトルに符号化するセル符号化部と、前記セル符号化部により各セルについて符号化された前記セルベクトルから得られる３次元テンソルデータを符号化して表符号化ベクトルを出力する表符号化部と、前記表符号化部が出力した表符号化ベクトルと、表形式データの表の種類を分類するための予め学習された分類器とに基づいて、前記表形式データの表の種類を分類する表種類分類部と、を有する。
【０００９】
本発明に係る分類器学習方法は、トークン系列生成部が、セルの行列として記述された表形式データと表の種類を表す正解ラベルとの組の集合である訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記セルに記載されたテキスト情報に基づいてトークン系列を生成し、トークン符号化部が、前記訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記トークン系列生成部により生成された前記トークン系列に含まれる各トークンをベクトルに変換して符号化トークン系列を生成し、セル符号化部が、前記訓練データ集合に含まれる前記表形式データの各々について、表の各セルに対し、前記トークン符号化部により符号化された前記符号化トークン系列をセルベクトルに符号化し、表符号化部が、前記訓練データ集合に含まれる前記表形式データの各々について、前記セル符号化部により各セルについて符号化された前記セルベクトルから得られる３次元テンソルデータを符号化して表符号化ベクトルを出力し、学習部が、前記訓練データ集合に含まれる表形式データの各々についての、前記表符号化部が出力した表符号化ベクトルと、前記正解ラベルと、に基づいて、表形式データの表の種類を分類するための分類器を学習する。
【００１０】
本発明に係る表種類分類方法は、トークン系列生成部が、セルの行列として記述された表形式データについて、表の各セルに対し、前記セルに記載されたテキスト情報に基づいてトークン系列を生成し、トークン符号化部が、表の各セルに対し、前記トークン系列生成部により生成された前記トークン系列に含まれる各トークンをベクトルに変換して符号化トークン系列を生成し、セル符号化部が、表の各セルに対し、前記トークン符号化部により符号化された前記符号化トークン系列をセルベクトルに符号化し、表符号化部が、前記セル符号化部により各セルについて符号化された前記セルベクトルから得られる３次元テンソルデータを符号化して表符号化ベクトルを出力し、表種類分類部が、前記表符号化部が出力した表符号化ベクトルと、表形式データの表の種類を分類するための予め学習された分類器とに基づいて、前記表形式データの表の種類を分類する。
【００１１】
本発明に係るプログラムは、コンピュータを、請求項１に記載の分類器学習装置、又は請求項２に記載の表種類分類装置の各部として機能させるためのプログラムである。
【発明の効果】
【００１２】
以上説明したように、本発明の分類器学習装置、方法、及びプログラムによれば、セルに記載されたテキスト情報に基づいてトークン系列を生成し、生成されたトークン系列を符号化した符号化トークン系列をセルベクトルに符号化し、符号化されたセルベクトルから得られる３次元テンソルデータを符号化し、符号化された表符号化ベクトルに基づいて分類した表種類と、正解ラベルと、に基づいて、表形式データの表の種類を分類するための分類器を学習することにより、各セルの意味を考慮して精度良く表を分類する分類器を学習することができる、という効果が得られる。
【００１３】
また、本発明の表種類分類装置、方法、及びプログラムによれば、セルに記載されたテキスト情報に基づいてトークン系列を生成し、生成されたトークン系列を符号化した符号化トークン系列をセルベクトルに符号化し、符号化されたセルベクトルから得られる３次元テンソルデータを符号化し、符号化された表符号化ベクトルと、表形式データの表の種類を分類するための予め学習された分類器とに基づいて、表形式データの表の種類を分類することにより、各セルの意味を考慮して精度良く表を分類することができる、という効果が得られる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係る分類器学習装置の機能的構成を示すブロック図である。
【図２】本発明の実施形態に係る表種類分類装置の機能的構成を示すブロック図である。
【図３】表形式データの表種類を分類する処理の概念図である。
【図４】本発明の実施形態に係る分類器学習装置における分類器学習処理ルーチンのフローチャート図である。
【図５】本発明の実施形態に係る表種類分類装置における表種類分類処理ルーチンのフローチャート図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して本発明の実施形態を詳細に説明する。
【００１６】
＜本発明の実施の形態に係る分類器学習装置の構成＞
【００１７】
次に、本発明の実施の形態に係る分類器学習装置の構成について説明する。図１に示すように、本実施の形態に係る分類器学習装置１００は、ＣＰＵと、ＲＡＭと、後述する分類器学習処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。この分類器学習装置１００は、機能的には図１に示すように入力部１０と、演算部２０と、出力部４０とを含んで構成されている。
【００１８】
入力部１０は、表形式データと表種類を表す正解ラベルとの組の集合である訓練データ集合を受け付ける。
【００１９】
表形式データは、行列形式のセルの集合であり、各セルはＨＴＭＬを含まないプレーンテキスト情報、あるいは、ＨＴＭＬタグを含むテキスト情報が与えられる
【００２０】
表種類は、例えば、縦あるいは横方向のリスト型表、縦あるいは横方向の属性型表、縦あるいは横方向の列挙型表、行列型表、その他のレイアウト用表などである。
【００２１】
演算部２０は、図１に示すように、トークン系列生成部２２、トークン符号化部２４、セル符号化部２６、表符号化部２８、及び学習部３０を備えて構成されている。
【００２２】
トークン系列生成部２２は、セルの行列として記述された表形式データと表の種類を表す正解ラベルとの組の集合である訓練データ集合に含まれる表形式データの各々について、表の各セルに対し、セルに記載されたテキスト情報に基づいてトークン系列を生成する。
【００２３】
具体的には、トークン系列生成部２２は、訓練データ集合の表の各々に関して、前記表の先頭Ｎ行および先頭Ｍ列に含まれるすべてのセルｃi,j（行番号ｉ，列番号ｊ）に記載されたテキスト情報を形態素解析により単語およびＨＴＭＬタグ（トークンと呼ぶ）の系列に分割する。たとえば、プレーンテキストとして「月額費用」を受け取った場合「月額」「費用」というトークン系列に分割する。また、ＨＴＭＬテキストとして「<th><b>月額</b>費用</th>」を受け取った場合、ＨＴＭＬタグごとに分割し、タグ内のテキストについて形態素解析することで「<th>」「<b>」「月額」「</b>」「費用」「</th>」のように分割する。なお、テキスト情報を文字ごとに分割して１文字をトークンとしてもよい。また、Ｎ×Ｍより小さい表が入力として与えられた場合は、空のトークン系列が出力されるものとする。
【００２４】
トークン系列生成部２２は、セルごとに、生成されたトークンの個数がＴ個より多い場合は、先頭からＴ個のトークンのみを出力する。また、Ｔ個よりも少ない場合は、「ＰＡＤ」という特殊文字を系列の末尾に追加して出力する。
【００２５】
トークン符号化部２４は、訓練データ集合に含まれる表形式データの各々について、表の各セルに対し、トークン系列生成部２２により生成された前記トークン系列に含まれる各トークンをベクトルに変換して符号化トークン系列を生成する。
【００２６】
具体的には、トークン符号化部２４は、トークン系列生成部２２が各セルに対して出力したトークン系列に含まれるそれぞれのトークンｘについて、Ｅ次元ベクトルｅに変換する。
【００２７】
【数１】
2018077586.tif 000003
【００２８】
ここで、Ｗｅはトークン符号化部２４のモデルパラメータである。トークンの種類をＫ種類としたとき、ｘはＫ次元の１−ｏｆ−Ｋベクトル（トークンに対応する部分のみ１、他は０）となる。ＷｅはＥ×Ｋ次元のパラメータ行列となる。トークンｘが未知語あるいは「ＰＡＤ」の場合、ｅは零ベクトルとなる。
【００２９】
セル符号化部２６は、訓練データ集合に含まれる表形式データの各々について、トークン符号化部２４により符号化された符号化トークン系列をセルベクトルに符号化する。
【００３０】
具体的には、セル符号化部２６は、トークン符号化部２４が出力した各セルの符号化トークン系列（ｅ１，ｅ２，・・・，ｅＴ）をＨ次元のセルベクトルｈに変換する。
【００３１】
系列データの符号化には、非特許文献２に示すＬＳＴＭや、非特許文献３に示すＧＲＵ等の再帰型ニューラルネットワーク（ＲＮＮ）が利用可能である。
【００３２】
［非特許文献2］：S Hochreiter, J Schmidhuber. Long short-term memory. Neural computation 9 (8), 1735-1780, 1997.
【００３３】
［非特許文献3］：K. Cho, B. van Merrienboer, D. Bahdanau, and Y. Bengio. On the properties of neural machine translation: Encoder-decoder approaches. arXiv preprint arXiv:1409.1259, 2014.
【００３４】
ＧＲＵを利用する場合、トークンｘが与えられるたびにセルベクトルｈを下記の計算により更新する。
【００３５】
【数１】
2018077586.tif 000004
【００３６】
ここで、σはシグモイド関数、
2018077586.tif 000005
は行列の要素ごとの積を意味する。Ｗe、Ｗr、Ｕr、Ｗz、Ｕz、Ｗ、Ｕはセル符号化部２６のモデルパラメータである。Ｗ．はＨ×Ｅ次元のパラメータ行列となる。Ｕ．はＨ×Ｈ次元のパラメータ行列となる。ｈの初期値はＨ次元の零ベクトルである。
【００３７】
なお、式（２）のＧＲＵの代わりにＬＳＴＭを利用してセルベクトルｈを出力しても良い。また、トークン系列を逆順にして同様にセルベクトルｈを出力しても良い。
【００３８】
セル符号化部２６がすべてのセル（Ｎ×Ｍ個）に対してＨ次元のセルベクトルを出力した結果、１つの表形式データはＮ×Ｍ×Ｈの３次元のテンソルデータに変換され、画像データ（高さ×幅×深さの次元数）と同じ構造を持つ。このように、表内の各セルのトークン系列をＲＮＮにより意味ベクトルに変換することにより、画像データと同じ構造を持つＮ×Ｍ×Ｈ次元のテンソルデータが得られる。
【００３９】
表符号化部２８は、訓練データ集合に含まれる表形式データの各々について、セル符号化部２６により各セルについて符号化されたセルベクトルから得られる３次元テンソルデータを符号化して表符号化ベクトルを出力する。
【００４０】
具体的には、表符号化部２８は、セル符号化部２６が出力したＮ×Ｍ×Ｈの３次元のテンソルデータを入力して、Ｎ２×Ｍ２×Ｆの３次元のテンソルデータに変換する。そして、Ｎ２×Ｍ２×Ｆの３次元のテンソルデータを１次元の表符号化ベクトルｈ（ベクトル長＝Ｎ２×Ｍ２×Ｆ）に変換する。
【００４１】
Ｎ×Ｍ×Ｈの３次元のテンソルデータから、Ｎ２×Ｍ２×Ｆの３次元のテンソルデータに符号化する方法としては、非特許文献４に示す畳み込みニューラルネットワーク（ＣＮＮ）が利用可能である。
【００４２】
本実施形態におけるＣＮＮは、Ｆ個の３×３の畳み込みフィルタ（ストライドパラメータ値＝１、パディングパラメータ値＝１）を持つ畳み込み層を７層重ねたネットワークから構築され、各フィルタのパラメータ数は、１層目が９Ｈ個、２層目以降が９Ｆ個である。プーリング関数は利用せず、活性化関数にはＲｅＬＵを用いる。このとき、Ｎ２＝Ｎ、Ｍ２＝Ｍとなる。
【００４３】
［非特許文献４］：Y. LeCun, L. Bottou, Y. Bengio, and P. Haffner. Gradient-based learning applied to document recognition. Proc. of the IEEE, pages 2278-2324,1998.
【００４４】
学習部３０は、訓練データ集合に含まれる表形式データの各々についての、表符号化部２８が出力した表符号化ベクトルと、正解ラベルと、に基づいて、表形式データの表の種類を分類するための分類器を学習する。
【００４５】
具体的には、学習部３０は、訓練データ集合に含まれる表形式データの各々について表符号化部２８が出力した、Ｎ２×Ｍ２×Ｆの３次元のテンソルデータを１次元かつ長さがＮ２×Ｍ２×Ｆのベクトルとして扱った表符号化ベクトルｈを入力として、表種類のクラス分類（クラス数＝Ｃ）を行う。
【００４６】
具体的には、学習部３０は、訓練データ集合に含まれる表のそれぞれについて、表符号化部２８が出力した表符号化ベクトルｈを入力として、以下の式（３）に従って、表種類のクラス分類（クラス数＝Ｃ）を行う。
【００４７】
【数２】
2018077586.tif 000006
【００４８】
ここで、ＷｃｌｓはＦ×Ｃのサイズのパラメータ行列とし、ｓｏｆｔｍａｘはソフトマックス関数、ｙは次元数Ｃのベクトルである。なお、本実施形態では、Ｃ＝６とし、横方向リスト型、縦方向リスト型、横方向属性型、縦方向属性型、行列型、その他、の６種類のクラスとする。
【００４９】
そして、学習部３０は、訓練データ集合に含まれる表のそれぞれについて、前記表の正解クラスｔ（ｔ＝１，…Ｃのとき、それぞれ横方向リスト型、縦方向リスト型、横方向属性型、縦方向属性型、行列型、その他を意味する）と、前記表に対するクラス分類の出力ｙとを用いて、式（４）のクロスエントロピー関数により損失Ｌを計算する。
【００５０】
【数３】
2018077586.tif 000007
【００５１】
そして、学習部３０は、上記式（４）により求めた各表に対する損失Ｌについて確率的勾配降下法によりトークン符号化部２４、セル符号化部２６、表符号化部２８の各パラメータ行列について最適化を行う。なお、本発明は最適化の方法には依存しておらず、他のニューラルネットのパラメータに対する他の最適化法を利用しても良い。
【００５２】
＜本発明の実施の形態に係る表種類分類装置の構成＞
【００５３】
次に、本発明の実施の形態に係る表種類分類装置の構成について説明する。図２に示すように、本実施の形態に係る表種類分類装置１５０は、ＣＰＵと、ＲＡＭと、後述する表種類分類処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。この表種類分類装置１５０は、機能的には図２に示すように入力部６０と、演算部７０と、出力部９０とを含んで構成されている。
【００５４】
入力部６０は、分類対象となる表形式データであるテストデータを受け付ける。
【００５５】
演算部７０は、図２に示すように、トークン系列生成部７２、トークン符号化部７４、セル符号化部７６、表符号化部７８、及び表種類分類部８０を備えて構成されている。
【００５６】
ここで、トークン符号化部７４、セル符号化部７６、及び表符号化部７８は、図１の分類器学習装置１００により学習されたものである。
【００５７】
トークン系列生成部７２は、入力された表形式データについて、表の各セルに対し、トークン系列生成部２２と同様に、表の先頭Ｎ行および先頭Ｍ列に含まれるすべてのセルｃi,j（行番号ｉ，列番号ｊ）に記載されたテキスト情報を形態素解析により単語およびＨＴＭＬタグの系列に分割する。
【００５８】
トークン符号化部７４は、入力された表形式データについて、表の各セルに対し、トークン符号化部２４と同様に、トークン系列生成部７２が各セルに対して出力したトークン系列に含まれるそれぞれのトークンｘについて、Ｅ次元ベクトルｅに変換する。ここで、Ｅ次元ベクトルｅへの変換で用いられるパラメータ行列は、分類器学習装置１００で最適化されたものである。
【００５９】
セル符号化部７６は、入力された表形式データについて、表の各セルに対し、セル符号化部２６と同様に、トークン符号化部７４が出力した各セルの符号化トークン系列（ｅ１，ｅ２，・・・，ｅＴ）をＨ次元のセルベクトルｈに変換する。ここで、Ｈ次元のセルベクトルｈへの変換で用いるパラメータ行列は、分類器学習装置１００で最適化されたものである。
【００６０】
表符号化部７８は、入力された表形式データについて、表符号化部２８と同様に、セル符号化部２６により各セルについて符号化されたセルベクトルから得られる３次元テンソルデータを符号化して表符号化ベクトルを出力する。すなわち、セル符号化部７６が出力したＮ×Ｍ×Ｈの３次元のテンソルを入力して、Ｎ２×Ｍ２×Ｆの３次元のテンソルに変換する。ここで、Ｎ２×Ｍ２×Ｆの３次元のテンソルへの変換で用いるパラメータ行列は、分類器学習装置１００で最適化されたものである。
【００６１】
表種類分類部８０は、入力された表形式データについて、学習部３０と同様に、表符号化部７８の出力した、Ｎ２×Ｍ２×Ｆの３次元のテンソルデータを１次元かつ長さがＮ２×Ｍ２×Ｆのベクトルとして扱った表符号化ベクトルｈを入力として、上記式（３）に従って、表種類のクラス分類（クラス数＝Ｃ）を行う。
【００６２】
図３には、入力された表形式データの表種類を分類する処理の概念図を示した。図３に示すように、表形式データ５０で表される表の各セルのテキスト情報から生成したトークン系列を符号化し、符号化した符号化トークン系列をＲＮＮにより意味ベクトルに変換し、画像データと同じ構造を持つ３次元テンソルデータ５２を得る。次に、３次元テンソルデータ５２をＣＮＮにより畳み込み符号化することで表符号化ベクトル５４を生成する。そして、表符号化ベクトル５４に基づいて、表種類のクラス分類を行う。
【００６３】
＜本発明の実施形態に係る分類器学習装置の作用＞
【００６４】
次に、本発明の実施形態に係る分類器学習装置１００の作用について説明する。分類器学習装置１００は、入力部１０によって、訓練データ集合を受け付けると、分類器学習装置１００によって、図４に示す分類器学習処理ルーチンが実行される。
【００６５】
まず、ステップＳ１００で、トークン系列生成部２２が、訓練データ集合の表の各々に関して、前記表に含まれるすべてのセルに記載されたテキスト情報を形態素解析によりトークンの系列に分割する。
【００６６】
ステップＳ１０２では、トークン符号化部２４が、トークン系列生成部２２が各セルに対して出力したトークン系列に含まれるそれぞれのトークンｘについて、Ｅ次元ベクトルｅに変換する。
【００６７】
ステップＳ１０４では、セル符号化部２６が、トークン符号化部２４が出力した各セルの符号化トークン系列をＨ次元のセルベクトルｈに変換する。
【００６８】
ステップＳ１０６では、表符号化部２８が、セル符号化部２６が出力したＮ×Ｍ×Ｈの３次元のテンソルをデータを入力して、Ｎ２×Ｍ２×Ｆの３次元のテンソルデータに変換し、これをＣＮＮを用いて１次元の表符号化ベクトルｈに符号化する。
【００６９】
ステップＳ１０８では、学習部３０が、訓練データ集合に含まれる表形式データの各々について表符号化部２８が出力した表符号化ベクトルｈを入力として、上記（３）式に従って、表種類のクラス分類（クラス数＝Ｃ）を行う。
【００７０】
ステップＳ１１０では、学習部３０が、訓練データ集合に含まれる表のそれぞれについて、前記表の正解クラスと、前記表に対するステップＳ１０８によるクラス分類の出力ｙとを用いて、式（４）のクロスエントロピー関数により損失Ｌを計算する。
【００７１】
ステップＳ１１２では、学習部３０が、上記式（４）により求めた各表に対する損失Ｌについて確率的勾配降下法によりトークン符号化部２４、セル符号化部２６、表符号化部２８の行方向、列方向の各パラメータ行列について最適化を行い、分類器学習処理ルーチンを終了する。
【００７２】
＜本発明の実施形態に係る表種類分類装置の作用＞
【００７３】
次に、本発明の実施形態に係る表種類分類装置１５０の作用について説明する。表種類分類装置１５０は、入力部６０によって、表形式データを受け付けると、表種類分類装置１５０によって、図５に示す表種類分類処理ルーチンが実行される。
【００７４】
まず、ステップＳ１５０で、トークン系列生成部７２が、入力されたテストデータである表形式データについて、表に含まれるすべてのセルに記載されたテキスト情報を形態素解析によりトークンの系列に分割する。
【００７５】
ステップＳ１５２では、トークン符号化部７４が、ステップＳ１５０でトークン系列生成部７２が各セルに対して出力したトークン系列に含まれるそれぞれのトークンｘについて、Ｅ次元ベクトルｅに変換する。
【００７６】
ステップＳ１５４では、セル符号化部７６が、ステップＳ１５２でトークン符号化部７４が出力した各セルの符号化トークン系列をＨ次元のセルベクトルｈに変換する。
【００７７】
ステップＳ１５６では、表符号化部７８が、ステップＳ１５４でセル符号化部７６が出力したＮ×Ｍ×Ｈ次元のテンソルを入力して、Ｎ２×Ｍ２×Ｆ次元のテンソルに変換し、符号化する。
【００７８】
ステップＳ１５８では、表種類分類部８０が、テストデータである表形式データの各々について表符号化部７８が出力した表符号化ベクトルｈを入力として、上記（３）式に従って、表種類のクラス分類（クラス数＝Ｃ）を行い、出力部９０により出力し、表種類分類処理ルーチンを終了する。
【００７９】
以上説明したように、本発明の実施の形態に係る分類器学習装置によれば、セルに記載されたテキスト情報に基づいてトークン系列を生成し、生成されたトークン系列を符号化した符号化トークン系列をセルベクトルに符号化し、符号化されたセルベクトルから得られる３次元テンソルデータを符号化し、符号化された表符号化ベクトルに基づいて分類した表種類と、正解ラベルと、に基づいて、表形式データの表の種類を分類するための分類器を学習することにより、各セルの意味を考慮して精度良く表を分類する分類器を学習することができる。
【００８０】
また、本発明の実施の形態に係る表種類分類装置によれば、セルに記載されたテキスト情報に基づいてトークン系列を生成し、生成されたトークン系列を符号化した符号化トークン系列をセルベクトルに符号化し、符号化されたセルベクトルから得られる３次元テンソルデータを符号化し、符号化された表符号化ベクトルと、表形式データの表の種類を分類するための予め学習された分類器とに基づいて、表形式データの表の種類を分類することにより、各セルの意味を考慮して精度良く表を分類することができる。
【００８１】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００８２】
例えば、上記の実施の形態では、分類器学習装置と表種類分類装置とを別々に設ける場合を例に説明したが、分類器学習装置と表種類分類装置とを、１つの装置で実現するようにしてもよい。
【００８３】
本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能であるし、ネットワークを介して提供することも可能である。
【産業上の利用可能性】
【００８４】
本発明は、表種類を理解することで精度を向上可能な表形式データからの知識獲得および情報検索などに利用可能である。
【符号の説明】
【００８５】
１０、６０ 入力部
２０、７０ 演算部
２２、７２ セル符号化部
２４、７４ 行符号化部
２６、７６ 列符号化部
２８、７８ 表符号化部
３０ 学習部
４０、９０ 出力部
８０ 表種類分類部
１００ 分類器学習装置
１５０ 表種類分類装置
【図１】
2018077586.tif 000008
【図２】
2018077586.tif 000009
【図３】
2018077586.tif 000010
【図４】
2018077586.tif 000011
【図５】
2018077586.tif 000012