(57)【特許請求の範囲】
【請求項１】
複数項目の値を含む複数のレコードから成る元データを入力とし、該複数の項目から選択した複数項目を説明変数として設定すると共に該説明変数を除く他の項目から選択した項目を目的変数として設定し、前記説明変数の組み合わせに対する目的変数への予測が可能か否かを判定するコンピュータを含む予測不可データ判定システムであって、
前記コンピュータが、
前記説明変数の項目値の組み合わせと同一の組合せを持つレコードの数を目的変数の項目値ごとにレコード数として計数する第１工程と、
該計数したレコード数を用いて、説明変数の値の組合せごとに目的変数の値への集中度を算出する第２工程と、
該第２工程により算出した説明変数の値の組合せ及び集中度を出力する第３工程と、
を実行する予測不可データ判定システム。
【請求項２】
前記コンピュータが、
前記元データに含まれる複数項目の値が連続した連続値のとき、該連続値を所定の値範囲により離散した離散値に変更し、該離散値を説明変数及び又は目的変数の項目値として設定する第４工程を、
実行する請求項１に記載の予測不可データ判定システム。
【請求項３】
前記コンピュータが、
予め前記集中度の下限値を設定する閾値を入力とし、
前記第３工程において、算出した集中度のうち、前記閾値以上の集中度を含む前記第２工程による説明変数の値の組合せを出力する請求項１又は２に記載の予測不可データ判定システム。
【請求項４】
前記コンピュータが、前記第３工程により算出した集中度を出力した後、
前記説明変数の設定と該説明変数を除く目的変数として設定を再設定する指示が入力されたか否かを判定し、再設定の指示が入力されたと判定したとき、前記説明変数の設定と該説明変数を除く目的変数の再設定とを許可する第５工程を、
実行する請求項１から３の何れか１項に記載の予測不可データ判定システム。
【請求項５】
前記コンピュータが、
前記第２工程において、前記目的変数の値ごとのレコードの数をカウンタとして算出し、前記目的変数のすべての値のカウンタの合計を分母として、当該の目的変数のカウンタを分子とした値に基づいて集中度を算出する請求項１から４の何れか１項に記載の予測不可データ判定システム。
【請求項６】
前記コンピュータが、
前記第２工程において、前記説明変数の値の組合せごとに、前記同一の目的変数項目値になる割合を示す値である生起確率で重み付き平均した情報量を集中度として算出する請求項１から４の何れか１項に記載の予測不可データ判定システム。
【請求項７】
前記コンピュータが、
前記入力した元データに含まれる変数の全ての値の種類を予め抽出することで、項目値の値の組合せを生成する請求項１から６の何れか１項に記載の予測不可データ判定システム。
【請求項８】
複数項目の値を含む複数のレコードから成る元データを入力とし、該複数の項目から選択した複数項目を説明変数として設定すると共に該説明変数を除く他の項目から選択した項目を目的変数として設定し、前記説明変数の組み合わせに対する目的変数への予測が可能か否かをコンピュータに判定させる予測不可データ判定方法であって、
前記コンピュータに、
前記説明変数の項目値の組み合わせと同一の組合せを持つレコードの数を目的変数の項目値ごとにレコード数として計数する第１工程と、
該計数したレコード数を用いて、説明変数の値の組合せごとに目的変数の値への集中度を算出する第２工程と、
該第２工程により算出した説明変数の値の組合せ及び集中度を出力する第３工程と、
を実行させる予測不可データ判定方法。
【請求項９】
前記コンピュータに、
前記元データに含まれる複数項目の値が連続した連続値のとき、該連続値を所定の値範囲により離散した離散値に変更し、該離散値を説明変数及び又は目的変数の項目値として設定する第４工程を実行させる請求項８に記載の予測不可データ判定方法。
【請求項１０】
前記コンピュータに、
予め前記集中度の下限値を設定する閾値を入力させ、
前記第３工程において、算出した集中度のうち、前記閾値以上の集中度を含む前記第２工程による説明変数の値の組合せを出力させる請求項８又は９に記載の予測不可データ判定方法。
【請求項１１】
前記コンピュータに、前記第３工程により算出した集中度を出力した後、
前記説明変数の設定と該説明変数を除く目的変数として設定を再設定する指示が入力されたか否かを判定させ、再設定の指示が入力されたと判定したとき、前記説明変数の設定と該説明変数を除く目的変数の再設定とを許可させる第５工程を、
実行させる請求項８から１０の何れか１項に記載の予測不可データ判定方法。
【請求項１２】
前記コンピュータに、
前記第２工程において、前記目的変数の値ごとのレコードの数をカウンタとして算出し、前記目的変数のすべての値のカウンタの合計を分母として、当該の目的変数のカウンタを分子とした値に基づいて集中度を算出させる請求項８から１１の何れか１項に記載の予測不可データ判定方法。
【請求項１３】
前記コンピュータに、
前記第２工程において、前記説明変数の値の組合せごとに、前記同一の目的変数項目値になる割合を示す値である生起確率で重み付き平均した情報量を集中度として算出させる請求項８から１１の何れか１項に記載の予測不可データ判定方法。
【請求項１４】
前記コンピュータに、
前記入力した元データに含まれる変数の全ての値の種類を予め抽出することで、項目値の値の組合せを生成させる請求項８から１３の何れか１項に記載の予測不可データ判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、膨大なデータに基づいて未知データや欠損データの予測や推定を行うコンピータシステムにおいて、予測や推定に不向きなデータを判定することができる予測不可データ判定システム及び予測不可データ判定方法に関する。
【背景技術】
【０００２】
近年、ＩｏＴ（Ｉｎｔｅｒｎｅｔ  ｏｆ  Ｔｈｉｎｇｓ）による情報処理技術が進展し、巨大で複雑なデータ集合の集積物であるビッグデータを解析し、新たな価値を生み出そうとする動きがあり、統計やデータマイニング等の数理技術が盛んに用いられてきている。
【０００３】
このような多数のデータを解析して有用な情報を抽出する従来技術は、統計やデータマイニングに採用され、例えば、回帰分析や判別分析のようないくつかの分析モデルを挙げることができる。
【０００４】
この多数データを解析して有用情報を抽出する技術を記載した文献としては下記の非特許文献及び特許文献が挙げられる。この非特許文献１には「訓練データを使って判別ルールを作り、テストデータにもとづきルールの良さを評価する」という記載がある。特許文献１には「予測または分析の対象となる現象を、前記現象に寄与する因子に対応する説明変数を用いた回帰方程式の目的変数として表したデータであるモデルを使って前記現象の予測または分析を行う」という記載がある。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】吉田  亮、多変量データ解析と時系列解析、ＰＰ．３２−３４ｈｔｔｐ：／／ｄａｗｅｂ．ｉｓｍ．ａｃ．ｊｐ／〜ｙｏｓｈｉｄａｒ／ｋｏｕｚａ２０１１１０／Ｌｅｃｔｕｒｅ＿ＩＳＭ＿ＭＶ−ＴＳ＿２０１１１０２１．ｐｐｔｘ
【特許文献】
【０００６】
【特許文献１】特開２００９−８６７０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
前述の非特許文献１に記載された技術は、判別ルールの良さを評価することができる効果に留まり、特許文献１に記載された技術は、モデルの因子に関する情報を蓄積し、モデルの予測精度を向上する効果に留まる。
【０００８】
そこで、本発明では、予測や推定の分析モデルを作成することなく、元データが予測や推定に不向きなデータか否かを判定することができる予測不可データ判定システム及び予測不可データ判定方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明による予測不可データ判定システム及び予測不可データ判定方法は、コンピュータが、複数項目の値を含む複数のレコードから成る元データを入力とし、該複数の項目から選択した複数項目を説明変数として設定すると共に該説明変数を除く他の項目から選択した項目を目的変数として設定し、前記説明変数の項目値の組み合わせと同一の組合せを持つレコードの数を目的変数の項目値ごとにレコード数として計数し、該計数したレコード数を用いて、説明変数の値の組合せごとに目的変数の値への集中度を算出し、該算出した集中度を出力する。
【発明の効果】
【００１０】
本発明による予測不可データ判定システム及び予測不可データ判定方法は、予測や推定の分析モデルを作成することなく、元データが予測や推定に不向きなデータか否かを判定することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１実施例による予測不可データ判定システムの構成を示す図である。
【図２】第１実施例による入力データの例を示す図である。
【図３】第１実施例による入力空間のイメージを示す図である。
【図４】第１実施例による出力データの例を示す図である。
【図５】第１実施例による処理のフローチャートである。
【図６】第１実施例による初期設定操作を説明するための図である。
【図７】第１実施例による空間分割操作を説明するための図である。
【図８】第１実施例による対応表の例を示す図である。
【図９】第１実施例による入力データのうちの１レコードの例を示す図である。
【図１０】第１実施例による出力を示す図である。
【図１１】本発明の第２実施例による離散化設定を示す図である。
【図１２】本発明の第４実施例による処理のフローチャートである。
【図１３】本発明の第５実施例による集中度算出式を示す図である。
【図１４】第１実施例による空間データを二次元テーブルとして示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明による実施例を説明する。
【実施例１】
【００１３】
［構成］
本発明の第１の実施例による予測不可データ判定システム１０１は、図１に示す如く、次に述べる入力装置１０２と空間分割装置１０３とレコード計数装置１０４と集中度検出装置１０５と出力装置１０６と記憶装置１０７と処理装置１０８とがバス１１９を介して相互接続して構成される。
【００１４】
入力装置１０２：
この入力装置１０２は、複数の項目を含む元データや処理パラメータを外部から入力するための機器であって、例えば、キーボード・マウス等の入力機器やネットワーク接続機器である。
【００１５】
記憶装置１０７：
この記憶装置１０７は、記憶（メモリ）領域毎に少なくとも、入力データ１０９と、出力データ１１０と、フラグ１１１と、カウンタ１１２と、対応表１１３とを記憶する。前記入力データ１０９は入力装置１０２を介して記憶装置１０７に取り込まれて格納され、例えば、図２に示す如く、入手した各データに一意に付与されたＩＤ（識別子）ごとに、データの属性（項目）として、性別と、住所と、年代と、結婚有無と、子供有無と、商品Ａ購買有無の各項目情報を１個人毎間に１レコードとして格納する。前記出力データ１１０とフラグ１１１とカウンタ１１２と対応表１１３は後述する。
【００１６】
空間分割装置１０３：
この空間分割装置１０３は、データ属性を空間内の軸として表す説明変数を用いて張る多次元空間を有限の空間に排他的かつ網羅的に分割するためのものであり、この多次元空間を図３を用いて説明する。なお、本説明では、図示可能な関係上、説明変数を「性別」と「年代」と「結婚有無」の３軸としている。
【００１７】
この多次元空間は、説明変数に複数種類の値が含まれるため、図３に示す如く、年代をＹ軸、性別をＸ軸、結婚をＺ軸とした三次元空間として表され、各データを組み合わせた数だけの小さな立方体に分割することができることを示している。
【００１８】
本図における三次元空間は、図３に示す小立方体の一つが、例えば、「性別＝男」ａｎｄ「年代＝２０代」ａｎｄ「結婚＝未婚」という値の組合せを示している。この小さな立方体一つに対応して、フラグ１１１と、カウンタ１１２が目的変数の値の数だけ記憶装置１０７に格納される。
【００１９】
理解を容易にするために前記立方体を形成するための空間データの二次元テーブルとして表した場合、図１４に示す如く、多次元空間アドレス毎にフラグとデータ（例えば、年代・性別・結婚有無の３種）と集中度の３項目を設定すると表すことができる。なお、図中の集中度は、フラグが１のみのものにつけられ、フラグが０のものは分母が０になるため、「−」として描いている。
【００２０】
レコード計数装置１０４：
このレコード計数装置１０４は、入力データ１０９を読み込み、各レコードに対応するフラグとカウンタを更新する機能を有する。
【００２１】
集中度検出装置１０５：
この集中度検出装置１０５は、レコード計数装置１０４にて全レコードを読み終わって更新がなされたフラグ１１１とカウンタ１１２を読み込み、入力データの目的変数を予測可能か否かに関する情報を生成して出力データ１１０に書き込む機能を有する。
【００２２】
この出力データ１１０は、例えば、図４に示す如き表形式のデータであり、図示の例では、性別、年代、結婚有無、集中度、商品Ａ購買有、商品Ｂ購買無の各項目情報が設定され、各データは、１レコード毎に性別と年代と結婚の各項目の組合せに対応する、集中度と購買有と購買無が格納されており、レコード単位で集中度の高い降順にソートされている。
【００２３】
この出力データ１１０は、性別と年代と結婚がキーとなっており、これらの組合せが異なれば、別データとなる。本実施例においては、性別・年代・結婚有無の３つのデータ属性が、入力データ１０９の項目から説明変数として選ばれた項目であり、集中度は処理の中で生成される項目であり、商品Ａ購買有及び商品Ａ購買無は目的変数である。すなわち、本例においては、データに含まれる複数のデータ属性（項目）の中からデータ解析の条件として任意に選択されたデータ属性（項目）を本実施例においては説明変数と呼ぶ。また、本例においては、データに含まれる複数のデータ属性（項目）の中からデータ解析の目的として任意に選択されたデータ属性（項目）を目的変数と呼ぶ。
【００２４】
出力装置１０６：
この出力装置１０６は、出力データ１１０を外部に出力する一般的な装置であって、例えば、コンピュータのディスプレイ・プリンタ・ネットワーク接続機器等である。
【００２５】
処理装置１０８：
この処理装置１０８は、本実施例による予測不可データ判定システム１０１の処理を制御する制御装置であって、例えば、コンピュータのＣＰＵ、メモリ、ＯＳなどで構成される。
【００２６】
バス１１９：
このは、バス１１９は、前述した複数の装置間を接続してデータ転送を行うためのバスまたはネットワーク機器である。
【００２７】
［動作］
さて、このように構成された予測不可データ判定システムは、図５に示す各ステップを処理装置１０８が実行することによって、入力データが予測や推定に不向か否かを判定する。
【００２８】
ステップｓ５０１：
処理装置１０８が、分析対象となる元データを入力装置１０２を用いて入力し、記憶装置１０７に図２に示した入力データ１０９として格納するステップ。
【００２９】
ステップｓ５０２：
処理装置１０８が、入力データ１０９の初期設定を行うステップ。この初期設定とは、本実施例の場合、入力データ１０９から複数の項目（図２に示した性別と年代と結婚と商品Ａ購入）を取出し、この中から１個以上の説明変数（例えば、性別と年代と結婚のデータ属性）及び１個の目的変数（予測したいデータ属性。例えば、商品Ａを購入した顧客の性別・年代・結婚有無の組み合わせの場合、商品Ａの購入）を決定し、さらに、目的変数の値の数と種類を設定し、出力の際の項目名を設定して記憶装置１０７に格納する。
【００３０】
［説明変数及び目的変数の設定詳細］
この説明変数と目的変数の設定は、ユーザが任意に設定することができ、この説明変数及び目的変数の設定処理を図６を用いて説明する。図６に示したディスプレイ６０１は出力装置１０６の一部であり、キーボード６０２とマウス６０３は入力装置１０２の一部であり、他の画面でも同様である。
【００３１】
この処理は、図６に示す如く、ディスプレイ６０１に初期設定画面６０４を表示する。この初期設定画面６０４は、読み込んだ元データに含まれる複数の属性データを列挙したデータ属性列挙欄６０５と、この複数のデータ属性の中から判定の目的とするデータ属性である目的変数をマウスカーソル６１２等によりラジオボタンを用いて選択させるための目的データ属性選択欄６０６と、該目的変数に対して判定対象とする複数のデータ属性である説明変数をチェックボックスを用いて選択させるための説明データ属性選択欄６０７とを上段に表示している。
【００３２】
図６上段に示した例は、読み込んだ元データに含まれるデータ属性がデータ属性列挙欄６０５に「ＩＤ、性別、住所、年代、結婚、子供有無、商品Ａ購買有無」として表示され、目的データ属性選択欄６０６から目的変数として「商品Ａ購入有無」がラジオボタンにより選択され、説明データ属性選択欄６０７から説明変数としてチェックボックスにより「性別・年代・結婚」が入力空間として選択されている。すなわち、図６に示した例においては、元データにおけるデータ属性（説明変数）として「性別・年代・結婚」を選択し、このデータ属性（説明変数）の組み合わせによりどの組み合わせの消費者が「商品Ａ」を購入したかを判定するように設定している。
【００３３】
図６の下段の初期設定画面は、目的変数の値（本例では、購入有無の２）の個数入力欄６０８と、該目的変数の値だけ目的変数の値と変数名の入力行がその下に表示され入力できる変数名欄６０９及び６１０（本例では購入有・購入無）が表示されている。この変数名は、後に出力データ１１０を作成するときに用いられる。さらに初期設定画面の最下段には、上述の入力条件をユーザが承認するためのＯＫボタン６１１が表示されている。
【００３４】
これら図６に示した目的変数値及びインデクスは、記憶装置１０７の対応表１１３に図８（ｄ）に示す如く記憶される。この図８（ｄ）の例では、「有」の値はインデクス「１」に、「無」の値がインデクス「２」に紐づけられている。このインデクスの値は、後述する計数処理のステップｓ５０５においてカウンタ１１２の更新の際にインデクスとして用いる。
【００３５】
また、本ステップにおいては、判定条件として設定した説明変数及び目的変数を本システム内で扱うときのインデクスをここで項目名とインデクスの対応表として記憶装置に格納する。その例を図８（ｅ）に示す。最終行が目的変数を表し、その前の行が説明変数を表す。ここでは、性別と年代と結婚が説明変数であり、商品Ａ購買有無が目的変数であり、それぞれにインデクスが付与されていることがわかる。この対応表１１３も記憶装置１０７に格納される。
【００３６】
ステップｓ５０３：
このステップｓ５０３は、ステップｓ５０２にて設定した全ての説明変数を用いて張る空間を有限の小空間に分割するためのステップであり、複数の説明変数を有限の値に分割し、すべての説明変数での組合せを作成する。
【００３７】
この空間分割処理は、例えば、説明変数が、説明変数Ａ、説明変数Ｂ、説明変数Ｃの全部で３個であり、それぞれの値が、説明変数ＡがＮＡ個、説明変数ＢがＮＢ個、説明変数ＣがＮＣ個に分割された場合、全部でＮＡ×ＮＢ×ＮＣ個の小空間に分割するものであって、分割数等の条件はユーザによって設定される。
【００３８】
［空間分割処理の詳細］
この説明変数を有限の値に分割するための設定は、ユーザが任意に設定することができ、この空間分割設定画面７０１を図７を用いて説明する。
【００３９】
この空間分割設定画面７０１は、前記ステップｓ５０２により指定された説明変数について一つずつ分割方法を設定するものであって、説明変数「性別」の値の個数入力欄７０２と、該個数入力欄７０２により入力された値の数だけ複数の値を入力するための説明変数値入力欄７０３及び説明変数値入力欄７０４とを表示する。
【００４０】
図７の例では、説明変数「性別」の値の個数が男と女の２つであるため、説明変数「性別」の値の個数に２が入力される。その後、その下に、説明変数「性別」の値（１）の説明変数値入力欄７０３と、説明変数「性別」の値（２）の説明変数値入力欄７０４が表示される。この説明変数「性別」の値（１）に男を、説明変数「性別」の値（２）に女を入力し、ＯＫボタン７０５をキーボード６０２やマウス６０３を用いて押下することにより説明変数「性別」の分割設定条件の入力を終了する。この分割設定条件の入力は、全ての説明変数について順に行う。これらの入力を容易にするために、入力待ちの現在位置をマウスカーソル７０６として空間分割設定画面７０１上に重畳表示する。
【００４１】
すべての説明変数での分割が終わったら、それらの説明変数の値のすべての組合せが確定する。この説明変数の値のすべての組み合わせを表現するのに、本実施例では、多次元配列のデータ構造を利用する。記憶装置１０７に、フラグ１１１及びカウンタ１１２を持ち、フラグ１１１はそれぞれの組合せに対応して一つ設定し、カウンタ１１２はそれぞれの組合せに対応して目的変数の値の数だけ設定する。
【００４２】
これは、例えば、説明変数が全部で３個であり、それぞれ説明変数Ａ・説明変数Ｂ・説明変数Ｃであり、目的変数がＤである場合で、それぞれの値が、説明変数ＡがＮＡ個、説明変数ＢがＮＢ個、説明変数ＣがＮＣ個、目的変数ＤがＮ０個に分割されたとき、フラグは、ＮＡ×ＮＢ×ＮＣ個作られ、カウンタは、ＮＡ×ＮＢ×ＮＣ×Ｎ０個作られる。これらをデータの多次元配列で表現される。
【００４３】
ここで、一般のコンピュータプログラム言語で使用される配列構造の記法を用いて表現する場合、例えば、フラグはｆｌａｇ［ａ］［ｂ］［ｃ］のような配列で表され、カウンタはｃｏｕｎｔｅｒ［ａ］［ｂ］［ｃ］［ｄ］のような配列で表される。このような形で、それぞれ、フラグ１１１及びカウンタ１１２が記憶装置１０７に初期化されて生成される。ここで初期値は０である。ここで、ａ、ｂ、ｃ、ｄは、それぞれ、１番目の説明変数、２番目の説明変数、３番目の説明変数、目的変数の値を示すインデクスである。インデクスは値の種類を設定するステップｓ５０２やステップｓ５０３で何番目に指定した値かという順番が使われる。
【００４４】
この対応表１１３の例を図８に示す。図８（ａ）（ｂ）（ｃ）は、それぞれ、説明変数「性別」、説明変数「年代」、説明変数「結婚」の値とインデクスの対応表である。この対応表１１３は記憶装置１０７に格納される。
【００４５】
このような空間分割処理によって、本実施例による処理装置１０８は、設定された説明変数を分割し、説明変数全てにより張る空間を有限個の小空間に分割し、それぞれに対応するデータを記憶領域に割当て、インデクスをつけることができる。
【００４６】
ステップｓ５０４：
このステップｓ５０４は、計数処理が全レコードを終了したか否かを判定し、終了したと判定したときに後述のステップｓ５０６に移行し、全レコードを終了していないと判定したとき次のステップｓ５０５に移行する。
【００４７】
ステップｓ５０５：
このステップｓ５０５は、入力データ１０９の中で、まだ計数処理をしていないレコードを一つ抽出し、そのレコードの値からフラグ１１１の値を必要に応じて修正し、カウンタ１１２の値を更新するステップである。
【００４８】
フラグは、説明変数の組み合わせで一つある値であり、その組み合わせのレコードがあれば「１」、組み合わせのレコードがなければ「０」となる値である。カウンタは、説明変数の組み合わせに対して、目的変数の値ごとにある値であり、それぞれに対して、対応するレコードの個数が入る。
【００４９】
したがって、本計数処理の中で、フラグの方の処理は、入力データのレコードを一つ読み、説明変数で表されるフラグの値が「０」であれば「１」に、「１」であれば何もしない。カウンタの方の処理は、説明変数及び目的変数の値で表されるカウンタの値を１だけカウントアップする。
【００５０】
ここで、読み込んだレコードから対応するフラグを定めるために、図８（ａ）（ｂ）（ｃ）の対応表１１３を用いる。レコードにある値を対応表に探し、値に対応するインデクスが指し示すフラグやカウンタを読み書きすれば良い。
【００５１】
説明変数が、「性別」「年代」「結婚」の３つで、目的変数が商品Ａ購買有無である場合の入力データ１０９の一つのレコードの例を図９に示す。図９に示す例は、１レコードにおいて、性別が「男」、年代が「２０代」、結婚が「未婚」、商品Ａ購買有無が「無」であることがわかる。また、図８に示した対応表１１３により、男はインデクスが「１」、２０代はインデクスが「３」、未婚はインデクスが「１」、商品Ａ購買有無が無なのはインデクス「２」とわかる。
【００５２】
このように多次元配列においては、インデクスの順番は、図８（ｅ）に示した変数のインデクスを用いる。すなわち、ここでは、１番目のインデクスが「性別」、２番目のインデクスが「年代」、３番目のインデクスが「結婚」、４番目のインデクスが「商品Ａ購買有無」を表す。以上より、インデクスを用いて、フラグに関してはｆｌａｇ［１］［３］［１］を読んでこれが０であれば１に修正し、１であれば何もしない。カウンタに関してはｃｏｕｎｔｅｒ［１］［３］［１］［２］を１だけカウントアップすることになる。
【００５３】
ステップｓ５０６：
このステップｓ５０６は、フラグ１１１、カウンタ１１２から、目的変数の値の集中度に関する情報を作成して、出力データ１１０を作成するステップである。
【００５４】
このステップｓ５０６により出力される出力データ１１０は、例えば、図４に示す如く、「性別」「年代」「結婚」「集中度」「商品Ａ購入有」「商品Ｂ購入無」の各項目から成り、前記集中度は、小空間ごとに同じ小空間を指すカウンタのうち最も大きいものの比率である。
【００５５】
この集中度は、例えば、有のカウンタの値が「２３」、無のカウンタの値が「１０」であるとき、２３／（２３＋１０）＝０．７０をその小空間の集中度とする。フラグが１の小空間全てについて集中度をキーとして降順にソートして出力したものが図４の出力データである。図４に示した「商品Ａ購買有」や「商品Ａ購買無」という変数名は、初期設定のステップｓ５０２で入力されたものを使用し、説明変数の欄には、インデクスを値に変換したものが格納されている。
【００５６】
このように本ステップは、それぞれの説明変数の値の組合せにおいて、目的変数の値の集中度の大きいものから順にすべての小空間がリストアップされる。全ての行で集中度が「１」となっていれば、この説明変数だけによって目的変数を識別することができ、集中度が「１」になっていない行があれば、少なくともこの説明変数だけによって目的変数を１００％正確には識別できないことを判定することができる。
【００５７】
ステップｓ５０７：
このステップｓ５０７は、出力データ１１０を出力装置１０６に出力するステップである。この出力データ１１０を出力装置１０６に出力する離散化設定画面１００１を図１０を参照して説明する。
【００５８】
この離散化設定画面１００１は、図１０に示す如く、データの属性である説明変数「性別」「年代」「結婚」と、各説明変数の組み合わせによる「集中度」と、該集中度に対する商品購入数である「商品Ａ購入有」及び「商品Ｂ購入無」の複数項目に対する「性別」「年代」「結婚」「集中度」「商品Ａ購入有」「商品Ｂ購入有」が一覧として表示される。
【００５９】
図示の例では、「性別」が「女」、「年代」が「２０代」、「結婚」が「既婚」の説明変数（データ属性）の組み合わせの「集中度」が「０．７０」、「商品Ａ購入有」が「２３」、「商品Ｂ購入無」が「１０」として表示される。すなわち、この出力データ１１０は、「性別：女」且つ「年代：２０代」且つ「結婚：既婚」の消費者が、「商品Ａ購入有」が数「２３」、「商品Ｂ購入無」が数「１０」、集中度が最も高い「０．７０」であり、集中度が「１」未満のため、ユーザが設定した複数の説明変数（データ属性）では目的変数（データ属性）を１００％正確には識別できないが、７０％の確率で識別可能であることを表している。
【００６０】
なお、前述の実施形態においては、図１に示したコンピータシステムの構成を説明したが、一般的なＣＰＵ・メモリ・バードィスク等の記憶手段を含むパーソナルコンピュータ及び入出力機器を用いて本発明の実施例を実行するように構成しても良い。また、入力機器としてキーボードとマウスを例示したが、同様の入力機能を実現するような、例えば、携帯電話やスマートフォンのソフトウェアキーボードやハードェアキーボードやタッチディスプレイなド、別の入力機器であっても良い。
【００６１】
このように本実施例による予測不可データ判定システム１０１は、予測や推定の分析モデルを予め用意することなく、元データを解析するためのデータ属性である複数の説明変数及び解析の目的とするデータ属性である目的変数を設定し、該複数の説明変数の組み合わせによる目的変数の集中度を判定することによって予測不可データを検出することができる。
【実施例２】
【００６２】
前述の実施形態においては、例えば顧客年齢を何々代とする連続する数値ではない離散的なデータ属性（説明変数）を含む元データを対象とする例を説明したが、本発明は、年齢のような連続する数値をデータ属性（説明変数）を含む元データを対象とすることもでき、この実施例を次に説明する。
【００６３】
本実施例による予測不可データ判定システムは、数値のような連続値を持つ説明変数に対して閾値を導入することにより、値域を少ない有限の個数のカテゴリに分割するものである。本システムは、図５に示したステップｓ５０２の開始直後に、入力データを処理装置が記憶装置に別名でバックアップし、連続値データを離散値データに変更する処理を行う。この連続値データの離散値変更処理は、連続値を離散値に変更する変数を指定し、その変数に対して、分割するカテゴリの個数、値の名称、閾値を入力する。それによって連続値をすべて離散値に変更できる。以降、離散値のデータを使うことで、実施例１をそのまま実施することができる。
【００６４】
この連続値データの離散値変更処理は、離散化設定画面１１０１を図１１に示す如く表示して実行する。この離散化設定画面１１０１は、次の表示欄が表示される。
【００６５】
説明変数一覧欄１１０２：
元データに含まれるデータ属性である複数の説明変数の一覧を列挙した欄。
【００６６】
離散化指定欄１１０３：
該説明変数一覧欄１１０２に表示したどの説明変数を離散化するかを指定するための複数のチェックボックスを列挙した欄。
【００６７】
値個数・カテゴリ名称・閾値入力欄１１０４：
該離散化指定欄１１０３のチェックボックスにより指定した離散化データ（図示の例では年齢）の個数（本例では１０歳未満［０代］、１０代・・１００歳以上の１０種）と、該離散化データの個数毎の複数のカテゴリ（例えば、１０歳未満［０代］、１０代、２０代・・）を入力するための欄。
【００６８】
本例における離散化設定画面１１０１は、チェックボックスは説明変数「年齢」のみにチェックが入り、このチェックボックスにチェックが入ったすべての項目について、値の個数と、カテゴリの名称と閾値の入力画面が生成され表示される。
【００６９】
値の個数は、Ｎ個であればＮ個のカテゴリについて名称の入力欄が生成され、Ｎ−１個分の閾値の入力欄がカテゴリとカテゴリとの間に生成される。図１１にあるように、閾値は、以上または未満の意味で使われる。Ｎ−１個であるため、最初のカテゴリはある閾値未満という条件となり、最後のカテゴリはある閾値以上という条件となる。これらの入力が終わったら、ＯＫボタン１１０５をキーボード６０２やマウス６０３を用いて押下することでこの離散化設定が終了する。
【００７０】
本実施例による予測不可データ判定システムは、例えば連続する数値である年齢を０代、１０代、２０代・・の如く離散化して予測不可データを検出することができる。従って、本実施例によれば、元データが、温度・湿度等の数値であっても、記号値であっても、数値と記号値の混在であっても、予測や推定の分析モデルを決めることなく、分析モデルを作ることなく、予測不可データを判定することができる。
【実施例３】
【００７１】
前述の実施形態においては、図５に示したステップｓ５０７において、集中度を昇順ソートキーとして複数の説明変数の組み合わせによる集中度及び該集中度に対する目的変数の値を一覧列挙する例を説明したが、本発明は、この算出した全ての集中度に対する目的変数の値を表示することなく、予め設定した閾値以上の集中度の複数の説明変数の組み合わせを表示することもできる。
【００７２】
本実施例による予測不可データ判定システムは、前述の実施例で説明したステップｓ５０７においてステップｓ５０６で作成された出力データを出力装置に出力したが、それを以下のように変更して実施することも可能である。
【００７３】
すなわち、本予測不可データ判定システムは、ステップｓ５０２の初期設定において、入力装置１０２より下限値となる閾値を入力し、それを記憶装置１０７に格納しておき、ステップｓ５０７で集中度の最小値が閾値より大きいか否かを判定し、集中度が閾値以上であれば、ステップｓ５０７において「予測可能」と出力するように動作する。なお、最大の集中度が閾値より小さければ「予測不可能」と出力し、あわせて、閾値以下の集中度になる出力データのレコードをすべて出力することもできる。
【００７４】
本実施例によれば、予め集中度の閾値を設定しておくことによって、ある説明変数の組み合わせで目的変数の予測が可能かどうかの結論を直接知ることができる。また、予測が不可能である場合、どのような入力空間のデータであれば予測が難しいかを知ることもできる。
【実施例４】
【００７５】
前述の実施例においては、初期設定を行うステップｓ５０２において説明変数を一度選ぶと、それ以外の試行ができないものであったが、ユーザが説明変数を変更しながら元データから目的変数を判定するためにどの説明変数が有効かをステップｓ５０２からステップｓ５０７までの処理を必要なだけ繰り返すことにより試行することもできる。
【００７６】
この実施例による予測不可データ判定システムは、図１２に示す各ステップを実行することによって、目的変数を判定するためにどの説明変数が有効か否かを説明変数を再設定（許可）することにより試行することができる。
【００７７】
図１２に示すフローチャートは、第１実施例のフローチャートに対して、ステップｓ５０７の後にユーザが終了を入力したか否かを判定するステップｓ１２０１の分岐を追加し、ステップｓ１２０１において終了しないと判定したときにステップｓ５０２に戻り、終了であると判定したときに処理を終了する。また、このフローチャートは、ステップｓ５０２の初期設定及びステップｓ５０３の空間分割においてデフォルト値を前回の計算の設定値にし、ユーザに新たな条件（説明変数又は目的変数）を入力させることによって、目的変数を判定するためにどの説明変数が有効かを試行することができる。
【００７８】
本実施例による予測不可データ判定システムによれば、データ入力を複数回繰り返すことなく、初期設定以降の設定変更を行うことができる。また、その際に説明変数の組み合わせを変えることにより、説明変数の増減によって予測不可能性の検出を試行することができ、予測可能な説明変数の組み合わせを容易に見つけ出すことができる。これにより、分析モデル非依存で予測システムやその前提となるデータベースの設計を実現できる。
【００７９】
特に本実施例においては、特定の目的変数に対して、どの説明変数の組み合わせが最も集中度が高いかをユーザが試行錯誤することができ、集中度の低い説明変数の組み合わせを用いた無駄な分析モデルの作成を防止し、最も集中度が高い説明変数の組み合わせを用いた分析モデルの効率的な作成を支援することができる。
【実施例５】
【００８０】
前述の実施例においては、集中度として、小空間毎に同じ小空間を指すカウンタのうち最も大きいものの比率を集中度とする例を説明したが、本発明はこれに限られるものではなく、生起確率で重み付き平均（加重平均）した情報量を集中度として適用することもできる。
【００８１】
この加重平均による集中度は、ｐｉをｉ番目の事象の生起確率とした場合、図１３に示す数式によって算出する。生起確率とは、説明変数の値の組合せごとに、当該の目的変数の値になる割合を示す値であり、目的変数のすべての値のカウンタの合計を分母として、当該の目的変数の値のカウンタを分子とした値である。すなわち、本実施例においては、説明変数の値の組合せごとに、同一の目的変数項目値になる割合を示す値である生起確率で重み付き平均した情報量（ｌｏｇ２  Ｐｉ）を集中度として算出する。
【００８２】
この生起確率で重み付き平均（加重平均）した情報量は、情報エントロピーが生起確率で重み付き平均した情報量のことであり、事象が決まってしまう場合に０となり、何が起きるかわからない場合に大きくなる。したがってここでは情報エントロピーを「−１」倍することにより、事象が決まってしまう場合に最大となるように設定している。
【００８３】
本実施例による予測不可データ判定システムによれば、情報量尺度にしたがった予測不可データの判定を行うことができる。
【実施例６】
【００８４】
前述の実施例においては説明変数の値の種類及び目的変数の値の種類を入力装置１０２から入力する例を説明したが、本発明の元データの入力手法はこれに限られるものではない。
【００８５】
例えば、本実施例による予測不可データ判定システムは、入力データ１０９をステップｓ５０２の初期設定時に一度、全レコードをコンピュータのメモリに読み込んでおき、説明変数の値の種類及び目的変数の値の種類を自動的に取得し、変更することもできる。すなわち、元データに含まれる変数の全ての値の種類を予め抽出することにより、項目値の値（変数の値）の組合せを生成して説明変数の値の種類及び目的変数の値の種類を自動的に取得し、変更することもできる。具体的には、全レコードのデータを抽出することにより、説明変数として「性別」があり、説明変数の値として「男」と「女」があるということを予め抽出することができ、これらを説明変数の値の種類及び目的変数の値の種類を自動的に取得し、変更することもできる。
【００８６】
この予測不可データ判定システムは、初期値が空の集合をメモリ上に用意しておき、１レコードを読み込むごとに、新規の値があればその集合にその値を要素として追記することにより実現することができる。全レコードを読み込んだ時点でその集合に含まれる要素が値の種類の集合である。また、この値を、辞書順序で並べてインデクスを対応させることもできる。
【００８７】
また、ステップｓ５０２の初期設定において、図６にあるように、目的変数と説明変数の指定をした直後に全レコードを読めば良く、図８と同等な値とインデクスの対応表を項目ごとに自動で作成できる。以降、この対応表を必要に応じて参照する。ステップｓ５０２の初期設定（図６）や、ステップｓ５０３の空間分割（図７）において、変数の値の個数の入力と、値の入力が不要となる。
【００８８】
本実施例によれば、初期値が空の集合をメモリ上に用意しておき、元データを１レコードを読み込むごとに、新規の値があればその集合にその値を要素として追記することにより予測不可能性検出のための設定作業が容易となる。
【００８９】
以上述べた如く本実施例によるこの予測不可データ判定システムは、従来技術においては予測や推定の分析モデルを決定し、この分析モデルを作成して元データを解析しなければ元データがそもそも予測可能なデータか否かを知ることができなかった課題を有するのに対し、予測や推定の分析モデルを決めることなく、分析モデルを作ることなく、元のデータの予測不可なデータを判定することができる。
【符号の説明】
【００９０】
１０１  予測不可データ判定システム、１０２  入力装置、
１０３  空間分割装置、１０４  レコード計数装置、１０５  集中度検出装置、
１０６  出力装置、１０７  記憶装置、１０８  処理装置、１０９  入力データ、
１１０  出力データ、１１１  フラグ、１１２  カウンタ、１１３  対応表、
１１９  バス、６０１  ディスプレイ、６０２  キーボード、６０３  マウス、
６０４  初期設定画面、６０５  データ属性列挙欄、
６０６  目的データ属性選択欄、６０７  説明データ属性選択欄、
６０８  個数入力欄、６０９  変数名欄、６１２  マウスカーソル、
７０１  空間分割設定画面、７０２  個数入力欄、７０５  ＯＫボタン、
７０３及び７０４  説明変数値入力欄、７０６  マウスカーソル、
１１０１  離散化設定画面、１１０２  説明変数一覧欄、１１０３  離散化指定欄、
１１０４  値個数・カテゴリ名称・閾値入力欄、１１０５  ボタン
【図１】
0006771314.tif 000002
【図２】
0006771314.tif 000003
【図３】
0006771314.tif 000004
【図４】
0006771314.tif 000005
【図５】
0006771314.tif 000006
【図６】
0006771314.tif 000007
【図７】
0006771314.tif 000008
【図８】
0006771314.tif 000009
【図９】
0006771314.tif 000010
【図１０】
0006771314.tif 000011
【図１１】
0006771314.tif 000012
【図１２】
0006771314.tif 000013
【図１３】
0006771314.tif 000014
【図１４】
0006771314.tif 000015