METHOD FOR PROVIDING WITH A SCORE AN OBJECT, AND DECISION-SUPPORT SYSTEM

Information

  • Patent Application
  • 20130173520
  • Publication Number
    20130173520
  • Date Filed
    September 08, 2011
    13 years ago
  • Date Published
    July 04, 2013
    11 years ago
Abstract
The present invention is related to a method for providing with a score an object represented by a target item from a multidimensional space, said score being representative of the probability that the object satisfies a given binary property, said method being performed in a computer environment comprising processing means connected to memory means, comprising the following steps: (a) providing and storing in the memory means data representative of a set of sample items from said multidimensional space, each sample item being associated with a multi-value label representative of the probability that an object represented by said sample item satisfies the given binary property; (b) storing in the memory means data representative of the target item; (c) with said processing means, generating and storing in said memory means data representative of an oriented binary tree with a given height, said binary tree being defined by a plurality of nodes having index values in relation with their position in the binary tree, said nodes comprising a root node, intermediate nodes and terminal nodes, and each node being associated with a subspace of the multidimensional space according to the following rules: if the node is a root node, the associated subspace is the whole multidimensional subspace; if the node is a non-terminal node, its associated subspace is split into two disjoint subspaces ε+ and ε− and respectively associated with a first child node and a second child node of said non-terminal node, said splitting being performed by the processing unit according to a classifier minimizing the number of sample items associated with a first given label value to belong to the subspace ε+, and/or the number of sample items associated with a second given label value to belong to the subspace ε−, said second label value being representative of a higher probability that an object represented by said sample item satisfies the given binary property than said first given label value; (d) with said processing means, associating with at least each terminal node of the binary tree a score depending on its index value in the binary tree, and storing the score value in the memory means; (e) with said processing means, identifying a target node, the target node being a teminal node whose associated subspace comprises the target item; and (f) outputting the score value associated with said target node. The invention is also related to a decision-support system.
Description
FIELD OF THE INVENTION

The field of this invention is that of knowledge-based systems supporting decision-making activities.


More particularly, the invention relates to a method for providing with a score an object.


BACKGROUND OF THE INVENTION

Many activities in various fields, from finance to medicine, require evaluating a risk and taking a decision: it may be the decision to make an investment, to begin to treat a patient for a given pathology, to decide whether a document is relevant, to reject a product as defective, or simply to choose between two or more possibilities.


A family of computer tools, named “decision support systems” has the objective to help to take decisions by analysing massive data. For example, knowing a large number a financial data, such a system try to establish whether an investment should be made.


Methods of supervised classification, located at the interface between mathematics and computer science, propose to class the cases to be tested by associating them a binary label, such as “good payer” versus to “insolvent payer” “relevant documents” and “irrelevant document,” patient “healthy” to “ill” or product “conform” to “not conform”. However, such methods only attempt to predict the most likely label for a case. The risk of doing a mistake is only somewhat reduced.


Methods of scoring/ranking propose another approach: the aim of such methods is to learn how to sort/order the cases, so that a large number of “good payers” or “relevant documents” are at the top of the list with maximum likelihood.


The most natural way of ordering multivariate observations is to use a scoring function, assigning to each observed case (new or not) a numerical value—a “score”—interpretable as a degree of risk or relevance. The quality of this scoring function is usually assessed using a functional criterion, namely a Receiver Operating Characteristic (ROC) curve, which allows a very visual display of true positive rate in relation to the rate of false positives. The Recall-Precision curve widely used in information retrieval is a similar approach to visualize the results of discrimination, when the rate of positive label data is very high or very low.


While many powerful algorithms (CART, SVM, boosting, random forests) of supervised classification of high dimensional data are already known, no algorithm of the “machine-learning” type was far dedicated to the problem of scoring. In most applications, the approach is to use conventional statistical methods, such as logistic regression (linear) or linear discriminant analysis, based primarily on manual data preprocessing, such as modelling distribution of the observations, a truncation of information, etc. . . . These approaches also face the problem caused by the exponential increase in data volume associated with adding extra dimensions (“curse of dimensionality”). Besides, the binary classification methods sometimes incorrectly use the “distance to the margin” as score.


There is a consequently a need for an improved method of scoring based on machine-learning.


SUMMARY OF THE INVENTION

For these purposes, the present invention provides a method for providing with a score an object represented by a target item from a multidimensional space, said score being representative of the probability that the object satisfies a given binary property, said method being performed in a computer environment comprising processing means connected to memory means, comprising the following steps:

    • (a) providing and storing in the memory means data representative of a set of sample items from said multidimensional space, each sample item being associated with a binary label indicating if an object represented by said example item satisfies or not the given binary property;
    • (b) storing in the memory means data representative of the target item;
    • (c) with said processing means, generating and storing in said memory means data representative of an oriented binary tree with a given height, said binary tree being defined by a plurality of nodes having index values in relation with their position in the binary tree, said nodes comprising a root node, intermediate nodes and terminal nodes, and each node being associated with a subspace of the multidimensional space according to the following rules:
      • if the node is a root node, the associated subspace is the whole multidimensional subspace;
      • if the node is a non-terminal node, its associated subspace is split into two disjoint subspaces ε+ and ε respectively associated with a first child node and a second child node of said non-terminal node, said splitting being performed by the processing unit according to a classifier minimizing the number of sample items associated with a first given label value to belong to the subspace ε+, and/or the number of sample items associated with a second given label value to belong to the subspace ε, said second label value being representative of a higher probability that an object represented by said sample item satisfies the given binary property than said first given label value;
    • (d) with said processing means, associating with at least each terminal node of the binary tree a score depending on its index value in the binary tree, and storing the score value in the memory means;
    • (e) with said processing means, identifying a target node, the target node being a terminal node whose associated subspace comprises the target item; and
    • (f) outputting the score value associated with said target node.


This method enables superior performances, highlighted through extensive simulations, which arise from the fact that it actually solves the optimization problem posed functional: it builds a recursive scoring function that converges to an adaptive approximation increasingly close to the optimal ROC curve.


In addition, proposed techniques of resampling (bootstrap) enable to easily obtain large amounts of samples, leading to very reliable scoring rules. Besides, the nonparametric aspect of the approach allows dealing with data often poorly adapted to Gaussian distributions.


But, the most important point is that this method allows generating scoring rules that can easily interpreted by a non-statistician. What is called a Scoring rule here is a combination of simple binary rules for which it is possible to quantify the impact on each attribute or component of the vector of observation.


For example, in the case of medical diagnosis, when the observation vector consists of a set of measures of blood parameters, scoring rules generated will result in the form of value ranges for each parameter, defining the two categories “healthy patient” and “sick patient”. The number of categories may of course be greater than two.


Finally, these rules can be easily visualized as an oriented binary tree where the most interesting parameters appearing in the top part of the tree, so as to be directly understandable by a non-statistician user.


Preferred but non limiting features of the present invention are as follow:


the index value of each node comprises a pair of values, the first index value representing the depth of the node in the binary tree, and the second index value representing the position of the node at a given level of depth in the tree;


the index of the root node is (0,0), and the indexes of the first and the second child nodes of a non-terminal node whose index is (d,k) are respectively (d+1,2k) and (d+1,2k+1);


the score associated with a node whose index is (d,k) is 2D (1−k/2d), D being the height of the binary tree;


said splitting is performed by minimizing with said processing means a weighted combination of the number of sample items associated with the first given label value to belong to the subspace ε+, and the number of sample items associated with the second given label value to belong to the subspace ε;


the weights in said weighted combination are respectively the rate of sample items associated with the second given label value in the subspace being split into disjoint subspaces ε+ and ε, and the rate of sample items associated with the first given label value in the subspace being split into disjoint subspaces ε+ and ε.


said splitting is performed by minimizing by processing means the value of









L
^


ɛ
,
ω




(

ɛ
+

)


=



2
n



(

1
-
ω

)






i
=
1

n



1


{



X
i



ɛ
+


,


Y
i

=

ξ
2



}




+


2
n


ω





i
=
1

n



1


{



X
i



ɛ
+


,


Y
i

=

ξ
1



}









where:


(X1,Y1) . . . (Xn,Yn) is the set of sample items associated with their binary label, and


ω is the rate of sample items associated with the second given label value in the subspace being split into disjoint subspaces ε+ and ε,


ξ1 is the first label value,


ξ2 is the second label value.


the number of sample items and/or the number of dimensions of associated subspace to take into account during said splitting is reduced;


said multidimensional space is an infinite-dimensional space, said splitting comprising an approximation of sample items into finite-dimensional items;


the method comprises a step (c1) of selecting by said processing means a subtree of the formed binary tree and replacing the binary tree by said subtree, wherein said step (c1) follows step (c);


a Receiver Operating Characteristic curve is built by the processing means at step (c1) for each possible subtree, and stored is the memory means, the selected subtree being the subtree determined by the processing means as having the highest Area Under its associated Receiver Operating Characteristic curve;


a Receiver Operating Characteristic curve is built by the processing means at step (c1) for each possible subtree, and stored is the memory means, the selected subtree being the subtree determined by the processing means as having the highest Complexity-Penalized Area Under its associated Receiver Operating Characteristic curve;


step (c1) comprises a cross-validation test performed by the processing means on the set of possible subtrees;


the multi-value label is a binary label indicating if an object represented by said example item satisfies or not the given binary property, the first label value being the label value associated with the sample items not satisfying the given binary property, and the second label value being the label value associated with the sample items satisfying the given binary property;


the multi-value label comprises at least three values (1≦ξ≦Ξ), the label value being ascending with the probability of satisfying the given binary property, an oriented binary tree being formed and stored for each of the







Ξ


(

Ξ
-
1

)


2




possible pairs (ξ12) of label values so that ξ12, the first label value being ξ1 and the second label value being ξ2;


the multi-value label comprises at least three values (1≦ξ≦Ξ), the label value being ascending with the probability of satisfying the given binary property, an oriented binary tree being formed and stored for each of the Ξ−1 possible pairs (ξ12) of label values ξ21+1, the first label value being ξ1 and the second label value being ξ2;


a plurality of sets of sample items are generated and stored at step (a), an oriented binary tree being formed and stored for each set of sample items;


each set of sample items is a bootstrap replicate generated by said processing means by resampling a main set of sample items;


the method comprises a step (d1) of aggregating the plurality of formed binary trees and determining a best scoring rule, said step (c1) following step (c);


step (d1) comprises the following sub-steps:

    • for each formed binary tree, provide and store in memory means the partition of the multidimensional space formed by the subspaces associated with the terminal nodes;
    • aggregating by said processing means these partitions to form a common subpartition;
    • for each formed binary tree, providing and storing a scoring rule by scoring each part of the common subpartition;
    • for each scoring rule, providing and storing a ranking of the parts scored according the scoring rule;
    • determining by said processing means a median ranking among the plurality of ranking, and storing the median ranking in said memory means; and
    • selecting by said processing means as the best scoring rule the scoring rule associated with the median ranking;


the sub-step of determining a median ranking comprises calculating by said processing means a dissimilarity rate between each pair of rankings, and selecting by said processing means as the median ranking the ranking which shows the lowest dissimilarity rate with the other rankings;


median ranking is a ranking custom-character* such that










m
=
1

N



δ


(



*



,


m



)



=


min







m
=
1

N



δ


(



,


m



)








where:

custom-character1 . . . custom-characterN are the rankings, and


δ(custom-character1, custom-character2) is the dissimilarity rate between a pair of rankings;

    • the dissimilarity rate is defined as







δ


(



1



,


2



)


=


1
K






i
=
1

K




(



R


1




(

C
i

)


-


R


2




(

C
i

)



)

2







where:


Ci . . . CK are the parts of the common subpartition, and


Rcustom-character1 (Ci) is the rank of the part Ci among the other parts of the common subpartition according to the ranking custom-character1;


the dissimilarity rate is defined as







δ


(



1



,


2



)


=


1
K






i
=
1

K







R


1




(

C
i

)


-


R


2




(

C
i

)











where:


Ci . . . CK are the parts of the common subpartition, and

custom-character(Ci) is the rank of the part Ci among the other parts of the common subpartition according to the ranking custom-character1;


the dissimilarity rate is defined as







δ


(



1



,


2



)


=



2

K


(

K
-
1

)








i

j




1


{



(



R


1




(

C
i

)


-


R


1




(

C
j

)



)

·

(



R


2




(

C
i

)


-


R


2




(

C
j

)



)


<
0

}




+


1

K


(

K
-
1

)








i

j




1


{




R


1




(

C
i

)


=


R


1




(

C
j

)



,



R


2




(

C
i

)





R


2




(

C
j

)




}




+


1

K


(

K
-
1

)








i

j




1


{




R


1




(

C
i

)





R


1




(

C
j

)



,



R


2




(

C
i

)


=


R


2




(

C
j

)




}









where:


Ci . . . CK are the parts of the common subpartition, and

custom-character(Ci) is the rank of the part Ci among the other parts of the common subpartition according to the ranking custom-character1.


In a second aspect, the invention provides a decision-support system, comprising processing means, input means, output means, memory means, the processing means being configured to implement a method according to the first aspect of the invention.





BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects, features and advantages of this invention will be apparent in the following detailed description of an illustrative embodiment thereof, with is to be read in connection with the accompanying drawings wherein:



FIG. 1 represents an example of a binary tree used in a method according to the first aspect of the invention;



FIG. 2 represents an example of a binary subtree used in an embodiment of a method according to the first aspect of the invention;



FIG. 3 is a graphic of an example test Receiver Operating Characteristic (ROC) curve of a method according to the first aspect of the invention;



FIG. 4 is a diagram representing steps of an embodiment of a method according to the first aspect of the invention;



FIG. 5 represents an example of a binary subtree characterizing the largest common subpartition induced by tree-structured partitions, used in an embodiment of a method according to the first aspect of the invention;



FIG. 6
a represents an example of a set of sample items used to illustrate the method according to the first aspect of the invention;



FIG. 6
b is a graphic representing the bi-level sets of the regression function associated with the example of FIG. 5a;



FIG. 6
c is a graphic representing the bi-level sets of a scoring function learnt from the example of FIG. 5a using the method according to the first aspect of the invention;



FIG. 6
d is a graphic representing the optimal ROC curve and the test ROC curve of the scoring function of FIG. 5c.





DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT

Referring to the drawings, a method according to a preferred embodiment of the invention will now be described.


Preliminaries

The probabilistic framework is exactly the same as the one in standard binary classification. Is denoted for example by (X,Y) a pair of random variables where Yε{+1;−1} is a binary label and X is an item modeling some observation for predicting Y, taking its values in a feature space χ⊂Rq of high dimension. Thus, each couple (X,Y) represents an object, this object satisfying or not a given binary property. If the binary property is satisfied, Y=+1. Else, Y=−1. For example, as explained, in a context of medical diagnosis, the object is a patient, and the binary property is “the patient is healthy”. The item associated with a patient may be a tuple comprising the body temperature of the patient, its age, and the concentration of given antibodies and/or lymphocytes in its blood.


It is to be noted that X may be a (possibly multivariate) sampled curve (for example time-dependant data, i.e. X=X(t)), in other words an infinite-dimensional item. In this “functional” version, the input curves shall be projected onto a finite-dimensional subspace.


In the case of three or more categories, a combination of binary properties may be used. For example, to manage three categories “the patient is healthy”, “the patient has disease A” and “the patient of disease B”, A first label Y1 indicates whether the patient is healthy of not, and in the case Y1=−1 a second label Y2 indicates whether the disease is A or B. These two binary properties can be processed separately. Thus, every multiple classification problem can be reduced to one or more binary classification problem.


Alternatively, Y may be a multi-value label (Yε{1, . . . , Ξ}), representing an ordered gradation of confidence of achievement with respect to the binary property. In particular, if Ξ=3, Y=2 may correspond to a state of uncertainty (“maybe”) between the two certain states (if the binary property is to be satisfied, Y=3. Else, if the property is to be unsatisfied, Y=1). As an example, some medical benchmarks of illness take five values, from 0: “not diseased” to 4: “seriously ill”. An embodiment of the method according to the invention can be used in the case of such multi-class as it will be explained below.


For the sake of clarity, the following description will be essentially related to a single binary classification problem, but the invention is not limited to this case, and a man skilled in the art would known how to adapt it to any multiple classification problem.


So, the value of the binary label Y of an object is generally unknown, and the aim of the invention is to help to make decisions depending on the value of Y, knowing its item X, named the target item, and knowing the value of Y for a set of sample items (X1 . . . XK). To this end, the method according to the invention proposes to provide with a score s the object represented by the target item X, said score s being representative of the probability that the object satisfies the given binary property, in other words the probability that Y=+1.


This method is performed in a computer environment comprising processing means connected to memory means. For example, the memory means are a hard drive of a computer, and the processing means are a processor of the computer.


Scoring—Data Input

First, data representative of the target item and representative of a set of sample items has to be stored in the memory means. Indeed, as already explained, the method according to the invention is based on machine-learning. So, the score function that will provide with a score the object represented by the target item is learnt from the set of sample item.


This set has to be provided. In the medical example, this set may consist in health parameters of various patients which are known to be healthy (Y=+1), and health parameters of various patients which are known to be ill (Y=−1).


The number of sample items is important. The more they are numerous, the more the score will be accurate. Moreover, they have to be very exhaustive, and cover the largest subspace possible of the whole multidimensional space. For example, if all the patients whose health parameters are used as sample items have the same body temperature of 37° C.-38° C., it will be difficult to reliably score patients whose body temperature is above 39° C.


Scoring—Binary Ranking Trees

From the set of sample items stored in the memory means, the processing means generated an oriented binary tree. Indeed, the method according to the invention focuses on a specific family of piecewise constant scoring function, those defined by a binary ranking tree namely.


Consider first a complete, left-right oriented, rooted binary tree TD, with a finite depth D≧1. Every non-terminal node of TD is associated with a subset C⊂χ and has two child nodes: a left sibling and a right sibling respectively associated with two subsets Cleft⊂C and Cleft=C/Cleft, with χ as the subset associated with the root node by convention. Such a (complete) ranking tree is called a master ranking tree, and is represented for example by the FIG. 1.


This way, at any level of the binary tree, the associated subspaces forms a partition of χ. By giving index values to each node in relation with its position in the binary tree, it is possible to associate with at least each terminal node of the binary tree a score depending on its index value in the binary tree. For example, the score may increase when travelling the tree form right to left. Advantageously, the index value of each node comprises a pair of values, the first index value representing the depth of the node in the binary tree, and the second index value representing the position of the node in the binary tree, for example (d,k), with dε{0, . . . , D−1} and kε{0, . . . 2d−1}. In this case, the index of the root node is (0,0) and the index of the first and the second child nodes of a non-terminal node whose index is (d,k) are respectively (d+1,2k) and (d+1,2k+1). Advantageously, with such indexation, the scoring function may be chosen as:








s
T



(
x
)


=





(

d
,
k

)

:

terminal





nodes





of





T






2
D




(

1
-

k
/

2
d



)

·
1



{

x


C

d
,
k



}







In other words, the score associated with a node whose index is (d,k) is 2D(1−k/2d), i.e. terminal nodes are scored from 1 to 2D. Such scoring function is illustrated on FIG. 1.


As the terminal nodes of a binary tree forms a partition of χ, the target item shall belong to the subspace associated with one and only one terminal node, said terminal node corresponding to a defined score.


Scoring—Splitting of Associated Subspaces

The key to have a reliable scoring function is the construction of subspaces associated with nodes. The tree is built from the root node, and then level by level up to the height D is reached. The generated nodes are associated with an index value and a subspace, and stored in memory means.


The generation of associated subspaces follows two rules. First, as already explained, the subspace associated with the root node is the whole multidimensional space χ. Then, if a node is a non-terminal node, its associated subspace is split into two disjoint subspaces ε+ and ε which are respectively associated with a first child node and a second child node of said non-terminal node, said splitting being performed by the processing unit according to a classifier minimizing the number of sample items associated with a first given label value (ξ1ε{1 . . . Ξ}) to belong to the subspace ε+, and/or the number of sample items associated with a second given label value (ξ2ε{1 . . . Ξ}, ξ12, in other words the second label value being representative of a higher probability that an object represented by said sample item satisfies the given binary property than said first given label value) to belong to the subspace ε.


As already mentioned, for sake it will be considered that the label is a binary label, i.e. Ξ=2. Consequently, ξ1=−1 (sample items associated with this label value do not satisfy the given binary property) and ξ2=+1 (sample items associated with this label value satisfy the given binary property).


In every case, the probability of satisfying the given binary property is higher for an item belonging to the subspace ε+ than for an item belonging to the subspace ε. If the first child node is the left sibling and the second child node is the right sibling, the more the left a node will be, the higher its associated score will be.


The problem of how to find the best subspaces ε+ and ε is equivalent to known binary classification problems. Indeed, advantageously the function which has to be minimized is a weighted combination of the number of sample items which do not satisfy the given binary property to belong to the subspace ε+, and the number of sample items which do satisfy the given binary property to belong to the subspace ε, the weights in said weighted combination being for example respectively the rate of sample items which satisfy the given binary property in the subspace being split into disjoint subspaces ε+ and ε, and the rate of sample items which do not satisfy the given binary property in the subspace being split into disjoint subspaces ε+ and ε, i.e. the rate of negative sample items in the subspace C:








α
^



(
C
)


=



1
n






i
=
1

n



1


{



X
i


C

,


Y
i

=

-
1



}




=
ω





and the rate of positive sample items in the subspace C








β
^



(
C
)


=



1
n






i
=
1

n



1


{



X
i


C

,


Y
i

=

+
1



}




=

1
-
ω






wherein n(C)=n(̂(C)+{circumflex over (β)}(C)).


In a such case, an expression of the function to minimize may be:









L
^


ɛ
,
ω




(

ɛ
+

)


=



2
n



(

1
-
ω

)






i
=
1

n



1


{



X
i



ɛ
+


,


Y
i

=

+
1



}




+


2
n


ω





i
=
1

n



1


{



X
i



ɛ
+


,


Y
i

=

-
1



}









In other words, {circumflex over (L)}ε,ω+)=(rate of positive)×(rate of false negative)+(rate of negative)×(rate of false positive). Methods of supervised classification as for example CART, SVM, neuronal networks, etc., may be carried out by the processing means to quickly and efficiently find a subspace ε+ (and so on a subspace ε) minimizing such an expression.


This splitting has not to be perfect, but efficient. A too precise splitting would describe random error or noise instead of real relationships between X and Y, and would excessively exaggerate minor fluctuation in the data: such a problem is called overfitting. To prevent it, the number of degrees of freedom is limited when splitting, leading to a simpler partition of subspace, and an increased learning speed.


Advantageously, the number of sample items taken into account and/or the number of dimensions of the space are voluntary reduced while deepening into the binary tree. For example, from one level to the next, only 10% of the sample items may be reused. Such technique, called data randomization, is another way to prevent overfitting, and then to improve efficiency in case of numerous dimensions.


For example, in some cases of data mining accuracy scoring, objects are webpages. The number of dimension may exceed ten thousand, while the number of sample items may exceed several billions. Risks of overfitting are very high.


Filtering

In case of “functional” data X (as explained infinite-dimensional item) in input, “filtering” or “regularization” methods may help providing projections, i.e. transforming infinite-dimensional items into finite-dimensional items more easily usable in the method according to the invention. To this end, mathematical operations called transforms (for example Fourier transforms, Laplace transforms, or in particular Wavelet transforms which are especially preferred) are effective for helping expressing functional data into an orthogonal basis of functions.


Wavelet transforms are well known in the field of signal processing. As for Fourier analysis, a wavelet transform factorizes a X(t) signal into simpler elements (respectively a sum of sinusoids and a sum of wavelets). The main difference is that wavelets are localized in both time and frequency whereas the standard Fourier transform is only localized in frequency.


Wavelets are wave-like oscillations with an amplitude that starts out at zero, increases, and then decreases back to zero. It can typically be visualized as a “brief oscillation”.


Wavelets of the sum are the most often generated by the shifts of one generating function Ψ, the mother wavelet. Well known examples are Daubechies, Morlet and Coiflet functions.


Wavelet coefficients are thus








W


(

a
,
b

)


=




t
=
0







X


(
t
)


·


Ψ

a
,
b




(
t
)










t




,




where for example








Ψ

a
,
b




(
t
)


=


1

a





Ψ


(


t
-
b

a

)


.






A finite-dimensional wavelet-based approximation of the X function can be obtained by “filtering”, i.e. selecting n wavelets coefficients W(a,b), for example the n coefficients having the highest variance among those of resolution level (the “a” parameter) larger than a threshold value.


In this case, the approximation is given by








P
n



X


(
t
)



=



n




W


(

a
,
b

)


·



Ψ

a
,
b




(
t
)


.







Examples based on Daubechies-2 wavelets, a resolution threshold of 4, and a 37-term approximation has led to excellent results.


It will be understood that the invention is not limited to wavelet-based filtering, and a person skilled in the art will know how to adapt the method according to the invention to any method for projecting functional data onto a spanning set of reduced dimension.


Area Under the Curve

The capacity of a candidate scoring function s to discriminate between the positive and negative populations is generally evaluated by means of its ROC curve (standing for Receiver Operating Characteristic curve), a widely used functional performance measure which we recall below for clarity.


The true ROC curve of a scoring function s is the “probability-probability” plot given by:






tεR→(P{s(X)>t|Y=−1},P{s(X)>t|Y=+1})


By convention, when a jump occurs, the corresponding extremities of the curve are connected by a line segment, so that s(x)'s ROC curve can be viewed as the graph of a continuous mapping αε[0,1]→ROC(s,α).


It can be understood as “the rate of true positive items, in function of the rate of false positive items”.


This curve provides a useful visual tool for assessing scoring performance: the closer to the left upper corner of the unit square [0,1]2 the ROC curve, the better the scoring function s. It thus leads to a partial order on the set of all scoring functions: for all (s1; s2), s2 is said more accurate than s1 when ROC(s1,α)≦ROC(s1,α) for all αε[0,1].


The performance of a candidate s is usually summarized by a scalar quantity, the area under the ROC curve (AUC in short):







A





U






C


(
s
)



=




α
=
0

1



R





O






C


(

s
,
α

)









α







The method according to the invention can be seen as a method for approximating the optimal ROC curve. Indeed, the provided scoring function is a piecewise linear approximation of the optimal ROC curve: each terminal node corresponds to a linear part of such approximation.


Indeed, at each split, the samples items belonging to ε+ have to be positive. In this case they are “true positive”. Else, If they are negative, it means that they should have belong to ε, and are actually “false positive”. So each split corresponds to a point of the ROC curve having as coordinates (rate of negative sample items in ε+, rate of positive sample items in ε+). It forms a breakpoint of the piecewise linear approximation representing s.


By forming more levels in the binary tree, new breakpoints of the curve appears, leading to a finer approximation of the optimal ROC curve. An example of successive piecewise linear approximations of a ROC curve, corresponding to different height of the associated binary tree, and the optimal ROC curve, are visible on the FIG. 3.


Ranking Tree Pruning

A minimal number of terminal nodes is necessary to have a good approximation of the ROC curve, but having a large number of terminal nodes leads to overfitting: a partition of χ into too many subspaces reveals local noise, and the splitting becomes unstable (Slight modifications of the set of sample items used may lead to the learning of very different scoring functions, this problem will be more discuss in the next part). Moreover, as the number of nodes doubles at each level, formed binary trees may rapidly become hard to manipulate when their height increases, as the computational complexity of the scoring method depends on the number of nodes: large binary trees slow the processing means.


In a preferred embodiment, the invention comprises a step of selecting by said processing means a subtree of the formed binary tree and replacing the binary tree by said subtree, said step following the step of forming a binary tree. The term “subtree” of a binary tree refers to a binary tree in which any node may be a terminal node. Else, a node has two children. In other words, this is an initially complete binary tree which may have been pruned by removing every descendant of at least one node. For example, FIG. 2 shows a possible subtree of the binary tree represented in FIG. 1.


This pruning step aims to optimally choose the height of the binary tree by forming a large tree and then removing nodes which do not increase performances, or even decrease it. Advantageously a ROC curve is built by the processing means for each possible subtree, and stored is the memory means. For each of these piecewise linear ROC curves, the AUC is calculated by the processing means.


A first possibility is then to select by the processing mean the subtree with the highest AUC. The selected subtree is the most efficient one, however it may be still a large tree, with a high computational complexity.


Alternatively, another criterion, named the “Complexity-penalized AUC” (CPAUC) is used:





CPAUC(sT,λ)=AUC(sT)−λ·#P(T)


where #P(T) is the number of terminal nodes and λ is a tuning parameter governing the trade-off between training performance versus model computational complexity. The selected substree is in case the subtree with the highest CPAUC:







T
λ

=



arg





max

T



CPAUC


(


s
T

,
λ

)







λ is an important parameter which has to be set, possibly manually, but which advantageously estimated thanks to a cross-validation test performed by the processing means on the set of possible subtrees Tλ (which is a finite subset of the whole set of possible subtrees). In N-fold cross-validation, the original set of samples is randomly partitioned into N subsets. Of the N subsets, a single subset is retained as the validation data for testing the model (i.e. building the associated empirical ROC curve and calculating the AUC), and the remaining N−1 subsets are used as training data. The cross-validation process is then repeated N times (the folds), with each of the N subsamples used exactly once as the validation data. The N results from the folds then can be averaged (or otherwise combined) to produce a single estimation. The advantage of this method over repeated random sub-sampling is that all observations are used for both training and validation, and each observation is used for validation exactly once. The value {circumflex over (λ)} that maximizes the cross-validated AUC is determined by the processing means, and the associated subtree T{circumflex over (λ)} is selected and stored in the memory means. 10-fold cross-validation is commonly used.


Ranking Forest—Principe

The main problem of machine-learning methods based on recursive splitting, like the previously described scoring method, is the instability. As already explained, slight modifications of the set of sample items used may lead to the learning of very different scoring functions.


In a preferred embodiment, represented by the FIG. 4, a plurality of binary ranking trees, which can be called together a ranking forest, are produced and aggregated so as to improve the performance of single binary ranking trees in regards to the AUC criterion. To this end, a plurality of sets of sample items are generated and stored. From each of these different sets, a binary tree is formed.


A large set of sample items may be split. Alternatively, each set of sample items may be a bootstrap replicate. A bootstrap replicate is a set generated by resembling a main set of sample items.


Thus, to obtain B different sets of K sample items, only one set of N>K sample items is required. This is the main set D. The B bootstrap replicates D*1, . . . , D*B are then built by drawing with replacement sample items among the main set D. Due to the instability of the recursive splitting, such resampling is enough for producing sets of sample items from which independent binary trees T*1, . . . , T*B can be formed and associated scoring functions learnt.


These trees have then to be combined.


Ranking Forest—Aggregation

As the different binary trees are generated from different sample sets, their partitions of the multidimensional space χ formed by the subspaces associated with their terminal nodes are incompatibles. The first aim of aggregation is to build a new partition of χ which is compatible with the partitions of χ formed by the subspaces associated with the terminal nodes of any tree of the ranking forest.


To this end, for each formed binary tree the partition of the multidimensional space χ formed by the subspaces associated with the terminal nodes is provided and stored in memory means, and then these partitions are aggregated by said processing means to form a common subpartition. Indeed, if P1={Ck(1)}1≦k≦K1 and P2={Ck(2)}1≦k≦K2 are two partitions of χ related to binary trees T1 and T2 respectively, the common subpartition is the collection of subsets of the form Ck(1)∩Cl(2), 1≦k≦K1, 1≦l≦K2.


Graphically, it can be obtained by extending the T1 tree structure the following way: for any kε{1, . . . , K1}, at the T1's terminal node associated with the subspace Ck(1), add a subtree corresponding to T2 with Ck(1) as root. The subspaces associated with the terminal nodes of the resulting combined subtree, starting at the global root χ, correspond to the common subpartition (it may be noticed that some of the parts of this subpartition can be empty), as represented by FIG. 5. This scheme can be iterated in order to recover all the parts of the subpartition induced by B>2 tree-structured partitions. For reasons of computational nature, the aggregation is advantageously started with the most complex tree and binds progressively less and less complex trees as one goes along.


Ranking Forest—the Median Ranking

The common subpartition makes comparable the scoring functions associated with different trees. When this subpartion is formed and stored in memory means, then for each formed binary tree of the ranking forest a scoring rule is provided by scoring each part of the common subpartition, and stored in memory means.


The next step is to provide and to store for each scoring rule a ranking of the parts scored according the scoring rule. In particular, the most natural way of defining a total order on the multidimensional space χ is to transport the natural order on the real line by means of the scoring function, i.e. a measurable mapping s: χ→R. A ranking custom-characters on χ is thus defined by: ∀(X1,X2)εχ2, X1custom-charactersX2custom-characters(X1)≦s(X2).


As the common subpartition comprises many more parts than any partition associated with a simple binary tree, some different parts may have the same score, making them “ex-aequo” with respect to their rank. To enable reliable comparison of the ranks of parts, as every item of a part C of the common subpartition P*(χ) has the same score, the rank of a part C may for example be given by:








R


1




(
C
)


=






C





P
*



(
χ
)






1


{





(

z
,

z



)



C
×

C





,


z



z


}



+


1
2



(

1
+

#


{



C






P
*



(
χ
)




:






(

z
,

z



)



C
×

C







,


z




z


z




z


}



)







where z′custom-characterz means that only the relation z′custom-characterz is verified (i.e. z and z′ have different scores).


Because the different rankings come from different sets of samples, in case of instability the rank of a given part of the common subpartition may vary according to the ranking custom-characters. These variations of ranks reveal the most instable rankings. To the contrary, the ranking which should be selected is called the medium ranking, i.e. the less instable ranking.


Advantageously, to this end a dissimilarity rate between each pair of rankings is calculated by the processing means, and the ranking which shows the lowest dissimilarity rate with the other rankings is selected by said processing means as the median ranking, the dissimilarity rate being a criterion representative of the variability of ranks between two rankings.


For example, the median ranking may be a ranking custom-character* such that










m
=
1

N



δ


(



*



,


m



)



=


min







m
=
1

N



δ


(



,


m



)








where:

custom-character1 . . . custom-characterN are the rankings, and


ε(custom-character1, custom-character2) is the dissimilarity rate between a pair of rankings.


Different formulas are known by a man skilled in the art for computing a dissimilarity rate in function in function of the ranks of the parts of the common subpartition. For example, one these three may be used:


The Spearman Rank-Order Correlation







δ


(



1



,


2



)


=


1
K






i
=
1

K




(



R


1




(

C
i

)


-


R


2




(

C
i

)



)

2







where:


Ci . . . CK are the parts of the common subpartition, and

custom-character(Ci) is the rank of the part Ci among the other parts of the common subpartition according to the ranking custom-character1.


The Spearman Footrule







δ


(



1



,


2



)


=


1
K






i
=
1

K







R


1




(

C
i

)


-


R


2




(

C
i

)











where:


Ci . . . CK are the parts of the common subpartition, and

custom-character(Ci) is the rank of the part Ci among the other parts of the common subpartition according to the ranking custom-character1.


The Kendall Tau







δ


(



1



,


2



)


=



2

K


(

K
-
1

)








i

j




1


{



(



R


1




(

C
i

)


-


R


1




(

C
j

)



)

·

(



R


2




(

C
i

)


-


R


2




(

C
j

)



)


<
0

}




+


1

K


(

K
-
1

)








i

j




1


{




R


1




(

C
i

)


=


R


1




(

C
j

)



,



R


2




(

C
i

)





R


2




(

C
j

)




}




+


1

K


(

K
-
1

)








i

j




1


{




R


1




(

C
i

)





R


1




(

C
j

)



,



R


2




(

C
i

)


=


R


2




(

C
j

)




}









where:


Ci . . . CK are the parts of the common subpartition, and

custom-character(Ci) is the rank of the part Ci among the other parts of the common subpartition according to the ranking custom-character1.


When the medium ranking is determined and stored in the memory means, the processing means can finally select as the best scoring rule the scoring rule associated with the median ranking.


Multi-Values Label

As already explained, the method according to the invention is compatible with multi-class data, i.e. can deal with sample items associated with multi-value label (Yε{1, . . . , Ξ}, Ξ≧3).


To this end, a plurality of bipartite ranking problems is advantageously solved.


In a first embodiment, an oriented binary tree is formed and stored for each of the Ξ−1 possible pairs (ξ12) of label values ξ21+1, the first label value being ξ1 and the second label value being ξ2. For example, if the label is a 3-value label (no/maybe/yes), a first bipartite problem is solved by considering only the sample items labeled with “no” (Y=1) or “maybe” (Y=2), and a second bipartite problem is solved by considering only the sample items labeled with “maybe” (Y=2) or “yes” (Y=3).


In a preferred embodiment, an oriented binary tree being formed and stored for each of the







Ξ


(

Ξ
-
1

)


2




possible pairs (ξ12) of label values so that ξ12, the first label value being and the second label value being ξ2. Here, with respect to the previous example, a third bipartite problem is solved by considering the sample items labeled with “no” (Y=0) or “yes” (Y=2).


In both cases, the plurality of obtained trees have to be combined. It is advantageously done by the same mechanism as Ranking Forest: aggregation, and median ranking.


It is to be noted that Ranking Forest can be used in combination with multi-class ranking: a plurality of sets of sample items is created by bootstrap replicating, and for each set of sample items and for each pair of label values a tree is created. In other words, as many trees as the number of sets are created for each pair of label value.


These trees can all be combined at the same time, but advantageously, Ranking Forest is first performed (trees are combined per pair of label value) and then aggregated trees are combined.


Example

To illustrate the efficiency of the method according to the invention, the artificial data set of sample items represented in FIG. 6a has been generated as follows:


The unit square χ=[0,1]2 has been split into four quarters: χ1=[0,1/2]2, χ2=[½,1]×[0,½], χ31=[½,1]2 and χ4=[0,½]×[½,1].


Denoting by UC the uniform distribution on a measurable set C⊂χ, the class distributions are given by






H(dx)=0.2·Uχ1+0.1·Uχ2+0.3·Uχ3+0.4·Uχ4,






G(dx)=0.4·Uχ1+0.3·Uχ2+0.2·Uχ3+0.1·Uχ4,


wherein H(dx) and G(dx) are respectively the conditional distributions X given Y=+1 and X given Y=−1.


Two thousand samples items has been used in this example: in the FIG. 6a, a “+” represents an item satisfying the given property (Y=+1) and a “o” represents an item not satisfying the given property (Y=−1). In this setup, optimal scoring functions are piecewise constant, like the regression function





η(x)=⅔·1{xεχ1}+0.75·1{xεχ2}+0.4·1{xεχ3}+0.2·1{xεχ4}


The regression function is the function providing a given X with the probability that Y=+1 (i.e. η(x)=P{Y=+1|X=x}). The bi-level sets of the regression function are represented by the FIG. 6b. The four areas of the square are clearly visible.


The results of a method according to the invention are then represented by the FIG. 6c, representing the scoring function learnt from the set of sample items of FIG. 6a. The master ranking tree is grown according to the described method, next pruned via the N-fold cross-validation procedure described previously with ten bootstrap replicate. It can be observed that four levels of score appear, almost perfectly corresponding to the four areas of the square.



FIG. 6
d is a graphic representing the optimal ROC curve and the test ROC curve of the scoring function of FIG. 6c. We can assume that the two curves can hardly be distinguished.


Applications

As already explained, the method according to the invention allows numerous industrial or economic applications. Credit scoring, medical diagnosis and data mining accuracy scoring have been mentioned.


Besides, the method according to the invention is for example effective for quality control and/or failure detection. Indeed, on a factory production line, the quality of a production has to be assessed on the basis on a few criteria. In this case, the given binary property is “standard (or non-standard) product”. A set of sample items can be easily set up by picking random products on the production line, and manually checking them. A failure can for example be detected if the rate of non-standard products exceeds a threshold.


In addition, the method according to the invention may apply to biology and chemistry, especially for molecules, proteins, catalysts, genes, etc. testing. It may enable to predict whether a molecule (or a protein, a catalyst . . . ) can have a given effect, by comparing its structure with the structure of other known molecules.


Many other applications in various fields are conceivable.


Decision-Support System

According to a second aspect, the invention concerns a decision-support system, comprising processing means, input means, output means, memory means. The processing means of said decision-support system are configured to implement a method of scoring as previously described.


Input means allows to input data representing the target item, and the set of sample items. They could be for example a keyboard, if the user wishes to manually input these data, or an interface with any computer, for example containing a database of samples. Output means are for example a display screen.


A man skilled in the art would know how to adapt the invention to any known type of computer language, any type of processor.

Claims
  • 1. A method for providing with a score an object represented by a target item from a multidimensional space, said score being representative of the probability that the object satisfies a given binary property, said method being performed in a computer environment comprising processing means connected to memory means, comprising the following steps: (a) providing and storing in the memory means data representative of a set of sample items from said multidimensional space, each sample item being associated with a multi-value label representative of the probability that an object represented by said sample item satisfies the given binary property;(b) storing in the memory means data representative of the target item;(c) with said processing means, generating and storing in said memory means data representative of an oriented binary tree with a given height, said binary tree being defined by a plurality of nodes having index values in relation with their position in the binary tree, said nodes comprising a root node, intermediate nodes and terminal nodes, and each node being associated with a subspace of the multidimensional space according to the following rules: if the node is a root node, the associated subspace is the whole multidimensional subspace;if the node is a non-terminal node, its associated subspace is split into two disjoint subspaces ε+ and ε− respectively associated with a first child node and a second child node of said non-terminal node, said splitting being performed by the processing unit according to a classifier minimizing the number of sample items associated with a first given label value to belong to the subspace ε+, and/or the number of sample items associated with a second given label value to belong to the subspace ε−, said second label value being representative of a higher probability that an object represented by said sample item satisfies the given binary property than said first given label value;(d) with said processing means, associating with at least each terminal node of the binary tree a score depending on its index value in the binary tree, and storing the score value in the memory means;(e) with said processing means, identifying a target node, the target node being a terminal node whose associated subspace comprises the target item; and(f) outputting the score value associated with said target node.
  • 2. A method according to claim 1, wherein the index value of each node comprises a pair of values, the first index value representing the depth of the node in the binary tree, and the second index value representing the position of the node at a given level of depth in the tree.
  • 3. A method according to claim 2, wherein the index of the root node is (0,0), and the indexes of the first and the second child nodes of a non-terminal node whose index is (d,k) are respectively (d+1,2k) and (d+1,2k+1).
  • 4. A method according to claim 3, wherein the score associated with a node whose index is (d,k) is 2D (1−k/2d), D being the height of the binary tree.
  • 5. A method according to any one of claims 1 to 4, wherein said splitting is performed by minimizing with said processing means a weighted combination of the number of sample items associated with the first given label value to belong to the subspace ε+, and the number of sample items associated with the second given label value to belong to the subspace ε−.
  • 6. A method according to claim 5, wherein the weights in said weighted combination are respectively the rate of sample items associated with the second given label value in the subspace being split into disjoint subspaces ε+ and ε−, and the rate of sample items associated with the first given label value in the subspace being split into disjoint subspaces ε+ and ε−.
  • 7. A method according to claim 6, wherein said splitting is performed by minimizing by processing means the value of
  • 8. A method according to any one of claims 1 to 7, wherein the number of sample items and/or the number of dimensions of associated subspace to take into account during said splitting is reduced.
  • 9. A method according to one of claims 1 to 8, wherein said multidimensional space is an infinite-dimensional space, said splitting comprising a approximation of sample items into finite-dimensional items.
  • 10. A method according to any one of claims 1 to 9, comprising a step (c1) of selecting by said processing means a subtree of the formed binary tree and replacing the binary tree by said subtree, wherein said step (c1) follows step (c).
  • 11. A method according to claim 10, wherein a Receiver Operating Characteristic curve is built by the processing means at step (c1) for each possible subtree, and stored is the memory means, the selected subtree being the subtree determined by the processing means as having the highest Area Under its associated Receiver Operating Characteristic curve.
  • 12. A method according to claim 10, wherein a Receiver Operating Characteristic curve is built by the processing means at step (c1) for each possible subtree, and stored is the memory means, the selected subtree being the subtree determined by the processing means as having the highest Complexity-Penalized Area Under its associated Receiver Operating Characteristic curve.
  • 13. A method according to claim 12, wherein step (c1) comprises a cross-validation test performed by the processing means on the set of possible subtrees.
  • 14. A method according to any one of claims 1 to 13, wherein the multi-value label is a binary label indicating if an object represented by said example item satisfies or not the given binary property, the first label value being the label value associated with the sample items not satisfying the given binary property, and the second label value being the label value associated with the sample items satisfying the given binary property.
  • 15. A method according to any one of claims 1 to 13, wherein the multi-value label comprises at least three values (1≦ξ≦Ξ), the label value being ascending with the probability of satisfying the given binary property, an oriented binary tree being formed and stored for each of the
  • 16. A method according to any one of claims 1 to 13, wherein the multi-value label comprises at least three values (1≦ξ≦Ξ), the label value being ascending with the probability of satisfying the given binary property, an oriented binary tree being formed and stored for each of the Ξ−1 possible pairs (ξ1,ξ2) of label values ξ2=ξ1+1, the first label value being ξ1 and the second label value being ξ2.
  • 17. A method according to any one of claims 1 to 16, wherein a plurality of sets of sample items are generated and stored at step (a), an oriented binary tree being formed and stored for each set of sample items.
  • 18. A method according to claim 17, wherein each set of sample items is a bootstrap replicate generated by said processing means by resampling a main set of sample items.
  • 19. A method according to any one of claims 15 to 18, further comprising a step (d1) of aggregating the plurality of formed binary trees and determining a best scoring rule, said step (d1) following step (c).
  • 20. A method according to claim 19, wherein step (d1) comprises the following sub-steps: for each formed binary tree, provide and store in memory means the partition of the multidimensional space formed by the subspaces associated with the terminal nodes;aggregating by said processing means these partitions to form a common subpartition;for each formed binary tree, providing and storing a scoring rule by scoring each part of the common subpartition;for each scoring rule, providing and storing a ranking of the parts scored according the scoring rule;determining by said processing means a median ranking among the plurality of ranking, and storing the median ranking in said memory means; andselecting by said processing means as the best scoring rule the scoring rule associated with the median ranking.
  • 21. A method according to claim 20, wherein the sub-step of determining a median ranking comprises calculating by said processing means a dissimilarity rate between each pair of rankings, and selecting by said processing means as the median ranking the ranking which shows the lowest dissimilarity rate with the other rankings.
  • 22. A method according to claim 21, wherein the median ranking is a ranking * such that
  • 23. A method according to claim 22, wherein the dissimilarity rate is defined as
  • 24. A method according to claim 22, wherein the dissimilarity rate is defined as
  • 25. A method according to claim 22, wherein the dissimilarity rate is defined as
  • 26. A decision-support system, comprising processing means, input means, output means, memory means, the processing means being configured to implement a method according to any one of claims 1 to 25.
PCT Information
Filing Document Filing Date Country Kind 371c Date
PCT/EP2011/065555 9/8/2011 WO 00 3/8/2013
Continuations (1)
Number Date Country
Parent 12877461 Sep 2010 US
Child 13821697 US