JPH0895791A - Correction type knowledge learning device - Google Patents

Correction type knowledge learning device

Info

Publication number
JPH0895791A
JPH0895791A JP6232837A JP23283794A JPH0895791A JP H0895791 A JPH0895791 A JP H0895791A JP 6232837 A JP6232837 A JP 6232837A JP 23283794 A JP23283794 A JP 23283794A JP H0895791 A JPH0895791 A JP H0895791A
Authority
JP
Japan
Prior art keywords
case
attribute
class
knowledge
cases
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP6232837A
Other languages
Japanese (ja)
Inventor
Shigeo Kaneda
重郎 金田
Yasuhiro Akiba
泰弘 秋葉
Megumi Ishii
恵 石井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP6232837A priority Critical patent/JPH0895791A/en
Publication of JPH0895791A publication Critical patent/JPH0895791A/en
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PURPOSE: To provide the correction type knowledge learning device which generates enough knowledge to explain an instance set partially including instances that do not match background knowledge on the assumption of the background knowledge. CONSTITUTION: A temporary instance and an actual instance where the background knowledge 3 given conditions for determining the classes of instances in an actual instance set 2 from attribute values in the form of a rule, decision tree, etc., and put together to form a training instance set by an instance converting means 4; and a training instance set is inputted and the same values of respective attributes are gathered to decide an attribute whose decrease in index showing the randomness of the instance sets is minimum as a divided attribute when the instance set is divided, the divided attribute is extracted recursively as a node, and the decision tree is generated by a decision tree generating means 5.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、人間の専門家の問題解
決事例から、その背後に存在する一般的な知識を学習す
る知識学習装置に関し、特に人間が作成した知識と事例
とを総合して、より質の高い知識を獲得するための修正
型知識学習装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a knowledge learning device that learns general knowledge existing behind a problem solving case of a human expert, and in particular, combines knowledge and case created by a human. And a modified knowledge learning device for acquiring higher quality knowledge.

【0002】[0002]

【従来の技術】人間の専門家の問題解決事例を複数収集
し、この事例集合からその背後に存在する知識を抽出す
ることは、エキスパートシステムのための知識を作成す
る有力な手法として活発に研究が進められている。本明
細書では事例として以下のものを考える。即ち、A1
2 ,・・Aj ,・・,An を属性値、Cをその属性値
によって決定されるクラスとして、事例は、 (A1 ,A2 ,・・・・An :C) として表現する。この場合、属性値からクラスを決定す
る未知関数 f(A1 ,A2 ,・・・・An )=C の推定が知識学習装置の責務である。
2. Description of the Related Art Collecting a plurality of problem solving cases of human experts and extracting the knowledge behind them from this set of cases is actively studied as a powerful method for creating knowledge for an expert system. Is being promoted. In this specification, the following is considered as an example. That is, A 1 ,
A 2, ·· A j, ·· , A n an attribute value, as the class determined by the attribute value C, case, (A 1, A 2, ···· A n: C) expressed as To do. In this case, it is the responsibility of the knowledge learning device to estimate an unknown function f (A 1 , A 2 , ... A n ) = C that determines the class from the attribute value.

【0003】知識学習装置の構築手法としては、種々の
ものが提案されているが、最も良く知られているもの
は、 J.Ross.Quinlan によるID3である。ID3は上
記の未知関数fの形式として、デシジョンツリーを生成
する機能を持つ。以下、ID3の簡単な説明を行う。詳
細は、共立出版株式会社、知識獲得と学習シリーズ1、
「知識獲得入門・帰納学習と応用」第5章、を参照され
たい。
Various methods have been proposed for constructing a knowledge learning device, but the most well-known one is ID3 by J. Ross. Quinlan. ID3 has a function of generating a decision tree as a form of the unknown function f. Hereinafter, a brief description of ID3 will be given. For details, see Kyoritsu Publishing Co., Ltd., Knowledge Acquisition and Learning Series 1,
See Chapter 5, "Introduction to Knowledge Acquisition / Inductive Learning and Applications".

【0004】まず、以下の事例集合Sを考える。ここで
は、S中の各事例は3個の属性A0,A1 ,A2 (但
し、属性値は0または1の2値であるとする)、および
クラスC(0または1の2値)から構成されるものとす
る。即ち、事例の形式は、(A0 ,A1 ,A2 :C)で
ある。
First, consider the following case set S. Here, each case in S has three attributes A 0 , A 1 , A 2 (provided that the attribute value is a binary value of 0 or 1), and a class C (binary value of 0 or 1). Shall consist of That is, the format of the case is (A 0 , A 1 , A 2 : C).

【0005】 (0,0,1:1) (1,0,0:0) (1,1,1:1) (1,1,0:1) 今、2番目の属性A1 を選んで、この集合Sを分割して
みる。この場合には、事例は2個のグループに分割され
る。
(0,0,1: 1) (1,0,0: 0) (1,1,1: 1) (1,1,0: 1) Now, select the second attribute A 1 . , Split this set S. In this case, the case is divided into two groups.

【0006】 グループ0(A1 =0) グループ1(A1 =1) (0,0,1:1) (1,1,1:1) (1,0,0:0) (1,1,0:1) 分割は、この場合、3種類の属性で可能であることに注
意されたい。ID3では、この分割の前後のエントロピ
の差(エントロピゲイン)を求める。ここで、エントロ
ピゲインとは 「分割前の事例のエントロピ」−「分割後の事例の期待
エントロピ」 である。「分割後の事例の期待エントロピ」とは、分割
後の各事例のグループのエントロピを、各グループ毎の
発生頻度(当該グループに到達した事例数を分割前の事
例の総数で除したもの)で重み付け合計したものであ
る。具体的には、以下のようにエントロピゲインを計算
する。この分割前の事例集合に対しては、クラス1が3
個、クラス0が1個であるので、エントロピは
Group 0 (A 1 = 0) Group 1 (A 1 = 1) (0,0,1: 1) (1,1,1: 1) (1,0,0: 0) (1,1 , 0: 1) Note that splitting is possible in this case with three types of attributes. In ID3, the difference in entropy before and after this division (entropy gain) is obtained. Here, the entropy gain is "entropy of case before division"-"expected entropy of case after division". "Expected entropy of cases after division" is the entropy of the group of each case after division, which is the frequency of occurrence for each group (the number of cases that reached the group divided by the total number of cases before division) It is a weighted sum. Specifically, the entropy gain is calculated as follows. For this case set before division, class 1 is 3
Since there is one and there is one class 0, the entropy is

【数1】−(1/4)log (1/4)−(3/4)log
(3/4) =0.500+0.311=0.811 となる。但し、対数の底は2である。
[Equation 1]-(1/4) log (1/4)-(3/4) log
(3/4) = 0.500 + 0.311 = 0.811. However, the base of the logarithm is 2.

【0007】一方、分割後のエントロピは、グループ0
(A1 =0)が
On the other hand, the entropy after division is group 0.
(A 1 = 0)

【数2】−(1/2)log (1/2)−(1/2)log
(1/2)=1 グループ1(A1 =1)が
(2)-(1/2) log (1/2)-(1/2) log
(1/2) = 1 Group 1 (A 1 = 1)

【数3】−(2/2)log (2/2)−(0/2)log
(0/2)=0 である。従って、分割後の期待エントロピは、 (2/4)・1+(2/4)・0=0.5 であり、2番目の属性(A1 )を選んで、集合Sを分割
した時のエントロピゲインは、 0.811−0.5=0.311 となる。
[Equation 3]-(2/2) log (2/2)-(0/2) log
(0/2) = 0. Therefore, the expected entropy after division is (2/4) · 1 + (2/4) · 0 = 0.5, and the entropy when the set S is divided by selecting the second attribute (A 1 ). The gain is 0.811−0.5 = 0.331.

【0008】次に、1番目の属性(A0 )を選んで、こ
の集合を分割してみる。 この場合の分割後のエントロピは、グループ0(A0
0)のエントロピが0であるので、
Next, the first attribute (A 0 ) is selected and this set is divided. The entropy after division in this case is group 0 (A 0 =
Since the entropy of 0) is 0,

【数4】(3/4)×(−(1/3)log (1/3)−
(2/3)log (2/3))=0.689 である。また、3番目の属性(A2 )を選んでこの集合
を分割してみると以下のようになる。
(4) (3/4) × (-(1/3) log (1/3)-
(2/3) log (2/3)) = 0.689. Also, when the third attribute (A 2 ) is selected and this set is divided, the result is as follows.

【0009】 グループ0(A2 =0) グループ1(A2 =1) (1,0,0:0) (0,0,1:1) (1,1,0:1) (1,1,1:1) この場合の分割後のエントロピは、グループ1(A2
1)のエントロピが0であるので、
Group 0 (A 2 = 0) Group 1 (A 2 = 1) (1,0,0: 0) (0,0,1: 1) (1,1,0: 1) (1,1 , 1: 1) The entropy after division in this case is group 1 (A 2 =
Since the entropy of 1) is 0,

【数5】(2/4)×(−(1/2)log (1/2)−
(1/2)log (1/2))=0.5 である。従って、この場合には、2番目の属性A1 と3
番目の属性A2 の両方が最大のエントロピゲインを示
す。ここでは、2番目の属性A1 で分割を実行するもの
とする。この属性A1 を分割属性と呼ぶ。また、この分
割属性の値A1 =0,A1 =1をそれぞれ分岐の属性値
と呼ぶ。
(5) (2/4) × (-(1/2) log (1/2)-
(1/2) log (1/2)) = 0.5. Therefore, in this case, the second attributes A 1 and 3
Both of the second attributes A 2 exhibit maximum entropy gain. Here, it is assumed that the division is executed with the second attribute A 1 . This attribute A 1 is called a division attribute. Further, the values A 1 = 0 and A 1 = 1 of the division attribute are called branch attribute values.

【0010】2番目の属性A1 により分割すると、グル
ープ1のクラスは「1」のみであるから、この分岐に流
れて来る事例のクラスは全て「1」であると見なす。更
に、グループ0のクラスに所属する2個の事例 (0,0,1:1) (1,0,0:0) は、明らかに、3番目の属性A2 で分割すると、分割後
の各グループのクラスはユニークになる。従って、3番
目の属性による分割が、最もエントロピゲインが大き
い。
When divided by the second attribute A 1 , the class of group 1 is only "1", so all the classes of cases flowing to this branch are regarded as "1". Furthermore, two cases (0,0,1: 1) (1,0,0: 0) belonging to the class of group 0 are obviously divided by the third attribute A 2 , and The class of the group will be unique. Therefore, the division by the third attribute has the largest entropy gain.

【0011】以上の手順はデシジョンツリー形式で表現
でき、図2のようになる。ID3では、この生成された
デシジョンツリーを、クラス未知の事例に対して判別に
利用する。この結果、クラスの値をfとすれば、f=A
1 +A2 の論理式と等価なデシジョンツリーが得られた
ことになる。
The above procedure can be expressed in a decision tree format, as shown in FIG. In ID3, the generated decision tree is used for discrimination with respect to a case of unknown class. As a result, if the class value is f, then f = A
A decision tree equivalent to the logical expression of 1 + A 2 is obtained.

【0012】以上が、帰納学習アルゴリズムID3の概
要であり、より正確な手順として記述すれば以下のよう
な再帰的な手順になる。
The above is the outline of the induction learning algorithm ID3, and if described as a more accurate procedure, the following recursive procedure is performed.

【0013】(STEP1)事例の属性集合をA、与え
られた事例集合をSとする。 (STEP2)事例集合が空であるか所属するクラスが
単一の場合は、処理を停止する。さもなければ、事例集
合Sに対して、属性集合Aに含まれる各属性に対して、
当該属性で分割を行った場合のエントロピゲインを計算
し、最も大きなエントロピゲインを持つ属性を1個選び
aとする。 (STEP3)属性aを属性集合Aから削除し、これを
新たなAとする。そして、属性aにより、事例集合Sを
グループに分割し、この各グループ毎の事例集合を
0 ,S1 ・・・とする。このS0 ,S1 ・・・の各々
に対して、STEP2〜STEP3を再帰的に実行す
る。
(STEP 1) Let A be the attribute set of a case and S be a given case set. (STEP 2) If the case set is empty or the class to which it belongs is single, the processing is stopped. Otherwise, for the case set S, for each attribute included in the attribute set A,
The entropy gain when the division is performed by the attribute is calculated, and one attribute having the largest entropy gain is selected and designated as a. (STEP 3) The attribute a is deleted from the attribute set A, and this is set as a new A. Then, the case set S is divided into groups according to the attribute a, and the case sets for each group are set as S 0 , S 1 ... STEP 2 to STEP 3 are recursively executed for each of S 0 , S 1 ...

【0014】なお、上記では、分割前後の事例集合の乱
雑性の指標をエントロピにより表現したが、エントロピ
に限定するものではない。何らかの指標で乱雑性を表す
ものであり、その指標が順序(全順序)付け可能なもの
であればよい。例えば、エントロピの対数として10を
底としてもよく、また、単にグループ中のクラス数から
1を減じたものでもよい。但し、この指標に依存して、
作成された知識の性能(未知事例に対する推定能力)が
影響を受ける。ID3のエントロピゲインによる方法
は、簡単で良好な性能を示す指標として認知されてい
る。
In the above description, the index of the randomness of the case set before and after the division is expressed by entropy, but the index is not limited to entropy. Any index may be used to represent randomness, and the index may be ordered (total order). For example, the base of the logarithm of entropy may be 10, or it may be simply the number of classes in the group minus 1. However, depending on this indicator,
The performance of the created knowledge (the ability to estimate unknown cases) is affected. The method based on entropy gain of ID3 is recognized as an index showing simple and good performance.

【0015】図3では、上記の手順を直観的に説明して
いる(この例は、図2とは全く異なる)。図3では、○
(クラス1)と×(クラス0)で表示された事例が、属
性値が張る多次元空間(この例では、2次元)に分布し
ている様子を示す。上記の属性値による分割は、この多
次元空間を一枚の超平面で区切ることである。図3の上
図は、まず、ある超平面で区切った結果を示す。この場
合、右側には、3個の×事例が存在するのみなので、ク
ラスは「0」で一意となった。ここで、エントロピゲイ
ンが最大とは、超平面で切る際に、できるだけ、クラス
の乱雑性が(例え、取り合えずその時点では綺麗にクラ
スが切れなくても)少なくなるように切ることを意味す
る。
FIG. 3 illustrates the above procedure intuitively (this example is completely different from FIG. 2). In Figure 3, ○
A case where the cases displayed as (class 1) and x (class 0) are distributed in a multidimensional space (two dimensions in this example) having attribute values is shown. The division by the above attribute value is to divide this multidimensional space by one hyperplane. The upper diagram of FIG. 3 shows the result of division by a certain hyperplane. In this case, since there are only three × cases on the right side, the class is unique with “0”. Here, the maximum entropy gain means that when cutting with a hyperplane, the class is cut as little as possible (even if the class is not cut cleanly at that point). .

【0016】図3の下の図では、綺麗に切れていなかっ
た左半分の領域について、分割を繰り返している。その
結果、多次元空間は、3個の領域に分割され、クラス
は、完全に各領域で一意になっている。
In the lower diagram of FIG. 3, the division is repeated for the left half region which is not neatly cut. As a result, the multidimensional space is divided into three regions, and the classes are completely unique in each region.

【0017】[0017]

【発明が解決しようとする課題】以上のID3は、優れ
た手法として知られ、エキスパートシステム構築支援ツ
ールへの実装例が報告されている。しかし、現実の応用
の中では、あまり利用されたとの報告が聞かれない。そ
の最大の理由は、現実には、このID3で知識(デシジ
ョンツリー)を生成できる程は、事例が集まらないこと
に起因する。即ち、十分に実用に耐える知識(デシジョ
ンツリー)を作成するには、事例が少なすぎるのであ
る。
The above ID3 is known as an excellent method, and an implementation example in an expert system construction support tool has been reported. However, in the actual application, it is not heard that it was used much. The biggest reason is that in reality, cases are not collected enough to generate knowledge (decision tree) with this ID3. In other words, there are too few cases to create knowledge (decision tree) that is sufficiently practical.

【0018】現実に可能、あるいは生じるのは、数少な
い事例から人間が頭の中で知識を生成することである。
これはナレッジエンジニア(KE)あるいはドメインの
専門家の仕事であった。しかし、人間もまた完全な知識
を生成することはできない。実際に人間が作成した知識
を運用すると、(少数ではあっても)人間の作成した知
識に合致しない事例が発生する。必要なことは、既に存
在する知識を新たな(例外的な)事例に対して、チュー
ンすることである。しかし、このような修正型の知識学
習アルゴリズムはほとんど知られていない。
What is or is actually possible is that humans generate knowledge in their heads from a few cases.
This was the job of a Knowledge Engineer (KE) or domain expert. However, humans cannot generate perfect knowledge either. When human-created knowledge is actually used, there are cases (even a small number) that do not match the human-created knowledge. What is needed is to tune existing knowledge into new (exceptional) cases. However, such a modified knowledge learning algorithm is hardly known.

【0019】ここで、注意しなければならないことは、
「人間が作成した知識+新たに発生した例外的事例」の
みから、「修正された知識」を生成することは、どのよ
うな手法を用いたとしても、その精度に疑問が生じるこ
とである。なぜならば、人間が作成した知識(背景知
識)のどの部分が確実な知識で、どの部分が不確実な知
識であるかが本質的に分からないからである。即ち、統
計解析の用語をかりて説明すれば、事前確率が真の事前
確率ではないときに、その事前確率の「信頼度」のよう
なものがない限り、どこまで事前確率を修正してよいか
が分からないのである。本発明では、この信頼度とし
て、背景知識を生成するもととなった実際の事例(実事
例)を利用する。即ち、実際に観測された事例で分割が
実行できる範囲では実事例を利用し、実事例のみからで
は、それ以上分割できない時に、背景知識を利用する。
Here, it should be noted that
Generating "corrected knowledge" only from "human-created knowledge + newly generated exceptional case" causes a question of accuracy regardless of which method is used. This is because it is essentially impossible to know which part of human-created knowledge (background knowledge) is reliable knowledge and which part is uncertain knowledge. In other words, in terms of statistical analysis, when the prior probability is not the true prior probability, how much can the prior probability be modified unless there is something like "reliability" of the prior probability? I don't know. In the present invention, an actual case (actual case) from which background knowledge is generated is used as this reliability. That is, the actual case is used in the range in which the division can be executed in the actually observed case, and the background knowledge is used when the actual case cannot be further divided.

【0020】本発明は、上記に鑑みてなされたもので、
その目的とするところは、背景知識を前提とし、しかも
一部に背景知識には合致しない事例を含む事例集合を説
明可能な知識を生成する修正型知識学習装置を提供する
ことにある。
The present invention has been made in view of the above,
It is an object of the present invention to provide a modified knowledge learning device that generates knowledge capable of explaining a case set including cases that do not match the background knowledge and that is based on the background knowledge.

【0021】[0021]

【課題を解決するための手段】上記目的を達成するた
め、本発明の修正型知識学習装置は、属性値の組と当該
属性値の組に対応して決まる1つのクラスとから構成さ
れる実事例を複数含む実事例集合と、前記事例のクラス
を属性値から決定するための条件をルール、デシジョン
ツリー等の形式で与えられた背景知識と、前記背景知識
を反映した仮事例と前記実事例とをあわせて訓練事例集
合を形成する事例変換手段と、前記訓練事例集合を入力
として、各属性に対して当該属性の同値同士を集めるこ
とにより事例集合を分割した際に、当該事例集合の乱雑
性を表す指標の減少が最大となる属性を分割属性とし、
当該分割属性をノードとして抽出することを再帰的に行
い、決定木を生成する決定木生成手段とを有することを
要旨とする。
In order to achieve the above object, the modified knowledge learning apparatus of the present invention comprises a set of attribute values and one class determined corresponding to the set of attribute values. A set of actual cases including a plurality of cases, a background knowledge given in the form of a rule, a decision tree, or the like for a condition for determining the class of the case from an attribute value, a tentative case reflecting the background knowledge, and the actual case And a case conversion unit that forms a training case set together with the training case set as an input, and when the case set is divided by collecting the same values of the attribute for each attribute, the case set is messed up. The attribute with the largest decrease in the index indicating sex is the split attribute,
The gist is to have a decision tree generating unit that recursively extracts the division attribute as a node and generates a decision tree.

【0022】[0022]

【作用】本発明の修正型知識学習装置では、実事例のみ
ではなく、背景知識から生成された仮事例を含めて、分
割属性を決定しているため、実事例が多数存在する領域
ではそれに合致した知識が生成され、実事例が少なく、
仮事例のみ存在している領域では、背景知識に合致した
知識が生成される。
In the modified knowledge learning apparatus of the present invention, not only the actual case but also the temporary case generated from the background knowledge is used to determine the division attribute. Generated knowledge, few actual cases,
In a region where only temporary cases exist, knowledge that matches background knowledge is generated.

【0023】[0023]

【実施例】以下、図面を用いて本発明の実施例を説明す
る。
Embodiments of the present invention will be described below with reference to the drawings.

【0024】図1は、本発明の一実施例に係わる修正型
知識学習装置の構成を示すブロック図である。同図に示
す修正型知識学習装置1は、属性値の組と当該属性値の
組に対応して決まる1つのクラスとから構成される実事
例を複数個含む実事例集合2と、前記事例のクラスを属
性値から決定するための条件を、ルール、デシジョンツ
リー等の形式で与えられた背景知識3と、前記背景知識
を反映した仮事例と、前記実事例とをあわせて訓練事例
集合を形成する事例変換手段4と、前記訓練事例集合を
入力として、各属性に対して、当該属性の同値同士を集
めることにより事例集合を分割した際に、当該事例集合
の乱雑性を表す指標の減少が最大となる属性を分割属性
とし、当該分割属性をノードとして抽出することを再帰
的に行い、決定木を生成する決定木生成手段5とから構
成される。
FIG. 1 is a block diagram showing the configuration of a modified knowledge learning device according to an embodiment of the present invention. The modified-type knowledge learning device 1 shown in FIG. 1 includes an actual case set 2 including a plurality of actual cases composed of a set of attribute values and one class determined corresponding to the set of attribute values, and A training case set is formed by combining background knowledge 3 given as conditions for determining a class from attribute values in the form of rules, decision trees, provisional cases reflecting the background knowledge, and the actual cases. When the case conversion unit 4 and the training case set are input, and when the case set is divided by collecting the same values of the attribute for each attribute, the index indicating the disorder of the case set decreases. The maximum attribute is defined as a split attribute, and the split attribute is extracted as a node recursively, and the decision tree generating means 5 is configured to generate a decision tree.

【0025】実事例集合2は、現実世界において観測さ
れた事例(以下、これを実事例と呼ぶ)である。事例
は、 (A1 ,A2 ,・・・・An :C) の形式で表現されるが、具体的にはこれをビット列で表
現してもよく、リスト構造で表現してもよい。それは、
当業者の選択の範囲にあるが、少なくとも、属性値とク
ラスを情報として有している必要がある。例えば、実事
例集合は以下のようなものである。但し、事例は
(A1 ,A2 ,A3 :C)の形式を持つ。
The real case set 2 is a case observed in the real world (hereinafter, referred to as a real case). The case is expressed in the form of (A 1 , A 2 , ... A n : C), but specifically, it may be expressed by a bit string or a list structure. that is,
Although it is within the range of selection by those skilled in the art, it is necessary to have at least the attribute value and class as information. For example, the actual case set is as follows. However, the case has a format of (A 1 , A 2 , A 3 : C).

【0026】 (1,0,0:0) (1,0,1:0) (0,1,0:1) これは、以下の事例集合のサブセットであり、上記の3
個のみが観測されているものとする。
(1,0,0: 0) (1,0,1: 0) (0,1,0: 1) This is a subset of the following case set and
It is assumed that only individuals are observed.

【0027】 (0,0,0:1) (0,0,1:1) (0,1,0:1) (0,1,1:1) (1,0,0:0) (1,0,1:0) (1,1,0:1) (1,1,1:1) この8個の事例は、 f=(not A0 )or A1 なるターゲット概念の事例としてある。但し、not は否
定、 or は論理和を表すとする。
(0,0,0: 1) (0,0,1: 1) (0,1,0: 1) (0,1,1: 1) (1,0,0: 0) (1 , 0, 1: 0) (1,1,0: 1) (1,1,1: 1) These eight cases are examples of the target concept of f = (not A 0 ) or A 1 . However, not represents negation and or represents OR.

【0028】背景知識3は、前記実事例集合2に所属す
る各事例のクラスを属性値から決定するためのルール、
デシジョンツリー等である。上記のf=(not A0 )or
1は、論理式で表現された知識と考えることができ
る。背景知識はどんな形態でもよいが、重要なことは、
属性値の部分集合が与えられた時に、当該背景知識によ
り、そのクラスが計算可能であることである。ここで、
計算可能とは、クラスが定まらないことも許容する。即
ち、部分集合以外に、他の属性値が定められない場合に
クラスを特定できない場合には、クラス未定として陽に
表現されているものとする。但し、全ての属性値を定め
ても、属性値からでは複数のクラスが生成されるような
ことは許されない。知識の表現方法、並びに、そのクラ
スの計算方法については、既に知識処理の分野で種々の
提案があり、従来技術で表現できるため、本明細書では
これ以上の説明は行わない。
The background knowledge 3 is a rule for determining the class of each case belonging to the actual case set 2 from the attribute value,
For example, a decision tree. F = (not A 0 ) or
A 1 can be considered as knowledge expressed by a logical expression. The background knowledge can be in any form, but the important thing is
It is that the class can be calculated by the background knowledge when a subset of attribute values is given. here,
Computable also allows the class to be undefined. That is, if the class cannot be specified when other attribute values other than the subset are not determined, it is assumed that the class is undetermined and is explicitly expressed. However, even if all the attribute values are defined, it is not allowed to generate a plurality of classes from the attribute values. There are already various proposals in the field of knowledge processing regarding the method of expressing knowledge and the method of calculating the class thereof, and since they can be expressed by conventional techniques, further description will not be given in this specification.

【0029】事例変換手段4は、上記背景知識に相当す
る事例(以下、これを「仮事例」と呼ぶこととする)
と、上記実事例とをあわせて訓練事例集合を形成する機
能を持つ。本発明の特徴を構成する構成要素の1つであ
る。以下、詳細に説明する。そもそも、仮事例は、後述
の決定木生成手段5が事例に基づいてデシジョンツリー
を生成するため、背景知識を事例の形式で持ち込むため
に仮想的に生成された事例である。具体的には以下の形
式を持つ。
The case conversion means 4 corresponds to the above background knowledge (hereinafter referred to as "provisional case").
And the above-mentioned actual case are combined to form a training case set. It is one of the constituent elements constituting the feature of the present invention. The details will be described below. In the first place, the tentative case is a case virtually generated in order to bring in background knowledge in the form of a case because the decision tree generating means 5 described later generates a decision tree based on the case. Specifically, it has the following format.

【0030】 (*,*,*,・・・・・:C0 ) (*,*,*,・・・・・:C1 ) ・・・・ (*,*,*,・・・・・:Cn-1 ) ここで、「*」は当該属性の値が決まっていないことを
示す。C0 ,C1 ,・・・,Cn-1 は、クラスを列挙し
たものである。上記は、全ての属性値が決定されていな
い段階では、クラスが決定されていないことを意味す
る。事例変換手段4は、実事例からなる実事例集合2に
含まれる事例と、この仮事例を用いて、学習のための訓
練事例集合を生成する。上記の具体例に対しては、仮事
例は (*,*,*:0) (*,*,*:1) となる。従って、訓練事例集合は、 実(1,0,0:0) 実(1,0,1:0) 実(0,1,0:1) 仮(*,*,*:0) 仮(*,*,*:1) である。事例の前の「実」「仮」は、それぞれ、実事例
と仮事例の区別を表す。
(*, *, *, ...: C 0 ) (*, *, *, ...: C 1 ) ... (*, *, *, ... *: Cn -1 ) Here, "*" shows that the value of the said attribute is not decided. C 0 , C 1 , ..., C n-1 are enumerations of classes. The above means that the class is not determined at the stage when all the attribute values are not determined. The case conversion unit 4 generates a training case set for learning by using the cases included in the real case set 2 composed of the real cases and the temporary cases. For the above specific example, the provisional case is (*, *, *: 0) (*, *, *: 1). Therefore, the training set is real (1,0,0: 0) real (1,0,1: 0) real (0,1,0: 1) tentative (*, *, *: 0) tentative (* , *, *: 1). “Actual” and “Provisional” before the case represent the distinction between the actual case and the temporary case, respectively.

【0031】決定木生成手段5は、上記訓練事例集合を
入力として、各属性に対して、当該属性により事例集合
を分割した際に事例集合の乱雑性を表す指標の減少が最
大となる属性をノードとして、決定木を再帰的に生成す
る機能を有する。但し、仮事例と実事例の扱いについて
は、若干の注意が必要である。即ち、仮事例は、本来、
複数の事例を代表するものである。従って、実事例と同
一の重みをもって扱うことには問題がある。
The decision tree generating means 5 receives the above-mentioned training case set as an input, and for each attribute, when the case set is divided by the attribute, the attribute showing the largest decrease in the index indicating the disorder of the case set is set. As a node, it has a function of recursively generating a decision tree. However, some care must be taken regarding the handling of provisional cases and actual cases. That is, the provisional case is originally
It is representative of multiple cases. Therefore, there is a problem in handling with the same weight as the actual case.

【0032】そこで、本発明では、仮事例と実事例にそ
れぞれ予め与えられた重みを考え、この重み分の個数の
事例が、あたかもそこに存在するが如く扱うことによ
り、デシジョンツリーの生成を行う。その最も簡単な例
は、実事例に極端に大きな重みを与えた場合である。こ
の場合には、その入力となる事例中に実事例が存在する
限りにおいて、実事例に従って分割属性を決定し、実事
例が無くなった場合には、仮事例に基づいて分割属性を
決定することとなる。以下、第1の実施例として、この
実事例優先の場合について、詳細に説明する。
Therefore, in the present invention, the decision tree is generated by considering the weights given in advance to the temporary case and the actual case, and treating as many cases as the weights as if they exist there. . The simplest case is when the actual case is given an extremely large weight. In this case, as long as there is a real case in the input case, the split attribute is determined according to the real case, and when the real case disappears, the split attribute is determined based on the temporary case. Become. Hereinafter, as a first embodiment, the case of prioritizing the actual case will be described in detail.

【0033】〔決定木生成手段5の実施例1〕実事例優
先戦略を用いた場合の決定木生成手段5は、以下のステ
ップで動作する。
[First Embodiment of Decision Tree Generating Unit 5] The decision tree generating unit 5 using the real case priority strategy operates in the following steps.

【0034】(STEP1)デシジョンツリーのノード
を生成するために、当該ノードの分割の際に与えられて
いる事例の属性集合をA、事例集合をSreal,Sart
する。但し、Srealは実事例の集合、Sart は仮事例の
集合とする。 (STEP2)事例集合Sreal,Sart に対して、後述
の停止条件を満足していれば、処理を停止する。さもな
ければ、事例集合Srealに対して、属性集合Aに含まれ
る各属性に対して、当該属性で分割を行った場合のエン
トロピゲインを計算し、最も大きなエントロピゲインを
持つ属性を1個選び、これをaとする。但し、事例集合
realが空の場合には、事例集合をSart について、属
性集合Aに含まれる各属性に対して、当該属性で分割を
行った場合のエントロピゲインを計算し、最も大きなエ
ントロピゲインを持つ属性を1個選びaとする。ここ
で、エントロピゲインを計算するためには、仮事例の所
属クラスを分割後の各グループに対して実行する必要が
あるが、その詳細は後述する。 (STEP3)属性aを属性集合Aから削除し、これを
新たなAとする。そして、属性aにより、事例集合S
real,Sart をグループに分割し、この各グループ毎の
事例集合をS0 ,S1 ・・・とする。この際、事例集合
art に対しては、当該属性aの「*」を、その分岐の
属性値に書き替える。 (STEP4)上記のS0 ,S1 ・・・の各々に対し
て、STEP2〜STEP3を再帰的に実行する。但
し、実事例のクラスが一意である場合には、それに合致
しない仮事例は削除して集合を生成する。
(STEP 1) In order to generate a node of the decision tree, the attribute set of the case given when the node is divided is A, and the case set is S real and S art . However, S real is a set of actual cases, and S art is a set of temporary cases. (STEP 2) If the stop conditions described later are satisfied for the case sets S real and S art , the processing is stopped. Otherwise, for the case set S real, for each attribute included in the attribute set A, calculate the entropy gain when the attribute is divided, and select the one with the largest entropy gain. , And let this be a. However, when the case set S real is empty, entropy gain is calculated for each attribute included in the attribute set A for the case set S art , and the entropy gain is calculated to be the largest entropy. One attribute having a gain is selected and designated as a. Here, in order to calculate the entropy gain, it is necessary to execute the affiliation class of the temporary case for each group after division, which will be described later in detail. (STEP 3) The attribute a is deleted from the attribute set A, and this is set as a new A. Then, with the attribute a, the case set S
Real and S art are divided into groups, and the set of cases for each group is S 0 , S 1 . At this time, for the case set S art , "*" of the attribute a is rewritten to the attribute value of the branch. (STEP 4) STEP 2 to STEP 3 are recursively executed for each of the above S 0 , S 1 ... However, when the class of the actual case is unique, the temporary cases that do not match the class are deleted and a set is generated.

【0035】上記の処理の停止は、以下の条件による。 (1)事例集合Sreal,Sart が何れも空の時。 (2)事例集合Srealのクラスが単一で、Sart が空の
時。この場合、当該分岐のクラスは事例集合Srealのク
ラスとする。 (3)事例集合をSreal,Sart のクラスが各々単一に
決定されて、クラスが同一の時。この場合、当該分岐の
クラスは事例集合Srealのクラスとする。 (4)事例集合Sreal,Sart のクラスが各々単一に決
定されて、クラスが矛盾する時。この場合、当該分岐の
クラスは事例集合Srealのクラスとする。
The above processing is stopped under the following conditions. (1) When both the case sets S real and S art are empty. (2) When the case set S real has a single class and S art is empty. In this case, the class of the branch is the class of the case set S real . (3) When the classes of S real and S art are determined to be single and the classes are the same. In this case, the class of the branch is the class of the case set S real . (4) When the classes of the case sets S real and S art are individually determined and the classes are inconsistent. In this case, the class of the branch is the class of the case set S real .

【0036】以上の条件(1),(2)は、従来技術の
ID3と同一の条件である。条件(3)は、実事例も仮
事例も同一のクラスの場合には、停止することを意味し
ている。条件(4)は、実事例も仮事例も単一クラスで
あるが、これが矛盾する場合には、実事例のクラスを優
先することを意味する。この条件から、実事例が空(ま
たは、実事例の持つクラスが一意に収束した場合)とな
っても、仮事例のクラスが確定していない間は、分岐処
理が続行される。
The above conditions (1) and (2) are the same as those of ID3 of the prior art. The condition (3) means to stop when the actual case and the temporary case are in the same class. The condition (4) means that both the actual case and the temporary case are of a single class, but if they are inconsistent, the class of the actual case is prioritized. From this condition, even if the actual case becomes empty (or the class of the actual case converges uniquely), the branch processing is continued while the class of the temporary case is not fixed.

【0037】仮事例の所属クラスを分割後の各グループ
に対して実行するためには、基本的には、仮事例の
「*」の属性値の中で、分岐に対応して、分岐の属性値
に当該属性の値を固定した事例を生成すれば、よい。そ
して、この生成された仮事例は、背景知識を照らしあわ
せ、そのクラスを求めることができるか否かを調べる必
要がある。もちろん、全ての属性値が分かっているわけ
ではないので、クラスが求まるとは限らない。しかし、
少なくとも、これ以上未知の属性値が判明しても、クラ
スがそのクラスとはならない仮事例は消去されるべきで
ある。それまでに「*」の代わりに代入された属性値の
みからでは、クラスが唯一に決まらない場合、少なくと
も、そのクラスが生じる可能性のある間は、当該仮事例
を残す。
In order to execute the class to which the provisional case belongs to each group after division, basically, in the attribute value of "*" of the provisional case, the attribute of the branch corresponding to the branch. It suffices to generate a case in which the value of the attribute is fixed to the value. Then, it is necessary to check whether or not the class can be obtained by checking the background knowledge in the generated provisional case. Of course, not all attribute values are known, so the class is not always available. But,
At a minimum, provisional cases in which a class does not fall into the class even if an unknown unknown attribute value is found should be deleted. If the class cannot be uniquely determined only by the attribute value that has been substituted for “*”, the provisional case is left at least as long as the class may occur.

【0038】クラスの計算方法は、背景知識の表現方法
に応じて、種々考えられる。例えば、ルールインタプリ
タ、デシジョンツリーインタプリタ、論理関数値計算プ
ログラムを用いることができる。これらの知識表現手
法、インタプリタの実現方法等は、当業者であれば、容
易に推定できると思われる。
Various class calculation methods can be considered according to the background knowledge expression method. For example, a rule interpreter, a decision tree interpreter, and a logic function value calculation program can be used. Those skilled in the art can easily estimate these knowledge representation methods and interpreter implementation methods.

【0039】また、実事例によるエントロピゲイン計算
で、最大のエントロピゲインを示す属性が複数個存在す
る場合には、仮事例のエントロピゲインを調べ、仮事例
のエントロピゲインが最大となる属性を選択することも
1つの方法と思われる。
In addition, in the entropy gain calculation based on the actual case, when there are a plurality of attributes showing the maximum entropy gain, the entropy gain of the tentative case is examined, and the attribute that maximizes the entropy gain of the tentative case is selected. That seems to be one method.

【0040】 具体的には、仮事例 仮(*,*,*:0) 仮(*,*,*:1) に対して、最初の属性で分岐したとすると、まず、以下
のようにコピーを取る。
More specifically, if a temporary case tentative (*, *, *: 0) tentative (*, *, *: 1) is branched with the first attribute, first copy as follows. I take the.

【0041】 グループ0(A0 =0) 仮(0,*,*:0) 仮(0,*,*:1) グループ1(A0 =1) 仮(1,*,*:0) 仮(1,*,*:1) 但し、ここで、背景知識が、例えばf=not A0 であっ
たとする。そうすると、グループ0,1ともに、各々1
個の事例は、背景知識から見て不合理である。従って、
分岐後のグループは、以下のようになる。
Group 0 (A 0 = 0) Temporary (0, *, *: 0) Temporary (0, *, *: 1) Group 1 (A 0 = 1) Temporary (1, *, *: 0) Temporary (1, *, *: 1) However, here, it is assumed that the background knowledge is, for example, f = not A 0 . Then, both groups 0 and 1 are 1
Each case is absurd from the background knowledge. Therefore,
The group after branching is as follows.

【0042】 グループ0(A0 =0) 仮(0,*,*:1) グループ1(A0 =1) 仮(1,*,*:0) 何れも、事例のクラスは単一であるので、少なくとも仮
事例についての分岐処理はここで停止する。しかし、背
景知識が、f=A1 であると、A1 の値が未定なので、
クラスを決定できないため、「0」「1」の双方の可能
性が残るため、分岐後のグループ分割は以下のようにな
る。
Group 0 (A 0 = 0) Temporary (0, *, *: 1) Group 1 (A 0 = 1) Temporary (1, *, *: 0) In both cases, there is only one case class. Therefore, the branching process for at least the temporary case is stopped here. However, if the background knowledge is f = A 1 , the value of A 1 is undecided.
Since the class cannot be determined, the possibilities of both “0” and “1” remain, so the group division after branching is as follows.

【0043】 グループ0(A0 =0) 仮(0,*,*:0) 仮(0,*,*:1) グループ1(A0 =1) 仮(1,*,*:0) 仮(1,*,*:1) 以上で、本発明の実施例の説明を終了する。Group 0 (A 0 = 0) Temporary (0, *, *: 0) Temporary (0, *, *: 1) Group 1 (A 0 = 1) Temporary (1, *, *: 0) Temporary (1, *, *: 1) Above, the description of the embodiment of the present invention is completed.

【0044】以下、本発明の効果を見るためには、若干
の処理例を示す。まず、最初に、 実(1,0,0:0) 実(1,0,1:0) 実(0,1,0:1) なる事例が与えられたとする。属性はA0 ,A1 ,A2
であり、背景知識としてf=A1 が人間により推定され
たとする。しかし、この人間の背景知識は完全なもので
はない。実際には、f=(not A0 )or A1 が正しい背
景知識であるとする。但し、上記の3実事例は、この正
しくない背景知識でも説明しうるので、とりあえず矛盾
はないことに注意されたい。
In order to see the effect of the present invention, some processing examples will be shown below. First, it is assumed that a case of real (1,0,0: 0) real (1,0,1: 0) real (0,1,0: 1) is given. The attributes are A 0 , A 1 , A 2
And it is assumed that f = A 1 is estimated by a person as background knowledge. However, this human background is not perfect. In reality, f = (not A 0 ) or A 1 is correct background knowledge. However, it should be noted that the above three actual cases can be explained by this incorrect background knowledge, so that there is no contradiction for the time being.

【0045】次に、新たな事例、 実(0,0,1:1) が入力されたとする。これは、背景知識f=A1 と矛盾
する。そこで、本発明の知識学習システムの訓練事例と
して、以下を作成する。
Next, it is assumed that a new case, real (0, 0, 1: 1), is input. This contradicts the background knowledge f = A 1 . Therefore, the following is created as a training example of the knowledge learning system of the present invention.

【0046】 実(1,0,0:0) 実(1,0,1:0) 実(0,1,0:1) 実(0,0,1:1) 仮(*,*,*:0) 仮(*,*,*:1) これを本発明の知識学習システムで処理すると、エント
ロピゲイン計算により、(実事例のみがまず調べられ)
属性A0 がエントロピゲインが最大であるので、以下の
分割を行う。
Real (1,0,0: 0) Real (1,0,1: 0) Real (0,1,0: 1) Real (0,0,1: 1) Temporary (*, *, * : 0) Tentative (*, *, *: 1) When this is processed by the knowledge learning system of the present invention, by entropy gain calculation (only the actual case is examined first).
Since the attribute A 0 has the maximum entropy gain, the following division is performed.

【0047】 グループ0(A0 =0) 実(0,1,0:1) 実(0,0,1:1) 仮(0,*,*:0) 仮(0,*,*:1) グループ1(A0 =1) 実(1,0,0:0) 実(1,0,1:0) 仮(1,*,*:0) 仮(1,*,*:1) これで、実事例のクラスはユニークとなった。仮事例に
ついては、背景知識f=A1 からクラスを決めることは
できない。しかし、実事例のクラスが決定しているの
で、それと矛盾するクラスを持つ仮事例は刈り込む必要
がある(この場合は、クラスが2値なので、背景知識か
らは仮事例のクラスを決定できないにも係わらず、仮事
例のクラスがユニークに決定されるが、むしろ、この現
象は例外的現象である)。従って、各グループの事例
は、以下のようになる。
Group 0 (A 0 = 0) Real (0,1,0: 1) Real (0,0,1: 1) Temporary (0, *, *: 0) Temporary (0, *, *: 1 ) Group 1 (A 0 = 1) Real (1,0,0: 0) Real (1,0,1: 0) Temporary (1, *, *: 0) Temporary (1, *, *: 1) So, the actual case class became unique. For the tentative case, the class cannot be determined from the background knowledge f = A 1 . However, since the class of the actual case is determined, it is necessary to trim the temporary case having a class that conflicts with it (in this case, since the class is binary, the class of the temporary case cannot be determined from the background knowledge). Regardless, the class of provisional cases is uniquely determined, but rather this phenomenon is an exceptional phenomenon). Therefore, the case of each group is as follows.

【0048】 グループ0(A0 =0) 実(0,1,0:1) 実(0,0,1:1) 仮(0,*,*:1) グループ1(A0 =1) 実(1,0,0:0) 実(1,0,1:0) 仮(1,*,*:0) 各グループの実事例も仮事例もクラスが単一なので、こ
の段階で、処理は停止する。実際に生成された概念は、
f=not A0 である。
Group 0 (A 0 = 0) Real (0,1,0: 1) Real (0,0,1: 1) Temporary (0, *, *: 1) Group 1 (A 0 = 1) Real (1,0,0: 0) Real (1,0,1: 0) Temporary (1, *, *: 0) Since each class has a single real case and a single temporary case, the process is performed at this stage. Stop. The concept actually generated is
f = not A 0 .

【0049】 では、別の例として事例 実(0,0,1:1) 実(0,1,1:1) 実(1,0,0:0) に対して、背景知識として、f=A2 が宣言されている
とする(この背景知識は、全くの間違いであるが、事例
から学習すると、例えID3を用いても、こうなってし
まう)。
Then, as another example, for the case actual (0,0,1: 1) actual (0,1,1: 1) actual (1,0,0: 0), as background knowledge, f = It is assumed that A 2 is declared (this background knowledge is completely wrong, but if we learn from the case, even if ID3 is used, it will be like this).

【0050】ここに、事例 実(1,1,0:1) が入力されたとする。これは、背景知識とは合致しな
い。
It is assumed that the actual case (1,1,0: 1) is input here. This is inconsistent with background knowledge.

【0051】訓練事例集合 実(0,0,1:1) 実(0,1,1:1) 実(1,0,0:0) 実(1,1,0:1) 仮(*,*,*:0) 仮(*,*,*:1) に対してエントロピゲインを計算する。この場合には、
エントロピゲインは、実事例では、どれでやっても同一
である。しかし、A2 で分割した場合には、仮事例の方
が、綺麗にクラス分割されるので、分割属性A2 とな
る。A2 =1のグループについては実事例のクラスと仮
事例のクラスが同一となるので、処理は停止する。しか
し、A2 =0のグループ 実(1,0,0:0) 実(1,1,0:1) 仮(*,*,0:0) については、実事例のクラスが一定ではないので、更に
分割を続行することとなり、エントロピゲインの観点か
ら、A1 を選択して更に分割を続行する。これにより、
最終的に以下の論理式と等価なツリーを得る。
Training Case Set Real (0,0,1: 1) Real (0,1,1: 1) Real (1,0,0: 0) Real (1,1,0: 1) Tentative (*, *, *: 0) Calculate the entropy gain for the temporary (*, *, *: 1). In this case,
The entropy gain is the same in all cases in practice. However, in the case of division by A 2 , the provisional case is divided into classes neatly, and thus has the division attribute A 2 . For the group of A 2 = 1, the class of the actual case and the class of the temporary case are the same, so the processing is stopped. However, for A 2 = 0 group real (1,0,0: 0) real (1,1,0: 1) tentative (*, *, 0: 0), the actual case class is not constant. , Further division is continued, and from the viewpoint of entropy gain, A 1 is selected and further division is continued. This allows
Finally, a tree equivalent to the following logical expression is obtained.

【0052】f=A1 +A2 これはターゲット概念とは一致しない。しかし、人間の
与えた、f=A2 の知識が保存されていることに注意さ
れたい。このように、本発明では、背景知識をできるだ
け残した形で学習を行うことができる。
F = A 1 + A 2 This is not consistent with the target concept. Note, however, that the human-provided knowledge of f = A 2 is preserved. As described above, according to the present invention, learning can be performed while leaving background knowledge as much as possible.

【0053】また、ID3の計算量は、事例の個数の1
次オーダであり、高速なことで知られるが、本発明の手
法も、このID3の特徴を何ら阻害しないため、少ない
処理量で学習を実行できる。
The calculation amount of ID3 is 1 of the number of cases.
This is the next order and is known to be high-speed, but the method of the present invention does not hinder the characteristics of this ID3 at all, so learning can be executed with a small processing amount.

【0054】〔決定木生成手段5の実施例2〕本発明に
おいて、デシジョンツリー生成の最初に投入した仮事例
は、属性値として「*」を利用しているので、ある意味
では、背景知識に入力しうる全事例(即ち、多次元空間
上に分布しうる全ての事例)に相当するものである。従
って、分割判断の各事例集合に含まれる仮事例は、その
段階までに区切られていた多次元空間上に分布しうる点
に相当する。このため、以下の疑問が生じる。
[Embodiment 2 of Decision Tree Generating Unit 5] In the present invention, the provisional case introduced at the beginning of the decision tree generation uses "*" as the attribute value. This corresponds to all cases that can be input (that is, all cases that can be distributed in a multidimensional space). Therefore, the tentative cases included in each case set of the division determination correspond to points that can be distributed in the multidimensional space divided up to that stage. Therefore, the following questions arise.

【0055】(1)実事例が1個に対して、仮事例は1
個でも、仮事例は実際には多数の事例を表現するもので
ある。従って、背景知識から、仮事例のクラスが1個に
定まり、かつ、そのクラスが実事例と反するからと言っ
て、単純に仮事例を消去して良いのか? (2)実事例にもノイズがあり、常に真とは限らない。
従って、実事例中の1個のみが他クラスを指定し、残り
の実事例が仮事例と同一のクラスを主張した場合、この
段階で、仮事例のクラスを当該実事例集合のクラスとし
ても良いのではないか? これらの場合に対処するためには、実事例のみでは決着
が付かない場合のみ仮事例のエントロピゲインを計算す
るのではなく、実事例、仮事例双方を含めたエントロピ
ゲインを計算する方が有利な場合があると考えられる。
(1) For one actual case, one tentative case
Even with an individual, a provisional case actually represents a large number of cases. Therefore, based on background knowledge, is it possible to simply delete a provisional case just because the class of the provisional case is set to one and the class conflicts with the actual case? (2) Actual cases also have noise and are not always true.
Therefore, if only one of the actual cases specifies another class and the remaining actual cases claim the same class as the temporary case, the class of the temporary case may be the class of the actual case set at this stage. Isn't it? In order to deal with these cases, it is advantageous to calculate the entropy gain including both the real case and the provisional case, rather than calculating the entropy gain of the provisional case only when the actual case alone cannot make a decision. It is thought that there are cases.

【0056】従って、実事例と仮事例の一方、または双
方に重みを付け、あたかもその重みの個数分の事例が存
在するかの如くエントロピゲインを計算することが考え
られる。この場合、種々の重みの付け方が考えられる
が、代表的な考え方として、以下の2種が考えられる。
Therefore, it is conceivable to weight one or both of the real case and the tentative case, and calculate the entropy gain as if there were as many cases as the number of weights. In this case, various weighting methods can be considered, but the following two types are considered as typical ideas.

【0057】(a)仮事例には、予め固定した数値を与
えておく。これは、全仮事例に対して一定でもよく、ま
た予めユーザに、仮事例毎の確信度として、この重みを
陽に指定させてもよい。 (b)属性選択が行われ、事例集合の分割が行われる毎
に、仮事例の重みを分割してゆく方法が考えられる。例
えば、「*」で属性値が与えられている属性が分割属性
となったとする。この場合には、仮事例の重みを分岐数
で除する方法がある。例えば、分岐が3本であるなら、
各枝の重みは3分の1とする。
(A) A fixed numerical value is given in advance to the tentative case. This may be constant for all temporary cases, or the user may be allowed to explicitly specify this weight in advance as the certainty factor for each temporary case. (B) A method is conceivable in which the weight of the tentative case is divided every time the attribute is selected and the case set is divided. For example, it is assumed that an attribute whose attribute value is given by "*" is a split attribute. In this case, there is a method of dividing the weight of the temporary case by the number of branches. For example, if there are 3 branches,
The weight of each branch is one-third.

【0058】以下、上記(a)の仮事例と実事例それぞ
れに重みを与える場合の決定木生成手段5は、以下のス
テップで動作する。決定木生成手段5以外の構成は、前
述の実施例と差異はない。
Hereinafter, the decision tree generating means 5 in the case of weighting each of the provisional case and the actual case of the above (a) operates in the following steps. The configuration other than the decision tree generating means 5 is not different from that of the above-described embodiment.

【0059】(STEP1)デシジョンツリーのノード
を生成するために、当該ノードの分割の際に与えられて
いる事例の属性集合をA、事例集合をSreal,Sart
する。但し、Srealは実事例の集合、Sart は仮事例の
集合であり、これら2種類の事例集合の和集合を事例集
合Sとする。この際仮事例と実事例には、それぞれ予め
与えられた重みを付与する。 (STEP2)事例集合Sに対して、後述の停止条件を
満足していれば、処理を停止。この場合、事例集合Sに
よって定められるクラスは、事例集合Sの持つクラスの
多数決とする。処理が停止しない場合には、事例集合S
に対して、属性集合Aに含まれる各属性に対して、当該
属性で分割を行った場合のエントロピゲインを計算し、
最も大きなエントロピゲインを持つ属性を1個選び、こ
れをaとする。 (STEP3)属性aを属性集合Aから削除し、これを
新たなAとする。そして、属性aにより、事例集合Sを
グループに分割し、この各グループ毎の事例集合を
0 ,S1 ,・・・とする。この際、事例集合Sart
対しては、当該属性aの「*」を、その分岐の属性値に
書き替える。 (STEP4)上記のS0 ,S1 ,・・・の各々に対し
て、STEP2〜STEP3を再帰的に実行する。
(STEP 1) In order to generate a node of the decision tree, the attribute set of the case given when the node is divided is A, and the case set is S real and S art . However, S real is a set of real cases, S art is a set of provisional cases, and the union of these two types of case sets is a case set S. At this time, a weight given in advance is given to each of the provisional case and the actual case. (STEP 2) If the stop condition described later is satisfied for the case set S, the processing is stopped. In this case, the class defined by the case set S is a majority vote of the classes of the case set S. If processing does not stop, case set S
On the other hand, for each attribute included in the attribute set A, the entropy gain in the case where the attribute is divided is calculated,
One attribute having the largest entropy gain is selected and designated as a. (STEP 3) The attribute a is deleted from the attribute set A, and this is set as a new A. Then, the case set S is divided into groups according to the attribute a, and the case sets for each group are set as S 0 , S 1 ,. At this time, for the case set S art , "*" of the attribute a is rewritten to the attribute value of the branch. (STEP 4) STEP 2 to STEP 3 are recursively executed for each of the above S 0 , S 1 , ...

【0060】上記STEP2の停止条件は、種々開発さ
れており、当業者において周知のものが適用できる。例
えば、以下のものがある。 (1)事例集合Sが何れも空の時。 (2)事例集合Sのクラスが単一の時。 この場合、当該分岐のクラスは事例集合Srealのクラス
とする。 (3)事例集合Sに含まれる事例数(但し、重みが付与
されている場合には、当該重み分の事例が存在するもの
とする。)が予め定めた限度を下回った場合。 (4)事例集合Sをどの属性で分割しても、予め与えた
エントロピゲインの下限を下回るゲインしか得られず、
分岐の意義に疑問がある場合。
Various stopping conditions for STEP 2 have been developed, and those known to those skilled in the art can be applied. For example: (1) When the case set S is empty. (2) When the class of the case set S is single. In this case, the class of the branch is the class of the case set S real . (3) When the number of cases included in the case set S (however, if a weight is given, it is assumed that there are cases for the weight) below a predetermined limit. (4) No matter which attribute the case set S is divided into, only a gain lower than the lower limit of the entropy gain given in advance can be obtained,
If you are in doubt about the significance of branching.

【0061】〔決定木生成手段5の実施例3〕以上、仮
事例に一定の重みを与えた場合の決定木生成手段5の構
成を示した。次に、分岐毎に仮事例の重みを減ずる前述
の(b)の決定木生成手段5の構成を述べる。この場合
は、前述の(a)の場合とほとんど同一であり、唯一異
なるのは、分岐を行った場合の重み修正のみである。具
体的には、以下のステップで動作する。決定木生成手段
5以外の構成は、前述の実施例と差異はない。
[Third Embodiment of Decision Tree Generating Unit 5] The configuration of the decision tree generating unit 5 in the case where a given weight is given to a temporary case has been described above. Next, the configuration of the decision tree generating means 5 of (b) described above for reducing the weight of the temporary case for each branch will be described. In this case, it is almost the same as the case of (a) described above, and the only difference is the weight correction in the case of branching. Specifically, it operates in the following steps. The configuration other than the decision tree generating means 5 is not different from that of the above-described embodiment.

【0062】(STEP1)デシジョンツリーのノード
を生成するために、当該ノードの分割の際に与えられて
いる事例の属性集合をA、事例集合をSreal,Sart
する。但し、Srealは実事例の集合、Sart は仮事例の
集合であり、これら2種類の事例集合の和集合を事例集
合Sとする。なお、この際仮事例と実事例には、それぞ
れ予め与えられた重みを付与する。 (STEP2)事例集合Sに対して、前述の(a)の場
合の停止条件を満足していれば、処理を停止する。この
場合、事例集合Sによって定められるクラスは、事例集
合Sの持つクラスの多数決とする。処理が停止しない場
合には、事例集合Sに対して、属性集合Aに含まれる各
属性に対して、当該属性で分割を行った場合のエントロ
ピゲインを計算し、最も大きなエントロピゲインを持つ
属性を1個選び、これをaとする。但し、事例集合を属
性により分割する場合、当該属性の属性値が「*」であ
る仮事例については、分岐数で除した値をそれぞれの仮
事例に与えて分岐させることとする。 (STEP3)属性aを属性集合Aから削除し、これを
新たなAとする。そして、属性aにより、事例集合Sを
グループに分割し、この各グループ毎の事例集合を
0 ,S1 ・・・とする。但し、事例集合を属性により
分割する場合、当該属性の属性値が「*」である仮事例
については、分岐数で除した値をそれぞれの仮事例に与
えて分岐させる。事例集合Sart に対しては、当該属性
aの「*」をその分岐の属性値に書き替える。 (STEP4)上記のS0 ,S1 ・・・の各々に対し
て、STEP2〜STEP3を再帰的に実行する。
(STEP 1) In order to generate a node of the decision tree, the attribute set of the case given when the node is divided is A, and the case set is S real and S art . However, S real is a set of real cases, S art is a set of provisional cases, and the union of these two types of case sets is a case set S. At this time, a weight given in advance is given to each of the provisional case and the actual case. (STEP 2) If the stop condition for the case (a) is satisfied for the case set S, the process is stopped. In this case, the class defined by the case set S is a majority vote of the classes of the case set S. If the processing does not stop, for the case set S, for each attribute included in the attribute set A, the entropy gain in the case where the attribute is divided is calculated, and the attribute having the largest entropy gain is calculated. Select one and call it a. However, when the case set is divided by the attribute, for the temporary cases in which the attribute value of the attribute is “*”, a value divided by the number of branches is given to each temporary case to branch. (STEP 3) The attribute a is deleted from the attribute set A, and this is set as a new A. Then, the case set S is divided into groups according to the attribute a, and the case sets for each group are set as S 0 , S 1 ... However, when the case set is divided according to the attributes, for the provisional cases in which the attribute value of the attribute is “*”, a value divided by the number of branches is given to each provisional case and branched. For the case set S art , "*" of the attribute a is rewritten to the attribute value of the branch. (STEP 4) STEP 2 to STEP 3 are recursively executed for each of the above S 0 , S 1 ...

【0063】なお、決定木生成手段5の実施例2および
実施例3においては、事例に付与した「重み」が整数で
ないことが生じうる。この場合においても、エントロピ
ゲインの計算には何ら支障がないことを注意されたい。
エントロピの計算においては、事例集合に対して、事例
重合全体の事例数(重みの合計)をnとして、あるクラ
スに所属する事例数(重みの合計)をkとして、 −(k/n)log (k/n) を計算する必要がある。この計算は、kやnが整数であ
る必要はない。従って、実数の重みを持つ事例集合に対
しても、エントロピゲインの計算に何ら支障はない。
In the second and third embodiments of the decision tree generating means 5, the "weight" given to the case may not be an integer. It should be noted that even in this case, there is no hindrance to the calculation of entropy gain.
In the entropy calculation, for a set of cases, the number of cases (total weight) in the entire case stack is n, the number of cases belonging to a certain class (total weight) is k, and − (k / n) log It is necessary to calculate (k / n). This calculation need not be an integer for k or n. Therefore, there is no problem in calculating the entropy gain even for the case set having a real number weight.

【0064】[0064]

【発明の効果】以上説明したように、本発明によれば、
事例のみからでは学習できない知識を背景知識として与
え、事例と背景知識の双方に合致した知識を新たに学習
することができる。また、事例のみからでは学習できな
い場合でも、少ない事例から知識学習が可能である。
As described above, according to the present invention,
Knowledge that cannot be learned only from cases can be given as background knowledge, and knowledge that matches both cases and background knowledge can be newly learned. Further, even if the learning cannot be done only from the cases, the knowledge learning can be done from the few cases.

【0065】また、本発明によれば、事例数に比例した
高速な学習が可能であり、更に実事例と背景知識が矛盾
する場合でも、予め定めた重みに従って、双方の情報を
総合した知識を学習することができる。
Further, according to the present invention, high-speed learning proportional to the number of cases is possible, and even when the actual cases and the background knowledge are inconsistent, the knowledge obtained by integrating both pieces of information according to a predetermined weight is obtained. You can learn.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例に係わる修正型知識学習装置
の構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a modified knowledge learning device according to an embodiment of the present invention.

【図2】デシジョンツリー形式で表現される従来技術の
例を示す図である。
FIG. 2 is a diagram showing an example of a conventional technique expressed in a decision tree format.

【図3】領域分割のイメージを示す図である。FIG. 3 is a diagram showing an image of area division.

【符号の説明】[Explanation of symbols]

1 修正型知識学習装置 2 実事例集合 3 背景知識 4 事例変換手段 5 決定木生成手段 1 Modified Knowledge Learning Device 2 Actual Case Set 3 Background Knowledge 4 Case Conversion Means 5 Decision Tree Generation Means

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 属性値の組と当該属性値の組に対応して
決まる1つのクラスとから構成される実事例を複数含む
実事例集合と、 前記事例のクラスを属性値から決定するための条件をル
ール、デシジョンツリー等の形式で与えられた背景知識
と、 前記背景知識を反映した仮事例と前記実事例とをあわせ
て訓練事例集合を形成する事例変換手段と、 前記訓練事例集合を入力として、各属性に対して当該属
性の同値同士を集めることにより事例集合を分割した際
に、当該事例集合の乱雑性を表す指標の減少が最大とな
る属性を分割属性とし、当該分割属性をノードとして抽
出することを再帰的に行い、決定木を生成する決定木生
成手段とを有することを特徴とする修正型知識学習装
置。
1. A real case set including a plurality of real cases each including a set of attribute values and one class determined in correspondence with the set of attribute values, and a class for determining the class of the case from the attribute values. A background knowledge given in the form of conditions, rules, a decision tree, etc., case conversion means for forming a training case set by combining the temporary case and the actual case reflecting the background knowledge, and inputting the training case set As an example, when the case set is divided by collecting the same values of the attribute for each attribute, the attribute with the largest decrease in the index indicating the randomness of the case set is the division attribute, and the division attribute is the node. And a decision tree generating means for generating a decision tree recursively.
JP6232837A 1994-09-28 1994-09-28 Correction type knowledge learning device Pending JPH0895791A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6232837A JPH0895791A (en) 1994-09-28 1994-09-28 Correction type knowledge learning device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6232837A JPH0895791A (en) 1994-09-28 1994-09-28 Correction type knowledge learning device

Publications (1)

Publication Number Publication Date
JPH0895791A true JPH0895791A (en) 1996-04-12

Family

ID=16945578

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6232837A Pending JPH0895791A (en) 1994-09-28 1994-09-28 Correction type knowledge learning device

Country Status (1)

Country Link
JP (1) JPH0895791A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110750655A (en) * 2019-10-29 2020-02-04 西安科技大学 Knowledge base optimization method of intelligent IETM fault maintenance auxiliary system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110750655A (en) * 2019-10-29 2020-02-04 西安科技大学 Knowledge base optimization method of intelligent IETM fault maintenance auxiliary system

Similar Documents

Publication Publication Date Title
JP3323180B2 (en) Decision tree changing method and data mining device
JPH05324726A (en) Document data classifying device and document classifying function constituting device
US6385608B1 (en) Method and apparatus for discovering association rules
EP0313975A2 (en) Design and construction of a binary-tree system for language modelling
CN109145003B (en) Method and device for constructing knowledge graph
JPH04370833A (en) Device and method for assisting knowledge acquisition of expert system
CN108629124B (en) Method for automatically generating simulation parameter data based on active graph path
JPH09204310A (en) Judgement rule correction device and judgement rule correction method
US5347615A (en) Rule generating and verifying apparatus for fuzzy control using temporary exclusion of a selected rule
JPH0895791A (en) Correction type knowledge learning device
US20020095422A1 (en) Method for creating a balanced binary tree
EP0715256B1 (en) Rule verifying apparatus and method for fuzzy inference
JPH064292A (en) Decision rule generating device
US7305373B1 (en) Incremental reduced error pruning
Denzinger et al. Analysis and representation of equational proofs generated by a distributed completion based proof system
Dolado et al. A two-stage zone regression method for global characterization of a project database
KR20210058533A (en) Method for reconfiguration of a community in a network including a plurality of networks and an electronic device for the method
Skulimowski et al. The use of fuzzy evaluation and radical cut-off strategy to improve apictorial puzzle assembly with exhaustive search algorithm performance
Harrison Rule set reduction in fuzzy decision trees
CN115049899B (en) Model training method, reference expression generation method and related equipment
WO2023132048A1 (en) Generation method, generation program, and information processing device
US20240127123A1 (en) Federated learning model training method and apparatus, and electronic device
JPH0764793A (en) Majority decision type clustering device
JP3211240B2 (en) Approximate inference device
JP3127634B2 (en) Constraint relaxation inference method