# Detection of Fuzzy Association Rules by Fuzzy Transforms

Authors: Ferdinando Di Martino; Salvatore Sessa
Journal: Advances in Fuzzy Systems
 (2012)

---

## Abstract

We present a new method based on the use of fuzzy transforms for detecting coarse-grained association rules in the datasets. The fuzzy association rules are represented in the form of linguistic expressions and we introduce a pre-processing phase to determine the optimal fuzzy partition of the domains of the quantitative attributes. In the extraction of the fuzzy association rules we use the AprioriGen algorithm and a confidence index calculated via the inverse fuzzy transform. Our method is applied to datasets of the 2001 census database of the district of Naples (Italy); the results show that the extracted fuzzy association rules provide a correct coarse-grained view of the data association rule set.


---

## Body

## 1. Introduction

Fuzzy association rules extraction [1] is a fundamental process in data mining for many topics as classification and information retrieval. Many techniques have been presented for extracting fuzzy association rules in datasets and databases [1–21]; some authors  are  using soft computing approaches as evolutionary methods [14, 21–26] and clustering algorithms [24, 27, 28] for creating fuzzy partitions of data attribute domains. In many practical cases the user does not need to make a detailed fuzzy partition of the domain attributes and a fine exploration of fuzzy association rules between attributes in datasets. Indeed, sometimes his purpose is to acquire a more immediate coarse-grained knowledge of hidden relations in the data creating a coarse-grained fuzzy partition of each attribute domain and by estimating fuzzy association rules with evaluative linguistic expressions.Here we propose a new approach for detecting coarse-grained fuzzy association rules in datasets, based on fuzzy transforms (for short,F-transforms), which are already used for image analysis [18, 29–34], data analysis [31, 35], and forecasting [34, 36]. In particular, in [31] a modality of  extraction of fuzzy association rules in a coarse grained way is proposed by using F-transforms. In this paper we follow this approach; our framework is composed from a pre-processing phase (necessary in order to obtain the optimal cardinality of the fuzzy partitions of the data attribute domains), and of two successive processes for extracting the fuzzy association rules. Let us consider a dataset represented by Table 1.Table 1
Schema of a dataset.
X
1
⋯
X
i
⋯
X
r
O
1
p
11
⋯
p
1
i
⋯
p
1
r
⋮
⋮
⋮
⋮
⋮
⋮
O
j
p
j
1
⋯
p
j
i
⋯
p
j
r
⋮
⋮
⋮
⋮
⋮
⋮
O
m
p
m
1
⋯
p
m
i
⋯
p
m
r
X = {X1,…,Xi,…,Xr} is the set of the attributes and   O={O1,O2,…,Om} is the set of the objects or instances in the dataset. A value pji belonging to the domain of the attribute  Xi is called an item and a set of items is called an itemset. An association rule is represented as a directional dependence between sets of attributes in the dataset. It is indicated with an expression of the type S→T,  where S, T are sets of attributes. The implication operator means that if all the items in Sexist in an object, then all the items in T are also in the object with a high probability [2].We define the  contextwi=[ai,bi] of the given attribute Xi by setting ai=min{p1i,…,pmi} and bi=max{p1i,…,pmi}. Thus we can consider a fuzzy partition of n(i) fuzzy sets F={Ai1,Ai2,…,Ain(i)} for each context wi. A fuzzy association rule  S→T between two disjoint sets of attributes S={X1,…,Xk} and T={Xl,…,Xz} can be generally expressed as
(1)IF(X1isA1h(1))AND⋯AND(XkisAkh(k)),THEN(XlisAlh(l))AND⋯AND(XzisAzh(z)).In [31] the F-transforms approach, for detecting fuzzy association rules from a dataset in a coarse-grained view and to construct a framework of fuzzy association rules between  two disjoint sets of attributes S={X1,…,Xk} and T={Xz}, is used in the form:
(2)IF(X1isA1h(1))AND⋯AND(XkisAkh(k))~F(meanXzisℵ),
where (in accordance to [18, 29]) Aih(i) is the hith basic function of the uniform partition of the ith context associated to the node Xhi. Each clause in the antecedent assumes the linguistic meaning “Xi is approximately LV(Aih(i)),” with LV(Ai,h(i))  being the evaluative expression assigned to the fuzzy set (Ai,h(i)) and ℵ a pure evaluative linguistic expression that characterizes the component Fh(1)h(2)⋯h(k) of the F-transform corresponding at the fuzzy sets  A1h(1),…,Akh(k). The term “mean” in the consequent derives from the fact that the component Fh(1)h(2)⋯h(k) is obtained as a  mean of the values of  the item Xz weighted over the basic functions A1h(1),…,Akh(k). The symbol ~F represents an association between attributes obtained with the F-transforms. In other words, we can say that a fuzzy association rule expressed in the form (2) provides a synthetic valuation of the association rule between attributes, with the associations expressed linguistically with the model of [18, 29] and the fuzzy sets in the antecedent A1h(1),…,Akh(k) being the basic functions of the uniform fuzzy partition of the corresponding context.Following the definitions and  notations of [32], let  n≥2 and x1,x2,…,xn be points of a specific context [a,b], called nodes, such that x1=a<x2<⋯<xn=b. The assigned family of  fuzzy sets A1,…,An:[a,b]→[0,1], called basic functions,  is a fuzzy partition of [a, b] if the following  holds: (A)
Ai(xi)=1  for every  i=1,2,…,n;(B)
Ai(xi)=0 if x∉(xi-1,xi+1) for i=2,…,n;(C)
Ai(x)  is a continuous function on [a,b];(D)
Ai(x) strictly increases on [xi-1,xi]  for i=2,…,n  and  strictly  decreases on  [xi,xi+1]  for  i=1,…,n-1;(E)
∑i=1nAi(x)=1  for every x∈[a,b].We say that the fuzzy sets{A1(x),…,An(x)} form an uniform fuzzy partition if(F)
n≥3 and xi=a+h·(i-1), where h=(b-a)/(n-1) and  i=1,2,…,n (equidistance of the nodes);(G)
Ai(xi-x) = Ai(xi+x)  for every  x∈[0,h]  and  i=2,…,n-1;(H)
Ai+1(x)=Ai(x-h) for every  x∈[xi,xi+1]  and  i=1,2,…,n-1.An example of basic functions is given by triangular fuzzy sets. For example, ifn=4, a=x1=10, and b=x4=25, we obtain h=3. Table 2 shows the  nodes that characterize each basic function.Table 2
Nodes obtained for [8, 37] with n=4.
x
i
-
1
x
i
x
i
+
1
Label
10
10
15
A
1
10
15
20
A
2
15
20
25
A
3
20
25
25
A
4If we define basic functions of triangular form, as example, we  have fork=2,…,n-1:
(3)A1(x)={1-x-x1hifx∈[x1,x2]0otherwise,Ak(x)={x-xk-1hifx∈[xk-1,xk]1-x-xkhifx∈[xk,xk+1]0otherwise,An(x)={x-xn-1hifx∈[xn-1,xn]0otherwise.Figure1 shows the four basic functions forming the fuzzy partition of the context [8, 37] given in (3) for n=4.Figure 1
Example of triangular basic functions.The method given in [31] can be very useful when we need to extract fuzzy association rules in an approximate way from a dataset; for each attribute a  coarse-grained uniform fuzzy partition of its context is created and  the evaluative linguistic expression in the consequent represents a weighted mean of the values of the attribute Xz. Nevertheless, as pointed in [35], this approach does not take into account the necessity to have the data sufficiently dense with respect to the chosen fuzzy partition, otherwise the F-transforms cannot be used. In order to avoid the choice of a fuzzy partition either too fine or too coarse of the contexts,  it is necessary to define a pre-processing phase which determines  the optimal fuzzy partition to choose with respect to the density of the data. Here we propose a technique based on F-transforms to detect the framework of strong fuzzy association rules from a dataset in the form (2). In our method we determine the best uniform fuzzy partition of each context constituted from  triangular fuzzy sets like  in Figure 1.  For each context wi,i=1,…,r, of the dataset in Table 1, an initial uniform fuzzy partition of ni triangular fuzzy sets (3) is established.To control that the data are sufficiently dense with respect to the chosen partition, we must check that  for each combination(A1h(1),A2h(2),…,Arh(r)),h(1),…,h(r)∈{1,…,n}, there exists at least one data point such that A1h(1)(xi1)·A2h(2)(xi2)·⋯·Arh(r)(xir)>0. In order to reduce the computational complexity (we should extend this control on n1·n2·⋯·nr combinations  where  ni  is the cardinality of the fuzzy partition of the context wi), we consider n fuzzy sets for each context, thus  the number of the possible combinations (A1h(1),A2h(2),…,Arh(r)) is nr.In Section2 we schematize our method for extraction fuzzy association rules. In Section 3 we recall the definitions of F-transforms in k (≥2) variables. In Section 4 we present the extraction process  of the fuzzy association rules, in  Section 5 we show some results coming from the  tests conducted on the databases of the 2001 census data related to the city of Naples (Italy), supplied by ISTAT (Istituto Nazionale di Statistica). These databases contain information on population, buildings, housing, family, employment work for each census zone of Naples. The reliability of the fuzzy association rules is also discussed as well.


## 2. Pre-Processing and Extraction Fuzzy Association Rule Phases

We use a pre-processing phase that determines the optimal value of n by starting from an initial cardinality of the fuzzy partitions. Furthermore this phase ensures that the data are sufficiently dense with respect to the chosen fuzzy partitions,  so thatA1h(1)(xi1)·A2h(2)(xi2)·⋯·Arh(r)(xir)>0 for each combination (A1h(1),A2h(2),…,Arh(r)) of basic functions with respect to a minimal density of data points (xi1,xi2,…,xir). For each combination (A1h(1),A2h(2),…,Arh(r)), we calculate the value
(4)ρh(1),…,h(r)=card(supp(A1h(1)·A2h(2)·⋯·Arh(r)))
which is the number of data points (xi1,xi2,…,xir) for which A1h(1)(xi1)·A2h(2)(xi2)·⋯·Arh(r)(xir)>0. The user can use  a minimal density ρε of data, in the sense that
(5)ρh(1)⋯h(r)≥ρε,
and the fulfillment of this constraint is to determine a value for the parameter n  which is consistent with the distribution of the data correspondent  to the uniform fuzzy partitions. The use of ρε allows us to control how the uniform  fuzzy partition set of the attributes should be finer. If ρε=0, we obtain the more coarse-grained fuzzy partition set in accordance to this constraint. As examples, in Figures 2 and 3 we show the case of two attributes, X1  and X2. Each object of the dataset is represented as a point in the Cartesian graph of X1 and X2 and in both examples we consider ρε=5. In Figure 2 we have a too fine partition for n=8; in fact ρh(1)h(2)=4<ρε=5 by considering the combination of triangular fuzzy sets (A11,A28). In Figure 3 we have a more coarse-grained fuzzy partition for n=7 which should be optimal. A finer partition set does not satisfy the constraint of minimum density of data and a coarser partition set would be under-sampled with respect to the dataset dimension. In this pre-processing phase we start with a value n0 of the parameter n. If the partition set is too fine, we decrement the value of n by 1 until we determine the optimal partition. If n≤2, the dataset is too coarse grained for the fuzzy rules extraction via F-transforms  and the process is stopped (inconsistent dataset), otherwise we use the optimal partition in the successive step of fuzzy rules extraction. Figure 4 gives the schema of the pre-processing phase.Figure 2
Example of too fine uniform fuzzy partition set.Figure 3
Example of correct  uniform fuzzy partition set.Figure 4
Schema of the pre-processing phase.Following [31], in the extraction process we establish fuzzy association rules of the form (2) by calculating the support index as the percentage of objects in the dataset for which the antecedent in the fuzzy association rule (2) is not null, that is, A1h(1)(xi1)·A2h(2)(xi2)·⋯·Arh(r)(xir)>0 for i=1,…,m,  and it is defined as
(6)suph(1),...,h(r)=ρh(1),...,h(r)m,
where m is the dimension of the dataset. Then we calculate the confidence of each rule to evaluate the  precision of a potential fuzzy association rule. Normally the confidence index is given by the  ratio  of the number of the objects in the dataset for which the antecedent and the consequent in the fuzzy association rule (2) are not null with respect to the number of objects in the data set for which the antecedent in the fuzzy association rule (2) is not null. In other words, we use the confidence index proposed in [31] given by(7)conh(1),…,h(k)=∑i=1m(HnF(oi)-Fh(1)h(2)⋯h(k))2·(A1h(1)(pi1)·A2h(2)(pi2)·⋯·Akh(k)(pik))∑i=1m(piz-Fh(1)h(2)⋯h(k))2·(A1h(1)(pi1)·A2h(2)(pi2)·⋯·Akh(k)(pik)),where HnF(oi) is the value of the inverse F-transform applied on the ith data object and Fh(1)h(2)⋯h(k) is the fuzzy transform  component associated with the fuzzy sets  (A1h(1),A2h(2),…,Akh(k)). The multidimensional inverse F-Transform HnF(oi) has been  already used in [31, 35] to model the dependency of the attribute Xz via the predictors X1,…Xk like  Xz=H(X1,…,Xk), where H is a function estimated via  a suitable fuzzy partition of the independent attribute domains. The formula (7) provides an estimate of the grade of precision of a potential fuzzy association rule. If the above index is equal to 1, then the error in the approximation of Xz obtained with the inverse fuzzy transform HnF(oi) is null.In our framework we also use two sub-processes  for extracting the fuzzy association rules. In the first sub-process we use the AprioriGen algorithm to extract the candidate fuzzy association rule with maximal dimension and support greater than or equal to a thresholdsupε. In the successive sub-process, the corresponding inverse fuzzy transform and the confidence index (7) are calculated for each fuzzy association rule candidate. The fuzzy association rule is extracted if the index (7) is greater than or equal  to a threshold  conε and in this case we determine the evaluative linguistic expression ℵ with the component Fh(1)h(2)⋯h(k) of the F-transform corresponding to the fuzzy sets  (A1h(1),A2h(2),…,Akh(k))  (this modality of assignment is described  in Section 4 with many details). In Figure 5 we show the processes used for extracting fuzzy association rules in the form (2).Figure 5
Extraction process of fuzzy association rules.Summarizing, we can say that in the first step the AprioriGen algorithm is applied for determining the set of potential fuzzy association rules; in the successive step the direct, the inverse fuzzy transform, and the index “con” are calculated for each potential fuzzy association rule; ifcon<conε the potential fuzzy association rule is discarded, otherwise it is extracted and inserted like a strong fuzzy association rule in the final set of the rules.


## 3. DiscreteF-Transforms in Several Variables

We firstly deal with functions of one variable and only the discrete case; indeed  we  know that a functionf assumes  determined  values in the set of points P={p1,…,pm}  of  the interval [a, b], a,b≥0. If P is sufficiently dense with respect to the fixed partition {A1,A2,…,An}, that is  for each i=1,…,n  there exists  an index j∈{1,…,m}  such that Ai(pj)>0, we can define the n-tuple [F1,F2,…,Fn] as the discrete F-transform  of  f  with respect to the basic functions {A1,A2,…,An}, where each  Fi   is  given  by
(8)Fi=∑j=1mf(pj)Ai(pj)∑j=1mAi(pj),
for i=1,…,n. We also define the  inverse F-transform of f  with respect to the basic functions {A1,A2,…,An}  by setting
(9)fF,n(pj)=∑i=1nFiAi(pj)
for every j∈{1,…,m}. We have the following theorem [32, Theorem 5].Theorem 1.
Letf(x) be a function assigned on the set P={p1,…,pm}⊆[a,b],a,b≥0.  Then for every ε>0, there exists an integer n(ε) and a related fuzzy partition {A1,A2,…,An(ε)} of  [a,b] such that P is sufficiently dense with respect to {A1,A2,…,An(ε)} and for every  pj∈[a,b],j=1,…,m, the  following inequality holds:
(10)|f(pj)-fF,n(ε)(pj)|<ε.Now we consider functions ink (≥2) variables. The universe of the discourse is given by  the Cartesian product [a1,b1]×[a2,b2]×⋯×[ak,bk]  where [ai,bi](i=1,…,k), ai,bi≥0, is the domain of the ith variable. Let x11,x12,…,xin(i)∈[a1,b1],…,xk1,xk2,…,xkn(k)∈[ak,bk] be  n(1)+⋯+n(k) assigned points, called nodes,  such that xi1=ai<xi2<⋯<xin=bi  for  i=1,…,k.  Furthermore, let {Ai1,Ai2,....,Ain(i)} be a fuzzy partition of [ai,bi]  for  i=1,…,k.  We assume that the function f(x1,x2,…,xk) takes values in the set P={(p11,p12,…,p1k), (p21,p22,…,p2k),…,(pm1,pm2,…,pmk)}, that is, in m points  pj=(pj1,pj2,…,pjk)∈[a1,b1]×[a2,b2]×⋯×[ak,bk]forj=1,…,m. We say that P is sufficiently dense with respect to the chosen partitions {A11,A12,...,A1n(1)},…,{Ak1,Ak2,...,Akn(k)}  if  for each k-tuple {h(1),…,h(k)}∈{1,…,n(1)}×⋯×{1,…,n(k)}, there exists  a  point pj=(pj1,pj2,…,pjk)∈P such  that A1h(1)(pj1)·A2h(2)(pj2)·⋯·Akh(k)(pjk)>0, j∈{1,…,m}.  In this case we define the function Fh(1)⋯h(k) as the (h(1),…,h(k))th component of the  discrete  F-transform of  f with respect to {A11,A12,...,A1n(1)},…,{Ak1,Ak2,...,Akn(k)} given by(11)Fh(1)h(2)⋯h(k)=∑j=1mf(pj1,pj2,…pjk)·A1h(1)(pj1)·A2h(2)(pj2)·⋯·Akh(k)(pjk)∑j=1mA1h(1)(pj1)·A2h(2)(pj2)·⋯·Akh(k)(pjk).Now we define the inverseF-transform of f with respect to the basic functions {A11,A12,...,A1n(1)},…,{Ak1,Ak2,...,Akn(k)} to be the function defined by setting for each pj=(pj1,pj2,…,pjk)∈[a1,b1]×⋯×[ak,bk]:
(12)fn(1)⋯n(k)F(pj1,pj2,…,pj,k)=∑h(1)=1n(1)∑h(2)=1n(2)⋯∑h(k)=1n(k)Fh(1)h(2)⋯h(k)A1h(1)(pj1)·A2h(2)⋯·Akh(k)(pjk)
for j=1,…,m. As in [32], it is possible to prove the following generalization  of  Theorem 1.Theorem 2.
Letf(x1,x2,…,xk) be  a  function assigned on the set of points P={(p11,p12,…,p1k),  (p21,p22,…,p2k),…,(pm1,pm2,…,pmk)}⊆[a1,b1]×[a2,b2]×⋯×[ak,bk], ai,bi≥0. Then for every ε>0, there exist k integers n(1,ε),…,n(k,ε) and related fuzzy partitions
(13){A11,A12,…,A1n(1,ε)},…,{Ak1,Ak2,…,Akn(k,ε)}
such that the set P is sufficiently dense with respect to fuzzy partitions (13) and for every pj=(pj1,pj2,…,pjk)∈P,j=1,…,m, the following inequality holds:
(14)|f(pj1,pj2,…,pjk)-fn(1,ε)n(2,ε)F⋯n(k,ε)(pj1,pj2,…,pjk)|<ε.Strictly speaking, Theorems1 and 2 assure that a discrete (even multi-dimensional) function can be approximated arbitrarily with a suitable inverse (multidimensional) F. transform provided that  a convenient fuzzy partition of the universe of discourse is found via related basic functions. Like pointed out in our previous papers [35, 36, 38–40], unfortunately Theorem 1 (resp. Theorem 2) is not constructive, in the sense that it does not give a tool to find an integer n(ε)(resp., k integers n(1,ε),…,n(k,ε)) and basic functions {A1,A2,…,An(ε)} (resp., (13))  such that (10) (resp., (14)) holds for an arbitrary ε>0.  In  a practical sense, we assume several values of n (resp., n(1),…,n(k)) testing that the set P is sufficiently dense with respect to the related fuzzy partition (resp., partitions)  and  then we use the two indexes (6) and (7)  for controlling the choice of the best fuzzy partition (resp., partitions).


## 4. Fuzzy Association Rules Extraction Process

We use the multi-dimensional direct and inverseF-transform for extracting fuzzy association rules in the form (2) from the dataset represented as in Table 1, where (Ai1,…,Ai,n),i=1,…,k, is the uniform fuzzy partition of the  context wi=[ai,bi] of the given attribute Xi by setting ai=min{p1i,…,pmi}andbi=max{p1i,…,pmi}, with the basic functions (3). For computational simplicity, we assume constant the cardinality of the fuzzy partition of each contexts wi, that is card wi=n,i=1,…,k. Let Fh(1)h(2)⋯h(k) the multi-dimensional direct F-transform defined by (11) be corresponding to the combination (A1h(1),…,Akh(k)) and if pjz is the given (expected) value, then the formula (11) is reduced to the following one:
(15)Fh(1)h(2)⋯h(k)=∑j=1mpjz·A1h(1)(pj1)·⋯·Akh(k)(pjk)∑j=1mA1h(1)(pj1)·⋯·Akh(k)(pjk).In other words,Fh(1)h(2)⋯h(k) is a mean of the values of the attribute  Xz weighted over (A1h(1),…,Akh(k)). Following [18, 29], ℵ is given by the combination of one of the linguistic following hedges: Ex (extremely), Si (significantly), Ve (very), empty hedge, ML (more or less), Ro (roughly), QR (quite roughly), VR (very roughly) with one of the following expressions: Sm (small), Me (medium), Bi (big). Each linguistic hedge is modelled with a continuous function νabc defined by means of three parameters a, b, c, with 0≤ a<b<c≤1, as
(16)νabc(y)={0if0≤y<a(y-a)2(b-a)(c-a)ifa≤y≤b1-(c-y)2(c-b)(c-a)ifb<y<c1if1≥y≥c.The fuzzy sets of each combination of  linguistic hedges with one of the expressions “Small,” “Medium,” “Big” are defined by(17)Int(〈linguistichedge〉small)=νabc(LH(x)),Int(〈linguistichedge〉medium)=νabc(MH(x)),Int(〈linguistichedge〉big)=νabc(RH(x)),
where the locution “Int” stands for the intensity of the linguistic expression and
(18)LH(x)={0.5-x0.5if0≤x≤0.50if1≥x>0.5,MH(x)={x0.5if0≤x≤0.51-x0.5if1≥x>0.5,RH(x)={0if0≤x≤0.5x-0.50.5if1≥x>0.5.The extension of a linguistic expression is obtained  via a simple linear transformation defined, considering the contextwz=[az,bz] of the attribute Xz, as
(19)x=(s-az)(bz-az),s∈[az,bz].The linguistic expressionℵ represents a weighted mean of the values of the attribute Xz, in which the weights are given by the membership values of the basic functions. In Figure 6 we show the three linear functions LH, MH, RH.Figure 6
The functions LH, MH, and RH.As example, in Figure7 (resp., Figure 8) we show the fuzzy sets “Ro small,” “Ro medium,” and “Ro big” (resp., “Ex small,” “Ex medium” and “Ex big”) determined by setting a=0.49,b=0.5,c=0.51(resp.,a=0.03,b=0.5,c=0.96). In other words, the experts can assign specific labels to the linguistic expressions which are representative of their reasoning, or can use the same label for more  fuzzy sets. For example, to the fuzzy set “Ex medium” they can associate the label "perfectly on the average". In accordance to  [18, 29], we define a partial ordering “≤” in the set of the linguistic hedges as
(20)Ex〈exp〉≤Si〈exp〉≤Ve〈exp〉≤emptyhedge〈exp〉≤ML〈exp〉≤Ro〈exp〉≤QR〈exp〉≤VR〈exp〉,
where 〈exp〉 is one of the following expressions: “small,” “medium” or “big”. As mentioned above, if we obtain the same membership degree for two or more linguistic expressions, we assign to ℵ the linguistic expression of the “lowest fuzzy set,” which is the sharpest evaluative expression with respect to the partial ordering  “≤.” For example, if we have  x=1, we assign the linguistic expression “Ex big” to ℵ because “Ex big” is the lowest fuzzy set among all the fuzzy sets “〈hedge〉 big” (like “Ex big” and “Ro big”)  assuming the value 1.  In order to use the formulae (18), the dataset has to be sufficiently dense with respect to the chosen fuzzy partitions of basic functions.Figure 7
Ro small, Ro medium, and Ro big(a=0.49,b=0.5,c=0.51).Figure 8
“Ex small,” “Ex medium,” and “Ex big”(a=0.03,b=0.5,c=0.96).We set the optimal value of the parameter n using the pre-processing phase schematized in Figure4, in which we control that the number of data points pj=(pj1,pj2,…,pjr) such that A1h(1)(pj1)·A2h(2)(pj2)·⋯·Akh(r)(pjr)≥ρε for each combination (A1h(1),A2h(2),…,Arh(r)), where ρε is a prefixed threshold otherwise the cardinality  n of  each fuzzy partition is decremented and the process is iterated. In this mode we impose the fulfilment of the sufficient density of the data points with respect to the fuzzy partition’s set and we are sure that the fuzzy partition created is too coarse grained. We set the initial value of the cardinality of the fuzzy partitions to n0.The pseudocode of the algorithm of the pre-processing phase is reported below.(1)
Setn∶=n0(2)
Set the minimal point data density(3)
For each combination(A1h(1),A2h(2),…,Ar,h(r)),
(a)
calculate the valueρh(1),...,h(r) defined in (4)(b)
Ifρh(1),...,h(r)<ρε, then
(i)
n∶=n-1(ii)
ifn<2 exit (-1)(iii)
exit for(c)
end if(4)
Next(5)
ReturnnThe successive extraction process of the fuzzy association rules is composed by two sub-processes, schematized in Figure5. In the first sub-process we use the AprioriGen algorithm for selecting the candidate fuzzy association rule and for choosing the antecedents  with maximal dimension and support greater than or equal to the  threshold  supε. The AprioriGen algorithm is composed by two steps: the join and the pruning step. In the join step an itemset is generated and formed by k attributes merging two (k-1)-itemsets having the same first (k-2) attributes. In the pruning step all the elements not having all the first (k-1) subsets as great are deleted. In the successive sub-process the fuzzy association rule is extracted if the grade of confidence (7) is greater than or equal to the threshold conε and it is calculated via the inverse F-transform [31, 35] given from the following formula (similar to (12)):
(21)HnF(pj)=∑l(1)=1n∑l(2)=1n…∑l(k)=1nFl(1)l(2)…l(k)·A1l(1)(pj1)·⋯·Akl(k)(pjk),
obtained considering all the multi-dimensional F-transform components Fl(1)l(2)⋯l(k) of the combination of basic functions (A1l(1),...,Akl(k))(l(i)=1,…,n). If the confidence index (7) is greater or equal than the threshold conε,  the F-transform component correspondent to the basic functions (A1l(1),...,Akl(k)) in the antecedent of the potential fuzzy association rule is used for determining the linguistic expression of the consequent ℵ of the final fuzzy association rule. If  we obtain  the same membership degree for two or more linguistic expressions, we assign the linguistic expression of the lowest fuzzy sets to ℵ according to the above partial ordering “≤.” The related pseudo-code is reported below.(1)
Setsupε(2)
Apply AprioriGen algorithm(3)
Return the potential fuzzy association rule set(4)
Next(5)
For each combination(A1l(1),...,Akl(k)), calculate the direct F-transform component Fl(1)l(2)...l(k)(6)
Next(7)
For each data objectpj, calculate the inverse F-transform HnF(pj)(8)
Next(9)
Calculate the confidence index (7) and call it as “con”(10)
Ifcon≥conε, the F-transform component Fl(1)l(2)...l(k) is to be assigned to ℵ(11)
End if(12)
Insert the fuzzy association rule in the fuzzy association rule set(13)
Next(14)
Return the fuzzy association rule setIn Section5 we present some results  obtained from datasets relative to the 2001 census ISTAT (Istituto Nazionale di Statistica) concerning the municipalities of the district of Naples (Italy).


## 5. A Simulation Result

We consider a first dataset of  the last ISTAT census database of the municipalities of the district of Naples (Italy). This dataset is obtained by extracting the information about residents with job and families. We use the following notation:X1 stands for census code, X2 stands for the percentage of not employed, X3 for the  percentage of managers and professional men, X4 stands for the percentage of women employed, X5 stands for the percentage of graduate employed, X6 stands for the percentage of residential houses of property, X7 stands for the percentage  of families with two or more houses of propriety, and finally X8 stands for the percentage of families with more than two sons. In the pre-processing phase we set ρε=5, obtaining n=5 as optimal cardinality partition of each attribute. Each fuzzy partition is uniform and constructed by using five triangular fuzzy sets of the form (3). We set both values of supε and conε to 0.1. The domain’s expert has suggested the values reported in Table 3 for the parameters a, b, c.Table 3
Parameters for  fuzzy sets associated to the linguistic expressions.
Linguistic expression
a
b
c
Ex〈exp〉
0.03
0.50
0.96
Si〈exp〉
0.10
0.50
0.85
Ve〈exp〉
0.25
0.50
0.75
Emptyhedge〈exp〉
0.30
0.50
0.70
ML〈exp〉
0.35
0.50
0.65
Ro〈exp〉
0.40
0.50
0.60
QR〈exp〉
0.45
0.50
0.55
VR〈exp〉
0.49
0.50
0.51After the extraction process we obtain four fuzzy association rules (cfr. Table4). To verify the reliability of these results, we report the values (as percentages) of the confidence index given by (7), obtained for each basic function of the attribute Xz,z=2,4,6,8, in the consequent of the extracted fuzzy association rules in Table 5. The linguistic expression in the consequents of the fuzzy association rules in Table 4 can be roughly interpreted as a mean of the fuzzy sets  Az1,…,Az5 weighted for the value of the confidence index. In Table 5 we report  the percentages of the inclusion areas of each basic function with the fuzzy set associated to the linguistic expression in the consequent with respect to the area of the basic function. Each inclusion area is the area given from the intersection between the basic function and the fuzzy set.Table 4
Fuzzy rules extracted from  the resident dataset.
id
Fuzzy association rule
sup
con
R1
If (X4 is  A42) ~F (mean X2  is Ve small)
0.44
0.23
R2
If (X4 is  A42) ~F (mean X6  is Ro small)
0.44
0.23
R3
If (X2  is A22)  and (X5  is  A54) ~F (mean  X4  is Ve big)
0.23
0.15
R4
If (X2  is A24) and (X6  is A63) ~F (mean X8  is QR small)
0.21
0.15Table 5
Percentages of the confidence index for the fuzzy association rules.
Fuzzy association  rule
X
z
Percentages
A
z
1
A
z
2
A
z
3
A
z
4
A
z
5
R1
X
2
98
53
5
0
0
R2
X
6
97
47
1
1
0
R3
X
4
0
1
6
55
99
R4
X
8
97
48
1
0
0From the comparison of Tables5 and 6, the confidence index is approximately similar to the correspondent percentage of inclusion. In Figure 9 (resp., Figure 10) we show graphically the inclusion areas for the association rule R2 (resp., R3). The fuzzy set  associated with the linguistic expression in the consequent is  in orange colour. Then we can state that the fuzzy association rules extracted in Table 4 can be interpreted as a coarse-grained fuzzy association rules  in which the linguistic expression in the consequent approximates a mean of finer fuzzy set given by the basic functions (3) for the attribute Az. This approximation depends clearly on the the values of a, b, c.Table 6
Percentages of the confidence  index for the fuzzy association rules.
Fuzzy association rule
Fuzzy set  inthe consequent
Percentages of inclusion
A
z
1
A
z
2
A
z
3
A
z
4
A
z
5
R1
Ve small
100
54
4
0
0
R2
Ro small
100
51
1
0
0
R3
Ve big
0
0
4
54
100
R4
Qr small
100
50
0
0
0Figure 9
Inclusion areas for the fuzzy association ruleR2.Figure 10
Inclusion areas for the fuzzy association ruleR3.The next dataset consists of attributes describing characteristics of residential buildings and houses. The notation concerning the attributes is the following:X1 stands for census code, X2 stands for percentage of residential buildings constructed during the last 5 years, X3 stands for percentage of residential buildings with maintenance during the last 5 years, X4 stands for mean year of  last maintenance, X5 stands for  mean number of residential houses, X6 stands for mean surface of residential houses, X7 stands for percentage of residential houses whit central heating.  In the pre-processing phase we set ρε=5, obtaining n=6 as optimal cardinality partition of each attribute. In Figure 11 we show the six basic functions of the form (3) which give  the uniform fuzzy partition of each context. After the extraction process we obtain three fuzzy association rules (cfr. Table 7).Table 7
Fuzzy extraction rules extracted from the residential buildings dataset.
Id
Fuzzy association rule
Support
Confidence index
R1
If (X2 is A26) ~F (mean  X7 is Si big)
0.19
0.58
R2
If (X2  is A22) ~F (mean  X3 is Ro mean)
0.33
0.27
R3
If (X5 is A52) and (X6 is  A65) ~F (mean  X2 is QR small)
0.14
0.17Figure 11
Basic functions used for the residential buildings dataset.Then  we calculate the confidence index (7) for all the antecedents of the fuzzy association rules extracted in Table 6. In Table 8 we report as percentages the values  of the confidence index obtained for each basic function of the attribute Xz in the consequent of the extracted fuzzy association rules.Table 8
Percentages of the confidence  index for the fuzzy association rules.
Fuzzy association rule
X
z
Confidence index
A
z
1
A
z
2
A
z
3
A
z
4
A
z
5
A
z
6
R1
X
7
0
0
1
20
78
97
R2
X
3
0
35
96
95
31
1
R3
X
2
96
75
6
1
0
0In Table9 we report  the inclusion areas of each basic function with the fuzzy set associated to the linguistic expression in the consequent with respect to the area of the basic function.Table 9
Percentages of  inclusion obtained for the fuzzy association rules.
Fuzzy association rule
Fuzzy set  in the consequent
Percentages of inclusion
A
z
1
A
z
2
A
z
3
A
z
4
A
z
5
A
z
6
R1
Si big
0
0
0
19
82
100
R2
Ro mean
0
32
100
100
32
0
R3
QR small
100
74
5
0
0
0By comparing Tables8 and 9, we can state that also for this dataset the linguistic expression in the fuzzy association rules can be roughly interpreted as a mean of the fuzzy sets  Az1,…,Az6 weighted from the value of the confidence index.  In Figure 12 (resp., Figure 13) we show graphically the inclusion areas for the association rule R1 (resp.,  R2). The fuzzy set  associated with the linguistic expression in the consequent is represented in orange colour.Figure 12
Inclusion areas for the fuzzy association ruleR1.Figure 13
Inclusion areas for the fuzzy association ruleR2.The results confirm that theF-transforms can be used  to extract  fuzzy association rules  in the form  (2) in a coarse-grained view from datasets. The comparison of the results  suggests that the linguistic evaluation used for the attribute Az in the consequent and calculated, using the inverse F-transform, can be estimated as a weighted mean of the finer fuzzy sets composed from  basic functions  (4),  where the weights are given from confidence index (7).


## 6. Conclusions

We propose the usage of multi-dimensionalF-transforms which allow to extract fuzzy association rules from datasets in a coarse-grained form. Our approach allows always to control that the set of the assigned points is sufficiently dense respect to the basic functions of the partition and we use  the support and confidence indexes for selecting and analyzing fuzzy association rules.This method can be used in data mining processes in which a fine exploration of fuzzy association rules between attributes in the datasets is not necessary. In a future work the authors intend to explore the performances of these methods for very large datasets and compare the results with the ones obtained by using other well-known existing methods such as clustering- and evolutionary-based ones.



---

*Source: 258476-2012-10-04.xml*