32
Data analysis and modeling: Data analysis and modeling: the tools of the trade the tools of the trade Patrice Koehl Department of Biological Sciences National University of Singapore http://www.cs.ucdavis.edu/~koehl/Teaching/BL5229 [email protected]

Data analysis and modeling: the tools of the trade

Embed Size (px)

DESCRIPTION

Data analysis and modeling: the tools of the trade. Patrice Koehl Department of Biological Sciences National University of Singapore. http://www.cs.ucdavis.edu/~koehl/Teaching/BL5229 [email protected]. Tools of the trade. Set of numbers Binary representation of numbers Floating points - PowerPoint PPT Presentation

Citation preview

Page 1: Data analysis and modeling: the tools of the trade

Data analysis and modeling:Data analysis and modeling:the tools of the tradethe tools of the trade

Patrice KoehlDepartment of Biological Sciences

National University of Singapore

http://www.cs.ucdavis.edu/~koehl/Teaching/[email protected]

Page 2: Data analysis and modeling: the tools of the trade

Tools of the trade

Set of numbers

Binary representation of numbers

Floating points

Digital sound

Vectors and matrices

Page 3: Data analysis and modeling: the tools of the trade

Tools of the trade

Page 4: Data analysis and modeling: the tools of the trade

The different set of numbers

Page 5: Data analysis and modeling: the tools of the trade

Tools of the trade

Page 6: Data analysis and modeling: the tools of the trade

Number representationNumber representation

1 7 3 21000 100 10 1

1x1000+7x100+3x10+2x1 = 1732

1000 100 10 1

We are used to counting in base 10:

Example:

….. thousands hundreds tens units

103 102 101 100

digits

Page 7: Data analysis and modeling: the tools of the trade

1 1 0 1 1 0 0 0 1 0 0

1024 512 256 128 64 32 16 8 4 2 1

1x1024+1x512+0x256+1x128+1x64+0x32+ 0x16+ 0x8 + 1x4 + 0x2 + 0x1 = 1732

Computers use a different system: base 2:

1024 512 256 128 64 32 16 8 4 2 1

210 29 28 27 26 25 24 23 22 21 20

Example:

bits

Number representationNumber representation

Page 8: Data analysis and modeling: the tools of the trade

Base 10 Base 2

0 0

1 1

2 10

3 11

4 100

5 101

6 110

… …

253 11111101

254 11111110

255 11111111

… …

Number representationNumber representation

Page 9: Data analysis and modeling: the tools of the trade

From base 2 to base 10:

1 1 1 0 1 0 1 0 1 0 0

1024 512 256 128 64 32 16 8 4 2 1

1x1024+1x512+1x256+0x128+1x64+0x32+ 1x16+ 0x8 + 1x4 + 0x2 + 0x1 = 1876

Conversion

From base 10 to base 2:

1877 %2 = 938 Remainder 1 938 %2 = 469 Remainder 0 469 %2 = 234 Remainder 1 234 %2 = 117 Remainder 0 117 %2 = 58 Remainder 1 58 %2 = 29 Remainder 0 29 %2 = 14 Remainder 1 14 %2 = 7 Remainder 0 7 %2 = 3 Remainder 1 3 %2 = 1 Remainder 1 1 %2 = 0 Remainder 1

1877 (base10) = 11101010101 (base 2)

Page 10: Data analysis and modeling: the tools of the trade

Tools of the trade

Page 11: Data analysis and modeling: the tools of the trade

IEEE Floating PointIEEE Floating PointIEEE Floating PointIEEE Floating Point

IEEE Standard 754Established in 1985 as uniform standard for floating

point arithmeticBefore that, many idiosyncratic formats

Supported by all major CPUs

Driven by Numerical ConcernsNice standards for rounding, overflow, underflowHard to make go fast

Numerical analysts predominated over hardware types in defining standard

Page 12: Data analysis and modeling: the tools of the trade

Numerical Form

–1s M 2E

Sign bit s determines whether number is negative or positive

Significand M normally a fractional value in range [1.0,2.0).

Exponent E weights value by power of two

Encoding

MSB is sign bitexp field encodes Efrac field encodes M

Floating Point RepresentationFloating Point RepresentationFloating Point RepresentationFloating Point Representation

s exp frac

Page 13: Data analysis and modeling: the tools of the trade

Encoding

MSB is sign bitexp field encodes Efrac field encodes M

SizesSingle precision: 8 exp bits, 23 frac bits

(32 bits total)

Double precision: 11 exp bits, 52 frac bits(64 bits total)

Extended precision: 15 exp bits, 63 frac bits Only found in Intel-compatible machines Stored in 80 bits (1 bit wasted)

Floating Point PrecisionsFloating Point PrecisionsFloating Point PrecisionsFloating Point Precisions

s exp frac

Page 14: Data analysis and modeling: the tools of the trade

Special ValuesSpecial ValuesSpecial ValuesSpecial Values

Condition exp = 111…1

exp = 111…1, frac = 000…0 Represents value(infinity) Operation that overflows Both positive and negative E.g., 1.0/0.0 = 1.0/0.0 = +, 1.0/0.0 =

exp = 111…1, frac 000…0 Not-a-Number (NaN) Represents case when no numeric value can be

determined E.g., sqrt(–1),

Page 15: Data analysis and modeling: the tools of the trade

Floating Point OperationsFloating Point OperationsFloating Point OperationsFloating Point Operations

Conceptual View First compute exact result Make it fit into desired precision

Possibly overflow if exponent too largePossibly round to fit into frac

Rounding Modes (illustrate with $ rounding)

$1.40 $1.60 $1.50 $2.50 –$1.50

Round down (-) $1 $1 $1 $2 –$2 Round up (+) $2 $2 $2 $3 –$1 Nearest Even $1 $2 $2 $2 –$2

Note:1. Round down: rounded result is close to but no greater than true result.2. Round up: rounded result is close to but no less than true result.

Page 16: Data analysis and modeling: the tools of the trade

Tools of the trade

Set of numbers

Binary representation of numbers

Floating points

Digital sound

Vectors and matrices

Page 17: Data analysis and modeling: the tools of the trade

SoundSound is produced by the vibration of a media like air or water. is produced by the vibration of a media like air or water. Audio refers to the sound within the range of human hearing. Audio refers to the sound within the range of human hearing. Naturally, a sound signal Naturally, a sound signal is analogis analog, i.e. , i.e. continuous in both time continuous in both time and amplitude. and amplitude.

To store and process sound information in a computer or to To store and process sound information in a computer or to transmit it through a computer network, we must first transmit it through a computer network, we must first convert convert the analog signal to digital formthe analog signal to digital form using an analog-to-digital using an analog-to-digital converter ( ADC ); the conversion involves two steps: (1converter ( ADC ); the conversion involves two steps: (1) ) samplingsampling, and (2) , and (2) quantizationquantization..

Digital Sound

Page 18: Data analysis and modeling: the tools of the trade

SamplingSampling is the process of examining the value of a continuous function at regular intervals.

Sampling usually occurs at uniform intervals, which are referred to as sampling intervals. The reciprocal of sampling interval is referred to as the sampling frequency or sampling rate. If the sampling is done in time domain, the unit of sampling interval is second and the unit of sampling rate is Hz, which means cycles per second.

Page 19: Data analysis and modeling: the tools of the trade

Note that choosing the sampling rate is not innocent:

Sampling

A higher sampling rate usually allows for a better representation of the original sound wave. However, when the sampling rate is set to twice the highest frequency in thesignal, the original sound wave can be reconstructed without loss from the samples.This is known as the Nyquist theorem.

Page 20: Data analysis and modeling: the tools of the trade

QuantizationQuantization is the process of limiting the value of a sample of a continuous function to one of a predetermined number of allowed values, which can then be represented by a finite number of bits.

Page 21: Data analysis and modeling: the tools of the trade

QuantizationThe number of bits used to store each intensity defines the accuracy of the digital sound:

Adding one bit makes the sample twice as accurate

Page 22: Data analysis and modeling: the tools of the trade

Audio SoundSampling:

The human ear can hear sound up to 20,000 Hz: a sampling rate of 40,000 Hz is therefore sufficient. The standard for digital audio is 44,100 Hz.

Quantization:

The current standard for the digital representation of audio sound is to use 16 bits (i.e 65536 levels, half positive and half negative)

How much space do we need to store one minute of music?

- 60 seconds- 44,100 samples-16 bits (2 bytes) per sample- 2 channels (stereo)

S = 60x44100x2x2 = 10,534,000 bytes ≈ 10 MB !!1 hour of music would be more than 600 MB !

Page 23: Data analysis and modeling: the tools of the trade

Tools of the trade

Page 24: Data analysis and modeling: the tools of the trade

Vectors

• Set of numbers organized in an array

• Norm of a vector: size

Example: (x,y,z), coordinates of a point in space.

Page 25: Data analysis and modeling: the tools of the trade

Vector Addition

vv

ww

v+wv+w

Page 26: Data analysis and modeling: the tools of the trade

Inner (dot) Product

vv

ww

22112121 .),).(,(. yxyxyyxxwv

The inner product is a The inner product is a SCALAR!SCALAR!

cos||||||||),).(,(. 2121 wvyyxxwv

wvwv 0.

Page 27: Data analysis and modeling: the tools of the trade

MATRIX: A rectangular arrangement of numbers in rows and columns.

The ORDER of a matrix is the number of the rows and columns.

The ENTRIES are the numbers in the matrix.

rows

columns

The order of this matrix is a 2 x 3.

What is a matrix?

Page 28: Data analysis and modeling: the tools of the trade

To add two matrices, they must have the same order. To add, you simply add corresponding entries.

To subtract two matrices, they must have the same order. You simply subtract corresponding entries.

To multiply a matrix by a scalar, you multiply each entry in the matrix by that scalar.

To multiply two matrices A and B, A must have as many columns as B has rows.

Matrix operations

Page 29: Data analysis and modeling: the tools of the trade

Matrix Multiplication:

An (m x n) matrix A and an (n x p) matrix B, can be multiplied since the number of columns of A is equal to the number of rows of B.

Non-Commutative MultiplicationAB is NOT equal to BA

Matrix Addition:

Matrix operations

Page 30: Data analysis and modeling: the tools of the trade

Matrices

mnT

nm AC

Transpose:Transpose:

jiij ac TTT ABAB )(

TTT BABA )(

IfIf AAT A is symmetricA is symmetric

Page 31: Data analysis and modeling: the tools of the trade

Applications of matrices: rotations

Counter-clockwise rotation by an angle Counter-clockwise rotation by an angle

y

x

y

x

cossin

sincos

'

'

PP

xx

YY’’

PP’’

XX ’’

yy

R.PP'

Page 32: Data analysis and modeling: the tools of the trade

Applications of matrices: systems of equation

Let us consider the system:

If we define: and

The system becomes: which is solved as: