(57)【要約】  学習手段７１は、テーブルのカラムの意味とそのテーブルの意味とを含む学習データに基づいて、テーブルのカラムの意味とテーブルの意味との間の規則性を示すモデルを学習する。推定手段７２は、入力されるテーブルのカラムの意味とモデルとに基づいて、そのテーブルの意味を推定する。
2018025706.tif 000002
【特許請求の範囲】
【請求項１】
テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルを学習する学習手段と、
入力されるテーブルのカラムの意味と前記モデルとに基づいて、前記テーブルの意味を推定する推定手段とを備える
ことを特徴とするテーブル意味推定システム。
【請求項２】
入力されるテーブルのカラムの属性値から、前記カラムの意味を推定するカラム意味推定手段を備え、
推定手段は、推定されたカラムの意味と、モデルとに基づいて、前記テーブルの意味を推定する
請求項１に記載のテーブル意味推定システム。
【請求項３】
推定されたテーブルの意味を表示し、当該テーブルの意味が適切か否かに関する入力をユーザから受け付ける表示制御手段と、
前記ユーザからの入力に応じて、学習データを追加する学習データ追加手段とを備える
請求項１または請求項２に記載のテーブル意味推定システム。
【請求項４】
表示制御手段は、
表示したテーブルの意味が適切でない旨の入力をユーザから受け付けた場合、前記テーブルの意味の入力を前記ユーザから受け付け、
学習データ追加手段は、
前記テーブルの意味が適切である旨が入力された場合、前記テーブルと、前記表示制御手段が表示したテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、
前記テーブルの意味が適切でない旨が入力された場合、前記テーブルと、前記表示制御手段が前記ユーザから受け付けたテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、
学習手段は、
学習データが追加された場合に、既存の学習データおよび追加された学習データを用いて、モデルを学習し直す
請求項３に記載のテーブル意味推定システム。
【請求項５】
テーブルの入力を受け付ける入力受付手段と、
前記テーブルのカラムの意味と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定する推定手段とを備え、
前記モデルは、テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて学習された、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定システム。
【請求項６】
入力されるテーブルのカラムの属性値から、前記カラムの意味を推定するカラム意味推定手段を備え、
推定手段は、推定されたカラムの意味と、モデルとに基づいて、前記テーブルの意味を推定する
請求項５に記載のテーブル意味推定システム。
【請求項７】
テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて、テーブル名とテーブルの意味との間の規則性を示すモデルを学習する学習手段と、
入力されるテーブルのテーブル名と前記モデルとに基づいて、前記テーブルの意味を推定する推定手段とを備える
ことを特徴とするテーブル意味推定システム。
【請求項８】
推定されたテーブルの意味を表示し、当該テーブルの意味が適切か否かに関する入力をユーザから受け付ける表示制御手段と、
前記ユーザからの入力に応じて、学習データを追加する学習データ追加手段とを備える
請求項７に記載のテーブル意味推定システム。
【請求項９】
表示制御手段は、
表示したテーブルの意味が適切でない旨の入力をユーザから受け付けた場合、前記テーブルの意味の入力を前記ユーザから受け付け、
学習データ追加手段は、
前記テーブルの意味が適切である旨が入力された場合、前記テーブルのテーブル名と、前記表示制御手段が表示したテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、
前記テーブルの意味が適切でない旨が入力された場合、前記テーブルのテーブル名と、前記表示制御手段が前記ユーザから受け付けたテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、
学習手段は、
学習データが追加された場合に、既存の学習データおよび追加された学習データを用いて、モデルを学習し直す
請求項８に記載のテーブル意味推定システム。
【請求項１０】
テーブルの入力を受け付ける入力受付手段と、
前記テーブルのテーブル名と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定する推定手段とを備え、
前記モデルは、テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて学習された、テーブル名とテーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定システム。
【請求項１１】
テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルを学習し、
入力されるテーブルのカラムの意味と前記モデルとに基づいて、前記テーブルの意味を推定する
ことを特徴とするテーブル意味推定方法。
【請求項１２】
テーブルの入力を受け付け、
前記テーブルのカラムの意味と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定し、
前記モデルは、テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて学習された、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定方法。
【請求項１３】
テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて、テーブル名とテーブルの意味との間の規則性を示すモデルを学習し、
入力されるテーブルのテーブル名と前記モデルとに基づいて、前記テーブルの意味を推定する
ことを特徴とするテーブル意味推定方法。
【請求項１４】
テーブルの入力を受け付け、
前記テーブルのテーブル名と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定し、
前記モデルは、テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて学習された、テーブル名とテーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定方法。
【請求項１５】
コンピュータに、
テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルを学習する学習処理、および、
入力されるテーブルのカラムの意味と前記モデルとに基づいて、前記テーブルの意味を推定する推定処理
を実行させるためのテーブル意味推定プログラム。
【請求項１６】
コンピュータに、
テーブルの入力を受け付ける入力受付処理、および、
前記テーブルのカラムの意味と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定する推定処理を実行させ、
前記モデルは、テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて学習された、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定プログラム。
【請求項１７】
コンピュータに、
テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて、テーブル名とテーブルの意味との間の規則性を示すモデルを学習する学習処理、および、
入力されるテーブルのテーブル名と前記モデルとに基づいて、前記テーブルの意味を推定する推定処理
を実行させるためのテーブル意味推定プログラム。
【請求項１８】
コンピュータに、
テーブルの入力を受け付ける入力受付処理、および、
前記テーブルのテーブル名と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定する推定処理を実行させ、
前記モデルは、テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて学習された、テーブル名とテーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テーブルの意味を推定するテーブル意味推定システム、テーブル意味推定方法およびテーブル意味推定プログラムに関する。
【背景技術】
【０００２】
非特許文献１には、知識データベースに格納されているオントロジを用いて、テーブルのカラム名を自動推定する技術が記載されている。また、非特許文献１には、カラム名の中の１つを、テーブル名として流用することが記載されている。【０００３】
また、非特許文献２には、能動学習について記載されている。【０００４】
特許文献１には、テーブルの命名規則が、キャッシュサーバとアプリケーションサーバとで共通に用いられることが記載されている。【０００５】
特許文献２には、カラム名構成単語の分類に最適なベクトルを教師あり学習により生成することが記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１４−４８７４１号公報
【特許文献２】特開２０１３−１２０５３４号公報
【非特許文献】
【０００７】
【非特許文献１】Petros Venetis，外７名，“Recovering Semantics of Tables on the Web”，［２０１６年７月２０日検索］、インターネット<URL: http://www.vldb.org/pvldb/vol4/p528-venetis.pdf>
【非特許文献２】Burr Settles, “Active Learning Literature Survey”, University of Wisconsin Madison Technical Report #1648, January, 2009
【発明の概要】
【発明が解決しようとする課題】
【０００８】
カラム名とは、実際にテーブル内のカラムに付与されている名称である。一般に、カラム名は、人間によって決定されるので、カラム名には表記ゆれが生じる。例えば、人物の性別を属性値とするカラムのカラム名として、「種別」、「男女」等の種々のカラム名が付与され得る。ここで、そのカラムが表わしている概念を、カラム名とは区別して、「カラムの意味」と記す。上記の例では、「性別」がカラムの意味に該当する。【０００９】
同様に、テーブルが表わしている概念を、「テーブルの意味」と記す。テーブルにテーブル名が付与されている場合や、テーブル名が付与されていない場合がある。ここで、テーブルにテーブル名が付与されている場合であっても、そのテーブル名が、テーブルの概念として適切であるとは限らない。例えば、非特許文献１に記載されているように、カラム名の中の１つをテーブル名として流用することでテーブル名を定めたとしても、そのテーブル名が、テーブルの概念を表しているとは限らない。そこで、テーブルが表わしている概念を、テーブル名と区別して、テーブルの意味と記す。【００１０】
なお、非特許文献１に記載の技術では、オントロジを用いてカラムの意味を推定しているということができる。【００１１】
自動分析を行うために典型的分析パターンが利用されることがある。例えば、誰がどのような購買行動をしたか等を分析するための典型的分析パターンがある。しかし、そのような分析で用いられるテーブルの意味の把握は、人手で行われる。そのため、分析で用いられるテーブルの意味の把握に時間がかかってしまうという問題がある。【００１２】
また、データベースの移行作業（マイグレーション）が行われる場合がある。このとき、移行前のデータベース作業者とは異なる作業者が、移行後のテーブルを利用する場合がある。その作業者は、移行後のテーブルの意味の把握に時間がかかってしまうために、移行後のデータベースを円滑に利用できない。【００１３】
そこで、本発明は、テーブルの意味を推定することができるテーブル意味推定システム、テーブル意味推定方法およびテーブル意味推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明によるテーブル意味推定システムは、テーブルのカラムの意味とそのテーブルの意味とを含む学習データに基づいて、テーブルのカラムの意味とテーブルの意味との間の規則性を示すモデルを学習する学習手段と、入力されるテーブルのカラムの意味とモデルとに基づいて、そのテーブルの意味を推定する推定手段とを備えることを特徴とする。【００１５】
また、本発明によるテーブル意味推定システムは、テーブルの入力を受け付ける入力受付手段と、そのテーブルのカラムの意味と、予め学習されているモデルとに基づいて、そのテーブルの意味を推定する推定手段とを備え、モデルは、テーブルのカラムの意味とそのテーブルの意味とを含む学習データに基づいて学習された、テーブルのカラムの意味とテーブルの意味との間の規則性を示すモデルであることを特徴とする。【００１６】
また、本発明によるテーブル意味推定システムは、テーブルのテーブル名とそのテーブルの意味とを含む学習データに基づいて、テーブル名とテーブルの意味との間の規則性を示すモデルを学習する学習手段と、入力されるテーブルのテーブル名とモデルとに基づいて、そのテーブルの意味を推定する推定手段とを備えることを特徴とする。【００１７】
また、本発明によるテーブル意味推定システムは、テーブルの入力を受け付ける入力受付手段と、そのテーブルのテーブル名と、予め学習されているモデルとに基づいて、そのテーブルの意味を推定する推定手段とを備え、モデルは、テーブルのテーブル名とそのテーブルの意味とを含む学習データに基づいて学習された、テーブル名とテーブルの意味との間の規則性を示すモデルであることを特徴とする。【００１８】
また、本発明によるテーブル意味推定方法は、テーブルのカラムの意味とそのテーブルの意味とを含む学習データに基づいて、テーブルのカラムの意味とテーブルの意味との間の規則性を示すモデルを学習し、入力されるテーブルのカラムの意味とモデルとに基づいて、そのテーブルの意味を推定することを特徴とする。【００１９】
また、本発明によるテーブル意味推定方法は、テーブルの入力を受け付け、そのテーブルのカラムの意味と、予め学習されているモデルとに基づいて、そのテーブルの意味を推定し、モデルは、テーブルのカラムの意味とそのテーブルの意味とを含む学習データに基づいて学習された、テーブルのカラムの意味とテーブルの意味との間の規則性を示すモデルであることを特徴とする。【００２０】
また、本発明によるテーブル意味推定方法は、テーブルのテーブル名とそのテーブルの意味とを含む学習データに基づいて、テーブル名とテーブルの意味との間の規則性を示すモデルを学習し、入力されるテーブルのテーブル名とモデルとに基づいて、そのテーブルの意味を推定することを特徴とする。【００２１】
また、本発明によるテーブル意味推定方法は、テーブルの入力を受け付け、そのテーブルのテーブル名と、予め学習されているモデルとに基づいて、そのテーブルの意味を推定し、モデルは、テーブルのテーブル名とそのテーブルの意味とを含む学習データに基づいて学習された、テーブル名とテーブルの意味との間の規則性を示すモデルであることを特徴とする。【００２２】
また、本発明によるテーブル意味推定プログラムは、コンピュータに、テーブルのカラムの意味とそのテーブルの意味とを含む学習データに基づいて、テーブルのカラムの意味とテーブルの意味との間の規則性を示すモデルを学習する学習処理、および、入力されるテーブルのカラムの意味とモデルとに基づいて、そのテーブルの意味を推定する推定処理を実行させることを特徴とする。【００２３】
また、本発明によるテーブル意味推定プログラムは、コンピュータに、テーブルの入力を受け付ける入力受付処理、および、そのテーブルのカラムの意味と、予め学習されているモデルとに基づいて、そのテーブルの意味を推定する推定処理を実行させ、モデルは、テーブルのカラムの意味とそのテーブルの意味とを含む学習データに基づいて学習された、テーブルのカラムの意味とテーブルの意味との間の規則性を示すモデルであることを特徴とする。【００２４】
また、本発明によるテーブル意味推定プログラムは、コンピュータに、テーブルのテーブル名とそのテーブルの意味とを含む学習データに基づいて、テーブル名とテーブルの意味との間の規則性を示すモデルを学習する学習処理、および、入力されるテーブルのテーブル名とモデルとに基づいて、そのテーブルの意味を推定する推定処理を実行させることを特徴とする。【００２５】
また、本発明によるテーブル意味推定プログラムは、コンピュータに、テーブルの入力を受け付ける入力受付処理、および、そのテーブルのテーブル名と、予め学習されているモデルとに基づいて、そのテーブルの意味を推定する推定処理を実行させ、モデルは、テーブルのテーブル名とそのテーブルの意味とを含む学習データに基づいて学習された、テーブル名とテーブルの意味との間の規則性を示すモデルであることを特徴とする。
【発明の効果】
【００２６】
本発明によれば、テーブルの意味を推定することができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の第１の実施形態のテーブル意味推定システムの構成例を示すブロック図である。
【図２】各カラム名がそれぞれカラムの意味に置き換えられたテーブルと、そのテーブルの意味との組み合わせの例を示す模式図である。
【図３】テーブル意味モデルの例を示す説明図である。
【図４】テーブルの意味の推定結果等の表示画面の例を示す模式図である。
【図５】適切なテーブルの意味の入力を促す画面の例を示す模式図である。
【図６】テーブル意味モデルを生成する際の処理経過の例を示すフローチャートである。
【図７】意味の推定対象となるテーブルが入力された場合の処理経過の例を示すフローチャートである。
【図８】意味の推定対象となるテーブルが入力された場合の処理経過の例を示すフローチャートである。
【図９】入力されるテーブルの例を示す模式図である。
【図１０】テーブル意味推定システムがテーブル意味モデルの生成を行わない場合の構成例を示すブロック図である。
【図１１】本発明の第２の実施形態のテーブル意味推定システムの構成例を示すブロック図である。
【図１２】関係性情報の例を示す模式図である。
【図１３】意味の推定対象となるテーブルが入力された場合の処理経過の例を示すフローチャートである。
【図１４】入力されるテーブルの例を示す模式図である。
【図１５】テーブル意味推定システムがテーブル意味モデルの生成を行わない場合の構成例を示すブロック図である。
【図１６】テーブル意味推定システムが関係性情報を生成する場合の構成例を示すブロック図である。
【図１７】テーブルの意味に応じてベクトルｘ，Ｗの要素数を設定可能な構成例を示すブロック図である。
【図１８】テーブルと、テーブルの意味の入力欄と、チェックボックスとを含む画面の例を示す説明図である。
【図１９】テーブル名とテーブルの意味との組み合わせの例を示す模式図である。
【図２０】第３の実施形態におけるテーブル意味モデルの例を示す説明図である。
【図２１】ｘの要素である説明変数と文字列との対応関係の例を示す模式図である。
【図２２】意味の推定対象となるテーブルが入力された場合の処理経過の例を示すフローチャートである。
【図２３】意味の推定対象となるテーブルが入力された場合の処理経過の例を示すフローチャートである。
【図２４】本発明の各実施形態に係るコンピュータの構成例を示す概略ブロック図である。
【図２５】本発明の概要を示すブロック図である。
【図２６】本発明の概要の他の例を示すブロック図である。
【発明を実施するための形態】
【００２８】
以下、本発明の実施形態を図面を参照して説明する。
【００２９】
本発明では、テーブルの意味の集合（以下、テーブル意味集合と記す。）が用意される。テーブル意味集合に属するテーブルの意味の個数は有限個である。そして、本発明は、意味の推定対象となるテーブルに関して、テーブル意味集合からテーブルの意味を選択することによって、テーブルの意味を推定する。
【００３０】
実施形態１．
図１は、本発明の第１の実施形態のテーブル意味推定システムの構成例を示すブロック図である。テーブル意味推定システム１は、データ入力部２と、学習データ記憶部３と、テーブル意味モデル生成部４と、テーブル意味モデル記憶部５と、テーブル意味推定部６と、表示制御部７と、学習データ追加部８とを備える。
【００３１】
データ入力部２は、データが入力される入力デバイスである。本実施形態では、データ入力部２に、意味の推定対象となるテーブルの各カラムの意味の集合が入力される。以下、各カラム名がそれぞれカラムの意味に置き換えられたテーブルがデータ入力部２に入力されるものとして説明する。この場合、データ入力部２に入力されるテーブルには、前処理として、各カラム名をそれぞれカラムの意味に置き換える処理が行われる。各カラムの意味を特定する方法は、例えば、非特許文献１に記載された方法を用いればよく、あるいは、他の方法であってもよい。例えば、入力されるテーブルの各カラムの意味を非特許文献１に記載された方法で推定し、各カラム名をそれぞれ推定した各カラムの意味に置き換える前処理を、テーブル意味推定システム１の外部システム（図示略）が実行する。カラム名をカラムの意味に置き換えることで、カラム名の表記ゆれは排除される。データ入力部２には、その前処理後のテーブルが入力される。
【００３２】
ここで、カラムの意味の集合は予め定められているものとする。また、カラムの意味の集合に属するカラムの意味の個数は有限個であるものとする。例えば、上記の外部システムは、その集合からカラムの意味を選択することによって、カラムの意味を推定するものとする。
【００３３】
学習データ記憶部３は、学習データを記憶する記憶装置である。本実施形態では、学習データ記憶部３は、テーブルのカラムの意味からテーブルの意味を推定するための推定モデルの学習に用いられる学習データを記憶する。学習データは、テーブルのカラムの意味とそのテーブルの意味とを含む。以下に示す例では、各カラム名がそれぞれカラムの意味に置き換えられたテーブルと、そのテーブルの意味との組み合わせの集合が、学習データ記憶部３に記憶されるものとする。例えば、上記の外部システムが、テーブルの意味が既知となっているテーブル毎に、テーブルの各カラムの意味を非特許文献１に記載された方法で推定し、各カラム名をそれぞれ推定した各カラムの意味に置き換える処理を行えばよい。例えば、元々、テーブルに４つのカラムが存在し、それらのカラムにそれぞれ、「顧客名」、「都道府県」、「種別」、「仕事」というカラム名が付与されているとする。また、それらのカラムの意味の推定結果がそれぞれ、「名前」、「出身地」、「性別」、「職種」であるとする。この場合、「顧客名」、「都道府県」、「種別」、「仕事」というカラム名がそれぞれ、「名前」、「出身地」、「性別」、「職種」というカラムの意味に置き換えられる。そして、そのような処理が実行されたテーブルと、そのテーブルの意味との組み合わせの集合を、学習データとして学習データ記憶部３に記憶させておけばよい。既に説明したように、カラムの意味の集合は予め定められていて、その集合に属するカラムの意味の個数は有限個であるものとする。
【００３４】
図２は、各カラム名がそれぞれカラムの意味に置き換えられたテーブルと、そのテーブルの意味との組み合わせの例を示す模式図である。図２に例示する「名前」、「出身地」、「性別」、「職種」はそれぞれ、カラムの意味である。また、図２に例示するテーブルの意味が「顧客テーブル」であるということは既知であるものとする。学習データ記憶部３は、図２に例示したようなテーブルとそのテーブルの意味との組み合わせの集合を記憶する。
【００３５】
以下の説明で、テーブルの意味を推定するための推定モデルをテーブル意味モデルと記す。
【００３６】
テーブル意味モデル生成部４は、学習データに基づいて、テーブル意味モデルを生成する。換言すれば、テーブル意味モデル生成部４は、学習データを用いて、機械学習によって、テーブル意味モデルを学習する。機械学習の方法は、特に限定されない。本実施形態では、テーブル意味モデル生成部４は、テーブルのカラムの意味からテーブルの意味を推定するためのテーブル意味モデルを生成する。このテーブル意味モデルは、テーブルのカラムの意味と、テーブルの意味との間の規則性を示すモデルであると言うことができる。
【００３７】
図３は、テーブル意味モデル生成部４によって生成されるテーブル意味モデルの例を示す説明図である。図３に示すＷ，ｘはいずれも列ベクトルであるが、適宜、Ｗ，ｘを行ベクトルの転置行列として示す。以下の説明において、“Ｔ”は、転置行列を意味する。
【００３８】
カラムの意味の集合に属しているカラムの意味の個数をｎとする。ｘ＝（ｘ１，ｘ２，ｘ３，・・・，ｘｎ）Ｔにおけるｘ１〜ｘｎは、ｎ個のカラムの意味と一対一に対応する説明変数であり、ｘは、ｎ個の説明変数ｘ１〜ｘｎを要素とするベクトルである。各説明変数の値は、テーブル内に、対応するカラムの意味が含まれている場合に“１”と定められ、対応するカラムの意味が含まれていない場合に“０”と定められる。例えば、ｘ１が、「名前」というカラムの意味に対応しているとする。この場合、着目しているテーブルに「名前」というカラムの意味が含まれていれば、ｘ１＝１であり、着目しているテーブルに「名前」というカラムの意味が含まれていなければｘ１＝０である。他の説明変数にｘ２〜ｘｎに関しても同様である。テーブル意味モデル生成部４は、学習データに含まれているテーブル毎に、説明変数ｘ１〜ｘｎの値を定める。説明変数ｘ１〜ｘｎの値が定められたベクトルｘをテーブル特徴と記す。
【００３９】
また、テーブル意味モデルには、テーブル意味集合も含まれる。図３では、テーブル意味集合の例として、｛顧客テーブル，商品テーブル，購買履歴テーブル，・・・｝という集合を例示している。テーブル意味集合に属しているテーブルの意味の個数をｋ個とする。
【００４０】
Ｗ＝（ｗ１，ｗ２，ｗ３，・・・，ｗｎ）Ｔは、テーブル意味集合に属しているテーブルの意味毎に定められる。ｊ番目のテーブルの意味に対応するＷを、Ｗｊと記す。テーブルの意味の個数はｋ個であるのでは、ベクトルＷは、ｋ個定められることになる。また、Ｗの要素の数は、ｘの要素の数と同数であり、ｎ個である。
【００４１】
また、図３に示すｆ（ｘ）は、テーブルが与えられ、テーブル意味集合からテーブルの意味を１つ選択した場合に、選択したテーブルの意味が、与えられたテーブルの意味に該当する確度を意味している。
【００４２】
テーブル意味モデル生成部４は、学習データに含まれているテーブル毎に、テーブル特徴を定める。さらに、テーブル意味モデル生成部４は、各テーブル特徴と学習データに含まれている各テーブルの意味との対応関係に基づいて、テーブル意味集合および、テーブル意味集合に属するテーブルの意味毎のＷを定めることで、テーブル意味モデルを生成する。生成されたテーブル意味モデルにおいて、ｘの要素は変数で表される。一方、テーブルの意味毎に定められるＷの要素は、具体的な値である。
【００４３】
テーブル意味モデル記憶部５は、テーブル意味モデル生成部４によって生成されたテーブル意味モデルを記憶する記憶装置である。テーブル意味モデル生成部４は、テーブル意味モデルを生成すると、そのテーブル意味モデルをテーブル意味モデル記憶部５に記憶させる。
【００４４】
テーブル意味推定部６は、テーブル意味モデル記憶部５に記憶されているテーブル意味モデルに基づいて、データ入力部２に入力されたテーブルの意味を推定する。テーブル意味推定部６は、入力されたテーブルに含まれているカラムの意味に応じて、テーブル特徴を定める。そして、テーブル意味推定部６は、テーブル意味集合からテーブルの意味を１つずつ順に選択し、選択したテーブルの意味に対応するＷと、テーブル特徴とを用いて、確度ｆ（ｘ）を計算する。すなわち、テーブル特徴をｘｄａｔａとすると、テーブル意味推定部６は、ＷＴｘｄａｔａを計算することによって、確度ｆ（ｘ）を求める。テーブル意味推定部６は、確度が最も高いテーブルの意味を、入力されたテーブルの意味の推定結果として定める。
【００４５】
なお、本実施形態では、テーブル意味モデルが図３に例示するように表され、テーブル意味推定部６が、上記の演算によって、入力されたテーブルの意味を推定する場合を例にして説明する。ただし、テーブル意味モデルの態様は図３に示す態様に限定されない。また、テーブル意味推定部６は、テーブル意味モデルの態様に応じた演算で、入力されたテーブルの意味を推定すればよい。
【００４６】
表示制御部７は、テーブル意味推定システム１が備えるディスプレイ装置（図１において図示略）上に、情報やＧＵＩ（Graphical User Interface）を表示する。
【００４７】
テーブル意味推定部６が入力されたテーブルの意味の推定結果を求めると、表示制御部７は、ディスプレイ装置上に、入力されたテーブルおよびその推定結果を表示する。図４は、入力されたテーブルおよびその推定結果の表示画面の例を示す模式図である。図４に示す例では、テーブル意味推定部６が、入力されたテーブルを画面中央付近に表示する場合を示している。また、図４では、「下記テーブルは、顧客テーブルですか？」という文章を表示することによって、テーブルの意味の推定結果に該当する「顧客テーブル」を表示する場合を例示している。
【００４８】
表示制御部７は、表示したテーブルの意味の推定結果が適切か否かをユーザが入力するためのＧＵＩとして、ボタン５１，５２も表示する。ボタン５１がクリックされたということは、表示したテーブルの意味が適切である旨がユーザによって入力されたことを意味する。一方、ボタン５２がクリックされたということは、表示したテーブルの意味が適切でない旨がユーザによって入力されたことを意味する。
【００４９】
ボタン５２がクリックされた場合（すなわち、表示したテーブルの意味が適切でない旨の入力を受け付けた場合）、表示制御部７は、データ入力部２に入力されたテーブルの意味として適切な意味の入力を促す画面をディスプレイ装置上に表示する。図５は、この画面の例を示す模式図である。表示制御部７は、データ入力部２に入力されたテーブルを表示するとともに、そのテーブルの意味を入力するためのＧＵＩとして、入力欄５３および確認ボタン５４を表示する。ユーザは、表示されているテーブル（すなわち、データ入力部２に入力されたテーブル）の意味として適切な意味を、入力欄５３に入力する。図５では、テーブルの意味として「患者テーブル」という意味が入力された場合を例示している。ユーザが入力欄５３にテーブルの意味を入力し、確認ボタン５４をクリックすると、表示制御部７は、入力欄５３を介して、テーブルの意味の入力を受け付ける。
【００５０】
学習データ追加部８は、ユーザからの入力に応じて、既存の学習データ（すなわち、既に学習データ記憶部３に記憶されている学習データ）に、学習データを追加する。
【００５１】
具体的には、学習データ追加部８は、図４に例示する画面に表示したテーブルの意味が適切である旨が入力された場合、表示制御部７が表示したテーブルおよびそのテーブルの意味（図４に示す例では「顧客テーブル」）の組み合わせを学習データとして、既存の学習データに追加する。
【００５２】
また、学習データ追加部８は、図４に例示する画面に表示したテーブルの意味が適切でない旨が入力された場合、表示制御部７が表示したテーブルと、表示制御部７がユーザから受け付けたテーブルの意味（図５に示す例では「患者テーブル」）との組み合わせを学習データとして、既存の学習データに追加する。
【００５３】
学習データ追加部８によって学習データ記憶部３に学習データが追加された場合、テーブル意味モデル生成部４は、テーブル意味モデルの生成をやり直す。
【００５４】
テーブル意味モデル生成部４、テーブル意味推定部６、表示制御部７および学習データ追加部８は、例えば、テーブル意味推定プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、ＣＰＵは、例えば、コンピュータのプログラム記憶装置（図１において図示略）等のプログラム記録媒体からテーブル意味推定プログラムを読み込み、そのプログラムに従って、テーブル意味モデル生成部４、テーブル意味推定部６、表示制御部７および学習データ追加部８として動作すればよい。また、テーブル意味モデル生成部４、テーブル意味推定部６、表示制御部７および学習データ追加部８が別々のハードウェアによって実現されていてもよい。これらの点は、後述の他の実施形態でも同様である。
【００５５】
また、テーブル意味推定システム１は、２つ以上の物理的に分離した装置が有線または無線で接続される構成であってもよい。この点は、後述の他の実施形態でも同様である。
【００５６】
以下、本発明の第１の実施形態の処理経過について説明する。
【００５７】
テーブル意味推定システム１は、意味の推定対象のテーブルの入力を受け付ける前に、事前に、テーブル意味モデルを生成する。図６は、テーブル意味モデルを生成する際の処理経過の例を示すフローチャートである。
【００５８】
なお、学習データ記憶部３には、各カラム名がそれぞれカラムの意味に置き換えられたテーブルと、そのテーブルの意味との組み合わせの集合が、学習データとして記憶されているものとする。
【００５９】
テーブル意味モデル生成部４は、その学習データを、学習データ記憶部３から読み込む（ステップＳ１）。
【００６０】
次に、テーブル意味モデル生成部４は、その学習データに基づいて、テーブル意味モデル生成する（ステップＳ２）。
【００６１】
ステップＳ２において、テーブル意味モデル生成部４は、学習データに含まれているテーブル毎に、テーブル特徴を定める。ここでは、学習データに含まれているテーブルのうち、図２に例示するテーブルのテーブル特徴を定める場合を例にして説明する。本実施形態では、図３に示すベクトルｘの要素のうち、ｘ１が「名前」に対応し、ｘ２が「商品」に対応し、ｘ３が「出身地」に対応し、ｘ４が「性別」に対応し、ｘ５が「職種」に対応し、ｘ６以降が他のカラムの意味に対応しているとする。図２に例示するテーブルには、カラムの意味として、「名前」、「出身地」、「性別」および「職種」が含まれていて、他のカラムの意味は含まれていない。従って、ｘ１＝１，ｘ２＝０，ｘ３＝１，ｘ４＝１，ｘ５＝１となる。また、ｘ６〜ｘｎの各説明変数の値はいずれも０である。テーブル意味モデル生成部４は、図２に例示するテーブルのテーブル特徴として、ｘ＝（１，０，１，１，１，０，・・・，０）Ｔというｎ次元ベクトルを定める。この結果、ｘ＝（１，０，１，１，１，０，・・・，０）Ｔというテーブル特徴と、「顧客テーブル」というテーブルの意味との組み合わせが定まる。
【００６２】
テーブル意味モデル生成部４は、学習データに含まれている他の各テーブルに関しても同様にテーブル特徴を定め、テーブル特徴とテーブルの意味との組み合わせを定める。
【００６３】
そして、テーブル意味モデル生成部４は、テーブル特徴とテーブルの意味との組み合わせの集合に基づいて、テーブル意味集合を定めるとともに、ｆ（ｘ）＝ＷＴｘという式におけるベクトルＷを、テーブル意味集合に属するテーブルの意味毎に定める。この結果、テーブル意味モデルが定まる。既に説明したように、テーブル意味モデルにおいて、ｘの要素は変数で表される。一方、テーブルの意味毎に定められるＷの要素は、具体的な値である。
【００６４】
テーブル意味モデル生成部４は、生成したテーブル意味モデルをテーブル意味モデル記憶部５に記憶させる。
【００６５】
次に、テーブル意味推定システム１に対して、意味の推定対象となるテーブルが入力された場合の処理経過を説明する。図７および図８は、意味の推定対象となるテーブルが入力された場合の処理経過の例を示すフローチャートである。
【００６６】
まず、データ入力部２にテーブルが入力される（ステップＳ１１）。ステップＳ１１では、各カラム名をそれぞれカラムの意味に置き換える処理が行われたテーブルが入力される。ここでは、図９に示すテーブルが入力される場合を例にして説明する。
【００６７】
次に、テーブル意味推定部６は、ステップＳ１１で入力されたテーブルの意味を、テーブル意味モデルに基づいて推定する（ステップＳ１２）。
【００６８】
ステップＳ１２において、テーブル意味推定部６は、テーブル意味モデル記憶部５からテーブル意味モデルを読み込む。
【００６９】
さらに、テーブル意味推定部６は、入力されたテーブルのテーブル特徴を定める。既に説明したように、本実施形態では、図３に示すベクトルｘの要素のうち、ｘ１が「名前」に対応し、ｘ２が「商品」に対応し、ｘ３が「出身地」に対応し、ｘ４が「性別」に対応し、ｘ５が「職種」に対応し、ｘ６以降が他のカラムの意味に対応しているとする。従って、図９に示すテーブルに関して、ｘ１＝１，ｘ２＝０，ｘ３＝１，ｘ４＝１，ｘ５＝１となる。テーブル意味推定部６は、同様に、第５カラム以降のカラムの意味に応じて、ｘ６〜ｘｎの各説明変数の値を定め、図９に例示するテーブルのテーブル特徴として、ｘ＝（１，０，１，１，１，・・・）Ｔというｎ次元ベクトルを定める。このテーブル特徴をｘｄａｔａとする。
【００７０】
そして、テーブル意味推定部６は、テーブル意味集合からテーブルの意味を１つずつ順に選択し、選択したテーブルの意味に対応するＷと、テーブル特徴とを用いて、確度ｆ（ｘ）を計算する。既に説明したように、ｊ番目のテーブルの意味に対応するＷを、Ｗｊと記す。テーブル意味推定部６は、図３に示す１番目のテーブルの意味「顧客テーブル」を選択した場合、「顧客テーブル」に対応するＷ１と、上記のテーブル特徴ｘｄａｔａとを用いて、「顧客テーブル」が、入力されたテーブルの意味である確度を、ｆ（ｘ）＝Ｗ１Ｔｘｄａｔａの計算によって求める。テーブル意味推定部６は、「商品テーブル」、「購買履歴テーブル」（図３参照）等の他のテーブルの意味に関してもそれぞれ、同様の演算を行い、選択したテーブルの意味が、入力されたテーブルの意味に該当する確度を求める。
【００７１】
そして、テーブル意味推定部６は、確度が最も高いテーブルの意味を、入力されたテーブルの意味の推定結果として定める。
【００７２】
以下の説明では、テーブル意味推定部６が上記の処理によって、入力されたテーブルの意味が「顧客テーブル」であると推定した場合を例にして説明する。
【００７３】
ステップＳ１２の処理が実行された後、表示制御部７は、ステップＳ１１で入力されたテーブルと、ステップＳ１２で推定されたテーブルの意味をディスプレイ装置上に表示し、そのテーブルの意味が適切か否かの入力をユーザに促す（ステップＳ１３）。ステップＳ１３では、表示制御部７は、例えば、図４に示す画面を表示する。図４に示す画面については、既に説明したので、ここでは適宜、説明を省略する。
【００７４】
図４に例示する画面で表示されているテーブルは、ステップＳ１１で入力されたテーブル（意味の推定対象であるテーブル）である。図４に例示する画面で表示されている「顧客テーブル」は、ステップＳ１２で推定されたテーブルの意味である。
【００７５】
ステップＳ１３で表示されたテーブルの意味「顧客テーブル」が、ステップＳ１３で表示されている画面内のテーブルの意味として適切であるとユーザが判断した場合、ユーザは、ボタン５１（図４参照）をクリックする。すなわち、表示制御部７は、表示したテーブルの意味が適切である旨の入力を受け付ける（ステップＳ１４のＹｅｓ）。
【００７６】
すると、学習データ追加部８は、表示制御部７がステップＳ１３で表示したテーブルと、そのテーブルの意味（推定されたテーブルの意味）との組み合わせを、既存の学習データに追加する（ステップＳ１５）。すなわち、学習データ追加部８は、テーブルと、推定されたテーブルの意味との組み合わせを、学習データ記憶部３に記憶されている学習データに追加する。ステップＳ１５の処理が実行された後、ステップＳ１８に移行する。
【００７７】
また、ステップＳ１３で表示されたテーブルの意味「顧客テーブル」が、ステップＳ１３で表示されている画面内のテーブルの意味として適切でないとユーザが判断した場合、ユーザは、ボタン５２（図４参照）をクリックする。表示制御部７は、表示したテーブルの意味が適切でない旨の入力を受け付ける（ステップＳ１４のＮｏ）。
【００７８】
すると、表示制御部７は、ステップＳ１３で表示したテーブルの意味の入力をユーザから受け付ける（ステップＳ１６）。表示制御部７は、例えば、図５に示す画面を表示する。図５に示す画面については、既に説明したので、ここでは適宜、説明を省略する。表示制御部７は、ユーザから、例えば、入力欄５３（図５参照）を介して、テーブルの意味の入力を受け付ける。ここでは、ステップＳ１３で表示されたテーブルの意味として、「患者テーブル」が適切であるとユーザが判断し、「患者テーブル」が入力されたとする。
【００７９】
次に、学習データ追加部８は、表示制御部７がステップＳ１３で表示したテーブルと、ステップＳ１６で入力されたテーブルの意味（本例では、「患者テーブル」）との組み合わせを、既存の学習データに追加する（ステップＳ１７）。すなわち、学習データ追加部８は、テーブルと、ユーザに入力されたテーブルの意味（本例では、「患者テーブル」）との組み合わせを、学習データ記憶部３に記憶されている学習データに追加する。ステップＳ１７の処理が実行された後、ステップＳ１８に移行する。
【００８０】
ステップＳ１５，Ｓ１７の何れにおいても、学習データに新たな学習データが追加される。ステップＳ１５またはステップＳ１７からステップＳ１８に移行した場合、テーブル意味モデル生成部４は、その時点で学習データ記憶部３に記憶されている学習データに基づいて、テーブル意味モデルを生成する処理をやり直す（ステップＳ１８）。換言すれば、テーブル意味モデル生成部４は、既存の学習データおよび追加された学習データを用いて、テーブル意味モデルを学習し直す。
【００８１】
本実施形態によれば、テーブル意味モデル生成部４が、テーブルのカラムの意味からテーブルの意味を推定するための推定モデル（テーブル意味モデル）を生成する。そして、テーブル意味推定部６は、入力されたテーブルのカラムの意味とテーブル意味モデルに基づいて、そのテーブルの意味を推定する。従って、本実施形態によれば、テーブルの意味を推定することができる。
【００８２】
従って、例えば、典型的分析パターンを用いて自動分析を実施しようとする者は、その分析で用いるテーブルの意味を短時間で把握することができる。
【００８３】
また、例えば、データベースの移行作業が行われ、移行前のデータベース作業者とは異なる作業者が、移行後のテーブルを利用する場合であっても、その作業者は、移行後のテーブルの意味を短時間で把握することができ、移行後のデータベースを円滑に利用することができる。
【００８４】
また、第１の実施形態によれば、テーブル意味推定部６が推定したテーブルの意味が適切か否かをユーザが判断する。そして、そのテーブルの意味が適切であると判断された場合、学習データ追加部８は、ステップＳ１１で入力されたテーブルと、テーブル意味推定部６が推定したテーブルの意味との組み合わせを学習データに追加する。また、推定したテーブルの意味が適切でないと判断された場合、表示制御部７は、ステップＳ１１で入力されたテーブルの意味として適切な意味をユーザから入力され、学習データ追加部８は、ステップＳ１１で入力されたテーブルと、ユーザによって入力されたそのテーブルの意味との組み合わせを学習データに追加する。そして、テーブル意味モデル生成部４は、テーブル意味モデルを生成し直す。従って、テーブル意味モデルの精度を向上させることができる。特に、テーブル意味推定部６が推定したテーブルの意味が適切でないと判断された場合、ユーザが適切と判断したテーブルの意味が学習データに追加されるので、テーブル意味モデルの精度を向上させる効果が大きい。
【００８５】
また、テーブル意味モデル生成部４は、逐次的にテーブル意味モデルを学習し、学習データ内の各テーブルについて、推定の確度を得る構成であってもよい。その際、テーブル意味モデル生成部４は、推定の確度の低いテーブルから順に学習処理をおこなってもよい。その場合、全てのテーブルから学習処理を行う前に、十分な推定精度を達成することができる。
【００８６】
次に、第１の実施形態の変形例について説明する。第１の実施形態では、テーブル意味推定システム１がテーブル意味モデルの生成と、入力されたテーブルの意味の推定とを行う場合を示した。テーブル意味推定システム１とは異なる別のシステム（図示略。以下、学習システムと記す。）がテーブル意味モデルの生成を実行し、テーブル意味推定システム１がテーブル意味モデルの生成を行わない構成であってもよい。図１０は、テーブル意味推定システム１がテーブル意味モデルの生成を行わない場合の構成例を示すブロック図である。この場合、学習データ記憶部３およびテーブル意味モデル生成部４（図１参照）は、学習システムに設けられる。学習システムに設けられる学習データ記憶部３およびテーブル意味モデル生成部４は、図１に示すそれらと同様である。テーブル意味推定システム１は、例えば、図１０に示すように、データ入力部２と、テーブル意味モデル記憶部５と、テーブル意味推定部６と、表示制御部７とを備える。データ入力部２、テーブル意味モデル記憶部５およびテーブル意味推定部６は、図１に示すそれらと同様である。ただし、テーブル意味モデル記憶部５には、学習システムが生成したテーブル意味モデルが記憶される。学習システムが、ステップＳ１，Ｓ２の処理（図６参照）を実行するので、図１０に示すテーブル意味推定システム１は、ステップＳ１，Ｓ２の処理を実行しなくてよい。また、表示制御部７は、ステップＳ１２の処理が実行された後、ステップＳ１１で入力されたテーブル、および、ステップＳ１２で推定されたテーブルの意味を表示すればよい。このとき、表示制御部７は、ボタン５１，５２を表示しなくてよい。そして、テーブル意味推定システム１は、入力されたテーブル、および、推定したテーブルの意味を表示し、その時点で、処理を終了してもよい。
【００８７】
実施形態２．
図１１は、本発明の第２の実施形態のテーブル意味推定システムの構成例を示すブロック図である。第１の実施形態のテーブル意味推定システム１（図１参照）が備える構成要素と同様の構成要素については、図１と同一の符号を付し、適宜、説明を省略する。第２の実施形態のテーブル意味推定システム１は、第１の実施形態のテーブル意味推定システム１が備える各構成要素に加えて、カラム意味推定部９と、関係性情報記憶部１０とを備える。
【００８８】
第１の実施形態では、各カラム名がそれぞれカラムの意味に置き換えられたテーブルがデータ入力部２に入力される。それに対して、第２の実施形態では、そのような置き換えが行われていないテーブルがデータ入力部２に入力される。すなわち、テーブル作成時に付与されたカラム名をそのまま含むテーブルがデータ入力部２に入力される。
【００８９】
関係性情報記憶部１０は、関係性情報を記憶する記憶装置である。関係性情報とは、「カラムの意味」と「属性値」との関係を表すデータである。カラム意味推定部９は、入力されたテーブルの各カラムの意味を推定するときに、関係性情報を参照する。関係性情報記憶部１０には、例えば、予め定められた関係性情報が記憶される。
【００９０】
図１２は、関係性情報記憶部１０が記憶する関係性情報の例を示す模式図である。本実施形態では、個々の関係性情報は、“Ａ  ｉｓ  Ｂ”という形式で表されるものとする。具体的には、個々の関係性情報は、“カラムの意味  ｉｓ  属性値”という形式で表されるものとする。“カラムの意味  ｉｓ  属性値”は、そのカラムの意味と属性値とが対応付けられていることを意味する。例えば、図１２に示す“名前  ｉｓ  佐藤”は、「佐藤」という属性値が「名前」というカラムの意味に対応していることを表している。また、例えば、“性別  ｉｓ  男”は、「男」という属性値が「性別」というカラムの意味に対応していることを表している。
【００９１】
関係性情報を用いることで、属性値が格納されているカラムの意味を推定することができる。
【００９２】
カラム意味推定部９は、データ入力部２に入力されたテーブルのカラム毎に、カラムの意味を推定し、カラム名をカラムの意味に置き換える。
【００９３】
カラム意味推定部９は、１つのカラムに対して、例えば、以下の処理を行うことによって、そのカラムの意味を推定する。カラム意味推定部９は、カラム内の属性値毎に、対応する「カラムの意味」を、関係性情報を参照して特定する。このとき、１つのカラム内の全ての属性値が同一の「カラムの意味」に対応付けられているとは限らない。そのため、属性値毎にカラムの意味を特定した結果、複数個のカラムの意味が得られてもよい。カラム意味推定部９は、特定したカラムの意味毎に、対応する属性値の数をカウントし、対応する属性値の数が最大となっているカラムの意味を、カラムの意味の推定結果とする。例えば、カラムに１００個の属性値が格納されていて、そのうち９５個の属性値が、「名前」というカラムの意味に対応し、残りの５個の属性値が、「出身地」というカラムの意味に対応していたとする。この場合、カラム意味推定部９は、そのカラムの意味は「名前」であると推定する。さらに、カラム意味推定部９は、そのカラムのカラム名を、推定したカラムの意味（本例では「名前」）に置き換える。
【００９４】
カラム意味推定部９は、上記の処理を、入力されたテーブルのカラム毎に実行する。
【００９５】
カラム意味推定部９は、各カラム名をカラムの意味に置き換えたテーブルをテーブル意味推定部６に送る。
【００９６】
学習データ記憶部３、テーブル意味モデル生成部４、テーブル意味モデル記憶部５、テーブル意味推定部６、表示制御部７および学習データ追加部８は、第１の実施形態におけるそれらと同様である。
【００９７】
カラム意味推定部９は、例えば、テーブル意味推定プログラムに従って動作するコンピュータのＣＰＵによって実現される。
【００９８】
以下、本発明の第２の実施形態の処理経過について説明する。
【００９９】
テーブル意味推定システム１がテーブル意味モデルを生成する動作は、第１の実施形態で説明した動作（図６参照）と同様であり、説明を省略する。
【０１００】
図１３は、意味の推定対象となるテーブルが入力された場合の処理経過の例を示すフローチャートである。なお、ステップＳ１２以降の処理は、第１の実施形態におけるステップＳ１２以降の処理と同様であり、ステップＳ１４〜Ｓ１８については、図８に示しているので、ここでは、ステップＳ１４〜Ｓ１８の図示を省略している。
【０１０１】
まず、データ入力部２にテーブルが入力される（ステップＳ２１）。第２の実施形態では、テーブル作成時に付与されたカラム名をそのまま含むテーブルが、データ入力部２に入力される。ここでは、図１４に示すテーブルが入力される場合を例にして説明する。図１４に示す「顧客名」、「都道府県」、「種別」、「仕事」等はカラム名である。
【０１０２】
次に、カラム意味推定部９は、入力されたテーブルのカラム毎に、カラムの意味を推定し、カラム名をカラムの意味に置き換える（ステップＳ２２）。カラム意味推定部９がカラムの意味を推定する動作については、既に説明したので、ここでは説明を省略する。
【０１０３】
ステップＳ２２において、図１４に示す各カラム名がカラムの意味に置き換えられたことにより、図９に示すテーブルが得られたとする。すなわち、「顧客名」、「都道府県」、「種別」、「仕事」等のカラム名（図１４参照）がそれぞれ、「名前」、「出身地」、「性別」、「職種」等のカラムの意味に置き換えられたとする。カラム意味推定部９は、各カラム名をカラムの意味に置き換えた後のテーブル（本例では、図９に示すテーブル）を、テーブル意味推定部６に送る。
【０１０４】
この後の処理は、第１の実施形態におけるステップＳ１２以降の処理と同様である。ただし、ステップＳ１２において、テーブル意味推定部６は、ステップＳ２２で各カラム名をそれぞれカラムの意味に置き換える処理が行われたテーブルを用いて、テーブルの意味を推定する。
【０１０５】
また、ステップＳ１３（図１３参照）やステップＳ１６（図８参照）でテーブルを表示する場合、表示制御部７は、ステップＳ２２で各カラム名をそれぞれカラムの意味に置き換える処理が行われたテーブルを表示する。
【０１０６】
第２の実施形態においても、第１の実施形態と同様の効果が得られる。
【０１０７】
また、第２の実施形態では、カラム意味推定部９が、入力されたテーブル内のカラム毎に、カラムの意味を推定し、カラム名をカラムの意味に置き換える。従って、データ入力部２に入力されるテーブルは、各カラム名をそれぞれカラムの意味に置き換える前処理を施したテーブルでなくてよい。すなわち、ユーザは、付与されたカラム名をそのまま含むテーブルをデータ入力部２に入力してよい。
【０１０８】
また、付与されたカラム名をそのまま含むテーブルをそのまま用いて、テーブル意味推定部６がテーブルの意味を推定する場合を考える。前述のように、一般に、カラム名は、人間によって決定されるので、カラム名には表記ゆれが生じる。すると、カラム名を有限個に定めることは困難である。カラムの意味は有限個（ｎ個）であり、図３に示すテーブル意味モデルにおいて、Ｗの要素の個数、および、ｘの要素の個数はそれぞれｎ個である。テーブルの意味の代わりに、カラム名を用いるとすると、カラム名を有限個に定めることは困難であるので、図３に示すテーブル意味モデルを生成することも困難となる。その結果、テーブル意味推定部６がテーブルの意味を推定できないことになる。それに対して、第２の実施形態では、カラム意味推定部９が、入力されたテーブル内のカラム毎に、カラムの意味を推定し、カラム名をカラムの意味に置き換える。従って、テーブル意味推定部６がテーブルの意味を推定できる。
【０１０９】
また、仮に、カラム名を有限個に定めることができ、図３に示すテーブル意味モデルを生成できたとしても、カラム名の個数は、カラムの意味の個数に比べて、膨大な数となる。従って、テーブル意味モデルにおけるベクトルＷ，ｘの要素の個数（次元数）も膨大な数になる。すると、テーブル意味モデル生成部４がテーブル意味モデルを生成する処理や、テーブル意味推定部６がテーブルの意味を推定する処理の処理負荷が非常に大きくなる。第２の実施形態では、カラム意味推定部９が、入力されたテーブル内のカラム毎に、カラムの意味を推定し、カラム名をカラムの意味に置き換えるので、そのような処理負荷の増加を防ぐことができる。
【０１１０】
次に、第２の実施形態の変形例について説明する。
【０１１１】
第１の実施形態の変形例と同様に、テーブル意味推定システム１とは異なる学習システム（図示略）がテーブル意味モデルの生成を実行し、テーブル意味推定システム１がテーブル意味モデルの生成を行わない構成であってもよい。図１５は、テーブル意味推定システム１がテーブル意味モデルの生成を行わない場合の構成例を示すブロック図である。データ入力部２、関係性情報記憶部１０、カラム意味推定部９、テーブル意味モデル記憶部５およびテーブル意味推定部６は、図１１に示すそれらと同様である。テーブル意味モデル記憶部５には、学習システムが生成したテーブル意味モデルが記憶される。また、表示制御部７は、ステップＳ１２の処理が実行された後、ステップＳ２２でカラム名がカラムの意味に置き換えられたテーブル、および、ステップＳ１２で推定されたテーブルの意味を表示すればよい。このとき、表示制御部７は、ボタン５１，５２（図４参照）を表示しなくてよい。そして、テーブル意味推定システム１は、テーブル、および、テーブルの意味を表示した時点で、処理を終了してもよい。
【０１１２】
また、第２の実施形態において、ユーザは、学習データの生成のために、テーブル作成時に付与されたカラム名をそのまま含むテーブルとそのテーブルの意味との組み合わせの集合をテーブル意味推定システム１に入力してもよい。このとき、カラム意味推定部９が、入力された各テーブルのカラム毎に、カラムの意味を推定し、カラム名をカラムの意味に置き換える処理を行い、その処理を行った後のテーブルおよびテーブルの意味の組み合わせの集合を学習データとして、学習データ記憶部３に記憶させてもよい。
【０１１３】
また、テーブル意味推定システム１が関係性情報を生成してもよい。図１６は、テーブル意味推定システム１が関係性情報を生成する場合の構成例を示すブロック図である。第２の実施形態の構成要素と同様の構成要素については、図１１と同一の符号を付し、説明を省略する。図１６に示すテーブル意味推定システム１は、第２の実施形態のテーブル意味推定システム１が備える各構成要素（図１１参照）に加えて、関係性抽出部１１と、ルール記憶部１２とを備える。
【０１１４】
関係性抽出部１１には、例えば、仕様書等のテキストデータが入力される。関係性抽出部１１に入力されるテキストデータの種類は特に限定されない。ルール記憶部１２は、テキストデータから、関係性情報を抽出するためのルールを記憶する記憶装置である。関係性抽出部１１は、そのルールに従って、テキストデータから関係性情報を抽出し、抽出した関係性情報を関係性情報記憶部１０に記憶させる。与えられたルールに従って、テキストデータから関係性情報を抽出する方法は、公知の方法でよい。
【０１１５】
関係性抽出部１１は、例えば、テーブル意味推定プログラムに従って動作するコンピュータのＣＰＵによって実現される。
【０１１６】
図１６に示す構成によれば、ユーザが関係性情報を作成する作業負担が軽減される。
【０１１７】
また、第１の実施形態および第２の実施形態において、テーブルの意味に応じてｆ（ｘ）＝ＷＴｘにおけるベクトルｘ，Ｗの要素数を設定可能な構成であってもよい。以下、第１の実施形態の変形例として説明するが、以下に示す構成および動作を第２の実施形態に適用してもよい。
【０１１８】
図１７は、テーブルの意味に応じてベクトルｘ，Ｗの要素数を設定可能な構成例を示すブロック図である。第１の実施形態と同様の構成要素については、図１と同一の符号を付し、説明を省略する。図１７に示すテーブル意味推定システム１は、第１の実施形態のテーブル意味推定システム１が備える各構成要素（図１参照）に加えて、要素数設定部１３を備える。
【０１１９】
テーブルの意味に応じてベクトルｘ，Ｗの要素数を設定する動作は、テーブル意味モデルの生成よりも前に行われる。テーブル意味推定システム１は、例えば、ＧＵＩを介して入力されるユーザからの指示に応じて、この動作を開始する。
【０１２０】
テーブルの意味に応じてｘ，Ｗの要素数を設定する動作の開始後、データ入力部２には、テーブルが入力される。このテーブルは、各カラム名をそれぞれカラムの意味に置き換える前処理が行われたテーブルである。
【０１２１】
テーブルが入力されると、表示制御部７は、そのテーブルと、そのテーブルの意味の入力欄と、そのテーブルの各カラムと一対一に対応するチェックボックスとをディスプレイ上に表示する。図１８は、テーブルと、テーブルの意味の入力欄と、チェックボックスとを含む画面の例を示す説明図である。テーブル６１は、入力されたテーブルである。入力欄６２は、テーブル６１の意味が入力される入力欄である。表示制御部７は、チェックボックス６３として、テーブル６１のカラム数と同数のチェックボックスを表示する。決定ボタン６４は、入力欄６２への入力およびチェックボックス６３へのチェックが確定した旨をユーザが入力するためのボタンである。図１８に示すように、表示制御部７は、テーブル６１の意味の入力を促すメッセージや、テーブル６１の意味を表す特徴的なカラムの選択を促すメッセージも合わせて表示する。
【０１２２】
ユーザは、メッセージに応じて、テーブル６１の意味を入力欄６２に入力する。また、ユーザは、テーブル６１の意味を表す特徴的なカラムに対応するチェックボックスにチェックを入れ、その他のチェックボックスにはチェックを入れない。
【０１２３】
その後、決定ボタン６４がクリックされると、表示制御部７は、入力欄６２に入力されたテーブル６１の意味と、チェックが入れられたチェックボックスに対応するカラムの意味を要素数設定部１３に送る。図１８に例示する入力が行われた場合、表示制御部７は、「顧客テーブル」というテーブルの意味と、「名前」、「性別」、「職種」という３つのカラムの意味を要素数設定部１３に送る。
【０１２４】
要素数設定部１３は、そのテーブルの意味に関する確度を計算する際のｆ（ｘ）＝ＷＴｘにおけるＷ，ｘの要素の数を、表示制御部７から送られたカラムの意味の数（換言すれば、チェックが入れられたチェックボックス）の数に設定する。さらに、そのｘの要素となる説明変数を、表示制御部７から送られたカラムの意味に対応する説明変数に定める。例えば、ｘ１が「名前」に対応し、ｘ４が「性別」に対応し、ｘ５が「職種」に対応するものとする。本例では、要素数設定部１３は、「顧客テーブル」に関する確度を計算する際のｆ（ｘ）＝ＷＴｘにおけるｘを、ｘ＝（ｘ１，ｘ４，ｘ５）Ｔという３つの説明変数を要素とするベクトルとして設定する。また、そのＷの要素数を３に設定する。要素数設定部１３は、その設定結果をテーブル意味モデル生成部４およびテーブル意味推定部６に通知する。
【０１２５】
その通知を受けた場合、テーブル意味モデル生成部４は、「顧客テーブル」に関する確度を計算する際のｆ（ｘ）＝ＷＴｘにおけるｘを、ｘ＝（ｘ１，ｘ４，ｘ５）Ｔという３つの説明変数を要素とするベクトルとし、そのＷの要素数を３として、テーブル意味モデルを生成する。
【０１２６】
また、要素数設定部１３からの通知を受けたテーブル意味推定部６は、テーブル意味集合から「顧客テーブル」を選択し、「顧客テーブル」の確度を計算する際、ｘ＝（ｘ１，ｘ４，ｘ５）Ｔの要素である３つの説明変数の値を定めることによってテーブル特徴ｘｄａｔａを導出する。そして、テーブル意味推定部６は、「顧客テーブル」に対応するＷと、そのｘｄａｔａとを用いて、ＷＴｘｄａｔａを計算することにより、「顧客テーブル」が推定対象のテーブルの意味である確度を計算する。「顧客テーブル」に対応するＷの要素数は３であるので、ＷＴｘｄａｔａは計算可能である。
【０１２７】
上記の例では、「顧客テーブル」というテーブルの意味に対応するｘ，Ｗの要素数を設定する場合を説明した。図１７に示すテーブル意味推定システム１は、他のテーブルの意味に対応するｘ，Ｗに対しても、ユーザからの入力に応じて、同様の設定動作を行ってもよい。また、ユーザからの指定されなかったテーブルの意味に関しては、ｘ，Ｗの要素数をデフォルト値にすればよい。このデフォルト値は、カラムの意味の集合にカラムの意味の個数（ｎ個）である。
【０１２８】
実施形態３．
第３の実施形態では、意味の推定対象となるテーブルにテーブル名が付与されていることを前提とする。第３の実施形態のテーブル意味推定システムは、与えられたテーブル名とテーブル意味モデルとに基づいて、テーブルの意味を推定する。
【０１２９】
第３の実施形態のテーブル意味推定システムは、第１の実施形態のテーブル意味推定システムと同様に、図１に示すブロック図で表すことができるので、図１を用いて第３の実施形態を説明する。第１の実施形態と同様の事項については、適宜説明を省略する。
【０１３０】
第３の実施形態では、データ入力部２に、意味の推定対象となるテーブルのテーブル名が入力される。以下、テーブル名が付与されたテーブルが、データ入力部２に入力されるものとして説明する。
【０１３１】
また、本実施形態におけるテーブル意味モデルは、テーブル名からテーブルの意味を推定するための推定モデルである。学習データ記憶部３は、そのテーブル意味モデルの学習に用いられる学習データを記憶する。本実施形態では、学習データは、テーブルのテーブル名と、そのテーブルの意味とを含む。以下に示す例では、テーブル名とテーブルの意味のとの組み合わせの集合が、学習データとして、学習データ記憶部３に記憶されているものとする。１つのテーブルの意味と組み合わせをなすテーブル名は、複数であってもよい。
【０１３２】
図１９は、テーブル名とテーブルの意味との組み合わせの例を示す模式図である。図１９では、“CustomerTables”，“Customer”等の複数のテーブル名と、“Customer”というテーブルの意味との組み合わせを示している。このようなテーブル名とテーブル意味との組み合わせは、ユーザが、テーブル名が付加されている既存のテーブルの意味を判断し、そのテーブル名とテーブルの意味とを対応付けることによって定めればよい。学習データ記憶部３は、図１９に例示したようなテーブル名とそのテーブルの意味との組み合わせの集合を記憶する。
【０１３３】
テーブル意味モデル生成部４は、学習データに基づいて、テーブル意味モデルを生成する。テーブル意味モデルを生成する際の機械学習の方法は、特に限定されない。本実施形態では、テーブル意味モデル生成部４は、テーブル名からテーブルの意味を推定するためのテーブル意味モデルを生成する。このテーブル意味モデルは、テーブルのテーブル名と、テーブルの意味との間の規則性を示すモデルであると言うことができる。
【０１３４】
図２０は、第３の実施形態におけるテーブル意味モデルの例を示す説明図である。図２０に示すＷ，ｘはいずれも列ベクトルであるが、適宜、Ｗ，ｘを行ベクトルの転置行列として示す。
【０１３５】
ｘの要素となる説明変数は、第１および第２の実施形態における説明変数とは異なる。第３の実施形態では、ｘの要素となる各説明変数はそれぞれ異なる文字列に対応している。１つの説明変数は、テーブル名を表す文字列を所定の方法で区切った場合に、その説明変数に対応する文字列が何個存在するかを示す変数である。本実施形態では、テーブル名を表す文字列を区切る方法として、２文字ずつ区切る方法を採用する場合を例にして説明する。また、それに合わせて、ｘの要素となる各説明変数はそれぞれ、２つの文字からなる文字列に対応しているものとする。
【０１３６】
ここで、２つの文字の順番が異なれば、異なる文字列として扱う。例えば、“ab”と“ba”とを異なる文字列として扱う。また、文字列は、同じ文字が２つ続いた文字列（例えば“aa”）であってもよい。また、本実施形態では、大文字と小文字とを区別しない場合を例にして説明する。本実施形態では、これらの条件を満たして得られる２つのアルファベットからなる文字列の数をｎとする。本実施形態では、このｎを、ｘおよびＷの要素数とする。
【０１３７】
図２１は、ｘの要素である説明変数と文字列との対応関係の例を示す模式図である。図２１に示す例では、例えば、説明変数ｘ１は、文字列“aa”に対応し、説明変数ｘｈは、文字列“st”に対応する。例えば、説明変数ｘｈは、テーブル名を表す文字列を２文字ずつ区切った場合、文字列“st”が何個存在するかを示す。例えば、テーブル名“CustomerTables”を２文字ずつ区切った場合、文字列“st”は１つ存在するので、テーブル名“CustomerTables”に関して、ｘｈ＝１となる。また、テーブル名を２文字ずつ区切った場合、文字列“st”が１つも存在しなければ、ｘｈ＝０であり、文字列“st”が２つ存在すれば、ｘｈ＝２である。他の説明変数に関しても同様である。テーブル意味モデル生成部４は、学習データに含まれているテーブル名毎に、説明変数ｘ１〜ｘｎの値を定める。説明変数ｘ１〜ｘｎの値が定められたベクトルｘをテーブル特徴と記す。
【０１３８】
また、テーブル意味モデルには、テーブル意味集合も含まれる。図２０では、テーブル意味集合の例として、｛Customer，Store，・・・｝ という集合を例示している。テーブル意味集合に属しているテーブルの意味の個数をｋ個とする。
【０１３９】
Ｗ＝（ｗ１，ｗ２，ｗ３，・・・，ｗｎ）Ｔは、テーブル意味集合に属しているテーブルの意味毎に定められる。ｊ番目のテーブルの意味に対応するＷを、Ｗｊと記す。テーブルの意味の個数はｋ個であるのでは、ベクトルＷは、ｋ個定められることになる。また、Ｗの要素の数は、ｘの要素の数と同数であり、ｎ個である。この点は、第１の実施形態と同様である。
【０１４０】
また、図２０に示すｆ（ｘ）は、テーブル名が与えられ、テーブル意味集合からテーブルの意味を１つ選択した場合に、選択したテーブルの意味が、そのテーブル名を有するテーブルの意味に該当する確度を意味している。
【０１４１】
テーブル意味モデル生成部４は、学習データに含まれているテーブル名毎に、テーブル特徴を定める。さらに、テーブル意味モデル生成部４は、各テーブル特徴と学習データに含まれている各テーブルの意味との対応関係に基づいて、テーブル意味集合および、テーブル意味集合に属するテーブルの意味毎のＷを定めることで、テーブル意味モデルを生成する。生成されたテーブル意味モデルにおいて、ｘの要素は変数で表される。一方、テーブルの意味毎に定められるＷの要素は、具体的な値である。
【０１４２】
テーブル意味モデル生成部４は、テーブル意味モデルを生成すると、そのテーブル意味モデルをテーブル意味モデル記憶部５に記憶させる。
【０１４３】
テーブル意味推定部６は、テーブル意味モデル記憶部５に記憶されているテーブル意味モデルに基づいて、データ入力部２に入力されたテーブルの意味を推定する。テーブル意味推定部６は、入力されたテーブルに付与されているテーブル名に基づいて、テーブル特徴を定める。そして、テーブル意味推定部６は、テーブル意味集合からテーブルの意味を１つずつ順に選択し、選択したテーブルの意味に対応するＷと、テーブル特徴とを用いて、確度ｆ（ｘ）を計算する。すなわち、テーブル特徴をｘｄａｔａとすると、テーブル意味推定部６は、ＷＴｘｄａｔａを計算することによって、確度ｆ（ｘ）を求める。テーブル意味推定部６は、確度が最も高いテーブルの意味を、入力されたテーブルの意味の推定結果として定める。
【０１４４】
なお、本実施形態では、テーブル意味モデルが図２０および図２１に例示するように表され、テーブル意味推定部６が、上記の演算によって、入力されたテーブルの意味を推定する場合を例にして説明する。ただし、テーブル意味モデルの態様は上記の例に限定されない。また、テーブル意味推定部６は、テーブル意味モデルの態様に応じた演算で、入力されたテーブルの意味を推定すればよい。
【０１４５】
表示制御部７は、第１の実施形態における表示制御部７と同様である。
【０１４６】
学習データ追加部８は、表示制御部７が表示したテーブルの意味（すなわち、推定されたテーブルの意味）が適切である旨が入力された場合、データ入力部２に入力されたテーブルに付与されているテーブル名と、推定されたテーブルの意味との組み合わせを学習データとして、既存の学習データに追加する。
【０１４７】
また、学習データ追加部８は、表示制御部７が表示したテーブルの意味（すなわち、推定されたテーブルの意味）が適切でない旨が入力された場合、データ入力部２に入力されたテーブルに付与されているテーブル名と、表示制御部７がユーザから受け付けたテーブルの意味との組み合わせを学習データとして、既存の学習データに追加する。
【０１４８】
学習データ追加部８によって学習データ記憶部３に学習データが追加された場合、テーブル意味モデル生成部４は、テーブル意味モデルの生成をやり直す。
【０１４９】
以下、本発明の第３の実施形態の処理経過について説明する。
【０１５０】
まず、テーブル意味モデルを生成する際の処理経過の例を説明する。テーブル意味推定システム１は、意味の推定対象のテーブルの入力を受け付ける前に、テーブル意味モデルを生成する。
【０１５１】
なお、学習データ記憶部３には、図１９に例示するようなテーブル名とテーブルの意味との組み合わせの集合が、学習データとして記憶されているものとする。
【０１５２】
テーブル意味モデル生成部４は、その学習データを、学習データ記憶部３から読み込む。
【０１５３】
次に、テーブル意味モデル生成部４は、その学習データに基づいて、テーブル意味モデル生成する。このとき、テーブル意味モデル生成部４は、学習データに含まれているテーブル名毎にテーブル特徴を定める。ここでは、図１９に示すテーブル名のうち“CustomerTables”を例にして、テーブル特徴を定める処理を説明する。テーブル意味モデル生成部４は、“CustomerTables”を２文字ずつ区切る。この結果、“Cu”，“st”，“om”，“er”，“Ta”，“bl”，“es”という文字列が１つずつ得られる。従って、テーブル意味モデル生成部４は、ｘの要素となっている説明変数のうち、“Cu”に対応する説明変数の値１を１に定める。テーブル意味モデル生成部４は、同様に、“st”，“om”，“er”，“Ta”，“bl”，“es”に対応する各説明変数の値も１に定める。テーブル意味モデル生成部４は、その他の説明変数の値を０に定める。この結果、ｘ＝（０，０，０，・・，１，・・・，０）Ｔというテーブル特徴が得られる。このテーブル特徴は、“１”という要素を７個含んでいる。
【０１５４】
テーブル意味モデル生成部４は、学習データに含まれている他の各テーブル名に関しても、同様にテーブル特徴を定める。なお、テーブル名の文字数が奇数である場合、例えば、最後の１文字は無視してよい。
【０１５５】
そして、テーブル意味モデル生成部４は、各テーブル特徴と学習データに含まれている各テーブルの意味との対応関係に基づいて、テーブル意味集合を定めるとともに、ｆ（ｘ）＝ＷＴｘという式におけるベクトルＷを、テーブル意味集合に属するテーブルの意味毎に定める。この結果、テーブル意味モデルが定まる。
【０１５６】
テーブル意味モデル生成部４は、生成したテーブル意味モデルをテーブル意味モデル記憶部５に記憶させる。
【０１５７】
次に、テーブル意味推定システム１に対して、意味の推定対象となるテーブルが入力された場合の処理経過を説明する。図２２および図２３は、意味の推定対象となるテーブルが入力された場合の処理経過の例を示すフローチャートである。
【０１５８】
まず、データ入力部２にテーブルが入力される（ステップＳ３１）。ステップＳ３１では、テーブル名が付与されているテーブルが入力される。すなわち、ステップＳ３１で、テーブル名は必ず入力される。ここでは、“CustomersTables”というテーブル名が付与されたテーブルが入力されたとする。
【０１５９】
次に、テーブル意味推定部６は、ステップＳ３１で入力されたテーブルの意味を、テーブル意味モデルに基づいて推定する（ステップＳ３２）。
【０１６０】
ステップＳ３２において、テーブル意味推定部６は、テーブル意味モデル記憶部５からテーブル意味モデルを読み込む。
【０１６１】
さらに、テーブル意味推定部６は、入力されたテーブルに付与されているテーブル名に基づいて、テーブル特徴を定める。このとき、テーブル意味推定部６は、そのテーブル名を２文字ずつ区切る。本例では、テーブル意味推定部６は、“CustomersTables”を２文字ずつ区切る。テーブル名の文字数が奇数である場合、例えば、最後の１文字は無視してよい。この結果、“st”という文字列が２つ得られ、“Cu”，“om”，“er”，“ab”，“le”という文字列が１つずつ得られる。なお、前述のように、本実施形態では、大文字と小文字とを区別しない場合を例に説明する。従って、テーブル意味推定部６は、ｘの要素となっている説明変数のうち、“st”に対応する説明変数ｘｈ（図２１を参照）の値を２に定める。また、テーブル意味推定部６は、“Cu”，“om”，“er”，“ab”，“le”に対応する各説明変数の値をそれぞれ１に定める。テーブル意味推定部６は、その他の説明変数の値を０に定める。この結果、ｘ＝（０，１，０，・・，１，・・・，２，・・・，０）Ｔというテーブル特徴が得られる。このテーブル特徴は、“１”という要素を５個含み、“２”という要素を１つ含んでいる。このテーブル特徴をｘｄａｔａとする。
【０１６２】
そして、テーブル意味推定部６は、テーブル意味集合からテーブルの意味を１つずつ順に選択し、選択したテーブルの意味に対応するＷと、テーブル特徴とを用いて、確度ｆ（ｘ）を計算する。ｊ番目のテーブルの意味に対応するＷを、Ｗｊと記す。テーブル意味推定部６は、図２０に示す１番目のテーブルの意味“Customer”を選択した場合、“Customer”に対応するＷ１と、上記のテーブル特徴ｘｄａｔａとを用いて、“Customer”が、入力されたテーブルの意味である確度を、ｆ（ｘ）＝Ｗ１Ｔｘｄａｔａの計算によって求める。テーブル意味推定部６は、“Store” 等の他のテーブルの意味に関してもそれぞれ、同様の演算を行い、選択したテーブルの意味が、入力されたテーブルの意味に該当する確度を求める。
【０１６３】
そして、テーブル意味推定部６は、確度が最も高いテーブルの意味を、入力されたテーブルの意味の推定結果として定める。
【０１６４】
ステップＳ３２の処理が実行された後、表示制御部７は、ステップＳ３１で入力されたテーブルと、ステップＳ３２で推定されたテーブルの意味をディスプレイ装置上に表示し、そのテーブルの意味が適切か否かの入力をユーザに促す（ステップＳ３３）。ステップＳ３３は、ステップＳ１３（図７参照）と同様であり、ステップＳ３３で表示される画面の態様は、例えば、図４に示す画面の態様と同様である。
【０１６５】
ステップＳ３３で表示されたテーブルの意味が、ステップＳ３３表示されているテーブル（すなわち、入力されたテーブル）の意味として適切であるとユーザが判断した場合、ユーザは、その判断に応じて、ＧＵＩを操作する（例えば、図４に示すボタン５１をクリックする）。すなわち、表示制御部７は、表示したテーブルの意味が適切である旨の入力を受け付ける（ステップＳ３４のＹｅｓ）。
【０１６６】
すると、学習データ追加部８は、ステップＳ３１で入力されたテーブルのテーブル名と、そのテーブルの意味（推定されたテーブルの意味）との組み合わせを、既存の学習データに追加する（ステップＳ３５）。すなわち、学習データ追加部８は、テーブル名と、推定されたテーブルの意味との組み合わせを、学習データ記憶部３に記憶されている学習データに追加する。ステップＳ３５の処理が実行された後、ステップＳ３８に移行する。
【０１６７】
また、ステップＳ３３で表示されたテーブルの意味が、ステップＳ３３表示されているテーブル（すなわち、入力されたテーブル）の意味として適切でないとユーザが判断した場合、ユーザは、その判断に応じて、ＧＵＩを操作する（例えば、図４に示すボタン５２をクリックする）。すなわち、表示制御部７は、表示したテーブルの意味が適切でない旨の入力を受け付ける（ステップＳ３４のＮｏ）。
【０１６８】
すると、表示制御部７は、ステップＳ３３で表示したテーブルの意味の入力をユーザから受け付ける（ステップＳ３６）。ステップＳ３６は、ステップＳ１６（図８参照）と同様であり、ステップＳ３６で表示される画面の態様は、例えば、図５に示す画面の態様と同様である。表示制御部７は、ユーザから、例えば、入力欄５３（図５参照）を介して、テーブルの意味の入力を受け付ける。
【０１６９】
ステップＳ３６の次に、学習データ追加部８は、学習データ追加部８は、ステップＳ３１で入力されたテーブルのテーブル名と、ステップＳ３６で入力されたテーブルの意味との組み合わせを、既存の学習データに追加する（ステップＳ３７）。すなわち、学習データ追加部８は、テーブル名と、ユーザに入力されたテーブルの意味との組み合わせを、学習データ記憶部３に記憶されている学習データに追加する。ステップＳ３７の処理が実行された後、ステップＳ３８に移行する。
【０１７０】
ステップＳ３５またはステップＳ３７からステップＳ３８に移行した場合、テーブル意味モデル生成部４は、その時点で学習データ記憶部３に記憶されている学習データに基づいて、テーブル意味モデルを生成する処理をやり直す（ステップＳ３８）。換言すれば、テーブル意味モデル生成部４は、既存の学習データおよび追加された学習データを用いて、テーブル意味モデルを学習し直す。
【０１７１】
本実施形態によれば、テーブル意味モデル生成部４が、テーブル名からテーブルの意味を推定するためのテーブル意味モデルを生成する。そして、テーブル意味推定部６は、入力されたテーブルに付与されているテーブル名とテーブル意味モデルに基づいて、そのテーブルの意味を推定する。従って、本実施形態によれば、テーブルの意味を推定することができる。よって、本実施形態においても、第１の実施形態と同様の効果が得られる。
【０１７２】
また、テーブル意味推定部６が推定したテーブルの意味が適切か否かをユーザが判断する。そして、そのテーブルの意味が適切であると判断された場合、学習データ追加部８は、ステップＳ３１で入力されたテーブル名と、テーブル意味推定部６が推定したテーブルの意味との組み合わせを学習データに追加する。また、推定したテーブルの意味が適切でないと判断された場合、表示制御部７は、表示制御部７は、ステップＳ３１で入力されたテーブルの意味として適切な意味をユーザから入力され、学習データ追加部８は、ステップＳ３１で入力されたテーブル名と、ユーザによって入力されたテーブルの意味との組み合わせを学習データに追加する。従って、テーブル意味モデルの精度を向上させることができる。特に、テーブル意味推定部６が推定したテーブルの意味が適切でないと判断された場合、ユーザが適切と判断したテーブルの意味が学習データに追加されるので、テーブル意味モデルの精度を向上させる効果が大きい。
【０１７３】
第１の実施形態の変形例と同様に、テーブル意味モデルの生成をテーブル意味推定システム１とは異なる学習システム（図示略）が実行し、テーブル意味推定システム１がテーブル意味モデルの生成を行わない構成であってもよい。この場合、テーブル意味推定システム１は、図１０に示す場合と同様に、例えば、データ入力部２と、テーブル意味モデル記憶部５と、テーブル意味推定部６と、表示制御部７とを備える。テーブル意味モデル記憶部５には、学習システムが生成したテーブル意味モデルが記憶される。表示制御部７は、ステップＳ３２の処理が実行された後、ステップＳ３１で入力されたテーブル、および、ステップＳ３２で推定されたテーブルの意味を表示すればよい。そして、その時点で処理を終了してもよい。
【０１７４】
図２４は、本発明の各実施形態に係るコンピュータの構成例を示す概略ブロック図である。コンピュータ１０００は、ＣＰＵ１００１と、主記憶装置１００２と、補助記憶装置１００３と、インタフェース１００４と、ディスプレイ装置１００５と、入力デバイス１００６とを備える。図２４に示す例では、入力デバイス１００６がデータ入力部２に相当する。
【０１７５】
本発明の各実施形態のテーブル意味推定システム１は、コンピュータ１０００に実装される。テーブル意味推定システム１の動作は、プログラム（テーブル意味推定プログラム）の形式で補助記憶装置１００３に記憶されている。ＣＰＵ１００１は、プログラムを補助記憶装置１００３から読み出して主記憶装置１００２に展開し、そのプログラムに従って上記の処理を実行する。
【０１７６】
補助記憶装置１００３は、一時的でない有形の媒体の例である。一時的でない有形の媒体の他の例として、インタフェース１００４を介して接続される磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ１０００に配信される場合、配信を受けたコンピュータ１０００がそのプログラムを主記憶装置１００２に展開し、上記の処理を実行してもよい。
【０１７７】
また、プログラムは、前述の処理の一部を実現するためのものであってもよい。さらに、プログラムは、補助記憶装置１００３に既に記憶されている他のプログラムとの組み合わせで前述の処理を実現する差分プログラムであってもよい。
【０１７８】
また、各装置の各構成要素の一部または全部は、汎用または専用の回路（circuitry ）、プロセッサ等やこれらの組み合わせによって実現される。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。各装置の各構成要素の一部または全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。
【０１７９】
各装置の各構成要素の一部または全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【０１８０】
次に、本発明の概要について説明する。図２５は、本発明の概要を示すブロック図である。本発明のテーブル意味推定システムは、学習手段７１と、推定手段７２とを備える。
【０１８１】
学習手段７１（例えば、テーブル意味モデル生成部４）は、テーブルのカラムの意味とそのテーブルの意味とを含む学習データに基づいて、テーブルのカラムの意味とテーブルの意味との間の規則性を示すモデル（例えば、テーブル意味モデル）を学習する。
【０１８２】
推定手段７２（例えば、テーブル意味推定部６）は、入力されるテーブルのカラムの意味とモデルとに基づいて、そのテーブルの意味を推定する。
【０１８３】
そのような構成によりテーブルの意味を推定することができる。
【０１８４】
また、入力されるテーブルのカラムの属性値から、カラムの意味を推定するカラム意味推定手段（例えば、カラム意味推定部９）を備え、推定手段７２が、推定されたカラムの意味と、モデルとに基づいて、テーブルの意味を推定する構成であってもよい。
【０１８５】
また、推定されたテーブルの意味を表示し、当該テーブルの意味が適切か否かに関する入力をユーザから受け付ける表示制御手段（例えば、表示制御部７）と、ユーザからの入力に応じて、学習データを追加する学習データ追加手段（例えば、学習データ追加部８）とを備える構成であってもよい。
【０１８６】
また、表示制御手段が、表示したテーブルの意味が適切でない旨の入力をユーザから受け付けた場合、テーブルの意味の入力をユーザから受け付け、学習データ追加手段が、テーブルの意味が適切である旨が入力された場合、テーブルと、表示制御手段が表示したテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、テーブルの意味が適切でない旨が入力された場合、テーブルと、表示制御手段がユーザから受け付けたテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、学習手段が、学習データが追加された場合に、既存の学習データおよび追加された学習データを用いて、モデルを学習し直す構成であってもよい。
【０１８７】
また、図２５に示す構成において、学習手段７１および推定手段７２が以下のように動作してもよい。
【０１８８】
学習手段７１（例えば、テーブル意味モデル生成部４）は、テーブルのテーブル名とそのテーブルの意味とを含む学習データに基づいて、テーブル名とテーブルの意味との間の規則性を示すモデル（例えば、テーブル意味モデル）を学習する。
【０１８９】
推定手段７２（例えば、テーブル意味推定部６）は、入力されるテーブルのテーブル名とモデルとに基づいて、そのテーブルの意味を推定する。
【０１９０】
この場合にも、テーブルの意味を推定することができる。
【０１９１】
また、この場合において、推定されたテーブルの意味を表示し、当該テーブルの意味が適切か否かに関する入力をユーザから受け付ける表示制御手段（例えば、表示制御部７）と、ユーザからの入力に応じて、学習データを追加する学習データ追加手段（例えば、学習データ追加部８）とを備える構成であってもよい。
【０１９２】
また、  表示制御手段が、表示したテーブルの意味が適切でない旨の入力をユーザから受け付けた場合、テーブルの意味の入力をユーザから受け付け、学習データ追加手段が、テーブルの意味が適切である旨が入力された場合、テーブルのテーブル名と、表示制御手段が表示したテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、テーブルの意味が適切でない旨が入力された場合、テーブルのテーブル名と、表示制御手段がユーザから受け付けたテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、学習手段が、学習データが追加された場合に、既存の学習データおよび追加された学習データを用いて、モデルを学習し直す構成であってもよい。
【０１９３】
図２６は、本発明の概要の他の例を示すブロック図である。図２６に示すテーブル意味推定システムは、入力受付手段７３と、推定手段７２とを備える。
【０１９４】
入力受付手段７３（例えば、データ入力部２）は、テーブルの入力を受け付ける。
【０１９５】
推定手段７２（例えば、テーブル意味推定部６）は、テーブルのカラムの意味と、予め学習されているモデルとに基づいて、テーブルの意味を推定する。
【０１９６】
モデル（例えば、テーブル意味モデル）は、テーブルのカラムの意味とそのテーブルの意味とを含む学習データに基づいて学習された、テーブルのカラムの意味とテーブルの意味との間の規則性を示すモデルである。
【０１９７】
そのような構成によりテーブルの意味を推定することができる。
【０１９８】
また、入力されるテーブルのカラムの属性値から、カラムの意味を推定するカラム意味推定手段（例えば、カラム意味推定部９）を備え、推定手段７２が、推定されたカラムの意味と、モデルとに基づいて、テーブルの意味を推定する構成であってもよい。
【０１９９】
また、図２６に示す構成において、入力受付手段７３および推定手段７２が以下のように動作してもよい。
【０２００】
入力受付手段７３（例えば、データ入力部２）は、テーブルの入力を受け付ける。
【０２０１】
推定手段７２（例えば、テーブル意味推定部６）は、テーブルのテーブル名と、予め学習されているモデルとに基づいて、テーブルの意味を推定する。
【０２０２】
モデル（例えば、テーブル意味モデル）は、テーブルのテーブル名とそのテーブルの意味とを含む学習データに基づいて学習された、テーブル名とテーブルの意味との間の規則性を示すモデルである。
【０２０３】
この場合にも、テーブルの意味を推定することができる。
【０２０４】
なお、上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下に限られない。
【０２０５】
（付記１）テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルを学習する学習手段と、
入力されるテーブルのカラムの意味と前記モデルとに基づいて、前記テーブルの意味を推定する推定手段とを備える
ことを特徴とするテーブル意味推定システム。
【０２０６】
（付記２）入力されるテーブルのカラムの属性値から、前記カラムの意味を推定するカラム意味推定手段を備え、
推定手段は、推定されたカラムの意味と、モデルとに基づいて、前記テーブルの意味を推定する
付記１に記載のテーブル意味推定システム。
【０２０７】
（付記３）推定されたテーブルの意味を表示し、当該テーブルの意味が適切か否かに関する入力をユーザから受け付ける表示制御手段と、
前記ユーザからの入力に応じて、学習データを追加する学習データ追加手段とを備える
付記１または付記２に記載のテーブル意味推定システム。
【０２０８】
（付記４）表示制御手段は、
表示したテーブルの意味が適切でない旨の入力をユーザから受け付けた場合、前記テーブルの意味の入力を前記ユーザから受け付け、
学習データ追加手段は、
前記テーブルの意味が適切である旨が入力された場合、前記テーブルと、前記表示制御手段が表示したテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、
前記テーブルの意味が適切でない旨が入力された場合、前記テーブルと、前記表示制御手段が前記ユーザから受け付けたテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、
学習手段は、
学習データが追加された場合に、既存の学習データおよび追加された学習データを用いて、モデルを学習し直す
付記３に記載のテーブル意味推定システム。
【０２０９】
（付記５）テーブルの入力を受け付ける入力受付手段と、
前記テーブルのカラムの意味と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定する推定手段とを備え、
前記モデルは、テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて学習された、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定システム。
【０２１０】
（付記６）入力されるテーブルのカラムの属性値から、前記カラムの意味を推定するカラム意味推定手段を備え、
推定手段は、推定されたカラムの意味と、モデルとに基づいて、前記テーブルの意味を推定する
付記５に記載のテーブル意味推定システム。
【０２１１】
（付記７）テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて、テーブル名とテーブルの意味との間の規則性を示すモデルを学習する学習手段と、
入力されるテーブルのテーブル名と前記モデルとに基づいて、前記テーブルの意味を推定する推定手段とを備える
ことを特徴とするテーブル意味推定システム。
【０２１２】
（付記８）推定されたテーブルの意味を表示し、当該テーブルの意味が適切か否かに関する入力をユーザから受け付ける表示制御手段と、
前記ユーザからの入力に応じて、学習データを追加する学習データ追加手段とを備える
付記７に記載のテーブル意味推定システム。
【０２１３】
（付記９）表示制御手段は、
表示したテーブルの意味が適切でない旨の入力をユーザから受け付けた場合、前記テーブルの意味の入力を前記ユーザから受け付け、
学習データ追加手段は、
前記テーブルの意味が適切である旨が入力された場合、前記テーブルのテーブル名と、前記表示制御手段が表示したテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、
前記テーブルの意味が適切でない旨が入力された場合、前記テーブルのテーブル名と、前記表示制御手段が前記ユーザから受け付けたテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、
学習手段は、
学習データが追加された場合に、既存の学習データおよび追加された学習データを用いて、モデルを学習し直す
付記８に記載のテーブル意味推定システム。
【０２１４】
（付記１０）テーブルの入力を受け付ける入力受付手段と、
前記テーブルのテーブル名と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定する推定手段とを備え、
前記モデルは、テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて学習された、テーブル名とテーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定システム。
【０２１５】
（付記１１）テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルを学習し、
入力されるテーブルのカラムの意味と前記モデルとに基づいて、前記テーブルの意味を推定する
ことを特徴とするテーブル意味推定方法。
【０２１６】
（付記１２）テーブルの入力を受け付け、
前記テーブルのカラムの意味と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定し、
前記モデルは、テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて学習された、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定方法。
【０２１７】
（付記１３）テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて、テーブル名とテーブルの意味との間の規則性を示すモデルを学習し、
入力されるテーブルのテーブル名と前記モデルとに基づいて、前記テーブルの意味を推定する
ことを特徴とするテーブル意味推定方法。
【０２１８】
（付記１４）テーブルの入力を受け付け、
前記テーブルのテーブル名と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定し、
前記モデルは、テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて学習された、テーブル名とテーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定方法。
【０２１９】
（付記１５）コンピュータに、
テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルを学習する学習処理、および、
入力されるテーブルのカラムの意味と前記モデルとに基づいて、前記テーブルの意味を推定する推定処理
を実行させるためのテーブル意味推定プログラム。
【０２２０】
（付記１６）コンピュータに、
テーブルの入力を受け付ける入力受付処理、および、
前記テーブルのカラムの意味と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定する推定処理を実行させ、
前記モデルは、テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて学習された、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定プログラム。
【０２２１】
（付記１７）コンピュータに、
テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて、テーブル名とテーブルの意味との間の規則性を示すモデルを学習する学習処理、および、
入力されるテーブルのテーブル名と前記モデルとに基づいて、前記テーブルの意味を推定する推定処理
を実行させるためのテーブル意味推定プログラム。
【０２２２】
（付記１８）コンピュータに、
テーブルの入力を受け付ける入力受付処理、および、
前記テーブルのテーブル名と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定する推定処理を実行させ、
前記モデルは、テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて学習された、テーブル名とテーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定プログラム。
【０２２３】
以上、実施形態および実施例を参照して本願発明を説明したが、本願発明は上記実施形態および実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０２２４】
この出願は、２０１６年８月５日に出願された日本特許出願２０１６−１５４３８４を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０２２５】
本発明は、テーブルの意味を推定するテーブル意味推定システムに好適に適用される。
【符号の説明】
【０２２６】
１  テーブル意味推定システム
２  データ入力部
３  学習データ記憶部
４  テーブル意味モデル生成部
５  テーブル意味モデル記憶部
６  テーブル意味推定部
７  表示制御部
８  学習データ追加部
【図１】
2018025706.tif 000003
【図２】
2018025706.tif 000004
【図３】
2018025706.tif 000005
【図４】
2018025706.tif 000006
【図５】
2018025706.tif 000007
【図６】
2018025706.tif 000008
【図７】
2018025706.tif 000009
【図８】
2018025706.tif 000010
【図９】
2018025706.tif 000011
【図１０】
2018025706.tif 000012
【図１１】
2018025706.tif 000013
【図１２】
2018025706.tif 000014
【図１３】
2018025706.tif 000015
【図１４】
2018025706.tif 000016
【図１５】
2018025706.tif 000017
【図１６】
2018025706.tif 000018
【図１７】
2018025706.tif 000019
【図１８】
2018025706.tif 000020
【図１９】
2018025706.tif 000021
【図２０】
2018025706.tif 000022
【図２１】
2018025706.tif 000023
【図２２】
2018025706.tif 000024
【図２３】
2018025706.tif 000025
【図２４】
2018025706.tif 000026
【図２５】
2018025706.tif 000027
【図２６】
2018025706.tif 000028
【手続補正書】
【提出日】平成30年2月26日(2018.2.26)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルを学習する学習手段と、
入力されるテーブルのカラムの意味と前記モデルとに基づいて、前記テーブルの意味を推定する推定手段とを備える
ことを特徴とするテーブル意味推定システム。
【請求項２】
入力されるテーブルのカラムの属性値から、前記カラムの意味を推定するカラム意味推定手段を備え、
推定手段は、推定されたカラムの意味と、モデルとに基づいて、前記テーブルの意味を推定する
請求項１に記載のテーブル意味推定システム。
【請求項３】
推定されたテーブルの意味を表示し、当該テーブルの意味が適切か否かに関する入力をユーザから受け付ける表示制御手段と、
前記ユーザからの入力に応じて、学習データを追加する学習データ追加手段とを備える
請求項１または請求項２に記載のテーブル意味推定システム。
【請求項４】
表示制御手段は、
表示したテーブルの意味が適切でない旨の入力をユーザから受け付けた場合、前記テーブルの意味の入力を前記ユーザから受け付け、
学習データ追加手段は、
前記テーブルの意味が適切である旨が入力された場合、前記テーブルと、前記表示制御手段が表示したテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、
前記テーブルの意味が適切でない旨が入力された場合、前記テーブルと、前記表示制御手段が前記ユーザから受け付けたテーブルの意味との組み合わせを学習データとして、既存の学習データに追加し、
学習手段は、
学習データが追加された場合に、既存の学習データおよび追加された学習データを用いて、モデルを学習し直す
請求項３に記載のテーブル意味推定システム。
【請求項５】
テーブルの入力を受け付ける入力受付手段と、
前記テーブルのカラムの意味と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定する推定手段とを備え、
前記モデルは、テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて学習された、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定システム。
【請求項６】
テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて、テーブル名とテーブルの意味との間の規則性を示すモデルを学習する学習手段と、
入力されるテーブルのテーブル名と前記モデルとに基づいて、前記テーブルの意味を推定する推定手段とを備える
ことを特徴とするテーブル意味推定システム。
【請求項７】
テーブルの入力を受け付ける入力受付手段と、
前記テーブルのテーブル名と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定する推定手段とを備え、
前記モデルは、テーブルのテーブル名と前記テーブルの意味とを含む学習データに基づいて学習された、テーブル名とテーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定システム。
【請求項８】
テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルを学習し、
入力されるテーブルのカラムの意味と前記モデルとに基づいて、前記テーブルの意味を推定する
ことを特徴とするテーブル意味推定方法。
【請求項９】
テーブルの入力を受け付け、
前記テーブルのカラムの意味と、予め学習されているモデルとに基づいて、前記テーブルの意味を推定し、
前記モデルは、テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて学習された、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルである
ことを特徴とするテーブル意味推定方法。
【請求項１０】
コンピュータに、
テーブルのカラムの意味と前記テーブルの意味とを含む学習データに基づいて、前記テーブルのカラムの意味と前記テーブルの意味との間の規則性を示すモデルを学習する学習処理、および、
入力されるテーブルのカラムの意味と前記モデルとに基づいて、前記テーブルの意味を推定する推定処理
を実行させるためのテーブル意味推定プログラム。
【国際調査報告】
2018025706.tif 000029
2018025706.tif 000030