1 of 37

Input: �Concepts, Attributes, �Instances

2 of 37

Module Outline

  • Terminology
  • What’s a concept?
    • Classification, association, clustering, numeric prediction
  • What’s in an example?
    • Relations, flat files, recursion
  • What’s in an attribute?
    • Nominal, ordinal, interval, ratio
  • Preparing the input
    • ARFF, attributes, missing values, getting to know data

2

3 of 37

Terminology

  • Components of the input:
    • Concepts: kinds of things that can be learned
      • Aim: intelligible and operational concept description
    • Instances: the individual, independent examples of a concept
      • Note: more complicated forms of input are possible
    • Attributes: measuring aspects of an instance
      • We will focus on nominal and numeric ones

3

4 of 37

What’s a concept?

  • Data Mining Tasks (Styles of learning):
    • Classification learning:ďż˝predicting a discrete class
    • Association learning:ďż˝detecting associations between features
    • Clustering:ďż˝grouping similar instances into clusters
    • Numeric prediction:ďż˝predicting a numeric quantity
  • Concept: thing to be learned
  • Concept description: output of learning scheme

4

5 of 37

Classification learning

  • Example problems: attrition prediction, using DNA data for diagnosis, weather data to predict play/not play
  • Classification learning is supervised
    • Scheme is being provided with actual outcome
  • Outcome is called the class of the example
  • Success can be measured on fresh data for which class labels are known ( test data)
  • In practice success is often measured subjectively

5

6 of 37

Association learning

  • Examples: supermarket basket analysis -what items are bought together (e.g. milk+cereal, chips+salsa)
  • Can be applied if no class is specified and any kind of structure is considered “interesting”
  • Difference with classification learning:
    • Can predict any attribute’s value, not just the class, and more than one attribute’s value at a time
    • Hence: far more association rules than classification rules
    • Thus: constraints are necessary
      • Minimum coverage and minimum accuracy

6

7 of 37

Clustering

  • Examples: customer grouping
  • Finding groups of items that are similar
  • Clustering is unsupervised
    • The class of an example is not known
  • Success often measured subjectively

7

Sepal length

Sepal width

Petal length

Petal width

Type

1

5.1

3.5

1.4

0.2

Iris setosa

2

4.9

3.0

1.4

0.2

Iris setosa

…

51

7.0

3.2

4.7

1.4

Iris versicolor

52

6.4

3.2

4.5

1.5

Iris versicolor

…

101

6.3

3.3

6.0

2.5

Iris virginica

102

5.8

2.7

5.1

1.9

Iris virginica

…

8 of 37

Numeric prediction

  • Classification learning, but “class” is numeric
  • Learning is supervised
    • Scheme is being provided with target value
  • Measure success on test data

8

Outlook

Temperature

Humidity

Windy

Play-time

Sunny

Hot

High

False

5

Sunny

Hot

High

True

0

Overcast

Hot

High

False

55

Rainy

Mild

Normal

False

40

…

…

…

…

…

9 of 37

What’s in an example?

  • Instance: specific type of example
    • Thing to be classified, associated, or clustered
    • Individual, independent example of target concept
    • Characterized by a predetermined set of attributes
  • Input to learning scheme: set of instances/dataset
    • Represented as a single relation/flat file
  • Rather restricted form of input
    • No relationships between objects
  • Most common form in practical data mining

9

10 of 37

A family tree

Peter

M

10

Peggy

F

=

Steven

M

Graham

M

Pam

F

Grace

F

Ray

M

=

Ian

M

Pippa

F

Brian

M

=

Anna

F

Nikki

F

11 of 37

Family tree represented as a table

11

Name

Gender

Parent1

parent2

Peter

Male

?

?

Peggy

Female

?

?

Steven

Male

Peter

Peggy

Graham

Male

Peter

Peggy

Pam

Female

Peter

Peggy

Ian

Male

Grace

Ray

Pippa

Female

Grace

Ray

Brian

Male

Grace

Ray

Anna

Female

Pam

Ian

Nikki

Female

Pam

Ian

12 of 37

The “sister-of” relation

12

First �person

Second person

Sister of?

Peter

Peggy

No

Peter

Steven

No

…

…

…

Steven

Peter

No

Steven

Graham

No

Steven

Pam

Yes

…

…

…

Ian

Pippa

Yes

…

…

…

Anna

Nikki

Yes

…

…

…

Nikki

Anna

yes

First �person

Second person

Sister of?

Steven

Pam

Yes

Graham

Pam

Yes

Ian

Pippa

Yes

Brian

Pippa

Yes

Anna

Nikki

Yes

Nikki

Anna

Yes

All the rest

No

Closed-world assumption

13 of 37

A full representation in one table

13

First person

Second person

Sister�of?

Name

Gender

Parent1

Parent2

Name

Gender

Parent1

Parent2

Steven

Male

Peter

Peggy

Pam

Female

Peter

Peggy

Yes

Graham

Male

Peter

Peggy

Pam

Female

Peter

Peggy

Yes

Ian

Male

Grace

Ray

Pippa

Female

Grace

Ray

Yes

Brian

Male

Grace

Ray

Pippa

Female

Grace

Ray

Yes

Anna

Female

Pam

Ian

Nikki

Female

Pam

Ian

Yes

Nikki

Female

Pam

Ian

Anna

Female

Pam

Ian

Yes

All the rest

No

If second person’s gender = female�and first person’s parent = second person’s parent�then sister-of = yes

14 of 37

Generating a flat file

  • Process of flattening a file is called “denormalization”
    • Several relations are joined together to make one
  • Possible with any finite set of finite relations
  • Problematic: relationships without pre-specified number of objects
    • Example: concept of nuclear-family
  • Denormalization may produce spurious regularities that reflect structure of database
    • Example: “supplier” predicts “supplier address”

14

15 of 37

*The “ancestor-of” relation

15

First person

Second person

Sister of?

Name

Gender

Parent1

Parent2

Name

Gender

Parent1

Parent2

Peter

Male

?

?

Steven

Male

Peter

Peggy

Yes

Peter

Male

?

?

Pam

Female

Peter

Peggy

Yes

Peter

Male

?

?

Anna

Female

Pam

Ian

Yes

Peter

Male

?

?

Nikki

Female

Pam

Ian

Yes

Pam

Female

Peter

Peggy

Nikki

Female

Pam

Ian

Yes

Grace

Female

?

?

Ian

Male

Grace

Ray

Yes

Grace

Female

?

?

Nikki

Female

Pam

Ian

Yes

Other positive examples here

Yes

All the rest

No

16 of 37

*Recursion

  • Appropriate techniques are known as “inductive logic programming”
    • (e.g. Quinlan’s FOIL)
    • Problems: (a) noise and (b) computational complexity

16

If person1 is a parent of person2�then person1 is an ancestor of person2

If person1 is a parent of person2�and person2 is an ancestor of person3�then person1 is an ancestor of person3

  • Infinite relations require recursion

17 of 37

*Multi-instance problems

  • Each example consists of several instances
  • E.g. predicting drug activity
    • Examples are molecules that are active/not active
    • Instances are confirmations of a molecule
    • Molecule active (example positive)�🢩 at least one of its confirmations (instances) is active (positive)
    • Molecule not active (example negative)�🢩 all of its confirmations (instances) are not active (negative)
  • Problem:ďż˝identifying the “truly” positive instances

17

18 of 37

What’s in an attribute?

  • Each instance is described by a fixed predefined set of features, its “attributes”
  • But: number of attributes may vary in practice
    • Possible solution: “irrelevant value” flag
  • Related problem: existence of an attribute may depend of value of another one
  • Possible attribute types (“levels of measurement”):
    • Nominal, ordinal, interval and ratio

18

19 of 37

Nominal quantities

  • Values are distinct symbols
    • Values themselves serve only as labels or names
    • Nominal comes from the Latin word for name
  • Example: attribute “outlook” from weather data
    • Values: “sunny”,”overcast”, and “rainy”
  • No relation is implied among nominal values (no ordering or distance measure)
  • Only equality tests can be performed

19

20 of 37

Ordinal quantities

  • Impose order on values
  • But: no distance between values defined
  • Example:ďż˝attribute “temperature” in weather data
    • Values: “hot” > “mild” > “cool”
  • Note: addition and subtraction don’t make sense
  • Example rule:ďż˝ temperature < hot 🢩 play = yes
  • Distinction between nominal and ordinal not always clear (e.g. attribute “outlook”)

20

21 of 37

Interval quantities (Numeric)

  • Interval quantities are not only ordered but measured in fixed and equal units
  • Example 1: attribute “temperature” expressed in degrees Fahrenheit
  • Example 2: attribute “year”
  • Difference of two values makes sense
  • Sum or product doesn’t make sense
    • Zero point is not defined!

21

22 of 37

Ratio quantities

  • Ratio quantities are ones for which the measurement scheme defines a zero point
  • Example: attribute “distance”
    • Distance between an object and itself is zero
  • Ratio quantities are treated as real numbers
    • All mathematical operations are allowed
  • But: is there an “inherently” defined zero point?
    • Answer depends on scientific knowledge (e.g. Fahrenheit knew no lower limit to temperature)

22

23 of 37

Attribute types used in practice

  • Most schemes accommodate just two levels of measurement: nominal and ordinal
  • Nominal attributes are also called “categorical”, ”enumerated”, or “discrete”
    • But: “enumerated” and “discrete” imply order
  • Special case: dichotomy (“boolean” attribute)
  • Ordinal attributes are called “numeric”, or “continuous”
    • But: “continuous” implies mathematical continuity

23

24 of 37

Attribute types: Summary

  • Nominal, e.g. eye color=brown, blue, …
    • only equality tests
    • important special case: boolean (True/False)
  • Ordinal, e.g. grade=k,1,2,..,12
  • Continuous (numeric), e.g. year
    • interval quantities – integer
    • ratio quantities -- real

24

25 of 37

Why specify attribute types?

  • Q: Why Machine Learning algorithms need to know about attribute type?
  • A: To be able to make right comparisons and learn correct concepts, e.g.
    • Outlook > “sunny” does not make sense, while
    • Temperature > “cool” or
    • Humidity > 70 does
  • Additional uses of attribute type: check for valid values, deal with missing, etc.

25

26 of 37

Transforming ordinal to boolean

  • Simple transformation allowsďż˝ordinal attribute with n valuesďż˝to be coded using n–1 boolean attributes
  • Example: attribute “temperature”

  • Better than coding it as a nominal attribute

26

Temperature

Cold

Medium

Hot

Temperature > cold

Temperature > medium

False

False

True

False

True

True

Original data

Transformed data

🢩

27 of 37

Metadata

  • Information about the data that encodes background knowledge
  • Can be used to restrict search space
  • Examples:
    • Dimensional considerationsďż˝(i.e. expressions must be dimensionally correct)
    • Circular orderingsďż˝(e.g. degrees in compass)
    • Partial orderingsďż˝(e.g. generalization/specialization relations)

27

28 of 37

Preparing the input

  • Problem: different data sources (e.g. sales department, customer billing department, …)
    • Differences: styles of record keeping, conventions, time periods, data aggregation, primary keys, errors
    • Data must be assembled, integrated, cleaned up
    • “Data warehouse”: consistent point of access
  • Denormalization is not the only issue
  • External data may be required (“overlay data”)
  • Critical: type and level of data aggregation

28

29 of 37

The ARFF format

29

%

% ARFF file for weather data with some numeric features

%

@relation weather

@attribute outlook {sunny, overcast, rainy}

@attribute temperature numeric

@attribute humidity numeric

@attribute windy {true, false}

@attribute play? {yes, no}

@data

sunny, 85, 85, false, no

sunny, 80, 90, true, no

overcast, 83, 86, false, yes

...

30 of 37

Attribute types in Weka

  • ARFF supports numeric and nominal attributes
  • Interpretation depends on learning scheme
    • Numeric attributes are interpreted as
      • ordinal scales if less-than and greater-than are used
      • ratio scales if distance calculations are performed (normalization/standardization may be required)
    • Instance-based schemes define distance between nominal values (0 if values are equal, 1 otherwise)
  • Integers: nominal, ordinal, or ratio scale?

30

31 of 37

Nominal vs. ordinal

  • Attribute “age” nominal

  • Attribute “age” ordinal

(e.g. “young” < “pre-presbyopic” < “presbyopic”)

31

If age = young and astigmatic = no�and tear production rate = normal�then recommendation = soft

If age = pre-presbyopic and astigmatic = no �and tear production rate = normal �then recommendation = soft

If age ≤ pre-presbyopic and astigmatic = no�and tear production rate = normal�then recommendation = soft

32 of 37

Missing values

  • Frequently indicated by out-of-range entries
    • Types: unknown, unrecorded, irrelevant
    • Reasons:
      • malfunctioning equipment
      • changes in experimental design
      • collation of different datasets
      • measurement not possible
  • Missing value may have significance in itself (e.g. missing test in a medical examination)
    • Most schemes assume that is not the caseďż˝ 🢩 “missing” may need to be coded as additional value

32

33 of 37

Missing values - example

  • Value may be missing because it is unrecorded or because it is inapplicable
  • In medical data, value for Pregnant? attribute for Jane is missing, while for Joe or Anna should be considered Not applicable
  • Some programs can infer missing values

33

Name

Age

Sex

Pregnant?

..

Mary

25

F

N

Jane

27

F

-

Joe

30

M

-

Anna

2

F

-

Hospital Check-in Database

34 of 37

Inaccurate values

  • Reason: data has not been collected for mining it
  • Result: errors and omissions that don’t affect original purpose of data (e.g. age of customer)
  • Typographical errors in nominal attributes ⇒ values need to be checked for consistency
  • Typographical and measurement errors in numeric attributes ⇒ outliers need to be identified
  • Errors may be deliberate (e.g. wrong zip codes)
  • Other problems: duplicates, stale data

34

35 of 37

Precision “Illusion”

  • Example: gene expression may be reported as X83 = 193.3742, but measurement error may be +/- 20.
  • Actual value is in [173, 213] range, so it is appropriate to round the data to 190.
  • Don’t assume that every reported digit is significant!

35

36 of 37

Getting to know the data

  • Simple visualization tools are very useful
    • Nominal attributes: histograms (Distribution consistent with background knowledge?)
    • Numeric attributes: graphsďż˝(Any obvious outliers?)
  • 2-D and 3-D plots show dependencies
  • Need to consult domain experts
  • Too much data to inspect? Take a sample!

36

37 of 37

Summary

  • Concept: thing to be learned
  • Instance: individual examples of a concept
  • Attributes: Measuring aspects of an instance

  • Note: Don’t confuse learning “Class” and “Instance” with Java “Class” and “instance”

37