Idea Transcript
UNIVERSITÉ DU QUÉBEC À MONTRÉAL
MÉTHODES ET LOGICIEL POUR LE TRAITEMENT EFFICACE DES
DONNÉES DE CRIBLAGE À HAUT DÉBIT
MÉMOIRE PRÉSENTÉ
COMME EXIGENCE PARTIELLE
DE LA MAÎTRISE EN INFORMATIQUE
PAR
PABLO ZENTILLI
SEPTEMBRE 2007
UNIVERSITÉ DU QUÉBEC À MONTRÉAL
Service des bibliothèques
Avertissement
La diffusion de ce mémoire se fait dans le respect des droits de son auteur, qui a signé le formulaire Autorisation de reproduire et de diffuser un travail de recherche de cycles supérieurs (SDU-522 - Rév.01-2006). Cette autorisation stipule que «conformément à l'article 11 du Règlement no 8 des études de cycles supérieurs, [l'auteur] concède à l'Université du Québec à Montréal une licence non exclusive d'utilisation et de publication de la totalité ou d'une partie importante de [son] travail de recherche pour des fins pédagogiques et non commerciales. Plus précisément, [l'auteur] autorise l'Université du Québec à Montréal à reproduire, diffuser, prêter, distribuer ou vendre des copies de [son] travail de recherche à des fins non commerciales sur quelque support que ce soit, y compris l'Internet. Cette licence et cette autorisation n'entraînent pas une renonciation de [la] part [de l'auteur] à [ses] droits moraux ni à [ses] droits de propriété intellectuelle. Sauf entente contraire, [l'auteur] conserve la liberté de diffuser et de commercialiser ou non ce travail dont [il] possède un exemplaire.»
REMERCIEMENTS
Je tiens à remercier mon directeur de recherche, M. Vladimir Makarenkov, pour ses conseils, ses suggestions, ses encouragements et son suivi.
Je remercie également mes collègues, Alix Boe, Abdoulaye Baniré Diallo, Alpha Boubacar Diallo, Andrei Gagarin et Dmytro Kevorkov pour leurs conseils, leur aide et leur soutien qui m'ont permis d'avancer quand la voie était difficile.
Mes remerciements s'adressent aussi à ma famille pour son soutien et à celle de ma conjointe pour m'avoir accepté parmi eux. Je remercié ma conjointe, Yaël Wojcik, pour sa patience lors de ces longues années d'études.
l'adresse ma reconnaIssance à Génome Québec qUI a contribué au financement de ce projet d'étude.
À tous ceux qui ont contribué de près ou de loin à la réalisation de ce projet, qu'ils trouvent ici mes remerciements les plus sincères.
TABLE DES MATIÈRES
LISTE DES FIGURES LISTE DES ABRÉVIATIONS, SIGLES ET ACRONYMES RÉSUMÉ INTRODUCTION CHAPITRE 1 LE CRIBLAGE À HAUT DÉBIT (HTS)
v
viii
ix
1
4
.4
1.1
Historique du HTS
4
1.2
Survol du processus de recherche d'un médicament
6
1.3
Avantages et limites du processus
9
1.4 Présentation du matériel CHAPITRE II NORMALISATION ET SÉLECTION DES « HITS »
13
18
18
2.1
Nonnalisation
18
2.2
Facteur Z'
24
2.3
Sélection des «hits »
25
CHAPITRE III ERREURS SYSTÉMATIQUES
28
28
3.1
Types d'erreurs courants en HTS
28
3.2
Méthodes de correction
33
IV
CHAPITRE IV
47
ARTICLES
47
4.1 « Comparison of two methods for detecting and correcting systematic error
in high-throughput screening no="3") 0 625 0 355 0 043 0.307 0 302 0.2.5 1 301 -0.088 1.017
-3 272 45{
-0 IH) 0 191, 0 113 -0 22E. -0 8{6 -0 073
0 359 0 787 "v -0 l'" -0 004 -0 019 0 105 0 109 0 111
-1,
199 087 1)11
0 252 -1 503 0 540 1 .698 -0 1 ? -0 093 -0 742 0 no
594 a 498 -0 743 -0 700 - 738 -0 699 a 130 -1 393
-o. 46~
a
-0 056 -0 021 -0 254 -0 549 -0 568 -0.6BO
-
22S
-o.ooa
0 :.184 -0 098 0 037 0 189 -0 78 0 223
-0 373 -1 318 0 309 0
-1) 643
-1 257 -0 476
-0 869
-0 403 -1 110
-0 ?8:9 -0 056
-
-0
•• •
6e3
8.~
o 066
-0 317
-0.433 -0 527 2623 0 057
-0.034 -0.424 ~2 893 0 001
0 099 -Il 732 -0 186 -0 093
-0 089 -0 520 -0 042
-0 083 -0 657 -o. H7
-0 518
-
-
409 164 '16
-û 410
3.911
-0 414
5138 0.286 -0 219
-0 964 0.495
-0 3
sn..,
-0 517 -0 e~2
-
1 373
-1) 366 -1)
690
686 -0.B52
-0 465 -G 620
0 1% -0 306
~23
-0 -0 -0 -0 -0 -0 -0
-0 2'lB
0 90E> 0 372 0.165 -0 197 - 028 -
-0.265 -1 295 4 195 1) 348 755 030 -0 737 0 OS9
-0 233 -0 150 0 272 -0 9n 0.2 ? 1.708 -0 842
129
0 411
-0633 -0 456
0.335
-0
988 -0 E.97 -0 152 0 107 0 846 -1) 719 -0 635
-0 456 -0 ~54 -0 789 0 455 -0 472 0 S53 -0 481 0 378
167 331 261 .209 1 9 HS 868 -1 269
~5
620
-0 029
-() 2:!J\omalicol~
G,apt-oc P'OpeIlies Square Size
r r
rzo:B
Eniafge lhe IMl\dQN
r
Squaling
Set a. Dela..t
Figure 5.7: Résultats d'une évaluation de l'arrière-plan.
115
Approximation de l'arrière-plan (:>,,
Values Properlie.
M«<
110.000
~
•••
7.500 5000
Min
r
Max 1 Min Choun AulorJlalically
GUll,,"'" Pt Sigma Distribution; • Sauvegardez le fichier; •
Le fichier est ajouté à l'arborescence;
• « Double-cliquez» sur le nom du fichier dans l'arborescence; • Changez les paramètres de visualisation dans le panneau inferieur gauche (facultati f); • Sélectionnez le fichier dans l'arborescence; • Sélectionnez l'option View => Table pour visualiser la distribution des seuils de sélection des «hits » des puits. C HTS Corrector
File Edit Open • Change Current Directory Deiete File Delete Ali Files
View
Analysis
Correction
- OAssoy Evaluated Background Approximated Backgound Hit Distribution Sigma Distribution
0"',-mnam-.rjr-r.tlllllfill!l'"
o Evaluated Background (variations) o Approximaled Background o Hit Distribution o Sigma Distribution
Hit Selection
Convers
J
r~ Mefl
363.1 309.51:
Exit
255.91: 202.33'
120
Geoo.1 Anat/sls 1CoI'eciion 1 Hr Selection 1 Glapl-Oc SetlJ,g.1 K·Me.m 1
Backlllound Calcwhon Pm...,,",, 1;7 Remove OUti,.,. Exceeding
1 3.000
Si",.,
S9nb Distribulion
r. HitRate
File
Note : the selliog. fOf '" Median polish; • Sauvegardez le fichier; • Le fichier corrigé est ajouté à l'arborescence; • «Double-cliquez» sur le nom du fichier dans l'arborescence; • Changez les paramètres de visualisation dans le panneau inferieur gauche (facultatif).
File Open
•
Assay
Change Current Directory
Evaluated Background
Delete File
Approximated Backgound
Delete Ali Files
Hit Distribution Sigma Distribution
Edit
- DAss4Y
~IIA§m.tjl.
o Evalualed Background (variations] o Approximated Background o Hit Distribution o Sigma Dislribution
Meil 363.1 309.51:
Exit
255.92: 202.33,
132
A~ COIrection 1Hl Selection 1G.4PI'ic Selli'lgs 1 K·Means 1
Genelll
Wel Caf;l
r -
Convtlgence p~_", lot.,. Number oIlleraiions
fi
Meolish
Fae Edl
- o Ass B Score; • Sauvegardez le fichier; • Le fichier corrigé est ajouté à l'arborescence;
• « Double-cliquez» sur le nom du fichier dans l'arborescence; • Changez les paramètres de visualisation dans le panneau infelieur gauche (facultatif). -
C HTS Corrector
File Edit Open
•
Change Current Directory Delete File Delete Ali Files
Exit
Assay
Evaluated Background Approximated Backgound Hit Distribution Sigma Distribution
--1
View
Analysis
Correction
- DAssay 21 McMasieU 250 mlx DE valuated Background (variations) Approximated Background Hil Distribution Sigma Distribulion
o o o
Hit Seiection
Convers
Mea.
363.1 309.51: 255.92: 202.33,
134
~
Scttings Gene,ali Analysis C",reclion 1Hl Selection 1 Graphe Set!ing.pprox. Background l'I.d,~n ~Iish
8 Scor.
202.33S
- DI>..",~
McMosteU250mtx
o o McMasle Table.
~
Sellin&, General 1AIW)Uo 1 COileclion 1 Hd Sel!ction 1 Gloplic Sel!ing$ 1 K·Means 1
Deld DiectOlY
SeDrch -..
~
Whon OI)eI1ing • file ..-.d on DoU= Histogram pour visualiser les histogrammes des valeurs moyennes des lignes et des colonnes du plateau.
Le graphique choisi (nuage de points (!OIrnà1ion
P Newma'n DalaUsirlgZ Swe
r
DenonMUe D4Ibalttr rhe~
Exit
OK
C8I1cei 1
145
DAss.
-0
(varialions)
Eva.
01
DApp
o Hit Distribution o Sigma Distribution
• OEv.......ed8ockll'ourdlvo"....""
EJ M~b$lel_125~LBGR
nll)t
OA~o.""'at.d
B.cr.ç>CUY.l
OH' Oi",Wion
OS..;moO/Stltuloon
o li". 0.1141
00"',4 0"170
..
O.DO
''''
-00116
.......
..
......
p~y,s.
.()Jrnl
·00t71
.0.1138
-ll.I2$ Columns
•
(i'4l>I'iePt-.bN
5
6
7
8
0.13.
0023
0073
00:1
0107 -oOO~
10
0221 0076
0160 OlH
o 16j;
·0052 0075
·0031
om
0'55
006ô
0057
0112
0083
0039
Ozal
·0033
0'63 ·0050
·0 !).I2
0,6j;
·0207
·0101
·0162
'004' 0109
OIZE.
02$;
·02O.l
-il 133
0022
0034
0089
o'€Q
\ Rec< q-.
f"\03
(Pooor.\
·0 170
-ol~
·0127
·0161
18 [Po private MatricePlus BackgroundMoyen{MatricePlus[) l~steMatri.(:"c,;;, MatricePlus Hi ts) {
126
139
Fa~t
III III III III III III III III
124 125
135 lJ6 137
90 91 92 93
110 111 112
133 lH
III III III III
Il if
'L
98 99 100 101 102 103 104 105 106 107 108 109
return sOl1"U1lcBGR_Moyen;
'L
1: \Memolre final \HTS_COrreCCOr\DOmaine\BctckgroundApprox. cs
1: \Memo ire F ina 1 \ HTS Corree tor\Domaine\BackgroundApprox. es
" 1 /' HTS Corrector
2 3 Pablo Zentilli
UQAK - 110ntréal
4
,
,.
79 80
81 82 83
84 85 86
87 88 89
90 91 92 93 94 95
S •
6 7 8
Création Juillet 2005
Dernière mise à jour : Septembre 2006
'/
9
10 using System; 11 using HTS Corrector Au:·:ilia-ires; 12 13 namespace HTS Corrector. Domaine ( 14 III 15 III C1Q$SO pour le calcul du background approché d'un background moyen. III Le constructeur prend la mat.rice du b~lckground moyen. 16 III Pour lancer le calcul exécuter la méthode Compute(); 17 18 III 19 public cla~:!3 BackgroundApprox { 20 Attributs du calcul (Settings) 21 26 27 Constructeurs 34 III 35 III Lance le calcul de l'approxlmation de la matrice de Background passée au 36 37 III constructeur III 38 III 39 III Une matrice des valeurs approchées de l'arrière-plan correspondant 40 ô1 III él la m:. réutilisables
119
< summary> Lance le calcul de la correction par puits selon les paramètres passés au constructeur Une liste de matrices corrigée. public 11atricePlu:s[] Compllt~(l {
I l Copie du well for (int p " 0; p < this.copieL.l:::t(:>~.-,~:rices.Length; p't+) '.Jell(O, p) ..,. th.ls.copieList'·:Matrices(pj [1, cl;
III III III III
112
III III III III III
I l Correction des wells MatricePlus well .. new Matriceplus (1, double \."l "" 0; double b '" 0;
100 101 102 103 104 105 106 107 106 109 110 111 113 11' 115 116 117 118
Constructeurs
for
return this. copieListeHa.tr ices;
99
1
10 using system; 11 using HTS_Corrector.Auxiliaires; 12 13 namespace HTS Corrector. Domaine 1 14 III III Classe pour le calcul de la correction par PU.lts ('.... ell correction) d'unE: 15 16 III list.e de matrices. 17 III Le constructeur prend la liste de matrices et les propriétés nécessaires calcul. III Pour lancer le calcul ey.écuter la méthode Compute(); 18 19 III publ.lc class WellCorrection { 20 21 Attributs du calcul (Settings) 22
35 36
I l Effectue les transformations nécessaires après calcul. PostCalcul ();
96 97
1
;
15d ! 55 156 157 158 159 160 161
Oenormilli.~at~on
des résultats ( this .copieJ.i:5teMatrices • Outils. DE Normalisation L1ste ( th is. copie Lis teMat r lCt::S, this. moyenne, th is. s igm Vecteur de valeurs (r.Jatrice(l, n) I I I III Lanc(.' la recherche des "hits" selon la m~thod~ et les paramètres III passés au constructeur III III III Une liste des "hits" trouvés ("hic" - 1; non "hl.t" "00). III
III .J \ S t.o t
l ; \t-lemo i re F in public st,.)tic double Moyenne(Matrice matrlce)
72 75
76
III
81 93
public gtatic double Somme(Matrice matrice)
94
III E:cartType(Matr~ce
230 231 232
238
132 151
static public Hatrice Norm Zmean Sigma(Matrlce matrice) -
152
III
163 164 175
public static MëJtr~ce DE: Norr:lalisation(Matrice matriceNorm, double cC~lrtType) -
176 177 178 179
III III III III III III III III III III III III III III III III
239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257
187
188 189 190 191 192 193 194 195 196
double moyenne)
double moyenne,
Calcul de median polish (Tukey, 1977) Permet de corriger des erreurs systémat~ques sur des l~gn~s et des colonnes de la matrice. Selon nos simulations et tests cette méthode n'est pas très robuste ::il les erreurs sont présents sur plusieurs l~gne et 1 ou colonnes Voir Makarenkov et al. (2006j Matrice à corriger Limite de convergence pour arrêter les itérations Nombre maximal d'itérations La matrice corrigée public static Matrice Medpolish(Matrice matrice, double convergence, int nblterations) ( Matrice erreursLignes; Matrlce erreursColonnes;
III III III III III III III III III III III III III III III III III 111 III III III III III
Calcul de median polish (Tukey, 1977) Permet de corriger des erreurs systématiques sur des lign~s et des colonnes de la matrice. Méthode complète donnant aussi les vecteurs des erreurs trouvés Médiane calculée par l'algorithme La ma::.rice corrigée public Slatic Matrice Medpol.ish(l-latr~ce matrice, double convergence, int nblterations, out Matrlce erreursLignes, out Matrice erreursColonnes, out double medlanneCalculee) { I l TODO VOlr si on peut simpli fier et refactoriser
Matr Matr Matr Matr
III
184 185 186
return reponse;
Matrice residus
122
183
Matrice reponse = Medpolish(matrice, convergence, nblterations, out erreursLignes, out erreursColonrH~s, out med~anr.l~Calculee);
233
static public double
182
tique::>.
double medianneCalculee;
234 235 236 237
105 121
180 181
matrice,
229
J.:::'
List ce ce ce ce
.=
matrice.Copy();
liste']'~mp
,. new List ();
'ILignes "" new Matrice(l, matrice.NbLignes); vColonne, "" new l1atrice(l, matrice.NbColonnes); rDeltël "'" ne ' Ma:::rice(l, matrice.NbLigm:s); cDelta = ne' Matr:ice(l, matrice.NbColonncs);
double oldSum .. 0; double t - 0; double delta; double ne'..'Sum; bool converge""'" faise; :::ompteurlterations
~nt
do
0;
{
for
(int l
.... 0;
l
< residus.NbLignes;
1++)
I l Extraction des lignes listei'emp.Clea::U; for (int C'" 0; c < residus.NbColonnes; listC:Tt":mp.Add (residus [l, c]);
{
c++)
258
259 260 261 262 263 264 265
rDelta[O,
for
1]
• [·:ediane{listeTempJ;
(lnt l • 0: l < residus. NbLiglie~; 1+-» { for tint c .... 0; c < residus.NbColonnes; c++) residus{l, cl -~ rDelta{O, 11;
{
R
l, IMemo i re Fina 11 HTS_Correctorl Auxi 1 ia ires ISta t Ist iques. cs 266 267 268 269 270 271
for
(int
l -
0;
vLignes(O,
< residus.NbLignes; += rDelta(O, Il;
l
Il
1++)
l: \Memoire Fl.nul \HTS_CorrCCtor\Auxi l 1",1J.
33 ~ 336 337 338 339 340 341 342 343 344 345 3'6 3,7 348 349
(
272
273 274 275 276 277 278 279
d;.":lci'i -
for
t
Mediane (vColonnes);
(int C'" 0; c < residus.NbColonnes; vColonneslO, cl -= delta;
c++)
{
c++)
(
+= delta;
280
281 282
for
284 285 286
cDeltalO,
for
292 293 294 295 296 297 298
327 328 329 330 331
332 333 334
0;
c < residus.NbColonnes;
listeTemp.Add(residus[l,
287 288 289 290 291
326
=
I l Extraction des colonnes listeTemp. Clear () ; for (int l = 0; l < residus.NbLignes;
283
299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325
(int c
for
cl
0::
1++)
3 ~O
351 352 353 354 355 356 357 358 359 360 361 362 363 36' 365 366 367 368 369 370
{
cJ);
Mediane (listeTemp);
(iot: l - 0; l < residus.NbLignes: 1++) { for tint c '-' 0; c < residus .~lbColonnes; c++) rc:sidus[l, cl -: cDelt. .. (O, cl;
(int c .:. 0; c < resiou~.NbColonnes; vColonnes(O, cl += cDelta(O, cl:
c++)
(
delt.a '" Mediane (vLignes);
371
"'~\
St ... ti.wt
lque;:.•. C.:!i:
III < summary> III Calcul de Median Absolue Deviation (MAD) III VOlr Malo et al. (2006) III III Version proposant une distributlon normale III MatrlCe à traiter III La valeur du l'lAD (normalisé) public static double MAD Normalise(Hiltrice matrice) ( return MAD (matrice) -; 1.,1826; I l ~ 1.4826 "Normalise" le résultat
III I I I Calcul de Medlan Absolue Deviation (MAD) III Voir Halo et al. (2006) III III III Code adapté de la version MAD proposée par le logiciel statlstlque R III III III Listede matrices â traiter I I I I I I L.imite de convergence pour arrëter les itérations de median polish III < Ip.H·Am> III III Nombre ma:-:imal d'ltoàr.=l,;ions pour rnedlan polish III < Iparam> III