the odd one out: identifying and characterising...

12

Upload: trantuong

Post on 09-Apr-2018

218 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

The Odd One Out:

Identifying and Characterising Anomalies

Koen Smets Jilles Vreeken

Department of Mathematics and Computer Science

Universiteit Antwerpen, Belgium{koen.smets,jilles.vreeken}@ua.ac.be

Abstract

In many situations there exists an abundance of positiveexamples, but only a handful of negatives. In thispaper we show how such rare cases can be identi�edand characterised in binary or transaction data.

Our approach uses the Minimum DescriptionLength principle to decide whether an instance is drawnfrom the training distribution or not. By using frequentitemsets to construct this compressor, we can easily andthoroughly characterise the decisions, and explain whatchanges to an example would lead to a di�erent verdict.Furthermore, we give a technique with which, given onlya few negative examples, the decision landscape and op-timal boundary can be predicted�making the approachparameter-free.

Experimentation on benchmark and real data showsour method provides very high classi�cation accuracy,thorough and insightful characterisation of decisions,predicts the decision landscape reliably, and can pin-point observation errors. Moreover, a case study onreal MCADD data shows we provide an interpretableapproach with state-of-the-art performance for screen-ing newborn babies for rare diseases.

1 Introduction

In many situations there is an abundance of samples forthe positive case, but no, or only a handful, for the neg-ative case. Examples of such situations include, intru-sion detection [10,13], screening for rare diseases [1,11],monitoring in health care [6] and industry [22], frauddetection [2, 12], as well as predicting the lethality ofchemical structures in pharmaceutics [5,14]. In all thesecases it is either very expensive, dangerous, or virtuallyimpossible to acquire (many) negative examples. Thismeans that standard classi�cation techniques cannot beapplied, as there is not enough training data for each ofthe classes. Since there are only enough examples forone class, this problem setting is typically known as one-

class classi�cation, but for obvious reasons it can alsobe regarded as outlier detection. The goal is simple:given su�cient training data for only the positive class,reliably detect the rare negative cases in unseen data.That is, to point the odd one out.

Identi�cation alone is not enough, however: expla-nations are also very important. This goes for classi-�cation in general, but in the one-class setup descrip-tions are especially important; we are deciding over rareevents with possibly far-reaching consequences. A hu-man operator, for instance, will not follow advice toshut down a complex chemical installation if there is nogood explanation to do so. Similarly, medical doctorsare ultimately responsible for their patients, and hencewill not trust a black-box telling them a patient has arare disease if it cannot explain why this must be so.

In this paper we give an approach for identifyingnegative examples in transaction data, with immediatecharacterisation of the why. Our approach uses the Min-imum Description Length principle to decide whetheran instance is drawn from the training distribution ornot; examples that are very similar to the data the com-pressor was induced on will require only few bits to de-scribe, while an anomaly will take many bits. By usinga pattern-based compressor, thorough characterisationof its decisions is made possible. As such, our methodcan explain what main patterns are present/missing ina sample, identify possible observation errors, and showwhat changes would lead to a di�erent decision, thatis, show how strong the decision is. Furthermore, givenonly few negative examples the decision landscape canbe estimated well�making our approach parameter-freefor all practical purposes.

We are not the �rst to address the one-class classi�-cation problem. However, important distinctions can bemade between our approach and that of previous pro-posals. Here we give an overview of these di�erences, inSection 3 we discuss related work in more detail.

Most existing methods for one-class classi�cation

Page 2: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

focus on numeric data. However, in many cases eventsare discrete (e.g., alarms do or do not go o�, chemicalsub-structures exist or not, etc.) and therefore arenaturally stored in a binary or transaction database.Applying these methods on binary data is not trivial.

In classi�cation research, high accuracy is generallythe main goal. However, as pointed out above, foran expert the explanation of the decision is equallyimportant. By their black-box nature, existing methodstypically do not o�er this. Our approach does, as it usesdiscovered patterns to describe and classify instances.

Also, by their focus on accuracy, most existingmethods require the user to set a number of parametersto maximise their performance. Whereas this hasobvious merit, in practice the expert will then need to�ne-tune the method, while the e�ect and interplays ofthe parameters is often unclear. Our approach does nothave such parameters, making it more easily applicable.

Besides method-speci�c parameters, a key parame-ter in one-class classi�cation is the speci�city/sensitivitythreshold. As there are not enough negative examplesavailable, the decision landscape is unknown, and hence,it is di�cult to set this threshold well. Our method alsorequires such a decision threshold. However, given onlya couple of outlying examples, our method can estimatethe decision landscape. As such, we provide the userwith an e�ective way to set the decision threshold, aswell as a way to see whether it is at possible to identifynegative examples at all.

As the compressor, here we use Krimp [21], whichdescribes binary data using itemsets. The high qualityof these descriptions, or code tables, has been wellestablished [15, 27, 28]. Alternatively, however, othercompressors can be used in our framework, e.g. to applyit on other data types or with di�erent pattern types.

Summarising, the main contributions of this workare two-fold. First, we provide a compression-basedone-class classi�cation method for transaction data thatallows for thorough inspection of decisions. Second,we give a method that estimates the distribution ofencoded lengths for outliers very well, given only fewanomalous examples. This allows experts to �ne-tune the decision threshold accordingly�making ourapproach parameter-free for all practical purposes.

Experimentation on our method shows it providescompetitive classi�cation accuracies, reliably predictsdecision landscapes, pinpoints observation errors, andmost importantly, provides thorough characterisation.

The remainder of the paper is organised as follows.Next, Section 2 covers the theory of using MDL forthe one-class classi�cation problem. Related work isdiscussed in Section 3. We experimentally evaluate ourmethod in Section 4. We round up with discussion in

Section 5 and conclude in Section 6.

2 One-Class Classi�cation by Compression

In this section we �rst give some preliminaries, and thendetail the theory of using the Minimum DescriptionLength principle for one-class classi�cation and char-acterisation.

2.1 Preliminaries Throughout this paper we con-sider transaction databases. Let I be a set of items, e.g.,the products for sale in a shop. A transaction t ∈ P(I)is a set of items that, e.g., representing the items a cus-tomer bought in the store. A database D over I is thena bag of transactions, e.g., the di�erent sale transac-tions on a given day. We say that a transaction t ∈ Dsupports an itemset X ⊆ I, if X ⊆ t. The support ofX in D is the number of transactions in the databasein which X occurs. Note that categorical datasets canbe trivially converted into transaction databases.

All logarithms are to base 2, and by convention0 log 0 = 0.

2.2 One-Class Classi�cation In one-class classi�-cation, or outlier detection, the training database Dconsists solely (or, overwhelmingly) of samples drawnfrom one distribution Dp. The task is to correctly iden-tify whether an unseen instance t /∈ D was drawn fromDp or not. We refer to sample being from the positiveclass if they were drawn from distribution Dp, and tothe negative class if they were drawn from any otherdistribution Dn. We explicitly assume the Bayes errorbetween Dp and Dn to be su�ciently low. That is, weassume well-separated classes�an unavoidable assump-tion in this setup. (Section 2.8 gives a technique toevaluate whether the assumption is valid.)

Next, we formalise this problem in terms of theMinimum Description Length principle.

2.3 MDL, a brief introduction The MinimumDescription Length principle (MDL) [8], like its closecousin MML (Minimum Message Length) [29], is apractical version of Kolmogorov Complexity [16]. Allthree embrace the slogan Induction by Compression.For MDL, this principle can be roughly described asfollows.

Given a set of models M, the best model M ∈ Mis the one that minimises

L(M) + L(D |M) ,

in which L(M) is the length in bits of the descriptionof M , and L(D | M) is the length of the description ofthe data when encoded with model M .

The MDL principle implies that the optimal com-

Page 3: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

pressor induced on database D drawn from a distribu-tion D will encode transactions drawn from this distri-bution more succinct than any other compressor.

More in particular, let L(t | M) be the length, inbits, of a random transaction t, after compression withthe optimal compressor M induced from database D,then

L(t |M) = − log(Pr(t | D)) ,

if we assume that the patterns that encode a transactionare independent [15]. That is, under the Naïve Bayesassumption, given dataset D1 drawn from distributionD1 and dataset D2 drawn from D2, the MDL-optimalmodels M1 and M2 induced on these datasets, and anunseen transaction t, we have the following implication

L(t |M1) < L(t |M2)⇒ Pr(t | D1) > Pr(t | D2) .

Hence, it is the Bayes-optimal choice to assign tto the class of the compressor that encodes it mostsuccinct [15].

2.4 MDL for One-Class Classi�cation In ourcurrent setup, however, we only have su�cient trainingdata for the positive class. That is, while we can induceMp, we cannot access Mn, and hence require a di�erentway to decide whether an unseen t was drawn from Dpor Dn. At the same time, however, we do know that theMDL-optimal compressor Mp will encode transactionsdrawn from Dp shorter than transactions drawn fromany other distribution, including Dn. As such, we havethe following theorem.

Theorem 2.1. Let t1 and t2 be two transactions overa set of items I, respectively sampled from distributionsD1 and D2, with D1 6= D2. Further, let D be a bagof transactions sampled from D1, and M be the MDL-optimal compressor induced on D. Then, by the MDLprinciple we have

L(t1 |M) < L(t2 |M)⇒ Pr(t1 | D) > Pr(t2 | D) .

With this theorem, and under the assumption thatDp and Dn are dissimilar, we can use the encoded sizeof a transaction to indicate whether it was drawn fromthe training distribution or not. By MDL we know thatif L(t | M) is small, Pr(t | D) is high, and hence t waslikely generated by the distribution D underlying D.Otherwise, if L(t |M) is (very) large, we should regardt an outlier, as it was likely generated by a anotherdistribution than D. Crucial, of course, is to determinewhen L(t |M) is small enough.

The standard approach is to let the user de�ne acut-o� value determined by the false-negative rate, i.e.the number of positive samples that will be classi�ed

as negatives. For our setting, this would mean settinga decision threshold θ on the encoded sizes of transac-tions, L(t | M), such that at least the given numberof training instances are misclassi�ed. Clearly, this ap-proach has a number of drawbacks. First, it de�nitelyincorrectly marks a �xed percentage of training samplesas outliers. Second, it does not take the distribution ofthe compressed lengths into account, and so gives anunrealistic estimate of the real false negative rate.

To take the distribution of encoded sizes into ac-count, we can consider its �rst and second order mo-ments. That is, its mean and standard deviation.Chebyshev's inequality, given in the theorem below,smooths the tails of the distribution and provides usa well-founded way to take the distribution into ac-count for setting θ. It expresses that for a given randomvariable�in our case the compressed length, L(t |M)�the di�erence between an observed measurement andthe sample mean is probability-wise bounded, and de-pends on the standard deviation.

Theorem 2.2. (Chebyshev's inequality [7]) LetX be a random variable with expectation µX andstandard deviation σX . Then for any k ∈ R+,

Pr(|X − µX | ≥ kσX) ≤ 1

k2.

Note that this theorem holds in general, and canbe further restricted if one takes extra assumptions intoaccount, e.g., whether random variable X is normallydistributed or not.

Given thatM is the MDL-optimal compressor for atransaction databaseD over a set of items I,M encodesD most succinct amongst all possible compressors.Hence we know that those transactions t over I with

L(t |M) <1

|D|∑d∈D

L(d |M) ,

will have high Pr(t | D). In other words, if M requiresfewer bits to encode t than on average for transactionsfrom D, it is very likely that t was sampled from thesame distribution as D. In order to identify anomalies,we are therefore mainly concerned with transactionsthat are compressed signi�cantly worse than average.To this end, we employ Cantelli's inequality, the one-sided version of Chebyshev's inequality.

Theorem 2.3. (Cantelli's inequality [7]) Let Xbe a random variable with expectation µX and standarddeviation σX . Then for any k ∈ R+,

Pr(X − µX ≥ kσX) ≤ 1

1 + k2.

Page 4: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

10 20 30 40 50 60 70

Code lengths (bits)

0

500

1000

1500

2000

#tr

ansa

ctio

ns

(a) Class 1

20 30 40 50 60 70

Code lengths (bits)

0

200

400

600

800

1000

1200

1400

1600

#tr

ansa

ctio

ns

(b) Class 2

Figure 1: Code length histograms for the 2 di�erent classes of Mushroom. Shown are the compressed sizes oftransactions of the training class, together with the decision thresholds at false positive rates of respectively 10%,5% and 1% estimated using Cantelli's inequality.

Again, like Theorem 2.2, this theorem holds in thegeneral case, and we can restrict it depending on theknowledge we have on the distribution of the positivesamples Dp. Cantelli's inequality gives us a well-founded way to determine a good value for the thresholdθ; instead of having to choose a pre-de�ned amount offalse-negatives, we can let the user choose a con�dencelevel instead. That is, an upper bound for the false-negative rate (FNR). Then, by θ = µ + kσ, we set thedecision threshold accordingly.

Example. Consider Figure 1, depicting the histogramsof the encoded sizes for the Mushroom database. Thisis normally the only information the user is able toderive based on samples from the positive class. Thestandard procedure to set the decision threshold is tochoose a �xed number of known false-negatives. Inour setup, we can choose the expected false-negativerate instead, for which Cantelli's gives us the correctvalue for θ. The dashed lines in Figure 1 show thethresholds for con�dence levels of respectively 10%, 5%and 1%. The con�dence level of 10%, for instance,corresponds setting θ at 3 standard deviations to theright of the average. This means the user has less than10% chance of observing a future positive transactionthat lies further than the decision threshold.

Note that using only the empirical cumulative dis-tribution, the decision threshold would always fall insidethe observed range, while by using Cantelli's inequalitywe are able to exceed this range: in the case above from5% onward. Obviously, the user has no guarantees onthe rate that outliers will be classi�ed as positive sam-ples, i.e. the false positive rate (FPR). We will discussthat particular problem in Section 2.8.

2.5 Introducing Krimp In the previous subsec-tions, we simply assumed access to the MDL-optimalcompressor. Obviously, we have to make a choice forwhich compressor to use in practice. In this work weemploy Krimp, an itemset-based compressor [21], toapproximate the optimal compressor for a transactiondatabase. As such, it aims to �nd that set of itemsetsthat together describe the database best. The modelsKrimp considers, code tables, have been shown to beof very high quality [15, 27, 28]. In this section we willgive a quick overview, and refer to the original publica-tion [21] for more details.

The key idea of Krimp is the code table. Acode table has itemsets on the left-hand side and acode for each itemset on its right-hand side. Theitemsets in the code table are ordered �rst descending onitemset length, second descending on support and thirdlexicographically. The actual codes on the right-handside are of no importance: their lengths are. To explainhow these lengths are computed, the coding algorithmneeds to be introduced. A transaction t is encoded byKrimp by searching for the �rst itemset X in the codetable for which X ⊆ t. The code for X becomes part ofthe encoding of t. If t \X 6= ∅, the algorithm continuesto encode t\X. Since it is insisted that each code tablecontains at least all single items, this algorithm givesa unique encoding to each (possible) transaction. Theset of itemsets used to encode a transaction is called itscover . Note that the coding algorithm implies that acover consists of non-overlapping itemsets. The lengthof the code of an itemset in a code table CT dependson the database we want to compress; the more often acode is used, the shorter it should be. To compute thiscode length, we encode each transaction in the databaseD. The usage of an itemset X ∈ CT is the number oftransactions t ∈ D which have X in their cover. The

Page 5: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

relative usage of X ∈ CT is the probability that X isused in the encoding of an arbitrary t ∈ D. For optimalcompression of D, the higher Pr(X | D), the shorter itscode should be. In fact, from information theory [8], wehave the Shannon entropy, that gives us the length ofthe optimal pre�x code for X, by

L(X | CT ) = − log(Pr(X | D)) =usage(X)∑

Y ∈CTusage(Y )

.

The length of the encoding of transaction is now simplythe sum of the code lengths of itemsets in its cover,

L(t | CT ) =∑

X∈cover(t)

L(X | CT ) .

The size of the encoded database is the sum of the sizesof the encoded transactions,

L(D | CT ) =∑t∈D

L(t | CT ) .

To �nd the optimal code table using MDL, we needto take both the compressed size of the database, asdescribed above, and the size of the code table intoaccount. For the size of the code table, we only considerthose itemsets that have a non-zero usage. The size ofthe right-hand side column is obvious; it is simply thesum of all the di�erent code lengths. For the size ofthe left-hand side column, note that the simplest validcode table consists only of the single items. This is thestandard code table ST , of which we use the codes tocompute the size of the itemsets in the left-hand sidecolumn. Hence, the size of the code table is given by:

L(CT ) =∑X∈CT

usage(X ) 6=0

L(X | ST ) + L(X | CT ) .

Siebes et al. [21] de�ne the optimal set of (frequent)itemsets as the one whose associated code table min-imises the total compressed size:

L(CT ) + L(D | CT ) .

Krimp starts with the standard code table and thefrequent itemsets up to a given minsup as candidates.These candidates are ordered �rst descending on sup-port, second descending on itemset length and third lex-icographically. Each candidate itemset is considered byinserting it in CT and calculating the new total com-pressed size. A candidate is only kept in the code ta-ble i� the resulting total size is smaller. If it is kept,all other elements of CT are reconsidered to see if theystill contribute positively to the compression. Note that

the minsup parameter is only used to control the num-ber of candidates: it holds in general that the lower theminsup, the larger the number of candidates, the largerthe search space and the better the �nal code table ap-proximates the optimal code table. In MDL we are afterthe optimal compressor, for Krimp this means minsupshould be set as low as practically feasible.

For more details, we refer to the original paper [21].

2.6 Krimp for One-Class Classi�cation By run-ning Krimp on training database D, consisting of posi-tive examples, we obtain an approximation of the MDL-optimal compressor for D. To employ this compres-sor for one-class classi�cation, or outlier detection, weput Sections 2.4 and 2.5 together. Formally, this meansthat given a decision threshold θ, a code table CT fordatabase D, both over a set of items I, for an unseentransaction t also over I, we decide that t belongs tothe distribution of D i�

L(t | CT ) ≤ θ .

In other words, if the encoded length of the transactionis larger than the given threshold value, we decide it isan outlier. We will refer to our approach as OC3, whichstands for One-Class Classi�cation by Compression.

The MDL-optimal compressor for the positive classcan obviously best be approximated when D consistssolely of many samples from Dp. In practice, however,these demands may not be met.

Firstly, D may not be very large. The smaller D is,the less well the compressor will be able to approximatethe MDL-optimum. We thus especially expect goodperformance for large training databases. Note thatMDL inherently guards against over�tting: adding toomuch information to a model would make it overlycomplex, and thus degrade compression.

Secondly, D may contain some (unidenti�ed) sam-ples from Dn. However, under the assumption that Dpand Dn are well separated, the MDL-optimal compres-sor for a dataset D with a strong majority of samplesfrom Dp, and only few from Dn, will typically encode fu-ture samples from Dp in fewer bits than those from Dn.As such, the classi�er will also work when the trainingdata contains anomalies. Unless stated otherwise, in theremainder of this paper we assume that D is sampledsolely from the positive class.

2.7 Characterising Decisions One of the mainadvantages of using a pattern-based compressor likeKrimp, is that we can characterise decisions.

As an example, suppose a transaction t is classi�edas an outlier. That is, L(t | CT ) > θ. To inspectthis decision, we can look at the itemsets by which

Page 6: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

the transaction was covered; this gives us informationwhether the outlier shows patterns characteristic for thepositive class. That is, the more t resembles the patternsof the positive class, the more it will be covered bylarge itemsets and less by singletons. On the otherhand, patterns that are highly characteristic for Dthat are missing from the transaction cover are equallyinformative; they pinpoint where t is essentially di�erentfrom the positive class.

Since code tables on average contain up to a fewhundred of elements, this analysis can easily be doneby hand. In addition, we can naturally rank thesepatterns on encoded size, to show the user what mostcharacteristic, or frequently used, patterns are missingor present. As such, decisions can easily be thoroughlyinspected.

2.8 Estimating the Decision Landscape Formany situations it is not unrealistic to assume that,while not abundant, some example outliers are avail-able besides the training data. Even if these examplesare not fully representative for the whole negative classDn, we can use them to make a more informed choicefor the threshold parameter.

To this end, we propose to generate arti�cial out-liers, based on the given negatives, to estimate the num-ber of bits our positive-class compressor will require toencode future samples from Dn; given this estimateddistribution of encoded lengths, and the encoded lengthsfor the training data, we can set the decision thresholdθ to maximise expected accuracy�as well as to inspectwhether it is likely we will see good classi�cation scores.

For this, we have to make one further assumptionthat builds on the one underlying one-class classi�ca-tion, i.e. that the positive and negative distributions areessentially di�erent, and hence, that the MDL-optimalcompressor for the positive class will badly compresssamples from the negative class. Now, in addition, weassume that by slightly altering a known outlier it willstill be an outlier. Note that if the positive and nega-tive distributions are not well-separated, this assump-tion will not hold.

More formally, let us consider the MDL-optimalcompressorM for a training databaseD of samples fromDp, all over a set of items I. Further, we have a knownoutlier t ∈ Dn for which L(t | M) is large, comparedto L(d | M) for random d ∈ D. Next, let us constructtransactions t′ by removing few (one, two, . . . ) itemsX from t, and replacing these with equally many itemsY not in t, i.e. t′ ← (t \X) ∪ Y , with |t′| = |t|, Y ⊆ Iand X \ t = ∅. Now, the main assumption is that onaverage, t′ is about as likely as t in Dn, i.e. we havePr(t′ | Dn) ≈ Pr(t | Dn), and t′ is unlikely to be drawn

from Dp, i.e. Pr(t′ | Dp) is small and L(t′ |M) relativelylarge. Under this assumption, L(t′ |M) gives us a goodestimate of the encoded sizes of real future outliers.

Naturally, the quality of the estimate is stronglyin�uenced by how we swap items. One option is randomchange. Alternatively, we can take the compressorand the training data into account. Through these,we can identify those X and Y that will maximallychange L(t′ | M); by choosing X and Y such that t′

is compressed badly, we will (likely) overestimate theseparation between Dp and Dn, and analogously weunderestimate when we minimise L(t′ |M).

We argue that in this setup the latter option ispreferred. First of all, it is possible that the identi�edoutliers are extremes�otherwise they might not havebeen discovered. Second, it is not unlikely the twodistributions share basic characteristics. A pattern verycommon in D will likely also occur in samples from Dn;we should take this into account when sampling t′s.

Given some prototype outliers, we generate newsamples according to the following distribution. First,we uniformly choose a transaction t among the givenprototype outliers. Next, from t we select an item i toremove, using the following exponential distribution,

Pr(i) =2−1/l(i)∑

j∈t2−1/l(j)

,

where, l(i) = L(Z|CT )|Z| and i ∈ Z ∈ cover(t) . By this

choice, we prefer to remove those items that requirethe most bits to be described�that is, those that �tthe patterns from the positive class least. To completethe swap, we choose an item from I \ t to add tot. (Note that if the original dataset is categorical, itonly makes sense to swap to items corresponding tothe same category.) We choose the item j to swap toaccording to the following distribution, similar to howwe previously [27] imputed missing values,

Pr(j) =2−L(tj |CT )∑

k∈I\(t\i)2−L(tk|CT )

,

with tj = (t \ {i}) ∪ {j}. This distribution generatestransactions t′ with preference to short encoding.

To estimate the expected false positive rate, we gen-erate a large number of samples and calculate mean andstandard deviation. One can use Cantelli's inequality,or assume the encoded lengths of the outliers to followa normal distribution. Then, one can update θ by tak-ing both FPR and FNR into account, e.g. choose theintersection between the two distributions.

Page 7: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

2.9 Measuring Decision Certainty Item swap-ping is also useful to show how a transaction t needs tobe modi�ed in order to change the classi�cation verdict.Or, the other way around, to show what items are mostimportant with regard to the decision of t. However,we can go one step further, and look at the certaintyof a decision by considering the encoded lengths of al-tered transactions. The rationale is that the more weneed to change t to let its encoded length reach belowthe decision threshold, the more likely it is this exampleis indeed an outlier. Alternatively, for a sample withan observation error, a small change may be enough toallow for a correct decision.

So, the goal is, given a transaction t, to maximallyreduce the encoded size L(t | CT ) with a limitednumber of changes δ. In general, transactions may havedi�erent cardinality, so up to δ elements can be added�in categorical databases transactions are of the samesize and up to δ items need to be swapped. Clearly,with

(|I\t|δ

)×(|t|δ

)possible altered transactions, solving

this problem exhaustively quickly becomes infeasible forlarger δ and I. However, in our setup we can exploitthe information in the code table to guide us in choosingthose swaps that will lead to a short encoding.

The idea is to cover the transaction t using themost speci�c elements, i.e., the itemsets X ∈ CT withhighest cardinality |X|, while tolerating up to δ missingitems. The reason to choose the most speci�c elementsis that we cover the most singletons by one itemset, andtherewith replace many (on average long) codes by justone (typically short) code. Note that, alternatively, onecould attempt to greedily cover with the elements withthe shortest codes, or even minimise the encoded lengthby dynamic programming.

We present the pseudo-code for �nding a δ-fault-tolerant cover for a transaction t and a code table CT asAlgorithm 1. In order to calculate the resulting encodedlength of t, we simply use the code lengths in the codetable. In the algorithm, while covering t, we keep trackof the number of swaps made so far, denoted as ε. Oncethe number of uncovered items in t is smaller or equalthan ε (line 2) we can stop: the items remaining in tare the items we have to remove, the items S \ t are theones we have to add. We only use Algorithm 1 as a stepduring analysis of decisions; it would require non-trivialadaptations to Krimp to let it consider missing itemswhen constructing the optimal code table, and our focushere is clearly not to construct a new compressor.

3 Related Work

Much of the existing work on one-class classi�cation tar-gets record data constructed with numerical attributes.For a general overview, we refer to [17, 24]. Very few

Algorithm 1 Fault-Tolerant Cover

Input: Transaction t ∈ D and code table CT , with CTand D over a set of items I. Maximum number offaults δ, and current number of faults ε.

Output: Fault-tolerant cover of t using the most spe-ci�c elements of CT , tolerating at most δ faults.

1. S ← smallest X of CT in Standard Cover Order

with |X \ t| ≤ δ, and X ∈ t if |X| = 12. if |t \ S| ≤ ε then3. Res← {S}4. else

5. Res← {S} ∪Fault-TolerantCover(t\S,CT, δ�|S\t|,ε+|S\t|)

6. end if

7. return Res

of these studies are applicable to transaction data, asmany of the these methods rely on density estima-tions (e.g., Parzen-windows or mixture of Gaussians)to model the positive class. Two state-of-the-art algo-rithms that, by respectively using the appropriate ker-nel or distance measure, are applicable to binary dataare Support Vector Data Description (SVDD) [26], orone-class SVM [20], and Nearest Neighbour Data De-scription (NNDD) [24].

He et al. [9] study outlier detection for transactiondatabases. The authors assume that transactions hav-ing less frequent itemsets are more likely to be outliers.Narita et al. [18], on the other hand, use informationof association rules with high con�dence for the outlierdegree calculation. Both these approaches were formu-lated to detect outliers in a database, but can also beused for single-class problems. While both methods usepatterns and share the transparency of our approach,their performance is very parameter-sensitive. For theformer, the authors restrict themselves to the top-k fre-quent itemsets. In the latter, besides a minimum sup-port threshold, the user also needs to specify minimumcon�dence. Both papers notice large changes in accu-racy depending on the parameter settings, but postponeinsight in how to set these optimally to future work.

We are not the �rst to employ the MDL princi-ple for one-class classi�cation. However, to the bestof our knowledge, we are the �rst to apply it in a bi-nary/transaction database setting. Bratko et al. [3] andNisenson et al. [19] consider streams of character data(e.g., text, streams of bytes or keyboards events, etc.).In these approaches, the compressor is immaterial; thatis, well-known universal compression algorithms, suchas gzip, are used, which do not allow for inspection.The algorithms compress common shared (sub)stringsof characters that occur often together in the streams.

Page 8: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

Table 1: Statistics of the datasets used in the experi-ments. Given are, per dataset, the number of rows, thenumber of distinct items, the number of classes and theminsup thresholds for the Krimp-compressor.

Krimp

Dataset |D| |I| |K| minsup

Adult 48842 95 2 50Anneal 898 66 5 1Breast 699 14 2 1Chess (k-k) 3196 75 2 400Chess (kr-k) 28056 58 18 1Connect-4 67557 129 3 1Led7 3200 14 10 1Mushroom 8124 117 2 1Nursery 12960 27 4 1Pageblocks 5473 39 5 1Pen Digits 10992 76 10 10Pima 768 36 2 1Typist 533 40 10 1

In transaction databases one is not interested in se-quences of items, as items are unordered.

We use Krimp, introduced by Siebes et al. [21],to build a compression model relying on the (frequent)itemsets to encode transactions. Van Leeuwen et al.show that these models are able to compete with thestate-of-the-art multi-class classi�ers [15]. Alterna-tively, one could use Pack [23], or any other suitedtransaction data compressor, in our framework.

4 Experiments

In this section we experimentally evaluate our approach.First, we discuss the experimental setup, then investi-gate classi�cation accuracy. Next, we show how classi-�cation decisions can be characterised, and observationerrors in transactions can be detected. Finally, we esti-mate the distribution of encoded lengths for outliers toimprove classi�cation results.

4.1 Experimental Setup For the experimental val-idation of our method we use a subset of publically avail-able discretised datasets from the LUCS-KDD reposi-tory [4]. In addition to these datasets, shown in Ta-ble 1, we also consider the Typist recognition problemprovided by Hempstalk et al. [10], discretised and nor-malised using the LUCS-KDD DN software [4].

We turn this selection of multi-class classi�cationdatasets into several one-class classi�cation problems.For each dataset, one class at a time, we consider a

particular class K ∈ K as the positive class and thesamples from the remaining classes K \ K as outliers.All results reported in this section are 10-fold cross-validated.

To obtain the Krimp code table CTK for a datasetDK , we use (closed) frequent itemsets inDK mined withminsup set as low as practically feasible. The actualvalues for minsup are depicted in Table 1.

4.2 Classi�cation We compare our method to twostate-of-the-art [10, 26] one-class classi�ers: SupportVector Data Description (SVDD) [20, 26] and NearestNeighbour Data Description (NNDD) [24], both ofwhich are publically available in DDtools [25].

For the kernel in SVDD, or one-class SVM, we usethe polynomial kernel, and optimise degree parameterd for high accuracy. While more generally employedin one-class classi�cation, for binary data the RBFkernel leads to worse results. One other advantage ofusing polynomial kernels with binary data is the closerelatedness to itemsets: the attributes in the featurespace induced by this kernel indicate the presence ofitemsets up to length d.

For NNDD we use the Hamming distance. To deter-mine the number of neighbouring points that are used todecide the classi�cation, parameter k, we optimise thelog-likelihood of the leave-one-out density estimation.

To compare the algorithms, we use the AUC, i.e.area under the ROC curve, as it is independent of ac-tual decision thresholds. Table 2 shows the AUC scoresaveraged over 10-folds and each of the classes of eachdataset. We see, and it is con�rmed by pairwise Stu-dent's t-tests at α-level 5%, that, in general, the perfor-mance of OC3 is on par with that of SVDD and bothalgorithms clearly outperform NNDD. Especially fordatasets with high numbers of transactions, e.g. Chess(kr-k), Connect-4,Mushroom, and Pen Digits, OC3 pro-vides very good performance, while for data with verysmall classes, such as Pima and Typist, it does not im-prove over the competing methods. This is expected,as MDL requires su�cient samples to properly estimatethe training distribution. In conclusion, OC3 performson par with the state of the art, and can improve overit for large databases.

The sub-par performance of all classi�ers on Adult,Pageblocks, and Pima, can be explained: these datasetscontain large numbers of identical transactions that onlydi�er on class-label, making errors unavoidable.

In our setup, classi�cation depends on code lengthdistributions for the di�erent classes. Figures 2a and2b show the histograms on the training instances of twoclasses from the Pen Digits dataset. One can notice thatthe positive transactions (shown in hatched red) are bet-

Page 9: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

Table 2: AUC scores for the benchmark datasets. Shown are, per dataset, mean and standard deviation of theaverage AUC score over the classes. The Krimp-compressor in OC3 ran using the minsup values in Table 1.

Dataset OC3 SVDD NNDD

Adult 68.63 ± 3.71 72.86 ± 6.68 65.64 ± 5.84Anneal 95.58 ± 0.62 93.62 ± 9.95 97.32 ± 2.36Breast 87.12 ± 12.76 96.47 ± 1.19 72.77 ± 33.04Chess (k-k) 68.57 ± 0.58 65.62 ± 7.89 82.27 ± 1.69Chess (kr-k) 94.89 ± 5.18 86.46 ± 8.71 80.38 ± 9.79Connect-4 73.73 ± 6.47 55.14 ± 6.98 62.22 ± 5.52Led7 91.45 ± 3.50 93.41 ± 3.45 79.43 ± 7.26Mushroom 100.00 ± 0.00 97.69 ± 2.89 99.92 ± 0.07Nursery 98.43 ± 1.68 98.68 ± 1.68 84.54 ± 7.16Pageblocks 52.59 ± 23.87 56.79 ± 13.91 51.13 ± 13.07Pen Digits 98.25 ± 0.89 98.98 ± 0.80 98.32 ± 1.00Pima 50.94 ± 28.93 65.32 ± 9.66 50.63 ± 12.81Typist 87.81 ± 6.93 92.30 ± 6.35 87.84 ± 7.73

average 84.62 ± 8.11 84.71 ± 3.35 80.11 ± 8.79

ter compressed than the outliers, i.e. the other classes,(�lled blue) which is in accordance with the MDL as-sumption. The quality of the classi�cation result is de-termined by the amount of overlap. Following, the morethe two distributions are apart, the better the resultsare. For the sub-par performing datasets in Table 2,the histograms overlap virtually completely, and hencethe separation-assumption is not met.

If memory or time constraints do not allow us tomine for frequent itemsets at low minsup, e.g. for thedense Chess (k-k) dataset, some characteristic patternsmight be missing from the code tables, in turn leadingto sub-par compression and performance. Clearly, atfurther expense, mining at lower minsup would providebetter compression, which in turn would most likelyprovide better performance on these datasets.

4.3 Inspection and Characterisation One of thekey strengths of our approach is that we can analyseand explain the classi�cation of transactions. Here, weinvestigate how well the approach Section 2.7 outlinesworks in practice. Note that black-box methods likeSVDD and NNDD do not allow for characterisation.

To demonstrate the usability of our approach ina real problem setting, we perform a case studyon real MCADD data, described in detail in Sec-tion 4.5, obtained from the Antwerp University Hos-pital. Medium-Chain Acyl-coenzyme A DehydrogenaseDe�ciency (MCADD) [1] is a de�ciency newborn babiesare screened for during a Guthrie test on a heel prickblood sample. This recessive metabolic disease a�ectsabout one in 10 000 people while around one in 65 is a

carrier of the responsible mutated gene. If left undiag-nosed, this rare disease is fatal in 20 to 25% of the casesand many survivors are left with severe brain damageafter a severe crisis.

Figure 3, which shows the covers of 4 transactionsfrom the MCADD dataset, serves as our running ex-ample. A typical cover of a transaction from the posi-tive class is shown in Figure 3a (bottom): one or morelarger itemsets possibly complemented with some sin-gletons. Also note that the lengths of the individualcodes, denoted by the alternating light and dark greybars, are short. This is in strong contrast with the cov-ers of the other transactions, which resemble typical cov-ers for outlier transactions, where mostly singletons areused. Also, the code lengths of itemsets in the cover ofan outlier transaction are typically long.

The `outlier' transaction at the top of Figure 3a wasarti�cially constructed by taking a transaction from thepositive class. If we use Algorithm 1, with δ, the numberof mistakes allowed, set to one, we exactly recover thetrue positive transaction (bottom of Figure 3a). Thisshows that we are able to detect and correct observationerrors in future samples. Or, the other way around,if many swaps are needed for the decision to change,this gives a plausible explanation why the transactionis identi�ed as an outlier.

The top transaction in Figure 3b is a true outlier.We �rst of all observe that the encoded size of thetransaction is large. Next, as the items are labeleddescending on their support, we see that more thanhalve of the items belong to the 20% least frequent.Moreover, we note that by applying Algorithm 1 the

Page 10: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

0 20 40 60 80 100 120 140 160

Code lengths (bits)

0

500

1000

1500

2000

2500

3000

#tr

ansa

ctio

ns

(a) Pen Digits - Class 1

0 20 40 60 80 100 120 140 160

Code lengths (bits)

0

200

400

600

800

1000

1200

#tr

ansa

ctio

ns

(b) Pen Digits - Class 10

0 50 100 150 200

Code lengths (bits)

0

1000

2000

3000

4000

5000

6000

7000

#tr

ansa

ctio

ns

(c) MCADD - Healthy Class

Figure 2: Code length histograms for MCADD and Pen Digits. Shown are the compressed sizes of transactionsof the positives (in hatched red) and the outliers (in �lled blue). The solid black line depicts our estimate, using4 counterexamples, of the encoded lengths for the outliers. The dashed line represents the decision thresholdbounding the FPR at 10%, while the dotted line, if present, shows the decision threshold after updating.

gains in encoded length are negligible (see bottomof Figure 3b for one example). This trend holds inpractice, and strengthens con�dence in the assumptionmade in Section 2.8, that small variations of negativesamples remain `negative'. However, as shown above,perturbing positive samples can cause large variation inencoded size as larger patterns fall apart into singletons.

4.4 Estimating Outlier Distributions Next, weinvestigate how well we can estimate the distribution ofencoded lengths for outliers, by generating samples froma limited number of negatives, as outlined in Section 2.8.For both the MCADD and Pen Digits dataset, wegenerated 10 000 samples based on 4 randomly selectedoutliers. As shown in Figure 2, the so-derived normaldistributions, based on the sample mean and standardvariation, approximate the true outlier distributionsclosely. Note that, as intended, the estimate is slightlyconservative.

Alternatively, if we uniformly swap items, the pat-terns shared by both outliers and positives are morelikely to be destructed. Experiments show this providesoverly optimistic estimates of the separation of the dis-tributions. Further, in many situations, it is sensible toestimate pessimistically. That is, closer to the positivesamples. For example, if MCADD is left undiagnosed,it is fatal in 20% to 25% of the cases, and survivors aretypically left with severe brain damage.

We will now use illustrate through Figure 2a and2b how a user can use this information to updatethe decision threshold θ. Initially, the user only hasinformation from the positive class, denoted by thehatched red histograms. By using Cantelli's inequality,the decision threshold can be set to allow up to 10% falsenegatives (dashed line). After estimating the negative

distribution, we notice this initial choice �ts perfect forclass 10 in Figure 2b. However, the decision thresholdfor class 1 in Figure 2a is too low (5% FNR, 0.2%FPR). If we update the decision threshold (dotted line)to counterbalance both the estimated false negative andfalse positive rate using Cantelli's inequality, we observethat the false negative and false positive rates on thehold-out validation set are more in balance: 1.8% FNRand 1.5% FPR. So, by using information derived fromthe arti�cial outliers, the user can update the thresholdand improve classi�cation results.

4.5 Case study: MCADD In our study, thedataset contains controls versus MCADD, with respec-tively 32 916 negatives and only 8 positives. The in-stances are represented by a set of 21 features: 12 dif-ferent acylcarnitine concentrations measured by tandemmass spectrometry (TMS), together with 4 of their cal-culated ratios and 5 other biochemical parameters. Weapplied k-means clustering with a maximum of 10 clus-ters per feature to discretise the data resulting in 195di�erent items. We run Krimp using a minimum sup-port of 15, which corresponds to a relative minsup of0.05%.

Repeated experiments using 10-fold cross-validationshow that all 8 positive cases are ranked among the top-15 largest encoded transactions. Besides, we notice thatthe obtained performance indicators (100% sensitivity,99.9% speci�city and a positive predictive value of53.3%) correspond with the state-of-the-art results [1,11] on this problem. Moreover, analysing the positivecases by manually inspecting the patterns in the codetable and covers, reveals that particular combinationsof values for acylcarnitines C2, C8 and C10 togetherwith particular following ratios C8

C2 ,C8C10 and C8

C12 were

Page 11: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

71424

918

5869

8893

94104

39120

136178

91133

1 31 62 95

13151

95

71424

918

5869

8893

94104

39120

136178

91133

(a)

210156

37108188

7086

177183 14

69

129

169

172

179

180

184

187

210156

37108188

7086

473

20

172177183

14

129

169

179

180

184

187

(b)

Figure 3: Example transactions fromMCADD: observation error (top left), true outlier (top right) and corrections(bottom) suggested by Algorithm 1 (δ = 1). The rounded boxes visualise the itemsets that are used to coverthe transaction; each itemset is linked to its code. Width of the bar represents the length of the code. Swappeditems are displayed in boldface. Clearly, the observation error is correctly identi�ed, as its encoded length can bedecreased much with only swap, whereas the encoded length of the outlier cannot be improved much.

grouped together in the covers of the positive cases.Exactly these combination of variables are commonlyused in diagnostic criteria by experts and were alsodiscovered in previous in-depth studies [1, 11].

The largest negative samples stand out as a rarecombination of other acetylcarnitine values. Althoughthese samples are not MCADD cases, they are verydi�erent from the general population and are thereforeoutliers by de�nition.

5 Discussion

The experiments in the previous section demonstratethat our method works: transactions that are succinctlycompressed by patterns from the positive class areindeed highly likely to belong to that class. Theobtained AUC scores are on par with the state-of-the-art one-class classi�ers for binary data, and especiallygood for large datasets.

In practice, a user lacks an overall performance mea-sure to reliably specify the speci�city/sensitivity thresh-old, as examples for the negative class are rare in one-class classi�cation. Consequently, the ability to inspectclassi�cation decisions is important. In contrast to ex-isting approaches, our pattern-based method providesthe opportunity to analyse decisions in detail.

Examples in the experiments show possible usecases. First, we are able to explain why a transactionis classi�ed as such. Transactions that are coveredwith itemsets that are highly characteristic for thepositive class are likely positives as well, while thosetransactions that do not exhibit such key patterns(and thus encoded almost solely by singletons) can be

considered as outliers. Next, our approach is able todetect, and correct, observation errors in test samples.

Furthermore, if some outliers are available, we pro-pose to approximate the encoding distributions of theoutliers. By using this information, a user is able tomake a more informed decision when setting the decisionthreshold. Here, we choose to generate samples con-servatively. Visualising the approximated distributionof encoded lengths for outliers shows whether one-classclassi�cation, based on compressed lengths, is actuallypossible.

A case study on the MCADD dataset shows thattrue outliers are correctly identi�ed. Di�erent fromthe setup explored here, where unseen transactionsare considered as potential outliers, one could also beinterested in detecting outliers in the dataset at hand.The method discussed in this paper may well provide asolution for this problem, that is, pointing out the mostlikely outlying items and transactions by compressedsize. Related, as a future work, we are investigating arigorous approach for cleaning data using MDL.

Although in this work we focus on binary data, themethods we present can be generalised as a genericapproach using MDL. That is, as long as a suitedcompressor is employed, the theory will not di�er forother data types. Variants of Krimp have already beenproposed for sequences, trees, and graphs.

6 Conclusion

In this paper we introduced a novel approach to out-lier detection, or one-class classi�cation, for binary ortransaction data. In this setting little or no examples

Page 12: The Odd One Out: Identifying and Characterising Anomalieseda.mmci.uni-saarland.de/pubs/2011/the_odd_one_out-smets,vreeke… · The Odd One Out: Identifying and Characterising Anomalies

are available for the class that we want to detect, butan abundance of positive samples exists. Our methodis based on the Minimum Description Length principle,and decides by the number of bits required to encode anexample using a compressor trained on samples of thenormal situation. If the number of bits is much largerthan expected, we decide the example is an outlier.

Experiments show that this approach provides ac-curacy on par with the state of the art.

Most important, though, is that it holds threeadvantages over existing methods. First, by relyingon pattern-based compression, our method allows fordetailed inspection and characterisation of decisions,both by showing which patterns were recognised in theexample, as well as by checking whether small changesa�ect the decision. Second, we show that given a fewexample outliers, our method can reliably estimate thedecision landscape. Thereby, it can predict whether thepositive class can be detected at all, and allows the userto make an informed choice for the decision threshold.Third, given this estimate the method is parameter-free.

Acknowledgements

The authors thank i-ICT of Antwerp University Hospi-tal (UZA) for providing MCADD data and expertise.Koen Smets and Jilles Vreeken are respectively sup-ported by a Ph.D. fellowship and Postdoctoral fellow-ship of the Research Foundation - Flanders (FWO).

References

[1] C. Baumgartnera, C. Böhm, and D. Baumgartner.Modelling of classi�cation rules on metabolic patternsincluding machine learning and expert knowledge. J.

Biomed. Inform., 38:89�98, 2005.[2] R. J. Bolton and D. J. Hand. Statistical fraud detec-

tion: A review. Stat. Sci., 17(3), 2002.[3] A. Bratko, G. V. Cormack, B. Filipi£, T. R. Lynam,

and B. Zupan. Spam �ltering using statistical datacompression models. JMLR, 7, 2006.

[4] F. Coenen. The LUCS-KDD discretised/normalisedARM and CARM data library, 2003. http://www.csc.liv.ac.uk/~frans/KDD/Software/.

[5] N. Dom, D. Knapen, D. Benoot, I. Nobels, andR. Blust. Aquatic multi-species acute toxicity of(chlorinated) anilines: Experimental versus predicteddata. Chemosphere, 81:177�186, 2010.

[6] A. B. Gardner, A. M. Krieger, G. Vachtsevanos, andB. Litt. One-class novelty detection for seizure analysisfrom intracranial EEG. JMLR, 7, 2006.

[7] G. Grimmett and D. Stirzaker. Probability and Ran-

dom Processes. 2001.[8] P. D. Grünwald. The Minimum Description Length

Principle. 2007.

[9] Z. He, X. Xu, J. Z. Huang, and S. Deng. FP-Outlier:Frequent pattern based outlier detection. ComSIS,2(1), 2005.

[10] K. Hempstalk, E. Frank, and I.H. Witten. One-classclassi�cation by combining density and class probabil-ity estimation. In Proceedings of ECML PKDD'08,2008.

[11] S. Ho, Z. Lukacs, G. F. Ho�mann, M. Lindner, andT. Wetter. Feature construction can improve diagnos-tic criteria for high-dimensional metabolic data in new-born screening for medium-chain acyl-coa dehydroge-nase de�ciency. Clin. Chem., 53(7), 2007.

[12] P. Juszczak, N. M. Adams, D. J. Hand, C. Whitrow,and D. J. Weston. O�-the-peg and bespoke classi�ersfor fraud detection. Comput. Stat. Data Anal., 52(9),2008.

[13] P. Laskov, C. Schäfer, and I. Kotenko. Intrusion de-tection in unlabeled data with quarter-sphere support-vector machines. In Proceedings of DIMVA'04, 2004.

[14] C.J. van Leeuwen and T.G. Vermeire. Risk Assessmentof Chemicals. Springer, 2007.

[15] M. van Leeuwen, J. Vreeken, and A. Siebes. Com-pression picks item sets that matter. In Proceedings of

ECML PKDD'06, 2006.[16] M. Li and P. M. B. Vitányi. An Introduction to

Kolmogorov Complexity and its Applications. 1993.[17] M. Markou and S. Singh. Novelty detection: a review.

Sign. Proc., 83(12), 2003.[18] K. Narita and H. Kitagawa. Outlier detection for

transaction databases using association rules. In Pro-

ceedings of WAIM'08, 2008.[19] M. Nisenson, I. Yariv, R. El-Yaniv, and R. Meir.

Towards behaviometric security systems: Learning toidentify a typist. In Proc. of ECML PKDD'03, 2003.

[20] B. Schölkopf, J. Platt, J. Shawe-Taylor, A. Smola, andR. Williamson. Estimating the support of a high-dimensional distribution. Neural Comp., 13(7), 2001.

[21] A. Siebes, J. Vreeken, and M. van Leeuwen. Item setsthat compress. In Proceedings of SDM'06, 2006.

[22] K. Smets, B. Verdonk, and E. M. Jordaan. Discov-ering novelty in spatio/temporal data using one-classsupport vector machines. In Proc. of IJCNN'09, 2009.

[23] N. Tatti and J. Vreeken. Finding good itemsets bypacking data. In Proceedings of ICDM'08, 2008.

[24] D.M.J. Tax. One-class classi�cation; Concept-learningin the absence of counter-examples. PhD thesis, 2001.

[25] D.M.J. Tax. DDtools 1.7.3, the data descriptiontoolbox for matlab, 2009.

[26] D.M.J. Tax and R.P.W. Duin. Support vector datadescription. Mach. Learn., 54(1), 2004.

[27] J. Vreeken and A. Siebes. Filling in the blanks -Krimp minimisation for missing data. In Proceedings

of ICDM'08, 2008.[28] J. Vreeken, M. van Leeuwen, and A. Siebes. Character-

ising the di�erence. In Proceedings of KDD'07, 2007.[29] C. S. Wallace. Statistical and Inductive Inference by

Minimum Message Length. 2005.