h2o world - cancer detection via the lasso - rob tibshirani
TRANSCRIPT
1
Cancer detection via the lasso and customizedtraining
Robert Tibshirani, Stanford University
Google − > Tibshirani
H2O World 2015
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
2
A Cancer detection problem
• I am currently working in a cancer diagnosis project with co-workers atStanford; Livia Eberlin (PI) —PostDoc (Chemistry); Richard Zare(Chemistry) and George Poulsides (Surgery)
• Eberlin et al (2014). “Molecular assessment of surgical-resection margins ofgastric cancer by mass-spectrometric imaging”. Proc. Nat. Acad. Sci.
• They have collected samples of tissue from a number of patients undergoingsurgery for stomach cancer.
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
3
Livia Eberlin
Richard Zare
George Poulsides
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
4
Normal margin
Cancer
Stromal
Epithelial
Left in patient
Extracted part
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
5
The challenge
• Build a classifier than can distinguish three kinds of tissue: normal epithelial,normal stromal and cancer.
• Such a classifier could be used to assist surgeons in determining, in real time,whether they had successfully removed all of the tumor. Current pathologisterror rate for the real-time call can be as high as 20%.
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
6
Technology to the rescue!DESI (Desorption electrospray ionization)
An electrically charged “mist” is directed at the sample; surface ions are freed andenter the mass spec.
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
7
The data for one patient
��������������������������������������������������������������������������������������������������������������
��������������������������������������������������������������������������������������������������������������
������������������������������������������������
������������������������������������������������
������������������������������
������������������������������
Epithelial
Stromal
Cancer
Spectrum sampled at 11,000 m/z values
Spectrum for each pixel
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
8
Details
• 20 patients, each contributing a sample of epithelial, stromal and cancertissue.
• Labels determined after 2 weeks of testing in pathology lab.
• At each pixel in the image, the intensity of metabolites is measured by DESI.Peaks in the spectrum representing different metabolites.
• The spectrum has been finely sampled, with the intensity measured at about11, 000 m/z sites across the spectrum, for each of about 8000 pixels.
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
9
The overall data
Patient 3
Patient 4
... Patient 20
Pixels
1.3
1
2
13
Patient 2
Patient 1
7.6
Label of pixel: Y
9.4
1=Epithelial2= Cancer
3=Stromal
−−− 11,000 m/z sites −−−−
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
10
Selected negative ion mode DESI-MS ion images of sample GC727.
Eberlin L S et al. PNAS 2014;111:2436-2441
©2014 by National Academy of Sciences
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
11
What we need to tackle this problem
• A statistical classifier (algorithm) that sorts through the large number offeatures, and finds the most informative ones: a sparse set of features.
• We are doing pixel-wise classification
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
12
The Lasso
• Regression problem: We observe n feature-response pairs (xi , yi ), where xi isa p-vector and yi is real-valued.
• Let xi = (xi1, xi2, . . . xip)
• Consider a linear regression model:
yi = β0 +∑j
xijβj + εi
where εi is an error term with mean zero. βj is the weight given feature jLater: yi will take one of 3 values (epithelial, stromal, cancer) and xij will bethe height of the spectrum for patient i , at m/z site j .
• Least squares fitting is defined by
minimizeβ0,β
1
2
∑i
(yi − β0 −∑j
xijβj)2
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
13
The Lasso— continued
The Lasso is an estimator defined by the following optimization problem:
minimizeβ0,β
1
2
∑i
(yi − β0 −∑j
xijβj)2 subject to
∑|βj | ≤ s
• Penalty =⇒ sparsity (feature selection)
• Convex problem (good for computation and theory)
• Ridge regression uses penalty∑
j β2j ≤ s and does not yield sparsity
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
14
Why does the lasso give a sparse solution?
β^ β^2. .β
1
β2
β1β
Lasso∑
j |βj | ≤ s Ridge∑
j β2j ≤ s
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
15
Prostate cancer exampleN = 88, p = 8. Predicting log-PSA, in men after prostate cancer surgery
Shrinkage Factor s
Coe
ffici
ents
0.0 0.2 0.4 0.6 0.8 1.0
−0.
20.
00.
20.
40.
6
lcavol
lweight
age
lbph
svi
lcp
gleason
pgg45
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
16
Back to our problem
• K = 3 classes (epithelial, stromal, cancer): multinomial model
logPr(Yi = k |x)∑k Pr(Yi = k |x)
= β0k +∑j
xijβjk , k = 1, 2, . . .K
Here xij is height of spectrum for sample i at jth m/z position
• We replace the least squares objective function by the multinomiallog-likelihood
• Add lasso penalty∑|βj | ≤ s; optimize, using cross-validation to estimate
best value for budget s.
• yields a pixel classifier, and also reveals which m/z sites are informative.
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
17
Fast computation is essential• Our lab has written a open-source R language package called glmnet for
fitting lasso models. Written in FORTRAN!!!!!
• It is very fast- can solve the current problem in a few minutes on a PC. Somebuiltin parallelization too.
• Not “off-the shelf”: Many clever computational tricks were used to achievethe impressive speed.
• Lots of features- Gaussian, Logistic, Poisson, Survival models; elastic net;grouping; parameter constraints; Available in R and Matlab.
Jerry Friedman Trevor HastieRobert Tibshirani, Stanford University Cancer detection /lasso/ customized training
18
Results
Cross-validation- min at 129 peaks; overall error rate= 4.2%
Predictedtrue Epi Canc Strom Prop correctEpi 3277.00 80.00 145.00 0.94Canc 73.00 5106.00 13.00 0.98Strom 79.00 86.00 2409.00 0.94
Test set: overall error rate =5.7%
Predictedtrue Epi Canc Strom Prop correctEpi 1606.00 149.00 19.00 0.91Canc 23.00 1622.00 5.00 0.98Strom 67.00 5.00 1222.00 0.94
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
19
Cross-validated estimates of class probabilities
0 2000 4000 6000 8000 10000 12000
0.0
0.2
0.4
0.6
0.8
1.0
1.2
Pixel
Est
imat
ed C
V P
roba
bilit
y ooooooooooooooooooooo
o
o
o
oooo
o
ooo
oo
o
ooo
o
o
o
o
o
ooo
o
ooo
o
oo
o
ooo
o
ooo
o
o
o
o
ooo
oo
oooo
ooo
oo
o
ooo
oo
oo
ooo
ooo
oo
ooooo
ooo
o
o
oooo
o
oo
ooo
oooo
o
oooo
oo
o
o
oooo
oo
o
o
o
o
o
ooooooooooooo
o
o
ooo
ooooooooooo
o
o
o
oo
o
oooooo
oo
ooooooooooooooo
oooooo
o
ooooooooo
ooo
o
oooooooooooooooooooooo
o
oooo
o
ooooo
ooo
oo
oo
ooooooooooo
oooo
o
oooo
ooooooooooooooooooooooo
o
o
oooooooooooo
o
oo
o
ooo
o
ooooooooooo
ooo
ooooo
o
oooo
oo
o
oooo
oooooooo
o
o
o
o
oo
oo
ooooooooooooooo
ooo
oo
o
ooooooooooooo
oo
ooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooo
o
ooooooooooooo
o
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooo
o
oooooooooooooo
ooooooooooooooooooooooooooooooooooooo
o
o
o
oooooooooooooooo
ooooo
o
oo
o
oooooo
o
ooooo
o
oooo
oo
o
oooooooo
oo
o
oooooooo
o
o
oo
oooooo
o
o
o
oooooo
o
o
o
oo
o
ooooooo
ooo
oooooo
o
ooo
o
ooooooooo
oo
oo
oooo
o
o
oo
o
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooo
o
oo
o
ooooooooooooooo
o
oooo
o
oooooo
o
o
oooooooo
oo
o
ooooo
o
ooooooooooooooooooooooo
o
o
o
o
ooooooooooo
o
ooooo
o
ooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooo
o
o
ooo
oo
o
oooo
o
o
o
o
o
oooo
o
ooo
ooo
oo
o
oooooooooo
o
oo
o
oo
o
o
o
oooooo
o
ooooo
ooo
oo
o
o
o
oooo
o
oo
oo
o
o
o
oo
ooo
o
o
oooo
o
oooooo
o
ooo
o
o
o
o
o
ooooooo
o
oo
oo
o
oooo
o
o
oo
ooo
o
o
ooooooo
o
oo
oooo
oo
ooooo
o
ooooooooooooo
oooooo
o
ooooo
o
oooo
o
o
o
o
o
oooo
o
ooo
ooo
oo
o
oooooo
oooo
o
oo
ooo
o
oo
oooooo
o
ooooo
ooo
ooo
o
o
oooo
o
oo
oo
o
o
o
oooooo
ooooo
o
oooooo
o
ooo
o
o
o
o
oooooooo
o
oo
oo
o
oooo
o
ooo
ooo
o
o
o
oooooo
o
oooooo
oo
ooooo
o
oooooooooooooooooooooooooo
oo
o
ooooooooooooo
o
o
oo
oooooooooooooo
o
o
oo
oooooooooooooooooooo
oo
o
o
oooooooooooooooooooo
o
o
o
oo
o
ooooooooooooooooo
o
ooooooooooooo
o
o
o
o
oooooooooooooo
oo
ooo
oooooooooooooooooo
oooooooo
o
o
oooooooooooo
oooo
oo
o
o
o
oo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooo
oooooooooooooo
o
oooooooooooooo
oo
ooooo
o
ooooooooo
o
ooooooooooooo
oo
oooooo
ooooooo
o
oooooooo
o
ooo
o
ooooooooo
oooo
ooooooooo
oo
ooooooooo
o
o
o
oooooo
o
oo
oo
o
ooooooooo
o
o
o
ooo
o
oooo
o
o
o
o
oo
oo
oooooo
o
o
ooo
o
oooooooo
o
oo
ooooooooooooooooooooooooo
o
oooooooooooooooooooooooo
ooooooooooooooooooooo
ooo
o
oo
oooooooo
oooo
oo
ooooooooo
o
oooo
oooooooooooooo
oo
ooooooooooooooooooooo
o
ooooooooooooooooooooo
oo
oo
ooooooooooooooooo
o
oo
ooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooo
ooooooooooooooooooo
oo
ooo
ooooooooo
o
ooo
oo
ooooooooo
o
oo
ooooooooo
o
oo
ooooooooo
oo
oo
oooooooooooooooooooooo
oooo
oo
oo
ooooooooooo
oo
oo
ooooooooooooooooooooooo
oooooooooooooo
oo
oooooooooooooooo
oo
oooooooooooooooooooooooo
ooooooo
oo
oooooooooooo
ooo
oooooooooooooooooooooo
oooooooooooo
ooo
ooooooo
ooo
ooo
oooo
ooooooooo
oooooo
ooooooo
ooo
oooooooooooooooooooooo
oooo
ooo
ooo
oooooooooooo
o
o
ooooooooooooooo
oooo
ooo
o
ooooooooooooooooooo
o
ooooo
ooo
oooooooooooooooooo
oo
ooooooooooooooooooooooooooooooooo
ooooo
oo
ooo
ooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
ooooooooooooooooooooooooooooooo
o
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooo
oo
oo
oooo
oooo
o
oooooooooooooooooooooooooooo
o
oooooooooo
oo
ooo
o
ooooooo
ooo
oo
o
oooooo
ooo
oo
oooooooooooooooo
oo
ooooooooooooo
ooo
o
o
o
o
ooo
ooooooooooooo
oo
oo
ooo
o
ooooo
oo
o
oooo
oooooo
ooo
oooooo
oo
oo
oo
ooooooooooo
o
ooooo
ooo
oooo
o
o
oooooooooooooooooooo
oooo
o
oo
oo
ooooooooooooooooooooo
oo
o
oo
o
o
ooooooooooooooooooooooo
o
oooo
oo
ooooooooooo
ooooooooooooo
o
o
oooo
o
ooooooooooo
oo
oooooooooooo
o
oo
o
ooooooo
oooooo
oo
oooooooooooo
oo
o
oooooooooooooooooooooooo
o
oo
oooooo
oo
o
ooooooooooo
oo
oooooooooooo
oo
oooooooo
ooo
oo
ooooooo
oo
o
oo
oooooooooooo
o
o
oooooooo
o
ooo
oooooooooo
ooooooo
ooo
ooo
ooo
oooooooooooo
o
o
oo
ooooooooooooooooooooooo
o
oooooooooo
o
oooooo
ooooooooo
o
ooooooooooooooooooooooooooooooooooo
o
oooooooooooo
oo
ooooooo
ooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooo
ooo
oooooooo
ooooo
oooooo
o
oo
oo
oo
oooooo
o
oooo
oooo
o
oo
oooooooo
o
oo
oooooooo
oo
oo
oooooooo
o
oo
ooooooooo
ooo
oo
oo
oooo
oooo
oo
oo
ooooo
ooooooooooo
ooooooo
o
o
ooooo
oooooooooooooooooooooo
o
o
oooo
o
ooo
oo
o
ooo
o
o
o
o
o
ooo
o
ooo
o
oo
o
ooo
o
o
oo
o
o
o
o
ooo
oo
oooo
ooo
oo
o
ooo
oo
ooooo
ooo
oo
ooooo
ooo
o
o
oooo
o
oo
ooo
oooo
o
oooo
oo
o
o
oooo
oo
o
o
o
o
o
ooooooooooooo
oo
ooo
ooooooooooo
o
o
o
oo
o
oooooo
oo
ooooooooooooooo
oooooo
o
ooooooooo
oooo
oooooooooooooooooooooo
o
ooooo
ooooo
oooooooooooooooooooooo
o
oooo
ooooooooooooooooooooooo
o
o
oooooooooooo
o
oo
o
ooooooooooooooo
ooo
ooooo
o
oooo
oo
o
oooo
oooooooo
o
o
o
o
oo
oo
ooooooooooooooo
ooooo
o
ooooooooooooo
oo
ooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooo
o
oooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooo
o
oooooooooooooo
ooooooooooooooooooooooooooooooooooooo
o
o
o
oooooooooooooooo
ooooo
o
oo
o
oooooo
o
oooooo
ooooooo
oooooooooo
o
ooooooooooo
o
ooooooooooooooo
o
ooooooooooooooooooooooooo
o
ooooooooo
oo
o
o
oooo
o
o
oo
o
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooo
o
oo
o
ooooooooooooooo
o
ooooo
oooooo
o
o
oooooooooo
o
ooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooo
o
ooo
oo
o
oooo
o
o
o
o
o
oooo
o
oooooo
oo
o
oooooooooo
o
oo
o
oo
o
oo
oooooo
o
ooooo
ooo
oo
o
o
o
ooooooo
ooo
o
o
oo
ooo
o
oooooo
oooooo
o
ooo
o
ooooooooooo
o
ooooooooo
o
o
oo
ooooooooooooo
ooooooo
o
ooooo
o
ooooooooooooooooooo
o
ooooo
o
oooo
o
o
o
o
o
oooo
o
oooooo
oo
o
oooooooooo
o
ooooo
o
oooooooo
o
ooooo
ooo
ooo
o
o
ooooooo
oooo
o
oooooo
oooooo
oooooo
o
ooo
o
ooooooooooo
o
ooooooooo
o
ooooooooo
ooooooo
ooooooo
o
ooooo
o
oooooooooooooooooooooooooo
oooooooooooooooooooo
oooooooooooooo
oo
oooooooooooooooooooooooooooooooooooooooooooooo
o
oooo
o
oooooooooooooooooooooooooooooooo
o
o
o
oooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooo
o
o
o
oo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooo
o
oooooooooooooooooooooooo
o
oooooooooooooooooooooo
o
ooo
o
oooooooooooo
o
ooooooooooooooooooooooooooooo
o
ooooooooooooooo
o
o
ooo
o
oooo
o
o
o
o
oo
oo
oooooo
o
o
ooo
o
oooooooo
o
oo
ooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooo
ooo
o
oo
oooooooo
oo
oo
oo
ooooooooo
o
oooo
oooooooooooooo
oo
ooooooooooooooooooooo
o
ooooooooooooooooooooo
oo
oo
ooooooooooooooooo
o
oo
ooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooo
oooo
oo
oooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooo
oo
ooooooooooooooooooooooooooooooo
oo
oooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooo
ooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
oo
oooo
oooo
o
oooooooooooooooooooooooooooo
o
ooooooooooooooo
o
ooooooo
ooooo
o
oooo
ooooo
oooooooooooooooooo
oo
ooooooooooooo
ooo
o
ooo
ooooooooooooooooo
o
oo
ooo
o
ooooo
ooo
ooooooooooooooooooo
oo
oo
oo
ooooooooooooooooo
oooooooo
ooooooooooooooooooooo
ooooooooo
ooooooooooooooooooooo
ooo
oo
o
o
ooooooooooooooooooooooo
o
oooooo
oooooooooooooooooooooooo
o
ooo
oo
o
ooooooooooo
oo
oooooooooooo
o
oo
oooooooo
o
oo
oo
ooo
oooooooooooo
oo
o
oooooooooooooooooooooooo
o
oo
ooo
oo
o
ooo
ooooooooooo
oo
oooooooooooo
oo
oooooooo
ooo
oo
o
oooo
oo
ooo
oo
oooooooooooo
o
o
oooooooooooooooooooooo
ooooooo
ooo
ooo
ooo
oooooooooooo
o
o
oo
ooooooooooooooooooooooo
o
oooooooooo
o
oooooo
ooooooooo
o
ooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooo
oo
ooooo
oooooo
ooooo
oo
oooooo
ooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooo
oo
o
oooooooo
oo
o
oooooooo
o
o
oooooooo
o
o
o
o
ooooooo
o
ooo
oooooooooo
oooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
o
o
o
ooooooooooo
o
ooooo
o
ooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oo
oooooooooooo
oooo
ooooooooooooo
o
o
ooooooooooo
oo
o
ooooooooooo
o
o
ooooo
oo
o
oooooo
o
ooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooo
oooooooooooo
oooo
ooooooooooooo
o
o
ooooooooooo
oo
o
ooooooooooo
o
o
ooooooo
o
oooooo
o
ooooooooooooooooooooooooooooooooooo
o
ooooooooooooo
o
oooooooooooooooooo
o
oo
oooooooooooooooooooo
oo
o
o
oooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooo
oooooooooooooooooo
oo
o
oooooooooooooooooooooooooooo
oooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooo
ooooooooooooooo
o
ooooooooooooo
o
o
ooooooooooooo
o
ooooooooooooo
oooooooooooooooooooooooo
oooooooooo
o
o
oooooooo
o
oo
oooooooooo
o
oooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
oooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooo
ooooooooooooooooooo
oo
ooooooooooooo
ooo
oo
ooooooooo
o
oo
ooooooooo
o
oo
ooooooooo
oo
oo
oooooooooooooooooooooo
oo
oo
oo
ooooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooo
ooooooooooooooooooooooooooooooooooooo
ooooooo
ooo
ooo
oooo
ooooooooo
oooooo
ooo
o
ooo
ooo
oooooooooooooooooooooo
oooo
ooo
ooo
oooooooooooo
o
o
ooooooooooooooooooo
oooo
oooooooooooooooooooo
ooooo
ooo
oooooooooooooooooo
oo
oooooooooooooooooooooooooooooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
ooooooooooooooooooooo
oo
ooooooooooooooooooooooo
ooooooooooooooooo
o
o
o
oooooooooooooooo
o
ooooooooooooooo
oooooooooooooooooooooooo
o
ooooooooooo
o
oooooooooooo
o
o
oooooooooooooooooooooo
oo
o
oo
ooooooooooooooooooooooooo
o
oo
o
ooooooooooooooooooooooooo
oooo
o
ooooooooooooooooooooooooo
o
o
oo
oo
ooooooooooooooooooooooooooo
oo
o
ooooooo
o
oo
oo
o
oo
oooooooooooooooooooooooooooooooooooooooooo
ooo
oo
o
ooooooooooooooooooooooooooooooooooooooooo
oo
o
oooo
oooo
ooooooooooooooo
o
o
oooooooo
o
ooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
o
ooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
oooooooooo
o
oooooooo
o
oo
oooooooo
o
oo
oooooooo
oo
oo
oooooooo
o
oo
ooooooooo
o
oo
oooo
oooo
oo
oo
oo
oo
ooooo
ooooooooooo
ooo
oooo
o
o
ooooo
Epithelial
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooo
ooooooooooooooooooooooo
o
oooooooooooooooooooooooo
oo
o
o
oo
ooooooooooooooooooooooo
ooo
o
o
o
o
oooooooooooooooooooooooo
ooo
o
ooooooooooooooooooooooooo
o
ooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooo
o
ooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooo
o
oooooooo
o
o
o
ooooooooooooooooooooooo
o
o
oo
o
oooooooooooooooooooooooo
o
oo
ooo
ooo
ooooooooooooooooooooooooooooo
oo
oooo
oooooooooooooooooooooooooo
o
oooooooooo
oo
oooooooooooooooooo
o
o
oooooooooooooooooo
oooooooooooooooooo
oooooooooooooo
ooooooooooooooooooooooooooo
o
ooooo
o
oooooooooo
o
oooo
o
oooooooooooooooooooooooooooooo
o
o
ooooooo
oooooooooooooooooooooooooooooooooooo
oo
ooo
ooooooooo
oo
o
ooooooooooooooooooooooooooooo
o
oo
o
oooo
ooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooo
o
o
oooooooooooooooooooooooooo
oooooooo
oooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooo
ooooooooooooooooooooooooo
o
ooooooooooooo
oooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooo
o
oo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooo
o
oooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
ooooooooooooooooooooooooooooooooooooo
o
o
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooo
o
ooooooooooooooooo
o
oooo
ooooooooooooooooooooooooooooooo
o
oooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooo
o
oooooooooo
oooo
o
oooooooooooo
ooooooooooooooooo
o
ooooooooooooo
oo
ooooooooooooooo
o
oooooooooooooooooooooooooooooooooooo
o
o
oo
oooooo
o
o
o
oooooo
o
oooooooooo
o
o
o
oooooooooo
o
o
o
oooooooooo
o
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
oooooo
o
o
o
oooooo
o
oo
oooooooo
o
o
o
oooooooooo
o
o
o
oooooooooo
o
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
o
oo
ooooo
oooo
o
o
o
oo
oooo
o
ooooooo
oo
o
o
o
o
oo
o
o
oooooo
oo
o
ooo
o
o
ooooooooo
o
oo
oo
o
oo
o
o
o
oo
oooo
ooo
oo
o
oo
o
o
oo
o
o
oo
o
oooo
oo
o
o
ooooo
o
o
o
o
o
oooooo
o
oo
oooo
o
oo
oo
oooooo
o
ooooooo
o
o
ooo
o
oo
o
oo
ooo
oo
o
oo
o
o
o
o
ooooooo
o
ooooooooo
oo
o
o
o
o
o
oooo
o
o
o
o
oo
oo
ooooooooooooo
o
o
o
oo
o
oo
o
o
o
o
o
o
o
oo
ooooooo
oo
ooooo
o
o
oo
o
o
o
o
o
oo
o
ooo
oooo
oo
oooooo
o
oooooo
ooo
o
o
o
o
o
oooo
ooo
ooooooo
o
oo
o
oo
ooooooo
oo
oo
o
o
o
o
oo
o
oo
o
o
oooo
oooooo
ooooo
ooo
o
oo
o
o
oo
o
o
oo
oo
oo
o
ooo
oooo
oo
o
oooo
o
oo
o
o
oo
oo
o
ooo
o
o
oo
o
o
o
o
o
o
o
o
o
o
o
ooooooooo
o
o
oo
o
o
o
o
oo
o
o
o
o
o
oo
oo
oooo
o
o
oo
o
oooooooooo
o
oo
oo
o
ooo
o
o
o
o
o
o
oo
o
ooo
o
o
oo
o
o
o
oooooooo
o
oooooooo
o
o
oo
o
o
oo
o
o
o
o
o
oo
o
o
o
o
o
o
oooo
oo
o
ooooooooo
o
o
o
oo
ooo
o
o
oo
o
oo
ooo
o
o
o
ooooooo
o
oooooo
o
o
o
o
o
ooo
o
o
o
oooo
o
oo
o
o
o
o
ooo
ooooooooooo
o
oo
o
o
oo
o
o
o
o
oo
o
o
oo
oooo
o
o
oo
o
oo
oooooooo
o
o
o
oooo
o
o
o
ooo
o
o
o
o
o
o
oo
o
o
oo
oooo
ooooo
oo
o
o
o
oo
oo
oo
o
o
oo
o
o
o
ooo
o
oooo
o
o
oooo
o
oo
oo
oo
o
ooo
o
ooo
o
o
o
o
oo
oo
oo
o
o
o
o
o
oo
oo
oo
o
oo
o
oo
o
o
o
o
o
oo
o
ooo
oo
o
ooooooo
oooo
oooo
oo
o
oo
ooooo
oooooo
o
o
o
o
o
o
o
o
o
o
ooooo
o
oooooo
o
o
oo
o
o
o
o
oo
o
o
oo
ooooo
o
o
o
o
o
o
o
o
o
oo
oo
oo
o
ooooo
o
o
ooooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
ooo
oooooo
oooooo
ooooo
oooooooooo
o
oooo
ooooooooooooooooooo
oo
oooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooo
oo
ooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooo
ooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooo
o
oooooooooooooooooooooooooooooooo
oooooooooooo
o
ooo
ooooo
oo
oooooooooooooooooooooo
ooooooooooooo
o
ooooooooooooo
oo
o
oo
oo
oooooooo
o
ooo
oo
ooooooooooooo
o
ooooooooooooooooooooo
ooooo
oooooooooooooooooo
o
ooooooo
o
oo
oo
o
ooo
oo
oo
ooooooooooo
oo
ooooooooooooooooooooo
oo
ooo
ooooooo
o
oooooooooo
ooo
ooo
oo
o
oo
ooo
oo
ooo
oo
o
oooooooooo
oooooooooooooooooooooooooooooo
oo
ooo
ooooo
ooo
oo
o
oooo
o
ooooooo
o
oo
ooo
oo
ooo
ooooooooooooooooooooo
ooooooooo
ooo
ooooo
oooooooooooooooo
oo
oo
o
oo
o
oooo
o
ooo
oooo
o
oo
o
oooo
o
oo
oooooooo
ooooo
oo
o
oo
oo
o
oo
ooo
oo
oooooooooooooooooooooo
oo
o
ooooooo
o
oo
oooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooo
o
ooooooooooooooooooooooo
o
oo
oooooooooooooooooooooo
oo
o
o
oo
ooooooooooooooooooooooo
ooo
o
o
o
o
oooooooooooooooooooooooo
ooo
o
ooooooooooooooooooooooooo
o
ooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooo
o
ooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooo
o
oooooooo
o
o
o
ooooooooooooooooooooooo
o
o
oo
o
oooooooooooooooooooooooo
o
oo
ooo
ooo
ooooooooooooooooooooooooooooo
oo
oooo
oooooooooooooooooooooooooo
o
oooooooooo
oo
oooooooooooooooooo
o
o
oooooooooooooooooo
oooooooooooooooooo
oooooooooooooo
ooooooooooooooooooooooooooo
o
ooooo
o
oooooooooo
o
oooo
o
oooooooooooooooooooooooooooooo
o
o
ooooooo
oooooooooooooooooooooooooooooooooooo
oo
ooo
ooooooooo
oo
o
ooooooooooooooooooooooooooooo
o
oo
o
oooo
ooooooooooooooooooooooooooooooooooooooooo
oo
o
ooooooooooooooooooooooooooo
o
o
oooooooooooooooooooooooooo
oooooooo
oooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooo
ooooooooooooooooooooooooo
o
ooooooooooooo
oooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooo
o
oo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooo
o
oooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
oo
ooooooooooooooooooooooooooooooooooo
o
o
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooo
o
ooooooooooooooooo
o
ooooooooooo
o
o
oooo
o
oooo
ooooo
o
o
o
ooooooooooooooo
o
o
oooooo
o
oooooooooooooooo
o
oooooooooo
ooooooooooooooo
o
ooooooooooooo
o
o
oo
o
ooooooo
oo
ooooooo
o
ooooo
o
oooooooooo
oooo
o
oooooooooo
oo
ooo
oooooooooooooo
o
ooooooooooooo
o
o
o
o
oo
ooooooooooo
o
ooo
ooo
o
ooooooooooooooo
o
o
o
oooo
o
oooo
o
oo
o
oo
oooooo
oo
o
oooooo
o
oo
oooooooo
o
o
o
oooooooooo
o
o
o
oooooooooo
o
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
oooooo
oo
o
oooooo
o
o
o
oooooooo
o
o
o
oooooooooo
o
o
o
oooooooooo
o
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
o
oo
ooooo
oooo
oo
o
oo
oooo
o
oooooo
ooo
o
o
o
o
oo
o
o
oooo
oo
oo
o
ooo
o
o
ooooooooo
o
oo
oo
o
oo
o
o
o
oo
oooo
ooo
oo
o
oo
o
o
oo
o
o
oo
o
oooo
oo
o
o
ooooo
o
o
o
o
o
oooooo
o
oo
oooo
o
oo
oo
oooooo
o
ooooooo
o
o
ooo
o
oo
o
oo
ooo
oo
o
oo
o
o
o
o
ooooooo
o
ooooooooo
oo
o
o
o
o
o
oooo
o
o
o
o
oo
o
o
ooooooooooooo
o
o
o
oo
o
oo
o
o
o
o
o
o
o
oo
ooooooo
oo
ooooo
o
o
oo
o
o
o
o
o
oo
o
ooo
oooo
oo
oooooo
o
oooooo
ooo
o
o
o
o
o
oooo
ooo
o
oooooo
o
oo
o
oo
ooooooo
oo
oo
o
o
o
o
oo
o
oo
o
o
oooo
oooooo
ooooo
ooo
o
oo
oo
oo
o
o
oo
oo
oo
o
ooo
oooo
oo
o
oooo
o
oo
o
o
oo
oo
o
ooo
o
o
oo
o
o
o
o
o
o
o
o
o
o
o
ooooooooo
o
o
oo
o
o
o
o
oo
o
o
o
o
o
oo
oo
oooo
o
o
oo
o
oooooooooo
o
oo
oo
o
ooo
o
o
o
o
o
o
oo
o
ooo
o
o
oo
o
o
o
oooooooo
o
oooooooo
o
ooo
o
o
oo
o
o
o
o
o
oo
o
o
o
o
o
o
oooo
oo
o
ooooooooo
o
o
o
oo
ooo
o
o
oo
o
oo
ooo
o
o
o
ooooooo
o
oo
o
ooo
o
o
o
o
o
ooo
o
o
o
oooo
o
oo
o
o
o
o
ooo
oooooooooo
o
o
oo
o
o
oo
o
o
o
o
oo
o
o
oo
oooo
o
o
oo
o
oo
oooooooo
o
o
o
oooo
o
o
o
ooo
o
o
o
o
o
o
oo
o
o
oo
oooo
ooooo
oo
o
oo
oo
oo
oo
o
o
oo
o
o
o
ooo
o
oooo
o
o
oooo
o
oo
oo
o
o
o
ooo
o
ooo
o
o
o
o
oo
oo
oo
o
o
o
o
o
oo
oo
o
o
o
oo
o
oo
o
o
o
o
o
oo
o
ooo
oo
o
ooooooo
oooo
oooo
oo
o
oo
ooooo
oooooo
o
o
o
o
o
o
o
o
o
o
ooooo
o
oooooo
o
o
oo
o
o
o
o
oo
o
o
oo
ooooo
o
o
o
o
o
o
o
o
o
oo
oo
oo
o
ooooo
o
o
oo
ooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
ooo
oooooo
oooooooo
ooo
ooooooo
oooo
oooo
oooooooo
ooooooooooo
oo
oooooooooooooooooo
oo
oooooooooooooooo
o
oooo
o
oooooooooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooo
o
o
ooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooo
ooo
oo
oooooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooo
ooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooo
o
oooooooooooooooooooooooooooooooo
oooooooooooo
o
ooo
ooooo
oo
oooooooooooooooooooooo
ooooooooooooo
o
ooooooooooooo
oo
o
oo
oo
oooooooo
o
ooo
oo
ooooooooooooo
o
oooooooooooooooooo
ooo
ooooo
oooooooooooooooooo
o
ooooooo
o
oo
oo
o
ooo
oo
oo
ooooooooooo
oo
ooooooooooooooooooooo
oo
ooo
ooooooo
o
oooooooooo
ooo
ooo
oo
o
oo
ooo
oo
ooo
oo
o
oooooooooo
oooooooooooooooooooooooooooooo
oo
ooo
ooooo
ooo
oo
o
oooo
o
ooooooo
o
oo
ooo
oo
ooo
ooooooooooooooooooooo
ooooooooo
ooo
ooooo
oooooooooooooooo
oo
oo
o
oo
o
oooo
o
ooo
oooo
o
oo
o
oooo
o
oo
oooooooo
ooooo
oo
o
oo
oo
o
oo
ooo
oo
ooooooooooo
oo
o
oo
oooooo
oo
o
oo
ooo
oo
o
oo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooo
o
o
oooooooooooooo
o
o
o
ooooooooooooooo
o
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
o
oo
o
ooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooo
oooooooooooooo
o
oooooooooooooo
o
o
o
oo
ooooooooooooooo
ooo
o
ooooooooooooooo
o
o
o
oooo
o
oooo
o
o
oo
oooooooo
o
o
ooooooo
o
oooooooooo
o
oooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooo
o
o
ooooooo
o
oooooooooo
o
oooooooooooo
oo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
ooooooooooooooo
oo
oooooooooo
ooo
ooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oo
ooooooooooo
ooo
ooooo
Cancer
o
o
o
o
o
o
ooooo
oooo
oooooooooo
o
oo
o
oo
o
ooooooo
o
oooo
o
oooooo
o
ooooo
o
oo
ooooo
o
o
oo
o
o
ooo
o
ooooooooo
o
oo
o
ooo
oooooo
o
o
oo
oooo
oo
o
ooooo
o
o
oo
oo
oooo
ooooooo
oo
o
o
o
o
oooooo
o
ooooo
oo
ooo
o
oo
o
oooo
o
o
o
o
o
oo
o
o
oo
o
o
o
oooooooo
oooo
o
oooo
o
ooooooooooooo
o
oo
o
oooooo
o
oooooooo
o
oo
oooooo
oooooooo
o
oooo
o
oooooooooo
ooooo
o
oooooooooooooooooo
o
o
o
oooooooo
oooooo
o
oo
ooooo
o
ooooo
o
ooo
oo
o
o
oo
oo
o
oooooooooo
oo
ooo
o
oooooooooooo
o
oooooooooooo
oo
oo
ooooo
o
oo
oooooooooooooooooooooooooooooooooooo
o
ooooooooo
oooooooooooo
o
ooooooooooooo
o
ooooooooooooooooooooooooo
o
oo
ooooo
o
oo
o
oo
o
oooo
o
oo
o
oo
o
oooo
ooooooooo
o
ooooo
ooooo
o
oooo
oo
ooo
ooooo
ooooooooooooooooooo
o
oooo
o
o
o
oooo
o
oooo
o
ooooo
ooo
oooooooo
o
oo
oo
ooo
ooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooo
o
oo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oo
o
ooooooo
ooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
o
oooo
o
o
oooooooo
o
o
ooooooooo
o
o
o
o
oooo
o
o
o
o
ooo
o
o
ooo
o
o
o
o
o
o
oo
ooo
oo
o
o
ooooooooo
oo
oooooooooo
oooooo
oooo
oo
ooooo
oooooo
ooo
oooo
o
ooo
ooooooooooooooo
oooooooooooooooooo
oo
ooooo
o
ooooooo
oooooo
ooo
ooooooooooooooo
oooo
ooooooo
ooooo
o
oooo
ooooo
oooooo
oooooooooooooooooooooooooooooooooo
ooo
oooooooo
oo
oo
oo
oo
ooo
oo
ooooooooooo
oooooooooooooooooo
oooo
o
oo
ooooooo
oo
oo
oooooooooooooooooooooooooooooooooooo
oooo
o
oo
ooo
oooo
ooooooo
oo
oooooooooooooooooooo
oo
oo
oo
ooo
oooo
ooo
ooooo
oo
oo
ooo
oooooooo
oooooo
o
oo
ooo
oo
ooooooo
oooo
oo
oo
ooooooooo
ooooooo
ooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooo
ooooo
oo
oooooooooooooooooooooooo
ooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooo
ooooooooooooooooooooooooooooooooooooooo
oo
oo
oo
oo
oooooooooooooooooooooooooooooooo
oo
o
o
o
o
o
ooooooo
o
oo
o
ooooooooooooooooooooooooooooo
ooo
o
oo
oooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooo
oooo
oooooooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooo
oo
oo
oooooooooooooooooooooooooooooooooo
oo
o
o
oooooooooooooooooooooooooooo
oooo
oooo
o
oooooooooooooo
oo
oooooooooooooo
oooo
oo
oo
o
ooooooooooooooooooooooooo
oooooooooooooooo
o
oooooooooooooo
o
oooooooooooooo
o
oooooooooooooooo
o
o
oooooooooo
o
oo
o
ooooooooooooo
oooo
ooooooo
ooooooooooooooooooooooooooo
oo
ooooo
ooo
o
o
o
ooooooooooooo
ooooooooooooooo
ooooo
o
ooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooo
o
oooooooooooooooooooooooo
oooooooooo
o
ooooooo
oooooooooooo
oooooooooooooooooooooooooooooooooo
ooo
oooo
oo
oo
ooooooooooo
oo
ooooooooooo
oooo
ooooooooooo
oo
ooooooooo
o
oooooooooooooo
ooooooooooo
ooo
oooooo
oo
ooooooooooooooooooooooooooooooooooooo
ooooo
oo
oo
oooooooooooooooooo
o
oooooooooooooo
oo
ooo
oooo
oo
oo
ooo
oooooo
oo
oooooooooooooo
oo
oooooooooooooooo
ooo
ooooooooooooooooooooooooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooooooo
ooooooo
oo
oo
o
oooooooooooooo
ooooooooo
ooooooooo
oo
ooooooooo
oo
oo
ooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
ooooooooooooooooooo
o
o
o
o
o
o
ooooo
oooo
oooooooooo
o
oo
o
oo
o
ooooooo
o
oo
oo
o
oooooo
ooooo
o
o
oo
ooooo
o
o
oo
o
o
o
oo
o
oooo
ooooo
o
oo
o
oo
o
oo
oooo
o
o
o
o
oo
o
oo
o
o
o
oooo
o
o
o
o
oo
oo
o
oooooooo
oo
o
o
o
o
oooooo
o
ooooo
oo
ooo
ooo
o
ooo
o
oo
o
o
o
o
o
o
ooo
o
o
o
oo
ooo
ooo
oooo
o
o
ooo
o
ooo
o
oooo
o
oooo
o
oo
o
oooooo
o
ooo
o
oooo
o
oo
oooooo
ooo
o
ooo
o
o
oo
oo
o
oooooooooo
o
oooo
o
oooooooooooo
o
oo
ooo
o
o
o
oooooooo
oooo
oo
ooo
ooooo
o
oooo
o
o
ooo
oo
o
o
o
o
oo
o
ooooo
oooo
ooo
ooo
o
o
ooooooooooo
o
oooooooooooo
oo
oo
ooooo
o
oo
oooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooo
o
ooooooooooooo
o
oooooooooooooo
ooooooooooo
o
oo
ooooo
o
oo
o
o
o
o
oo
oo
o
oo
o
o
o
o
oooo
ooooooooo
o
o
oo
oo
oooo
oo
oooo
oo
ooo
oooooooooo
o
oooooooo
ooooo
o
oooo
oo
o
oooo
o
oo
o
o
o
ooooo
o
oooooooooo
o
oo
oo
ooo
oo
ooooooooooooooooooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
ooooo
o
oo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
oo
o
ooooooo
ooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
o
o
oooo
oo
oooooooo
o
o
ooooooooo
oo
o
o
oooo
o
o
o
o
oo
oo
oooo
o
o
o
oo
o
oo
ooo
oo
o
o
oo
oo
ooooo
oooooo
oooooo
oooooo
oooo
oo
ooooo
oooo
ooooooooo
o
ooooo
oooooo
ooooo
oo
ooooooooooooo
oo
ooo
oo
oooo
o
o
oo
ooooo
oo
ooooooo
oooooooo
ooo
oooooo
oo
ooo
oooooo
ooo
ooooo
ooooo
oooooo
ooo
oooooo
ooooooooo
oooo
ooooooo
oo
ooo
oooooo
ooooo
oo
oo
ooooooo
oo
oooo
oo
ooo
oo
oo
oo
oo
oooooooooooo
oo
ooo
ooooooooo
oo
oo
oo
ooo
oo
oo
oo
ooooooooooooooooooooooooooo
ooo
ooooo
oooo
ooooooo
oo
oooo
ooooo
oo
oo
ooooooooo
oo
oo
ooo
oo
ooooo
ooooo
oo
oo
ooooo
ooooooooo
ooo
o
oo
ooo
oo
ooooooooo
oooo
oo
ooooooooooo
ooooo
ooooooo
o
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
ooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooooooooooooo
ooooooo
oooooooooooooooooooo
oooo
ooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
ooo
oooooo
o
ooooooooooooooooooooooooooooooo
oooo
oo
o
oooooo
oo
oooooooooooooooooooooooooooooooo
oooo
o
o
o
oooooooo
oo
o
ooooooooooooooooooooooooooooo
oo
o
o
oo
oooooooooooooooooooooooooooooo
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oo
oooooooooooooooooooooooooooooooooooo
oooo
oooooooooooooooo
oo
ooooooooooooooooooooooooooooooooooooooo
oo
oo
oooooooooooooooooooooooooooooooooo
oo
o
o
oooooooooooooooooooooooooooo
oo
oo
oooo
o
oooooooo
oooooo
oo
oo
oo
oooooooooo
oooo
oo
oo
o
Stromal
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
20
Peak # m/z value Epi Canc Strom1 101.52 107.5 0.093 110.5 0.44 0.564 123.55 132.5 0.066 134.5 0.10 0.137 135.5 0.13 0.198 137.5 -0.01 0.059 145.5 -0.71
10 146.5 -0.4111 151.5 -0.15 0.35 -0.2512 157.5 -0.07 -0.1713 170.514 171.515 174.5 0.0516 175.5 0.14 0.5417 179.518 188.519 212.520 214.5 -014 -0.1321 215.5 -1.17 -1.0722 222.5 0.2923 224.524 225.525 231.526 244.5 -0.0127 247.5 -0.31 -0.4128 258.5 0.2129 270.5 -0.14 -0.2430 278.5 0.3231 279.5 0.3932 280.533 285.534 289.535 293.5 0.2536 297.537 299.538 301.5 -0.45 0.21 0.1139 312.5 0.10 -0.44 -0.2440 322.541 324.5 0.0642 325.5 0.03 -0.00 -0.0043 333.5 0.82 0.5544 340.5 -0.02 -0.0745 341.546 347.5 0.0147 349.548 353.5 0.0549 355.5 0.02
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
21
0.0 0.2 0.4 0.6 0.8 1.0
0.0
0.2
0.4
0.6
0.8
1.0
patient= 105 at m/z= 788.6
0.0 0.2 0.4 0.6 0.8 1.0
0.0
0.2
0.4
0.6
0.8
1.0
true
●●●●
●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●
●●●●●●●●●●
●●●●●●●●●
●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●
●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
0.0 0.2 0.4 0.6 0.8 1.0
0.0
0.2
0.4
0.6
0.8
1.0
predicted
●●●●
●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●
●●●●●●●●●●
●●●●●●●●●
●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●
●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
epithelial
cancer
stromal
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
22
0.0 0.2 0.4 0.6 0.8 1.0
0.0
0.2
0.4
0.6
0.8
1.0
patient= 126 at m/z= 788.6
0.0 0.2 0.4 0.6 0.8 1.0
0.0
0.2
0.4
0.6
0.8
1.0
true
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●
●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●●●●
●●●●●●●●●●●●●
●●
●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●
0.0 0.2 0.4 0.6 0.8 1.0
0.0
0.2
0.4
0.6
0.8
1.0
predicted
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●
●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●●●●
●●●●●●●●●●●●●
●●
●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●
epithelial
cancer
stromal
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
23
0.0 0.2 0.4 0.6 0.8 1.0
0.0
0.2
0.4
0.6
0.8
1.0
patient= 167 at m/z= 788.6
0.0 0.2 0.4 0.6 0.8 1.0
0.0
0.2
0.4
0.6
0.8
1.0
true
●●●●●●●
●●●●●●
●●●●
●●●●●
●●●●●●●●●
●●●●
●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●
●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●
0.0 0.2 0.4 0.6 0.8 1.0
0.0
0.2
0.4
0.6
0.8
1.0
predicted
●●●●●●●
●●●●●●
●●●●
●●●●●
●●●●●●●●●
●●●●
●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
●●●●●●
●●●●●●●●●●●
●●●●●●●●●●●●●●●●●●●●●
●●●●●●●●●●●
●●●●●●●●●●●●
●●●●●●●●●●●●●
●●●●●●
epithelial
cancer
stromal
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
24
Other approaches
• Support vector machines: classification error was a little higher than lasso;doesn’t give a sparse solution easily
• Deep learning (with help from a student of Geoff Hinton): reported that itdidn’t work any better than lasso; thought that non-linearities were likelyunimportant for this problem, and sparsity was more important
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
25
A challenge
• “Abstentions”: sometimes a classifier should not make a prediction; instead itshould say “‘I don’t know” For example, when the query feature vector is faraway from the training set features.
• This problem happened in some tests of our system• Can’t rely on the fact that the largest posterior probability will be close to
1/K (K= number of classes):
−2 −1 0 1 2 3 4 5
−1
01
23
45
X1
X2
●●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●●
●●
●
●
●
●
●
●
●●
●
●
●●
●
●●
●●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
● ●
●
●
●
●
●
●
●●
●
● ●
●
●
●
●
●
●● ●
●●
●
●
●
●●●
●
●
●
●
●
●●
●
●
●
●
X
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
26
More questions
• Should we adjust for patient effects in training? (My attempts were notsuccessful)
• Should we use spatial proximity of pixels? If so, how?
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
27
Customized Training by Data Clustering
Joint work with Scott Powers and Trevor Hastie
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
28
The idea
• for each patient:• find 10 nearest neighbors of each data
point• take union of these neighbor sets as
customized training set just for thatpatient
Test data:
Patient Data11...122...233...34...
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
29
Mass spectrometry cancer results
o
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
0 20 40 60 80
0.00
0.05
0.10
0.15
0.20
0.25
#nonzero
test
err
or●
●
●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
standardcustomized10NN
764934 o
o
o
ooooooooo
ooooooooooooooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooo
0 20 40 60 80
0.00
0.05
0.10
0.15
0.20
0.25
#nonzerote
st e
rror
●●●●●●●●●●●●●●●●●●●●●
●●●●●●●
●
●●●●●●
●●●●●●●●●
●●●●●●●●
●●●●●
●●●●●●●
●●●●●●●
●●●●●●●●●●●●●●
●●●●●●●
647o
o
o
o
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
ooooooo
0 20 40 60 80
0.00
0.05
0.10
0.15
0.20
0.25
#nonzero
test
err
or
●
●
●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
986748
ooooooo
o
o
o
o
o
oo
oooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
oooooooooooo
0 20 40 60 80
0.00
0.05
0.10
0.15
0.20
0.25
#nonzero
test
err
or
●
●
●●●●
●
●●●
●●
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
303333
o
o
o
o
ooooooo
oo
ooooooooooooooooooooooo
ooooooooooooooooooooooo
ooooooooooooooooooooooooooo
0 20 40 60 80
0.00
0.05
0.10
0.15
0.20
0.25
#nonzero
test
err
or
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
487
o
o
o
o
ooooo
ooooo
oooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
0 20 40 60 80
0.00
0.05
0.10
0.15
0.20
0.25
#nonzero
test
err
or
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
494
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
30
Table : Test error rates by patient for standard and customized training
Patient 1 2 3 4 5 6 Overall
Standard training 0.29% 4.56% 6.78% 0.00% 13.76% 2.77% 3.58%Customized training 0.71% 1.89% 0.82% 0.40% 9.43% 0.92% 1.89%
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
31
Patient
6
5
4
3
2
1
Standard
Feature
Features selected by customized training for each patient (variables not selectedby any model are omitted from the x-axis).
Using hierarchical clustering with Jaccard distance between the sets of selectedfeatures to split the patients into two clusters, patients 1, 2 and 3 were in onecluster, with patients 4, 5 and 6 in the other.
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
32
Another twist for customized training in this example
Train on normal data from a new patient, on the fly.
Use this information to improve predictions
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training
33
Conclusions
• Scientists really seem to like the sparsity that results from the lasso(`1 -regularization)
• Customized training is a simple idea, that can discover hidden structure indata and potentially improve predictions.
Robert Tibshirani, Stanford University Cancer detection /lasso/ customized training