(57)【要約】データマイニングの精度向上に寄与する。情報処理装置は、複数の関数を合成することにより新しい関数を定義する関数定義手段と、前記新しい関数を、属性に対して適用することにより、属性に関数を適用した結果である新たな属性を生成する属性生成手段と、前記属性に基づき分析処理を実行する分析エンジンに、前記新たな属性を入力し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定する判定手段と、を備える。
2015045282.tif 000002
【特許請求の範囲】
【請求項１】
複数の関数を合成することにより新しい関数を定義する関数定義手段と、
前記新しい関数を、属性に対して適用することにより、属性に関数を適用した結果である新たな属性を生成する属性生成手段と、
前記属性に基づき分析処理を実行する分析エンジンに、前記新たな属性を入力し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定する検定手段と、
を備える情報処理システム。
【請求項２】
前記検定手段は、分析エンジンの選択を受け付け、その分析エンジンが出力する情報が満たす要件の入力を受け付け、前記選択された分析エンジンに前記新たな属性を入力する、
請求項１に記載の情報処理システム。
【請求項３】
前記関数定義手段は、第１の関数と第２の関数とを取得し、前記第１の関数と前記第２の関数とを合成することにより、第３の関数を定義し、
前記第３の関数が定義する処理は、前記属性に対して、前記第１の関数が定義する処理と前記第２の関数が定義する処理とを逐次的に実行する処理である、
請求項１または２に記載の情報処理システム。
【請求項４】
前記関数定義手段は、前記新しい関数を複数定義し、
前記属性生成手段は、前記複数の新しい関数のうちそれぞれの新しい関数に基づいて、複数の前記新たな属性をそれぞれ生成し、
前記検定手段は、前記分析エンジンに、複数の前記新たな属性のうち特定の属性を入力し、前記分析エンジンが出力する情報を取得し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定する、
請求項１から３のいずれかに記載の情報処理システム。
【請求項５】
前記検定手段は、複数の前記の新たな属性のそれぞれに対して、
前記分析エンジンに複数の前記新たな属性のうち特定の属性を入力する処理と、
前記分析エンジンが出力する情報を取得する処理と、
前記取得した情報が所定の要件を満たすか否かを判定する処理と、
を実行する、
請求項４に記載の情報処理システム。
【請求項６】
前記分析エンジンが出力する情報のうち、前記要件を満たす情報を出力する、第１の出力手段を更に備える、請求項１から５のいずれかに記載の情報処理システム。
【請求項７】
前記分析エンジンが出力する情報が前記要件を満たした場合に、前記分析エンジンが出力する情報を得るために当該分析エンジンに入力された属性か、または、当該属性を生成するために、前記属性生成手段が適用した関数および前記関数を適用した属性を出力する、第２の出力手段を更に備える、請求項１から５のいずれかに記載の情報処理システム。
【請求項８】
前記関数定義手段は、複数の関数または写像を合成することによって、前記新しい関数を定義する、
請求項１から７のいずれかに記載の情報処理システム。
【請求項９】
前記検定手段は、分析エンジンとして回帰分析が選択された場合に、更に、目的変数として前記属性のうちいずれかの属性の指定を受け付け、前記要件として、説明変数の個数の指定を受け付ける、
請求項１から８のいずれかに記載の情報処理システム。
【請求項１０】
複数の関数を記憶する関数記憶手段にアクセス可能なコンピュータを、
前記複数の関数を合成することにより新しい関数を定義し、前記新しい関数を、属性に対して適用することにより、その属性に関数を適用した結果である新たな属性を生成し、前記属性に基づき分析処理を実行する分析エンジンに、前記新たな属性を入力し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定するよう制御する制御方法。
【請求項１１】
複数の関数を記憶する関数記憶手段にアクセス可能なコンピュータに、
前記複数の関数を合成することにより新しい関数を定義する処理と、前記新しい関数を、属性に対して適用することにより、その属性に関数を適用した結果である新たな属性を生成する処理と、前記属性に基づき分析処理を実行する分析エンジンに、前記新たな属性を入力し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定する処理と、を実行させるプログラムを記憶するコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データマイニングを支援する技術に関する。
【背景技術】
【０００２】
データマイニングは、大量の情報の中から、これまで未知であった有用な知見を見つける技術である。データマイニングを用いて有用な知見が得られた実例として、大手スーパーマーケット・チェーンが所有する販売データを分析した例が知られている。販売データを分析した結果、「おむつを購入した顧客はビールも同時に購入する傾向がある」という知見が得られた。スーパーマーケット・チェーンは、当該知見を活かして、例えば、「おむつとビールとを同時に値下げしない」、などの措置をとることにより、売り上げの向上を図ることができる。【０００３】
データマイニングを上述したような具体例に適用するプロセスは、下記に示す３つの段階に大別できる。【０００４】
１つ目の段階（工程）は、「前処理段階」である。「前処理段階」は、データマイニングアルゴリズムが効果的に機能するようにするために、データマイニングアルゴリズムに従って動作する装置などに入力する属性（feature）を加工することにより、その属性を新たな属性に変換する。【０００５】
２つ目の段階は、「分析処理段階」である。「分析処理段階」は、データマイニングアルゴリズムに従って動作する装置などに属性を入力し、係るデータマイニングアルゴリズムに従って動作する装置などの出力である分析結果を得る。【０００６】
３つ目の段階は、「後処理段階」である。「後処理段階」は、分析結果を、見やすいグラフや他の機器に入力するための制御信号等に変換する。【０００７】
このように、データマイニングにより有用な知見を得るためには、「前処理段階」が適切に行われる必要がある。「前処理段階」をどのような手順で実行すべきかを設計する作業は、分析技術の熟練技術者（データサイエンティスト）の知識に依存する。前処理段階の設計作業は、情報処理技術によって十分には支援されておらず、未だ熟練技術者の手作業による試行錯誤に依存する部分が大きい。【０００８】
非特許文献１は、データマイニングを実現するソフトウェアの一例を開示する。非特許文献１は、所望のタスク（分析処理）を実現するのに適した属性を選択することを支援する機能を提供する。この機能は、「属性選択（feature selection）」とも呼ばれる。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】”WEKA”、［online］、［２０１３年９月５日検索］、インターネット＜URL: http://www.cs.waikato.ac.nz/ml/weka/＞
【発明の概要】
【発明が解決しようとする課題】
【００１０】
オペレータが、非特許文献１が開示するソフトウェアを用いてデータマイニングを行う場合を想定する。この場合、オペレータは、必ずしも精度のよい分析結果を得ることができるとは限らない。なぜなら、非特許文献１が開示するソフトウェアは、精度のよい分析結果を得るための属性を、あらかじめ準備された属性のうちから選択するに過ぎないからである。このように、非特許文献１が開示するソフトウェアは、あらかじめ準備された属性の中から選択された解しか出力できないという制約がある。このため、あらかじめ準備された属性の中に精度のよい分析結果が得られる属性が含まれていないと、オペレータは、精度のよい分析結果を得ることができない。【００１１】
本発明は、分析処理の精度向上に寄与する情報処理システム等を提供することを目的の１つとする。
【課題を解決するための手段】
【００１２】
本発明の第１の側面は、複数の関数を合成することにより新しい関数を定義する関数定義手段と、前記新しい関数を、属性に対して適用することにより、属性に関数を適用した結果である新たな属性を生成する属性生成手段と、前記属性に基づき分析処理を実行する分析エンジンに、前記新たな属性を入力し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定する検定手段と、を備える情報処理システムである。【００１３】
本発明の第２の側面は、複数の関数を記憶する関数記憶手段にアクセス可能なコンピュータを、複数の関数を合成することにより新しい関数を定義し、前記新しい関数を、属性に対して適用することにより、属性に関数を適用した結果である新たな属性を生成し、前記属性に基づき分析処理を実行する分析エンジンに、前記新たな属性を入力し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定するよう制御する制御方法である。【００１４】
本発明の第３の側面は、複数の関数を記憶する関数記憶手段にアクセス可能なコンピュータに、複数の関数を合成することにより新しい関数を定義する処理と、前記新しい関数を、属性に対して適用することにより、属性に関数を適用した結果である新たな属性を生成する処理と、前記属性に基づき分析処理を実行する分析エンジンに、前記新たな属性を入力し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定する処理と、を実行させるプログラムである。【００１５】
また、本発明の目的は、上記のプログラムが格納されたコンピュータ読み取り可能な記憶媒体によっても達成される。
【発明の効果】
【００１６】
本発明によれば、分析処理の精度向上に寄与する情報処理システム等を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】図１は、本発明における第１の実施形態にかかる情報処理システム１０００の構成を説明するブロック図である。
【図２】図２は、本発明における第１の実施形態にかかるデータセットの一例を示す図である。
【図３】図３は、本発明における第１の実施形態にかかる関数記憶部１１０が記憶するデータの一例を示す図である。
【図４】図４は、本発明における第１の実施形態にかかる関数定義部１２０の動作を説明する図である。
【図５】図５は、本発明における第１の実施形態にかかる属性生成部１３０の詳細を説明する図である。
【図６】図６は、本発明における第１の実施形態にかかる検定部１４０の詳細を説明する図である。
【図７】図７は、本発明における第１の実施形態にかかる検定部１４０の詳細を説明する図である。
【図８】図８は、本発明における第１の実施形態にかかる検定部１４０の詳細を説明する図である。
【図９】図９は、本発明における第１の実施形態にかかる情報処理システム１０００の動作を説明するフローチャートである。
【図１０】図１０は、本発明における第２の実施形態にかかる情報処理システム１００１の構成を説明するブロック図である。
【図１１】図１１は、本発明における第２の実施形態にかかるデータセットの一例を示す図である。
【図１２】図１２は、本発明における第２の実施形態にかかる関数記憶部１１１が記憶するデータの一例を示す図である。
【図１３】図１３は、本発明における第２の実施形態にかかる関数定義部１２１の詳細を説明する図である。
【図１４】図１４は、本発明における第２の実施形態にかかる属性生成部１３１の詳細を説明する図である。
【図１５】図１５は、本発明における第２の実施形態にかかる検定部１４１の詳細を説明する図である。
【図１６】図１６は、本発明における第３の実施形態にかかる情報処理システム１００２の構成を説明するブロック図である。
【図１７】図１７は、本発明の各実施形態にかかる情報処理システムを実施可能なハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１８】
はじめに、理解を容易にするため、本発明が適用され得る情報処理システム１０００の詳細な説明に際して用いる用語を定義する。
【００１９】
（データセット）
「データセット」とは、情報処理システム１０００に入力されるデータである。「データセット」は、１つまたは複数の属性を含む。「属性」は、「変量」と言い換えることもできる。
【００２０】
＜関数(function)＞
「関数」は、ある属性(feature)から新たな属性を生成(construct)する処理(processing)を定義する。「関数」は、データセットに含まれる属性に対して適用(apply)される。すなわち、「関数」をある属性に適用すると、ある属性に対して当該関数が定義する処理が実行され、その結果として新たな属性が生成される。
【００２１】
言い換えると、「関数」は、属性に対して適用する演算を定義する。関数は、ある属性を他の属性に変換(transform)する処理を定義する、と言い換えてもよい。「関数」は、データセットに含まれる属性に対して適用する写像であってもよい。さらに言い換えると、関数は、その関数に関連付けられている上述の演算を表す。さらに言い換えると、関数は、その関数に関連付けられている上述の処理を表す。
【００２２】
「関数」が定義する処理は、例えば、単項演算である。「関数」は、例えば、三角関数(sin(X), cos(X), tan(X))、自然対数、絶対値または符号反転などの演算を定義する。「関数」は例えば、lognX、Xnなど、パラメータnを含む演算を定義してもよい。
【００２３】
「関数」が定義する処理は、例えば、多項演算である。多項演算とは、複数の被演算子（オペランド）を持つ演算である。「関数」は、例えば、属性Ｘと属性Ｙとの算術演算（足し算、引き算、かけ算など）を定義する。属性Ｘ及び属性Ｙが論理値である場合、「関数」は、例えば、属性Ｘのビット値と属性Ｙのビット値とに適用する論理演算（論理積(AND)、論理和( OR)、 排他的論理和(XOR)など）を定義する。
【００２４】
「関数」が定義する処理は、データに応じて処理が決まる「データに依存する処理」であってもよい。データに依存する処理の１つの具体例は、標準化（normalization）処理である。
【００２５】
「データに依存する処理」を、具体例を挙げて説明する。例えば、１００人分の名前の値と身長の値とが関連づけられた情報を含むデータセットが、データマイニング装置に入力された場合を想定する。この場合、当該データセットには、「名前」という属性と、「身長」という属性との、２つの属性が含まれる。この例において、係る「名前」という属性は、１００人分の名前の値を表す。「身長の値」という属性は、１００人分の身長の値を表す。
【００２６】
データマイニング装置が、属性「身長」に対して、標準化処理を定義する関数を適用することにより、「標準化された身長」という新たな属性を生成する場合を想定する。この場合、データマイニング装置は、属性に含まれる１人分ずつのデータを、個別に標準化することはしない。たとえば、データマイニング装置が、まずは、１００人分の情報のうち１人目の情報「氏名：Ｎ、身長：１７４」のみを受け付けたとする。この場合、データマイニング装置は、１人目の情報に対する新たな属性「標準化された身長」を算出することはしない。なぜなら、データマイニング装置は、１００人分の情報が揃ってからでないと、標準化するパラメータとして必要な値（すなわち、１００人分の「身長」の値の平均値、および、１００人分の「身長」の標準偏差）を知り得ず、この結果、標準化するための関数が定まらないからである。
【００２７】
このような「データに依存する処理」の他の具体例としては、例えば、ヒストグラム生成、クラスタリング、及び、主成分分析等が挙げられる。
【００２８】
（関数の合成）
第１の関数が定義する処理と第２の関数が定義する処理とを、ある属性に対して逐次的に適用することを、本願では「関数の合成」と記載する。例えば、第１の関数がsin(X)という関数を定義しており、第２の関数がX2という関数を定義している場合を想定する。第１の関数が定義する処理と、第２の関数が定義する処理とを合成すると、(sin(X))2という新しい関数または、sin(X2)という新しい関数が定義される。
【００２９】
このように、第１の関数と第２の関数とを合成すると、新しい第３の関数が定義される。この場合における第３の関数が定義する処理を説明する。対象とする属性に対して第３の関数が定義する処理が実行されると、以下に示すような新たな属性が生成される。すなわち、当該対象とする属性に対して、第１の関数が定義する処理と第２の関数が定義する処理とを逐次的に適用した場合に生成される新たな属性が、第３の関数の適用により生成される。
【００３０】
（分析エンジン）
「分析エンジン」は、属性に基づく分析処理である。すなわち、分析エンジンは、入力として属性を受け付け、該属性に基づき分析を行い(execute)、分析した結果を出力する。分析エンジンは、データマイニング装置が実行する分析アルゴリズムなどとも呼ばれる。分析エンジンは、例えば、回帰分析（Regression Analysis）、因子分析(Factor Analysis)、共分散構造分析(Covariance Structure Analysis)、主成分分析(Principal Factor Analysis)、判別分析(Discriminant Analysis)、カーネル分析、異種混合回帰分析、クラスター分析(Cluster Analysis)または異常検出などの処理を実行する分析エンジンである。「分析エンジンの種類の指定」とは、このような分析エンジンの種類の指定を受け付けることをいう。「分析エンジン」は、例えば、上述の分析処理を実行する主体（例えば装置）、又は、プロセッサが分析処理を実行するよう制御するプログラムなどを指すこともある。
【００３１】
（制約条件）
制約条件は、分析エンジンが出力する情報が満たすべき要件である。言い換えれば、制約条件は、分析エンジンが出力する分析結果が満たすべき要件である。分析エンジンの種類が単回帰分析である場合、制約条件の１つの具体例は、「カイ二乗値が０．９以上」である。
【００３２】
（情報を取得する）
以降、情報を記憶装置から読み出すこと、情報を外部装置から受信すること、または、オペレータから情報の入力を受け付けることなどを、まとめて「情報を取得する」と記載する。
【００３３】
（情報を出力する）
以降、情報を記憶装置に書き込むこと、情報を外部装置へ送信すること、または、画面表示または音声などの形式でオペレータに対して情報を提示することなどを、まとめて「情報を出力する」と記載する。
【００３４】
以下、上述した文言の定義を参酌しつつ、本発明の実施形態について、図面を参照して詳細に説明する。
【００３５】
＜第１の実施形態＞
第１の実施形態は、分析エンジンの種類として単回帰分析が指定された場合における、本発明の１つの具体例である。
【００３６】
図１は、第１の実施形態にかかる情報処理システム１０００の概要を説明するブロック図である。
【００３７】
情報処理システム１０００は、関数記憶部１１０と、関数定義部１２０と、属性生成部１３０と、検定部１４０と、出力部１５０と、を備える。
【００３８】
関数記憶部１１０は、複数の関数を記憶することができる。関数記憶部１１０は、情報処理システム１０００の内部に実装されていてもよいし、情報処理システム１０００がアクセス可能な図示しない外部の装置に実装されていてもよい。
【００３９】
関数定義部１２０は、関数記憶部１１０から複数の関数を取得する。関数定義部１２０は、取得した関数を合成することにより、新しい関数を定義する。
【００４０】
属性生成部１３０は、対象とするデータセットを取得する。属性生成部１３０は、オペレータからデータセットの入力を受け付けてもよいし、図示しない記憶部からデータセットを読み出してもよい。属性生成部１３０は、情報処理システム１０００の外部に備えられた図示しない装置から、データセットを受信してもよい。
【００４１】
属性生成部１３０は、関数記憶部１１０があらかじめ記憶していた関数、または、関数定義部１２０が定義した関数を、データセットに含まれる属性に対して適用する。これにより属性生成部１３０は、属性に関数を適用した結果である新たな属性を生成する。
【００４２】
検定部１４０は、分析エンジンの種類の指定および制約条件の指定を、例えばオペレータから、取得する。
【００４３】
第１の実施形態においては、検定部１４０は、分析エンジンの種類として「単回帰分析」を取得する。また、検定部１４０は、データセットに含まれる複数の属性のうち、関数が予測する対象であるところの目的変数である属性の指定を取得する。
【００４４】
検定部１４０は、単回帰分析エンジン（不図示）に、属性生成部１３０が生成する新たな属性を説明変数として入力する。検定部１４０は、単回帰分析エンジンが出力する回帰式を取得する。検定部１４０は、回帰式が制約条件を満たすか否かを判定(test)する。
【００４５】
出力部１５０は、例えば、要件を満たす回帰式を出力する。
【００４６】
以下、図１から図８までを用いて、関数記憶部１１０、関数定義部１２０、属性生成部１３０、検定部１４０および出力部１５０の詳細を説明する。
【００４７】
図２は、図１に示す情報処理システム１０００に入力されるデータセットの一例を示す図である。図２に示すように、データセットは、例えば、複数人の、識別子（ＩＤ；Identifier）と、身長の値と、体重の値と、アイスクリームの年間消費量の値と、を関連付ける情報を含む。図２に示す、「身長」、「体重」および「アイスクリームの年間消費量」は、それぞれ、「属性」に相当する。
【００４８】
図３は、図１に示す関数記憶部１１０が記憶する情報の一例を示す図である。図３に示すように、関数記憶部１１０には、複数の関数が記憶されている。
【００４９】
図３に示すように、関数ＩＤ（識別子）が「関数１」である関数が定義する処理は、Ｘである。ここで、Ｘは恒等写像を表す。関数ＩＤが「関数２」である関数が定義する処理は、sin(X)である。ここで、sinは正弦関数を表す。関数ＩＤが「関数３」である関数が定義する処理は、X2である。ここで、X2は、Ｘの値を二乗する関数を表す。以下の説明において、関数を、その関数の関数ＩＤによって表す。例えば、関数２は、関数ＩＤが関数２である関数を表す。
【００５０】
図１と図４とを用いて、図１に示す関数定義部１２０の詳細を説明する。図４は、関数定義部１２０が、図３に示す関数１ないし３を取得した場合に出力する、新しい関数４及び５を説明する図である。
【００５１】
図４に示すように、関数定義部１２０は、関数１ないし３を取得して、新しい関数４及び５を生成する。
【００５２】
関数定義部１２０は、例えば、関数２と関数３とを合成することにより、新しい関数４を定義する。図４に示すように、関数４が定義する処理は、(sin(X2))である。関数定義部１２０は、関数を合成する順序を入れ替えてもよい。関数定義部１２０は、例えば、関数２と関数３とを合成することにより、関数５を定義してもよい。図４に示すように、関数５が定義する処理は、(sin(X))2である。
【００５３】
図１と図５とを用いて、図１に示す属性生成部１３０の詳細を説明する。図１に示すように、属性生成部１３０は、対象とするデータセットを取得する。属性生成部１３０は、目的変数である属性の指定を取得してもよい。
【００５４】
例えば、属性生成部１３０が、目的変数である属性として「アイスクリームの年間消費量」という属性の指定を取得する場合を想定する。また、属性生成部１３０が、関数記憶部１１０から関数５（すなわち、(sin(X))2）を取得する場合を想定する。属性生成部１３０は、係るデータセットに含まれる複数の属性のうち、目的変数として指定された属性以外の属性（すなわち、「身長」または「体重」）のうちから、関数に入力する属性を１つ選択する。
【００５５】
属性生成部１３０は、例えば、「身長」という値を選択したとする。属性生成部１３０は、選択した属性「身長」に対して前記選択した関数(sin(X))2を適用して、新たな属性を生成する。この結果生成された新しい属性を、図５に示す。
【００５６】
図５は、属性生成部１３０が、属性「身長」に対して関数(sin(X))2を適用することにより生成された、新たな属性を示す図である。
【００５７】
属性生成部１３０は、例えば、属性をn個受け付け、関数をm個受け付けたとすると、n×m個の新たな属性を生成する。
【００５８】
属性生成部１３０が、「身長」と「体重」という２つの属性を受け付け、関数１ないし５までの５つの関数を受け付けたとすると、属性生成部１３０は、２×５＝１０個の新しい属性を生成する。すなわち、属性生成部１３０は、以下に示す１０個の新しい属性を生成する。
【００５９】
・身長、
・（身長）2、
・sin（身長）、
・sin（身長2）、
・（sin（身長））2、
・体重、
・（体重）2、
・sin（体重）、
・sin（体重2）、
・（sin（体重））2。
【００６０】
ただし、属性生成部１３０は、必ずしも上述した１０個の新しい属性のうち全てを生成する必要はない。属性生成部１３０は、生成した属性を出力する。
【００６１】
図１に示す検定部１４０の詳細を、図１、図６、図７および図８を用いて説明する。以下の説明は、検定部１４０の動作の１つの具体例に過ぎず、検定部１４０の動作は限定的に解釈されない。
【００６２】
ここでは、検定部１４０は、分析エンジンの種類として「単回帰分析」を取得し、目的変数である属性として「アイスクリームの年間消費量」を取得し、制約条件として「カイ二乗値が０．９以上」という条件を取得したとする。
【００６３】
すなわち、検定部１４０は、Y（アイスクリームの年間消費量）＝ａＸ＋ｂ、という式に従って回帰分析を行うことになる。ここで、Yは目的変数である。Xは説明変数である。aとbとは定数である。
【００６４】
検定部１４０は、属性生成部１３０が生成する属性（説明変数）が、アイスクリームの年間消費量（目的変数）を、どの程度説明できるかについて分析する。
【００６５】
検定部１４０は、属性生成部１３０が取得したデータセットに含まれる属性を取得する。また、検定部１４０は、属性生成部１３０が出力した属性を取得する。
【００６６】
検定部１４０は、取得した複数の属性のうちから、一つの属性を選択する。例えば、検定部１４０は、「身長」という属性を選択したとする。
【００６７】
図６は、検定部１４０が、「身長」という属性を説明変数として選択し、該説明変数に基づき単回帰分析を行った結果を表すグラフである。図６に示すように、単回帰分析の結果、a=0.0322, b=3.7137という結果が得られ、カイ二乗値は0.031であった。
【００６８】
図７は、検定部１４０が、「(sin(身長))2」という属性を説明変数として選択し、該説明変数に基づき単回帰分析を行った結果を表すグラフである。図７に示すように、単回帰分析の結果、a=11.179, b=3.0349という結果が得られ、カイ二乗値は0.998であった。
【００６９】
検定部１４０は、取得した属性のそれぞれに対して、分析エンジン（上記の例では、単回帰分析エンジン）に属性を入力(input)する処理と、該分析エンジンが出力する分析結果（すなわち、回帰式とカイ二乗値）を取得する処理と、分析結果（すなわち、カイ二乗値）が制約条件を満たしているか否かを判定する処理と、を実行する。
【００７０】
図８は、属性生成部１３０が生成した１０種類の属性について、それぞれ検定部１４０が処理を実行した結果を説明する図である。図８に示すように、制約条件「カイ二乗値が０．９以上」を満たす説明変数は、「（sin（身長））2」のみである。
【００７１】
説明変数として「（sin（身長））2」が選択された場合に、カイ二乗値が制約条件を満たすということは、すなわち、身長の値を正弦関数(sin)に代入して得られた値を二乗した値を用いて、Y=aX+bという関係式に従い、個人のアイスクリームの年間消費量を説明することができる、ということを表す。
【００７２】
これに対して図８の他の例に示すように、説明変数として他の属性が選択される場合に、カイ二乗値は、検定閾値を満たさない。これは、他の属性の値に基づき、Y=aX+bという関係式に従う場合に、個人のアイスクリームの年間消費量を説明することができない、ということを表す。
【００７３】
出力部１５０は、例えば、要件を満たす回帰式を出力する。
【００７４】
出力部１５０は、下記に示すように動作してもよい。例えば、例えば、以下に示すような属性Ａを分析エンジンに入力して得られた分析結果が、制約条件を満たしているとする、
属性Ａ：属性Ｂの値を正弦関数（sin）に代入して得られた値を二乗した値。
【００７５】
このとき出力部１５０は、「身長という属性の値を正弦関数（sin）に代入し、得られた値を更に二乗するような、前処理を実行すべきである」という情報を出力してもよい。あるいは、出力部１５０は、「身長という属性の値を正弦関数（sin）に代入し、得られた値を更に二乗した値を、指定された分析エンジンに入力すると、制約条件を満たす分析結果が得られる」という情報を出力してもよい。または、出力部１５０は、「身長という属性の値を正弦関数（sin）に代入し、得られた値を更に二乗した値」という情報を出力してもよい。出力部１５０は、これらの情報を、指定された分析エンジンの種類や、データセットのファイル名と共に出力してもよい。
【００７６】
次に、第１の実施形態にかかる情報処理システム１０００の動作を説明する。図９は、第１の実施形態にかかる情報処理システム１０００の動作を説明するフローチャートである。
【００７７】
関数定義部１２０は、関数記憶部１１０から関数を取得する（ステップＳ１０１）。関数定義部１２０は、取得した既存の関数を合成することによって新しい関数を定義する（ステップＳ１０２）。属性生成部１３０は、属性を新しい関数に入力し、該関数に従い出力される値を新たな属性として算出する。属性生成部１３０は、例えば関数と属性の全ての組み合わせについて、新たな属性を生成する（ステップＳ１０３）。ステップＳ１０３に示す動作は、取得した属性を関数に入力し、該関数に従い出力される値を新たな属性として算出する、と言い換えることもできる。
【００７８】
検定部１４０は、複数の新たな属性から、特定の属性を選択する（ステップＳ１０４）。検定部１４０は、指定された目的変数を、特定の属性（説明変数）に基づき、どれくらい説明できるかを分析する。この結果、検定部１４０は、分析結果（すなわち、回帰式及び、カイ二乗値）を得る（ステップＳ１０５）。検定部１４０は、属性生成部１３０が生成した全ての属性について、ステップＳ１０５に示す動作を繰り返す（ステップＳ１０６）。
【００７９】
検定部１４０は、制約条件を満たす分析結果が得られるか否かを検定する（ステップＳ１０７）。なお、ステップＳ１０４からステップＳ１０６までの繰り返しの中においてステップＳ１０７に示す動作を実行してもよい。
【００８０】
制約条件を満たす分析結果が得られた場合（ステップＳ１０７においてＹＥＳ）、出力部１５０は、制約条件を満たす分析結果を出力する（ステップＳ１０８）。制約条件を満たす分析結果が得られない場合（ステップＳ１０７においてＮＯ）、出力部１５０は、制約条件を満たす分析結果を出力しない。
【００８１】
第１の実施形態にかかる情報処理システム１０００が奏する作用効果を説明する。第１の実施形態によれば、分析処理の精度向上に寄与する情報処理システム１０００を提供することができる。
【００８２】
その理由は、第１の実施形態にかかる属性生成部１３０が、属性に対して関数を演算し、新たな属性を生成するからである。
【００８３】
かかる構成により、情報処理システム１０００は、「説明変数の候補である属性の数を増やす」ことができる。これは「仮説を検証するための属性の候補を増やす」ことができると言い換えることもできる。したがって本実施形態によれば、目的変数を十分に説明する説明変数が選択される可能性が高まり、データマイニングの精度が向上するという効果が実現する。
【００８４】
上述した例において、オペレータ９００から入力された属性、すなわちデータセットに含まれる属性は、３種類（「身長」、「体重」、および、「アイスクリームの年間消費量」）である。上述した例においては、３種類の属性のうち１つ（すなわち、「アイスクリームの年間消費量」）は、目的変数として指定された。この場合、実質的な説明変数の候補は、アイスクリームの年間消費量以外の、２種類の属性（「身長」および「体重」）である。
【００８５】
情報処理システム１０００は、上述したように、対象とするデータセットに含まれる２種類の属性と、関数記憶部１１０が記憶する関数（関数１ないし３）または関数定義部１２０が定義した関数（関数４または５）と、に基づいて、新たな１０個の属性を生成する。
【００８６】
このように、情報処理システム１０００は、説明変数の候補となる属性の数を増やすことにより、目的変数を十分に説明する属性を選択する可能性を高めるため、データマイニングの精度を向上することができる。
【００８７】
また、第１の実施形態にかかる関数定義部１２０は、複数の関数を合成することにより新しい関数を定義する。
【００８８】
かかる構成により、情報処理システム１０００は、あらかじめ準備された関数とは異なる関数を用いて、新たな属性を生成することができる。これにより、属性生成部１３０は、より多くの種類の属性を生成することができる。
【００８９】
また、第１の実施形態に係る情報処理システム１０００は、データマイニングの精度を向上するために、属性に対して実施すべき前処理の手順を出力することができる。その理由は、第１の実施形態にかかる出力部１５０が、制約条件を満たす分析結果が得られた場合に、当該分析結果を得るために分析エンジンに入力した属性を出力するからである。または、出力部１５０が、制約条件を満たす分析結果を得るために、データセットに含まれる属性に対してどのような処理を行えばよいかを示す情報を出力するからである。
【００９０】
また、第１の実施形態に係る情報処理システム１０００は、データ分析を行う分析技術者の工数を削減することができる。その理由は、第１の実施形態に係る情報処理システム１０００の属性生成部１３０が、複数の属性に基づいて、新たな属性を生成するからである。そして、その情報処理システム１０００の検定部１４０が、生成した新たな属性の中から、所定の基準を満たす属性を選択するからである。すなわち、検定部１４０は、例えば、生成した新たな属性を、入力された属性に基づき分析処理を実行する分析エンジンに入力する。そして、検定部１４０は、その分析エンジンが出力する情報が、所定の要件を満たすか否かを判定する。検定部１４０は、例えば、出力された情報が所定の要件を満たす場合、分析エンジンに入力された属性を選択する。前述の所定の要件（すなわち制約条件）は、例えば、目的変数に対する相関が、所定の基準より高いことである。すなわち、分析技術者が、複数の属性を情報処理システム１０００に入力すれば、情報処理システム１０００は、目的変数と相関の高い属性を自動的または半自動的に生成することができる。
【００９１】
具体的には、例えば、第１の実施形態に係る情報処理システム１０００によれば、分析技術者は、「個人のアイスクリームの年間消費量」と「（sin（身長））2」との間に強い相関があるということを知らなくても、精度の良い分析結果を得ることができる。その理由は、情報処理システム１０００が、「身長」という属性に基づいて、「（sin（身長））2」という新たな属性を生成するからである。言い換えると、分析技術者が、「身長」という属性を情報処理システム１０００に入力すれば、情報処理システム１０００は、「（sin（身長））2」という、目的変数と相関の高い属性を、ユーザにとって自動的または半自動的に生成することができる。
【００９２】
また、第１の実施形態に係る情報処理システム１０００によれば、データ分析を行う分析技術者は、目的変数と、新たに生成される属性との間に、強い相関があることに気付くことができる。例えば、データ分析を行う分析技術者は、「個人のアイスクリームの年間消費量」と「（sin（身長））2」との間に強い相関があるということに気が付くことができる。
【００９３】
（第１の実施形態の変形例）
関数定義部１２０は、関数記憶部１１０から、連続値パラメータnを含む演算子を読み出して、nに任意の値を代入することにより、新たな関数を定義してもよい。連続値パラメータnを含む演算子は、例えば、lognXまたはXnなどである。関数定義部１２０が、例えば、lognXを定義する関数を読み出した場合、関数定義部１２０は、例えば、log2X、log3X、または、log5Xなどの新しい関数を定義する。
【００９４】
検定部１４０は、例えば、分析エンジンの種類として、重回帰分析の指定を受け付けてもよい。例えば、検定部１４０が、重回帰分析（Ｚ＝ａＸ＋ｂＹ＋ｃ）の指定を受け付けるとする。ここで、Ｚは目的変数である。Ｘは第１の説明変数である。Ｙは第２の説明変数である。ａ、ｂおよびｃは、それぞれ定数である。
【００９５】
検定部１４０は、例えば、属性生成部１３０から１０個の属性を取得するとする。この場合、第１の説明変数Xと第２の説明変数Yの選択の仕方の組み合わせは、４５（＝（１０×９）÷２）通りとなる。検定部１４０は、４５通りの説明変数の組み合わせについて、図９に示したステップＳ１０４からステップＳ１０６に示した動作を繰り返す。
【００９６】
また検定部１４０は、分析エンジンの種類として曲線回帰分析を受け付けてもよい。この場合、検定部１４０は、曲線の種類、例えば、指数関数またはガウス関数などの指定を受け付ける。
【００９７】
上述の変形例は、他の実施形態にも適用可能である。
【００９８】
＜第２の実施形態＞
第２の実施形態は、分析エンジンの種類として判別分析が指定された場合における、本発明の１つの具体例である。
【００９９】
図１０は、第２の実施形態にかかる情報処理システム１００１の構成を表わすブロック図である。図１０に示すように、第２の実施形態に係る情報処理システム１００１は、以下の構成を備え得る。
【０１００】
・第１の実施形態にかかる関数記憶部１１０に代えて関数記憶部１１１を備える。
【０１０１】
・関数定義部１２０に代えて関数定義部１２１を備える。
【０１０２】
・属性生成部１３０に代えて属性生成部１３１を備える。
【０１０３】
・検定部１４０に代えて検定部１４１を備える。
【０１０４】
第１の実施形態と第２の実施形態とは、扱うデータセット、および指定される分析エンジンの種類が異なる。
【０１０５】
図１１は、図１０に示す情報処理システム１００１に入力されるデータセットの一例を説明する図である。図１１に示すデータセットは、多変量データと言い換えることもできる。図１１に示すように、データセットは、複数人の識別子の各々に対して、属性１ないし属性４を関連付ける情報を含む。図１１に示すデータセットは、例えば複数人分のアンケートの回答結果を表すデータである。各属性は、アンケートに含まれる質問事項に対する回答である。属性１ないし属性４の内容を、下記に示す。具体的には、各属性の、質問事項と、回答が表す値とを示す。
【０１０６】
属性１：犬と猫どちらが好き？        （犬を０と表す、猫を１と表す）、
属性２：年齢は？                    （４０歳以上を０と表す、４０歳未満を１と表す）、
属性３：性別は？                    （男を０と表す、女を１と表す）、
属性４：寿司と天麩羅どちらが好き？  （寿司を０と表す、天麩羅を１と表す）。
【０１０７】
図１２は、図１０に示す関数記憶部１１１が記憶する情報の一例を示す図である。図１２に示すように、関数記憶部１１１は、関数１ないし４を記憶している。関数１は、恒等写像Ｘを定義する。関数２は、２つの属性の値の論理積（ＡＮＤ）演算を定義する。関数３は、２つの属性の値の論理和（ＯＲ）演算を定義する。関数４は、ある属性の値の否定（ＮＯＴ）を定義する。
【０１０８】
図１０に示す関数定義部１２１の詳細を、図１３に示す例を用いて説明する。図１３は、関数定義部１２１が、関数１〜４を組み合わせて新しく定義した関数５を示す図である。関数５は排他的論理和（ＸＯＲ）を定義する。
【０１０９】
図１３に示すように、関数定義部１２１は、関数１ないし４を組み合わせて、新しい関数を定義する。関数１ないし４の組み合わせ方には様々なバリエーションが考えられる。図１３に示す一例は、組み合わせ方のバリエーションの１つである。図１３は、関数２（ＡＮＤ）と、関数３（ＯＲ）と、関数４（ＮＯＴ）を組み合わせることにより定義された関数５（ＸＯＲ）を表す図である。関数定義部１２１は、関数１ないし４を組み合わせることにより、例えば、否定論理積（ＮＡＮＤ）や否定論理和（ＮＯＲ）などの新しい関数を定義してもよい。
【０１１０】
図１０に示す属性生成部１３１の詳細を、図１４に示す例を用いて説明する。図１４は、属性生成部１３１が生成した新しい属性に関する１つの具体例を説明する図である。
【０１１１】
属性生成部１３１は、関数定義部１２１が定義した複数の新しい関数から、１つの関数を選択する。属性生成部１３１は、入力されたデータセットに含まれる複数の属性から、１つの属性または属性の組み合わせを選択する。例えば、属性生成部１３１が、関数として「否定論理積（ＮＡＮＤ）」を選択し、属性として、属性１および属性２を選択した場合を想定する。この結果、属性生成部１３１が生成する新しい属性を、図１４に示す。
【０１１２】
属性生成部１３１は、例えば、関数定義部１２１が定義した新しい関数全てに対して、新しい属性を生成する。属性生成部１３１は、必ずしも新しい関数全てに対して、新しい属性を生成しなくてもよい。
【０１１３】
図１０を参照する説明に戻る。ここでは、検定部１４１は、分析エンジンの種類として「判別分析」を指定されたとする。さらに、検定部１４１は、目的変数として属性４（すなわち、「寿司と天麩羅どちらが好きか」）を指定されたとする。
【０１１４】
検定部１４１は、制約条件（すなわち、分析エンジンが出力する情報が満たすべき要件）として、「一致率が９５％以上」という条件を取得するとする。ここで、「一致率」とは、選択された属性の値と、予測対象として指定された属性の値とが、どの程度一致しているかを表す指標である。
【０１１５】
検定部１４１は、属性生成部１３１が生成した新たな属性に基づき、「寿司と天麩羅どちらが好きか」を、を十分に説明できるかを分析する。
【０１１６】
検定部１４１の詳細を説明する。検定部１４１は、属性生成部１３１が生成した新たな属性を取得する。検定部１４１は、取得した複数の属性から、一つの属性を選択する。例えば、検定部１４１は、「属性３」という属性を選択したとする。
【０１１７】
検定部１４１は、選択された属性の値と、予測対象として指定された属性の値との、一致率を算出する。
【０１１８】
図１１を参照すると、図示した１３人分のデータにおいて、属性３の値と属性４の値が一致するのは、５人分のデータである。よって、図示した１３人分のデータにおいて、属性３の値と属性４の値の一致率は０．３８（＝５÷１３）である。何人分のデータに対して一致率を算出するかは、例えば、予め指定されていてもよい。
【０１１９】
検定部１４１は、取得した全ての属性に対して、目的変数「寿司と天麩羅どちらが好きか」の値との一致率を算出する。
【０１２０】
図１５は、属性生成部１３１が生成した属性について、検定部１４０が処理を実行した結果を説明する図である。図１５に示すように、属性１と属性３とに対して、排他的論理和（ＸＯＲ）を施した値と、属性４の値との一致率が１００％であり、制約条件を満たす。これはつまり、「寿司」と「天麩羅」の好みは、アンケート結果における「属性１」と「属性３」との排他的論理和ＸＯＲの値に基づき、説明できることを表す。
【０１２１】
第２の実施形態にかかる情報処理システム１００１が奏する作用効果を説明する。第２の実施形態によれば、分析処理の精度向上に寄与する情報処理システム１００１を提供することができる。
【０１２２】
その理由は、第２の実施形態にかかる属性生成部１３１が、属性に対して関数を適用し、新たな属性を生成するからである。
【０１２３】
かかる構成により、情報処理システム１００１は、「説明変数の候補である属性の数を増やす」ことができる。これは「仮説を検証するための属性の候補を増やす」ことができると言い換えることもできる。本実施形態によれば、目的変数を十分に説明する説明変数が選択される可能性が高まり、データマイニングの精度が向上するという効果が実現する。
【０１２４】
また、第２の実施形態にかかる関数定義部１２１は、複数の関数を合成することにより新しい関数を定義する。
【０１２５】
かかる構成により、情報処理システム１００１は、あらかじめ準備された関数とは異なる関数を用いて、新たな属性を生成することができる。これにより、属性生成部１３１は、より多くの種類の属性を生成することができる。
【０１２６】
また、第２の実施形態に係る情報処理システム１００１は、データマイニングの精度を向上するために、属性に対して実施すべき前処理の手順を出力することができる。その理由は、第２の実施形態にかかる出力部１５０が、制約条件を満たす分析結果が得られた場合に、当該分析結果を得るために分析エンジンに入力した属性を出力するからである。または、出力部１５０が、制約条件を満たす分析結果を得るために、データセットに含まれる属性に対してどのような処理を行えばよいかを示す情報を出力するからである。
【０１２７】
＜第３の実施形態＞
図１６は、第３の実施形態にかかる情報処理システム１００２の構成を説明するブロック図である。図１６に示すように、情報処理システム１００２は、関数定義部１２２と、属性生成部１３２と、検定部１４２と、を備える。
【０１２８】
関数定義部１２２は、複数の関数を合成することにより新しい関数を定義する。
【０１２９】
属性生成部１３２は、新しい関数を、属性に対して適用し、属性に関数を適用した結果である新たな属性を定義する。
【０１３０】
検定部１４２は、分析エンジンの選択を受け付け、分析エンジンが出力する情報が満たす要件の入力を受け付け、前記選択された分析エンジンに前記新たな属性を入力し、前記分析エンジンが出力する情報を取得し、前記取得した情報が前記要件を満たすか否かを判定する。
【０１３１】
第３の実施形態によれば、分析処理の精度向上に寄与する情報処理システム１００２を提供することができる。
【０１３２】
＜情報処理システムのハードウェア構成＞
図１７に示した情報処理システム（コンピュータ）１０００を構成するハードウェアは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１、メモリ２、記憶装置３、通信インターフェース（Ｉ／Ｆ）４を備える。情報処理システム１０００は、入力装置５または出力装置６を備えていてもよい。情報処理１００の機能は、例えばＣＰＵ１が、メモリ２に読み出されたコンピュータプログラム（ソフトウェアプログラム、以下単に「プログラム」と記載する）を実行することにより実現される。実行に際して、ＣＰＵ１は、通信インターフェース４、入力装置５および出力装置６を適宜制御する。
【０１３３】
尚、本実施形態および後述する各実施形態を例として説明される本発明は、係るプログラムが格納されたコンパクトディスク等の不揮発性の記憶媒体８によっても構成される。記憶媒体８が格納するプログラムは、例えばドライブ装置７により読み出される。
【０１３４】
情報処理システム１０００が実行する通信は、例えばＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が提供する機能を使ってアプリケーションプログラムが通信インターフェース４を制御することによって実現される。入力装置５は、例えばキーボード、マウスまたはタッチパネルである。出力装置６は、例えばディスプレイである。情報処理システム１０００は、２つ以上の物理的に分離した装置が、有線、無線、又はそれらの組み合わせにより、通信可能に接続されることによって構成されていてもよい。
【０１３５】
図１７に示すハードウェア構成例は、前述した各実施形態にも適用可能である。なお、情報処理システム１０００は専用の装置であってもよい。なお、情報処理システム１０００およびその各機能ブロックのハードウェア構成は、上述の構成に限定されない。
【０１３６】
＜その他の変形例＞
分析エンジンは、必ずしも情報処理システム１０００と同一の装置に実装される必要はない。分析エンジンは、情報処理システム１０００からアクセス可能であればよい。上述の変形例は、他の実施形態にも適用可能である。
【０１３７】
以上、分析エンジンの種類として単回帰分析、重回帰分析、および、判別分析を指定された場合を例に、本発明を説明した。
【０１３８】
本発明は上述した各実施の形態に限定されず、様々な態様で実施されることが可能である。本発明は、上記各実施形態に例示した種類以外の分析エンジンを用いるデータマイニングにも適用され得る。
【０１３９】
また、上述した各実施の形態は、適宜組み合わせて実施されることが可能である。また、本発明は、上述した各実施の形態に限定されず、様々な態様で実施されることが可能である。
【０１４０】
各ブロック図に示したブロック分けは、説明の便宜上から表された構成である。各実施形態を例に説明された本発明は、その実装に際して、各ブロック図に示した構成には限定されない。
【０１４１】
以上、本発明を実施するための形態について説明したが、上記実施の形態は本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。本発明はその趣旨を逸脱することなく変更、改良され得ると共に、本発明にはその等価物も含まれる。
【０１４２】
この出願は、２０１３年９月２７日に出願された米国出願ＵＳ６１／８８３６６０を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０１４３】
上述した実施形態を例に説明した本発明は、例えばデータマイニングを支援するツールに用いることができる。
【符号の説明】
【０１４４】
１    ＣＰＵ
２    メモリ
３    記憶装置
４    通信インターフェース
５    入力装置
６    出力装置
７    ドライブ装置
８    記憶媒体
１１０    関数記憶部
１１１    関数記憶部
１２０    関数定義部
１２１    関数定義部
１２２    関数定義部
１３０    属性生成部
１３１    属性生成部
１３２    属性生成部
１４０    検定部
１４１    検定部
１４２    検定部
１５０    出力部
９００    オペレータ
１０００    情報処理システム
１００１    情報処理システム
１００２    情報処理システム
【図１】
2015045282.tif 000003
【図２】
2015045282.tif 000004
【図３】
2015045282.tif 000005
【図４】
2015045282.tif 000006
【図５】
2015045282.tif 000007
【図６】
2015045282.tif 000008
【図７】
2015045282.tif 000009
【図８】
2015045282.tif 000010
【図９】
2015045282.tif 000011
【図１０】
2015045282.tif 000012
【図１１】
2015045282.tif 000013
【図１２】
2015045282.tif 000014
【図１３】
2015045282.tif 000015
【図１４】
2015045282.tif 000016
【図１５】
2015045282.tif 000017
【図１６】
2015045282.tif 000018
【図１７】
2015045282.tif 000019
【手続補正書】
【提出日】平成28年3月22日(2016.3.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の関数を合成することにより新しい関数を定義する関数定義手段と、
前記新しい関数を、属性に対して適用することにより、属性に関数を適用した結果である新たな属性を生成する属性生成手段と、
前記属性に基づき分析処理を実行する分析エンジンに、前記新たな属性を入力し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定する検定手段と、
を備える情報処理システム。
【請求項２】
前記検定手段は、分析エンジンの選択を受け付け、その分析エンジンが出力する情報が満たす要件の入力を受け付け、前記選択された分析エンジンに前記新たな属性を入力する、
請求項１に記載の情報処理システム。
【請求項３】
前記関数定義手段は、第１の関数と第２の関数とを取得し、前記第１の関数と前記第２の関数とを合成することにより、第３の関数を定義し、
前記第３の関数が定義する処理は、前記属性に対して、前記第１の関数が定義する処理と前記第２の関数が定義する処理とを逐次的に実行する処理である、
請求項１または２に記載の情報処理システム。
【請求項４】
前記関数定義手段は、前記新しい関数を複数定義し、
前記属性生成手段は、前記複数の新しい関数のうちそれぞれの新しい関数に基づいて、複数の前記新たな属性をそれぞれ生成し、
前記検定手段は、前記分析エンジンに、複数の前記新たな属性のうち特定の属性を入力し、前記分析エンジンが出力する情報を取得し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定する、
請求項１から３のいずれかに記載の情報処理システム。
【請求項５】
前記検定手段は、複数の前記の新たな属性のそれぞれに対して、
前記分析エンジンに複数の前記新たな属性のうち特定の属性を入力する処理と、
前記分析エンジンが出力する情報を取得する処理と、
前記取得した情報が所定の要件を満たすか否かを判定する処理と、
を実行する、
請求項４に記載の情報処理システム。
【請求項６】
前記分析エンジンが出力する情報のうち、前記要件を満たす情報を出力する、第１の出力手段を更に備える、請求項１から５のいずれかに記載の情報処理システム。
【請求項７】
前記分析エンジンが出力する情報が前記要件を満たした場合に、前記分析エンジンが出力する情報を得るために当該分析エンジンに入力された属性か、または、当該属性を生成するために、前記属性生成手段が適用した関数および前記関数を適用した属性を出力する、第２の出力手段を更に備える、請求項１から５のいずれかに記載の情報処理システム。
【請求項８】
前記関数定義手段は、複数の関数または写像を合成することによって、前記新しい関数を定義する、
請求項１から７のいずれかに記載の情報処理システム。
【請求項９】
前記検定手段は、分析エンジンとして回帰分析が選択された場合に、更に、目的変数として前記属性のうちいずれかの属性の指定を受け付け、前記要件として、説明変数の個数の指定を受け付ける、
請求項１から８のいずれかに記載の情報処理システム。
【請求項１０】
複数の関数を記憶する関数記憶手段にアクセス可能なコンピュータを、
前記複数の関数を合成することにより新しい関数を定義し、前記新しい関数を、属性に対して適用することにより、その属性に関数を適用した結果である新たな属性を生成し、前記属性に基づき分析処理を実行する分析エンジンに、前記新たな属性を入力し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定するよう制御する制御方法。
【請求項１１】
複数の関数を記憶する関数記憶手段にアクセス可能なコンピュータに、
前記複数の関数を合成することにより新しい関数を定義する処理と、前記新しい関数を、属性に対して適用することにより、その属性に関数を適用した結果である新たな属性を生成する処理と、前記属性に基づき分析処理を実行する分析エンジンに、前記新たな属性を入力し、前記分析エンジンが出力する情報が所定の要件を満たすか否かを判定する処理と、を実行させるプログラム。
【国際調査報告】
2015045282.tif 000020
2015045282.tif 000021