(57)【要約】【課題】複数のインスタンスデータの群をスキーマの関係性に基づいて、精度良く統合することができるプログラム、装置及び方法を提供する。【解決手段】第１のインスタンスデータ及び第２のインスタンスデータの全てについて、データ項目毎に、当該データ項目の内容をキーとして検索エンジンによって第１の検索件数を取得する第１の検索件数取得手段と、第１のインスタンスデータの群における第１のデータ項目の第１の検索件数と、第２のインスタンスデータの群における第２のデータ項目の第１の検索件数とが所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合するデータ項目統合手段としてコンピュータを機能させる。【選択図】図２
2019121173.tif 000002
【特許請求の範囲】
【請求項１】
第１のインスタンスデータの群及び第２のインスタンスデータの群を、データ項目に基づくスキーマの関係性に基づいて統合するようにコンピュータを機能させるプログラムであって、
第１のインスタンスデータ及び第２のインスタンスデータの全てについて、データ項目毎に、当該データ項目の内容をキーとして検索エンジンによって第１の検索件数を取得する第１の検索件数取得手段と、
第１のインスタンスデータの群における第１のデータ項目の第１の検索件数と、第２のインスタンスデータの群における第２のデータ項目の第１の検索件数とが所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合するデータ項目統合手段と
してコンピュータを機能させることを特徴とするプログラム。
【請求項２】
第１の検索件数取得手段における第１の検索件数は、第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、平均化されたものである
ようにコンピュータを機能させることを特徴とする請求項１に記載のプログラム。
【請求項３】
前記データ項目統合手段は、前記所定条件の判定のために機械学習エンジンを適用しており、第１の検索件数を特徴量として、過去に、第１のインスタンスデータの群と第２のインスタンスデータの群とを統合したデータ項目を、教師データとして学習させておく
ようにコンピュータを機能させることを特徴とする請求項１又は２に記載のプログラム。
【請求項４】
第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、第１の検索件数が最多となるデータ項目に対する、当該データ項目の第１の検索件数の第１の検索割合を算出する第１の検索割合算出手段を更に有し、
前記データ項目統合手段は、第１のインスタンスデータの群における第１のデータ項目の第１の検索割合と、第２のインスタンスデータの群における第２のデータ項目の第１の検索割合とが第１の所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する
ようにコンピュータを機能させることを特徴とする請求項１から３のいずれか１項に記載のプログラム。
【請求項５】
第１の検索割合算出手段における第１の検索割合は、第１の検索件数が最多となるデータ項目の第１の検索割合を１とし、最少となるデータ項目の第１の検索割合を０として、全てのデータ項目に対して正規化されたものである
ようにコンピュータを機能させることを特徴とする請求項４に記載のプログラム。
【請求項６】
前記データ項目統合手段における第１の所定条件とは、第１のインスタンスデータの群における第１のデータ項目の第１の検索割合と、第２のインスタンスデータの群における第２のデータ項目の第１の検索割合との差分又は比率が、第１の所定閾値以下である場合である
ようにコンピュータを機能させることを特徴とする請求項４又は５に記載のプログラム。
【請求項７】
第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、当該データ項目と、第１の検索件数が最多となるデータ項目とをアンド検索キーとして検索エンジンによって第２の検索件数を取得する第２の検索件数取得手段と、
第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、第２の検索件数が最多となるデータ項目に対する、当該データ項目の第２の検索件数の第２の検索割合を算出する第２の検索割合算出手段と
して更に機能させ、
前記データ項目統合手段は、第１のインスタンスデータの群における第１のデータ項目の第２の検索割合と、第２のインスタンスデータの群における第２のデータ項目の第２の検索割合とが第２の所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する
ようにコンピュータを機能させることを特徴とする請求項４から６のいずれか１項に記載のプログラム。
【請求項８】
前記データ項目統合手段は、第１の検索割合に対する第１の所定条件の結果と、第２の検索割合に対する第２の所定条件の結果とに基づいて、第１のインスタンスデータの群の第１のデータ項目と第２のインスタンスデータの群の第２のデータ項目とを統合するか否かを判定する
ようにコンピュータを機能させることを特徴とする請求項７に記載のプログラム。
【請求項９】
前記データ項目として、ＵＲＬ(Uniform Resource Locator)が含まれおり、
第１のインスタンスデータ及び第２のインスタンスデータの全てについて、前記ＵＲＬに基づくページ情報を取得するページ情報取得手段と、
第１のインスタンスデータ及び第２のインスタンスデータの全てについて、データ項目毎に、当該データ項目が当該ページ情報に記述されている掲載回数を計数する掲載回数計数手段と、
第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、掲載回数が最多となるデータ項目に対する、当該データ項目の掲載回数の掲載割合を算出する掲載割合算出手段と
して機能させ、
前記データ項目統合手段は、第１のインスタンスデータの群における第１のデータ項目の掲載割合と、第２のインスタンスデータの群における第２のデータ項目の掲載割合とが第３の所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する
ようにコンピュータを機能させることを特徴とする請求項１から８のいずれか１項に記載のプログラム。
【請求項１０】
前記データ項目統合手段は、
第１の検索割合に対する第１の所定条件の結果と、掲載割合に対する第３の所定条件の結果とに基づいて、又は、
第１の検索割合に対する第１の所定条件の結果と、第２の検索割合に対する第２の所定条件の結果と、掲載割合に対する第３の所定条件の結果とに基づいて、
第１のインスタンスデータの群の第１のデータ項目と第２のインスタンスデータの群の第２のデータ項目とを統合するか否かを判定する
ようにコンピュータを機能させることを特徴とする請求項９に記載のプログラム。
【請求項１１】
前記掲載回数計数手段における前記掲載回数は、当該データ項目が、当該ページ情報のタイトルタグに記述されたものである
ようにコンピュータを機能させることを特徴とする請求項９又は８に記載のプログラム。
【請求項１２】
第１のインスタンスデータの群及び第２のインスタンスデータの群を、データ項目に基づくスキーマの関係性に基づいて統合するインスタンスデータ統合装置であって、
第１のインスタンスデータ及び第２のインスタンスデータの全てについて、データ項目毎に、当該データ項目の内容をキーとして検索エンジンによって第１の検索件数を取得する第１の検索件数取得手段と、
第１のインスタンスデータの群における第１のデータ項目の第１の検索件数と、第２のインスタンスデータの群における第２のデータ項目の第１の検索件数とが所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合するデータ項目統合手段と
を有することを特徴とする装置。
【請求項１３】
第１のインスタンスデータの群及び第２のインスタンスデータの群を、データ項目に基づくスキーマの関係性に基づいて統合する装置のインスタンスデータ項目統合方法であって、
第１のインスタンスデータ及び第２のインスタンスデータの全てについて、データ項目毎に、当該データ項目の内容をキーとして検索エンジンによって第１の検索件数を取得する第１のステップと、
第１のインスタンスデータの群における第１のデータ項目の第１の検索件数と、第２のインスタンスデータの群における第２のデータ項目の第１の検索件数とが所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する第２のステップと
を実行することを特徴とする装置のインスタンスデータ項目統合方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のインスタンスデータの群を統合する技術に関する。
【背景技術】
【０００２】
従来、複数のインスタンス（実体）データの群を統合したいとする需要がある。これによって、分散された個々のインスタンスデータでは提供できない価値を生み出すことが期待される。
近年普及が進みつつあるオープンデータとして、各市町村が公開しているデータの群（保育園情報や公共施設情報、人口統計情報など）がある。これらのインスタンスデータを統合して分析することによって、例えば「家探し支援サービス」として、住居をＷｅｂ検索する際に、街同士の比較結果を合わせて表示することもできる。
他の例として、企業に関するインスタンスデータとしては、顧客情報や商品情報、購入情報などがある。これらのインスタンスデータを統合して分析することで、顧客の商品購入の傾向の把握や、類似した他の商品のレコメンドなどに活用できる。
【０００３】
図１は、２つのインスタンスデータの群を統合する例を表す説明図である。
【０００４】
図１によれば、インスタンスデータの群は、例えば異なる自治体が公開する保育園のオープンデータである。第１のインスタンスデータの群は、Ａ市の保育園情報であり、第２のインスタンスデータの群は、Ｂ市の保育園情報である。
インスタンスデータの群には、複数のデータ項目が任意に対応付けられており、各データ項目に対応した内容がまとめられている。
一方で、インスタンスデータの異なる群同士では、そのデータ項目の名称が異なる場合が多い。例えば、第１のインスタンスデータの群の「施設名称」と、第２のインスタンスデータの群の「施設名」とは、その用語が異なっている。但し、同じ内容を表すデータ項目であるために、同じ列としてまとめて、インスタンスデータの群同士を統合することが好ましい。
【０００５】
インスタンスデータの群を統合する際、スキーマの関係性に基づいて、データ項目を統合する必要がある。スキーマとは、データ項目における名称やデータ型などのデータ構造を表す。通常、一方のインスタンスデータの群が作成される際に、他の群と統合されることを前提として作成されていない場合が多い。
このように、インスタンスデータの群同士が、統一的なフォーマットで構成されていない場合、データ項目を統合することが難しいだけでなく、インスタンスデータの大規模な共有化が進みにくいという問題もある。
【０００６】
スキーマの関係性に基づく基本的情報としては、データ項目の類似度がある。類似度は、データ項目の文字列を比較して算出されたものであってもよい。データ項目の文字列が同一の場合や、同一の部分文字列を含む場合、高い類似度で算出される。しかしながら、データ項目「名称」という同一の部分文字列があったとしても、施設の名称であるのか、市町村の名称であるのかなど、データ項目の名称だけで判定することが難しい場合も多い。
【０００７】
従来、データ項目の名称以外の情報を用いて、スキーマの関係性に基づいてインスタンスデータの群を統合する技術がある。
例えば、各データ項目におけるデータ値の統計量などを考慮した評価関数を用いて、データ項目の類似度を判定する技術がある（例えば特許文献１参照）。図１の場合、第１のインスタンスデータの群におけるデータ項目「施設緯度」のデータ値の平均は35.8023025であり、第２のインスタンスデータの群におけるデータ項目「緯度」のデータ値の平均は35.71665であるとする。この場合、その差は0.2%程度と小さいために、両データ項目の類似度は高いと判定し、それらデータ項目を統合することができる。
【０００８】
また、データ項目名を構成する語彙の概念的弁別関係と時間的順序関係とを事前設定しておき、それを用いてデータ項目の関係性に基づく候補を絞り込む技術もある（例えば特許文献２参照）。
概念的弁別関係の例としては、データ項目「番号」「日付」があった場合、両者は弁別性のある概念であるため、異なるデータ項目と判定する。
時間的順序関係の例としては、データ項目「出荷」「着荷」があった場合、「出荷」の方が時間的に早いことを考慮して、異なるデータ項目と判定する。
【０００９】
更に、スキーマに関する設計書情報を用いて、データ項目を統合する技術もある（例えば特許文献３参照）。設計書としては、wordやpdfなどのドキュメントファイルを想定しており、設計書には、データ項目の名称やデータ型の定義に加えて、補足説明情報（例えばデータ項目「氏名」の姓と名の間に全角スペースを入れる、など）が含まれている。これらの情報を設計書から読み取り、スキーマの関係性に基づいてデータ項目を統合する。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００６―９９２３６号公報
【特許文献２】特開２００７−１７９１４６号公報
【特許文献３】ＷＯ２０１３１２８６１１Ａ１
【発明の概要】
【発明が解決しようとする課題】
【００１１】
前述したように、従来技術によれば、インスタンスデータの群を統合する際に、スキーマの関係性として、データ項目について、名称や、データ値、語彙情報、設計書情報などを用いている。
しかしながら、これらデータ項目の情報自体を用いて判定しようとすると、インスタンスデータの群の統合の精度を高めることが難しい。即ち、データ項目は、インスタンスデータの作成者の恣意的なものであって、結局、データ項目同士の統合は、人手によって判定する必要があった。
【００１２】
そこで、本発明は、複数のインスタンスデータの群をスキーマの関係性に基づいて、精度良く統合することができるプログラム、装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明によれば、第１のインスタンスデータの群及び第２のインスタンスデータの群を、データ項目に基づくスキーマの関係性に基づいて統合するようにコンピュータを機能させるプログラムであって、
第１のインスタンスデータ及び第２のインスタンスデータの全てについて、データ項目毎に、当該データ項目の内容をキーとして検索エンジンによって第１の検索件数を取得する第１の検索件数取得手段と、
第１のインスタンスデータの群における第１のデータ項目の第１の検索件数と、第２のインスタンスデータの群における第２のデータ項目の第１の検索件数とが所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合するデータ項目統合手段と
してコンピュータを機能させることを特徴とする。
【００１４】
本発明のプログラムにおける他の実施形態によれば、
第１の検索件数取得手段における第１の検索件数は、第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、平均化されたものである
ようにコンピュータを機能させることも好ましい。
【００１５】
本発明のプログラムにおける他の実施形態によれば、
データ項目統合手段は、所定条件の判定のために機械学習エンジンを適用しており、第１の検索件数を特徴量として、過去に、第１のインスタンスデータの群と第２のインスタンスデータの群とを統合したデータ項目を、教師データとして学習させておく
ようにコンピュータを機能させることも好ましい。
【００１６】
本発明のプログラムにおける他の実施形態によれば、
第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、第１の検索件数が最多となるデータ項目に対する、当該データ項目の第１の検索件数の第１の検索割合を算出する第１の検索割合算出手段を更に有し、
データ項目統合手段は、第１のインスタンスデータの群における第１のデータ項目の第１の検索割合と、第２のインスタンスデータの群における第２のデータ項目の第１の検索割合とが第１の所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する
ようにコンピュータを機能させることも好ましい。
【００１７】
本発明のプログラムにおける他の実施形態によれば、
第１の検索割合算出手段における第１の検索割合は、第１の検索件数が最多となるデータ項目の第１の検索割合を１とし、最少となるデータ項目の第１の検索割合を０として、全てのデータ項目に対して正規化されたものである
ようにコンピュータを機能させることも好ましい。
【００１８】
本発明のプログラムにおける他の実施形態によれば、
データ項目統合手段における第１の所定条件とは、第１のインスタンスデータの群における第１のデータ項目の第１の検索割合と、第２のインスタンスデータの群における第２のデータ項目の第１の検索割合との差分又は比率が、第１の所定閾値以下である場合である
ようにコンピュータを機能させることも好ましい。
【００１９】
本発明のプログラムにおける他の実施形態によれば、
第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、当該データ項目と、第１の検索件数が最多となるデータ項目とをアンド検索キーとして検索エンジンによって第２の検索件数を取得する第２の検索件数取得手段と、
第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、第２の検索件数が最多となるデータ項目に対する、当該データ項目の第２の検索件数の第２の検索割合を算出する第２の検索割合算出手段と
して更に機能させ、
データ項目統合手段は、第１のインスタンスデータの群における第１のデータ項目の第２の検索割合と、第２のインスタンスデータの群における第２のデータ項目の第２の検索割合とが第２の所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する
ようにコンピュータを機能させることも好ましい。
【００２０】
本発明のプログラムにおける他の実施形態によれば、
データ項目統合手段は、第１の検索割合に対する第１の所定条件の結果と、第２の検索割合に対する第２の所定条件の結果とに基づいて、第１のインスタンスデータの群の第１のデータ項目と第２のインスタンスデータの群の第２のデータ項目とを統合するか否かを判定する
ようにコンピュータを機能させることも好ましい。
【００２１】
本発明のプログラムにおける他の実施形態によれば、
データ項目として、ＵＲＬ(Uniform Resource Locator)が含まれおり、
第１のインスタンスデータ及び第２のインスタンスデータの全てについて、ＵＲＬに基づくページ情報を取得するページ情報取得手段と、
第１のインスタンスデータ及び第２のインスタンスデータの全てについて、データ項目毎に、当該データ項目が当該ページ情報に記述されている掲載回数を計数する掲載回数計数手段と、
第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、掲載回数が最多となるデータ項目に対する、当該データ項目の掲載回数の掲載割合を算出する掲載割合算出手段と
して機能させ、
データ項目統合手段は、第１のインスタンスデータの群における第１のデータ項目の掲載割合と、第２のインスタンスデータの群における第２のデータ項目の掲載割合とが第３の所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する
ようにコンピュータを機能させることも好ましい。
【００２２】
本発明のプログラムにおける他の実施形態によれば、
データ項目統合手段は、
第１の検索割合に対する第１の所定条件の結果と、掲載割合に対する第３の所定条件の結果とに基づいて、又は、
第１の検索割合に対する第１の所定条件の結果と、第２の検索割合に対する第２の所定条件の結果と、掲載割合に対する第３の所定条件の結果とに基づいて、
第１のインスタンスデータの群の第１のデータ項目と第２のインスタンスデータの群の第２のデータ項目とを統合するか否かを判定する
ようにコンピュータを機能させることも好ましい。
【００２３】
本発明のプログラムにおける他の実施形態によれば、
掲載回数計数手段における掲載回数は、当該データ項目が、当該ページ情報のタイトルタグに記述されたものである
ようにコンピュータを機能させることも好ましい。
【００２４】
本発明によれば、第１のインスタンスデータの群及び第２のインスタンスデータの群を、データ項目に基づくスキーマの関係性に基づいて統合するインスタンスデータ統合装置であって、
第１のインスタンスデータ及び第２のインスタンスデータの全てについて、データ項目毎に、当該データ項目の内容をキーとして検索エンジンによって第１の検索件数を取得する第１の検索件数取得手段と、
第１のインスタンスデータの群における第１のデータ項目の第１の検索件数と、第２のインスタンスデータの群における第２のデータ項目の第１の検索件数とが所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合するデータ項目統合手段と
を有することを特徴とする。
【００２５】
本発明によれば、第１のインスタンスデータの群及び第２のインスタンスデータの群を、データ項目に基づくスキーマの関係性に基づいて統合する装置のインスタンスデータ項目統合方法であって、
第１のインスタンスデータ及び第２のインスタンスデータの全てについて、データ項目毎に、当該データ項目の内容をキーとして検索エンジンによって第１の検索件数を取得する第１のステップと、
第１のインスタンスデータの群における第１のデータ項目の第１の検索件数と、第２のインスタンスデータの群における第２のデータ項目の第１の検索件数とが所定条件を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する第２のステップと
を実行することを特徴とする。
【発明の効果】
【００２６】
本発明のプログラム、装置及び方法によれば、複数のインスタンスデータの群をスキーマの関係性に基づいて、精度良く統合することができる。
【図面の簡単な説明】
【００２７】
【図１】２つのインスタンスデータの群を統合する例を表す説明図である。
【図２】本発明におけるインスタンスデータ統合装置の基本的な機能構成図である。
【図３】データ項目に対する第１の検索件数及び第１の検索割合の対応表である。
【図４】本発明におけるインスタンスデータ統合装置の応用的な機能構成図である。
【図５】データ項目に対する第２の検索件数及び第２の検索割合の対応表である。
【図６】データ項目に対する掲載回数及び掲載割合の対応表である。
【図７】データ項目に対するデータ型の対応表である。
【図８】異なるインスタンスデータの群におけるデータ項目同士の類似度を表す対応表である。
【発明を実施するための形態】
【００２８】
以下では、本発明の実施の形態について、図面を用いて詳細に説明する。
【００２９】
図２は、本発明におけるインスタンスデータ統合装置の基本的な機能構成図である。
図３は、データ項目に対する第１の検索件数及び第１の検索割合の対応表である。
【００３０】
インスタンスデータ統合装置１は、第１のインスタンスデータの群及び第２のインスタンスデータの群を、データ項目に基づくスキーマの関係性に基づいて統合する。
図２によれば、インスタンスデータ統合装置１は、第１の検索件数取得部１１１と、第１の検索割合算出部１１２と、データ項目統合部１４と、検索エンジンアクセス部１５とを有する。これら機能構成部は、インスタンスデータ統合装置１に搭載されたコンピュータを機能させるプログラムを実行することによって実現できる。また、これら機能構成部の処理の流れは、インスタンスデータ項目統合方法としても理解できる。
【００３１】
［第１の検索件数取得部１１１］
第１の検索件数取得部１１１は、第１のインスタンスデータ及び第２のインスタンスデータの全てについて、データ項目毎に、当該データ項目の内容をキーとして検索エンジン２によって第１の検索件数を取得する。第１の検索件数とは、当該データ項目の内容を含むＷｅｂサイトページのヒット件数であり、データ項目毎の特徴量として扱う。
【００３２】
特に、第１の検索件数は、第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、平均化したものであってもよい。特定のインスタンスデータにおける特定のデータ項目についてのみ、ヒット件数が多くても、全体的に平均化することができる。
図３によれば、インスタンスデータの各データ項目に、第１の検索件数が対応付けられている。
【００３３】
第１の検索件数取得部１１１は、検索エンジンアクセス部１５を介して、インターネットに接続された検索エンジン２へ、キー（データ項目の内容）を送信し、そのヒット件数（第１の検索件数）を取得する。検索エンジン２としては、例えばGoogle（登録商標）やYahoo（登録商標）、Bing（登録商標）のような検索サイトがある。
【００３４】
図１の第１のインスタンスデータによれば、例えば施設名称「Ｘ保育園」をキーとして、ヒット件数を取得する。
次に、施設番号「0xx-xxx-xxxx」をキーとして、ヒット件数を取得する。
更に、施設ＵＲＬ「http://www.x-hoikuen.com」をキーとして、ヒット件数を取得する。
更に、施設住所「Ａ市xx１丁目２−３」をキーとして、ヒット件数を取得する。
このように、全てのデータ項目の内容をキーとして、第１の検索件数（ヒット件数）を取得する。ここで、例えば保育園情報の場合、施設名称「Ｘ保育園」は、施設電話や施設住所よりも、第１の検索件数が多くなる傾向がある。
【００３５】
同様に、統合を検討すべき第２のインスタンスデータについても、全てのデータ項目の内容をキーとして、第１の検索件数を取得する。
【００３６】
［第１の検索割合算出部１１２］
第１の検索割合算出部１１２は、第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、第１の検索件数が最多となるデータ項目に対する、当該データ項目の第１の検索件数の第１の検索割合を算出する。これは、図２によれば、オプション的な機能となる。
【００３７】
ここで、第１の検索割合は、第１の検索件数が最多となるデータ項目の第１の検索割合を１とし、最少となるデータ項目の第１の検索割合を０として、全てのデータ項目に対して正規化されたものであってもよい。正規化することによって、データ項目同士の第１の検索割合の大小関係が明確となる。
図３によれば、インスタンスデータの各データ項目に、第１の検索割合が対応付けられている。
【００３８】
［データ項目統合部１４］
データ項目統合部１４は、第１のインスタンスデータの群における第１のデータ項目の第１の検索件数と、第２のインスタンスデータの群における第２のデータ項目の第１の検索件数とが「所定条件」を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する。
【００３９】
オプションとしての第１の検索割合算出部１１２を含まない場合、データ項目統合部１４は、第１の検索件数取得部１１１によって取得された第１の検索件数を、特徴量として判定する。例えば、総数となる第１の検索件数同士の差分又は比率が、所定閾値以下である場合には、「所定条件」を満たすと判定してもよい。
【００４０】
一方で、第１の検索割合算出部１１２を含む場合、データ項目統合部１４は、第１のインスタンスデータの群における第１のデータ項目の第１の検索割合と、第２のインスタンスデータの群における第２のデータ項目の第１の検索割合とが「第１の所定条件」を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する。
第１の検索割合算出部１１２によって取得された第１の検索割合を、特徴量として判定する。例えば、第１の検索割合の差分又は比率が、第１の所定閾値以下である場合には、「第１の所定条件」を満たすと判定する。
図３によれば、第１のインスタンスデータの第１の検索割合と第２のインスタンスデータの第１の検索割合とが第１の所定条件（例えば１０％以下）を満たすように近いデータ項目同士が、両矢印破線で対応付けられている。
【００４１】
他の実施形態として、データ項目統合部１４は、所定条件を、例えば機械学習エンジンによって判定するものであってもよい。例えば、第１の検索件数又は第１の検索割合を特徴量として、過去に、第１のインスタンスデータの群と第２のインスタンスデータの群とを統合したデータ項目を、教師データとして学習させておく。
【００４２】
機械学習エンジンとしては、具体的には、教師あり学習のパターン認識モデルであるサポートベクターマシン(Support Vector Machine)を用いてもよい。サポートベクターマシンは、線形入力素子を用いて、２クラスのパターン識別器を構成する。サポートベクターマシンは、ノンパラメトリックモデルであり、教師データとしての正例／負例の特徴量を入力するだけで学習させることができる。
【００４３】
また、機械学習エンジンとして、ニューラルネットワーク(Neural Network)を用いたものであってもよい。ニューラルネットワークは、脳機能の特性を、計算機上のシミュレーションによって表現した数学モデルである。シナプスの結合によりネットワークを形成した人工ニューロン（ノード）が、学習によってシナプスの結合強度を変化させ、問題解決能力を持つようなモデル全般をいう。
具体的には、順伝播型の畳み込みニューラルネットワーク(Convolutional Neural Network, CNN)として、入力層(input layer)と、中間層(hidden layer)と、出力層(output layer)との３つの層から構成され、入力層から出力層へ向けて一方向に伝播する。中間層は、グラフ状に複数の層から構成するものであってもよい。最終的に、出力層は、２クラス（正例／負例）を出力するように構成することができる。
【００４４】
機械学習エンジンとして、サポートベクターマシンであってもニューラルネットワークであっても、本発明によれば、過去に統合したデータ項目同士の特徴量（第１の検索件数又は第１の検索割合）を「正例」とし、統合しなかったデータ項目同士の特徴量を「負例」として学習させることができる。
【００４５】
最終的に、データ項目統合部１４は、第１のインスタンスデータの群と第２のインスタンスデータの群とを統合し、そのインスタンスデータの群を出力する。
【００４６】
図４は、本発明におけるインスタンスデータ統合装置の応用的な機能構成図である。
図５は、データ項目に対する第２の検索件数及び第２の検索割合の対応表である。
図６は、データ項目に対する掲載回数及び掲載割合の対応表である。
【００４７】
図４によれば、インスタンスデータ統合装置１は、図１の各機能構成部に加えて、第２の検索件数取得部１２１と、第２の検索割合算出部１２２と、掲載回数計数部１３１と、掲載割合算出部１３２と、ページ情報取得部１６とを更に有する。
【００４８】
［第２の検索件数取得部１２１］
第２の検索件数取得部１２１は、第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、当該データ項目と、第１の検索件数が最多となるデータ項目とをアンド検索キーとして検索エンジン２によって第２の検索件数を取得する。これは、２つのデータ項目の内容が、同一ページに掲載される件数を特徴量としたものである。
前述と同様に、第２の検索件数も、第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、平均化したものであってもよい。
【００４９】
例えば、図１における第１のインスタンスデータの群における、施設名称「Ｘ保育園」のインスタンスデータを想定する。ここでは、当然、施設名称「Ｘ保育園」における第１の検索件数（平均値であってもよい）が最多となる。
そして、電話番号のデータ項目について、最多の第１の検索件数の施設名称「Ｘ保育園」と、例えば「0xx-xxx-xxxx」とを、アンド検索キーとして検索エンジン２によって第２の検索件数を取得する。
同様に、施設ＵＲＬのデータ項目について、最多の第１の検索件数の施設名称「Ｘ保育園」と、例えば「http://www-xhoikuen.com」とを、アンド検索キーとして検索エンジン２によってヒット件数（第２の検索件数）を取得する。
このように、全てのデータ項目について、第２の検索件数を取得する。
【００５０】
［第２の検索割合算出部１２２］
第２の検索割合算出部１２２は、第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、第２の検索件数が最多となるデータ項目に対する、当該データ項目の第２の検索件数の第２の検索割合を算出する。これは、図４によれば、オプション的な機能となる。
前述と同様に、第２の検索割合は、第２の検索件数が最多となるデータ項目の第２の検索割合を１とし、最少となるデータ項目の第２の検索割合を０として、全てのデータ項目に対して正規化されたものであってもよい。
【００５１】
（データ項目統合部１４の追加機能）
オプションとしての第２の検索割合算出部１２２を含まない場合、データ項目統合部１４は、第２の検索件数取得部１２１によって取得された第２の検索件数を、特徴量として判定する。例えば、総数となる第２の検索件数同士の差分又は比率が、所定閾値以下である場合には、「所定条件」を満たすと判定してもよい。
【００５２】
一方で、第２の検索割合算出部１２２を含む場合、データ項目統合部１４は、第１のインスタンスデータの群における第１のデータ項目の第２の検索割合と、第２のインスタンスデータの群における第２のデータ項目の第２の検索割合とが「第２の所定条件」を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する。
前述と同様に、例えば、第２の検索割合の差分又は比率が、所定閾値以下である場合には、「第２の所定条件」を満たすと判定してもよい。
図５によれば、第１のインスタンスデータの第２の検索割合と第２のインスタンスデータの第２の検索割合とが第２の所定条件（例えば１０％以下）を満たすように近いデータ項目同士が、両矢印破線で対応付けられている。
【００５３】
他の実施形態として、データ項目統合部１４は、第１の検索割合算出部１１２及び第２の検索割合算出部１２２の両方を用いて、第１の検索割合に対する第１の所定条件の結果と、第２の検索割合に対する第２の所定条件の結果とに基づいて、第１のインスタンスデータの群の第１のデータ項目と第２のインスタンスデータの群の第２のデータ項目とを統合するか否かを判定するものであってもよい。
具体的には、各データ項目について、第１の所定条件の結果に応じて類似度を付与し、第２の所定条件の結果に応じて類似度を付与し、それら類似度の加算値を対応付ける。その加算値の大小に応じて、データ項目を統合するか否かを判定することができる。
【００５４】
［掲載回数計数部１３１］
データ項目に、ＵＲＬ(Uniform Resource Locator)が含まれているとする。このとき、掲載回数計数部１３１は、第１のインスタンスデータ及び第２のインスタンスデータの全てについて、データ項目毎に、当該データ項目が当該ページ情報に記述されている掲載回数を計数する。
掲載回数計数部１３１は、データ項目のＵＲＬをキーとして、ページ情報取得部１６へ出力する。ページ情報取得部１６は、そのＵＲＬに向けてページ取得要求(GET Request)を送信し、そのページ応答(GET Response)を受信する。ページ応答には、ページとして、ＨＴＭＬ(HyperText Markup Language)に基づくテキストが含まれる。
掲載回数計数部１３１は、取得したページに、各データ項目の内容が含まれているか否かをテキスト検索する。これを特徴量として利用する。
前述と同様に、掲載回数も、第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、平均化したものであってもよい。
【００５５】
例えば、保育園情報や公共施設情報のオープンデータには、ホームページのＵＲＬが含まれる場合もある。また、それらのホームページには、施設名称や施設住所のような情報が掲載されている可能性が高い一方で、緯度経度のような情報は掲載されている可能性が低いといった傾向がある。また、施設名称の掲載回数が２回以上となるのに対し、施設電話や施設住所の掲載回数は１回となる傾向がある。このような傾向を、特徴量として定量的に算出する。
【００５６】
他の実施形態として、掲載回数は、当該データ項目が、当該ページ情報のタイトルタグに記述されたものに限定したものであってもよい。ＨＴＭＬのテキストの場合、タイトルタグとは、<Title>タブで囲まれた部分を意味する。ここには、ページの最も特徴を表す単語が記述されている。
【００５７】
［掲載割合算出部１３２］
掲載割合算出部１３２は、第１のインスタンスデータの群及び第２のインスタンスデータの群それぞれについて、データ項目毎に、掲載回数が最多となるデータ項目に対する、当該データ項目の掲載回数の掲載割合を算出する。
前述と同様に、掲載割合としては、掲載回数が最多となるデータ項目の掲載割合を１とし、最少となるデータ項目の掲載割合を０として、全てのデータ項目に対して正規化されたものであってもよい。
また、他の実施形態として、掲載割合としては、インスタンスデータの群の中で、そのデータ項目（例えば施設名称）の内容が掲載された確率値であってもよい。図６によれば、例えば「施設名称」１００％の場合、インスタンスデータの群における全てのインスタンスデータについて、そのホームページにその施設名称が掲載されていることを意味する。また、例えば「施設名称」５０％の場合、インスタンスデータの群における５０％のインスタンスデータについて、そのホームページにその施設名称が掲載されていることを意味する。
【００５８】
（データ項目統合部１４の追加機能）
データ項目統合部１４は、第１のインスタンスデータの群における第１のデータ項目の掲載割合と、第２のインスタンスデータの群における第２のデータ項目の掲載割合とが「第３の所定条件」を満たす場合、第１のインスタンスデータの群における第１のデータ項目と、第２のインスタンスデータの群における第２のデータ項目とを統合する。
例えば、掲載割合同士の差分又は比率が、所定閾値以下である場合には、「第３の所定条件」を満たすと判定してもよい。
図６によれば、第１のインスタンスデータの第２の掲載割合と第２のインスタンスデータの第２の掲載割合とが第３の所定条件（例えば１０％以下）を満たすように近いデータ項目同士が、両矢印破線で対応付けられている。
【００５９】
他の実施形態として、データ項目統合部１４は、第１のインスタンスデータの群の第１のデータ項目と第２のインスタンスデータの群の第２のデータ項目とを統合するか否かを判定するために、以下のように結果を総合的に判定することも好ましい。
（１）第１の検索割合に対する第１の所定条件の結果と、掲載割合に対する第３の所定条件の結果とに基づいて判定する。
（２）第１の検索割合に対する第１の所定条件の結果と、第２の検索割合に対する第２の所定条件の結果と、掲載割合に対する第３の所定条件の結果とに基づいて判定する。
【００６０】
図７は、データ項目に対するデータ型の対応表である。
【００６１】
図７によれば、第１のインスタンスデータのデータ項目のデータ型と、第２のインスタンスデータのデータ項目のデータ型との対応関係を表す。データ型としては、例えば文字列、整数、電話番号、ＵＲＬ型、小数、e-mailなどがある。データ型が同じであれば、データ項目を統合すべき可能性も高い。
【００６２】
図８は、異なるインスタンスデータの群におけるデータ項目同士の類似度を表す対応表である。
【００６３】
図８（ａ）には、データ項目同士が所定条件を満たした場合における類似度の加算値のルールを表す。この判定条件に一致した際に、データ項目同士の組にその類似度を加算していく。
データ項目同士における第１の検索割合の差分が１０％以下である場合、類似度０．５を加算する。
データ項目同士における第２の検索割合の差分が１０％以下である場合、類似度１を加算する。
データ項目同士における掲載割合の差分が１０％以下である場合、類似度１を加算する。
その他、データ項目の文字列や、データ型、データ統計量に応じて、類似度を加算する。
【００６４】
図８（ｂ）には、第１の検索割合及び第２の検索割合に基づいた類似度の加算値の例を表す。これは、図８（ａ）のルールに従って、データ項目の類似度を加算し、スキーマ間の関係性を表している。
【００６５】
第１のインスタンスデータのデータ項目「施設名称」から見て、第２のインスタンスデータのデータ項目「施設名」が、類似度４で最多となる。一方で、第２のインスタンスデータのデータ項目「施設名」から見て、第１のインスタンスデータのデータ項目「施設名称」も、類似度４で最多となる。この場合、第１のインスタンスデータのデータ項目「施設名称」と、第２のインスタンスデータのデータ項目「施設名」とを統合することができると判断する。
【００６６】
次に、第１のインスタンスデータのデータ項目「施設電話」から見て、第２のインスタンスデータのデータ項目「電話番号」が、類似度２で最多となる。一方で、第２のインスタンスデータのデータ項目「電話番号」から見て、第１のインスタンスデータのデータ項目「施設電話」も、類似度２で最多となる。この場合、第１のインスタンスデータのデータ項目「施設電話」と、第２のインスタンスデータのデータ項目「電話番号」とを統合することができると判断する。
【００６７】
このように考えると、以下のようにデータ項目を統合することができると判断できる。
（第１のインスタンスデータ）<->（第２のインスタンスデータ）（最多類似度）
施設名称  <->  施設名                          ４
施設電話  <->  電話番号                        ４
施設ＵＲＬ  <->  ホームページ                    ４
施設住所  <->  住所                            ４
施設緯度  <->  緯度                            ４
施設経度  <->  経度                            ４
施設収容人数  <->  定員                            ２
【００６８】
図８（ｃ）には、更に掲載割合に基づいた類似度の加算値の例を表す。これは、図８（ａ）のルールに従って、データ項目の類似度を加算し、スキーマ間の関係性を表している。図８（ｃ）についても、前述した図８（ｂ）と同様に判断できる。
（第１のインスタンスデータ）<->（第２のインスタンスデータ）（最多類似度）
施設名称  <->  施設名                          ５
施設電話  <->  電話番号                        ５
施設ＵＲＬ  <->  ホームページ                    ５
施設住所  <->  住所                            ５
施設緯度  <->  緯度                            ５
施設経度  <->  経度                            ５
施設収容人数  <->  定員                            ２
【００６９】
以上、詳細に説明したように、本発明のプログラム、装置及び方法によれば、複数のインスタンスデータの群をスキーマの関係性に基づいて、精度良く統合することができる。
【００７０】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【００７１】
１  インスタンスデータ統合装置
１１１  第１の検索件数取得部
１１２  第１の検索割合算出部
１２１  第２の検索件数取得部
１２２  第２の検索割合算出部
１３１  掲載回数計数部
１３２  掲載割合算出部
１４  データ項目統合部
１５  検索エンジンアクセス部
１６  ページ情報取得部
２  検索エンジン
３    Ｗｅｂサイト
【図１】
2019121173.tif 000003
【図２】
2019121173.tif 000004
【図３】
2019121173.tif 000005
【図４】
2019121173.tif 000006
【図５】
2019121173.tif 000007
【図６】
2019121173.tif 000008
【図７】
2019121173.tif 000009
【図８】
2019121173.tif 000010