(57)【要約】【課題】条件に該当する複数のルールから、ユーザが所望するルールを選択すること。【解決手段】ルール提示装置は、学習データを基にして、１以上の属性の組み合わせに対する正例の数および負例の数に応じて、正例または負例のうち一方を導く複数のルールを特定する。ルール提示装置は、ルールが導く正例または負例と異なるラベルを指定条件データのサンプルに設定して、選択したルールが導く正例または負例が変化するデータのサンプル数を特定し、サンプル数を基にして、提示するルールの順番を決定する。【選択図】図４
2020187384.tif 000002
【特許請求の範囲】
【請求項１】
属性の組み合わせと正例または負例とを対応付けたルールの集合となる学習データを取得し、
前記学習データを基にして、１以上の属性の組み合わせに対する正例の数および負例の数に応じて、正例または負例のうち一方を導く複数のルールを特定し、
前記学習データに含まれる属性の組み合わせと異なる属性の組み合わせを有し、正例または負例を指定するラベルが不明のデータを取得し、
特定した前記複数のルールのうち、前記データに含まれる属性の組み合わせに関連するルールを選択し、選択したルールが導く正例または負例と異なるラベルを前記データに設定して、選択したルールが導く正例または負例が変化する前記データのサンプル数を特定し、
前記サンプル数を基にして、提示するルールの順番を決定する
処理をコンピュータが実行することを特徴とするルール提示方法。
【請求項２】
前記複数のルールを特定する処理は、ルールに含まれる１以上の属性の組み合わせに対するラベルについて、正例の割合または負例の割合のうち大きい方の割合をルールの正答率として算出し、前記正答率が閾値以上となる複数のルールを特定することを特徴とする請求項１に記載のルール提示方法。
【請求項３】
前記データの数を特定する処理は、前記データに含まれる属性の組み合わせに関連するルールが正例を導く場合に、前記データのラベルとして負例を設定し、前記ルールに含まれる正例の割合が閾値未満となる前記データの最小のサンプル数を特定することを特徴とする請求項１または２に記載のルール提示方法。
【請求項４】
前記データの数を特定する処理は、前記データに含まれる属性の組み合わせに関連するルールに導かれるラベルが負例の場合に、前記データのラベルとして正例を設定し、前記ルールに含まれる負例の割合が閾値未満となる前記データの最小のサンプル数を特定することを特徴とする請求項１、２または３に記載のルール提示方法。
【請求項５】
前記決定する処理により決定されたルールの順番を基にして前記ルールを提示する処理を更に実行することを特徴とする請求項１〜４のいずれか一つに記載のルール提示方法。
【請求項６】
属性の組み合わせと正例または負例とを対応付けたルールの集合となる学習データを取得し、
前記学習データを基にして、１以上の属性の組み合わせに対する正例の数および負例の数に応じて、正例または負例のうち一方を導く複数のルールを特定し、
前記学習データに含まれる属性の組み合わせと異なる属性の組み合わせを有し、正例または負例を指定するラベルが不明のデータを取得し、
特定した前記複数のルールのうち、前記データに含まれる属性の組み合わせに関連するルールを選択し、選択したルールが導く正例または負例と異なるラベルを前記データに設定して、選択したルールが導く正例または負例が変化する前記データのサンプル数を特定し、
前記サンプル数を基にして、提示するルールの順番を決定する
処理をコンピュータに実行させることを特徴とするルール提示プログラム。
【請求項７】
属性の組み合わせと正例または負例とを対応付けたルールの集合となる学習データを取得し、前記学習データを基にして、１以上の属性の組み合わせに対する正例の数および負例の数に応じて、正例または負例のうち一方を導く複数のルールを特定する特定部と、
前記学習データに含まれる属性の組み合わせと異なる属性の組み合わせを有し、正例または負例を指定するラベルが不明のデータを取得し、
特定した前記複数のルールのうち、前記データに含まれる属性の組み合わせに関連するルールを選択し、選択したルールが導く正例または負例と異なるラベルを前記データに設定して、選択したルールが導く正例または負例が変化する前記データのサンプル数を特定し、前記サンプル数を基にして、提示するルールの順番を決定する決定部と
を有することを特徴とするルール提示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ルール提示方法等に関する。
【背景技術】
【０００２】
ユーザの判断支援に機械学習等を用いる場合、ユーザが直接理解できる形のルールおよび仮説を出力することが求められる。たとえば、医師の診療支援を行う場合、ある一つの入力（診療の対象者の属性）に対して、単一の予測結果だけでなく、当該予測および代替予測や、代替予測を導くルールを考慮したうえで、最終的な診療の判断を下すことが望ましい。以下の説明では、診療の対象者を、単に「対象者」と表記する。
【０００３】
図１９は、従来技術で用いられる学習データの一例を示す図である。図１９に示すように、この学習データ４は、複数の属性と、ラベルとを対応付ける。属性は、対象者の属性に対応するものであり、たとえば、属性Ａ、属性Ｂ、属性Ｃ、属性Ｄを含む。
【０００４】
属性Ａは「年齢が５０（歳）以上であるか否かを示すもの」であり、対象者の年齢が５０以上の場合には値が「１」となり、５０未満の場合には値が「０」となる。
【０００５】
属性Ｂは「身長が１６０ｃｍ以上であるか否かを示すもの」であり、対象者の身長が１６０ｃｍ以上の場合には値が「１」となり、１６０ｃｍ未満の場合には値が「０」となる。
【０００６】
属性Ｃは「体重が８０ｋｇ以上であるか否かを示すもの」であり、対象者の体重が８０ｋｇ以上の場合には値が「１」となり、８０ｋｇ未満の場合には値が「０」となる。
【０００７】
属性Ｄは、「男性か女性かを示すもの」であり、対象者の性別が男性の場合には値が「１」となり、女性の場合には値が「０」となる。
【０００８】
ラベルは、レコードの各属性に対応する値が「健康であるか否かを示すもの」であり、健康である場合には「＋（正例）」となり、健康でない場合には「−（負例）」となる。たとえば、１行目のレコードにおいて、属性Ａ「０」、属性Ｂ「１」、属性Ｃ「０」、属性Ｄ「０」となる場合、ラベルは「＋」となる。７行目のレコードにおいて、属性Ａ「０」、属性Ｂ「０」、属性Ｃ「１」、属性Ｄ「０」となる場合、ラベルは「−」となる。
【０００９】
従来技術では、図１９に示した学習データ４を用いてルールの集合を生成し、ルールの集合を用いて、所与の条件を満たすルールを全て列挙する。たとえば、条件「体重が８０ｋｇ未満」が入力されると、属性Ｃが「０」となる「正例を導くルール」を出力する。条件「体重が８０ｋｇ以上の女性」が入力されると、属性Ｃが「１」となる「負例を導くルール」を出力する。条件「身長が１６０ｃｍ未満で体重が８０ｋｇ以上」が入力されると、属性Ｂが「０」、属性Ｃが「１」となる「負例を導くルール」を出力する。
【００１０】
なお、従来技術では、入力された条件が、複数のルールに該当する場合には、該当した複数のルールを全て列挙している。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】国際公開第２０１７／０８１７１５号
【特許文献２】国際公開第２０１３／１７２３１０号
【特許文献３】特開平６−１０２９０７号公報
【特許文献４】特開２０１６−２１２８２５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、上述した従来技術では、入力された条件が、複数のルールに該当する場合、該当した複数のルールを列挙しているため、ユーザは、列挙された複数のルールから、所望のルールを選び出すことが難しい。
【００１３】
図２０は、従来技術の問題を説明するための図である。たとえば、対象者の条件を「年齢が５０以上、身長１６０ｃｍ未満、体重８０ｋｇ以上、男性」とする。従来技術では、対象者の条件５と学習データに基づくルールの集合との比較により、条件５に該当する複数のルールＡ１〜Ａ１３を列挙する。ユーザは、一度にこれらのルールＡ１〜Ａ１３を提示されても、所望のルールを選び出すことが難しい。
【００１４】
たとえば、ルールＡ１は「体重が８０ｋｇ以上である場合に、健康でない（不健康である）」ことを示すルールであり、条件５に該当するルールとなる。ルールＡ２〜Ａ１３に関する説明は省略するが、いずれも、条件５に該当するルールとなる。
【００１５】
なお、考えられるルール集合の中でルールに含まれるサンプル数に対して、該当ルールを支持するサンプル数の比率を該当ルールの正答率として算出し、条件に該当するルールのうち、正答率が閾値を超えるルールのみを提示することも考えられる。しかし、適切な閾値を設定することは難しく、比較的多くのルールが含まれるような低めの閾値を設定することになり、ルールを絞り込むことも難しい。
【００１６】
１つの側面では、本発明は、条件に該当する複数のルールから、ユーザが所望するルールを選択することができるルール提示方法、ルール提示プログラムおよびルール提示装置を提供することを目的とする。
【課題を解決するための手段】
【００１７】
第１の案では、コンピュータは次の処理を実行する。コンピュータは、属性の組み合わせと正例または負例とを対応付けたルールの集合となる学習データを取得する。コンピュータは、学習データを基にして、１以上の属性の組み合わせに対する正例の数および負例の数に応じて、正例または負例のうち一方を導く複数のルールを特定する。コンピュータは、学習データに含まれる属性の組み合わせと異なる属性の組み合わせを有し、正例または負例を指定するラベルが不明のデータを取得する。コンピュータは、特定した複数のルールのうち、データに含まれる属性の組み合わせに関連するルールを選択する。コンピュータは、選択したルールが導く正例または負例と異なるラベルをデータに設定して、選択したルールが導く正例または負例が変化するデータのサンプル数を特定し、サンプル数を基にして、提示するルールの順番を決定する。
【発明の効果】
【００１８】
条件に該当する複数の条件から、ユーザが所望のルールを選択することができる。
【図面の簡単な説明】
【００１９】
【図１】図１は、カルノー図を説明するための図（１）である。
【図２】図２は、カルノー図を説明するための図（２）である。
【図３】図３は、カルノー図を説明するための図（３）である。
【図４】図４は、本実施例にかかるルール提示装置の処理を説明するための図である。
【図５】図５は、正答率とサンプル数との関係を示す図である。
【図６】図６は、指定される属性に該当するルールの正答率とサンプル数との関係を示す図である。
【図７】図７は、本実施例にかかるルール提示装置の構成を示す機能ブロック図である。
【図８】図８は、学習データのデータ構造の一例を示す図である。
【図９】図９は、指定条件データの一例を示す図である。
【図１０】図１０は、ルール集合データの一例を示す図である。
【図１１】図１１は、提示候補集合データの一例を示す図である。
【図１２】図１２は、特定部の処理を説明するための図である。
【図１３】図１３は、決定部の処理を説明するための図（１）である。
【図１４】図１４は、決定部の処理を説明するための図（２）である。
【図１５】図１５は、決定部の処理を説明するための図（３）である。
【図１６】図１６は、決定部が生成する画面情報の一例を示す図である。
【図１７】図１７は、本実施例にかかるルール提示装置の処理手順を示すフローチャートである。
【図１８】図１８は、本実施例に係るルール提示装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【図１９】図１９は、従来技術の機械学習に用いられる学習データの一例を示す図である。
【図２０】図２０は、従来技術の問題を説明するための図である。
【発明を実施するための形態】
【００２０】
以下に、本願の開示するルール提示方法、ルール提示プログラムおよびルール提示装置の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例】
【００２１】
本実施例で用いるカルノー図について説明する。図１、図２、図３は、カルノー図を説明するための図である。カルノー図は、論理式を図示したものである。一例として、図１〜図３に示すカルノー図を、属性Ａ，Ｂ，Ｃ，Ｄを論理変数とする論理式のカルノー図とする。
【００２２】
図１について説明する。カルノー図の１行目は「ｎｏｔＡかつｎｏｔＢ」に対応する行である。２行目は「ｎｏｔＡかつＢ」に対応する行である。３行目は「ＡかつＢ」に対応する行である。４行目は「ＡかつｎｏｔＢ」に対応する行である。
【００２３】
カルノー図の１列目は「ｎｏｔＣかつｎｏｔＤ」に対応する行である。２列目は「ｎｏｔＣかつＤ」に対応する行である。３列目は「ＣかつＤ」に対応する行である。４列目は「ＣかつｎｏｔＤ」に対応する行である。
【００２４】
本実施例では、カルノー図において、ｎ行目、ｍ列目のセルを示す場合にｓ（ｎ，ｍ）と表記する。たとえば、１行目、４列目のセルはｓ（１，４）となる。ｓ（１，４）は、属性が「ｎｏｔＡかつｎｏｔＢかつＣかつＤ」であることを示す。
【００２５】
図２の説明に移行する。本実施例のルール提示装置は、学習データの各サンプル（レコード）を基にして、カルノー図の各セルに、Ｐｎ（Positive）、Ｎｎ（Negative）を設定する。添え字ｎは、便宜的に、各Ｐ、各Ｎを区別するためのものである。
【００２６】
たとえば、本実施例に係るルール提示装置は、ｓ（１，４）のセルに対応するサンプルが負例である場合には、ｓ（１，４）のセルに「Ｎ１」を設定する。すなわち、「ｎｏｔＡかつｎｏｔＢかつＣかつｎｏｔＤ」の属性をもつサンプルが負例であることを示す。
【００２７】
ルール提示装置は、ｓ（２，１）のセルに対応するサンプルが正例である場合には、ｓ（２，１）のセルに「Ｐ１」を設定する。すなわち、「ｎｏｔＡかつＢかつｎｏｔＣかつｎｏｔＤ」の属性をもつサンプルが正例であることを示す。
【００２８】
ここでは説明を省略するが、カルノー図に含まれる他のセルも同様にして、サンプルが負例の場合には「Ｎ」を設定し、サンプルが正例の場合には「Ｐ」を設定する。該当するサンプルが学習データに存在しない場合には、セルには何も設定しない。
【００２９】
図３の説明に移行する。カルノー図は、属性の組み合わせに応じて、該当するセルが決定される。図３に示すように、属性「Ｃ」に対応するセルは、カルノー図の３行目４行目に含まれる各セルとなる。ルール提示装置は、属性「Ｃ」に含まれる正例、負例の数に応じて、属性「Ｃ」に対応するルールおよび正答率を特定する。
【００３０】
たとえば、属性Ｃに含まれるセルの内、正例が割り当てられたセルの数が、負例が割り当てられたセルの数よりも多い場合、属性Ｃに対応するルールは「正例」を導くルールとなる。また、かかるルールの正答率は、属性Ｃに含まれるセルの正例の数および負例の数に対する、正例の数の割合となる。
【００３１】
これに対して、属性「Ｃ」に含まれるセルの内、正例が割り当てられたセルの数が、負例が割り当てられたセルの数よりも少ない場合、属性Ｃに対応するルールは、「負例」を導くルールとなる。また、かかるルールの正答率は、属性Ｃに含まれるセルの正例の数および負例の数に対する、負例の数の割合となる。
【００３２】
次に、本実施例にかかるルール提示装置の処理の一例について説明する。図４は、本実施例にかかるルール提示装置の処理を説明するための図である。ルール提示装置は、属性の組み合わせと正例または負例を導くルールの集合となる学習データを基にして、カルノー図の各セルに、ＰまたはＮを設定する。
【００３３】
図４に示す例では、ルール提示装置は、カルノー図のセルｓ（１，４）、ｓ（４，４）、ｓ（３，３）、ｓ（１，２）、ｓ（３，４）に、Ｎ１、Ｎ２、Ｎ３、Ｎ４、Ｎ５をそれぞれ設定する。また、ルール提示装置は、カルノー図のセルｓ（２，１）、ｓ（２，３）、ｓ（４，２）、ｓ（３，２）、ｓ（２，２）、ｓ（１，３）に、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５をそれぞれ設定する。
【００３４】
たとえば、ユーザは、属性の条件として、「ＡかつｎｏｔＢかつＣかつＤ」のルール提示の要求を、ルール提示装置に指定した場合について説明する。カルノー図において、属性の条件「ＡかつｎｏｔＢかつＣかつＤ」に対応するセルは、ｓ（４，３）となる。
【００３５】
ルール提示装置は、属性の条件「ＡかつｎｏｔＢかつＣかつＤ」の指定を受け付けると、まず、１属性以上の正例または負例を導くルールのうち、正答率が閾値以上となる複数のルールを、学習データの各サンプルから特定する。本実施例では、一例として、正答率の閾値を「０．６（６０％）」とする。また、ルール提示装置は、正答率が閾値以上となるルールのうち、属性の条件「ＡかつｎｏｔＢかつＣかつＤ」に関連するルールを特定する。
【００３６】
たとえば、正答率が閾値以上となり、属性の条件「ＡかつｎｏｔＢかつＣかつＤ」に関連するルールは、次のルールとなる。すなわち、指定された属性に該当するルールは、属性「Ａ」のルール（正答率：０．６）、属性「ｎｏｔＢ」のルール（正答率：０．６）、属性「Ｃ」のルール（正答率：０．６７）、属性「Ｄ」のルール（正答率：０．７１）を含む。また、指定された属性に該当するルールは、属性「ＣＤ」のルール（正答率：０．６７）、属性「ｎｏｔＢかつＣ」のルール（正答率：０．６７）、属性「ｎｏｔＢかつＤ」のルール（正答率：０．６７）、属性「ＡかつＣかつＤ」のルール（正答率：１）、属性「ＡかつｎｏｔＢかつＣ」のルール（正答率：１）、属性「ＡかつｎｏｔＢかつＤ」のルール（正答率：１）、属性「ｎｏｔＢかつＣかつＤ」のルール（正答率：１）となる。
【００３７】
指定された属性に該当するルールのうち、負例を導くルールは、属性「Ｃ」、「ＡＣ」、「ｎｏｔＢかつＣ」、「ＡかつｎｏｔＢかつＣ」、「ｎｏｔＢ」、「Ａ」、「ＡＣＤ」のルールとなる。
【００３８】
指定された属性に該当するルールのうち、正例を導くルールは、属性「ＡかつｎｏｔＢかつＤ」、「ｎｏｔＢかつＣかつＤ」、「Ｄ」、「ＣかつＤ」、「ＡかつＤ」、「ｎｏｔＢかつＤ」のルールとなる。
【００３９】
続いて、ルール提示装置は、指定された属性に該当する複数のルールについて「最小サンプル数」をそれぞれ算出する。ルール提示装置は、指定された属性のサンプルのラベルに対して、ルールが導くラベルとは相反するラベルを設定し、サンプルの数を増やしていき、はじめにルールの正答率が閾値未満となるサンプルの数を、最小サンプル数として算出する。最小サンプル数が大きいルールほど、ルールにより導かれる結果は変動しづらく、信頼性の高いルールといえる。
【００４０】
たとえば、属性「Ｃ」の「負例」を導くルールを用いて、最小サンプル数を説明する。ルール提示装置は、セルｓ（３，３）のサンプルのラベルを「正例」とし、かかるサンプルの数がいくつになった場合にはじめて、該当ルールの正答率が閾値未満となるのかを算出する。たとえば、セルｓ（３，３）に「正例」を導くサンプルを１つ追加するとはじめて、属性「Ｃ」の正答率が閾値未満となるため、属性「Ｃ」の最小サンプル数は、「１」となる。
【００４１】
属性「Ｄ」の「正例」を導くルールを用いて、最小サンプル数を説明する。ルール提示装置は、セルｓ（３，３）のサンプルのラベルを「負例」とし、かかるサンプルの数がいくつになった場合にはじめて、該当ルールの正答率が閾値未満となるのかを算出する。たとえば、セルｓ（３，３）に「負例」を導くサンプルを２つ追加するとはじめて、属性「Ｄ」の正答率が閾値未満となるため、属性「Ｄ」の最小サンプル数は、「２」となる。
【００４２】
ルール提示装置は、指定される属性に該当するルールのうち、最小サンプル数の大きい順にルールを並び変え、並び変えた順序によって、各ルールをユーザに提示する。図４に示す例では、１番目に、属性「ＡＣ」のルールがユーザに提示され、２番目に、属性「Ｄ」のルールがユーザに提示される。
【００４３】
上記のように、本実施例にかかるルール提示装置は、指定の属性に関連する複数のルールのうち、指定の属性に対応するラベルが該当ルールと相反しても、ラベルが変化しにくいルール（最小サンプル数の大きいルール）を優先する順番で、ルール提示を行う。これによって、条件に該当する複数のルールから、ユーザが所望するルールを選択することができる。
【００４４】
最小サンプル数の大きいルールは、信頼性を表すスコアといえる。ルール提示装置は、最小サンプル数に基づいて、ルールを順序づけることで、ユーザ側でルールの正答率の高さとルールが含むサンプル数のバランスを明示的に指定しなくても、正答率とサンプル数とのトレードオフ関係を考慮したルールを順番に提示できる。
【００４５】
図５は、正答率とサンプル数との関係を示す図である。図５のグラフの縦軸は、ルールの正答率に対応する軸である。グラフの横軸は、ルールに含まれるサンプル数に対応する軸である。ここで、データの変化に対して頑健なルールは、サンプル数が多いルールという仮説が成り立つ。これにより、ユーザは、ルールの正答率が同程度なら、サンプル数の多いルールを選びたい。また、ユーザは、ルールを指示するサンプル数が同程度ならば、正答率の高いルールを選びたい。一般的に、ルールの正解率とルールが含むサンプル数には、トレードオフ関係にあるが、ルール提示装置は、正答率とサンプル数との関係がニーポイントＫ３に近いルールを優先的に提示している。
【００４６】
図６は、指定される属性に該当するルールの正答率とサンプル数との関係を示す図である。図６のグラフの縦軸は、ルールの正答率に対応する軸である。グラフの横軸は、ルールに含まれるサンプル数に対応する軸である。図６において、ポイント１０ＡＣは、図４に示した属性「ＡＣ」のルールのサンプル数と、正答率との関係を示す。ポイント１０Ｄは、図４に示した属性「Ｄ」のルールのサンプル数と、正答率との関係を示す。ポイント１０ＡＣ、ポイント１０Ｄは、ニーポイントＫ３に近いため、ユーザの所望する属性「ＡＣ」のルールおよび、属性「Ｄ」のルールをユーザに提示できることが分かる。
【００４７】
次に、本実施例にかかるルール提示装置の構成の一例について説明する。図７は、本実施例にかかるルール提示装置の構成を示す機能ブロック図である。図７に示すように、このルール提示装置１００は、通信部１１０と、入力部１２０と、表示部１３０と、記憶部１４０と、制御部１５０とを有する。
【００４８】
通信部１１０は、ネットワークを介して図示しない外部装置とデータ通信を実行する処理部である。通信部１１０は、通信装置の一例である。後述する制御部１５０は、通信部１１０を介して、外部装置とデータをやり取りする。
【００４９】
入力部１２０は、ルール提示装置１００に対して各種の情報を入力するための入力装置である。入力部１２０は、キーボードやマウス、タッチパネル等に対応する。たとえば、ユーザは、入力部１２０を操作して、指定条件データ１４２を入力してもよい。指定条件データ１４２は、ユーザが指定する属性の条件の情報である。
【００５０】
表示部１３０は、制御部１５０から出力される情報を表示する表示装置である。たとえば、表示部１３０は、制御部１５０から出力されるルールの情報を表示する。
【００５１】
記憶部１４０は、学習データ１４１、指定条件データ１４２、ルール集合データ１４３、提示候補集合データ１４４を有する。記憶部１４０は、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）などの半導体メモリ素子や、ＨＤＤ（Hard  Disk  Drive）などの記憶装置に対応する。
【００５２】
学習データ１４１は、属性の組み合わせと、正例または負例とを対応付けたルールの集合を有する。図８は、学習データのデータ構造の一例を示す図である。図８に示すように、学習データ１４１は、サンプル番号と、各属性Ａ，Ｂ，Ｃ，Ｄと、ラベルとを対応付ける。図８では、属性Ａ〜Ｄを示すが、学習データ１４１は他の属性を有していてもよい。
【００５３】
サンプル番号は、各サンプル（レコード）を識別する情報である。属性Ａは「年齢が５０（歳）以上であるか否かを示すもの」であり、対象者の年齢が５０以上の場合には値が「１」となり、５０未満の場合には値が「０」となる。属性Ｂは「身長が１６０ｃｍ以上であるか否かを示すもの」であり、対象者の身長が１６０ｃｍ以上の場合には値が「１」となり、１６０ｃｍ未満の場合には値が「０」となる。
【００５４】
属性Ｃは「体重が８０ｋｇ以上であるか否かを示すもの」であり、対象者の体重が８０ｋｇ以上の場合には値が「１」となり、８０ｋｇ未満の場合には値が「０」となる。属性Ｄは「男性か女性かを示すもの」であり、対象者の性別が男性の場合には値が「１」となり、女性の場合には値が「０」となる。
【００５５】
ラベルは、サンプルの各属性に対応する値が「健康であるか否かを示すもの」であり、健康である場合には「＋（正例）」となり、健康でない場合には「−（負例）」となる。たとえば、サンプル番号「Ｒ０００１」のサンプルにおいて、属性Ａ「０」、属性Ｂ「１」、属性Ｃ「０」、属性Ｄ「０」となる場合、ラベルは「＋」となる。サンプル番号「Ｒ０００７」のサンプルにおいて、属性Ａ「０」、属性Ｂ「０」、属性Ｃ「１」、属性Ｄ「０」となる場合、ラベルは「−」となる。
【００５６】
指定条件データ１４２は、ユーザに指定される属性の条件を示すものである。図９は、指定条件データの一例を示す図である。図９に示す例では、属性Ａ「１」、属性Ｂ「０」、属性Ｃ「１」、属性Ｄ「１」となっている。このため、指定条件データ１４２が示す条件は「ＡかつｎｏｔＢかつＣかつＤ」を示す。
【００５７】
ルール集合データ１４３は、学習データ１４１から特定される複数のルールのデータを保持するものである。ルール集合データ１４３に含まれるルールの正答率を閾値以上とする。一例として、正答率の閾値を「０．６（６０％）」とする。
【００５８】
図１０は、ルール集合データの一例を示す図である。たとえば、学習データ１４１の各サンプルに基づいて、ＰおよびＮを設定したカルノー図を、図１０に示すものとする。たとえば、属性Ａ〜Ｄについて、１つ以上の属性からなるルールのうち、正答率が閾値以上となるルールは、属性「Ａ」のルール（正答率：０．６）、属性「ｎｏｔＢ」のルール（正答率：０．６）、属性「Ｃ」のルール（正答率：０．６７）、属性「Ｄ」のルール（正答率：０．７１）を含む。
【００５９】
また、正答率が閾値以上となるルールは、属性「ＣＤ」のルール（正答率：０．６７）、属性「ｎｏｔＢかつＣ」のルール（正答率：０．６７）、属性「ｎｏｔＢかつＤ」のルール（正答率：０．６７）、属性「ＡかつＣかつＤ」のルール（正答率：１）、属性「ＡかつｎｏｔＢかつＣ」のルール（正答率：１）、属性「ＡかつｎｏｔＢかつＤ」のルール（正答率：１）、属性「ｎｏｔＢかつＣかつＤ」のルール（正答率：１）となる。
【００６０】
提示候補集合データ１４４は、ルール集合データ１４３に含まれる各ルールのうち、指定条件データ１４２に該当するルールのデータを保持するものである。
【００６１】
図１１は、提示候補集合データの一例を示す図である。たとえば、指定条件データ１４２に対応するカルノー図のセルを、セルｓ（４，３）とする。そうすると、ルール集合データ１４３のルールのうち、全てのルールが、指定条件データ１４２に該当するルールとなる。
【００６２】
図１１では、正答率が閾値未満であるため、ルール集合データ１４３には含めなかったが、仮に、属性「ｎｏｔＡ」のルールの正答率が閾値以上であり、属性「ｎｏｔＡ」のルールが、ルール集合データ１４３に含まれているものとして説明する。この場合、かかる属性「ｎｏｔＡ」のルールは、指定条件データ１４２に該当するルールとならない（セルｓ（４，３）を含まない）ため、提示候補集合データ１４４から、属性「ｎｏｔＡ」のルールが除外される。
【００６３】
図７の説明に戻る。制御部１５０は、取得部１５１と、特定部１５２と、決定部１５３とを有する。制御部１５０は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などによって実現できる。また、制御部１５０は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのハードワイヤードロジックによっても実現できる。
【００６４】
取得部１５１は、ネットワークを介して外部装置等から学習データ１４１を取得する処理部である。取得部１５１は、学習データ１４１を取得した場合に、学習データ１４１を記憶部１４０に登録する。また、取得部１５１は、ユーザによる入力部１２０の操作により、指定条件データ１４２の入力を受け付けた場合に、指定条件データ１４２を、記憶部１４０に登録する。
【００６５】
特定部１５２は、学習データ１４１を基にして、１以上の属性の組み合わせに対する正例の数および負例の数に応じて、正例または負例のうち一方のラベルを導く複数のルールを特定し、特定したルールの情報を、ルール集合データ１４３に登録する処理部である。
【００６６】
図１２は、特定部の処理を説明するための図である。特定部１５２は、学習データ１４１に含まれる各サンプルを参照し、サンプルの属性の組み合わせに対応するカルノー図の各セルに、ＰまたはＮを設定する。
【００６７】
図１２に示す例では、特定部１５２は、カルノー図のセルｓ（１，４）、ｓ（４，４）、ｓ（３，３）、ｓ（１，２）、ｓ（３，４）に、Ｎ１、Ｎ２、Ｎ３、Ｎ４、Ｎ５をそれぞれ設定する。また、ルール提示装置は、カルノー図のセルｓ（２，１）、ｓ（２，３）、ｓ（４，２）、ｓ（３，２）、ｓ（２，２）、ｓ（１，３）に、Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５をそれぞれ設定する。
【００６８】
特定部１５２は、一つ以上の属性の組み合わせに対応する全てのルールを特定し、特定した各ルールについて、正答率を算出し、正答率が閾値以上となるルールを、ルール集合データ１４３に登録するルールとして特定する。
【００６９】
属性「Ａ」のルールは、「負例」を導くルールである。属性「Ａ」のルールは、正例を導くサンプル数が２、負例を導くサンプル数が３であるため、正答率は「０．６」となり、閾値以上となる。このため、特定部１５２は、属性「Ａ」のルールの情報を、ルール集合データ１４３に登録する。
【００７０】
属性「ｎｏｔＡかつｎｏｔＢかつＤ」のルールは、「正例」または「負例」を導くルールである。属性「ｎｏｔＡかつｎｏｔＢかつＤ」のルールは、正例を導くサンプル数が１、負例を導くサンプル数が１であるため、正答率は「０．５」となり、閾値未満となる。このため、特定部１５２は、属性「ｎｏｔＡかつｎｏｔＢかつＤ」のルールの情報を、ルール集合データ１４３に登録しない。
【００７１】
特定部１５２は、１以上の属性の組み合わせに対する各ルールについて、上記処理を繰り返し実行することで、正答率が閾値以上となるルールの情報を、ルール集合データ１４３に登録する。
【００７２】
決定部１５３は、ルール集合データ１４３に含まれる複数のルールのうち、指定条件データ１４２に関連するルールを特定し、特定したルールの情報を、提示候補集合データ１４４に登録する。決定部１５３は、提示候補集合データ１４４に含まれる各ルールについて、最小サンプル数を算出し、最小サンプル数を基にして、ルールを提示する順番を決定する。また、決定部１５３は、決定した順番に従って、ルールを表示部１３０に出力して表示させる。
【００７３】
決定部１５３が、指定条件データ１４２に関連するルールの情報を、提示候補集合データ１４４に登録する処理の一例について説明する。図１３は、決定部の処理を説明するための図（１）である。決定部１５３は、提示候補集合データ１４４に登録された各ルールの属性と、指定条件データ１４２に対応する属性とを比較し、指定条件データ１４２の属性の組み合わせに関連するルールを特定する。指定条件データ１４２の属性の条件を「ＡかつｎｏｔＢかつＣかつＤ」とする。
【００７４】
図１３に示す例では、指定条件データ１４２の属性に対応するセルはｓ（４，３）となる。このため、指定条件データ１４２の属性に関連するルールは、属性「Ｃ」、「ＡかつＣ」、「ｎｏｔＢかつＣ」、「ＡかつｎｏｔＢかつＣ」、「ｎｏｔＢ」、「Ａ」、「ＡかつＣかつＤ」のルールとなる。また、指定条件データ１４２の属性に関連するルールは、属性「ＡかつｎｏｔＢかつＤ」、「ｎｏｔＢかつＣかつＤ」、「Ｄ」、「ＣかつＤ」、「ＡかつＤ」、「ｎｏｔＢかつＤ」のルールとなる。
【００７５】
上記処理を行うことで、決定部１５３は、ルール集合データ１４３に登録された各ルールのうち、指定条件データ１４２に関連するルールを特定する。決定部１５３は、指定条件データ１４２に関連するルールの情報を、提示候補集合データ１４４に登録する。
【００７６】
続いて、決定部１５３が、提示候補集合データ１４４の各ルールの最小サンプル数を算出する処理の一例について説明する。決定部１５３は、指定条件データ１４２に対応するサンプルのラベルを、ルールが導くラベルとは相反するラベルを設定し、サンプルの数を増やしていき、初めにルールの正答率が閾値未満となるサンプルの数を、最小サンプル数として算出する。
【００７７】
図１４は、決定部の処理を説明するための図（２）である。たとえば、属性「ＡかつＣ」の「負例」を導くルールを用いて、最小サンプル数を算出する例について説明する。決定部１５３は、指定条件データ１４２に対応するセルｓ（４，３）に対して、属性「正例」のサンプルを１つ設定すると、正解率は、０．７５となる。決定部１５３は、指定条件データ１４２に対応するセルｓ（４，３）に対して、属性「正例」のサンプルを２つ設定すると、正解率は、０．６となる。決定部１５３は、指定条件データ１４２に対応するセルｓ（４，３）に対して、属性「正例」のサンプルを３つ設定すると、正解率は、０．５となる。このため、決定部１５３は、属性「ＡかつＣ」の「負例」を導くルールの最小サンプル数を「３」として算出する。
【００７８】
属性「Ｄ」の「正例」を導くルールを用いて、最小サンプル数を算出する例について説明する。決定部１５３は、指定条件データ１４２に対応するセルｓ（４，３）に対して、属性「負例」のサンプルを１つ設定すると、正解率は、０．６３となる。決定部１５３は、指定条件データ１４２に対応するセルｓ（４，３）に対して、属性「正例」のサンプルを２つ設定すると、正解率は、０．５となる。このため、決定部１５３は、属性「Ｄ」の「正例」を導くルールの最小サンプル数を「２」として算出する。
【００７９】
決定部１５３は、提示候補集合データ１４４の他のルールに対しても、上記処理を繰り返し実行することで、各ルールの最小サンプル数を算出する。
【００８０】
決定部１５３は、提示候補集合データ１４４に登録した各ルールに対応する最小サンプル数を基にして、最小サンプル数の降順に、ルールをソートする。決定部１５３は、ソートしたルールの情報を、先頭から（最小サンプル数の大きい順に）、表示部１３０に表示させる。
【００８１】
図１５は、決定部の処理を説明するための図（３）である。たとえば、決定部１５３が、最小サンプル数の降順でソートした結果、１番目のルールが、属性「ＡＣ」のルール、２番目のルールが、属性「Ｄ」のルールとする。この場合には、図１５に示すように、決定部１５３は、属性「ＡＣ」の「負例」を導くルールを１番目に表示する。決定部１５３は、属性「Ｄ」の「正例」を導くルールを２番目に表示する。
【００８２】
たとえば、決定部１５３は、ルールを表示するための画面情報を生成し、生成した画面情報を表示部１３０に出力して、表示させてもよい。図１６は、決定部が生成する画面情報の一例を示す図である。図１６に示すように、画面情報５１には、領域５１Ａと、領域５１Ｂが含まれる。
【００８３】
領域５１Ａは、指定条件データ１４２を表示する領域である。領域５１Ｂは、最小サンプル数の降順に、ルールを表示する領域である。決定部１５３は、領域５１Ｂにおいて、所定時間毎に、続くルールを自動的に表示させてもよいし、ユーザの操作に応じて、ルールを順に表示してもよい。
【００８４】
次に、本実施例にかかるルール提示装置１００の処理手順の一例について説明する。図１７は、本実施例にかかるルール提示装置の処理手順を示すフローチャートである。図１７に示すように、ルール提示装置１００の取得部１５１は、学習データ１４１を取得し、記憶部１４０に登録する（ステップＳ１０１）。ルール提示装置１００の特定部１５２は、所与の条件（正答率が閾値以上）を満たすルールの集合を全て列挙し、ルール集合データ４３に登録する（ステップＳ１０２）。
【００８５】
ルール提示装置１００の決定部１５３は、指定条件データ１４２を取得し、記憶部１４０に登録する（ステップＳ１０３）。決定部１５３は、指定条件データ１４２に関連する提示候補集合データ１４４を、ルール集合データ１４３から抽出し、記憶部１４０に登録する（ステップＳ１０４）。
【００８６】
決定部１５３は、ｉに「１」を設定する（ステップＳ１０５）。決定部１５３は、提示候補集合データ１４４から、ｉ番目のルールを選択する（ステップＳ１０６）。決定部１５３は、指定条件データ１４２に対応するセルのサンプルを、ｉ番目のルールが導くラベルと相反するラベルをもつサンプルとし、ｉ番目のルールの正答率を算出する（ステップＳ１０７）。
【００８７】
決定部１５３は、正答率が閾値以上の場合には（ステップＳ１０８，Ｙｅｓ）、相反するラベルのサンプル数を１つ増やし（ステップＳ１０９）、ステップＳ１０７に移行する。一方、決定部１５３は、正答率が閾値未満の場合には（ステップＳ１０８，Ｎｏ）、ステップＳ１１０に移行する。
【００８８】
決定部１５３は、最小サンプル数を記録する（ステップＳ１１０）。決定部１５３は、ｉに１を加算することで、ｉを更新する（ステップＳ１１１）。決定部１５３は、ｉがｒａｎｇｅ（提示候補集合データのルールの総数）よりも大きいか否かを判定する（ステップＳ１１２）。決定部１５３は、ｉがｒａｎｇｅのよりも大きくない場合には（ステップＳ１１２，Ｎｏ）、ステップＳ１０６に移行する。
【００８９】
一方、決定部１５３は、ｉがｒａｎｇｅのよりも大きい場合には（ステップＳ１１２，Ｙｅｓ）、ステップＳ１１３に移行する。決定部１５３は、提示候補集合データ１４４の各ルールについて、最小サンプル数に基づき、ルールを順序付けて出力する（ステップＳ１１３）。
【００９０】
次に、本実施例にかかるルール提示装置１００の効果について説明する。ルール提示装置１００は、指定条件データ１４２に関連する複数のルールのうち、指定条件データ１４２に対応するラベルが該当ルールと相反しても、ラベルが変化しにくいルール（最小サンプル数の大きいルール）を優先する順番で、ルール提示を行う。これによって、指定条件データ１４２に対応する複数のルールから、ユーザが所望するルールを選択することができる。
【００９１】
最小サンプル数の大きいルールは、信頼性を表すスコアといえる。ルール提示装置は、最小サンプル数に基づいて、ルールを順序づけることで、ユーザ側でルールの正答率の高さとルールが含むサンプル数のバランスを明示的に指定しなくても、正答率とサンプル数とのトレードオフ関係を考慮したルールを順番に提示できる。
【００９２】
たとえば、指定条件データ１４２に関連する複数のルールを絞り込む素朴な方法としては、正答率に着目し、正答率の高いルールを表示することが考えられる。しかし、正答率の高いルールは、少数サンプルのルールが提示される傾向があり、このようなルールは、データの変化を受けやすく、信頼性の低いルールとなる。
【００９３】
たとえば、図１１で説明したルールのうち、属性「ＡかつｎｏｔＢかつＣ」のルールの正答率は「１」であるため、正答率の高いルールとなる。しかしながら、属性「ＡかつｎｏｔＢかつＣ」のルールに含まれるサンプルは、一つであるため、仮に、セルｓ（４，４）のラベルが「負例」から「正例」に変わると、負例を導くルールから、正例を導くルールに変わってしまい、ノイズの影響を受けやすく、信頼性が低いため、ユーザの所望するルールとは言えない。
【００９４】
これに対して、本実施例では、図６で説明したように、ニーポイントに近く信頼性の高いルールを優先して表示するため、ユーザの所望するルールを優先して提示することができる。
【００９５】
次に、本実施例に示したルール提示装置１００と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図１８は、本実施例に係るルール提示装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【００９６】
図１８に示すように、コンピュータ５００は、各種演算処理を実行するＣＰＵ５０１と、ユーザからのデータの入力を受け付ける入力装置５０２と、ディスプレイ５０３とを有する。また、コンピュータ５００は、記憶媒体からプログラム等を読み取る読み取り装置５０４と、有線または無線ネットワークを介して、外部装置等との間でデータの授受を行うインタフェース装置５０５とを有する。コンピュータ５００は、各種情報を一時記憶するＲＡＭ５０６と、ハードディスク装置５０７とを有する。そして、各装置５０１〜５０７は、バス５０８に接続される。
【００９７】
ハードディスク装置５０７は、取得プログラム５０７ａ、特定プログラム５０７ｂ、決定プログラム５０７ｃを有する。ＣＰＵ５０１は、取得プログラム５０７ａ、特定プログラム５０７ｂ、決定プログラム５０７ｃを読み出してＲＡＭ５０６に展開する。
【００９８】
取得プログラム５０７ａは、取得プロセス５０６ａとして機能する。特定プログラム５０７ｂは、特定プロセス５０６ｂとして機能する。決定プログラム５０７ｃは、決定プロセス５０６ｃとして機能する。
【００９９】
取得プロセス５０６ａの処理は、取得部１５１の処理に対応する。特定部プロセス５０６ｂの処理は、特定部１５２の処理に対応する。決定プロセス５０６ｃの処理は、決定部１５３の処理に対応する。
【０１００】
なお、各プログラム５０７ａ〜５０７ｃついては、必ずしも最初からハードディスク装置５０７に記憶させておかなくてもよい。例えば、コンピュータ５００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ５００が各プログラム５０７ａ〜５０７ｃを読み出して実行するようにしてもよい。
【０１０１】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【０１０２】
（付記１）属性の組み合わせと正例または負例とを対応付けたルールの集合となる学習データを取得し、
前記学習データを基にして、１以上の属性の組み合わせに対する正例の数および負例の数に応じて、正例または負例のうち一方を導く複数のルールを特定し、
前記学習データに含まれる属性の組み合わせと異なる属性の組み合わせを有し、正例または負例を指定するラベルが不明のデータを取得し、
特定した前記複数のルールのうち、前記データに含まれる属性の組み合わせに関連するルールを選択し、選択したルールが導く正例または負例と異なるラベルを前記データに設定して、選択したルールが導く正例または負例が変化する前記データのサンプル数を特定し、
前記サンプル数を基にして、提示するルールの順番を決定する
処理をコンピュータが実行することを特徴とするルール提示方法。
【０１０３】
（付記２）前記複数のルールを特定する処理は、ルールに含まれる１以上の属性の組み合わせに対するラベルについて、正例の割合または負例の割合のうち大きい方の割合をルールの正答率として算出し、前記正答率が閾値以上となる複数のルールを特定することを特徴とする付記１に記載のルール提示方法。
【０１０４】
（付記３）前記データの数を特定する処理は、前記データに含まれる属性の組み合わせに関連するルールに導かれるラベルが正例の場合に、前記データのラベルとして負例を設定し、前記ルールに含まれる正例の割合が閾値未満となる前記データの最小のサンプル数を特定することを特徴とする付記１または２に記載のルール提示方法。
【０１０５】
（付記４）前記データの数を特定する処理は、前記データに含まれる属性の組み合わせに関連するルールに導かれるラベルが負例の場合に、前記データのラベルとして正例を設定し、前記ルールに含まれる負例の割合が閾値未満となる前記データの最小のサンプル数を特定することを特徴とする付記１、２または３に記載のルール提示方法。
【０１０６】
（付記５）前記決定する処理により決定されたルールの順番を基にして前記ルールを提示する処理を更に実行することを特徴とする付記１〜４のいずれか一つに記載のルール提示方法。
【０１０７】
（付記６）属性の組み合わせと正例または負例とを対応付けたルールの集合となる学習データを取得し、
前記学習データを基にして、１以上の属性の組み合わせに対する正例の数および負例の数に応じて、正例または負例のうち一方を導く複数のルールを特定し、
前記学習データに含まれる属性の組み合わせと異なる属性の組み合わせを有し、正例または負例を指定するラベルが不明のデータを取得し、
特定した前記複数のルールのうち、前記データに含まれる属性の組み合わせに関連するルールを選択し、選択したルールが導く正例または負例と異なるラベルを前記データに設定して、選択したルールが導く正例または負例が変化する前記データのサンプル数を特定し、
前記サンプル数を基にして、提示するルールの順番を決定する
処理をコンピュータに実行させることを特徴とするルール提示プログラム。
【０１０８】
（付記７）前記複数のルールを特定する処理は、ルールに含まれる１以上の属性の組み合わせに対するラベルについて、正例の割合または負例の割合のうち大きい方の割合をルールの正答率として算出し、前記正答率が閾値以上となる複数のルールを特定することを特徴とする付記６に記載のルール提示プログラム。
【０１０９】
（付記８）前記データの数を特定する処理は、前記データに含まれる属性の組み合わせに関連するルールに導かれるラベルが正例の場合に、前記データのラベルとして負例を設定し、前記ルールに含まれる正例の割合が閾値未満となる前記データの最小のサンプル数を特定することを特徴とする付記６または７に記載のルール提示プログラム。
【０１１０】
（付記９）前記データの数を特定する処理は、前記データに含まれる属性の組み合わせに関連するルールに導かれるラベルが負例の場合に、前記データのラベルとして正例を設定し、前記ルールに含まれる負例の割合が閾値未満となる前記データの最小のサンプル数を特定することを特徴とする付記６、７または８に記載のルール提示プログラム。
【０１１１】
（付記１０）前記決定する処理により決定されたルールの順番を基にして前記ルールを提示する処理を更に実行することを特徴とする付記６〜９のいずれか一つに記載のルール提示プログラム。
【０１１２】
（付記１１）属性の組み合わせと正例または負例とを対応付けたルールの集合となる学習データを取得し、前記学習データを基にして、１以上の属性の組み合わせに対する正例の数および負例の数に応じて、正例または負例のうち一方を導く複数のルールを特定する特定部と、
前記学習データに含まれる属性の組み合わせと異なる属性の組み合わせを有し、正例または負例を指定するラベルが不明のデータを取得し、
特定した前記複数のルールのうち、前記データに含まれる属性の組み合わせに関連するルールを選択し、選択したルールが導く正例または負例と異なるラベルを前記データに設定して、選択したルールが導く正例または負例が変化する前記データのサンプル数を特定し、前記サンプル数を基にして、提示するルールの順番を決定する決定部と
を有することを特徴とするルール提示装置。
【０１１３】
（付記１２）前記特定部は、ルールに含まれる１以上の属性の組み合わせに対するラベルについて、正例の割合または負例の割合のうち大きい方の割合をルールの正答率として算出し、前記正答率が閾値以上となる複数のルールを特定することを特徴とする付記１１に記載のルール提示装置。
【０１１４】
（付記１３）前記決定部は、前記データに含まれる属性の組み合わせに関連するルールが正例を導く場合に、前記データのラベルとして負例を設定し、前記ルールに含まれる正例の割合が閾値未満となる前記データの最小のサンプル数を特定することを特徴とする付記１１または１２に記載のルール提示装置。
【０１１５】
（付記１４）前記決定部は、前記データに含まれる属性の組み合わせに関連するルールに導かれるラベルが負例の場合に、前記データのラベルとして正例を設定し、前記ルールに含まれる負例の割合が閾値未満となる前記データの最小のサンプル数を特定することを特徴とする付記１１、１２または１３に記載のルール提示装置。
【０１１６】
（付記１５）前記決定部は、決定したルールの順番を基にして前記ルールを提示する処理を更に実行することを特徴とする付記１１〜１４のいずれか一つに記載のルール提示装置。
【符号の説明】
【０１１７】
１１０    通信部
１２０    入力部
１３０    表示部
１４０    記憶部
１４１    学習データ
１４２    指定条件データ
１４３    ルール集合データ
１４４    提示候補集合データ
１５０    制御部
１５１    取得部
１５２    特定部
１５３    決定部
【図１】
2020187384.tif 000003
【図２】
2020187384.tif 000004
【図３】
2020187384.tif 000005
【図４】
2020187384.tif 000006
【図５】
2020187384.tif 000007
【図６】
2020187384.tif 000008
【図７】
2020187384.tif 000009
【図８】
2020187384.tif 000010
【図９】
2020187384.tif 000011
【図１０】
2020187384.tif 000012
【図１１】
2020187384.tif 000013
【図１２】
2020187384.tif 000014
【図１３】
2020187384.tif 000015
【図１４】
2020187384.tif 000016
【図１５】
2020187384.tif 000017
【図１６】
2020187384.tif 000018
【図１７】
2020187384.tif 000019
【図１８】
2020187384.tif 000020
【図１９】
2020187384.tif 000021
【図２０】
2020187384.tif 000022