説明

時系列ルール抽出装置、時系列ルール抽出方法及び時系列ルール抽出プログラム

【課題】精度の良いルールを抽出すること。
【解決手段】時系列ルール抽出装置は、作成部、検出部、付与部、抽出部を備える。作成部は、時間ごとに系列の属性と結果属性とを対応づけた時系列データを基に、属性と該属性の値と時間の範囲とで表されるルール項を複数作成する。検出部は、複数のルール項の値を参照し、子であるルール項において真である系列は親であるルール項でも真である包含関係を満たすルール項の組合せを検出する。付与部は、検出された組合せのうち、子において真である系列の識別情報を子に付与することで、各ルール項に真である系列の識別情報を付与する。抽出部は、1又は2以上のルール項の組合せを作成し、その組合せに含まれるルール項と、その子とに付与された系列の和集合を求め、求めた和集合に含まれる系列の数、及び/又は、その系列のうち所定の結果属性を有する系列の割合が所定範囲である組合せを抽出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、時系列ルール抽出装置、時系列ルール抽出方法及び時系列ルール抽出プログラムに関する。
【背景技術】
【0002】
近年、センシング技術やネットワークの発達により様々な時系列データが蓄積されている。そして、この時系列データの活用方法の一つとして、時系列データから特徴的なルールを抽出する技術が存在する。例えば、この技術を農業分野に応用すると、「播種から6日目からの2日間連続で最低気温が10℃以上あると、病害虫が発生しやすい」というルールが抽出される。このルールは、実測値が条件と合致した場合にアラームを上げることで、農薬散布を促すなど、病害虫の発生を防ぐため活用される。
【0003】
ここで、ルールを抽出する技術について説明する。この技術において抽出されるルールは、一つ又は複数のルール項をANDでつないだ条件部と、その条件のもとで発生した結果属性との組合せによって表現される。上記の例では、「播種から6日目からの2日間連続で最低気温が10℃以上」がルール項に対応し、「病害虫が発生しやすい」が結果属性に対応する。このルール抽出技術は、時系列データを走査し、複数のルール項を作成する。そして、所定の結果属性を有するルール項を解析することで、ルールを抽出する。
【0004】
また、例えば、時系列データを活用する他の方法として、時系列データを記号に変換及び圧縮することで、効率的かつ正確に時系列データを予測する技術も存在する。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平10−63634号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記従来技術では、精度の良いルールを抽出することが難しいという問題があった。
【0007】
図30を用いて、従来技術の課題について説明する。図30は、従来技術の課題を説明するための図である。図30には、農業分野において圃場で蓄積される時系列データの一例を示す。この時系列データは、図30に示すように、例えば、栽培ID(Identification)、日付、最高気温などの各種データを対応づけて保持する。このうち、栽培IDは、各圃場で栽培された作物を識別する情報である。例えば、栽培IDは、複数行に渡って同一のIDが付与されており、複数行のうちの先頭行は作物の播種日に対応し、最終行は収穫日に対応する。図30に示すように、この時系列データは、例えば、作物「001」の圃場が、3月1日に最高気温19.4℃、最低気温7.6℃、平均気温13.7℃、降水量37mm、土壌水分80%であり、作物の栽培中に1回以上病害虫が発生したことを示す。なお、栽培IDは、系列IDとも称する。
【0008】
例えば、精度の良いルールを抽出するためには、柔軟なルール項を設定することが望ましい。農業分野に応用した例では、「播種からx日目からのn日間連続で最低気温がa℃以上ある」というルール項よりも「播種からx日目からのm日間のうち、最低気温がa℃以上ある日がn日以上ある」というルール項の方が柔軟である。図30に示した例では、「播種から1日目からの2日間連続で最低気温が7℃以上ある」というルール項よりも「播種から1日目からの3日間のうち、最低気温が7℃以上ある日が2日以上ある」というルール項の方が柔軟である。
【0009】
しかし、柔軟なルール項を設定すると、処理対象となるルール項の数が膨大になってしまう。例えば、ルール項「n日連続」と、より柔軟なルール項「m日間のうちn日以上」とについて、n,mがともに10以下で表現されるルール項数を考える。この場合、「n日連続」は、n=1〜10の10パターン存在し、「m日間のうちn日以上」は、「1日間のうち1日以上」「2日間のうち1日以上」・・・「10日間のうち10日以上」と55パターン存在する。なお、「n日連続」は、「n日間のうちn日以上」と同義である。
【0010】
このように、ルール項の数が膨大になると、メモリ上でルールを抽出する処理を実行できず、ハードディスク等の二次記憶を利用する必要があり、著しく処理速度が低下する。例えば、メモリ上での抽出処理に要するメモリ容量は、ルール項の数と系列の数との積に比例する。すなわち、設定できるルール項の数がメモリ容量による制限を受けてしまうため、精度の良いルールを抽出することが難しかった。
【0011】
開示の技術は、上記に鑑みてなされたものであって、精度の良いルールを抽出することができる時系列ルール抽出装置、時系列ルール抽出方法及び時系列ルール抽出プログラムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本願の開示する技術は、一つの態様において、作成部と、検出部と、付与部と、抽出部とを備える。作成部は、時間ごとに系列の属性と結果属性とを対応づけた時系列データを基に、属性と該属性の値と時間の範囲とを用いて表されるルール項を複数作成する。検出部は、作成部により作成された複数のルール項の属性の値を参照して、包含される側のルール項において真である系列は包含する側のルール項でも真である包含関係を満たすルール項の組合せを検出する。付与部は、検出部により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項にそのルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与する。抽出部は、複数のルール項のうち1又は2以上の組合せを作成し、作成した組合せに含まれるルール項と、そのルール項により包含される側のルール項とに付与された系列の識別情報の和集合を求める。抽出部は、求めた和集合に含まれる系列の識別情報の数、及び/又は、求めた和集合に含まれる系列の識別情報のうち所定の結果属性を有する系列の識別情報の割合が所定範囲である組合せを抽出する。
【発明の効果】
【0013】
本願の開示する技術の一つの態様によれば、精度の良いルールを抽出することができるという効果を奏する。
【図面の簡単な説明】
【0014】
【図1】図1は、実施例1に係る時系列ルール抽出装置の機能構成を示すブロック図である。
【図2】図2は、時系列データの一例を示す図である。
【図3】図3は、作成部の処理を説明するための図である。
【図4】図4は、検出部の処理を説明するための図である。
【図5】図5は、付与部の処理を説明するための図である。
【図6】図6は、付与部の処理を説明するための図である。
【図7】図7は、抽出部の処理を説明するための図である。
【図8】図8は、抽出部の処理を説明するための図である。
【図9】図9は、抽出部の処理を説明するための図である。
【図10】図10は、抽出部の処理を説明するための図である。
【図11】図11は、抽出部の処理を説明するための図である。
【図12】図12は、抽出部の処理を説明するための図である。
【図13】図13は、実施例1に係る時系列ルール抽出装置の処理手順を示すフローチャートである。
【図14】図14は、系列付与処理の処理手順を示すフローチャートである。
【図15】図15は、ルール抽出処理の処理手順を示すフローチャートである。
【図16】図16は、復元処理の処理手順を示すフローチャートである。
【図17】図17は、検出部の処理を説明するための図である。
【図18】図18は、付与部の処理を説明するための図である。
【図19】図19は、付与部の処理を説明するための図である。
【図20】図20は、系列付与処理の処理手順を示すフローチャートである。
【図21】図21は、検出部の処理を説明するための図である。
【図22】図22は、付与部の処理を説明するための図である。
【図23】図23は、付与部の処理を説明するための図である。
【図24】図24は、検出部の処理を説明するための図である。
【図25】図25は、付与部の処理を説明するための図である。
【図26】図26は、抽出部の処理を説明するための図である。
【図27】図27は、抽出部の処理を説明するための図である。
【図28】図28は、クライアントサーバシステムへの適用例を説明するための図である。
【図29】図29は、時系列ルール抽出プログラムを実行するコンピュータを示す図である。
【図30】図30は、従来技術の課題を説明するための図である。
【発明を実施するための形態】
【0015】
以下に、本願の開示する時系列ルール抽出装置、時系列ルール抽出方法及び時系列ルール抽出プログラムの実施例を図面に基づいて詳細に説明する。なお、本実施例により本発明が限定されるものではない。各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。また、本実施例において、本発明を農業分野に適用した場合を説明するが、本発明は農業分野だけでなく、航空分野においてフライトレコーダに蓄積されたデータの解析など、他の分野にも適用することができる。
【0016】
ここで、本発明において抽出されるルールについて説明する。このルールは、一つ又は複数のルール項をANDでつないだ条件部と、その条件のもとで発生した結果属性との組合せによって表現される。このうち、ルール項は、時間の範囲と、一つ又は複数の属性の値の範囲とを用いて表される条件である。1つのルール項で表現された条件部は、例えば、「播種から6日目からの2日間連続で最低気温が10℃以上」である。また、2つのルール項で表現された条件部は、例えば、「播種から6日目からの2日間連続で最低気温が10℃以上あり、かつ、播種から1日目からの2日間連続で最低気温が8℃以上」である。また、結果属性は、例えば、病害虫の発生の有無を示す情報である。つまり、本発明において抽出されるルールは、例えば、「播種から6日目からの2日間連続で最低気温が10℃以上あると、病害虫が発生しやすい」となる。
【実施例1】
【0017】
実施例1に係る時系列ルール抽出装置の機能構成の一例について説明する。図1は、実施例1に係る時系列ルール抽出装置の機能構成を示すブロック図である。図1に示すように、この時系列ルール抽出装置100は、記憶部110と、制御部120とを有する。また、時系列ルール抽出装置100は、入力装置101と、出力装置102とに接続される。
【0018】
入力装置101は、各種情報の入力を受け付ける。例えば、入力装置101は、時系列データ111の入力や、ルール抽出条件を示す情報の入力を受け付ける。この時系列データ111の説明は、時系列データ111を説明する項にて後述する。このルール抽出条件の説明は、抽出部124を説明する項にて後述する。また、例えば、入力装置101は、キーボードやマウス、媒体読み取り装置、あるいは温度計や湿度計などの各種センサに対応する。
【0019】
出力装置102は、各種情報を出力する。例えば、出力装置102は、時系列ルール抽出装置100により時系列データ111から抽出されたルールを含むルール集合113を出力する。また、例えば、出力装置102は、ディスプレイやモニタなどに対応する。
【0020】
記憶部110は、時系列データ111と、ルール項集合112と、ルール集合113とを有する。記憶部110は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、ハードディスクや光ディスクなどの記憶装置に対応する。
【0021】
時系列データ111は、所定時間ごとに、属性の値と、結果属性の値とを対応づけたデータである。例えば、時系列データ111は、入力装置101が受け付けた情報である。図2は、時系列データの一例を示す図である。図2に示すように、時系列データ111は、例えば、系列ID(Identification)と、日付と、最低気温と、病害虫有無とを対応づける。このうち、系列IDは、各圃場で栽培された作物を識別する情報である。例えば、系列IDは、複数行に渡って同一のIDが付与されており、複数行のうちの先頭行は作物の播種日に対応し、最終行は収穫日に対応する。日付は、データを取得した日付を示す。最低気温は、データを取得した日の最低気温を示す。病害虫有無は、作物の栽培中に1回以上病害虫が発生したか否かを示す。なお、系列IDは、栽培IDとも称する。また、最低気温は、属性の値の一例である。また、病害虫有無は、結果属性の値の一例である。
【0022】
図2に示すように、時系列データ111は、例えば、系列ID「001」と、日付「3/1」と、最低気温「5」と、病害虫有無「有」とを対応づけて保持する。つまり、作物「001」の圃場は、3月1日に最低気温が5℃であり、作物の栽培中に1回以上病害虫が発生したことを示す。また、時系列データ111は、系列「001」について、他の日付ごとに、最低気温を同様に対応づける。また、時系列データ111は、他の系列IDについても同様に、日付と、最低気温と、病害虫有無とを対応づけて保持する。なお、ここでは、時系列データ111が属性と結果属性とを1種類ずつ対応づける場合を説明したが、本発明はこれに限定されるものではない。例えば、時系列データ111は、数種類の属性と数種類の結果属性とを対応づけても良い。なお、以下では、時系列データ111に含まれ、系列IDで識別される各データを系列と称する。
【0023】
ルール項集合112は、後述する作成部121により作成されたルール項の集合である。このルール項集合112は、例えば、作成部121により時系列データ111が走査されることで生成される。例えば、ルール項集合112は、後述する図3により表される。
【0024】
ルール集合113は、後述する抽出部124により抽出されたルールの集合である。このルール集合113は、抽出部124により一つ又は複数のルール項が組み合わされたルール候補のうち、ルール抽出条件を満たすものである。例えば、ルール集合113は、後述する図12により表される。
【0025】
制御部120は、作成部121と、検出部122と、付与部123と、抽出部124とを有する。制御部120の機能は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路により実現することができる。また、制御部120の機能は、例えば、CPU(Central Processing Unit)が所定のプログラムを実行することで実現することができる。
【0026】
作成部121は、時間ごとに系列の属性と結果属性とを対応づけた時系列データを基に、属性とその属性の値と時間の範囲とを用いて表されるルール項を複数作成する。例えば、作成部121は、時系列データ111を走査してルール項を複数作成し、作成したルール項をルール項集合112に格納する。
【0027】
以下において、作成部121の処理を説明する。ここでは、一例として、作成部121が図2に示した時系列データ111を処理対象とする場合を説明する。例えば、作成部121は、時系列データ111を記憶部110から読み込む。作成部121は、時系列データ111から系列の最大長Lを取得する。ここで、系列の長さは、時系列データ111における各系列IDの行数に対応する。図2において、系列ID「001」の長さは「3」である。また、系列ID「002」の長さは「3」である。また、系列ID「003」の長さは「3」である。また、系列ID「004」の長さは「3」である。このため、作成部121は、系列の最大長Lとして「3」を取得する。
【0028】
また、例えば、作成部121は、時系列データ111を走査し、各属性の最小値と最大値とを取得する。図2において、時系列データ111が有する属性は「最低気温」であり、最小値は「0」、最大値は「12」である。つまり、作成部121は、最低気温の最小値「0」と最大値「12」とを取得する。
【0029】
また、例えば、作成部121は、取得した各属性の最小値から最大値までを等分割するように、各属性をN個の区間に分割する。例えば、作成部121は、N=3として、4℃未満の区間と、4℃以上8℃未満の区間と、8℃以上の区間との3つの区間に最低気温の区間を分割する。なお、ここではN=3の場合を説明したが、本発明はこれに限定されるものではない。例えば、作成部121は、N=2として、6℃未満の区間と、6℃以上の区間との2つの区間に最低気温の区間を分割しても良い。
【0030】
また、例えば、作成部121は、ルール項「系列の先頭から数えてx〜y行目から始まるm行のうち属性zがa以上b未満である行数がn以上である」を作成する。このルール項は、7つのパラメータ「x、y、z、m、n、a、b」を含む。これらのパラメータは、下記の条件を満たす。
x(1≦x≦L)
y(x≦y≦L)
属性z
属性区間の開始インデックスVb(1≦Vb≦N)
属性区間の終了インデックスVe(Vb≦Ve≦N)
m(1≦m≦L)
n(1≦n≦m)
【0031】
また、Vbとaとの関係、Veとbとの関係は、下記の通りである。ただし、(a,b)=(−∞,∞)という組合せは、属性zの値に関わらず真なので除外する。
a:Vb番目の属性区間の下限値
b:Ve番目の属性区間の上限値
【0032】
例えば、作成部121は、図2に示した時系列データから上記の条件を満たすx及びyとして、下記の6通りの組合せを取得する。
(x,y)={(1,1),(1,2),(1,3),(2,2),(2,3),(3,3)}
【0033】
また、作成部121は、図2に示した時系列データから上記の条件を満たすzとして、「最低気温」の1種類を取得する。
【0034】
また、作成部121は、図2に示した時系列データから上記の条件を満たすa及びbとして、下記の5通りの組合せを取得する。なお、作成部121は、(a,b)=(−∞,∞)という組合せも取得するが、この組合せは属性zの値に関わらず真なので除外する。
(a,b)={(−∞,4),(−∞,8),(4,8),(4,∞),(8,∞)}
【0035】
また、作成部121は、図2に示した時系列データから上記の条件を満たすm及びnとして、下記の6通りの組合せを取得する。
(m,n)={(1,1),(2,1),(3,1),(2,2),(3,2),(3,3)}
【0036】
つまり、作成部121は、図2に示した時系列データ111から、6×1×5×6=180通りのルール項を作成する。なお、作成部121が作成するルール項は、上記のルール項に限定されるものではない。例えば、上記パラメータのうちいずれかを含まなくても良い。また、例えば、上記パラメータ以外のパラメータを含んでも良い。
【0037】
なお、以下では、説明を簡潔にするために、x及びyとして、下記の2通りを用いて説明する。
(x,y)={(1,1),(2,2)}
【0038】
また、同様に、a及びbとして、下記の2通りを用いて説明する。
(a,b)={(4,∞),(8,∞)}
【0039】
また、同様に、m及びnとして、下記の2通りを用いて説明する。
(m,n)={(2,1),(1,1)}
【0040】
つまり、以下では、作成部121が2×1×2×2=8通りのルール項を作成した場合を説明する。
【0041】
図3を用いて、作成部の処理を説明する。図3は、作成部の処理を説明するための図である。図3に示すように、作成部121は、「ルール項ID」と、「x」と、「y」と、「z」と、「a」と、「b」と、「m」と、「n」とを対応づけて保持する。このうち、「ルール項ID」は、ルール項を識別する識別番号である。また、「x」、「y」、「z」、「a」、「b」、「m」及び「n」の7つのパラメータは、ルール項に含まれるパラメータに対応する。
【0042】
図3に示すように、作成部121は、例えば、図2に示した時系列データ111を走査し、7つのパラメータについて上記の条件を満たすルール項を複数作成する。例えば、作成部121は、1つのルール項として、ルール項ID「ルール項1」と、x「1」と、y「1」と、z「最低気温」と、a「4」と、b「∞」と、m「2」と、n「1」とを対応づける。つまり、作成部121は、ルール項1として、「系列の先頭から数えて1〜1行目から始まる2行のうち属性「最低気温」が「4℃」以上「∞℃」未満である行数が1以上」を作成したことを示す。また、作成部121は、他のルール項についても同様に作成する。また、例えば、作成部121は、作成したルール項の集合をルール項集合112として記憶部110に格納する。なお、以下では、例えば、ルール項ID「1」のルール項を「ルール項1」と略記する。
【0043】
検出部122は、作成部121により作成された複数のルール項の属性の値を参照して、包含される側のルール項において真である系列は包含する側のルール項でも真である包含関係を満たすルール項の組合せを検出する。
【0044】
ここで、包含関係について説明する。包含関係は、一方のルール項が真である系列は他方のルール項でも真であるというルール項間の関係である。例えば、ルール項「A」と「B」との間に、ルール項「A」が真である系列はルール項「B」でも真であるという関係がある場合には、ルール項「B」がルール項「A」を包含する包含関係にある。具体的には、包含関係は、ルール項「A」のパラメータとルール項「B」のパラメータの大小関係によって定義される。例えば、包含される側のルール項「A」及び包含する側のルール項「B」が、上述した7つのパラメータ「x、y、z、a、b、m、n」を有する場合には、下記の式(1)〜(7)が成立する。なお、ルール項「A」のパラメータを「x_A、y_A、z_A、a_A、b_A、m_A、n_A」とし、ルール項「B」のパラメータを「x_B、y_B、z_B、a_B、b_B、m_B、n_B」とする。また、包含関係は、「親子関係」とも称する。下記の式(1)〜(7)が成立する場合、ルール項「A」が「子」、ルール項「B」が「親」である。
x_A≧x_B・・・(1)
y_A≦y_B・・・(2)
z_A=z_B・・・(3)
a_A≧a_B・・・(4)
b_A≦b_B・・・(5)
m_A≦m_B・・・(6)
n_A≧n_B・・・(7)
【0045】
例えば、検出部122は、ルール項集合112からルール項の情報を取得する。検出部122は、ルール項集合112に含まれるルール項のうち、あるルール項のパラメータを上記のルール項「B」のパラメータに代入する。検出部122は、他のルール項のパラメータを上記のルール項「A」のパラメータに代入し、式(1)〜(7)が全て成立するか否かを判定する。式(1)〜(7)が全て成立する場合には、検出部122は、ルール項「A」に代入したルール項IDを、ルール項「B」に代入したルール項の子集合に格納する。この子集合は、ルール項「B」に代入したルール項の子の集合である。検出部122は、ルール項集合112に含まれるルール項の全ての組合せについて、同様の処理を実行することで、全てのルール項の子集合を求める。
【0046】
図4を用いて、検出部122の処理を説明する。図4は、検出部の処理を説明するための図である。図4に示すように、検出部122は、「ルール項ID」と、「x」と、「y」と、「a」と、「m」と、「子集合」とを対応づけて保持する。このうち、「ルール項ID」、「x」、「y」、「a」及び「m」は、図3に示したルール項の情報と同様である。「子集合」は、ルール項の子の集合である。なお、検出部122は、ルール項の情報として、「z」、「b」及び「n」についてもルール項集合112から取得するが、これらのパラメータはルール項1からルール項8において同値であるため省略する。
【0047】
図4に示すように、例えば、検出部122は、ルール項「B」のパラメータにルール項1のパラメータを代入する。検出部122は、ルール項「A」のパラメータにルール項2のパラメータを代入し、上記の式(1)〜(7)が全て成立するか否かを判定する。この場合、式(1)〜(7)が全て成立するので、検出部122は、ルール項2のルール項ID「2」をルール項1の子集合に格納する。他のルール項についても同様に、ルール項「A」のパラメータ代入し、判定することで、ルール項1の子集合には「2,3,4」が格納される。これは、ルール項2、ルール項3及びルール項4がルール項1の子であることを示す。また、検出部122は、ルール項集合112に含まれるルール項の全ての組合せについて、同様の処理を実行することで、ルール項1からルール項8のそれぞれについて子集合を求める。なお、図4の空欄は、空集合であることを示す。例えば、ルール項4の子集合は空集合であり、ルール項4の子が存在しないことを示す。
【0048】
付与部123は、検出部122により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項に当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与する。例えば、付与部123は、複数のルール項に対して各ルール項を満たす系列の系列IDを付与し、複数のルール項の間に包含関係がある場合には、包含関係にあるルール項のうち子に対して各ルール項を満たす系列の系列IDを付与する。
【0049】
例えば、付与部123は、時系列データ111から系列の情報を取得する。付与部123は、取得した系列ごとに、ルール項集合112に含まれるルール項を満たすか否かを判定する。取得した系列がルール項を満たす場合には、付与部123は、取得した系列の系列IDをルール項の系列ID集合に追加する。ここで、ルール項を満たす系列のうち、所定の結果属性の値を有する系列の系列IDを系列ID集合(有)に追加し、所定の結果属性の値を有しない系列の系列IDを系列ID集合(無)に追加する。
【0050】
図5を用いて、付与部123の処理を説明する。図5は、付与部の処理を説明するための図である。図5に示すように、付与部123は、「ルール項ID」と、「x」と、「y」と、「a」と、「m」と、「子集合」と、「系列ID集合(有)」と、「系列ID集合(無)」とを対応づけて保持する。このうち、「ルール項ID」、「x」、「y」、「a」、「m」及び「子集合」は、図4に示したルール項の情報と同様である。「系列ID集合(有)」は、ルール項を満たす系列IDのうち、所定の結果属性の値を有する系列IDの集合を示す。「系列ID集合(無)」は、ルール項を満たす系列IDのうち、所定の結果属性の値を有しない系列IDの集合を示す。
【0051】
例えば、付与部123は、図2に示した時系列データ111から系列「001」の情報を取得し、図5に示した各ルール項を満たすか否かを判定する。ここで、ルール項「系列の先頭から数えてx〜y行目から始まるm行のうち属性zがa以上b未満である行数がn以上である」を満たすか否かを判定する場合には、付与部123は、x以上y以下の整数iを用いて表される次の条件を満たすか否かを判定する。すなわち、付与部123は、条件「その系列のi行目からi+m−1行目までに属性zの値がa以上b未満である行数がn以上ある」を満たすか否かを判定する。例えば、i=1の場合、ルール項1の条件は「その系列の1行目から2行目までに最低気温が4℃以上∞℃未満である行数が1以上ある」となる。系列「001」はこの条件を満たすので、付与部123は、ルール項1の系列ID集合に系列ID「001」を追加する。ここで、系列「001」は病害虫有無が「有」であるので、付与部123は、ルール項1の系列ID集合(有)に系列ID「001」を追加する。同様に、系列「001」はルール項「2,3,5,6,7,8」を満たすので、付与部123は、ルール項「2,3,5,6,7,8」の系列ID集合(有)に系列ID「001」を追加する。また、他の系列についても同様に処理を実行することで、付与部123は、図5に示すように、各ルール項を満たす系列の系列IDを各ルール項の系列ID集合に追加する。
【0052】
また、例えば、付与部123は、系列IDを追加済みのルール項を選択し、選択したルール項の全ての子の系列ID集合の和集合を求める。ここで、付与部123は、系列ID集合(有)の和集合と、系列ID集合(無)の和集合とをそれぞれ求める。付与部123は、選択したルール項の系列ID集合から、求めた和集合を削除する。ここで、付与部123は、求めた系列ID集合(有)の和集合をルール項の系列ID集合(有)から削除し、求めた系列ID集合(無)の和集合をルール項の系列ID集合(無)から削除する。
【0053】
図6を用いて、付与部123の処理を説明する。図6は、付与部の処理を説明するための図である。図6に示すように、付与部123は、「ルール項ID」と、「x」と、「y」と、「a」と、「m」と、「子集合」と、「系列ID集合(有)」と、「系列ID集合(無)」とを対応づけて保持する。このうち、「ルール項ID」、「x」、「y」、「a」、「m」及び「子集合」は、図5に示したルール項の情報と同様である。
【0054】
例えば、付与部123は、図6に示したルール項からルール項1を選択する。ルール項1の子はルール項2,3,4であるので、付与部123は、それらの系列ID集合(有)の和集合「001,002」を求める。付与部123は、求めた和集合「001,002」をルール項1の系列ID集合(有)「001,002」から削除する。この結果、図6に示したルール項1の系列ID集合(有)は空集合となる。ルール項1の系列ID集合(無)についても同様に処理を実行することで、付与部123は、ルール項1の系列ID集合(無)「003」を求める。また、他のルール項についても同様に処理を実行することで、付与部123は、図6に示すように、各ルール項の系列ID集合(有)及び系列ID集合(無)を求める。
【0055】
ここで、図5の系列ID集合が20個の系列IDを保持するのに対して、図6の系列ID集合は10個の系列IDを保持する。このため、時系列ルール抽出装置100は、系列ID集合の保持に要するメモリ容量を削減できる。
【0056】
抽出部124は、複数のルール項のうち1又は2以上の組合せを作成し、作成した組合せに含まれるルール項と、そのルール項により包含される側のルール項とに付与された系列の識別情報の和集合を求める。抽出部124は、求めた和集合に含まれる系列の識別情報の数、及び/又は、求めた和集合に含まれる系列の識別情報のうち所定の結果属性を有する系列の識別情報の割合が所定範囲である組合せを抽出する。
【0057】
例えば、抽出部124は、ルール項集合に含まれる1又は2以上のルール項を組合せ、ルール候補を作成する。抽出部124は、作成したルール候補のうち、ルール抽出条件を満たすルール候補をルールとして抽出する。ここで、ルール抽出条件は、例えば、最小支持度と、最小信頼度と、所定の結果属性とによって表される。このうち、最小支持度は、支持度の最小値である。この支持度は、時系列データにおいて、ルールの条件部を満たす系列の数である。また、最小信頼度は、信頼度の最小値である。この信頼度は、時系列データにおいて、ルールの条件部を満たす系列のうち、所定の結果属性を示す系列の割合である。例えば、抽出部124は、ルール抽出条件として、最小支持度「2」と、最小信頼度「1」と、結果属性「病害虫有無(有)」とを受け付ける。
【0058】
以下では、図7から図12を用いて、ルール候補を作成する処理と、ルールを抽出する処理とをそれぞれ説明する。図7から図12は、抽出部の処理を説明するための図である。まず、ルール候補を作成する処理、すなわち、抽出部124がルール項集合に含まれる1又は2以上のルール項を組合せてルール候補を算出する処理を説明する。次に、ルールを抽出する処理、すなわち、抽出部124が作成したルール候補のうち、ルール抽出条件を満たすルール候補をルールとして抽出する処理を説明する。
【0059】
まず、ルール候補を作成する処理を説明する。例えば、抽出部124は、ルール項集合からk個のルール項を選択し、選択したルール項を組み合わせてルール項数kのルール候補を算出する。ここで、kは、1以上の整数である。また、kは、抽出部124の処理の開始時にはk=1が設定され、ルール項数kのルール候補がルール抽出条件を満たすか否か判定されるごとに1インクリメントされる。以下では、k=1の場合と、kが2以上の場合とに分けて説明する。
【0060】
k=1の場合を説明する。例えば、抽出部124は、付与部123によって系列ID集合が付与されたルール項集合からルール項を1つずつ取得し、取得したルール項それぞれをルール候補とする。また、例えば、抽出部124は、それぞれのルール候補について、支持度と信頼度とを算出する。抽出部124は、ルール候補を1つ選択し、選択したルール候補に含まれるルール項について、系列ID集合を復元する復元処理を実行する。
【0061】
ここで、復元処理について説明する。例えば、抽出部124は、選択したルール候補に含まれるルール項について、ルール項の全ての子の系列ID集合の和集合を求める。具体的には、抽出部124は、ルール項の全ての子の系列ID集合(有)の和集合と、系列ID集合(無)の和集合とを求める。抽出部124は、求めた和集合とルール項の系列ID集合との和集合を求める。具体的には、抽出部124は、求めた系列ID集合(有)の和集合とルール項の系列ID集合(有)との和集合を求め、求めた系列ID集合(無)の和集合とルール項の系列ID集合(無)との和集合を求める。このように、抽出部124は、各ルール項の全ての子の系列ID集合の和集合を求め、求めた和集合を各ルール項の系列ID集合に加えることで、各ルール項の系列ID集合を復元する。
【0062】
抽出部124は、復元処理を実行した後に、支持度と信頼度とを算出する。抽出部124は、各ルール項の系列ID集合に含まれる系列の数の総和を支持度として算出する。具体的には、抽出部124は、系列ID集合(有)と系列ID集合(無)とに含まれる系列の数の総和を支持度として算出する。また、抽出部124は、系列ID集合(有)に含まれる系列の数を支持度で除算することで、信頼度を算出する。このように、抽出部124は、k=1の場合には、ルール項集合に含まれるルール項それぞれをルール候補とし、それぞれのルール候補について支持度と信頼度とを求めることで、ルール候補を作成する。なお、ここでは系列ID集合(有)を用いて支持度を算出したが、これに限定されるものではない。例えば、所定の結果属性を示さない系列の割合をルール抽出条件とする場合には、系列ID集合(無)を用いて支持度を算出しても良い。
【0063】
図7を用いて、k=1の場合に、抽出部124がルール候補を作成する処理を説明する。図7に示すように、抽出部124は、「ルール項数1のルール候補」と、「子集合」と、「系列ID集合(有)」と、「系列ID集合(無)」と、「支持度」と、「信頼度」とを対応づけて保持する。このうち、「ルール項数1のルール候補」は、ルール候補を識別する識別情報を示す。例えば、「ルール候補1」は、図6に示したルール項1に対応するルール候補である。「支持度」は、ルール候補ごとに算出された支持度を示す。例えば、支持度「4」は、対応するルール候補を満たす系列が4つあることを示す。「信頼度」は、ルール候補ごとに算出された信頼度を示す。例えば、信頼度「0.5」は、対応するルール候補を満たす系列のうち、所定の結果属性を示す系列の割合が0.5であることを示す。「子集合」、「系列ID集合(有)」及び「系列ID集合(無)」は、図6に示したルール項の情報と同様である。
【0064】
図7に示すように、抽出部124は、図6に示したルール項集合からルール項の情報を取得し、取得したルール項のそれぞれを、ルール項数1のルール候補とする。例えば、抽出部124は、図6に示したルール項1について、子集合と、系列ID集合(有)と、系列ID集合(無)とを取得し、取得したルール項1をルール候補1とする。抽出部124は、ルール候補1の子集合「ルール項2,3,4」の系列ID集合(有)の和集合を求める。ここで、ルール項2の系列ID集合(有)は「001,002」、ルール項3の系列ID集合(有)は「001」、ルール項4の系列ID集合(有)は「空集合」であるので、抽出部124は、和集合「001,002」を求める。抽出部124は、求めた和集合「001,002」とルール候補1の系列ID集合(有)との和集合を求めることで、ルール候補1の系列ID集合(有)「001,002」を一時的に復元する。抽出部124は、系列ID集合(無)についても同様に復元し、ルール候補1の系列ID集合(有)「003,004」を一時的に復元する。抽出部124は、復元後の系列ID集合(有)の系列数「2」と系列ID集合(無)の系列数「2」とを加算し、支持度「4」を算出する。抽出部124は、復元後の系列ID集合(有)の系列数「2」を支持度「4」で除算することで、信頼度「0.5」を算出する。このように、抽出部124は、図6のルール項1をルール候補1とし、系列ID集合を復元した後に支持度と信頼度とを算出することで、図7に示すように、ルール候補1を作成する。また、抽出部124は、他のルール項についても同様に情報を取得し、支持度と信頼度とを算出することで、ルール項数1のルール候補を作成する。なお、ここで一時的に復元した系列ID集合は、ルール候補作成後に消去しても良く、RAMの空き領域に保持しても良い。
【0065】
kが2以上の場合を説明する。例えば、抽出部124は、ルール項数k−1のルール候補のうち、「支持度と信頼度との積」が「最小支持度と最小信頼度との積」以上となるルール候補を組み合わせることで、ルール項数kのルール候補を作成する。つまり、抽出部124は、ルール抽出条件で与えられた最小支持度と最小信頼度との積を算出する。抽出部124は、ルール項数k−1において作成したルール候補ごとに、支持度と信頼度との積を算出し、算出した値と最小支持度と最小信頼度との積とを比較する。抽出部124は、比較結果に基づいて、支持度と信頼度との積が最小支持度と最小信頼度との積以上となるルール項数k−1のルール候補を選択する。
【0066】
また、例えば、抽出部124は、選択したルール項数k−1のルール候補に含まれるルール項を全て抽出する。抽出部124は、抽出したルール項から、k個のルール項を選択する。抽出部124は、選択したk個のルール項のうちルール項数k−1の組合せの全てが、選択したルール項数k−1のルール候補に存在するか否かを判定する。例えば、3個のルール項「A,B,C」を選択した場合には、抽出部124は、このうちルール項数2の組合せ「A,B」「A,C」「B,C」の全てが、ルール項数2のルール候補に存在するか否かを判定する。存在する場合には、抽出部124は、選択したk個のルール項を組み合わせ、ルール項数kのルール候補とする。また、抽出部124は、k個のルール項として他の組合せについても同様に処理を実行し、ルール項数kのルール候補を作成する。
【0067】
図7及び図8を用いて、抽出部124がルール項数2のルール候補を作成する処理を説明する。抽出部124は、ルール抽出条件で与えられた最小支持度「2」と最小信頼度「1」との積「2×1=2」を算出する。抽出部124は、ルール項数1のルール候補ごとに、支持度と信頼度との積を算出する。例えば、図7に示すように、抽出部124は、ルール候補1の支持度と信頼度との積「4×0.5=2」を算出する。同様に、抽出部124は、ルール候補2について「3×0.67=2.01」、ルール候補3について「2×0.5=1」、ルール候補4について「1×0=0」をそれぞれ算出する。また、同様に、抽出部124は、ルール候補5について「4×0.5=2」、ルール候補6について「2×0.5=1」、ルール候補7について「3×0.67=2.01」、ルール候補8について「1×1=1」をそれぞれ算出する。抽出部124は、算出したそれぞれの値と最小支持度と最小信頼度との積「2」とを比較し、「2」以上のルール項数1のルール候補「1,2,5,7」を選択する。抽出部124は、選択したルール候補「1,2,5,7」に含まれるルール項「1,2,5,7」を抽出する。抽出部124は、ルール項「1,2,5,7」から、2個のルール項を選択し、組み合わせる。例えば、抽出部124は、ルール項1と2とを選択し、組合せ(1,2)を作成する。抽出部124は、この2個のルール項のうちルール項数1の組合せの全てが、ルール項数1のルール候補に存在するか否かを判定する。図7に示すように、ルール項数1のルール候補にルール候補1及びルール候補2が存在するので、抽出部124は、図8に示すように、「ルール候補1×2」を作成する。なお、「ルール候補1×2」は、ルール項1とルール項2とをANDでつないだルール候補を示す。また、抽出部124は、他の組合せについても同様に処理を実行し、ルール項数2のルール候補として、「ルール候補1×5」「ルール候補1×7」「ルール候補2×5」「ルール候補2×7」「ルール候補5×7」をそれぞれ作成する。
【0068】
また、例えば、抽出部124は、作成したルール候補ごとに、支持度と信頼度とを算出する。具体的に、抽出部124は、作成したルール候補を1つ選択し、選択したルール候補に含まれるk個のルール項それぞれについて、上述の復元処理を実行する。抽出部124は、復元処理を実行した後に、選択したルール候補について、ルール候補に含まれるk個のルール項の系列ID集合の積集合を求める。ここで、抽出部124は、系列ID集合(有)の積集合と系列ID集合(無)の積集合とをそれぞれ求める。抽出部124は、求めた系列ID集合(有)の積集合と系列ID集合(無)の積集合とを用いて、支持度と信頼度とを算出する。具体的には、抽出部124は、ルール候補について求めた系列ID集合(有)の積集合と系列ID集合(無)の積集合とに含まれる系列の数の総和を支持度として算出する。また、抽出部124は、系列ID集合(有)の積集合に含まれる系列の数を支持度で除算することで、信頼度を算出する。なお、ここでは系列ID集合(有)を用いて支持度を算出したが、これに限定されるものではない。例えば、所定の結果属性を示さない系列の割合をルール抽出条件とする場合には、系列ID集合(無)を用いて支持度を算出しても良い。
【0069】
図9を用いて、抽出部124がルール項数2のルール候補の支持度と信頼度とを算出する処理を説明する。図9に示すルール項数2のルール候補は、図8に示したものと同様である。図9に示すように、例えば、抽出部124は、ルール候補1×2を選択し、選択したルール候補1×2に含まれるルール項1及びルール項2について、上述の復元処理を実行する。抽出部124は、復元処理を実行した後に、ルール項1及びルール項2の系列ID集合の積集合を求める。例えば、ルール項1の系列ID集合(有)が「001,002」であり、ルール項2の系列ID集合(有)が「001,002」であるので、抽出部124は、積集合「001,002」を算出する。また、例えば、ルール項1の系列ID集合(無)が「003,004」であり、ルール項2の系列ID集合(無)が「004」であるので、抽出部124は、積集合「004」を算出する。抽出部124は、系列ID集合(有)の積集合の系列数「2」と、系列ID集合(無)の積集合の系列数「1」とを加算し、支持度「2+1=3」を算出する。抽出部124は、系列ID集合(有)の積集合の系列数「2」を支持度「3」で除算することで、信頼度「2÷3=0.67」を算出する。このように、抽出部124は、図9のルール候補1×2について、ルール候補1×2に含まれる各ルール項の系列ID集合を復元する。そして、抽出部124は、復元した後に系列ID集合の積集合を求め、支持度と信頼度とを算出することで、図9に示すように、ルール候補1×2を作成する。また、抽出部124は、他のルール候補についても同様に処理を実行することで、ルール項数2のルール候補を作成する。なお、ここで一時的に復元した系列ID集合は、ルール候補作成後に消去しても良く、RAMの空き領域に保持しても良い。
【0070】
図9及び図10を用いて、抽出部124がルール項数3のルール候補を作成する処理を説明する。抽出部124は、図9に示したルール項数2のルール候補ごとに、支持度と信頼度との積を算出する。例えば、抽出部124は、ルール候補1×2の支持度と信頼度との積「3×0.67=2.01」を算出する。同様に、抽出部124は、ルール候補1×5について「4×0.5=2」、ルール候補1×7について「3×0.67=2.01」をそれぞれ算出する。また、同様に、抽出部124は、ルール候補2×5について「3×0.67=2.01」、ルール候補2×7について「2×1=2」、ルール候補5×7について「3×0.67=2.01」をそれぞれ算出する。抽出部124は、算出したそれぞれの値と最小支持度と最小信頼度との積「2」とを比較し、「2」以上のルール項数2のルール候補「1×2,1×5,1×7,2×5,2×7,5×7」を選択する。抽出部124は、選択したルール候補「1×2,1×5,1×7,2×5,2×7,5×7」に含まれるルール項「1,2,5,7」を抽出する。抽出部124は、ルール項「1,2,5,7」から、3個のルール項を選択し、組み合わせる。例えば、抽出部124は、ルール項1と2と5とを選択し、組合せ(1,2,5)を作成する。抽出部124は、この3個のルール項のうち2個を組合せの全てが、ルール項数2のルール候補に存在するか否かを判定する。(1,2,5)から任意の2個を選択して作成される組合せは(1,2)(1,5)(2,5)の3組みであるので、抽出部124は、この3組みを組み合わせたルール候補が、ルール項数2のルール候補に存在するか否かを判定する。図9には、ルール候補「1×2,1×5,2×5」が存在するので、抽出部124は、図10に示すように、「ルール候補1×2×5」を作成する。なお、「ルール候補1×2×5」は、ルール項1とルール項2とルール項5とをANDでつないだルール候補を示す。また、抽出部124は、他の組合せについても同様に処理を実行し、ルール項数3のルール候補として、「ルール候補1×2×7」「ルール候補1×5×7」「ルール候補2×5×7」をそれぞれ作成する。
【0071】
図10を用いて、抽出部124がルール項数3のルール候補の支持度と信頼度とを算出する処理を説明する。例えば、抽出部124は、図10のルール候補1×2×5を選択し、ルール候補1×2×5に含まれるルール項1、ルール項2及びルール項5について、上述の復元処理を実行する。抽出部124は、復元した後に、ルール項1、ルール項2及びルール項5の系列ID集合の積集合を求め、支持度と信頼度とを算出する。この結果、抽出部124は、ルール候補1×2×5の支持度「3」と、信頼度「0.67」とを算出する。また、抽出部124は、他のルール候補についても同様に処理を実行することで、支持度と信頼度とを算出する。
【0072】
図10及び図11を用いて、抽出部124がルール項数4のルール候補を作成する処理を説明する。抽出部124は、図10に示したルール項数3のルール候補ごとに、支持度と信頼度との積を算出する。例えば、抽出部124は、ルール候補1×2×5の支持度と信頼度との積「3×0.67=2.01」を算出する。同様に、抽出部124は、ルール候補1×2×7について「2×1=2」、ルール候補1×5×7について「3×0.67=2.01」、ルール候補2×5×7について「2×1=2」をそれぞれ算出する。抽出部124は、算出したそれぞれの値と最小支持度と最小信頼度との積「2」とを比較し、「2」以上のルール項数2のルール候補「1×2×5,1×2×7,1×5×7,2×5×7」を選択する。抽出部124は、選択したルール候補「1×2×5,1×2×7,1×5×7,2×5×7」に含まれるルール項「1,2,5,7」を抽出する。抽出部124は、ルール項「1,2,5,7」から、4個のルール項を選択し、組み合わせる。例えば、抽出部124は、ルール項1と2と5と7とを選択し、組合せ(1,2,5,7)を作成する。抽出部124は、この4個のルール項のうち3個を組合せの全てが、ルール項数3のルール候補に存在するか否かを判定する。(1,2,5,7)から任意の3個を選択して作成される組合せは(1,2,5)(1,2,7)(1,5,7)(2,5,7)の4組みであるので、抽出部124は、この4組みを組み合わせたルール候補が、ルール項数3のルール候補に存在するか否かを判定する。図10には、ルール候補「1×2×5,1×2×7,1×5×7,2×5×7」が存在するので、抽出部124は、図11に示すように、「ルール候補1×2×5×7」を作成する。なお、「ルール候補1×2×5×7」は、ルール項1とルール項2とルール項5とルール項7とをANDでつないだルール候補を示す。
【0073】
図11を用いて、抽出部124がルール項数4のルール候補の支持度と信頼度とを算出する処理を説明する。例えば、抽出部124は、図11のルール候補1×2×5×7を選択し、ルール候補1×2×5×7に含まれるルール項1、ルール項2、ルール項5及びルール項7について、上述の復元処理を実行する。抽出部124は、復元した後に、ルール項1、ルール項2、ルール項5及びルール項7の系列ID集合の積集合を求め、支持度と信頼度とを算出する。この結果、抽出部124は、ルール候補1×2×5×7の支持度「2」と、信頼度「1」とを算出する。
【0074】
ここで、図11に示したルール項数4のルール候補を構成するルール項は、ルール項「1,2,5,7」の4つのみである。よって、ルール項数5のルール候補を作成することはできないため、抽出部124は、ここでルール項数kのルール候補を作成する処理を終了する。
【0075】
次に、ルールを抽出する処理を説明する。例えば、抽出部124は、ルール候補を作成する処理によって作成したルール項数kのルール候補から、ルール抽出条件を満たすルール候補をルールとして抽出する。
【0076】
図9から図12を用いて、抽出部124がルールを抽出する処理を説明する。図12に示すように、抽出部124は、「抽出ルール」と、「支持度」と、「信頼度」とを対応づけて保持する。このうち、「抽出ルール」は、抽出部124によって抽出されたルールを示す。ここでは、ルール抽出条件として、最小支持度「2」と、最小信頼度「1」と、結果属性「病害虫有無(有)」とを抽出部124が受け付けた場合を説明する。
【0077】
例えば、抽出部124は、図9に示したルール項数2のルール候補を参照し、ルール抽出条件を満たすルール候補2×7をルールとして抽出する。また、例えば、抽出部124は、図10に示したルール項数3のルール候補を参照し、ルール抽出条件を満たすルール候補1×2×7及びルール候補2×5×7をルールとして抽出する。また、例えば、抽出部124は、図11に示したルール項数4のルール候補を参照し、ルール抽出条件を満たすルール候補1×2×5×7をルールとして抽出する。この結果、抽出部124は、図12に示すように、ルール候補2×7、ルール候補1×2×7、ルール候補2×5×7及びルール候補1×2×5×7をルールとして抽出する。なお、図12には、抽出ルールに対応する支持度と信頼度とを対応づけて示す。
【0078】
また、例えば、抽出部124は、抽出したルールの集合をルール集合113として記憶部110に格納する。例えば、抽出部124は、図12に示した4つの抽出ルールをルール集合113として記憶部110に格納する。なお、抽出部124は、抽出ルールに含まれるルール項のパラメータを、「系列の先頭から数えてx〜y行目から始まるm行のうち属性zがa以上b未満である行数がn以上である」に当てはめて表現しても良い。例えば、抽出部124は、ルール候補2×7を「系列の先頭から数えて1〜1行目から始まる1行のうち最低気温が5℃以上∞未満である行数が1以上、かつ、系列の先頭から数えて2〜2行目から始まる2行のうち最低気温が10℃以上∞未満である行数が1以上あれば、病害虫が100%の確率で発生する」と表現する。ここで、「病害虫が100%の確率で発生する」は、病害虫有無が「有」のものを最低信頼度「1」で抽出したことに対応する。
【0079】
次に、実施例1に係る時系列ルール抽出装置100の処理手順について説明する。図13は、実施例1に係る時系列ルール抽出装置の処理手順を示すフローチャートである。図13に示す処理は、例えば、入力装置101が時系列データ111及びルール抽出条件を示す情報を受け付けたことを契機として実行される。
【0080】
図13に示すように、例えば、処理タイミングになると(ステップS101Yes)、作成部121は、時系列データ111を走査して、複数のルール項を作成する(ステップS102)。検出部122は、包含関係を検出する(ステップS103)。つまり、検出部122は、ルール項集合112に含まれるルール項のパラメータを比較することで、包含関係を満たすルール項の組合せを検出する。
【0081】
例えば、付与部123は、複数のルール項に対して、系列付与処理を実行する(ステップS104)。ここで、図14を用いて、図13のステップS104に示した系列付与処理について説明する。図14は、系列付与処理の処理手順を示すフローチャートである。
【0082】
図14に示すように、例えば、付与部123は、時系列データ111から系列の情報を1つ取得する(ステップS201)。付与部123は、ルール項集合112からルール項を1つ取得する(ステップS202)。
【0083】
付与部123は、取得した系列が取得したルール項を満たすか否か判定する(ステップS203)。系列がルール項を満たす場合には(ステップS203Yes)、付与部123は、取得した系列の系列IDを取得したルール項の系列ID集合に追加する(ステップS204)。例えば、付与部123は、ルール項を満たす系列のうち、所定の結果属性の値を有する系列の系列IDを系列ID集合(有)に追加し、所定の結果属性の値を有しない系列の系列IDを系列ID集合(無)に追加する。一方、系列がルール項を満たさない場合には(ステップS203No)、付与部123は、ステップS205の処理に移行する。
【0084】
付与部123は、全てのルール項について、取得した系列の情報が各ルール項を満たすか否かを判定する処理を実行するまで(ステップS205No)、ステップS202からステップS205の処理を繰り返し実行する。全てのルール項について処理を実行した場合には(ステップS205Yes)、付与部123は、ステップS206の処理に移行する。付与部123は、全ての系列について、各系列の情報が各ルール項を満たすか否かを判定する処理を実行するまで(ステップS206No)、ステップS201からステップS206の処理を繰り返し実行する。
【0085】
全ての系列について処理を実行した場合には(ステップS206Yes)、付与部123は、ルール項を1つ選択する(ステップS207)。付与部123は、ルール項の全ての子の系列ID集合の和集合を求める(ステップS208)。例えば、付与部123は、ルール項の全ての子の系列ID集合(有)の和集合と、ルール項の全ての子の系列ID集合(無)の和集合とをそれぞれ求める。付与部123は、ルール項の系列ID集合から和集合を削除する(ステップS209)。例えば、付与部123は、求めた系列ID集合(有)の和集合をルール項の系列ID集合(有)から削除し、求めた系列ID集合(無)の和集合をルール項の系列ID集合(無)から削除する。
【0086】
全てのルール項についてステップS208及びステップS209の処理を実行するまで(ステップS210No)、付与部123は、ステップS207からステップS210の処理を繰り返し実行する。全てのルール項について処理を実行した場合には(ステップS210Yes)、付与部123は、系列付与処理を終了する。
【0087】
図13の説明に戻る。抽出部124は、ルール抽出処理を実行する(ステップS105)。ここで、図15を用いて、図13のステップS105に示したルール抽出処理について説明する。図15は、ルール抽出処理の処理手順を示すフローチャートである。
【0088】
図15に示すように、例えば、抽出部124は、k=1を設定する(ステップS301)。抽出部124は、ルール項数kのルール候補を算出し(ステップS302)、ルール候補が算出されたか否かを判定する(ステップS303)。ルール候補が算出された場合には(ステップS303Yes)、抽出部124は、ルール候補を1つ選択する(ステップS304)。抽出部124は、ルール候補に含まれるルール項を1つ選択する(ステップS305)。抽出部124は、選択したルール項について、復元処理を実行する(ステップS306)。ここで、図16を用いて、図15のステップS306に示したルール抽出処理について説明する。図16は、復元処理の処理手順を示すフローチャートである。
【0089】
図16に示すように、抽出部124は、ルール項の全ての子の系列ID集合の和集合を求める(ステップS401)。抽出部124は、求めた和集合とルール項の系列ID集合との和集合を求める(ステップS402)。この結果、抽出部124は、各ルール項の系列ID集合を復元する。
【0090】
図15の説明に戻る。抽出部124は、全てのルール項について復元処理を実行するまで(ステップS307No)、ステップS305からステップS307までの処理を繰り返し実行する。全てのルール項について復元処理を実行した場合には(ステップS307Yes)、抽出部124は、選択したルール候補がルール抽出条件を満たすか否かを判定する(ステップS308)。
【0091】
ルール抽出条件を満たす場合には(ステップS308Yes)、抽出部124は、ルール候補をルールとして抽出する(ステップS309)。一方、ルール抽出条件を満たさない場合には(ステップS308No)、抽出部124は、ステップS310に移行する。
【0092】
抽出部124は、全てのルール候補について、ルール抽出条件を満たすか判定するまで(ステップS310No)、ステップS304からステップS310までの処理を繰り返し実行する。全てのルール候補について処理した場合には(ステップS310Yes)、抽出部124は、kを1インクリメントし(ステップS311)、ステップS302に移行する。
【0093】
抽出部124は、ルール候補が算出されなくなるまで、ステップS302からステップS311までの処理を繰り返し実行する。ルール候補が算出されなくなった場合には(ステップS303No)、抽出部124は、ルール抽出処理を終了する。
【0094】
図13の説明に戻る。抽出部124は、ルール抽出処理により抽出したルールをルール集合として記憶部110に格納する。
【0095】
次に、実施例1に係る時系列ルール抽出装置100の効果について説明する。時系列ルール抽出装置100は、時間ごとに系列の属性と結果属性とを対応づけた時系列データを基に、属性と該属性の値と時間の範囲とを用いて表されるルール項を複数作成する。時系列ルール抽出装置100は、作成した複数のルール項の属性の値を参照して、包含される側のルール項において真である系列は包含する側のルール項でも真である包含関係を満たすルール項の組合せを検出する。時系列ルール抽出装置100は、検出した包含関係を満たすルール項の組合せのうち、包含される側のルール項にそのルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与する。時系列ルール抽出装置100は、複数のルール項のうち1又は2以上の組合せを作成し、作成した組合せに含まれるルール項と、そのルール項により包含される側のルール項とに付与された系列の識別情報の和集合を求める。時系列ルール抽出装置100は、求めた和集合に含まれる系列の識別情報の数、及び/又は、求めた和集合に含まれる系列の識別情報のうち所定の結果属性を有する系列の識別情報の割合が所定範囲である組合せを抽出する。このように、時系列ルール抽出装置100は、包含関係を満たすルール項の組合せのうち、包含される側のルール項にそのルール項において真である系列の識別情報を付与するので、系列の識別情報を保持するのに要するメモリ容量を削減することができる。このため、時系列ルール抽出装置100は、処理対象とするルール項の数を増加させてもメモリ容量による制限を受けにくいため、柔軟なルール項を設定でき、精度の良いルールを抽出することができる。
【実施例2】
【0096】
実施例1では、時系列ルール抽出装置100がルール項を満たす系列の系列IDを各ルール項に付与する際に、全てのルール項に対して系列IDを付与した後に、親に対して付与された系列IDを削除する場合を説明した。しかし、本発明はこれに限定されるものではない。例えば、時系列ルール抽出装置100は、系列IDを付与するルール項を選択した後に、各ルール項に対して系列IDを付与しても良い。そこで、実施例2では、時系列ルール抽出装置100が系列IDを付与するルール項を選択した後に、各ルール項に対して系列IDを付与する場合を説明する。
【0097】
実施例2に係る時系列ルール抽出装置の機能構成について説明する。実施例2に係る時系列ルール抽出装置100は、図1に示した時系列ルール抽出装置100と同様に、記憶部110と、制御部120とを有する。また、時系列ルール抽出装置100は、入力装置101と、出力装置102とに接続される。このうち、記憶部110と、入力装置101と、出力装置102の説明は、図1に示した記憶部110と、入力装置101と、出力装置102の説明と同様である。
【0098】
制御部120は、図1に示した制御部120と同様の機能を有する。例えば、制御部120は、作成部121と、検出部122と、付与部123と、抽出部124とを有する。このうち、作成部121と、抽出部124の説明は、図1に示した作成部121と、抽出部124の説明と同様である。
【0099】
検出部122は、図1に示した検出部122と同様の機能を有する。また、検出部122は、例えば、ルール項集合112からルール項の情報を取得する。検出部122は、ルール項集合112に含まれるルール項のうち、あるルール項のパラメータを上記のルール項「B」のパラメータに代入する。検出部122は、他のルール項のパラメータを上記のルール項「A」のパラメータに代入し、上述した式(1)〜(7)が全て成立するか否かを判定する。式(1)〜(7)が全て成立する場合には、検出部122は、ルール項「B」に代入したルール項IDを、ルール項「A」に代入したルール項の親集合に格納する。この親集合は、ルール項「A」に代入したルール項の親の集合である。検出部122は、ルール項集合112に含まれるルール項の全ての組合せについて、同様の処理を実行することで、全てのルール項の親集合を求める。
【0100】
図17を用いて、検出部122の処理を説明する。図17は、検出部の処理を説明するための図である。図17に示すように、検出部122は、「ルール項ID」と、「x」と、「y」と、「a」と、「m」と、「親集合」と、「子集合」とを対応づけて保持する。このうち、「ルール項ID」、「x」、「y」、「a」、「m」及び「子集合」は、図4に示したルール項の情報と同様である。「親集合」は、ルール項の親の集合である。
【0101】
例えば、検出部122は、上述したルール項「B」のパラメータに、図3に示したルール項1のパラメータを代入する。同様に、検出部122は、ルール項「A」のパラメータにルール項2のパラメータを代入し、上述した式(1)〜(7)が全て成立するか否かを判定する。この場合、式(1)〜(7)が全て成立するので、検出部122は、ルール項2のルール項ID「2」をルール項1の子集合に格納するとともに、ルール項1のルール項ID「1」をルール項2の親集合に格納する。また、検出部122は、ルール項集合112に含まれるルール項の全ての組合せについて、同様の処理を実行することで、ルール項1からルール項8のそれぞれについて、親集合と子集合とを求める。
【0102】
付与部123と、図1に示した付与部123と同様の機能を有する。また、付与部123は、例えば、処理対象集合を用いて各ルール項に対して系列IDを付与する。この処置対象集合は、ルール項を満たす系列の系列IDを各ルール項に付与する際に、系列IDを付与するルール項を一時的に格納する集合である。例えば、付与部123は、ある系列が満たすルール項を処理対象集合に追加する。付与部123は、処理対象集合に含まれるルール項の間に包含関係があれば、包含関係を満たすルール項のうち親であるルール項を処理対象集合から削除する。付与部123は、削除した後に処理対象集合に含まれるルール項に対して、ルール項を満たす系列の系列IDを付与する。
【0103】
図18及び図19を用いて、付与部123の処理を説明する。図18及び図19は、付与部の処理を説明するための図である。図18及び図19に示すように、付与部123は、「ルール項ID」と、「x」と、「y」と、「a」と、「m」と、「親集合」と、「子集合」と、「系列ID集合(有)」と、「系列ID集合(無)」とを対応づけて保持する。
【0104】
例えば、付与部123は、図2に示した時系列データ111から系列「001」の情報を取得し、図17に示した各ルール項を満たすか否かを判定する。この判定する処理は、実施例1において説明した付与部123の処理を同様である。系列「001」はルール項1を満たすので、付与部123は、ルール項1のルール項ID「1」を処理対象集合に追加する。付与部123は、他のルール項についても同様に、系列「001」が各ルール項を満たすか否かを判定し、系列「001」が満たすルール項のルール項IDを処理対象集合に追加する。この結果、付与部123は、ルール項ID「1,2,3,5,6,7,8」を処理対象集合に追加する。
【0105】
例えば、付与部123は、処理対象集合に含まれるルール項の親集合の和集合を求める。例えば、図17では、ルール項1の親集合は「空集合」、ルール項2の親集合は「1」、ルール項3の親集合は「1」、ルール項5の親集合は「空集合」、ルール項6の親集合は「5」、ルール項7の親集合は「5」、ルール項8の親集合は「5,6,7」である。この場合、付与部123は、処理対象集合「1,2,3,5,6,7,8」に含まれる各ルール項の親集合の和集合「1,5,6,7」を求める。付与部123は、求めた和集合「1,5,6,7」を処理対象集合「1,2,3,5,6,7,8」から削除し、処理対象集合を「2,3,8」とする。付与部123は、図18に示すように、この処理対象集合に含まれるルール項「2,3,8」の系列ID集合に、取得した系列の系列ID「001」を追加する。ここで、系列「001」は、結果属性として病害虫有無「有」であるため、系列ID集合(有)に追加される。付与部123は、他の系列についても同様に処理を実行することで、図19に示すように、各ルール項の系列ID集合に系列IDを付与する。なお、図19の各ルール項の系列ID集合に付与された系列IDは、図6において付与された系列IDと同一である。
【0106】
次に、実施例2に係る時系列ルール抽出装置100の処理手順について説明する。図20は、系列付与処理の処理手順を示すフローチャートである。例えば、付与部123は、処理対象集合を「空集合」に設定する(ステップS501)。
【0107】
例えば、付与部123は、時系列データ111から系列の情報を1つ取得する(ステップS502)。付与部123は、ルール項集合からルール項を1つ取得する(ステップS503)。付与部123は、取得した系列が取得したルール項を満たすか否かを判定する(ステップS504)。
【0108】
系列がルール項を満たす場合には(ステップS504Yes)、付与部123は、ルール項を処理対象集合に追加する(ステップS505)。一方、系列がルール項を満たさない場合には(ステップS504No)、付与部123は、ステップS506の処理に移行する。付与部123は、全てのルール項について、取得した系列の情報が各ルール項を満たすか否かを判定する処理を実行するまで(ステップS506No)、ステップS503からステップS506の処理を繰り返し実行する。全てのルール項について処理を実行した場合には(ステップS506Yes)、付与部123は、ステップS507の処理に移行する。
【0109】
付与部123は、例えば、処理対象集合に含まれるルール項の親集合の和集合を求める(ステップS507)。付与部123は、求めた和集合を処理対象集合から削除する(ステップS508)。付与部123は、処理対象集合に含まれる各ルール項の系列ID集合に、取得した系列の系列IDを追加する(ステップS509)。付与部123は、全ての系列について上記の処理を実行するまで(ステップS510No)、ステップS501からステップS510の処理を繰り返し実行する。全ての系列について処理を実行した場合には(ステップS510Yes)、付与部123は、処理を終了する。
【0110】
次に、実施例1に係る時系列ルール抽出装置100の効果について説明する。時系列ルール抽出装置100は、ルール項を満たす系列の系列IDを各ルール項に付与する際に、親に系列IDを付与することなく、子にのみ系列IDを付与するので、系列IDを付与する処理に要するメモリ容量を削減することができる。このため、時系列ルール抽出装置100は、処理対象とするルール項の数を増加させてもメモリ容量による制限を受けにくいため、柔軟なルール項を設定でき、精度の良いルールを抽出することができる。
【実施例3】
【0111】
実施例1では、時系列ルール抽出装置100が包含関係を満たすルール項の組合せを検出した際に、親の子集合に子のルール項IDを追加する場合を説明したが、本発明はこれに限定されるものではない。例えば、時系列ルール抽出装置100は、親の子集合に子のルール項IDを追加する際に、子の間で包含関係を満たすルール項の組合せが存在する場合には、その組合せのうち親のルール項IDを追加するようにしても良い。そこで、実施例3では、時系列ルール抽出装置100が親の子集合に子のルール項IDを追加する場合に、子の間で包含関係を満たすルール項の組合せが存在する場合には、その組合せのうち親のルール項IDを追加する場合を説明する。
【0112】
実施例3に係る時系列ルール抽出装置の機能構成について説明する。実施例3に係る時系列ルール抽出装置100は、図1に示した時系列ルール抽出装置100と同様に、記憶部110と、制御部120とを有する。また、時系列ルール抽出装置100は、入力装置101と、出力装置102とに接続される。このうち、記憶部110と、入力装置101と、出力装置102の説明は、図1に示した記憶部110と、入力装置101と、出力装置102の説明と同様である。
【0113】
制御部120は、図1に示した制御部120と同様の機能を有する。例えば、制御部120は、作成部121と、検出部122と、付与部123と、抽出部124とを有する。このうち、作成部121と、抽出部124の説明は、図1に示した作成部121と、抽出部124の説明と同様である。
【0114】
検出部122は、図1に示した検出部122と同様の機能を有する。また、検出部122は、検出した包含関係を満たすルール項の組合せのうち、包含する側のルール項の集合に包含される側のルール項を追加するとともに、次のように処理する。つまり、検出部122は、該包含される側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、該組合せのうち包含する側のルール項を追加する。例えば、検出部122は、検出した包含関係を満たすルール項の組合せのうち、親の集合に子のルール項IDを追加する際に、子の間で包含関係を満たすルール項の組合せが存在する場合には、その組合せのうち親のルール項IDを追加する。
【0115】
例えば、検出部122は、ルール項集合112からルール項の情報を取得する。検出部122は、ルール項集合112に含まれるルール項のうち、あるルール項のパラメータを上記のルール項「B」のパラメータに代入する。検出部122は、他のルール項のパラメータを上記のルール項「A」のパラメータに代入し、上述した式(1)〜(7)が全て成立するか否かを判定する。式(1)〜(7)が全て成立する場合には、検出部122は、ルール項「A」に代入したルール項IDを、ルール項「B」に代入したルール項の子集合に格納する。検出部122は、ルール項集合112に含まれるルール項の全ての組合せについて、同様の処理を実行することで、全てのルール項の子集合を求める。
【0116】
また、例えば、検出部122は、求めた子集合に含まれるルール項の間で、上述した式(1)〜(7)が全て成立するか否かを判定する。判定方法は、上述した通りである。式(1)〜(7)が全て成立する場合には、検出部122は、ルール項「A」に代入したルール項IDを、求めた子集合から削除する。検出部122は、求めた子集合に含まれるルール項の全ての組合せについて、同様の処理を実行することで、子集合に含まれるルール項の間で子として判定されるルール項を削除する。
【0117】
図21を用いて、検出部122の処理を説明する。図21は、検出部の処理を説明するための図である。図21に示すように、検出部122は、「ルール項ID」と、「x」と、「y」と、「a」と、「m」と、「子集合」とを対応づけて保持する。このうち、「ルール項ID」、「x」、「y」、「a」、「m」及び「子集合」は、図4に示したルール項の情報と同様である。
【0118】
例えば、検出部122は、上述したルール項「B」のパラメータに、図3に示したルール項1のパラメータを代入する。同様に、検出部122は、ルール項「A」のパラメータにルール項2のパラメータを代入し、上述した式(1)〜(7)が全て成立するか否かを判定する。この場合、式(1)〜(7)が全て成立するので、検出部122は、ルール項2のルール項ID「2」をルール項1の子集合に格納する。他のルール項についても同様に、ルール項「A」のパラメータ代入し、判定することで、ルール項1の子集合には「2,3,4」が格納される。また、検出部122は、求めた子集合「2,3,4」の間で、上述した式(1)〜(7)が全て成立するか否かを判定する。例えば、検出部122は、求めた子集合「2,3,4」のうち、ルール項「B」のパラメータにルール項2のパラメータを、ルール項「A」のパラメータにルール項4のパラメータを代入し、上述した式(1)〜(7)が全て成立するか否かを判定する。この場合、式(1)〜(7)が全て成立するので、検出部122は、ルール項4のルール項ID「4」をルール項1の子集合から削除する。つまり、ルール項1の子集合には、図21に示すように、ルール項「2,3」が格納される。また、検出部122は、ルール項集合112に含まれるルール項の全ての組合せについて、同様の処理を実行することで、ルール項1からルール項8のそれぞれについて子集合を求める。さらに、検出部122は、求めた子集合に含まれるルール項の全ての組合せについて、同様の処理を実行することで、子集合に含まれるルール項の間で子として判定されるルール項を削除する。なお、図21のルール項の情報は、図4に示したルール項の情報と比べて、子集合に含まれる情報量が軽減される。
【0119】
付与部123は、図1に示した付与部123と同様の機能を有する。また、付与部123は、検出部122により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項にのみ該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与する。例えば、付与部123は、複数のルール項に対して各ルール項を満たす系列の系列IDを付与し、複数のルール項の間に包含関係がある場合には、包含関係にあるルール項のうち子のみに対して各ルール項を満たす系列の系列IDを付与する。
【0120】
例えば、付与部123は、図1に示した付与部123と同様に、時系列データ111から系列の情報を取得する。そして、付与部123は、取得した系列ごとに、図21に示したルール項の集合に含まれるルール項を満たすか否かを判定し、判定結果に応じて系列IDをルール項の系列ID集合に追加する。この結果、付与部123は、図22に示すように、図21に示したルール項の情報に系列IDを付与する。図22は、付与部の処理を説明するための図である。
【0121】
また、例えば、付与部123は、系列IDを追加済みのルール項を選択し、選択したルール項の全ての子、及び、選択したルール項から子を順次辿ることにより識別されるルール項について、系列ID集合の和集合を求める。ここで、付与部123は、系列ID集合(有)の和集合と、系列ID集合(無)の和集合とをそれぞれ求める。付与部123は、選択したルール項の系列ID集合から、求めた和集合を削除する。ここで、付与部123は、求めた系列ID集合(有)の和集合をルール項の系列ID集合(有)から削除し、求めた系列ID集合(無)の和集合をルール項の系列ID集合(無)から削除する。この結果、付与部123は、図23に示すように、図21に示したルール項の系列ID集合から系列IDを削除する。図23は、付与部の処理を説明するための図である。
【0122】
抽出部124は、図1に示した抽出部124と同様の機能を有する。また、抽出部124は、作成した複数のルール項のうち1又は2以上の組合せに含まれるルール項と、そのルール項から包含される側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求める。例えば、抽出部124は、復元処理において、ルール候補に含まれるルール項を選択する。抽出部124は、選択したルール項の全ての子、及び、選択したルール項から子を順次辿ることにより識別されるルール項について、系列ID集合の和集合を求める。抽出部124は、求めた和集合と、選択したルール項の系列ID集合との和集合を求める。このように、抽出部124は、ルール候補に含まれる各ルール項の系列ID集合を復元する。
【0123】
次に、実施例3に係る時系列ルール抽出装置100の効果について説明する。時系列ルール抽出装置100は、検出した包含関係を満たすルール項の組合せのうち、包含する側のルール項の集合に包含される側のルール項を追加するとともに、次のように処理する。つまり、時系列ルール抽出装置100は、包含される側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、その組合せのうち包含する側のルール項を追加する。時系列ルール抽出装置100は、検出部により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項にのみ該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与する。時系列ルール抽出装置100は、作成した組合せに含まれるルール項と、そのルール項から包含される側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求める。このように、時系列ルール抽出装置100は、親の子集合に子のルール項IDを追加する場合に、子の間で包含関係を満たすルール項の組合せがあれば、その組合せのうち親のルール項IDを追加するので、系列IDを付与する処理に要するメモリ容量を削減できる。このため、時系列ルール抽出装置100は、処理対象とするルール項の数を増加させてもメモリ容量による制限を受けにくいため、柔軟なルール項を設定でき、精度の良いルールを抽出することができる。
【実施例4】
【0124】
実施例2では、時系列ルール抽出装置100が包含関係を満たすルール項の組合せを検出した際に、子の親集合に親のルール項IDを追加する場合を説明したが、本発明はこれに限定されるものではない。例えば、時系列ルール抽出装置100は、子の親集合に親のルール項IDを追加する際に、親の間で包含関係を満たすルール項の組合せが存在する場合には、その組合せのうち子のルール項IDを追加するようにしても良い。そこで、実施例4では、時系列ルール抽出装置100が子の親集合に親のルール項IDを追加する場合に、親の間で包含関係を満たすルール項の組合せが存在する場合には、その組合せのうち子のルール項IDを追加する場合を説明する。
【0125】
実施例4に係る時系列ルール抽出装置の機能構成について説明する。実施例4に係る時系列ルール抽出装置100は、図1に示した時系列ルール抽出装置100と同様に、記憶部110と、制御部120とを有する。また、時系列ルール抽出装置100は、入力装置101と、出力装置102とに接続される。このうち、記憶部110と、入力装置101と、出力装置102の説明は、図1に示した記憶部110と、入力装置101と、出力装置102の説明と同様である。
【0126】
制御部120は、図1に示した制御部120と同様の機能を有する。例えば、制御部120は、作成部121と、検出部122と、付与部123と、抽出部124とを有する。このうち、作成部121と、抽出部124の説明は、図1に示した作成部121と、抽出部124の説明と同様である。
【0127】
検出部122は、図1に示した検出部122と同様の機能を有する。また、検出部122は、検出した包含関係を満たすルール項の組合せのうち、包含される側のルール項の集合に包含する側のルール項を追加するとともに、次のように処理する。つまり、検出部122は、該包含する側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、該組合せのうち包含される側のルール項を追加する。例えば、検出部122は、検出した包含関係を満たすルール項の組合せのうち、子の集合に親のルール項IDを追加する際に、親の間で包含関係を満たすルール項の組合せが存在する場合には、その組合せのうち子のルール項IDを追加する。
【0128】
例えば、検出部122は、ルール項集合112からルール項の情報を取得する。検出部122は、ルール項集合112に含まれるルール項のうち、あるルール項のパラメータを上記のルール項「B」のパラメータに代入する。検出部122は、他のルール項のパラメータを上記のルール項「A」のパラメータに代入し、上述した式(1)〜(7)が全て成立するか否かを判定する。式(1)〜(7)が全て成立する場合には、検出部122は、ルール項「B」に代入したルール項IDを、ルール項「A」に代入したルール項の親集合に格納する。検出部122は、ルール項集合112に含まれるルール項の全ての組合せについて、同様の処理を実行することで、全てのルール項の親集合を求める。
【0129】
また、例えば、検出部122は、求めた親集合に含まれるルール項の間で、上述した式(1)〜(7)が全て成立するか否かを判定する。判定方法は、上述した通りである。式(1)〜(7)が全て成立する場合には、検出部122は、ルール項「B」に代入したルール項IDを、求めた親集合から削除する。検出部122は、求めた親集合に含まれるルール項の全ての組合せについて、同様の処理を実行することで、親集合に含まれるルール項の間で親として判定されるルール項を削除する。
【0130】
図24を用いて、検出部122の処理を説明する。図24は、検出部の処理を説明するための図である。図24に示すように、検出部122は、「ルール項ID」と、「x」と、「y」と、「a」と、「m」と、「親集合」と、「子集合」とを対応づけて保持する。このうち、「ルール項ID」、「x」、「y」、「a」、「m」、「親集合」及び「子集合」は、図17に示したルール項の情報と同様である。
【0131】
例えば、検出部122は、上述したルール項「B」のパラメータに、図3に示したルール項1のパラメータを代入する。同様に、検出部122は、ルール項「A」のパラメータにルール項4のパラメータを代入し、上述した式(1)〜(7)が全て成立するか否かを判定する。この場合、式(1)〜(7)が全て成立するので、検出部122は、ルール項1のルール項ID「1」をルール項4の親集合に格納する。他のルール項についても同様に、ルール項「A」のパラメータ代入し、判定することで、ルール項4の親集合には「1,2,3」が格納される。また、検出部122は、求めた親集合「1,2,3」の間で、上述した式(1)〜(7)が全て成立するか否かを判定する。例えば、検出部122は、求めた親集合「1,2,3」のうち、ルール項「B」のパラメータにルール項1のパラメータを、ルール項「A」のパラメータにルール項2のパラメータを代入し、上述した式(1)〜(7)が全て成立するか否かを判定する。この場合、式(1)〜(7)が全て成立するので、検出部122は、ルール項1のルール項ID「1」をルール項4の親集合から削除する。つまり、ルール項4の親集合には、図24に示すように、ルール項「2,3」が格納される。また、検出部122は、ルール項集合112に含まれるルール項の全ての組合せについて、同様の処理を実行することで、ルール項1からルール項8のそれぞれについて親集合を求める。さらに、検出部122は、求めた親集合に含まれるルール項の全ての組合せについて、同様の処理を実行することで、親集合に含まれるルール項の間で親として判定されるルール項を削除する。なお、図24のルール項の情報は、図17に示したルール項の情報と比べて、親集合に含まれる情報量が軽減される。
【0132】
付与部123は、実施例2において説明した付与部123と同様の機能を有する。また、付与部123は、例えば、処理対象集合を用いて各ルール項に対して系列IDを付与する。例えば、付与部123は、ある系列が満たすルール項を処理対象集合に追加する。付与部123は、処理対象集合に含まれるルール項の間に包含関係があれば、包含関係を満たすルール項のうち親であるルール項、及び、親を順次辿ることにより識別されるルール項を処理対象集合から削除する。付与部123は、削除した後に処理対象集合に含まれるルール項に対して、ルール項を満たす系列の系列IDを付与する。
【0133】
図25を用いて、付与部123の処理を説明する。図25は、付与部の処理を説明するための図である。図25に示すように、付与部123は、「ルール項ID」と、「x」と、「y」と、「a」と、「m」と、「親集合」と、「子集合」と、「系列ID集合(有)」と、「系列ID集合(無)」とを対応づけて保持する。
【0134】
例えば、付与部123は、図2に示した時系列データ111から系列「001」の情報を取得し、図25に示した各ルール項を満たすか否かを判定する。この判定する処理は、実施例2において説明した付与部123の処理を同様である。系列「001」はルール項1を満たすので、付与部123は、ルール項1のルール項ID「1」を処理対象集合に追加する。付与部123は、他のルール項についても同様に、系列「001」が各ルール項を満たすか否かを判定し、系列「001」が満たすルール項のルール項IDを処理対象集合に追加する。この結果、付与部123は、ルール項ID「1,2,3,5,6,7,8」を処理対象集合に追加する。
【0135】
例えば、付与部123は、処理対象集合に含まれるルール項の親集合、及び、親集合に含まれるルール項を順次辿ることにより識別されるルール項の親集合の和集合を求める。例えば、図25では、ルール項1の親集合は「空集合」、ルール項2の親集合は「1」、ルール項3の親集合は「1」、ルール項5の親集合は「空集合」、ルール項6の親集合は「5」、ルール項7の親集合は「5」、ルール項8の親集合は「6,7」である。この場合、付与部123は、処理対象集合「1,2,3,5,6,7,8」に含まれる各ルール項の親集合、及び、親集合に含まれるルール項を順次辿ることにより識別されるルール項の親集合の和集合「1,5,6,7」を求める。付与部123は、求めた和集合「1,5,6,7」を処理対象集合「1,2,3,5,6,7,8」から削除し、処理対象集合を「2,3,8」とする。付与部123は、図25に示すように、この処理対象集合に含まれるルール項「2,3,8」の系列ID集合に、取得した系列の系列ID「001」を追加する。ここで、系列「001」は、結果属性として病害虫有無「有」であるため、系列ID集合(有)に追加される。付与部123は、他の系列についても同様に処理を実行することで、図25に示すように、各ルール項の系列ID集合に系列IDを付与する。なお、図25の各ルール項の系列ID集合に付与された系列IDは、図6において付与された系列IDと同一である。
【0136】
抽出部124は、図1に示した抽出部124と同様の機能を有する。また、抽出部124は、作成した複数のルール項のうち1又は2以上の組合せに含まれるルール項と、そのルール項から包含する側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求める。例えば、抽出部124は、復元処理において、ルール候補に含まれるルール項を選択する。抽出部124は、選択したルール項の全ての親、及び、選択したルール項から親を順次辿ることにより識別されるルール項について、系列ID集合の和集合を求める。抽出部124は、求めた和集合と、選択したルール項の系列ID集合との和集合を求める。このように、抽出部124は、ルール候補に含まれる各ルール項の系列ID集合を復元する。
【0137】
次に、実施例4に係る時系列ルール抽出装置100の効果について説明する。時系列ルール抽出装置100は、検出した包含関係を満たすルール項の組合せのうち、包含される側のルール項の集合に包含する側のルール項を追加するとともに、次のように処理する。つまり、時系列ルール抽出装置100は、包含する側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、その組合せのうち包含される側のルール項を追加する。時系列ルール抽出装置100は、検出部により検出された包含関係を満たすルール項の組合せのうち、包含する側のルール項にのみ該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与する。時系列ルール抽出装置100は、作成した組合せに含まれるルール項と、そのルール項から包含する側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求める。このように、時系列ルール抽出装置100は、子の親集合に親のルール項IDを追加する場合に、親の間で包含関係を満たすルール項の組合せがあれば、その組合せのうち子のルール項IDを追加するので、系列IDを付与する処理に要するメモリ容量を削減できる。このため、時系列ルール抽出装置100は、処理対象とするルール項の数を増加させてもメモリ容量による制限を受けにくいため、柔軟なルール項を設定でき、精度の良いルールを抽出することができる。
【実施例5】
【0138】
実施例1では、時系列ルール抽出装置100がルール項集合に含まれる1又は2以上のルール項を組み合わせることで、ルール候補を作成する場合を説明したが、本発明はこれに限定されるものではない。例えば、時系列ルール抽出装置100は、ルール候補を作成する際に、包含関係を満たすルール項の組合せについては、いずれかのルール項を用いてルール候補を作成するようにしても良い。これは、包含関係を満たすルール項の組合せを含むルール候補は、包含関係を満たすルール項の組合せのうち子のみを含むルール候補と同義だからである。例えば、親と子をANDでつないだルール候補は、子のみのルール候補と同義である。そこで、実施例5では、時系列ルール抽出装置100がルール候補を作成する際に、包含関係を満たすルール項の組合せについては、いずれかのルール項を用いてルール候補を作成する場合を説明する。
【0139】
実施例5に係る時系列ルール抽出装置の機能構成について説明する。実施例5に係る時系列ルール抽出装置100は、図1に示した時系列ルール抽出装置100と同様に、記憶部110と、制御部120とを有する。また、時系列ルール抽出装置100は、入力装置101と、出力装置102とに接続される。このうち、記憶部110と、入力装置101と、出力装置102の説明は、図1に示した記憶部110と、入力装置101と、出力装置102の説明と同様である。
【0140】
制御部120は、図1に示した制御部120と同様の機能を有する。例えば、制御部120は、作成部121と、検出部122と、付与部123と、抽出部124とを有する。このうち、作成部121と、検出部122と、付与部123の説明は、図1に示した作成部121と、検出部122と、付与部123の説明と同様である。
【0141】
抽出部124は、図1に示した抽出部124と同様の機能を有する。また、抽出部124は、複数のルール項のうち1又は2以上の組合せを作成する際に、検出部122により検出された包含関係を満たすルール項の組合せについてはいずれかのルール項を用いて組合せを作成する。例えば、抽出部124は、ルール候補を作成する際に、包含関係を満たすルール項の組合せについては、いずれかのルール項を用いてルール候補を作成する。
【0142】
以下において、抽出部124の処理を説明する。ここでは、抽出部124がルール抽出条件として、最小支持度「2」と、最小信頼度「1」と、結果属性「病害虫有無(有)」とを受け付けた場合を説明する。
【0143】
まず、抽出部124がルール項数2のルール候補を作成する場合を説明する。例えば、抽出部124は、ルール抽出条件で与えられた最小支持度「2」と最小信頼度「1」との積「2×1=2」を算出する。抽出部124は、ルール項数1のルール候補ごとに、支持度と信頼度との積を算出する。例えば、図7に示したように、抽出部124は、ルール候補1の支持度と信頼度との積「4×0.5=2」を算出する。同様に、抽出部124は、ルール候補2について「3×0.67=2.01」、ルール候補3について「2×0.5=1」、ルール候補4について「1×0=0」をそれぞれ算出する。また、同様に、抽出部124は、ルール候補5について「4×0.5=2」、ルール候補6について「2×0.5=1」、ルール候補7について「3×0.67=2.01」、ルール候補8について「1×1=1」をそれぞれ算出する。抽出部124は、算出したそれぞれの値と最小支持度と最小信頼度との積「2」とを比較し、「2」以上のルール項数1のルール候補「1,2,5,7」を選択する。抽出部124は、選択したルール候補「1,2,5,7」に含まれるルール項「1,2,5,7」を抽出する。抽出部124は、ルール項「1,2,5,7」から、2個のルール項を選択し、組み合わせる。
【0144】
ここで、ルール項「1,2,5,7」のうち、ルール項1及びルール項2の間には包含関係があり、また、ルール項5及びルール項7の間にも包含関係がある。このため、抽出部124は、ルール項「1,2,5,7」から2個のルール項を選択する際に、ルール項「1,2」についてはいずれかのルール項を用い、また、ルール項「5,7」についてもいずれかのルール項を用いて、ルール候補を作成する。なお、ルール項「1,2,5,7」から包含関係を満たすルール項の組合せを検出する処理は、上述した処理と同様である。
【0145】
例えば、抽出部124は、ルール項1と5とを選択し、組合せ(1,5)を作成する。抽出部124は、この2個のルール項のうちルール項数1の組合せの全てが、ルール項数1のルール候補に存在するか否かを判定する。図7に示すように、ルール項数1のルール候補にルール候補1及びルール候補5が存在するので、抽出部124は、図26に示すように、「ルール候補1×5」を作成する。また、抽出部124は、他の組合せについても同様に処理を実行し、ルール項数2のルール候補として、「ルール候補1×7」「ルール候補2×5」「ルール候補2×7」をそれぞれ作成する。図26は、抽出部の処理を説明するための図である。
【0146】
ここで、図26において作成されたルール候補は、図8において作成された「ルール候補1×2」「ルール候補5×7」を含まない。このため、抽出部124は、処理に要するメモリ容量を削減することができる。また、抽出部124は、ルール項数2のルール候補の数を削減するので、ルール項数3以上のルール候補を作成する際に作成されるルール候補の数を削減する。このため、抽出部124は、処理に要するメモリ容量をさらに削減することができる。
【0147】
次に、抽出部124がルール項数3のルール候補を作成する場合を説明する。抽出部124は、図26に示したルール項数2のルール候補ごとに、支持度と信頼度との積を算出する。この支持度と信頼度との積を算出する処理は、上述した処理と同様である。つまり、抽出部124は、ルール候補1×5について「4×0.5=2」、ルール候補1×7について「3×0.67=2.01」、ルール候補2×5について「3×0.67=2.01」、ルール候補2×7について「2×1=2」をそれぞれ算出する。抽出部124は、算出したそれぞれの値と最小支持度と最小信頼度との積「2」とを比較し、「2」以上のルール項数2のルール候補「1×5,1×7,2×5,2×7」を選択する。抽出部124は、選択したルール候補「1×5,1×7,2×5,2×7」に含まれるルール項「1,2,5,7」を抽出する。
【0148】
ここで、ルール項「1,2,5,7」のうち、ルール項1及びルール項2の間には包含関係があり、また、ルール項5及びルール項7の間にも包含関係がある。このため、抽出部124は、ルール項「1,2,5,7」のうち、ルール項「1,2」についてはいずれかのルール項を用い、また、ルール項「5,7」についてもいずれかのルール項を用いると、3個のルール項を選択することができない。よって、ルール項数3のルール候補を作成することはできないため、抽出部124は、ここでルール項数kのルール候補を作成する処理を終了する。
【0149】
また、例えば、抽出部124は、図26に示したルール候補から、ルール抽出条件を満たすルール候補をルールとして抽出する。このルールを抽出する処理は、上述した処理と同様である。この結果、抽出部124は、図27に示すように、ルール候補2×7をルールとして抽出する。
【0150】
ここで、図27において抽出されたルールは、図12において抽出されたルール「ルール候補1×2×7」「ルール候補2×5×7」「ルール候補1×2×5×7」を含まない。このため、抽出部124は、処理に要するメモリ容量を削減することができる。また、「ルール候補1×2×7」は、「ルール候補1×2」が「ルール候補2」と同義であることを考慮すると、「ルール候補2×7」と同義である。また、「ルール候補2×5×7」は、「ルール候補5×7」が「ルール候補7」と同義であることを考慮すると、「ルール候補2×7」と同義である。また、「ルール候補1×2×5×7」は、「ルール候補1×2」が「ルール候補2」と同義であり、「ルール候補5×7」が「ルール候補7」と同義であることを考慮すると、「ルール候補2×7」と同義である。すなわち、抽出部124は、包含関係を満たすルール項の組合せをルール候補に含まないので、同義となるルールを抽出することなく、ルールを抽出することができる。
【0151】
次に、実施例5に係る時系列ルール抽出装置100の効果について説明する。時系列ルール抽出装置100は、複数のルール項のうち1又は2以上の組合せを作成する際に、検出部122により検出された包含関係を満たすルール項の組合せについてはいずれかのルール項を用いて組合せを作成する。このため、時系列ルール抽出装置100は、作成するルール候補の数を削減するので、処理に要するメモリ容量を削減することができる。また、時系列ルール抽出装置100は、ルール項数kのルール候補の数を削減するので、次に作成するルール項数k+1以上のルール候補を作成する際に、作成するルール候補の数を削減でき、処理に要するメモリ容量をさらに削減することができる。また、時系列ルール抽出装置100は、包含関係を満たすルール項の組合せをルール候補に含まないので、同義となるルールを抽出することなく、ルールを抽出することができる。このようなことから、時系列ルール抽出装置100は、処理対象とするルール項の数を増加させてもメモリ容量による制限を受けにくいため、柔軟なルール項を設定でき、精度の良いルールを抽出することができる。
【実施例6】
【0152】
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、その他の実施例にて実施されても良い。そこで、以下では、その他の実施例について説明する。
【0153】
例えば、実施例1〜5において説明した時系列ルール抽出装置100は、クライアントサーバシステムにも適用できる。図28は、クライアントサーバシステムへの適用例を説明するための図である。図28に示すクライアントサーバシステムには、サーバ装置210と、クライアント端末220a〜220cとがネットワーク200を介して接続される。このサーバ装置210は、上記の実施例において説明した時系列ルール抽出装置100と同様の機能を有する。なお、ここでは、クライアント端末220a〜220cを区別なく述べる場合にクライアント端末220と総称する。このクライアントサーバシステムにおいてサーバ装置210をクラウドとし、クライアント端末220からクラウドであるサーバ装置210へ時系列データ111及びルール抽出条件を示す情報を送信させる。そして、クライアント端末220から送信された情報について時系列ルール抽出装置100と同様の処理をサーバ装置210に実行させ、抽出したルールをサーバ装置210に保存させたり、クライアント端末220へ応答させたりすることもできる。
【0154】
例えば、実施例1〜5において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。例えば、図13に示した処理は、入力装置101が時系列データ111及びルール抽出条件を示す情報を受け付けたことを契機として自動的に実行されると説明した。しかし、この処理は、時系列ルール抽出装置100の利用者が処理の開始命令を行ったことを契機として手動的に実行されても良い。この他、上述文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、図2に示した時系列データ111は、最高気温や降水量を対応づけて記憶しても良い。また、例えば、本発明が航空分野に適用された場合には、1時間ごとの気象の変化や飛行高度などを対応づけて記憶する。
【0155】
また、図1に示した時系列ルール抽出装置100の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、時系列ルール抽出装置100の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図1に示したルール項集合112を記憶部110が有している必要は無い。例えば、制御部120の内部メモリがルール項集合112に対応する情報を一時的に記憶するようにしても良い。
【0156】
また、時系列ルール抽出装置100は、時系列ルール抽出装置100の各機能を既知の情報処理装置に搭載することによって実現することもできる。既知の情報処理装置は、例えば、パーソナルコンピュータ、ワークステーション、移動体通信端末またはPDA(Personal Digital Assistant)などの装置に対応する。
【0157】
図29は、時系列ルール抽出プログラムを実行するコンピュータを示す図である。図29に示すように、コンピュータ300は、各種演算処理を実行するCPU301と、ユーザからデータの入力を受け付ける入力装置302と、モニタ303とを有する。また、コンピュータ300は、記憶媒体からプログラム等を読み取る媒体読み取り装置304と、他の装置と接続するためのインターフェース装置305と、他の装置と無線により接続するための無線通信装置306とを有する。また、コンピュータ300は、各種情報を一時記憶するRAM(Random Access Memory)307と、ハードディスク装置308とを有する。また、各装置301〜308は、バス309に接続される。
【0158】
ハードディスク装置308には、図1に示した作成部121、検出部122、付与部123及び抽出部124の各処理部と同様の機能を有する画像処理プログラムが記憶される。また、ハードディスク装置308には、画像処理プログラムを実現するための各種データが記憶される。
【0159】
CPU301は、ハードディスク装置308に記憶された各プログラムを読み出して、RAM307に展開し、各種の処理を行う。また、これらのプログラムは、コンピュータを図1に示した作成部121、検出部122、付与部123及び抽出部124として機能させることができる。
【0160】
なお、上記の画像処理プログラムは、必ずしもハードディスク装置308に記憶されている必要はない。例えば、コンピュータが読み取り可能な記録媒体に記憶されたプログラムを、コンピュータ300が読み出して実行するようにしても良い。コンピュータが読み取り可能な記録媒体は、例えば、CD−ROMやDVDディスク、USBメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等に接続された装置にこのプログラムを記憶させておき、コンピュータ300がこれらからプログラムを読み出して実行するようにしても良い。
【0161】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0162】
(付記1)時間ごとに系列の属性と結果属性とを対応づけた時系列データを基に、属性と該属性の値と時間の範囲とを用いて表されるルール項を複数作成する作成部と、
前記作成部により作成された複数のルール項の属性の値を参照して、包含される側のルール項において真である系列は包含する側のルール項でも真である包含関係を満たすルール項の組合せを検出する検出部と、
前記検出部により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項に当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与する付与部と、
前記複数のルール項のうち1又は2以上の組合せを作成し、作成した組合せに含まれるルール項と、該ルール項により包含される側のルール項とに付与された系列の識別情報の和集合を求め、該和集合に含まれる系列の識別情報の数、及び/又は、該和集合に含まれる系列の識別情報のうち所定の結果属性を有する系列の識別情報の割合が所定範囲である組合せを抽出する抽出部と
を備えることを特徴とする時系列ルール抽出装置。
【0163】
(付記2)前記抽出部は、前記複数のルール項のうち1又は2以上の組合せを作成する際に、前記検出部により検出された包含関係を満たすルール項の組合せについてはいずれかのルール項を用いて前記組合せを作成することを特徴とする付記1に記載の時系列ルール抽出装置。
【0164】
(付記3)前記検出部は、検出した包含関係を満たすルール項の組合せのうち、包含する側のルール項の集合に包含される側のルール項を追加するとともに、該包含される側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、該組合せのうち包含する側のルール項を追加し、
前記付与部は、前記検出部により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項にのみ当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記抽出部は、前記作成した組合せに含まれるルール項と、該ルール項から包含される側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求めることを特徴とする付記1又は2に記載の時系列ルール抽出装置。
【0165】
(付記4)前記検出部は、検出した包含関係を満たすルール項の組合せのうち、包含される側のルール項の集合に包含する側のルール項を追加するとともに、該包含する側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、該組合せのうち包含される側のルール項を追加し、
前記付与部は、前記検出部により検出された包含関係を満たすルール項の組合せのうち、包含する側のルール項にのみ当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記抽出部は、前記作成した組合せに含まれるルール項と、該ルール項から包含する側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求めることを特徴とする付記1〜3のうちいずれか一つに記載の時系列ルール抽出装置。
【0166】
(付記5)コンピュータが実行する時系列ルール抽出方法であって、
時間ごとに系列の属性と結果属性とを対応づけた時系列データを基に、属性と該属性の値と時間の範囲とを用いて表されるルール項を複数作成し、
前記ルール項を作成する処理により作成された複数のルール項の属性の値を参照して、包含される側のルール項において真である系列は包含する側のルール項でも真である包含関係を満たすルール項の組合せを検出し、
前記包含関係を満たすルール項の組合せを検出する処理により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項に当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記複数のルール項のうち1又は2以上の組合せを作成し、作成した組合せに含まれるルール項と、該ルール項により包含される側のルール項とに付与された系列の識別情報の和集合を求め、該和集合に含まれる系列の識別情報の数、及び/又は、該和集合に含まれる系列の識別情報のうち所定の結果属性を有する系列の識別情報の割合が所定範囲である組合せを抽出する
ことを特徴とする時系列ルール抽出方法。
【0167】
(付記6)前記組合せを抽出する処理は、前記複数のルール項のうち1又は2以上の組合せを作成する際に、前記包含関係を満たすルール項の組合せを検出する処理により検出された包含関係を満たすルール項の組合せについてはいずれかのルール項を用いて前記組合せを作成することを特徴とする付記5に記載の時系列ルール抽出方法。
【0168】
(付記7)前記包含関係を満たすルール項の組合せを検出する処理は、検出した包含関係を満たすルール項の組合せのうち、包含する側のルール項の集合に包含される側のルール項を追加するとともに、該包含される側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、該組合せのうち包含する側のルール項を追加し、
前記系列の識別情報を付与する処理は、前記包含関係を満たすルール項の組合せを検出する処理により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項にのみ当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記組合せを抽出する処理は、前記作成した組合せに含まれるルール項と、該ルール項から包含される側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求めることを特徴とする付記5又は6に記載の時系列ルール抽出方法。
【0169】
(付記8)前記包含関係を満たすルール項の組合せを検出する処理は、検出した包含関係を満たすルール項の組合せのうち、包含される側のルール項の集合に包含する側のルール項を追加するとともに、該包含する側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、該組合せのうち包含される側のルール項を追加し、
前記系列の識別情報を付与する処理は、前記包含関係を満たすルール項の組合せを検出する処理により検出された包含関係を満たすルール項の組合せのうち、包含する側のルール項にのみ当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記組合せを抽出する処理は、前記作成した組合せに含まれるルール項と、該ルール項から包含する側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求めることを特徴とする付記5〜7のうちいずれか一つに記載の時系列ルール抽出方法。
【0170】
(付記9)コンピュータに、
時間ごとに系列の属性と結果属性とを対応づけた時系列データを基に、属性と該属性の値と時間の範囲とを用いて表されるルール項を複数作成し、
前記ルール項を作成する処理により作成された複数のルール項の属性の値を参照して、包含される側のルール項において真である系列は包含する側のルール項でも真である包含関係を満たすルール項の組合せを検出し、
前記包含関係を満たすルール項の組合せを検出する処理により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項に当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記複数のルール項のうち1又は2以上の組合せを作成し、作成した組合せに含まれるルール項と、該ルール項により包含される側のルール項とに付与された系列の識別情報の和集合を求め、該和集合に含まれる系列の識別情報の数、及び/又は、該和集合に含まれる系列の識別情報のうち所定の結果属性を有する系列の識別情報の割合が所定範囲である組合せを抽出する
処理を実行させることを特徴とする時系列ルール抽出プログラム。
【0171】
(付記10)前記組合せを抽出する処理は、前記複数のルール項のうち1又は2以上の組合せを作成する際に、前記包含関係を満たすルール項の組合せを検出する処理により検出された包含関係を満たすルール項の組合せについてはいずれかのルール項を用いて前記組合せを作成することを特徴とする付記9に記載の時系列ルール抽出プログラム。
【0172】
(付記11)前記包含関係を満たすルール項の組合せを検出する処理は、検出した包含関係を満たすルール項の組合せのうち、包含する側のルール項の集合に包含される側のルール項を追加するとともに、該包含される側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、該組合せのうち包含する側のルール項を追加し、
前記系列の識別情報を付与する処理は、前記包含関係を満たすルール項の組合せを検出する処理により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項にのみ当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記組合せを抽出する処理は、前記作成した組合せに含まれるルール項と、該ルール項から包含される側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求めることを特徴とする付記9又は10に記載の時系列ルール抽出プログラム。
【0173】
(付記12)前記包含関係を満たすルール項の組合せを検出する処理は、検出した包含関係を満たすルール項の組合せのうち、包含される側のルール項の集合に包含する側のルール項を追加するとともに、該包含する側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、該組合せのうち包含される側のルール項を追加し、
前記系列の識別情報を付与する処理は、前記包含関係を満たすルール項の組合せを検出する処理により検出された包含関係を満たすルール項の組合せのうち、包含する側のルール項にのみ当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記組合せを抽出する処理は、前記作成した組合せに含まれるルール項と、該ルール項から包含する側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求めることを特徴とする付記9〜11のうちいずれか一つに記載の時系列ルール抽出プログラム。
【符号の説明】
【0174】
100 時系列ルール抽出装置
101 入力装置
102 出力装置
110 記憶部
111 時系列データ
112 ルール項集合
113 ルール集合
120 制御部
121 作成部
122 検出部
123 付与部
124 抽出部
210 サーバ装置
300 コンピュータ
301 CPU
302 入力装置
303 モニタ
304 媒体読み取り装置
305 インターフェース装置
306 無線通信装置
307 RAM
308 ハードディスク装置
309 バス

【特許請求の範囲】
【請求項1】
時間ごとに系列の属性と結果属性とを対応づけた時系列データを基に、属性と該属性の値と時間の範囲とを用いて表されるルール項を複数作成する作成部と、
前記作成部により作成された複数のルール項の属性の値を参照して、包含される側のルール項において真である系列は包含する側のルール項でも真である包含関係を満たすルール項の組合せを検出する検出部と、
前記検出部により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項に当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与する付与部と、
前記複数のルール項のうち1又は2以上の組合せを作成し、作成した組合せに含まれるルール項と、該ルール項により包含される側のルール項とに付与された系列の識別情報の和集合を求め、該和集合に含まれる系列の識別情報の数、及び/又は、該和集合に含まれる系列の識別情報のうち所定の結果属性を有する系列の識別情報の割合が所定範囲である組合せを抽出する抽出部と
を備えることを特徴とする時系列ルール抽出装置。
【請求項2】
前記抽出部は、
前記複数のルール項のうち1又は2以上の組合せを作成する際に、前記検出部により検出された包含関係を満たすルール項の組合せについてはいずれかのルール項を用いて前記組合せを作成することを特徴とする請求項1に記載の時系列ルール抽出装置。
【請求項3】
前記検出部は、
検出した包含関係を満たすルール項の組合せのうち、包含する側のルール項の集合に包含される側のルール項を追加するとともに、該包含される側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、該組合せのうち包含する側のルール項を追加し、
前記付与部は、
前記検出部により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項にのみ当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記抽出部は、
前記作成した組合せに含まれるルール項と、該ルール項から包含される側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求めることを特徴とする請求項1又は2に記載の時系列ルール抽出装置。
【請求項4】
前記検出部は、
検出した包含関係を満たすルール項の組合せのうち、包含される側のルール項の集合に包含する側のルール項を追加するとともに、該包含する側のルール項の間で包含関係を満たすルール項の組合せが存在する場合には、該組合せのうち包含される側のルール項を追加し、
前記付与部は、
前記検出部により検出された包含関係を満たすルール項の組合せのうち、包含する側のルール項にのみ当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記抽出部は、
前記作成した組合せに含まれるルール項と、該ルール項から包含する側のルール項を順次辿ることにより識別されるルール項とに付与された系列の識別情報の和集合を求めることを特徴とする請求項1〜3のうちいずれか一つに記載の時系列ルール抽出装置。
【請求項5】
コンピュータが実行する時系列ルール抽出方法であって、
時間ごとに系列の属性と結果属性とを対応づけた時系列データを基に、属性と該属性の値と時間の範囲とを用いて表されるルール項を複数作成し、
前記ルール項を作成する処理により作成された複数のルール項の属性の値を参照して、包含される側のルール項において真である系列は包含する側のルール項でも真である包含関係を満たすルール項の組合せを検出し、
前記包含関係を満たすルール項の組合せを検出する処理により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項に当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記複数のルール項のうち1又は2以上の組合せを作成し、作成した組合せに含まれるルール項と、該ルール項により包含される側のルール項とに付与された系列の識別情報の和集合を求め、該和集合に含まれる系列の識別情報の数、及び/又は、該和集合に含まれる系列の識別情報のうち所定の結果属性を有する系列の識別情報の割合が所定範囲である組合せを抽出する
ことを特徴とする時系列ルール抽出方法。
【請求項6】
コンピュータに、
時間ごとに系列の属性と結果属性とを対応づけた時系列データを基に、属性と該属性の値と時間の範囲とを用いて表されるルール項を複数作成し、
前記ルール項を作成する処理により作成された複数のルール項の属性の値を参照して、包含される側のルール項において真である系列は包含する側のルール項でも真である包含関係を満たすルール項の組合せを検出し、
前記包含関係を満たすルール項の組合せを検出する処理により検出された包含関係を満たすルール項の組合せのうち、包含される側のルール項に当該ルール項において真である系列の識別情報を付与することで、各ルール項に真である系列の識別情報を付与し、
前記複数のルール項のうち1又は2以上の組合せを作成し、作成した組合せに含まれるルール項と、該ルール項により包含される側のルール項とに付与された系列の識別情報の和集合を求め、該和集合に含まれる系列の識別情報の数、及び/又は、該和集合に含まれる系列の識別情報のうち所定の結果属性を有する系列の識別情報の割合が所定範囲である組合せを抽出する
処理を実行させることを特徴とする時系列ルール抽出プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate


【公開番号】特開2013−3981(P2013−3981A)
【公開日】平成25年1月7日(2013.1.7)
【国際特許分類】
【出願番号】特願2011−136732(P2011−136732)
【出願日】平成23年6月20日(2011.6.20)
【出願人】(000005223)富士通株式会社 (25,993)