+ All Categories
Home > Documents > Signal processing methods for drift...

Signal processing methods for drift...

Date post: 01-Apr-2018
Category:
Upload: buiphuc
View: 219 times
Download: 5 times
Share this document with a friend
60
2 nd NOSE II Workshop Linköping, 18 - 21 May 2003 Signal processing methods for drift compensation Ricardo Gutierrez-Osuna Department of Computer Science Texas A&M University
Transcript
Page 1: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

2nd NOSE II WorkshopLinköping, 18 - 21 May 2003

Signal processing methods for drift compensation

Ricardo Gutierrez-Osuna

Department of Computer ScienceTexas A&M University

Page 2: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 2 -

Outline

Sources of "drift"Compensation approachesUnivariate methodsMultivariate methodsDiscussion

This material is based upon work supported by the National Science Foundation under

CAREER Grant No. 9984426 / 0229598

Page 3: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 3 -

What is drift?

"A gradual change in any quantitative characteristic

that is supposed to remain constant"

[Holmberg and Artursson, 2003], and references therein

Page 4: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 4 -

Sources of "drift"

True drift• Aging (reorganization of sensing layer)• Poisoning (irreversible binding)

Experimental noise• Short-term drift (warm-up, thermal trends)• Memory effects (hysteresis, sampling sequence)• Environmental (pressure, temp., seasonal)• Odor delivery (flow rate, outgass, condensation)• Matrix effects (background, humidity)• Sample degradation (oxidation, decarbonation)

Page 5: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 5 -

Approaches for drift compensation

Drift-free sensors• Duh!

Reference sensors• Differential or ratiometric measurements [Choi et al., 1985]

Excitation• Temperature modulation [Roth et al., 1996]

Frequent re-calibration• Unavoidable

Careful experimental design• Avoid systematic errors

Feature extraction• Transient response analysis [Wilson and DeWeerth, 1995]

Signal processing• The focus of this tutorial

Page 6: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 6 -

Signal processing for drift compensation

Univariate• Compensation applied to each sensor independently

• Frequency analysis• Baseline manipulation• Differential measurements (w/ calibrant)• Multiplicative correction (w/ calibrant)

Multivariate• Compensation applied to the response across sensors

• Adaptive clustering• System identification• Calibration transfer (w/ calibrant)• Orthogonal signal correction and deflation (w/ calibrant)

Page 7: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

2nd NOSE II WorkshopLinköping, 18 - 21 May 2003

Univariate Techniques

Page 8: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 8 -

Frequency analysis

Drift, noise and odor information occur at different time scales [Artursson et al., 2000]

• Noise = high frequencies• Drift = low frequencies

• Perform separation in the frequency domain• Filter banks [Davide et al., 1996]• Discrete Wavelet Transform

• Drawbacks• Requires long-term time series to be collected• Time series has "gaps“, variable sampling rates

Page 9: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 9 -

Baseline manipulation (1)

Basics• The simplest form of drift compensation

• “Remove" the sensor response in the recovery cycle prior to sample delivery

• Also used for pre-processing [Gardner and Bartlett, 1999]

• A local technique, processes one "sniff" at a time

Page 10: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 10 -

Baseline manipulation (2)

Differential• Corrects additive δA or baseline drift

{( ) ( )

{(0)x(t)xδ(0)xδ(t)x(0)y-(t)y(t)x s

drift)(w/oresponse

idealsAsAss

responsemeasured

ss −=+−+==ˆ

t=0 t=0 t=0

y(t)

time

x(t)

t=0 t=0 t=0

y(t)

time

x(t)

Page 11: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 11 -

Baseline manipulation (3)

Relative• Corrects multiplicative (1+δM) or sensitivity drift

( )( ) (0)x

(t)xδ1(0)xδ1(t)x

(0)y(t)y(t)x

s

s

Ms

Ms

s

ss =

++

==ˆ

t=0 t=0 t=0

y(t)

time

x(t)

t=0 t=0 t=0

y(t)

time

x(t)

Page 12: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 12 -

Baseline manipulation (4)

Fractional• Percentual change in the sensor response

• Properties• Yields a dimensionless measurement• Normalizes sensor responses, but can amplify noisy

channels• Fractional conductance shown to be the most

suitable method for MOS sensors [Gardner, 1991]

(0)x(0)x-(t)x(t)y

s

sss =

Page 13: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 13 -

Reference gas [Fryder et al., 1995]

Equivalent to diff. BM, except a calibrant is used• Calibrant must be chemically stable over time AND

highly correlated with samples [Haugen et al., 2000]

y(t)

time

x(t)

Calibrant

Sample

Newbaseline

y(t)

time

x(t)

Calibrant

Sample

Newbaseline

Page 14: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 14 -

Calibration schedule

adapted from [Salit and Turk, 1998]

Time, €

Calibrant

Samples

Traditional(time intensive)

Efficient(systematic memory errors)

Efficient(random memory errors)

Time, €

Calibrant

Samples

Traditional(time intensive)

Efficient(systematic memory errors)

Efficient(random memory errors)

Page 15: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 15 -

Multiplicative correction [Haugen et al., 2000]

Basic idea• Model temporal variations in a calibration gas with

a multiplicative correction factor• Apply the same correction to the samples• Perform this process first on short-term trends,

then on long-term fluctuationsProperties• Heuristic, global technique• Practical for industrial applications• Compensates for short- and long-term drift

Page 16: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 16 -

Short-term correction (1)

index

U

Sequence 1 Sequence 2 Sequence 3

index

USCT

Sequence 1 Sequence 3Sequence 2

STC

Page 17: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 17 -

Name Class Index xnU1

cal Calibration 1 0 U2 Sample 2 0 U3 Sample 3 0 U4 Sample 4 0 U5 Sample 5 0

U6cal Calibration 6 1

U7 Sample 7 1 U8 Sample 8 1 U9 Sample 9 1 U10 Sample 10 1

U11cal Calibration 11 2

U12 Sample 12 2 U13 Sample 13 2 U14 Sample 14 2 U15 Sample 15 2 … … … …(seq subindex omitted for clarity)

Short-term correction (2)

For each sequence• Compute a correction factor for

each calibration sample

• Build regression model for series {q1,seq, q6,seq, q11,seq,…}

• Correct all samples

calseqn,

calseq1,

seqn, UU

q =

( )1Nn,modx withbaxq

samn

nseqn,

+=

+=ˆ

seqn,seqn,STC

seqn, qUU ˆ=

seq6,q

seq9,q̂

Page 18: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 18 -

Long-term correction (1)

index

USCT

Sequence 1 Sequence 3Sequence 2

index

ULTC

Sequence 3Sequence 1 Sequence 2

LTC

Page 19: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 19 -

Long-term correction (2)

For each sequence• Compute a correction factor for

the first calibration sample

• Correct all samples

calseq1,

cal1,1

seq UU

f =

seq

U

seqn,seqn,LTC

seqn, fqUUSTC

seqn,

43421ˆ=

2f

3f

Name Class Index xn Seq U1,1

cal Calibration 1 0 1 U2,1 Sample 2 0 1 U3,1 Sample 3 0 1 … 1

U6,1cal Calibration 6 1 1

U7,1 Sample 7 1 1 U8,1 Sample 8 1 1 …

U1,2cal Calibration 1 0 2

U2,2 Sample 2 0 2 U3,2 Sample 3 0 2 … 2

U6,2cal Calibration 6 1 2

U7,2 Sample 7 1 2 U8,2 Sample 8 1 2 … … … …

U1,3cal Calibration 1 0 3

U2,3 Sample 2 0 3 U3,3 Sample 3 0 3 … 3

U6,3cal Calibration 6 1 3

U7,3 Sample 7 1 3 U8,3 Sample 8 1 3 … … … …

Page 20: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 20 -

Performance of multiplicative correction

PCA plot of drift corrected milk samples measured over 2 days: reference milk ( ), oxidized milk ( ), calibration samples ( ).

PCA plot of uncorrected milk samples measured over 2 days: pasteurized milk ( ) , oxidized pasteurized milk ( ), calibration samples ( ).

from [Haugen et al., 2000]

Page 21: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

2nd NOSE II WorkshopLinköping, 18 - 21 May 2003

Multivariate Techniques

Page 22: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 22 -

Adaptive clustering

Basic idea• Model the distribution of examples with a

codebook• Assign an incoming (unknown) sample to the

"closest" class • Adapt class parameters to incorporate information

from the newly classified example

Page 23: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 23 -

Adaptive clustering (1)

Page 24: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 24 -

Adaptive clustering (2)

Page 25: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 25 -

Adaptive clustering (3)

Page 26: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 26 -

Adaptive clustering (4)

Page 27: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 27 -

Adaptive clustering (5)

Page 28: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 28 -

Adaptive clustering (6)

Page 29: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 29 -

Adaptive clustering (7)

Page 30: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 30 -

Adaptive clustering (8)

Page 31: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 31 -

Adaptive clustering (9)

Page 32: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 32 -

Adaptive clustering (10)

Page 33: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 33 -

Adaptive clustering (11)

Page 34: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 34 -

Adaptive clustering (12)

Page 35: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 35 -

Adaptive clustering methods

Mean updating• One cluster center per class [Holmberg et al., 1996]

Kohonen self-organizing maps• One SOM common to all classes [Davide et al., 1994;

Marco et al., 1997]• A separate SOM for each class [Distante et al., 2002]

Adaptive Resonance Theory • ART is slightly different; new clusters can be created

[Gardner et al., 1996]

Page 36: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 36 -

Adaptive clustering: discussion

Algorithm relies on correct classification • Miss-classifications will eventually cause the

model to lose track of the class patternsAll odors need to be sampled frequently to prevent their patterns to drift too far

This problem has also been addressed in the machine learning literature• see [Freund and Mansour, 1997] and refs. therein

Page 37: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 37 -

System identification [Holmberg et al., 1996]

Basic idea• Chemical sensor responses co-vary over time

• This "common-mode" behavior can be modeled with a dynamic model (e.g., ARMAX)

• where ys(k) is the response of sensor 's' at time k, and yi(k) is the response from all other sensors

• Model parameters {A,B,C} may be adapted over time with a recursive least-squares procedure [Holmberg et al., 1997]

( ) ( ) ( )∑∑∑∑=

≠= ==

−+−=−C

0n noisewhite

n

S

si1i

B

0nsensors

otherall

iin

A

0n ssensor

sn nkecnkybnkya 434214342143421

Page 38: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 38 -

System identification: classification

Each odor/sensor pair has a unique dynamic behavior that can be used as a fingerprint• Build a dynamic model for each sensor/odor• When an unknown odor is presented, predict its

behavior of each sensor with each of the models• The method requires that multiple (consecutive)

samples of the unknown odor be collected• The model with lowest prediction error

corresponds to the true odor

Page 39: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 39 -

System identification: illustration

time

Odo

r C

Odo

r B

Odo

r A

A3Y=B3Y’+C3E

A1Y=B1Y’+C1E

A2Y=B2Y’+C2E

MODEL DYNAMIC BEHAVIORFOR EACH ODOR/SENSOR

time

APPLY EACH O/S MODELTO UNKNOWN SAMPLE

Unkn

own

Unk

now

nUn

know

n

CHOOSE ODOR MODEL WITH LOWEST ERROR

ERROR 1

ERROR 2

ERROR 3

Page 40: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 40 -

Calibration transfer

Learn a regression mapping (e.g., MLPs, PLS) from drifting calibrant samples onto a baseline t0

• MLPs for PyMS [Goodacre and Kell, 1996]• PLS for e-noses [Tomic et al., 2002]• MLPs for e-noses [Balaban et al., 2000]

Training phase:Drifting calibrant samples at times t1, t2, …tN

Training phase:Baseline calibrant sampleat time t0

Recall phase:Drifting odor samples at times t1, t2, …tN

Recall phase:Corrected odor samples at times t1, t2, …tN

Page 41: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 41 -

Orthogonal signal correction [Wold et al., 1998]

Basic idea• Assume dataset matrices

• Y: sensor-array data (independent variables)• C: concentration vector or class label (dependent)

• Subtract from Y factors that account for as much of the variance in Y as possible AND are orthogonal to C

Page 42: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 42 -

Orthogonal signal correction: intuition

Y1

Y2

Y3

Direction orthogonal to concentration vector

Subspace correlated with concentration vector C

Page 43: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 43 -

-10 -5 0 5 10 15

-10

-8

-6

-4

-2

0

2

4

6

1

11

1

1

1

11

1

1

11

1

111

11

1 1

11

11

1

1

1

1

111

1

111

11

1111

1

1

1

22

2

2

2

2

22

2

2

22

2

2 22

222

22

2

22

2

2

2

2

2 22

2

2 2

2

2

22 222 22

3

3

3

3

33

3

3

3

3

33

3

3

3

333

3

33

3

33

3

3

3

3

33

33

3

3 33

3

3

33

33 3

3

4

44

4

4 4444 4

4

4

44

4

44

4

4

4 4

4

4 4

4

44

4

44

44

4444

4

44

4

444

4

5

5

5

5

55

5555

5

5

55

5

55

5

5

55

555

5 5

5

5

55

555

5

5 5

5

555

5

555

PCA1

PCA 2

-10 -5 0 5 10 15

-10

-8

-6

-4

-2

0

2

4

6

1

11

1

1

1

11

1

1

11

1

111

11

1 1

11

11

1

1

1

1

111

1

111

11

1111

1

1

1

22

2

2

2

2

22

2

2

22

2

2 22

222

22

2

22

2

2

2

2

2 22

2

2 2

2

2

22 222 22

3

3

3

3

33

3

3

3

3

33

3

3

3

333

3

33

3

33

3

3

3

3

33

33

3

3 33

3

3

33

33 3

3

4

44

4

4 4444 4

4

4

44

4

44

4

4

4 4

4

4 4

4

44

4

44

44

4444

4

44

4

444

4

5

5

5

5

55

5555

5

5

55

5

55

5

5

55

555

5 5

5

5

55

555

5

5 5

5

555

5

555

PCA1

PCA 2

-10 -5 0 5 10 15

-10

-8

-6

-4

-2

0

2

4

6

1

11

1

1

1

11

1

1

11

1

111

11

1 1

11

11

1

1

1

1

111

1

111

11

1111

1

1

1

22

2

2

2

2

22

2

2

22

2

2 22

222

22

2

22

2

2

2

2

2 22

2

2 2

2

2

22 222 22

3

3

3

3

33

3

3

3

3

33

6

1

11

1

1

1

11

1

1

11

1

111

11

1 1

11

11

1

1

1

1

111

1

111

11

1111

1

1

1

22

2

2

2

2

22

2

2

22

2

2 22

222

22

2

22

2

2

2

2

2 22

2

2 2

2

2

22 222 22

3

3

3

3

33

3

3

3

3

33

3

3

3

333

3

33

3

33

3

3

3

3

33

33

3

3 33

3

3

33

33 3

3

4

44

4

4 4444 4

4

4

44

4

44

4

4

4 4

4

4 4

4

44

4

44

44

4444

4

44

4

444

4

5

5

5

5

55

5555

5

5

55

5

55

5

5

55

555

3

3

3

333

3

33

3

33

3

3

3

3

33

33

3

3 33

3

3

33

33 3

3

4

44

4

4 4444 4

4

4

44

4

44

4

4

4 4

4

4 4

4

44

4

44

44

4444

4

44

4

444

4

5

5

5

5

55

5555

5

5

55

5

55

5

5

55

555

5 5

5

5

55

555

5

5 5

5

555

5

555

PCA1

PCA 2

-10 -5 0 5 10 15

-10

-8

-6

-4

-2

0

2

4

6

1

11

1

1

1

11

1

1

11

1

111

11

1 1

11

11

1

1

1

1

111

1

111

11

1111

1

1

1

22

2

2

2

2

22

2

2

22

2

2 22

222

22

2

22

2

2

2

2

2 22

2

2 2

2

2

22 222 22

3

3

3

3

33

3

3

3

3

33

6

1

11

1

1

1

11

1

1

11

1

111

11

1 1

11

11

1

1

1

1

111

1

111

11

1111

1

1

1

22

2

2

2

2

22

2

2

22

2

2 22

222

22

2

22

2

2

2

2

2 22

2

2 2

2

2

22 222 22

3

3

3

3

33

3

3

3

3

33

3

3

3

333

3

33

3

33

3

3

3

3

33

33

3

3 33

3

3

33

33 3

3

4

44

4

4 4444 4

4

4

44

4

44

4

4

4 4

4

4 4

4

44

4

44

44

4444

4

44

4

444

4

5

5

5

5

55

5555

5

5

55

5

55

5

5

55

555

3

3

3

333

3

33

3

33

3

3

3

3

33

33

3

3 33

3

3

33

33 3

3

4

44

4

4 4444 4

4

4

44

4

44

4

4

4 4

4

4 4

4

44

4

44

44

4444

4

44

4

444

4

5

5

5

5

55

5555

5

5

55

5

55

5

5

55

555

5 5

5

5

55

555

5

5 5

5

555

5

555

PCA1

PCA 2

Orthogonal signal correction: an example

odorsdrift

Page 44: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 44 -

Component correction [Artursson et al., 2000]

Basic idea• Drift is associated with the principal components

of variance in a calibration gas• These directions are removed from the

multivariate sensor response by means of a bilinear transformation

Algorithm

• where vcal is the first eigenvector of the calibration data xcal

( ) Tcalcalcorrected vvxxx ⋅−=

Page 45: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 45 -

Component correction results

from [Art, 2000]

PCA scatter plot after component correction. The calibration gas (+), no longer shown in the figure, has been used to estimate and remove the principal direction of drift (vcal).

PCA scatter plot of uncorrected samples for eight gas mixtures. Arrows indicate the direction of drift. The center cluster (+) is the calibration gas.

Page 46: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 46 -

Component correction results (2)

(1) Rioja Joven 2000(2) Rioja Crianza 1999(3) Rioja Reserva 1998(4) Ribera Joven 2000(5) Ribera Crianza 1999(6) Ribera Reserva 1998(7) Water(8) 12% v/v EtOH/Water

-5 -4 -3 -2 -1 0 1 2 3 4

-1

0

1

2

3

4

1

PCA1

111111 2222

2

22

333

3

3 33

44 444

44

5 555 55566

66666

77777

88888-6 -4 -2 0 2 4 6

-4

-3

-2

-1

0

1

2

3

1

PCA1

PCA

2

111111

2

2222

2

2 333

33

33444444

45555 55

56666666

7 7777

8

8888

Page 47: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 47 -

Component deflation [Gutierrez, 2000]

Basic idea• Identify variables 'x' whose variance can be attributed to

drift or interferents• E.g., response to a wash/reference gas, time stamps,

temperature, pressure, humidity, etc.• Measure 'y', the sensor-array response to an odor• Remove variance in 'y' that can be explained by 'x' (by

means of regression/deflation)

Related to target rotation [Esbensen et al., 1987]• "…removal of undesired information provided that there

are variables uniquely connected to that information" [Christie, 1996]

Page 48: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 48 -

Component deflation algorithm

Find linear projections x’=Ax and y’=By that are maximally correlated

• How? Canonical Correlation Analysis (CCA) or PLS• Interpretation: x’ and y’ are low-dimensional projections that summarize

the linear dependencies between x and y

Find regression model ypred=Wy’

• Interpretation: ypred contains the variance in the odor vector y that can be explained by y’ and, as a result of the CCA stage, by x

Deflate y and use the residual z as a corrected sensor response

{ } ( )[ ]ByAx,ρargmaxBA, =

2Wy'yargminW −=

WByyyyz pred −=−=

Page 49: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 49 -

Component deflation: interpretation

x1x2

x3

y1

y2

Ax

Byz=y-WBy

z2

z1

class1

class2

class3

WByx1

x2

x3

x1x2

x3

y1

y2

y1

y2

Ax

Byz=y-WBy

z2

z1

class1

class2

class3

z2

z1

class1

class2

class3

WBy

Page 50: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 50 -

Component deflation: motivation

Exploit transient information in wash/reference cycle• To capture temporal trends, augment vector x with the time

stamp of each sample (also in [Artursson et al., 2000])

50 100 150 200 2501.5

2

2.5

3

Wash Reference Odour

Sens

or re

spon

se (V

)W

TS K

erne

ls

Time (s)

xR yxW

x

50 100 150 200 2501.5

2

2.5

3

Wash Reference Odour

Sens

or re

spon

se (V

)W

TS K

erne

ls

Time (s)

xR yxW

x

Page 51: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 51 -

Component deflation performance

Database• Three months of data collection

• Four cooking spices• Twenty four days• Four samples per day and spice

• Ten metal-oxide sensorsPlot shows one particular transient feature• Examples are sorted

• By odor class• Within a class, by date

Date Date Date Date

Class 1 Class 2 Class 3 Class 4

PLS

CCA

RAW

DateDate DateDate DateDate DateDate

Class 1 Class 2 Class 3 Class 4

PLS

CCA

RAW

Page 52: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 52 -

Influence of aging and training set size

2 4 6 8 100.5

0.6

0.7

0.8

0.9

1

2 4 6 8 10 2 4 6 8 10

Pred

ictiv

e ac

cura

cy

Width=1 Width=5 Width=10

Distance Distance Distance

PLS

CCA

RAW

2 4 6 8 100.5

0.6

0.7

0.8

0.9

1

2 4 6 8 10 2 4 6 8 10

Pred

ictiv

e ac

cura

cy

Width=1 Width=5 Width=10

Distance Distance Distance

PLS

CCA

RAW

Day: 1 2 i j k M

W D

Training set Test set

Page 53: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 53 -

Discussion of univariate methods

Frequency decomposition• Mostly useful for diagnostics and analysis

Baseline manipulation• Attractive for its simplicity, but not an effective drift-

correction approach for chemical sensorsDifferential measurements wrt calibrant• First-order approximation, but does not exploit cross-

correlationsMultiplicative correction wrt calibrant• Empirically shown to work, heuristic, does not exploit

cross-correlations

Page 54: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 54 -

Discussion of multivariate methods (1)

Adaptive clustering• Requires equiprobable and frequent sampling• Correct identification is essential to ensure that the

adapting distributions track the odors• Does not use information from a calibrant

System identification• Builds a separate drift model for each odor, but

requires multiple consecutive samples• Can be used as a template-matching classifier• Does not use information from a calibrant

Page 55: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 55 -

Discussion of multivariate methods (2)

Calibration transfer• Shown to work in MS and e-nose data• Black-box approach

Orthogonal Signal Correction and Deflation• In my experience, the best approach• Why? Time tested in chemometrics, uses multivariate

and calibrant information, and IT IS SIMPLE

Page 56: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 56 -

References (1)

M. Holmberg and T. Artursson, "Drift Compensation, Standards and Calibration Methods," in T. C. Pearce, S. S. Schiffman, H. T. Nagle and J. W. Gardner (Eds.), Handbook of Machine Olfaction: Electronic Nose Technology, Weinheim, Germany: Wiley-VCH, 2002, pp.325-346.S.-Y. Choi, K. Takahashi, M. Esani and T. Matsuo, "Stability and sensitivity of MISFET hydrogen sensors," in Proc. Int. Conf. Solid State Sensors and Actuators, Philadelphia, PA, 1985.M. Roth, R. Hartinger, R. Faul and H.-E. Endres, "Drift reduction of organic coated gas-sensors by temperature modulation," Sensors and Actuators B 36(1-3), pp. 358-362, 1996.D.M. Wilson and S.P. DeWeerth, "Odor discrimination using steady-state and transient characteristics of tin-oxide sensors," Sensors and Actuators B 28(2), pp. 123-128. 1995.J.W. Gardner and P.N. Bartlett, Electronic Noses. Principles and Applications, New York: Oxford University Press, 1999.J.W. Gadner, "Detection of Vapours and Odours from a Multisensor Array using Pattern recognition. Part 1. Principal Components and Cluster Analysis," in Sensors and Actuators B 4, pp. 109-115, 1991.M. Fryder, M. Holmberg, F. Winquist and I. Lündstrom, "A calibration technique for an electronic nose," in Eurosensors IX, 1995, pp. 683-686.M.L. Salit and G.C Turk, "A Drift Correction Procedure," Analytical Chemistry 70(15), pp. 3184-3190, 1998.J.E. Haugen, O. Tomic and K. Kvaal, "A calibration method for handling the temporal drift of solid-state gas sensors," Analytica Chimica Acta 407, pp. 23-39, 2000.T. Artursson, T. Eklöv, I. Lundström, P. Mårtensson, M. Sjöström and M. Holmberg, "Drift correction for gas sensors using multivariate methods," Journal of Chemometrics 14(5-6), pp. 711-723, 2000.

Page 57: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 57 -

References (2)

F.A.M. Davide, C. Di Natale, M. Holmberg and F. Winquist, "Frequency Analysis of Drift in Chemical Sensors," in Proc. 1st Italian Conf. on Sensors and Microsystems, Rome, Italy, 1996, pp. 150-154. R. Goodacre and D.B. Kell, "Correction of mass spectral drift using artificial neural networks," Analytical Chemistry 68, pp. 271-280, 1996.O. Tomic, H. Ulmer and J.E. Haugen, "Standardization methods for handling instrument related signal shifts in gas-sensor array measurement data," Analytica Chimica Acta 472, 99-111, 2002.M.O. Balaban, F. Korel, A.Z. Odabasi and G. Folkes, "Transportability of data between electronic noses: mathematical methods," Sensors and Actuators B 71, pp. 203-211, 2000.S. Wold, H. Antti, F. Lindgren and J. Öhman, "Orthogonal signal correction of near-infrared spectra," Chemometrics and Intelligent Laboratory Systems 44, pp. 175-185, 1998.K. Esbensen, L. Lindqvist, I. Lundholm, D. Nisca and S. Wold, "Multivariate Modeling of Geochemical and Geophysical Data," Chemometrics and Intelligent Laboratory Systems 2, pp. 161-175, 1987.O.H.J. Christie, “Data Laundering by Target Rotation in Chemistry-Based Oil Exploration,” Journal of Chemometrics 10, pp. 453-461, 1996.M. Holmberg, F. Winquist, I. Lundström, F. Davide, C. DiNatale, and A. D'Amico, "Drift counteraction for an electronic nose," Sensors and Actuators B 36(1-3), pp. 528-535, 1996.F.M. Davide, C. Di Natale, and A. D’Amico, "Self-organizing Multisensor Systems for OdourClassification: Internal Categorization, Adaptation, and Drift Rejection," Sensors and Actuators B 18-19, pp. 244-250, 1994.S. Marco, A. Pardo, A. Ortega and J. Samitier, "Gas Identification with Tin Oxide Sensor Array and Self-Organizing Maps: Adaptive Correction of Sensor Drifts," in Proc. IEEE Instrumentation and Measurement Technology Conference, Orrawa, Canada, May 19-21, 1997, pp. 904-907.

Page 58: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

Ricardo Gutierrez-Osuna

Texas A&M University

2nd WorkshopSignal processing methods for drift compensation - 58 -

References (3)

C. Distante, P. Siciliano and K.C. Persaud, "Dynamic Cluster Recognition with Multiple Self-Organising Maps," Pattern Analysis and Applications 5, pp. 306-315, 2002.J. W. Gardner, E. L. Hines and C. Pang, "Detection of vapours and odours from a multisensor array using pattern recognition: self-organizing Adaptive Resonance Techniques,” Measurement + Control 29, pp. 172-178, 1996.Y. Freund and Y. Mansour, “Learning under persistent drift,” in Proc. European Conference on Computational Learning Theory, 1997, pp. 109-118.

Page 59: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

2nd NOSE II WorkshopLinköping, 18 - 21 May 2003

Questions

Page 60: Signal processing methods for drift compensationresearch.cse.tamu.edu/prism/lectures/talks/nose03.pdfRicardo Gutierrez-Osuna Texas A&M University 2nd Workshop Signal processing methods

2nd NOSE II WorkshopLinköping, 18 - 21 May 2003

Thank you


Recommended