(57)【要約】  複数の計算機を備える計算機システムであって、少なくとも一つの計算機は、教師データを用いて、ターゲットデータのデータ種別の分類に用いられる指標を算出するための分布情報を生成し、ターゲットデータのデータ種別を分類する分類部を有する計算機に分布情報を出力する学習部を有し、学習部は、教師データのデータ長に基づいて、教師データに含まれる文字が所定の出現位置に出現する第１確率、及びダミーデータが所定の出現位置に出現する第２確率を算出し、データ種別、教師データに含まれる文字、当該文字の文字列中の出現位置、及び第１確率を含む第１エントリと、データ種別、ダミーデータ、当該ダミーデータの文字列中の出現位置、及び第２確率を含む第２エントリとを分布情報に登録する。
2017163342.tif 000002
【特許請求の範囲】
【請求項１】
複数の計算機を備える計算機システムであって、
前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続される主記憶装置、及び前記プロセッサに接続されるインタフェースを有し、
前記少なくとも一つの計算機は、複数のデータ種別の各々に属する複数の教師データを用いて、ターゲットデータのデータ種別の分類に用いられる指標を算出するための分布情報を生成し、前記分布情報を用いて前記ターゲットデータのデータ種別を分類する分類部を有する計算機に当該分布情報を出力する学習部を有し、
前記複数の教師データの各々は、一つ以上の文字から構成される文字列であり、
前記学習部は、
前記複数のデータ種別の各々に属する前記複数の教師データを用いた学習処理を実行することによって、前記データ種別、前記データ種別に属する前記複数の教師データの各々に含まれる文字、及び当該文字の文字列中の出現位置を含む複数の第１エントリを前記分布情報に追加し、
前記データ種別、前記ターゲットデータのデータ長を調整するために追加されるダミーデータ、及び当該ダミーデータの文字列中の出現位置を含む所定の数の第２エントリを前記分布情報に追加し、
前記第１エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第１エントリに含まれる前記出現位置に前記第１エントリに含まれる前記文字が出現する確率を表す第１確率を算出し、
前記第２エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第２エントリに含まれる前記出現位置に前記第２エントリに含まれる前記ダミーデータが出現する確率を表す第２確率を算出し、
前記複数の第１エントリの各々に前記第１確率を設定し、前記複数の第２エントリの各々に前記第２確率を設定することを特徴とする計算機システム。
【請求項２】
請求項１に記載の計算機システムであって、
前記学習部は、
前記複数のデータ種別毎に、同一の前記データ種別に属する前記複数の教師データのデータ長のばらつきを示す第１レンジを算出し、
前記複数のデータ種別の各々の前記第１レンジに基づいて、前記ダミーデータに関連する値を補正するための補正レベルを算出し、
前記第１エントリに含まれる前記出現位置に前記第１エントリに含まれる前記文字が出現する回数を表す第１出現回数を算出し、
前記第２エントリに含まれる前記出現位置に前記第２エントリに含まれる前記ダミーデータが出現する回数を表す第２出現回数を算出し、
前記第１エントリに含まれる前記データ種別の前記補正レベル、前記第１エントリに含まれる前記データ種別の前記第１レンジ、及び前記第１出現回数に基づいて、前記第１確率を算出し、
前記第２エントリに含まれる前記データ種別の前記補正レベル、前記第２エントリに含まれる前記データ種別の前記第１レンジ、及び前記第２出現回数に基づいて、前記第２確率を算出することを特徴とする計算機システム。
【請求項３】
請求項２に記載の計算機システムであって、
前記少なくとも一つの計算機は、前記分類部を有し、
前記指標は、前記ダミーデータが追加されたターゲットデータと、任意のデータ種別に属する前記複数の教師データとの間の類似度であり、
前記分類部は、
前記データ種別を選択し、
前記選択されたデータ種別に属する前記複数の教師データのデータ長の最小値と、前記ターゲットデータのデータ長との差である第１差分に基づいて、前記ダミーデータの挿入数を算出し、
前記ターゲットデータの所定の位置に、前記挿入数だけ前記ダミーデータを追加し、
前記分布情報を参照して、前記ダミーデータが追加されたターゲットデータに含まれる前記文字及び前記文字の位置に基づいて、前記第１確率及び前記第２確率を取得し、
前記第１確率及び前記第２確率を用いて前記類似度を算出することを特徴とする計算機システム。
【請求項４】
請求項３に記載の計算機システムであって、
前記分類部は、
前記複数のデータ種別の各々の前記複数の教師データのデータ長と、前記ターゲットデータのデータ長との間の差分を用いて、閾値を算出し、
前記複数のデータ種別の各々の前記類似度の大きさを比較することによって、前記類似度の最大値及び前記類似度の最小値を特定し、
前記閾値、前記類似度の最大値、及び前記類似度の最小値を用いて、前記類似度に基づいて前記ターゲットデータのデータ種別を分類できるか否かを判定し、
前記類似度に基づいて前記ターゲットデータのデータ種別を分類できると判定された場合、前記類似度が最も大きい前記データ種別を、前記ターゲットデータのデータ種別に決定することを特徴とする計算機システム。
【請求項５】
複数の計算機を備える計算機システムにおけるデータの分類方法であって、
前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続される主記憶装置、及び前記プロセッサに接続されるインタフェースを有し、
前記少なくとも一つの計算機は、複数のデータ種別の各々に属する複数の教師データを用いて、ターゲットデータのデータ種別の分類に用いられる指標を算出するための分布情報を生成し、前記分布情報を用いて前記ターゲットデータのデータ種別を分類する分類部を有する計算機に当該分布情報を出力する学習部を有し、
前記複数の教師データの各々は、一つ以上の文字から構成される文字列であり、
前記データの分類方法は、
前記学習部が、前記複数のデータ種別の各々に属する前記複数の教師データを用いた学習処理を実行することによって、前記データ種別、前記データ種別に属する前記複数の教師データの各々に含まれる文字、及び当該文字の文字列中の出現位置を含む複数の第１エントリを前記分布情報に追加する第１のステップと、
前記学習部が、前記データ種別、前記ターゲットデータのデータ長を調整するために追加されるダミーデータ、及び当該ダミーデータの文字列中の出現位置を含む所定の数の第２エントリを前記分布情報に追加する第２のステップと、
前記学習部が、前記第１エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第１エントリに含まれる前記出現位置に前記第１エントリに含まれる前記文字が出現する確率を表す第１確率を算出する第３のステップと、
前記学習部が、前記第２エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第２エントリに含まれる前記出現位置に前記第２エントリに含まれる前記ダミーデータが出現する確率を表す第２確率を算出する第４のステップと、
前記学習部が、前記複数の第１エントリの各々に前記第１確率を設定し、前記複数の第２エントリの各々に前記第２確率を設定する第５のステップと、を含むことを特徴とするデータの分類方法。
【請求項６】
請求項５に記載のデータの分類方法であって、
前記データの分類方法は、
前記学習部が、前記第２のステップの実行後、前記複数のデータ種別毎に、同一の前記データ種別に属する前記複数の教師データのデータ長のばらつきを示す第１レンジを算出するステップと、
前記学習部が、前記複数のデータ種別の各々の前記第１レンジに基づいて、前記ダミーデータに関連する値を補正するための補正レベルを算出するステップと、を含み、
前記第１のステップは、前記学習部が、前記第１エントリに含まれる前記出現位置に前記第１エントリに含まれる前記文字が出現する回数を表す第１出現回数を算出するステップを含み、
前記第２のステップは、前記学習部が、前記第２エントリに含まれる前記出現位置に前記第２エントリに含まれる前記ダミーデータが出現する回数を表す第２出現回数を算出するステップを含み、
前記第３のステップは、前記学習部が、前記第１エントリに含まれる前記データ種別の前記補正レベル、前記第１エントリに含まれる前記データ種別の前記第１レンジ、及び前記第１出現回数に基づいて、前記第１確率を算出するステップを含み、
前記第４のステップは、前記学習部が、前記第２エントリに含まれる前記データ種別の前記補正レベル、前記第２エントリに含まれる前記データ種別の前記第１レンジ、及び前記第２出現回数に基づいて、前記第２確率を算出するステップを含むことを特徴とするデータの分類方法。
【請求項７】
請求項６に記載のデータの分類方法であって、
前記少なくとも一つの計算機は、前記分類部を有し、
前記指標は、前記ダミーデータが追加されたターゲットデータと、任意のデータ種別に属する前記複数の教師データとの間の類似度であり、
前記データの分類方法は、
前記分類部が、前記データ種別を選択するステップと、
前記分類部が、前記選択されたデータ種別に属する前記複数の教師データのデータ長の最小値と、前記ターゲットデータのデータ長との差である第１差分に基づいて、前記ダミーデータの挿入数を算出するステップと、
前記分類部が、前記ターゲットデータの所定の位置に、前記挿入数だけ前記ダミーデータを追加するステップと、
前記分類部が、前記分布情報を参照して、前記ダミーデータが追加されたターゲットデータに含まれる前記文字及び前記文字の位置に基づいて、前記第１確率及び前記第２確率を取得するステップと、
前記分類部が、前記第１確率及び前記第２確率を用いて前記類似度を算出するステップと、を含むことを特徴とするデータの分類方法。
【請求項８】
請求項７に記載のデータの分類方法であって、
前記分類部が、前記複数のデータ種別の各々の前記複数の教師データのデータ長と、前記ターゲットデータのデータ長との間の差分を用いて、閾値を算出するステップと、
前記分類部が、前記複数のデータ種別の各々の前記類似度の大きさを比較することによって、前記類似度の最大値及び前記類似度の最小値を特定するステップと、
前記分類部が、前記閾値、前記類似度の最大値、及び前記類似度の最小値を用いて、前記類似度に基づいて前記ターゲットデータのデータ種別を分類できるか否かを判定するステップと、
前記分類部が、前記類似度に基づいて前記ターゲットデータのデータ種別を分類できると判定された場合、前記類似度が最も大きい前記データ種別を、前記ターゲットデータのデータ種別に決定するステップと、を含むことを特徴とするデータの分類方法。
【請求項９】
複数の計算機を備える計算機システムであって、
前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続される主記憶装置、及び前記プロセッサに接続されるインタフェースを有し、
前記少なくとも一つの計算機は、ターゲットデータのデータ種別の分類に用いられる指標を算出するための分布情報を用いて前記ターゲットデータのデータ種別を分類する分類部を有し、
前記複数の教師データの各々は、一つ以上の文字から構成される文字列であり、
前記分布情報は、
前記データ種別、前記データ種別に属する前記複数の教師データの各々に含まれる文字、当該文字の文字列中の出現位置、及び当該文字が前記出現位置に出現する確率を表す第１確率を含む複数の第１エントリと、
前記データ種別、前記ターゲットデータのデータ長を調整するために追加されるダミーデータ、当該ダミーデータの文字列中の出現位置、及び当該ダミーデータが前記出現位置に出現する確率を表す第２確率を含む所定の数の第２エントリと、を含み、
前記分類部は、
前記データ種別を選択し、
前記選択されたデータ種別に属する前記複数の教師データのデータ長の最小値と、前記ターゲットデータのデータ長との差である第１差分に基づいて、前記ダミーデータの挿入数を算出し、
前記ターゲットデータの所定の位置に、前記挿入数だけ前記ダミーデータを追加し、
前記分布情報を参照して、前記ダミーデータが追加されたターゲットデータに含まれる前記文字及び前記文字の位置に基づいて、前記第１確率及び前記第２確率を取得し、
前記第１確率及び前記第２確率を用いて前記指標を算出することを特徴とする計算機システム。
【請求項１０】
請求項９に記載の計算機システムであって、
前記指標は、前記ダミーデータが追加されたターゲットデータと、任意のデータ種別に属する前記複数の教師データとの間の類似度であり、
前記分類部は、
前記複数のデータ種別の各々の前記複数の教師データのデータ長と、前記ターゲットデータのデータ長との間の差分を用いて、閾値を算出し、
前記複数のデータ種別の各々の前記類似度の大きさを比較することによって、前記類似度の最大値及び前記類似度の最小値を特定し、
前記閾値、前記類似度の最大値、及び前記類似度の最小値を用いて、前記類似度に基づいて前記ターゲットデータのデータ種別を分類できるか否かを判定し、
前記類似度に基づいて前記ターゲットデータのデータ種別を分類できると判定された場合、前記類似度が最も大きい前記データ種別を、前記ターゲットデータのデータ種別に決定することを特徴とする計算機システム。
【請求項１１】
請求項９に記載の計算機システムであって、
前記少なくとも一つの計算機は、前記分布情報を生成する学習部を有し、
前記学習部は、
前記複数のデータ種別の各々に属する前記複数の教師データを用いた学習処理を実行することによって、前記データ種別、前記データ種別に属する前記複数の教師データの各々に含まれる前記文字、及び当該文字の文字列中の出現位置を含む前記複数の第１エントリを前記分布情報に追加し、
前記データ種別、前記ダミーデータ、及び当該ダミーデータの文字列中の出現位置を含む所定の数の前記第２エントリを前記分布情報に追加し、
前記第１エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第１確率を算出し、
前記第２エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第２確率を算出し、
前記複数の第１エントリの各々に前記第１確率を設定し、前記複数の第２エントリの各々に前記第２確率を設定することを特徴とする計算機システム。
【請求項１２】
請求項１１に記載の計算機システムであって、
前記学習部は、
前記複数のデータ種別毎に、同一の前記データ種別に属する前記複数の教師データのデータ長のばらつきを示す第１レンジを算出し、
前記複数のデータ種別の各々の前記第１レンジに基づいて、前記ダミーデータに関連する値を補正するための補正レベルを算出し、
前記第１エントリに含まれる前記出現位置に前記第１エントリに含まれる前記文字が出現する回数を表す第１出現回数を算出し、
前記第２エントリに含まれる前記出現位置に前記第２エントリに含まれる前記ダミーデータが出現する回数を表す第２出現回数を算出し、
前記第１エントリに含まれる前記データ種別の前記補正レベル、前記第１エントリに含まれる前記データ種別の前記第１レンジ、及び前記第１出現回数に基づいて、前記第１確率を算出し、
前記第２エントリに含まれる前記データ種別の前記補正レベル、前記第２エントリに含まれる前記データ種別の前記第１レンジ、及び前記第２出現回数に基づいて、前記第２確率を算出することを特徴とする計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文字列等のデータの分類方法に関する。
【背景技術】
【０００２】
製造業及び金融業等の業界において、運用システム等から取得されたデータを利用して生産性の向上、及び意思決定の支援を提供するシステムが求められている。【０００３】
運用システムから取得されるデータは、複数の値を含む。取得されたデータは、複数のセルから構成されるデータとしてデータベースに格納される。したがって、同一のデータ列内の各セルには様々な種別の値が格納される。【０００４】
製造設備及びセンサの多様化、システムのメンテナンス、データベースの設計ミス、システムの統合等によって、同一のデータであってもセルの構成が当初の設定と異なる場合もある。【０００５】
取得されたデータを利用するためには、各セルに格納されるデータの種別等を判別する必要がある。これに対して、特許文献１に記載された技術が知られている。特許文献１には、データ内の文字の類似度に基づいてデータを自動的に分類する技術が記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】米国特許第８７３２１８３号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１の従来技術では、製品及び設備等の識別子等の文字列を正しく分類できないという課題がある。なぜならば、識別子等は、似たような文字列の配列が使用され、また、似たような文字が使用されるためである。【０００８】
識別子等を正しく分類するためには文字列の長さも考慮する必要がある。より具体的には、分類対象の文字列の長さを、比較する文字列の種別に応じて変更した上で、類似度を算出する必要がある。【０００９】
本発明は、識別子等の文字列を正しく分類するシステム及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、複数の計算機を備える計算機システムであって、前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続される主記憶装置、及び前記プロセッサに接続されるインタフェースを有し、前記少なくとも一つの計算機は、複数のデータ種別の各々に属する複数の教師データを用いて、ターゲットデータのデータ種別の分類に用いられる指標を算出するための分布情報を生成し、前記分布情報を用いて前記ターゲットデータのデータ種別を分類する分類部を有する計算機に当該分布情報を出力する学習部を有し、前記複数の教師データの各々は、一つ以上の文字から構成される文字列であり、前記学習部は、前記複数のデータ種別の各々に属する前記複数の教師データを用いた学習処理を実行することによって、前記データ種別、前記データ種別に属する前記複数の教師データの各々に含まれる文字、及び当該文字の文字列中の出現位置を含む複数の第１エントリを前記分布情報に追加し、前記データ種別、前記ターゲットデータのデータ長を調整するために追加されるダミーデータ、及び当該ダミーデータの文字列中の出現位置を含む所定の数の第２エントリを前記分布情報に追加し、前記第１エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第１エントリに含まれる前記出現位置に前記第１エントリに含まれる前記文字が出現する確率を表す第１確率を算出し、前記第２エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第２エントリに含まれる前記出現位置に前記第２エントリに含まれる前記ダミーデータが出現する確率を表す第２確率を算出し、前記複数の第１エントリの各々に前記第１確率を設定し、前記複数の第２エントリの各々に前記第２確率を設定することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、分類部を有する計算機は、データ種別毎に所定の数のダミーデータのエントリが追加された分布情報を用いることによって、識別子等の文字列を正しく分類できる。前述した以外の課題、構成及び効果は、以下の実施例の説明によって明らかにされる。
【図面の簡単な説明】
【００１２】
【図１】実施例１の計算機システムの構成の一例を示す図である。
【図２】実施例１の教師データ管理情報の一例を示す図である。
【図３】実施例１の補正レベル管理情報の一例を示す図である。
【図４】実施例１の文字出現分布情報の一例を示す図である。
【図５】実施例１の分類対象データ管理情報の一例を示す図である。
【図６】実施例１の類似度算出結果情報の一例を示す図である。
【図７】実施例１の分類結果情報の一例を示す図である。
【図８】実施例１の補正レベル設定画面の一例を示す図である。
【図９】実施例１の分類結果確認／更新画面の一例を示す図である。
【図１０】実施例１の学習サーバが実行する学習処理の一例を説明するフローチャートである。
【図１１】実施例１の学習サーバが実行する出現率算出処理の一例を説明するフローチャートである。
【図１２】実施例１の分類サーバが実行する処理の概要を説明するフローチャートである。
【図１３】実施例１の分類サーバが実行する類似度算出処理の一例を説明するフローチャートである。
【図１４】実施例１の分類サーバが実行する分類処理の一例を説明するフローチャートである。
【発明を実施するための形態】
【００１３】
本発明の概要について説明する。以下の説明では、分類されるデータ（文字列）をターゲットデータとも記載する。
【００１４】
識別子等のターゲットデータを正しく分類するためには、教師データ及びターゲットデータのデータ長、すなわち、文字列の長さを考慮する必要がある。より具体的には、比較する文字列の種別に応じて、ターゲットデータのデータ長（文字列の長さ）を変更した上で、類似度を算出する必要がある。また、教師データのデータ長はデータ種別毎に異なるため、データ種別に応じて文字列の長さの調整方法を変更する必要がある。また、同一のデータ種別に属する教師データであっても、データ長にばらつきがある場合があるため、教師データのデータ長のばらつきも考慮する必要がある。
【００１５】
そこで、本発明を適用したシステムでは、学習フェーズ及び分類フェーズのそれぞれについて特徴的の処理が実行される。学習フェーズでは、複数のデータ種別の教師データを用いて、ターゲットデータを分類するための文字出現分布情報４００（図４参照）の生成処理が実行される。分類フェーズでは、文字出現分布情報４００に基づいてターゲットデータの分類処理が実行される。
【００１６】
本発明の学習フェーズでは、学習サーバ１００（図１参照）が、教師データのデータ種別、教師データ中の文字の出現位置、及び文字列の長さに基づいて、文字出現分布情報４００を生成する。本実施例の文字出現分布情報４００には、ターゲットデータのデータ長を調整するためのダミーデータのエントリがデータ種別毎に登録されている。
【００１７】
本発明の分類フェーズでは、分類サーバ１０１（図１参照）は、ターゲットデータ及び教師データを比較する前に、教師データのデータ種別に応じてターゲットデータに所定の数のダミーデータを追加する。分類サーバ１０１は、文字出現分布情報４００と、データ長が調整されたターゲットデータ及び教師データの比較結果とに基づいて、教師データとターゲットデータとの間の類似度を算出する。分類サーバ１０１は、算出された類似度に基づいて、ターゲットデータのデータ種別を分類する。
【００１８】
前述したように、本発明では、各データ種別の教師データのデータ長を考慮した学習処理及び分類処理が行われる。以下、添付図面を用いて本発明の実施例について説明する。
【実施例１】
【００１９】
図１は、実施例１の計算機システム１０の構成の一例を示す図である。【００２０】
計算機システム１０は、データセンタ１１及び複数の拠点１２から構成される。データセンタ１１及び複数の拠点１２は、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１９０を介して接続される。【００２１】
まず、データセンタ１１について説明する。データセンタ１１は、各拠点１２から送信されるデータ列（イベント情報）に含まれるセルのデータ（ターゲットデータ）のデータ種別を分類するためのサービスを提供するシステムである。データセンタ１１は、学習サーバ１００、分類サーバ１０１、及び記憶装置１０２を含む。学習サーバ１００及び分類サーバ１０１は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１９１を介して接続される。【００２２】
学習サーバ１００は、ターゲットデータの分類処理に用いる各種情報を生成する。学習サーバ１００は、ハードウェア構成として、ＣＰＵ１１１、主記憶装置１１２、ネットワークインタフェース１１３、及び外部記憶装置インタフェース１１４を備える。【００２３】
ＣＰＵ１１１は、主記憶装置１１２に格納されるプログラムを実行する演算装置である。ＣＰＵ１１１がプログラムを実行することによって学習サーバ１００の機能が実現される。以下、機能部を主語の処理を説明する場合、ＣＰＵ１１１が当該機能部を実現するプログラムを実行していることを示す。【００２４】
主記憶装置１１２は、ＣＰＵ１１１が実行するプログラム及び当該プログラムの実行に必要な情報を格納する記憶媒体である。また、主記憶装置１１２の記憶領域は、プログラムが使用するワークエリアも含む。【００２５】
ネットワークインタフェース１１３は、ネットワークを介して他の装置と接続するためのインタフェースである。外部記憶装置インタフェース１１４は、外部の記憶装置と接続するためのインタフェースである。【００２６】
ここで、主記憶装置１１２に格納されるプログラムについて説明する。主記憶装置１１２は、学習部１２１、補正レベル入力部１２２、及び補正レベル算出部１２３を実現するプログラムを格納する。【００２７】
学習部１２１は、補正レベル入力部１２２及び補正レベル算出部１２３と連携して、教師データを用いた学習処理を実行する。補正レベル入力部１２２は、補正レベルに関するデータの入力及び出力を行う。補正レベル算出部１２３は、補正レベルを算出する。ここで、補正レベルは、ターゲットデータのデータ長を調整するために追加されるダミーデータに関連する値、例えば、出現率及びダミーデータの追加数等を補正するための値である。補正レベル算出部１２３は、教師データ長レンジ算出部１３１を含む。教師データ長レンジ算出部１３１は、データ種別が同一である教師データのデータ長のばらつきを示すレンジを算出する。【００２８】
なお、学習部１２１、補正レベル入力部１２２、及び補正レベル算出部１２３が有する機能は、一つの機能部にまとめてもよいし、また、複数の機能部に分割してもよい。例えば、学習部１２１が、補正レベル入力部１２２及び補正レベル算出部１２３が有する機能を有してもよい。【００２９】
学習部１２１、補正レベル入力部１２２、及び補正レベル算出部１２３が実行する処理の詳細は、図１０及び図１１を用いて説明する。【００３０】
分類サーバ１０１は、ターゲットデータの分類処理を実行する。分類サーバ１０１は、ハードウェア構成として、ＣＰＵ１４１、主記憶装置１４２、ネットワークインタフェース１４３、及び外部記憶装置インタフェース１４４を備える。【００３１】
ＣＰＵ１４１、主記憶装置１４２、ネットワークインタフェース１４３、及び外部記憶装置インタフェース１４４は、ＣＰＵ１１１、主記憶装置１１２、ネットワークインタフェース１１３、及び外部記憶装置インタフェース１１４と同一のものであるため説明を省略する。【００３２】
主記憶装置１４２は、類似度算出部１５１、データ分類部１５２、分類閾値算出部１５３、及び分類結果出力部１５４を実現するプログラムを格納する。【００３３】
類似度算出部１５１は、ターゲットデータのデータ種別を判定するための類似度を算出する。データ分類部１５２は、類似度及び分類閾値に基づいて、ターゲットデータを分類する。分類閾値算出部１５３は、ターゲットデータの分類処理に使用される分類閾値を算出する。分類結果出力部１５４は、ターゲットデータの分類結果を出力する。【００３４】
なお、類似度算出部１５１、データ分類部１５２、分類閾値算出部１５３、及び分類結果出力部１５４が有する機能は、一つの機能部にまとめてもよいし、また、複数の機能部に分割してもよい。例えば、データ分類部１５２が、類似度算出部１５１、分類閾値算出部１５３、及び分類結果出力部１５４が有する機能を有してもよい。【００３５】
類似度算出部１５１、データ分類部１５２、分類閾値算出部１５３、及び分類結果出力部１５４が実行する処理の詳細は、図１２、図１３、及び図１４を用いて説明する。【００３６】
記憶装置１０２は、各種データを格納する。記憶装置１０２は、例えば、コントローラ及び複数の記憶媒体を有するストレージシステムが考えられる。また、記憶装置１０２は、記憶媒体を有する一般的な計算機でもよいし、記憶媒体そのものであってもよい。ここで、記憶媒体は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及びＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等が考えられる。【００３７】
本実施例の記憶装置１０２は、教師データ管理情報２００、補正レベル管理情報３００、文字出現分布情報４００、分類対象データ管理情報５００、類似度算出結果情報６００、及び分類結果情報７００を格納する。【００３８】
教師データ管理情報２００の詳細は、図２を用いて説明する。補正レベル管理情報３００の詳細は、図３を用いて説明する。文字出現分布情報４００の詳細は、図４を用いて説明する。分類対象データ管理情報５００の詳細は、図５を用いて説明する。類似度算出結果情報６００の詳細は、図６を用いて説明する。分類結果情報７００の詳細は、図７を用いて説明する。【００３９】
次に拠点１２について説明する。拠点１２では、任意の業務を実現するシステムが構築される。当該システムはイベント出力サーバ１７０を含む。イベント出力サーバ１７０は、複数のセンサ１７１と接続する。なお、本実施例は、イベント出力サーバ１７０とセンサ１７１との間の接続方法に限定されない。【００４０】
センサ１７１は、業務に関連する情報を含むイベントデータを出力する。【００４１】
イベント出力サーバ１７０は、センサ１７１からイベントデータを収集し、イベントデータをデータセンタ１１に送信する。このとき、学習サーバ１００又は分類サーバ１０１は、イベントデータを分類対象データ管理情報５００に登録する。【００４２】
イベント出力サーバ１７０は、ハードウェア構成として、ＣＰＵ１８１、主記憶装置１８２、ネットワークインタフェース１８３、及びセンサアクセスインタフェース１８４を備える。【００４３】
ＣＰＵ１８１、主記憶装置１８２、及びネットワークインタフェース１８３は、ＣＰＵ１１１、主記憶装置１１２、及びネットワークインタフェース１１３と同一のものであるため説明を省略する。センサアクセスインタフェース１８４は、センサ１７１と接続するためのインタフェースである。【００４４】
なお、仮想化技術を用いて生成される仮想計算機を用いて、学習サーバ１００及び分類サーバ１０１を実現してもよい。【００４５】
図２は、実施例１の教師データ管理情報２００の一例を示す図である。【００４６】
教師データ管理情報２００は、教師データを管理するための情報である。教師データ管理情報２００は、カテゴリ２０１及びデータ２０２から構成されるエントリを複数含む。一つのエントリが一つの教師データに対応する。なお、エントリには他のセルが含まれてもよい。【００４７】
カテゴリ２０１は、データ種別である。データ２０２は、教師データの具体的な値である。本実施例の教師データは、一つ以上の文字から構成される文字列である。データ２０２のダブルクォーテーションマーク内の文字列が教師データの値である。【００４８】
従来技術では、分類精度を高めるために、教師データが完全にそろっている必要がある。一方、本実施例では、各データ種別の特徴的な文字及び文字列の長さのパターンを把握できる程度の数の教師データがあればよい。【００４９】
図３は、実施例１の補正レベル管理情報３００の一例を示す図である。【００５０】
補正レベル管理情報３００は、各データ種別の補正レベルを管理するための情報である。補正レベル管理情報３００は、カテゴリ３０１、補正レベル３０２、挿入位置３０３、及び挿入率３０４から構成されるエントリを複数含む。本実施例では、一つのデータ種別に対して一つのエントリが存在する。【００５１】
カテゴリ３０１は、カテゴリ２０１と同一のものである。補正レベル３０２は、補正レベルの具体的な値である。挿入位置３０３は、ターゲットデータに対するダミーデータの挿入位置を示す情報である。挿入率３０４は、挿入位置３０３に挿入するダミーデータの割合を示す。本実施例では、挿入率３０４には、「１．０」から「０」までの実数が格納される。【００５２】
ここで、挿入するダミーデータの数が「４」である場合を例に説明する。【００５３】
カテゴリ３０１が「Ｍａｃｈｉｎｅ  ＩＤ」、挿入位置３０３が「ＴＡＩＬ」、及び挿入率３０４が「１．０」のエントリが補正レベル管理情報３００に登録されている場合、ターゲットデータの末尾に四つのダミーデータが挿入される。【００５４】
カテゴリ３０１が「Ｍａｃｈｉｎｅ  ＩＤ」、挿入位置３０３が「ＨＥＡＤ−３」、及び挿入率３０４が「０．５」のエントリ、及びカテゴリ３０１が「Ｍａｃｈｉｎｅ  ＩＤ」、挿入位置３０３が「ＴＡＩＬ」、及び挿入率３０４が「０．５」のエントリが補正レベル管理情報３００に登録されている場合、ターゲットデータの先頭から３文字目に二つのダミーデータが挿入され、ターゲットデータの末尾に二つのダミーデータが挿入される。【００５５】
図４は、実施例１の文字出現分布情報４００の一例を示す図である。【００５６】
文字出現分布情報４００は、教師データとターゲットデータとの間の類似度を算出する場合に使用される情報である。文字出現分布情報４００は、教師データを用いた学習処理によって生成される。【００５７】
文字出現分布情報４００は、カテゴリ４０１、文字４０２、位置４０３、出現回数４０４、及び出現率４０５から構成されるエントリを複数含む。【００５８】
カテゴリ４０１は、カテゴリ２０１と同一のものである。文字４０２は、具体的な文字である。位置４０３は、文字４０２に対応する文字の文字列中の出現位置を示す。出現回数４０４は、文字４０２に対応する文字が位置４０３に対応する出現位置に出現した数（累積値）である。出現率４０５は、カテゴリ４０１に属する文字列の文字４０２が位置４０３に出現する確率を表す。【００５９】
図４に示すように、本実施例の文字出現分布情報４００には、文字のエントリの他に、ダミーデータのエントリを含む点に特徴がある。なお、一つのクエスチョンマークが一つのダミーデータに対応する。【００６０】
図５は、実施例１の分類対象データ管理情報５００の一例を示す図である。【００６１】
分類対象データ管理情報５００は、ターゲットデータを格納する複数のセルから構成されるデータ列（イベントデータ）を管理するための情報である。分類対象データ管理情報５００は、データＩＤ５０１、イベントタイム５０２、Ｄａｔａ００１（５０３）、Ｄａｔａ００２（５０４）、及びＤａｔａ００３（５０５）から構成されるエントリを複数含む。一つのエントリが一つのデータ列に対応する。【００６２】
データＩＤ５０１は、データ列（イベントデータ）を一意に識別するための識別情報である。イベントタイム５０２は、データ列が発生又は取得された時刻である。【００６３】
Ｄａｔａ００１（５０３）、Ｄａｔａ００２（５０４）、及びＤａｔａ００３（５０５）は、イベントデータに含まれる値である。【００６４】
本実施例では、Ｄａｔａ００１（５０３）、Ｄａｔａ００２（５０４）、及びＤａｔａ００３（５０５）に格納される値がターゲットデータとなる。なお、Ｄａｔａ００１（５０３）、Ｄａｔａ００２（５０４）、及びＤａｔａ００３（５０５）のダブルクォーテーションマーク内の文字列が分類対象のターゲットデータである。【００６５】
図６は、実施例１の類似度算出結果情報６００の一例を示す図である。【００６６】
類似度算出結果情報６００は、ターゲットデータと教師データとの間の類似度の算出結果を管理するための情報である。類似度算出結果情報６００は、セル名６０１、データＩＤ６０２、挿入後データ６０３、ターゲットカテゴリ６０４、及び類似度６０５から構成されるエントリを複数含む。【００６７】
セル名６０１は、データ列のセルの名称である。データＩＤ６０２は、ターゲットデータを含むデータ列の識別情報である。挿入後データ６０３は、ダミーデータが挿入されたターゲットデータである。【００６８】
ターゲットカテゴリ６０４は、ターゲットデータとの比較を行う教師データが属するデータ種別である。類似度６０５は、ダミーデータが挿入されたターゲットデータとターゲットカテゴリ６０４に属する教師データとの間の類似度である。【００６９】
図７は、実施例１の分類結果情報７００の一例を示す図である。【００７０】
分類結果情報７００は、ターゲットデータの分類結果を管理するための情報である。分類結果情報７００は、データＩＤ７０１、セル名７０２、データ７０３、及び分類結果７０４から構成されるエントリを複数含む。一つのエントリは、任意のデータ列に含まれる一つのターゲットデータの分類結果に対応する。【００７１】
データＩＤ７０１は、データＩＤ５０１と同一のものである。セル名７０２は、セル名６０１と同一のものである。データ７０３は、データＩＤ７０１とセル名７０２に対応するセルに格納されるターゲットデータである。分類結果７０４は、データ７０３に対応するターゲットデータの分類結果である。【００７２】
図８は、実施例１の補正レベル設定画面８００の一例を示す図である。【００７３】
補正レベル設定画面８００は、カテゴリ入力欄８１０、推奨補正レベル表示欄８２０、補正レベル入力欄８３０、挿入場所入力欄８４０、詳細設定欄８５０、設定状況確認欄８６０、ＯＫボタン８７０、及びキャンセルボタン８８０を含む。【００７４】
カテゴリ入力欄８１０は、補正レベルを設定するデータ種別を入力するための欄である。本実施例では、ユーザは、プルダウン形式で表示されたデータ種別を選択する。【００７５】
推奨補正レベル表示欄８２０は、補正レベルのデフォルト値を表示する欄である。補正レベル入力欄８３０は、補正レベルの値を入力するための欄である。本実施例では、補正レベル入力欄８３０の下に、補正レベルの値の大きさと類似度との関係を示す説明文が表示される。【００７６】
挿入場所入力欄８４０は、ターゲットデータに対するダミーデータの挿入位置を入力するための欄である。本実施例では、ユーザは、プルダウン形式で表示された挿入位置を選択する。詳細設定欄８５０は、ターゲットデータに挿入するダミーデータの詳細な設定を行うための欄である。挿入場所入力欄８４０に「詳細設定」が入力された場合に、詳細設定欄８５０への入力が可能となる。本実施例の詳細設定欄８５０には、挿入場所及び挿入回数を入力するグラフが表示される。【００７７】
設定状況確認欄８６０は、カテゴリ入力欄８１０、推奨補正レベル表示欄８２０、補正レベル入力欄８３０、挿入場所入力欄８４０、及び詳細設定欄８５０を用いて入力された値の設定状態を示すための欄である。【００７８】
ＯＫボタン８７０は、補正レベル設定画面８００に入力された値を登録するための操作ボタンである。キャンセルボタン８８０は、補正レベル設定画面８００に設定された値の登録をキャンセルするための操作ボタンである。【００７９】
図９は、実施例１の分類結果確認／更新画面９００の一例を示す図である。【００８０】
分類結果確認／更新画面９００は、各データ種別の分類結果表示欄９１０、ＯＫボタン９２０、及びキャンセルボタン９３０を含む。【００８１】
分類結果表示欄９１０は、分類結果情報７００からデータ種別毎に分類結果を抽出することによって生成される。分類結果表示欄９１０の分類結果のセル９１１は、ユーザが変更できる。【００８２】
ＯＫボタン９２０は、分類結果を確定するための操作ボタンである。キャンセルボタン９３０は、分類結果の確定をキャンセルするための操作ボタンである。【００８３】
次に、学習サーバ１００及び分類サーバが実行する処理の詳細について説明する。まず、学習サーバ１００が実行する処理の詳細を図１０及び図１１を用いて説明する。【００８４】
なお、分類結果確認／更新画面９００には、分類結果情報７００そのものが表示されてもよい。【００８５】
図１０は、実施例１の学習サーバ１００が実行する学習処理の一例を説明するフローチャートである。【００８６】
学習サーバ１００は、教師データが入力又は教師データが更新されたか否かを判定する（ステップＳ１０１）。例えば、教師データ管理情報２００が登録された場合、学習サーバ１００は、教師データが入力されたと判定する。また、教師データ管理情報２００が更新された場合、学習サーバ１００は、教師データが更新されたと判定する。【００８７】
教師データが入力又は教師データが更新されていないと判定された場合、学習サーバ１００は、ステップＳ１１０に進む。【００８８】
教師データが入力又は教師データが更新されたと判定された場合、学習サーバ１００は、全てのデータ種別の補正レベルが算出されたか否かを判定する（ステップＳ１０２）。【００８９】
具体的には、学習部１２１は、補正レベル管理情報３００のカテゴリ３０１を参照し、全てのデータ種別のエントリが登録されているか否かを判定する。全てのデータ種別のエントリが登録されていない場合、学習サーバ１００は、全てのデータ種別の補正レベルが算出されていないと判定する。【００９０】
全てのデータ種別の補正レベルが算出されたと判定された場合、学習サーバ１００は、ステップＳ１１０に進む。【００９１】
全てのデータ種別の補正レベルが算出されていないと判定された場合、学習サーバ１００は、補正レベルが算出されていないデータ種別の中から、対象のデータ種別を一つ選択する（ステップＳ１０３）。【００９２】
次に、学習サーバ１００は、選択されたデータ種別に属する教師データに基づいて文字出現分布情報４００にエントリを登録する（ステップＳ１０４）。具体的には、以下のような処理が実行される。【００９３】
学習部１２１は、選択されたデータ種別に属する学習データの文字の出現回数を出現位置毎に計測する。学習部１２１は、文字出現分布情報４００に計測結果を登録する。例えば、学習部１２１は、Ｎａｉｖｅ  Ｂａｙｅｓ  ｃｌａｓｓｉｆｉｅｒ等の学習器を用いた教師データの学習を行うことによって、出現位置毎の文字の出現回数を計測する。【００９４】
文字出現分布情報４００には、文字の種別と文字の出現位置の組合せの数だけエントリが登録される。各エントリのカテゴリ４０１には選択されたデータ種別が設定される。また、各エントリの文字４０２及び位置４０３には、所定の文字及び所定の文字の出現位置が設定される。また、各エントリの出現回数４０４には、計測結果が格納される。【００９５】
この時点では、教師データに含まれる文字に関するエントリのみが文字出現分布情報４００に登録される。また、文字出現分布情報４００に登録される各エントリの出現率４０５は、空欄である。以上がステップＳ１０４の処理の説明である。【００９６】
次に、学習サーバ１００は、ステップＳ１０４において登録された全てのエントリの出現回数４０４に「１」を加算する（ステップＳ１０５）。これは、ゼロ頻度問題を回避するためである。なお、ステップＳ１０２の判定結果がＹＥＳである場合に、学習サーバ１００は、文字出現分布情報４００の全てのエントリに対して「１」を加算してもよい。【００９７】
次に、学習サーバ１００は、文字出現分布情報４００に選択されたデータ種別のダミーデータのエントリを追加する（ステップＳ１０６）。具体的には以下のような処理が実行される。【００９８】
学習部１２１は、カテゴリ４０１が選択されたデータ種別に一致するエントリを参照して、位置４０３の最大値を特定する。学習部１２１は、文字出現分布情報４００に位置４０３の最大値の数だけエントリを追加する。【００９９】
学習部１２１は、追加された各エントリのカテゴリ４０１に選択されたデータ種別を設定する。学習部１２１は、上のエントリから順に位置４０３に「１」から位置４０３の最大値までの値を設定する。学習部１２１は、追加された各エントリの文字４０２にクエスチョンマークを設定し、また、出現回数に「ＮＵＬＬ」を設定する。【０１００】
ここで、図４を用いてステップＳ１０６の具体的な処理を説明する。ステップＳ１０３において「Ｍａｃｈｉｎｅ  ＩＤ」が選択された場合、学習部１２１は、位置４０３の最大値を「５」と特定する。したがって、学習部１２１は、文字出現分布情報４００に五つのエントリを追加し、各エントリのカテゴリ４０１に「Ｍａｃｈｉｎｅ  ＩＤ」、文字４０２にクエスチョンマークを設定し、また、出現回数４０４に「ＮＵＬＬ」を設定する。さらに、学習部１２１は、上のエントリから順に位置４０３に「１」から「５」までの値を設定する。以上がステップＳ１０６の処理の説明である。【０１０１】
次に、学習サーバ１００は、選択されたデータ種別に属する教師データのレンジを算出する（ステップＳ１０７）。ここで、選択されたデータ種別に属する教師データのレンジは、当該データ種別に属する教師データのデータ長（文字列の長さ）のばらつきを示す値である。【０１０２】
具体的には、補正レベル算出部１２３の教師データ長レンジ算出部１３１が、選択されたデータ種別に属する教師データの最大文字数及び最小文字数の差を、当該データ種別に属する教師データのレンジとして算出する。【０１０３】
なお、前述の算出方法は一例であってこれに限定されない。例えば、教師データのデータ長の分散を、選択されたデータ種別に属する教師データのレンジとして用いてもよい。【０１０４】
次に、学習サーバ１００は、選択されたデータ種別の推奨補正レベルを算出する（ステップＳ１０８）。具体的には、以下のような処理が実行される。【０１０５】
補正レベル算出部１２３は、選択されたデータ種別に属する教師データのレンジを下式（１）に代入することによって、推奨補正レベルを算出する。【０１０６】
【数１】
2017163342.tif 000003
【０１０７】
ここで、Ｌｃ＿ｓｕｇｇｅｓｔは、選択されたデータ種別の推奨補正レベルを表す変数である。また、ｌｃ＿ｒａｎｇｅは、選択されたデータ種別に属する教師データのレンジを表す変数である。【０１０８】
補正レベル算出部１２３は、補正レベル管理情報３００のカテゴリ３０１を参照して、選択されたデータ種別に対応するエントリを検索する。補正レベル算出部１２３は、検索されたエントリの補正レベル３０２に、算出された補正レベルを設定する。以上がステップＳ１０８の処理の説明である。【０１０９】
次に、学習サーバ１００は、必要に応じて、補正レベル設定画面８００の推奨補正レベル表示欄８２０に更新された推奨補正レベルを表示する（ステップＳ１０９）。【０１１０】
ステップＳ１０１がＮＯ又はステップＳ１０２がＹＥＳの場合、学習サーバ１００は、出現率算出処理を実行する（ステップＳ１１０）。その後、学習サーバ１００は、処理を終了する。ダミーデータの出現率算出処理は、図１１を用いて説明する。【０１１１】
図１１は、実施例１の学習サーバ１００が実行する出現率算出処理の一例を説明するフローチャートである。【０１１２】
学習サーバ１００は、補正レベルの入力を受け付けたか否かを判定する（ステップＳ２０１）。【０１１３】
具体的には、補正レベル入力部１２２が、ユーザによって補正レベル設定画面８００の補正レベル入力欄８３０に値が入力され、又は、値が更新されたか否かを判定する。【０１１４】
補正レベルの入力を受け付けていないと判定された場合、学習サーバ１００は、ステップＳ２０３に進む。【０１１５】
補正レベルの入力を受け付けたと判定された場合、学習サーバ１００は、補正レベル管理情報３００を更新する（ステップＳ２０２）。その後、学習サーバ１００は、ステップＳ２０３に進む。【０１１６】
具体的には、補正レベル入力部１２２は、補正レベル管理情報３００のカテゴリ３０１がカテゴリ入力欄８１０と一致するエントリを検索し、検索されたエントリの補正レベル３０２に、補正レベル入力欄８３０に入力された値を設定する。【０１１７】
ステップＳ２０１がＮＯ又はステップＳ２０２の処理が実行された後、学習サーバ１００は、全てのデータ種別の出現率を算出したか否かを判定する（ステップＳ２０３）。【０１１８】
全てのデータ種別の出現率を算出したと判定された場合、学習サーバ１００は、処理を終了する。【０１１９】
全てのデータ種別の出現率を算出していないと判定された場合、学習サーバ１００は、出現率が算出されていないデータ種別の中から、対象のデータ種別を選択する（ステップＳ２０４）。【０１２０】
次に、学習サーバ１００は、文字出現分布情報４００を参照して、出現回数４０４に「ＮＵＬＬ」が設定されたダミーデータのエントリが存在するか否かを判定する（ステップＳ２０５）。【０１２１】
具体的には、補正レベル算出部１２３が、カテゴリ４０１が選択されたデータ種別、文字４０２がクエスチョンマーク、出現回数４０４が「ＮＵＬＬ」であるエントリが存在するか否かを判定する。【０１２２】
出現回数４０４に「ＮＵＬＬ」が設定されたダミーデータのエントリが存在すると判定された場合、学習サーバ１００は、出現回数４０４に「ＮＵＬＬ」が設定されたダミーデータのエントリの中から、対象のダミーデータのエントリを選択する（ステップＳ２０６）。【０１２３】
次に、学習サーバ１００は、カテゴリ４０１が選択されたデータ種別、及び位置４０３が選択されたダミーデータのエントリの位置４０３である文字のエントリの出現回数４０４のレンジを算出する（ステップＳ２０７）。ここで、文字のエントリの出現回数４０４のレンジは、位置４０３の値のばらつきを示す値である。【０１２４】
具体的には、補正レベル算出部１２３は、カテゴリ４０１及び位置４０３が、選択されたダミーデータのエントリのカテゴリ４０１及び位置４０３に一致する文字のエントリを検索する。補正レベル算出部１２３は、検索された文字のエントリの最大値及び最小値を特定し、最大値及び最小値の差を文字のエントリの出現回数４０４のレンジとして算出する。最大値及び最小値の差が「０」である場合、補正レベル算出部１２３は、文字のエントリの出現回数４０４のレンジを「１」に変更する。【０１２５】
なお、前述の算出方法は一例であってこれに限定されない。例えば、検索されたエントリの出現回数４０４の分散を文字のエントリの出現回数４０４のレンジとして用いてもよい。【０１２６】
次に、学習サーバ１００は、選択されたデータ種別に対応する補正レベルを取得する（ステップＳ２０８）。【０１２７】
具体的には、補正レベル算出部１２３は、補正レベル管理情報３００を参照し、カテゴリ３０１が対象のダミーデータのデータ種別と同一のエントリの補正レベルを３０２の値を取得する。【０１２８】
次に、学習サーバ１００は、選択されたデータ種別に属する教師データのレンジを算出する（ステップＳ２０９）。ステップＳ２０９の処理は、ステップＳ１０７の処理と同一である。ただし、選択されたデータ種別に属する教師データの最大文字数及び最小文字数の差が「０」である場合、学習サーバ１００は、選択されたデータ種別に属する教師データのレンジを「１」に設定する。【０１２９】
次に、学習サーバ１００は、選択されたダミーデータのエントリに設定する出現回数を算出する（ステップＳ２１０）。その後、学習サーバ１００は、ステップＳ２０５に戻り、同様の処理を実行する。ステップＳ２１０では、以下のような処理が実行される。【０１３０】
補正レベル算出部１２３は、下式（２）を用いて、対象のダミーデータの出現回数を算出する。【０１３１】
【数２】
2017163342.tif 000004
【０１３２】
ここで、Ｃ＿Ｄは、選択されたダミーデータのエントリに設定する出現回数を表す変数である。Ｃｃｐ＿ｒａｎｇｅは、ステップＳ２０７において算出された文字のエントリの出現回数４０４のレンジを表す変数である。ｌ＿ｒａｎｇｅは、ステップＳ２０９において算出された教師データのレンジを表す変数である。ＡＣｃは、ステップＳ２０８において取得された補正レベルを表す変数である。なお、補正レベルが設定されていない場合、変数ＡＣｃには「１」が設定されるものとする。【０１３３】
式（２）では、出現回数４０４のレンジが大きいほど出現回数の値は大きく、また、補正レベルが大きいほど出現回数の値は大きい。一方、教師データのレンジが大きいほど出現回数の値は小さい。補正レベルが大きい場合、ダミーデータが追加されたターゲットデータは、ダミーデータが属するデータ種別の教師データとの間の類似度が高くなる。【０１３４】
ＡＣｃ及びｌ＿ｒａｎｇｅがともに「１」である場合、すなわち、補正レベル及び教師データのデータ長のばらつきを考慮しない場合、文字のエントリの出現回数４０４のレンジが、ダミーデータの出現回数として算出される。【０１３５】
補正レベル算出部１２３は、対象のダミーデータのエントリの出現回数４０４に式（２）を用いて算出された値を設定する。以上がステップＳ２１０の処理の説明である。【０１３６】
ステップＳ２０５において、出現回数４０４に「ＮＵＬＬ」が設定されたダミーデータのエントリが存在しないと判定された場合、学習サーバ１００は、選択されたデータ種別の全エントリの出現率を算出する（ステップＳ２１１）。その後、学習サーバ１００は、ステップＳ２０３に戻り、同様の処理を実行する。ステップＳ２１１では、以下のような処理が実行される。【０１３７】
学習部１２１は、文字出現分布情報４００を参照して、選択されたデータ種別のエントリを一つ選択する。学習部１２１は、選択されたエントリのカテゴリ４０１及び出現位置４０３が同一であるエントリを検索する。【０１３８】
学習部１２１は、選択されたエントリの出現回数４０４、及び検索されたエントリの出現回数４０４を式（３）に代入することによって、選択されたエントリの出現率を算出する。【０１３９】
【数３】
2017163342.tif 000005
【０１４０】
学習部１２１は、選択されたエントリの出現率４０５に算出された値を設定する。以上がステップＳ２１１の処理の説明である。【０１４１】
図１０及び図１１を用いて説明したように、学習フェーズでは、データ種別毎に所定の数のダミーデータのエントリが文字出現分布情報４００に追加される。また、ダミーデータの出現率は、データ種別毎に異なる値が設定される。また、ダミーデータの出現率は、教師データのデータ長のばらつき及び補正レベルを用いて補正することができる。特に、ユーザは、補正レベルを調整することによって、ターゲットデータのデータ種別の分類精度を適宜変更することができる。後述するように、分類サーバ１０１は、文字出現分布情報４００に基づいて、各データ種別の教師データの長さを考慮して、ターゲットデータと教師データとの間の類似度を算出できる。【０１４２】
次に、分類サーバ１０１が実行する処理の詳細を図１２、図１３、図１４、及び図１５を用いて説明する。【０１４３】
図１２は、実施例１の分類サーバ１０１が実行する処理の概要を説明するフローチャートである。【０１４４】
分類サーバ１０１は、データの分類要求を受け付けたか否かを判定する（ステップＳ３０１）。【０１４５】
例えば、類似度算出部１５１は、ユーザ等からデータの分類要求を受け付けたか否かを判定する。また、分類対象のデータ列を受け付けた場合、類似度算出部１５１は、データの分類要求を受け付けたと判定してもよい。【０１４６】
データの分類要求を受け付けていないと判定された場合、分類サーバ１０１は、処理を終了する。【０１４７】
データの分類要求を受け付けたと判定された場合、分類サーバ１０１は、類似度算出処理を実行するか否かを判定する（ステップＳ３０２）。【０１４８】
具体的には、類似度算出部１５１が、類似度算出結果情報６００を参照し、類似度が算出又は更新されていないターゲットデータが存在するか否かを判定する。類似度が算出又は更新されていないターゲットデータが存在する場合、類似度算出部１５１は、類似度算出処理を実行すると判定する。【０１４９】
類似度算出処理を実行すると判定された場合、分類サーバ１０１は、類似度算出処理を実行する（ステップＳ３０３）。類似度算出処理の詳細は、図１３を用いて説明する。分類サーバ１０１は、類似度算出処理が終了した後、ステップＳ３０２に戻り、同様の処理を実行する。【０１５０】
類似度算出処理を実行しないと判定された場合、分類サーバ１０１は、類似度算出結果情報６００に基づいて分類処理を実行する（ステップＳ３０４）。分類処理の詳細は、図１４を用いて説明する。【０１５１】
次に、分類サーバ１０１は、分類処理が終了した後、分類結果情報７００をユーザ等に対して出力し（ステップＳ３０５）、その後、処理を終了する。【０１５２】
ユーザは、分類結果情報７００を参照した結果、補正レベルを変更する必要があると判断した場合、補正レベル設定画面８００の補正レベル入力欄８３０の値を変更する。【０１５３】
学習サーバ１００は、新たな補正レベルが入力された場合、文字出現分布情報４００の全てのダミーデータのエントリの出現回数４０４を初期化する。その後、図１１に示すダミーデータの出現率算出処理を開始する。学習サーバ１００は、ダミーデータの出現率算出処理が終了した後、分類サーバ１０１に対してデータの分類要求を送信する。分類サーバ１０１は、データの分類要求を受信した場合、図１２に示す処理を再度実行する。これによって、新たな補正レベルに基づく分類結果が出力される。【０１５４】
図１３は、実施例１の分類サーバ１０１が実行する類似度算出処理の一例を説明するフローチャートである。【０１５５】
分類サーバ１０１は、処理を開始する前に、対象のデータ列を特定する。例えば、類似度算出部１５１は、分類対象データ管理情報５００を参照して、対象のデータ列を特定する。【０１５６】
分類サーバ１０１は、全ての対象のデータ列について処理が完了したか否かを判定する（ステップＳ４０１）。【０１５７】
具体的には、類似度算出部１５１は、類似度算出結果情報６００を参照し、全ての対象のデータ列について処理が完了したか否かを判定する。【０１５８】
全ての対象のデータ列について処理が完了したと判定された場合、分類サーバ１０１は、処理を終了する。【０１５９】
全ての対象のデータ列について処理が完了していないと判定された場合、分類サーバ１０１は、データ列を一つ選択する（ステップＳ４０２）。【０１６０】
次に、分類サーバ１０１は、選択されたデータ列に含まれる全てのセルについて処理が完了したか否かを判定する（ステップＳ４０３）。【０１６１】
具体的には、類似度算出部１５１は、類似度算出結果情報６００を参照して、選択されたデータ列の全てのセルについて類似度が算出されているか否かを判定する。【０１６２】
選択されたデータ列に含まれる全てのセルについて処理が完了したと判定された場合、分類サーバ１０１は、ステップＳ４０１に戻り、同様の処理を実行する。【０１６３】
選択されたデータ列に含まれる全てのセルについて処理が完了していないと判定された場合、分類サーバ１０１は、選択されたデータ列に含まれるセルの中からセルを一つ選択する（ステップＳ４０４）。【０１６４】
次に、分類サーバ１０１は、選択されたセルに格納されるターゲットデータに対して全てのデータ種別の類似度が算出されたか否かを判定する（ステップＳ４０５）。【０１６５】
具体的には、類似度算出部１５１は、類似度算出結果情報６００を参照して、全てのデータ種別に対応するエントリが存在するか否かを判定する。全てのデータ種別に対応するエントリが存在しない場合、選択されたセルに対して全てのデータ種別の類似度が算出されていないと判定する。【０１６６】
選択されたセルに対して全てのデータ種別の類似度が算出されたと判定された場合、分類サーバ１０１は、ステップＳ４０３に戻り、同様の処理を実行する。【０１６７】
選択されたセルに対して全てのデータ種別の類似度が算出されていないと判定された場合、分類サーバ１０１は、データ種別を一つ選択する（ステップＳ４０６）。【０１６８】
次に、分類サーバ１０１は、選択されたデータ種別に属する教師データの文字数と、選択されたセルに格納されるターゲットデータの文字数との差を算出する（ステップＳ４０７）。【０１６９】
具体的には、データ長差分算出部１６１が、選択されたデータ種別に属する教師データの文字数の最小値と、選択されたセルに格納されるターゲットデータの文字数との差を算出する。【０１７０】
次に、分類サーバ１０１は、補正レベル管理情報３００を参照して、ダミーデータの挿入場所及び挿入率を取得し（ステップＳ４０８）、また、挿入場所におけるダミーデータの挿入回数を算出する（ステップＳ４０９）。具体的には、以下のような処理が実行される。【０１７１】
ダミーデータ追加部１６２が、補正レベル管理情報３００を参照し、カテゴリ３０１が選択されたデータ種別と一致するエントリを検索する。ダミーデータ追加部１６２は、検索されたエントリの挿入位置３０３及び挿入率３０４を取得する。【０１７２】
ダミーデータ追加部１６２は、下式（４）を用いて、挿入位置３０３に追加するダミーデータの挿入回数を算出する。【０１７３】
【数４】
2017163342.tif 000006
【０１７４】
ここで、ＤＣｐは、挿入位置３０３に追加するダミーデータの挿入回数を表す変数である。Ｃｃ＿ｄｉｆｆは、ステップＳ４０７において算出された差分値を表す変数である。Ｒｃ＿Ｄは、ダミーデータの挿入率３０４を表す変数である。以上が、ステップＳ４０９の処理の説明である。【０１７５】
次に、分類サーバ１０１は、ダミーデータが挿入されたターゲットデータを類似度算出結果情報６００に登録する（ステップＳ４１０）。具体的には、以下のような処理が実行される。【０１７６】
ダミーデータ追加部１６２は、補正レベル管理情報３００を参照し、カテゴリ３０１が選択されたデータ種別に一致するエントリを検索する。ダミーデータ追加部１６２は、検索されたエントリの挿入位置３０３を取得する。【０１７７】
ダミーデータ追加部１６２は、挿入位置３０３に対応する位置に、挿入位置３０３に式（４）を用いて算出された数だけダミーデータを挿入し、挿入後データを生成する。例えば、挿入位置３０３が「ＴＡＩＬ」、ターゲットデータのデータ長が「３」、式（４）の値が「５」である場合、ダミーデータ追加部１６２は、ターゲットデータの末尾にダミーデータを二つ追加する。【０１７８】
ダミーデータ追加部１６２は、類似度算出結果情報６００にエントリを追加し、追加されたエントリのセル名６０１及びデータＩＤ６０２に選択されたセルの名称及び選択されたデータ列の識別情報を設定する。また、ダミーデータ追加部１６２は、挿入後データ６０３に、挿入後データを設定し、ターゲットカテゴリ６０４に選択されたデータ種別を設定する。以上がステップＳ４１０の処理の説明である。【０１７９】
次に、分類サーバ１０１は、挿入後データについて類似度を算出する（ステップＳ４１１）。【０１８０】
具体的には、類似度算出部１５１は、挿入後データ６０３から１文字を読み出す。類似度算出部１５１は、文字出現分布情報４００を参照し、カテゴリ４０１、文字４０２、及び位置４０３が、選択されたデータ種別、読み出された文字、及び読み出された文字の位置に一致するエントリを検索する。類似度算出部１５１は、検索されたエントリの出現率４０５を取得する。【０１８１】
類似度算出部１５１は、挿入後データ６０３の全ての文字について同様の処理を実行することによって、各文字の出現率４０５を取得する。類似度算出部１５１は、各文字の出現率４０５を掛け合わせることによって、類似度を算出する。類似度算出部１５１は、算出された類似度を類似度６０５に設定する。以上がステップＳ４１１の処理の説明である。【０１８２】
ダミーデータについても出現率が設定されているため、ダミーデータを追加された後の挿入後データの類似度を算出することができる。【０１８３】
図１４は、実施例１の分類サーバ１０１が実行する分類処理の一例を説明するフローチャートである。【０１８４】
分類サーバ１０１は、分類閾値を算出する（ステップＳ５０１）。具体的には、以下のような処理が実行される。【０１８５】
分類閾値算出部１５３は、データ種別毎に、教師データの最大文字数及び教師データの最小文字数の差を算出する。分類閾値算出部１５３は、各データ種別の文字数差を比較し、文字数差の最大値及び文字数差の最小値を特定する。【０１８６】
分類閾値算出部１５３は、文字数差の最大値及び文字数差の最小値の差を、分類閾値として算出し、データ分類部１５２に分類閾値を出力する。以上がステップＳ５０１の処理の説明である。【０１８７】
次に、分類サーバ１０１は、全てのターゲットデータを分類したか否かを判定する（ステップＳ５０２）。【０１８８】
具体的には、データ分類部１５２は、類似度算出結果情報６００及び分類結果情報７００を参照して、分類結果情報７００に分類結果が登録されていないターゲットデータが存在するか否かを判定する。分類結果情報７００に分類結果が登録されていないターゲットデータが存在する場合、データ分類部１５２は、全てのターゲットデータを分類していないと判定する。【０１８９】
全てのターゲットデータを分類したと判定された場合、分類サーバ１０１は、処理を終了する。【０１９０】
全てのターゲットデータを分類していないと判定された場合、分類サーバ１０１は、ターゲットデータを一つ選択する（ステップＳ５０３）。【０１９１】
具体的には、データ分類部１５２は、類似度算出結果情報６００を参照して、分類されていないターゲットデータの中から、ターゲットデータを一つ選択する。【０１９２】
次に、分類サーバ１０１は、類似度算出結果情報６００から、ターゲットデータの類似度の最大値及び最小値を取得する（ステップＳ５０４）。【０１９３】
具体的には、データ分類部１５２は、類似度算出結果情報６００の選択されたターゲットデータのエントリの類似度６０５を参照して、ターゲットデータの類似度の最大値及び最小値を取得する。【０１９４】
次に、分類サーバ１０１は、類似度及び分類閾値を用いて、類似度に基づく分類が可能であるか否かを判定する（ステップＳ５０５）。すなわち、意味のあるターゲットデータの分類ができるか否かが判定される。【０１９５】
具体的には、データ分類部１５２は、下式（５）を満たすか否かを判定する。式（５）を満たす場合、データ分類部１５２は、類似度に基づく分類が可能であると判定する。【０１９６】
【数５】
2017163342.tif 000007
【０１９７】
ここで、Ｓ＿ｈは、ターゲットデータの類似度の最大値を表す変数であり、Ｓ＿ｌは、ターゲットデータの類似度の最小値を表す変数である。また、Ｔｈｒｅｓｈｏｌｄは、分類閾値を表す変数である。【０１９８】
類似度に基づく分類が可能であると判定された場合、分類サーバ１０１は、分類結果情報７００に類似度が最大となるデータ種別を登録する（ステップＳ５０６）。その後、分類サーバ１０１は、ステップＳ５０２に戻り、同様の処理を実行する。具体的には、以下のような処理が実行される。【０１９９】
データ分類部１５２が、類似度６０５が最大となるエントリのターゲットカテゴリ６０４をターゲットデータのデータ種別に決定する。データ分類部１５２は、当該エントリのターゲットカテゴリ６０４を取得する。データ分類部１５２は、分類結果情報７００にエントリを追加し、追加されたエントリのデータＩＤ７０１及びセル名７０２に、当該エントリのデータＩＤ６０２及びセル名６０１を設定する。【０２００】
また、データ分類部１５２は、追加されたエントリのデータ７０３にターゲットデータの値を設定し、また、ターゲットカテゴリ６０４の値を追加されたエントリの分類結果７０４に設定する。以上がステップＳ５０６の処理の説明である。【０２０１】
類似度に基づく分類が可能でないと判定された場合、分類サーバ１０１は、分類結果情報７００に「ｎ／ａ」を登録する（ステップＳ５０７）。その後、分類サーバ１０１は、ステップＳ５０２に戻り、同様の処理を実行する。【０２０２】
ステップＳ５０７の処理はステップＳ５０６の処理と同一である。ただし、分類結果７０４には「ｎ／ａ」が登録される。【０２０３】
分類サーバ１０１は、データ列及びセル名の全ての組合せに対して前述した処理を実行する。これによって、図７に示すような分類結果情報７００が生成される。【０２０４】
なお、式（１）から式（５）までの数式は一例であって、本実施例はこれに限定されない。各データ種別の教師データの長さに関連する数式であればよい。【０２０５】
以上で説明したように、学習サーバ１００は、データ種別に応じてターゲットデータに挿入されるダミーデータの出現率を設定した文字出現分布情報４００を生成する。また、分類サーバ１０１は、データ種別に応じてターゲットデータのデータ長を調整し、文字出現分布情報４００を用いて、ダミーデータが追加されたターゲットデータと教師データとの間の類似度を算出する。これによって、従来技術では分類が困難なＩＤ等の文字列のデータ種別を分類することができる。【０２０６】
特に、属性が定まっていないセルを含むデータ列を用いた分析を行う場合、本発明を適応することによって、効率的にセルに格納されるターゲットデータのデータ種別を分類できる。そのため、データの理解等に要する時間を大幅に端出することができる。【０２０７】
（変形例）
データ列の全てのセルのデータを分類するために、実施例１の分類手法と、従来の分類手法とを組み合わせることができる。例えば、以下のような方法が考えられる。【０２０８】
データ分類部１５２は、データ列を選択し、選択されたデータ列の全てのターゲットデータを分類できたか否かを判定する。具体的には、データ分類部１５２は、分類結果情報７００の分類結果７０４を参照し、分類結果７０４が「ｎ／ａ」である文字列データが存在するか否かを判定する。【０２０９】
分類結果７０４が「ｎ／ａ」である文字列データが存在する場合、データ分類部１５２は、選択されたデータ列の全ての文字列データを分類できていないと判定する。【０２１０】
選択されたデータ列の全ての文字列データを分類できていないと判定された場合、データ分類部１５２は、分類結果７０４が「ｎ／ａ」である文字列データを抽出し、抽出された文字列データに対して従来の分類手法を適応する。【０２１１】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。【０２１２】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。【０２１３】
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、Ｃ／Ｃ＋＋、ｐｅｒｌ、Ｓｈｅｌｌ、ＰＨＰ、Ｊａｖａ等の広範囲のプログラム又はスクリプト言語で実装できる。【０２１４】
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。【０２１５】
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
【図１】
2017163342.tif 000008
【図２】
2017163342.tif 000009
【図３】
2017163342.tif 000010
【図４】
2017163342.tif 000011
【図５】
2017163342.tif 000012
【図６】
2017163342.tif 000013
【図７】
2017163342.tif 000014
【図８】
2017163342.tif 000015
【図９】
2017163342.tif 000016
【図１０】
2017163342.tif 000017
【図１１】
2017163342.tif 000018
【図１２】
2017163342.tif 000019
【図１３】
2017163342.tif 000020
【図１４】
2017163342.tif 000021
【手続補正書】
【提出日】平成30年7月9日(2018.7.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の計算機を備える計算機システムであって、
前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続される主記憶装置、及び前記プロセッサに接続されるインタフェースを有し、
前記少なくとも一つの計算機は、複数のデータ種別の各々に属する複数の教師データを用いて、ターゲットデータのデータ種別の分類に用いられる指標を算出するための分布情報を生成し、前記分布情報を用いて前記ターゲットデータのデータ種別を分類する分類部を有する計算機に当該分布情報を出力する学習部を有し、
前記複数の教師データの各々は、一つ以上の文字から構成される文字列であり、
前記学習部は、
前記複数のデータ種別の各々に属する前記複数の教師データを用いた学習処理を実行することによって、前記データ種別、前記データ種別に属する前記複数の教師データの各々に含まれる文字、及び当該文字の文字列中の出現位置を含む複数の第１エントリを前記分布情報に追加し、
前記データ種別、前記ターゲットデータのデータ長を調整するために追加されるダミーデータ、及び当該ダミーデータの文字列中の出現位置を含む所定の数の第２エントリを前記分布情報に追加し、
前記第１エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第１エントリに含まれる前記出現位置に前記第１エントリに含まれる前記文字が出現する確率を表す第１確率を算出し、
前記第２エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第２エントリに含まれる前記出現位置に前記第２エントリに含まれる前記ダミーデータが出現する確率を表す第２確率を算出し、
前記複数の第１エントリの各々に前記第１確率を設定し、前記所定の数の第２エントリの各々に前記第２確率を設定することを特徴とする計算機システム。
【請求項２】
請求項１に記載の計算機システムであって、
前記学習部は、
前記複数のデータ種別毎に、同一の前記データ種別に属する前記複数の教師データのデータ長のばらつきを示す第１レンジを算出し、
前記複数のデータ種別の各々の前記第１レンジに基づいて、前記ダミーデータに関連する値を補正するための補正レベルを算出し、
前記第１エントリに含まれる前記出現位置に前記第１エントリに含まれる前記文字が出現する回数を表す第１出現回数を算出し、
前記第２エントリに含まれる前記出現位置に前記第２エントリに含まれる前記ダミーデータが出現する回数を表す第２出現回数を算出し、
前記第１エントリに含まれる前記データ種別の前記補正レベル、前記第１エントリに含まれる前記データ種別の前記第１レンジ、及び前記第１出現回数に基づいて、前記第１確率を算出し、
前記第２エントリに含まれる前記データ種別の前記補正レベル、前記第２エントリに含まれる前記データ種別の前記第１レンジ、及び前記第２出現回数に基づいて、前記第２確率を算出することを特徴とする計算機システム。
【請求項３】
請求項２に記載の計算機システムであって、
前記少なくとも一つの計算機は、前記分類部を有し、
前記指標は、前記ダミーデータが追加されたターゲットデータと、任意のデータ種別に属する前記複数の教師データとの間の類似度であり、
前記分類部は、
前記データ種別を選択し、
前記選択されたデータ種別に属する前記複数の教師データのデータ長の最小値と、前記ターゲットデータのデータ長との差である第１差分に基づいて、前記ダミーデータの挿入数を算出し、
前記ターゲットデータの所定の位置に、前記挿入数だけ前記ダミーデータを追加し、
前記分布情報を参照して、前記ダミーデータが追加されたターゲットデータに含まれる前記文字及び前記文字の位置に基づいて、前記第１確率及び前記第２確率を取得し、
前記第１確率及び前記第２確率を用いて前記類似度を算出することを特徴とする計算機システム。
【請求項４】
請求項３に記載の計算機システムであって、
前記分類部は、
前記複数のデータ種別の各々の前記複数の教師データのデータ長と、前記ターゲットデータのデータ長との間の差分を用いて、閾値を算出し、
前記複数のデータ種別の各々の前記類似度の大きさを比較することによって、前記類似度の最大値及び前記類似度の最小値を特定し、
前記閾値、前記類似度の最大値、及び前記類似度の最小値を用いて、前記類似度に基づいて前記ターゲットデータのデータ種別を分類できるか否かを判定し、
前記類似度に基づいて前記ターゲットデータのデータ種別を分類できると判定された場合、前記類似度が最も大きい前記データ種別を、前記ターゲットデータのデータ種別に決定することを特徴とする計算機システム。
【請求項５】
複数の計算機を備える計算機システムにおけるデータの分類方法であって、
前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続される主記憶装置、及び前記プロセッサに接続されるインタフェースを有し、
前記少なくとも一つの計算機は、複数のデータ種別の各々に属する複数の教師データを用いて、ターゲットデータのデータ種別の分類に用いられる指標を算出するための分布情報を生成し、前記分布情報を用いて前記ターゲットデータのデータ種別を分類する分類部を有する計算機に当該分布情報を出力する学習部を有し、
前記複数の教師データの各々は、一つ以上の文字から構成される文字列であり、
前記データの分類方法は、
前記学習部が、前記複数のデータ種別の各々に属する前記複数の教師データを用いた学習処理を実行することによって、前記データ種別、前記データ種別に属する前記複数の教師データの各々に含まれる文字、及び当該文字の文字列中の出現位置を含む複数の第１エントリを前記分布情報に追加する第１のステップと、
前記学習部が、前記データ種別、前記ターゲットデータのデータ長を調整するために追加されるダミーデータ、及び当該ダミーデータの文字列中の出現位置を含む所定の数の第２エントリを前記分布情報に追加する第２のステップと、
前記学習部が、前記第１エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第１エントリに含まれる前記出現位置に前記第１エントリに含まれる前記文字が出現する確率を表す第１確率を算出する第３のステップと、
前記学習部が、前記第２エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第２エントリに含まれる前記出現位置に前記第２エントリに含まれる前記ダミーデータが出現する確率を表す第２確率を算出する第４のステップと、
前記学習部が、前記複数の第１エントリの各々に前記第１確率を設定し、前記所定の数の第２エントリの各々に前記第２確率を設定する第５のステップと、を含むことを特徴とするデータの分類方法。
【請求項６】
請求項５に記載のデータの分類方法であって、
前記データの分類方法は、
前記学習部が、前記第２のステップの実行後、前記複数のデータ種別毎に、同一の前記データ種別に属する前記複数の教師データのデータ長のばらつきを示す第１レンジを算出するステップと、
前記学習部が、前記複数のデータ種別の各々の前記第１レンジに基づいて、前記ダミーデータに関連する値を補正するための補正レベルを算出するステップと、を含み、
前記第１のステップは、前記学習部が、前記第１エントリに含まれる前記出現位置に前記第１エントリに含まれる前記文字が出現する回数を表す第１出現回数を算出するステップを含み、
前記第２のステップは、前記学習部が、前記第２エントリに含まれる前記出現位置に前記第２エントリに含まれる前記ダミーデータが出現する回数を表す第２出現回数を算出するステップを含み、
前記第３のステップは、前記学習部が、前記第１エントリに含まれる前記データ種別の前記補正レベル、前記第１エントリに含まれる前記データ種別の前記第１レンジ、及び前記第１出現回数に基づいて、前記第１確率を算出するステップを含み、
前記第４のステップは、前記学習部が、前記第２エントリに含まれる前記データ種別の前記補正レベル、前記第２エントリに含まれる前記データ種別の前記第１レンジ、及び前記第２出現回数に基づいて、前記第２確率を算出するステップを含むことを特徴とするデータの分類方法。
【請求項７】
請求項６に記載のデータの分類方法であって、
前記少なくとも一つの計算機は、前記分類部を有し、
前記指標は、前記ダミーデータが追加されたターゲットデータと、任意のデータ種別に属する前記複数の教師データとの間の類似度であり、
前記データの分類方法は、
前記分類部が、前記データ種別を選択するステップと、
前記分類部が、前記選択されたデータ種別に属する前記複数の教師データのデータ長の最小値と、前記ターゲットデータのデータ長との差である第１差分に基づいて、前記ダミーデータの挿入数を算出するステップと、
前記分類部が、前記ターゲットデータの所定の位置に、前記挿入数だけ前記ダミーデータを追加するステップと、
前記分類部が、前記分布情報を参照して、前記ダミーデータが追加されたターゲットデータに含まれる前記文字及び前記文字の位置に基づいて、前記第１確率及び前記第２確率を取得するステップと、
前記分類部が、前記第１確率及び前記第２確率を用いて前記類似度を算出するステップと、を含むことを特徴とするデータの分類方法。
【請求項８】
請求項７に記載のデータの分類方法であって、
前記分類部が、前記複数のデータ種別の各々の前記複数の教師データのデータ長と、前記ターゲットデータのデータ長との間の差分を用いて、閾値を算出するステップと、
前記分類部が、前記複数のデータ種別の各々の前記類似度の大きさを比較することによって、前記類似度の最大値及び前記類似度の最小値を特定するステップと、
前記分類部が、前記閾値、前記類似度の最大値、及び前記類似度の最小値を用いて、前記類似度に基づいて前記ターゲットデータのデータ種別を分類できるか否かを判定するステップと、
前記分類部が、前記類似度に基づいて前記ターゲットデータのデータ種別を分類できると判定された場合、前記類似度が最も大きい前記データ種別を、前記ターゲットデータのデータ種別に決定するステップと、を含むことを特徴とするデータの分類方法。
【請求項９】
複数の計算機を備える計算機システムであって、
前記複数の計算機の各々は、プロセッサ、前記プロセッサに接続される主記憶装置、及び前記プロセッサに接続されるインタフェースを有し、
前記少なくとも一つの計算機は、ターゲットデータのデータ種別の分類に用いられる指標を算出するための分布情報を用いて前記ターゲットデータのデータ種別を分類する分類部を有し、
前記複数の教師データの各々は、一つ以上の文字から構成される文字列であり、
前記分布情報は、
前記データ種別、前記データ種別に属する前記複数の教師データの各々に含まれる文字、当該文字の文字列中の出現位置、及び当該文字が前記出現位置に出現する確率を表す第１確率を含む複数の第１エントリと、
前記データ種別、前記ターゲットデータのデータ長を調整するために追加されるダミーデータ、当該ダミーデータの文字列中の出現位置、及び当該ダミーデータが前記出現位置に出現する確率を表す第２確率を含む所定の数の第２エントリと、を含み、
前記分類部は、
前記データ種別を選択し、
前記選択されたデータ種別に属する前記複数の教師データのデータ長の最小値と、前記ターゲットデータのデータ長との差である第１差分に基づいて、前記ダミーデータの挿入数を算出し、
前記ターゲットデータの所定の位置に、前記挿入数だけ前記ダミーデータを追加し、
前記分布情報を参照して、前記ダミーデータが追加されたターゲットデータに含まれる前記文字及び前記文字の位置に基づいて、前記第１確率及び前記第２確率を取得し、
前記第１確率及び前記第２確率を用いて前記指標を算出することを特徴とする計算機システム。
【請求項１０】
請求項９に記載の計算機システムであって、
前記指標は、前記ダミーデータが追加されたターゲットデータと、任意のデータ種別に属する前記複数の教師データとの間の類似度であり、
前記分類部は、
前記複数のデータ種別の各々の前記複数の教師データのデータ長と、前記ターゲットデータのデータ長との間の差分を用いて、閾値を算出し、
前記複数のデータ種別の各々の前記類似度の大きさを比較することによって、前記類似度の最大値及び前記類似度の最小値を特定し、
前記閾値、前記類似度の最大値、及び前記類似度の最小値を用いて、前記類似度に基づいて前記ターゲットデータのデータ種別を分類できるか否かを判定し、
前記類似度に基づいて前記ターゲットデータのデータ種別を分類できると判定された場合、前記類似度が最も大きい前記データ種別を、前記ターゲットデータのデータ種別に決定することを特徴とする計算機システム。
【請求項１１】
請求項９に記載の計算機システムであって、
前記少なくとも一つの計算機は、前記分布情報を生成する学習部を有し、
前記学習部は、
前記複数のデータ種別の各々に属する前記複数の教師データを用いた学習処理を実行することによって、前記データ種別、前記データ種別に属する前記複数の教師データの各々に含まれる前記文字、及び当該文字の文字列中の出現位置を含む前記複数の第１エントリを前記分布情報に追加し、
前記データ種別、前記ダミーデータ、及び当該ダミーデータの文字列中の出現位置を含む所定の数の前記第２エントリを前記分布情報に追加し、
前記第１エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第１確率を算出し、
前記第２エントリに含まれる前記データ種別に属する前記複数の教師データのデータ長に基づいて、前記第２確率を算出し、
前記複数の第１エントリの各々に前記第１確率を設定し、前記所定の数の第２エントリの各々に前記第２確率を設定することを特徴とする計算機システム。
【請求項１２】
請求項１１に記載の計算機システムであって、
前記学習部は、
前記複数のデータ種別毎に、同一の前記データ種別に属する前記複数の教師データのデータ長のばらつきを示す第１レンジを算出し、
前記複数のデータ種別の各々の前記第１レンジに基づいて、前記ダミーデータに関連する値を補正するための補正レベルを算出し、
前記第１エントリに含まれる前記出現位置に前記第１エントリに含まれる前記文字が出現する回数を表す第１出現回数を算出し、
前記第２エントリに含まれる前記出現位置に前記第２エントリに含まれる前記ダミーデータが出現する回数を表す第２出現回数を算出し、
前記第１エントリに含まれる前記データ種別の前記補正レベル、前記第１エントリに含まれる前記データ種別の前記第１レンジ、及び前記第１出現回数に基づいて、前記第１確率を算出し、
前記第２エントリに含まれる前記データ種別の前記補正レベル、前記第２エントリに含まれる前記データ種別の前記第１レンジ、及び前記第２出現回数に基づいて、前記第２確率を算出することを特徴とする計算機システム。
【手続補正２】
【補正対象書類名】図面
【補正対象項目名】図１
【補正方法】変更
【補正の内容】
【図１】
2017163342.tif 000022
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図３
【補正方法】変更
【補正の内容】
【図３】
2017163342.tif 000023
【手続補正４】
【補正対象書類名】図面
【補正対象項目名】図１１
【補正方法】変更
【補正の内容】
【図１１】
2017163342.tif 000024
【国際調査報告】
2017163342.tif 000025
2017163342.tif 000026