Inference rule determining method and inference device
This is a continuation of application Ser. No. 07/459,815, filed Jan. 17, 1990, now U.S. Pat. No. 5,168,549. 
    
    
     TECHNICAL FIELD 
     The present invention relates to inference rule determining methods and inference devices in controling apparatus, in the inference of an expert system, and in pattern recognition based on input data. 
     BACKGROUND ART 
     In order to describe a conventional technique, first, the basic fuzzy inference will be outlined by taking as an example fuzzy control used in apparatus control, etc. 
     In a control system which relates to the evaluation of human beings, the operator can determine a final manipulated control variable using a variable which the operator has determined subjectively and/or sensuously, for example, &#34;large&#34;, &#34;middle&#34;, &#34;tremendously&#34;, or &#34;a little&#34; (which is hereinafter referred to as a fuzzy variable). In this case, the operator determines the manipulated variable from the input variables on the basis of his control experience. An inference device using fuzzy control assigns an input fuzzy number to an IF part of an inference rule in accordance with the inference rule of &#34;IF . . . THEN . . .&#34; type and determines an output fuzzy number of the THEN part from a fitting grade (membership value) indicative of the extent to which the inference rule is satisfied. The actual manipulated variable can be obtained by taking the center of gravity value, etc., of the output fuzzy number. 
     One of the conventional control methods using fuzzy inference is fuzzy modeling disclosed, for example, in Gean-Taek Kang, Michio Sugano; &#34;fuzzy modeling&#34; SOCIETY OF INSTRUMENT AND CONTROL ENGINEERS PAPERS, Vol. 23, No. 6, pp. 650-652, 1987. In the control rule of the fuzzy modeling, the IF part is constituted by a fuzzy proposition and the THEN part is constituted by a regular linear equation between inputs and outputs. If a timing lag of first order tank model is considered, for example, the control rule among a control error e, its change in error de and a control output (manipulated variable) u is given by 
     If e is Zero and de is Positive Medium 
     Then u=0.25 e+1.5 de 
     A plurality of such inference rules are prepared, all of which are referred to as control rules. Zero, Positive Medium, etc., are each a label or a fuzzy variable (fuzzy number) used to described the rules. FIG. 1 illustrates one example of a fuzzy variable. In FIG. 1, NB denotes Negative Big; NM, a negative Medium; NS, a Negative Small; ZO, a Zero; PS, Positive Small; PM, a Positive Medium; and PB, Positive Big. A function indicative of a fuzzy number F on X is referred to as a membership function μ f  ( ) and the function value of x 0  is referred to as a membership value μ F  (X 0 ). The general form of the control rules is given by 
     
         R.sup.s : If x.sub.1 is A.sub.1.sup.s, x.sub.2 is A.sub.2.sup.s, . . . , x.sub.m is A.sub.m.sup.s 
    
     
         Then y.sup.s =c.sub.0.sup.s +c.sub.1.sup.s x.sub.1 +c.sub.2.sup.s x.sub.2 +. . . +c.sub.m.sup.s x.sub.m 
    
     where R 5  indicates a s th  rule; x j , an input variable; A j   s , a fuzzy variable; y s , an output from the s th  rule; and c s , a THEN part parameter. The result of inference for an input (x 1   0 , x 2   0 , . . . , x m   0 ) is given by ##EQU1## where n is the number of rules, and w s  is a fitting grade at which the input (x 1   0 , x 2   0 , . . . , x m   0 ) is adapted to the IF part of the S th  rule. W s  is given by ##EQU2## where the membership value in the x 0  in the fuzzy variable A j   s  is μ Aj   s  (x j ). The identification of a fuzzy model includes a two-stage structure, namely, identification of the structure of the IF and THEN parts and identification of the IF and THEN parts. The conventional identifying process includes the steps of (1) changing the fuzzy proposition of the IF part to a proper proposition, (2) changing W s  in a constant manner, (3) searching only the actually required ones of the input variables of the THEN part using a backward elimination method, (4) calculating parameters of the THEN part using the method of least squares, (5) repeating the steps (2)-(4) to determine an optimal parameter, (6) changing the fuzzy proposition of the IF part and (7) returning to the step (2) where an optimal parameter is repeatedly searched under the conditions of a new fuzzy proposition. Namely, this method can be said to be a heuristic method-like identifying algorithm. 
     A conventional inference device includes a fuzzy inference device, for example, shown in FIG. 2 in which reference numeral 1a denotes a data input unit (including a measured value and a value evaluated by human being); 2a, a display command unit; 3a, a fuzzy inference operation unit; 4a, an inference result output unit; and 5a, a display. The display 2a is composed of a keyboard, and the fuzzy inference operation unit 3a is composed of a digital computer. The input data to the digital input unit 1a is subjected to inference operation at the fuzzy inference operation unit 3a. Thus, the operation unit 3a outputs the result of the inference and simultaneously displays a list of inference rules, a list of fuzzy variables and the states of use of various inference rules on the display 5a. In a conventional inference device such as that shown in FIG. 2, the inference rules of the fuzzy inference rules and the fuzzy variables as input data are fixed as constant values in the fuzzy inference operation unit 3a and have no function of changing the fuzzy variables. 
     Since an algorithm of determining a membership function is based on heuristic method in the conventional inference rule determining method as well as in the fuzzy modeling, it is complicated and the number of parameters to be determined is very large. Therefore, optimal inference rules cannot be obtained easily at high speed. 
     Since an influence device such as that shows in FIG. 2 has no function of learning inference rules, the characteristic of the inference variable changes with time, so that it cannot cope with the situation that the inference accuracy would be deteriorated according to the inference rules set initially. Assume, for example, that there is the inference rule &#34;If it is hot, then control diarie a so as to be in level B.&#34; Since the obscure concept &#34;hot&#34; varies from person to person as well as season to season, satisfactory control cannot be achieved unless the inference device has a learning function and can change the inference rules adaptively in accordance with situations under which the device is used. Furthermore, there are actually many cases where non-linear inference is required, so that a method of performing linear approximation described with reference to the above conventional example has a limit to improvement in the inference accuracy. 
     SUMMARY OF THE INVENTION 
     In order to solve the above problems, it is a first object of the present invention to provide an inference rule determining process for automatically determining a fuzzy number contained in the inference rules described in the form &#34;IF . . . THEN. . .&#34; using a learning function without relying upon experience. 
     It is a second object of the present invention to provide an inference device which is capable of coping with an inference problem at high speed even if the problem is non-linear, using the non-linearity of a neural network model. In the inference device, a membership value determiner constituting the neural network infers from the input variables a membership value corresponding to the IF part of each inference rule. The individual inference quantity determiner of the inference device infers from the input variables an inference quantity corresponding to the THEN part of the inference rule. The final inference quantity determiner makes a synthetic determination based on the inference quantity and the membership value inferred for each of the rules for the input variables and obtains a final inference quantity. The present invention is the inference device which functions as described above. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 illustrates fuzzy variables; FIG. 2 is a schematic of a conventional inference device; FIGS. 3 and 4 are schematics of neural network models which constitute the membership value determiner and the individual inference quantity determiner; FIG. 5 is a schematic of a linear signal processor; FIG. 6 is a schematic of a non-linear signal processor; FIG. 7 is an input-output characteristic diagram of a threshold processor; FIG. 8 illustrates a process for automatically determining a membership function using a neural network model; FIG. 9 is a schematic of an inference device of one embodiment in the present invention; FIG. 10 is a schematic of input/output data used for describing the operation of the FIG. of embodiment 1; FIG. 11 illustrates the membership value of each learning data in the IF part of the FIG. 9 embodiment; FIG. 12 illustrates an inference error produced when the number of input variables is reduced; FIG. 13 illustrates the result of inferring the inference quantity of the FIG. 9 embodiment; FIG. 14 illustrates the result of the inference according to the present invention applied to the problem of inferring the COD density in Osaka Bay. 
    
    
     BEST MODE FOR CARRYING OUT THE INVENTION 
     The features of the inventive method lies in sequentially determining membership functions using a learning function. Various methods of realizing the learning function are conceivable. In a first embodiment, a learning algorithm of a neural network model is used. Before description of the embodiment, a neural network model and a neural network model learning algorism will be described. 
     The neural network model is a mathematical network which has gotten a hint from the combination of cranial neural cells. Inference rules can be determined without relying on experience by determining the intensity of connection of units constituting the network using sequential learning. 
     The network of FIG. 3 is a kind of a neural network model. In FIG. 3, reference numeral 100 denotes a multi-input-single output signal processor; and 101, input terminals of the neural network model. FIG. 4 shows an example of a 3-stage structured neural network model which receives four input variables and outputs a single output value. There is no interconnection in each stage and a signal is propagated to an upper stage only. FIG. 5 specifically illustrates the structure of a linear signal processor which basically includes a linear computation section of the multi-input-single output signal processors 100 constituting the neural network model. In FIG. 5, reference numeral 1001 denotes each of input terminals of the multi-input-single output signal processor 100; 1002, a memory which stores weighting coefficients given to the corresponding inputs from the input terminals 1001; 1003, multipliers which multiply the inputs from the input terminals 1001 by the corresponding weight coefficients in the memory 1002; and 1004, an adder which adds the respective outputs from the multipliers 1003. Namely, the multi-input-single output signal processor 100 of FIG. 5 calculates 
     
         y=Σc.sub.i x.sub.i 
    
     where x i  is an input value to the corresponding one of the input terminals 1001 and c i  is the corresponding one of the weight coefficients stored in the memory 1002. FIG. 6 specifically illustrates the structure of a non-linear signal processor, which performs a non-linear operation, of the multi-input-single output signal processors 100 which constitute the neural network model. In FIG. 6, reference numeral 1000 denotes the linear signal processor described with reference to FIG. 5; and 2000, a threshold processor which limits the output from the linear signal processor to a value in a predetermined range. FIG. 7 illustrates the input-output characteristic of the threshold processor 2000. For example, the input/output characteristic of the threshold processor 2000 which limits the output from the linear signal processor 1000 to within the range (0, 1) is represented mathematically by 
     
         OUT=1/(1+exp(-IN)) 
    
     where IN and OUT are the input and output to and from the threshold processor 2000. 
     The input/output relationship in the neural network is represented by 
     
         Y=NN(x)                                                    (1) 
    
     In the description of the embodiment, the model size is represented by the k-layer |μ 0  x μ 1  x . . . x μ k  | where μ i  is the number of neuron models of each of the input, middle and output layers. The above refers to a general description of the neural network model. 
     The learning algorithm of the neural network model will now be described. Various learning, algorithms are proposed, one of which is a backpropagation (D. E. Rumelhart, G. E. Hinton and R. J. Williams, &#34;Learning Representations by Back-Propagating Errors,&#34; Nature, Vol. 323, pp. 533-536, Oct. 9, 1986). The mathematical verification and formulation of this algorithm are left to references, but it is basically described as follows. First, a multiplicity of sets of input variables as learning data and percentage values belonging to the respective inference rules inferred by other means are prepared. Input data is input to the neural network model. Initially, an appropriate value, for example a random number value, is input in the memory 1002. The error between the output value from the neural network model and the percentage value belonging to the inference rules is calculated. Since the error is a function of the weight coefficients in the memory 1002, the weight coefficient is corrected in the direction of weight differentiation with respect to the error. Namely, the error is minimized and learning is performed by correcting the weights sequentially in accordance with the Steepest Decent Method. This is the summary of the learning method using Backpropagation Algorithm. 
     An inference rule determining process and the inference quantity calculating process according to the present invention will be described using the neural network model and learning algorithms. 
     Step 1 
     Only input variables having high correlation to an inference value are selected and unnecessary input variables are removed. If the determination is performed, for example, using the neural network model, first, respective input variables x j  where j=1, 2, . . . k are assigned to the neural network model and learning is performed such that an inference value y i  is obtained. Similar learning is performed by decrementing the number of input variables by one. Similarly, the backward elimination method is repeated. The difference between each output of the neural network model which has completed the corresponding learning and the inference value y i  is compared using the error sum of squares as an evaluation index, and only the input variables (X j  where j=1, 2, . . . m, where m≦k) to the neural network model present when the error is minimized are selected. 
     Step 2 
     The input/output data (x i , y i ) is divided into n t  data segments for identifying the structure of an inference rule (hereinafter described as TRD) and n o  inference rule evaluation data segments (hereinafter described as CHD) where n=n t  +N o . 
     Step 3 
     Each TRD is divided into optimal r sub-segments using regular clustering method. Each set of learning data segments to which the TRD is divided is R s  where s=1, 2, . . . , r, and the learning data on R s  is (x i   s , Y i   s ) where i=1, 2, . . . , (n t ) S  where (n t ) s  denotes the number of data of the TRD in each R S . The r-division of an m-dimensional space means that the number of inference rules is r. 
     Step 4 
     The IF part structure is identified. X i  is an input value to the input layer of the neural network model and the output value from the output layer is given by ##EQU3## A neural network model is learned such that the grade w i   s  of each learning data (x i ) belonging to each R s  is inferred. The output value from the neural network model after learning is the membership value of the IF part. Namely, the membership function is given by 
     
         μ.sub.A.sup.s (x.sub.i)=W.sub.i.sup.s 
    
     where i=1, 2, . . . , n 
     Step 5 
     The structure of the THEN part is identified. The THEN part structure model of each inference rule is A represented by the input-output relation (1) of the neural network model and the input values x i   s , . . . , x im   s  where i=1, 2, . . . , (n t   s ) and the output value y i   s  are allocated. A neural network model which infers the inference quantity by learning is identified. Substituting the CHD input values x il   s , . . . , x im   s  where i=1, 2, . . . , n c  into the resulting neural network model and the error sum of squares O s  is calculated by ##EQU4## There is another idea to calculate θ m   s  with the weight; this is ##EQU5## 
     Step 6 
     Only the input variables contributing to the inference quantity inferring equation of the THEN part of each inference rule are selected using variable reducing method. Only any one of m input variables is removed and a neural network model is then identified for each THEN part using the TRD similarly to step 5. The inferred error sum of squares θ m-1   sp  of the inference quantity obtained when the CHD is used is calculated as follows: ##EQU6## From the above expression, it will be seen to what extent the removed input variable is important to determine the THEN part. If 
     
         θ.sub.m.sup.s &gt;θ.sub.m-1.sup.sp, 
    
     the input variable x p  is discarded because it is considered to be not important. 
     Step 7 
     An operation similar to step 5 is performed by using the m remaining input variables. Subsequently, steps 5 and 6 are repeated and the calculation is stopped when no equation (2) holds for all the input variables. The optimal neural network model is the one where O s  minimum. 
     The steps 1-7 determine the IF and THEN parts for each inference rule and the identification of the structure of the fuzzy inference rule ends. 
     Step 8 
     The quantity of inference y i  is obtained by ##EQU7## where y s  shows a presumed value obtained by substituting CHD into the optimal neural network model obtained at step 7. 
     If the neural network model includes a collection of non-linear characteristics of FIG. 7, the inference of a non-linear object is automatically possible by this learning process, of course. 
     Thus, if the inference rule is determined by the inventive process, the inference rules are obtained easily and accurately without using the heuristic method since the inference rules are determined sequentially using the learning function even if the object to be inferred is in a non-linear relationship or in an obscure input/output relationship. 
     The inventive process described above will now be described using specific experimental values. In the particular experiment, the inference rule and the quantity of inference were determined using simple numeral examples shown in Tadashi Kondo, Revised GMDH Algorithm Estimating Degree of the Complete Polynomial, SOCIETY OF INSTRUMENT AND CONTROL ENGINEERS PAPERS, Vol. 22, No. 9, pp. 928-934, 1986. The process for determining the inference rule will be described below. 
     Steps 1, 2 
     FIG. 10 shows input/output data where data numbers 1-20 denote data for determining the structure of an inference rule (TRD) used in learning and data numbers 21-40 denote evaluation data (CHD). Therefore, n t  =n c  =20 and m=2. Input variables were selected by learning 15,000 times in a three-layered (3×3×3×1) neural network model. The results are shown in Table 1. 
     
                       TABLE 1                                                     
______________________________________                                    
               ERROR SUM OF SQUARES                                       
______________________________________                                    
when all variables were used                                              
                 0.0007                                                   
when x.sup.1 was removed                                                  
                 0.3936                                                   
when x.sup.2 was removed                                                  
                 0.1482                                                   
when x.sup.3 was removed                                                  
                 0.0872                                                   
when x.sup.4 was removed                                                  
                 0.0019                                                   
______________________________________                                    
 
    
     The error sum of squares is not so much influenced even if the input variable x 4  is added or otherwise removed. Therefore, it is determined that it does not virtually influence the determination of the membership function and thus is not used in the subsequent experiments. 
     Step 3 
     The TRD is divided using the regular clustering method. As the result of the clustering, each learning data is dividable into two segments as shown in Table 2. 
     
                       TABLE 2                                                     
______________________________________                                    
INFERENCE RULES                                                           
               LEARNING DATA NUMBERS                                      
______________________________________                                    
R.sup.1        1, 2, 3, 4, 5, 11, 12, 13, 14, 15                          
R.sup.2        6, 7, 8, 9, 10, 16, 17, 18, 19, 20                         
______________________________________                                    
 
    
     Step 4 
     In order to infer with the value of W s  ε[0,1] a proportion W i   s  ={0, 1} belonging to learning data (x i , y i ) where i=1, 2, . . . , 20, the three-layered [3×3×3×2] neural network model was learned 5,000 times to obtain the fuzzy number A s  of the IF part. FIG. 11 illustrates the fuzzy number A 1  of the IF part for the inference rule R 1  at this time. The input data in Table 2 where μ R   &#39;  (x i , y i )=W i   1  &gt;0 was used as the learning data. 
     Similarly, the fuzzy number of the IF part for R 2  was calculated. 
     Step 5 
     An inference quantity presuming equation of the THEN part in each inference rule was calculated. The three-layered [3×8×8×1] neural network model was learned 20,000 times and θ 4  was obtained as shown in Table 3. 
     
                       TABLE 3                                                     
______________________________________                                    
REFERENCE RULE 1: O.sub.4                                                 
                     27.86                                                
INFERENCE RULE 2: O.sub.4                                                 
                      1.93                                                
______________________________________                                    
 
    
     Steps 6, 7 
     θ s  is calculated where any one input variable is removed from the structure model of the THEN part of the influence rule R s . A three-layered [2×8×8×1] neural network model was learned 10,000-20,000 times. As a result the error sums of squares of FIG. 12 were obtained for the inference rules R 1  and R 2 , respectively. The comparison between steps 5 and 6 for each inference rule shows that 
     
         all θ.sub.3.sup.1 &gt;θ.sub.4.sup.2 (=27.8) 
    
     
         θ.sub.3.sup.2 &lt;θ.sub.4.sup.2 (=1.93) where x.sub.1 is removed. 
    
     Therefore, the neural network model at step 5 is used as the THEN part model for inference rule 1. For inference rule 2, calculation is further continued and is ended at the repetitive calculations at the second stage. (The neural network model with (x 2 , x 3 ) inputs is used as the THEN part. The resulting fuzzy model is given by ##EQU8## FIG. 13 illustrates the results of the calculation of y *  in equation (3) using an inference device which executed the rules thus obtained. 
     While in the particular embodiment the weighted center of gravity defined by equation (3) was employed as the quantity of inference obtained as the results of the fuzzy inference, a process for calculating the central value or maximum value may be used instead. While in the particular embodiment the algebraic product was used in the calculation equation of w s , a fuzzy logical operation such as a miniature calculation may be used instead of the algebraic production. 
     In the steps of the process for determining the inference rule, the step of determining a non-linear membership function automatically will now be described in more detail. 
     It is natural that the same reference rule will be applied to similar input data. At step 3, learning data is clustered (FIG. 8(a)). These classes correspond to inference rules in one-to-one relationship. The inference rule is, for example, &#34;IF x 1  is small and x 2  is large, THEN . . .&#34;. Three such inference rules R 1  -R 3  are shown in FIG. 8(a). One hundred percent of each of the inference rules is obeyed at typical points (a set of input data) in these classes, but the data are more influenced by a plurality of such inference rules nearer the boundary. A function indicative of this percentage is the membership function, the form of which is as shown in FIG. 8(c), for example, which is a view of the membership function as viewed from above and the hatched portion is an area where the membership functions intersect. 
     A step 3. 4 is for preparing such membership functions. A neural network model of FIG. 8(b) is prepared, variable values (x1 and x2 in FIG. 8(b) of the IF part are allocated to the input while 1 is allocated to a rule number to which the input value belongs and 0 is allocated to rule numbers other than the former rule number in the output. Learning is then performed. One of the important features of the neural network model is that a similar input corresponds to a similar output. While in learning the points x of FIG. 8(a) alone are used, the same output is obtained at points near the points x, namely, the output shows that the same inference rule is obeyed. The neural network model which has finished learning outputs optimal balance percentages belonging to the respective inference rules when it receives data in the vicinity of the boundaries of the respective inference rules. These are the membership values. In other words, the neural network model includes all the membership functions of the respective inference rules. 
     While in the particular embodiment of the inventive process the membership functions of fuzzy inference rules are determined using the learning algorithm of the neural network, other learning algorithms may be used, of course. As will be easily imagined from the fact that the Back-Propagation algorithm described in the algorithms of the neural network is based on the classic steepest descent method, many learning algorithms will be easily conceived which are used in the field of non-linear minimization problems such as Neuton&#39;s method and conjugate gradient method. It is commonsense that in the field of pattern recognition a learning method is used in which a standard pattern which is used for recognition is caused to sequentially approach the input pattern. Such sequential learning process may be used. 
     While in the step 5 of the embodiment the THEN part has been illustrated as being constructed by a neural network, it may be expressed using another process. For example, if fuzzy modeling such as that described in a conventional method is used, the THEN part will differ from that of the first embodiment in terms of non-linear expression. However, the essence of the present invention will not be impaired which automatically determines the fuzzy number of an inference rule sequentially using the learning function if a learning function such as a neural network model is incorporated in the IF part. 
     In the particular embodiment of the present invention, the expression &#34;automatic formation of a membership function of a fuzzy inference rule&#34; is used. This special case corresponds to a production rule used in a classic expert system. In such a case, the expression &#34;automatic formation of the reliability of a inference rule&#34; would be more intelligible. However, this is only a special case of the embodiment of the present invention. 
     A second embodiment of the invention which performs inference on the basis of the inference rule obtained by the inventive method will now be described. FIG. 9 is a schematic of the first embodiment of the inference device according to the present invention. In FIG. 1, reference numeral 1 denotes a membership value determiner which calculates the membership value of the IF part of each inference rule; 2, an individual inference quantity determiner which infers a quantity of inference to be calculated at the THEN part of each inference rule; and 3, a final inference quantity determiner which determines the final quantity of inference from the outputs of the individual inference quantity determiner 2 and the membership value determiner 1. Reference numerals 21-2r denote the internal structure of the individual inference quantity determiner 21 which determines an inference quantity in accordance with the respective inference rules 1-r. The determiners 1 and 21-2r each have a multi-stage network structure such as shown in FIG. 3. 
     If input values x 1  -x m  are input to the inference device of the present invention, the membership value determiner 1 outputs the respective percentages in which the corresponding input values satisfy the respective inference rules. The determiner 1 has beforehand finished its learning in accordance with the steps described in the inference rule determining process of the present invention. The individual inference quantity determiner 21 outputs an inference quantity when those input values obey the inference rule 1. Similarly, the individual inference quantity determiners 21-2r output inference quantities when they obey inference rules 2-r. The final inference quantity determiner 3 outputs a final inference result from the outputs of the determiners 1 and 2. The process for the determination uses the equation (3), for example. 
     As will be clear from FIGS. 6 and 7, the input/output relationship of the multi-input-single output signal processor 100 which constitutes the neural network model is non-linear. Therefore, the neural network model itself can perform non-linear inference. Thus, the inference device according to the present invention realizes a high inference accuracy which cannot be achieved by linear approximation. 
     High inference accuracy of the present invention will be illustrated using a specific application. The application refers to the inference of the COD (Chemical Oxygen Demand) density from five parameters measured in Osaka Bay from April, 1976-March, 1979. The five measured parameters are (1) water temperature (°C.), (2) transparency (m), (3) DO density (ppm), (4) salt density (%), and (5) filtered COD density (ppm). In this data, 32 sets of data obtained from Apr., 1976 to Dec., 1978 were used for learning and the remaining 12 sets of data were used for evaluation after the learning process. FIG. 14 illustrates the result (solid line) estimated by the present invention and the actual observed values of COD density (broken lines). It will be understood that the presumed result is a very good one. 
     As described above, the first embodiment of the inventive inference device includes a membership value determiner constituted by a plurality of multi-input-single output signal processors connected in at least a network such that it has a learning function and is capable of determining a quantity of inference corresponding to the input variables in a non-linear relationship. 
     A second embodiment of the inventive inference device is capable of performing approximate inference by storing in memory the beforehand obtained input/output relationship of a predetermined neural network model, and referring to the memory instead of execution of neural network model directly each time this execution is required. While in the first embodiment the membership value and individual inference quantity determiners are described as having a neural network model structure, an input-output correspondence table may be prepared beforehand from a neural network model determined by a learning algorithm if the input variables are obvious beforehand and/or if close approximation is permissible. Although the inventive method cannot be incorporated so as to have a learning function in the second embodiment which functions as a substitution for the membership value determiner or the individual inference quantity determiner by referring to the correspondence table during execution of the inference rule, an inexpensive small-sized inference device is realized because no circuit structure such as that shown in FIG. 5 is needed. The inference corresponding to non-linearity can be performed as in the first embodiment of the inference device of the present invention. 
     As described above, according to the second embodiment, at least one of the membership value determiner and the individual inference quantity determiner is composed of the memory which beforehand stores the input/output characteristic of the inference unit constituted by a plurality of multi-input-single output processors connected to at least the network, and the memory referring unit. Thus, the inference device has a simple circuit structure for determining an inference quantity corresponding to input variables in a non-linear manner. 
     INDUSTRIAL APPLICABILITY 
     As described above, according to the present invention, an inference rule is prepared which has a learning function, forms an inference rule automatically and performs the best inference. According to the inventive inference device, inference is performed with high accuracy even if an object to be inferred is non-linear, so that the device is valuable from a practical standpoint.