Listing du fichier stim2017.php
00001 <?php
00002 # # (gH) -_- stim2017.php ; TimeStamp (unix) : 16 Juin 2017 vers 10:13
00003
00004 # dgml ou gexf pour les graphes ?
00005 # https://blog.grakn.ai/knowledge-graph-representation-grakn-ai-or-owl-506065bd3f24
00006
00007 include_once("std.php") ;
00008 include_once("../../../statuno7.php") ;
00009
00010 #######################################################################################################
00011
00012 function montreListe($listeFichiers,$nomVisu,$nbLignes=25,$nbColonnes=80) {
00013
00014 #######################################################################################################
00015
00016 # si un nom de fichier est <p> on change de paragraphe
00017
00018 $tabFichiers = preg_split("/\s+/",$listeFichiers) ;
00019
00020 p() ;
00021 foreach ($tabFichiers as $fichier) {
00022 if ($fichier=="<p>") {
00023 finp() ;
00024 p() ;
00025 } else {
00026 echo href($fichier,"","bouton_fin bleu_pastel nou","","onmouseover='montreFichier(\"$fichier\",\"$nomVisu\")'") ;
00027 nbsp(7) ;
00028 } ;
00029 } ; # fin pourchaque
00030 finp() ;
00031 #
00032 div() ;
00033 textarea($nomVisu,"tajaunec",$nbLignes,$nbColonnes,$nomVisu) ; fintextarea() ;
00034 findiv() ;
00035
00036 } # fin de fonction montreListe
00037
00038 ###################################################################
00039
00040 debutPage("(gH) STIM 2017","strict","","stim2017.js") ;
00041 debutSection("100%") ;
00042 ###################################################################
00043
00044 h1("E/S, XML, R, statistiques, « recherche reproductible »") ;
00045 blockquote() ;
00046 h2(href("../../../","gilles.hunault \"at\" univ-angers.fr","gvert")) ;
00047 h2("(6 h pour l'Ecole doctorale ".href("http://edstim.univ-nantes.fr/","STIM","nou gbleuf").", juin 2017)") ;
00048 finblockquote() ;
00049
00050 ###################################################################
00051
00052 $XML = s_span("XML","grouge") ;
00053 $XSL = s_span("XSL","grouge") ;
00054 $XSD = s_span("XSD","grouge") ;
00055 $DTD = s_span("DTD","grouge") ;
00056 $R = href("https://cran.r-project.org/",s_span("R","grouge")) ;
00057 $Rstudio = href("https://www.rstudio.com/",s_span("Rstudio","grouge")) ;
00058
00059 $XMLRPC = s_span("XML-RPC","gbleu") ;
00060 $SOAP = s_span("SOAP","gbleu") ;
00061
00062 ###################################################################
00063
00064 /* références détaillées des livres
00065
00066 https://www.amazon.fr/dp/0081002041/ref=sr_1_1?s=english-books&ie=UTF8&qid=1496483444&sr=1-1&keywords=xml
00067 XML-based Content Management: Integration, Methodologies and Tools (Anglais) Broché \u2013 15 octobre 2017
00068
00069 https://www.amazon.fr/Triple-S-XML-3-0-Keith-Hughes/dp/0954674855/ref=sr_1_6?s=english-books&ie=UTF8&qid=1496483444&sr=1-6&keywords=xml
00070 Triple-S XML 3.0 (Anglais) Broché \u2013 26 avril 2017
00071
00072 https://www.amazon.fr/Modeling-Language-Linear-Programming-Specification/dp/1333756283/ref=sr_1_78?s=english-books&ie=UTF8&qid=1496483562&sr=1-78&keywords=xml
00073 XML Modeling Language for Linear Programming: Specification and Examples (Classic Reprint) (Anglais) Broché \u2013 27 septembre 2016
00074 xml4LP.jpg
00075 Editeur : Forgotten Books (27 septembre 2016)
00076
00077
00078 https://www.amazon.fr/Understanding-XML-Parsers-English-Nguyen-ebook/dp/B01L3VFIDS/ref=sr_1_83?s=english-books&ie=UTF8&qid=1496483595&sr=1-83&keywords=xml
00079 Understanding XML Parsers (English Edition)
00080
00081 https://www.amazon.fr/DITA-Topic-Based-Standard-Quick-Start/dp/3319283480/ref=sr_1_109?s=english-books&ie=UTF8&qid=1496483613&sr=1-109&keywords=xml
00082 DITA - the Topic-Based XML Standard: A Quick Start (Anglais) Broché \u2013 6 avril 2016
00083 dita.jpg
00084 Editeur : Springer International Publishing AG (6 avril 2016)
00085 Collection : SpringerBriefs in Applied Sciences and Technology
00086
00087
00088 fin de références */
00089
00090 ###################################################################
00091
00092 h2("Présentation de l'exposé","gbleu") ;
00093
00094 ###################################################################
00095
00096 blockquote() ;
00097
00098 table(0,10) ; tr() ;
00099
00100 td() ; nbsp(15) ; fintd() ;
00101 td() ;
00102 $url = "http://www.pearson.fr/livre/?GCOI=27440100422330" ;
00103 $url = "http://www.pearson.fr/resources/download.cfm?GCOI=27440100422330&thefile=2369_tdm.pdf" ;
00104 $img = "khg_xml.gif" ;
00105 $tit = "Manuel de prise en main de $XML" ;
00106 $aut = "Kevin Howard GOLDBERG" ;
00107 $edi = "Pearson" ;
00108 echo href($url,img($img,"khg",250)) ;
00109 fintd() ;
00110
00111 td() ; nbsp(15) ; fintd() ;
00112 td() ;
00113 echo href("http://www.amazon.com/XML-Bioinformatics-Ethan-Cerami/dp/0387230289",img("cerami.jpeg","cerami",225)) ;
00114 fintd() ;
00115
00116 td() ; nbsp(15) ; fintd() ;
00117 td() ;
00118 $url = "https://www.amazon.fr/Triple-S-XML-3-0-Keith-Hughes/dp/0954674855/ref=sr_1_6?s=english-books&ie=UTF8&qid=1496483444&sr=1-6&keywords=xml" ;
00119 $img = "tripleS.jpg" ;
00120 echo href($url,img($img,"xmlBioinf",210)) ;
00121 fintd() ;
00122
00123 fintr() ; tr() ; ## -----------------------------------------------------------------------
00124
00125 td() ; nbsp(15) ; fintd() ;
00126 td() ;
00127 $url = "https://www.amazon.fr/Modeling-Language-Linear-Programming-Specification/dp/1333756283/ref=sr_1_78?s=english-books&ie=UTF8&qid=1496483562&sr=1-78&keywords=xml" ;
00128 $img = "xml4LP.jpg" ;
00129 echo href($url,img($img,"xml_LP",210)) ;
00130 fintd() ;
00131
00132 td() ; nbsp(15) ; fintd() ;
00133 td() ;
00134 $url = "https://www.amazon.fr/DITA-Topic-Based-Standard-Quick-Start/dp/3319283480/ref=sr_1_109?s=english-books&ie=UTF8&qid=1496483613&sr=1-109&keywords=xml" ;
00135 $img = "dita.jpg" ;
00136 echo href($url,img($img,"dita",210)) ;
00137 fintd() ;
00138
00139 td() ; nbsp(15) ; fintd() ;
00140 td() ;
00141 $url = "https://www.amazon.com/Mining-Graph-Data-Diane-Cook/dp/0471731900" ;
00142 $url = "https://www.amazon.fr/Practical-Graph-Mining-Nagiza-Samatova/dp/143986084X/ref=sr_1_9?ie=UTF8&qid=1496863416&sr=8-9&keywords=mining+graph+data" ;
00143 $img = "miningGraphData.jpg" ;
00144 $img = "miningGraphWithR.jpg" ;
00145 echo href($url,img($img,"miningGraphs",210)) ;
00146 fintd() ;
00147
00148 fintr() ; tr() ; ## -----------------------------------------------------------------------
00149
00150 # Combinatorial pattern matching algorithms in computational biology using Perl and R
00151
00152 td() ; nbsp(15) ; fintd() ;
00153 td() ;
00154 $url = "https://www.crcpress.com/Combinatorial-Pattern-Matching-Algorithms-in-Computational-Biology-Using/Valiente/p/book/9781138115347" ;
00155 $img = "combinatR.jpg" ;
00156 echo href($url,img($img,"miningGraph",210)) ;
00157 fintd() ;
00158
00159 # Using R for Numerical Analysis in Science and Engineering
00160
00161 td() ; nbsp(15) ; fintd() ;
00162 td() ;
00163 $url = "https://www.crcpress.com/Using-R-for-Numerical-Analysis-in-Science-and-Engineering/Bloomfield/p/book/9781439884485" ;
00164 $img = "numericalAnalysis_R.jpg" ;
00165 echo href($url,img($img,"miningGraph",250)) ;
00166 fintd() ;
00167
00168 # R_High_Performance_Programming
00169
00170 td() ; nbsp(15) ; fintd() ;
00171 td() ;
00172 $url = "https://www.amazon.com/High-Performance-Programming-Aloysius-Lim/dp/1783989262" ;
00173 $img = "highPerf_R.png" ;
00174 echo href($url,img($img,"miningGraph",250)) ;
00175 fintd() ;
00176
00177 fintr() ; tr() ; ## -----------------------------------------------------------------------
00178
00179 # Software for data analysis_ programming with R
00180
00181 td() ; nbsp(15) ; fintd() ;
00182 td() ;
00183 $url = "https://www.amazon.com/Software-Data-Analysis-Programming-Statistics/dp/0387759352" ;
00184 $img = "software_R.jpg" ;
00185 echo href($url,img($img,"miningGraph",250)) ;
00186 fintd() ;
00187
00188 # Modern_Optimization_with_R modernOptim_R.jpg
00189
00190 td() ; nbsp(15) ; fintd() ;
00191 td() ;
00192 $url = "http://www.springer.com/br/book/9783319082622" ;
00193 $img = "modernOptim_R.jpg" ;
00194 echo href($url,img($img,"miningGraph",210)) ;
00195 fintd() ;
00196
00197 # XML and Web Technologies for Data Sciences with R
00198
00199 td() ; nbsp(15) ; fintd() ;
00200 td() ;
00201 $url = "http://www.springer.com/gp/book/9781461478997" ;
00202 $img = "rxml.jpg" ;
00203 echo href($url,img($img,"rxml",250)) ;
00204 fintd() ;
00205
00206 fintr() ;
00207 fintable() ;
00208
00209 p("texte") ;
00210 echo "Dans un premier temps, nous essaierons de montrer pourquoi $XML est une technologie importante à connaitre " ;
00211 echo " dans le cadre du développement informatique de programmes de recherche que ce soit pour des " ;
00212 echo " raisons de ".b("fiabilité")." ou d'".b("efficacité").". " ;
00213 echo " Ensuite, dans un second temps, nous illustrerons la problèmatique de l'".b("analyse scientifique des résultats")." et de leur " ;
00214 echo b(" reproductibilité")." à l'aide du logiciel $R et des outils associés. " ;
00215 echo " Les ouvrages affichés au-dessus de ce texte (avec un lien sous chaque image) constituent un socle important de connaissances pour " ;
00216 echo " confirmer et approfondir cet exposé." ;
00217 finp() ;
00218
00219 ###################################################################
00220
00221 h2("1. Données, programmes et $XML") ;
00222
00223 ###################################################################
00224
00225 blockquote() ;
00226
00227 p("texte") ;
00228 echo "A part les programmes informatiques de recherche théoriques basés uniquement sur un petit nombre de " ;
00229 echo " paramètres, la plupart des programmes informatiques développés dans le cadre de thèses " ;
00230 echo " utilisent à la fois des paramètres et des fichiers de données. Ces programmes peuvent produire soit des petits nombres de données " ;
00231 echo " (comme juste un score, un nombre de couleurs...) soit de nombreux résultats (fichiers d'exécutions, " ;
00232 echo " données résultats structurées...) qu'il faut aussi analyser. " ;
00233 echo " Voir au passage notre ".href("stim2010_1.php","notre rappel sur les 4 ages de la programmation").". " ;
00234 echo " La question qui se pose est bien sûr :" ;
00235 finp() ;
00236
00237 p("centre") ;
00238 echo b(em("Comment «bien» stocker ces données d'entrée et les résultats ? ")) ;
00239 finp() ;
00240
00241 pre_fichier("demos.txt","cadre") ;
00242
00243 p("texte") ;
00244 echo "L'une des premières limitations des bases de données relationnelles -- qui sont une solution standard à ce problème -- " ;
00245 echo " est leur manque de structure hiérarchique. Le modèle sous-jacent en lignes et colonnes avec des " ;
00246 echo b("relations")." issues du ".href("https://en.wikipedia.org/wiki/Relational_model","modèle relationnel") ;
00247 echo " n'est pas adapté à une structure hiérarchique forte. Il suffit de se rappeler que " ;
00248 echo href("https://fr.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol","LDAP") ;
00249 echo ", initialement défini comme un protocole est devenu un modèle de représentation de données " ;
00250 echo " pour comprendre que les ".href("https://fr.wikipedia.org/wiki/Base_de_donn%C3%A9es_relationnelle","SGBDR") ;
00251 echo " ne sont pas une solution universelle de stockage. " ;
00252 echo " Le second point qui invalide les bases de données pour gérer des résultats est leur gestion via un logiciel " ;
00253 echo " spécialisé (comme les implémentations SQL) avec des solutions logicielles lourdes à utiliser. " ;
00254 echo " Enfin, le troisième point à nos yeux qui «gâche tout» est leur but qui consiste vouloir " ;
00255 echo " utiliser systématiquement les données, quitte à mettre ".b("NULL")." lorsqu'une donnée n'est pas présente." ;
00256 echo " La vérification des données n'a plus alors grand sens, alors que la qualité des données en entrée impacte " ;
00257 echo " bien évidemment la qualité des résultats en sortie." ;
00258 finp() ;
00259
00260
00261 p("texte") ;
00262 echo "$XML évite tous ces écueils : c'est un format texte structuré en arbre enraciné, non lié à un un système d'exploitation, " ;
00263 echo " dont les ".b("grammaires")." $DTD et $XSD peuvent garantir la structure et le typage des données, quitte à refuser la validité d'un fichier, " ;
00264 echo " et pour lequel le langage de traitement $XSL facilite la transformation vers n'import quel format. " ;
00265 echo " De plus $XML est un méta-langage autour duquel gravite toute une technologie avec un support très fort du " ;
00266 echo href("https://www.w3.org/")." (via la rubrique ".href("https://www.w3.org/standards/","standards").")." ;
00267 finp() ;
00268
00269 p("texte") ;
00270 echo "Prenons l'exemple de la recherche de ".b("caractérisations spécifiques minimales") ;
00271 echo " présentées succintement ".href("../../../Idas/Ccd/ccd.php","ici").". Si on peut se contenter d'utiliser trois fichiers textes " ;
00272 echo " proprement couplés, seule une grammaire $XSD comme ".href("carac_xsd.txt","carac.xsd")." peut assurer de nombreuses " ;
00273 echo " vérifications sans avoir à écrire la moindre ligne de code." ;
00274 finp() ;
00275
00276 blockquote() ;
00277 $listeXml = "ra100_phv.dac ra100_phv.ngr ra100_phv.gal ra100_phv.xml ra100_phv.cs solution.cs" ;
00278 montreListe($listeXml,"visuListe",20) ;
00279 finblockquote() ;
00280
00281 p("texte") ;
00282 echo "Les liens qui suivent permettent de découvrir ces différents aspects de $XML " ;
00283 echo " une fois notre ".href("../../../Pluripass/Xml/","page de présentation")." parcourue :" ;
00284 finp() ;
00285
00286 blockquote() ;
00287 p() ;
00288 nbsp(5) ; echo href("http://xml.coverpages.org/xmlApplications.html"," $XML initiatives (2005) ","bouton_fin vert_pastel nou") ;
00289 nbsp(5) ; echo href("../../../tuteurs/tutxmlpre.htm#gene"," introduction à $XML ","bouton_fin vert_pastel nou") ;
00290 nbsp(5) ; echo href("../../../tuteurs/tutxmlpre.htm#pdtd"," $DTD ","bouton_fin vert_pastel nou") ;
00291 nbsp(5) ; echo href("../../../tuteurs/tutxmlpre.htm#schm"," $XSD ","bouton_fin vert_pastel nou") ;
00292 nbsp(5) ; echo href("../../../tuteurs/tutxmlpre.htm#xslt" ," $XSL ","bouton_fin vert_pastel nou") ;
00293 nbsp(5) ; echo href("http://en.wikipedia.org/wiki/XML-RPC"," $XMLRPC ","bouton_fin vert_pastel nou") ;
00294 nbsp(5) ; echo href("http://en.wikipedia.org/wiki/SOAP"," $SOAP ","bouton_fin vert_pastel nou") ;
00295 finp() ;
00296 finblockquote() ;
00297
00298
00299 p("texte") ;
00300 echo "A titre d'illustration sur l'utilisation de $XML en recherche (optimisation), on pourra cliquer sur les liens qui suivent :" ;
00301 finp() ;
00302
00303 table(0,20) ;
00304
00305 tr() ;
00306 td("C") ;
00307 $url1 = "https://pdfs.semanticscholar.org/8729/c4c399895cb5a3e8ff595f9585ec8e9db591.pdf" ;
00308 $img1 = "lpfml.png" ;
00309 echo href($url1,img($img1,"",400)) ;
00310 fintd() ;
00311 td() ; nbsp() ; fintd() ;
00312 td("C") ;
00313 $url2 = "http://users.iems.northwestern.edu/~4er/WRITINGS/OSiL.pdf" ;
00314 $img2 = "osil.png" ;
00315 echo href($url2,img($img2,"",400)) ;
00316 fintd() ;
00317 fintr() ;
00318
00319 tr() ;
00320 td("C") ;
00321 echo href($url1,b("LPFML")) ;
00322 fintd() ;
00323 td() ; nbsp() ; fintd() ;
00324 td("C") ;
00325 echo href($url2,b("OSIL")) ;
00326 fintd() ;
00327 fintr() ;
00328
00329 tr() ;
00330 td("C") ;
00331 $url3 = "http://www.optimizationservices.org/" ;
00332 $img3 = "optiservs.png" ;
00333 echo href($url3,img($img3,"",400)) ;
00334 fintd() ;
00335 td() ; nbsp() ; fintd() ;
00336 td("C") ;
00337 $url4 = "https://timetocode.wordpress.com/2016/07/22/graphs-and-trees-visualization-with-dgml/" ;
00338 $img4 = "dgml.png" ;
00339 echo href($url4,img($img4,"",400)) ;
00340 fintd() ;
00341 fintr() ;
00342
00343 tr() ;
00344 td("C") ;
00345 echo href($url3,b("OPTISERV")) ;
00346 fintd() ;
00347 td() ; nbsp() ; fintd() ;
00348 td("C") ;
00349 echo href($url4,b("DGML")) ;
00350 fintd() ;
00351 fintr() ;
00352
00353 fintable() ;
00354
00355 p("texte") ;
00356 echo "On pourra se convaincre du bien-fondé d'utiliser un schéma $XSD en consultant le fichier " ;
00357 echo href("validateur_xsd.txt","validateur.dtd") ;
00358 echo " renommé en " ;
00359 echo href("validateur_xsd.xml") ;
00360 echo " car on y trouve : des ".b("xs:ID")." et des ".b("xs:IDREFS").", " ;
00361 echo " des ".b("expressions régulières")." comme ".b("a[1-9][0-9]*( a[1-9][0-9]*)*")." pour garantir " ;
00362 echo " les contenus-textes." ;
00363 finp() ;
00364
00365 finblockquote() ;
00366
00367 ###################################################################
00368
00369 h2("2. Résultats, analyses et $R") ;
00370
00371 ###################################################################
00372
00373 blockquote() ;
00374
00375 p("texte") ;
00376 echo "Si un temps d'exécution de 13 secondes est mathématiquement différent d'une durée de 15 secondes, " ;
00377 echo " une durée de 13 secondes n'est pas forcément ".b("significativement différente")." d'une durée de 15 secondes. " ;
00378 echo " C'est pourquoi la théorie des ".href("https://fr.wikipedia.org/wiki/Test_(statistique)","tests statistiques d'hypothèse") ;
00379 echo " est le seul outil scientifique capable de ".b("valider")." des résultats. " ;
00380 echo " Le logiciel gratuit " ;
00381 echo $R ;
00382 echo " et son environnement (gratuit lui aussi) de développement " ;
00383 echo $Rstudio ;
00384 echo " fournissent un moyen propre et efficace de réaliser ces tests. " ;
00385 echo " Comme la science ne se définit pas par des croyances mais par des faits et des démarches reproductibles, " ;
00386 echo " nous discuterons de la notion de nombres pseudo-aléatoires et nous présenterons des moyens de réaliser " ;
00387 echo " des analyses rigoureuses. " ;
00388 echo " Si vous ne connaissez pas du tout $R, vous pouvez très rapidement profiter de nos présentations ultra-courtes " ;
00389 echo " de ".href("http://forge.info.univ-angers.fr/~gh/wstat/R15/","R et la bioinformatique") ;
00390 echo " et de ".href("http://forge.info.univ-angers.fr/~gh/wstat/R15/r5.php","R pour les biostatistiques").". " ;
00391 finp() ;
00392
00393 p("texte") ;
00394 echo "A titre d'exemple, voici des données, sauriez-vous dire quelles colonnes sont significativement différentes ?" ;
00395 finp() ;
00396
00397 pre_fichier("dataSignif_sor.txt","cadrebleu") ;
00398
00399 p("texte") ;
00400 echo " Voici le code $R pour générer de telles données et quelques exemples de réalisation " ;
00401 echo " avec les chiffres et les graphiques, ce qui aide un peu mais ne fournit ".b("aucune validation scientifique")." :" ;
00402 finp() ;
00403
00404 pre_fichier("signif.r","cadrejaune") ;
00405
00406 p("texte") ;
00407 echo "Ci-dessous, les graphiques et résultats numériques produits :" ;
00408 finp() ;
00409
00410 p() ;
00411 nbsp(15) ;
00412 $img = "signif1.png" ;
00413 echo href($img,img($img,"",300)) ;
00414 nbsp(5) ;
00415 $img = "signif2.png" ;
00416 echo href($img,img($img,"",300)) ;
00417 finp() ;
00418
00419 pre_fichier("signif_sor.txt","cadrebleu") ;
00420
00421 p("texte") ;
00422 echo "Si les statistiques réduisent souvent les tableaux des données à des résumés caractéristiques de " ;
00423 echo b("tendance centrale")." (médianes, moyennes, modes...) " ;
00424 echo " et de ".b("dispersion")." absolue ou relative (écart-types, IQR, coefficient de variation...), " ;
00425 echo " il ne faut jamais négliger les représentations graphiques comme le montre le fameux exemple du " ;
00426 echo href("https://en.wikipedia.org/wiki/Anscombe%27s_quartet","quartet") ;
00427 echo " d'".href("https://en.wikipedia.org/wiki/Frank_Anscombe","Anscombe")."." ;
00428 finp() ;
00429
00430 table(0,20) ;
00431 tr() ;
00432 td("C") ;
00433 $url5 = "https://stat.ethz.ch/R-manual/R-devel/library/datasets/html/anscombe.html" ;
00434 $img5 = "anscombe1.png" ;
00435 echo href($url5,img($img5,"",400)) ;
00436 fintd() ;
00437 td() ; nbsp() ; fintd() ;
00438 td("C") ;
00439 $url6 = "https://www.r-bloggers.com/using-and-abusing-data-visualization-anscombes-quartet-and-cheating-bonferroni/" ;
00440 $img6 = "anscombe2.png" ;
00441 echo href($url6,img($img6,"",400)) ;
00442 fintd() ;
00443 fintr() ;
00444 fintable() ;
00445
00446 p("texte") ;
00447 echo "Ainsi, pour nos données, des «boites à moustaches» ou " ;
00448 echo href("https://en.wikipedia.org/wiki/Box_plot","boxplots")." peuvent permettre de se douter " ;
00449 echo " que les données sont «assez proches» ou pas : " ;
00450 finp() ;
00451
00452 p() ;
00453 nbsp(15) ;
00454 $img = "bpsignif1.png" ;
00455 echo href($img,img($img,"",300)) ;
00456 nbsp(5) ;
00457 $img = "bpsignif2.png" ;
00458 echo href($img,img($img,"",300)) ;
00459 finp() ;
00460
00461 p("texte") ;
00462 echo "Même si au final un test statistique ne prouve jamais rien car il s'agit de " ;
00463 echo href("https://mistis.inrialpes.fr/software/SMEL/cours/ts/node2.html","modèle probabiliste réfutable").", il est d'usage " ;
00464 echo " de fournir des conclusions concernant des comparaisons de données, de moyennes, de distibutions... à l'aide de ces tests." ;
00465 echo " Une des difficultés de ces tests est qu'ils font appels à des conditions d'applications pas toujours bien comprises des " ;
00466 echo " utilisatrices et des utilisateurs. Ainsi le " ;
00467 echo href("https://en.wikipedia.org/wiki/Student%27s_t-test","test de Student") ;
00468 echo " (ou le ".href("https://en.wikipedia.org/wiki/Welch%27s_t-test","test de Welch") ;
00469 echo ", si les variances sont considérées comme inégales) " ;
00470 echo " ne doit pas s'appliquer, en principe à des petits échantillons, comme c'est le cas pour nos données. " ;
00471 echo " Des ".href("http://emerald.tufts.edu/~gdallal/paired.htm","données appariées")." comme des valeurs avant et " ;
00472 echo " après un traitement pour des mêmes patients, ou des résultats d'exécution " ;
00473 echo " pour des mêmes jeux de données requièrent des ".href("https://en.wikipedia.org/wiki/Paired_data","calculs spécifiques")."." ;
00474 finp() ;
00475
00476 p("texte") ;
00477 echo "Réaliser une analyse statistique demande des compétences en statistiques et en probabilités. Il est d'usage de commencer par les " ;
00478 echo href("https://fr.wikipedia.org/wiki/Statistique_descriptive","statistiques descriptives") ;
00479 echo " avant d'aborder les " ;
00480 echo href("http://www.unilim.fr/pages_perso/pierre.dusart/Probas/cours_stat_S4.pdf","statistiques inférentielles") ;
00481 echo " que ce soit au niveau des " ;
00482 echo href("http://www.biostat.envt.fr/spip/IMG/pdf/cours1.pdf","tests statistiques") ;
00483 echo " ou de la " ;
00484 echo href("https://www.math.univ-toulouse.fr/~besse/pub/modlin.pdf","modélisation statistique") ;
00485 echo " et de l'" ;
00486 echo href("https://samos.univ-paris1.fr/archives/membres/Bardet/CoursBesse.pdf","apprentissage statistique") ;
00487 echo " comme pour les modèles de régression linéaire, de régression logistique..." ;
00488 echo " S'il n'est pas essentiel de bien connaitre les " ;
00489 echo href("http://math.univ-lille1.fr/~suquet/ens/ICP/Cmd060902.pdf","probabilités").", " ;
00490 echo " les " ;
00491 echo href("https://lmb.univ-fcomte.fr/IMG/pdf/cours_stat_inf.pdf","estimateurs") ;
00492 echo " et la " ;
00493 echo href("http://www.math.univ-toulouse.fr/~rau/retro%20stat%20inf/poly%20stat%20inf.pdf","théorie de l'estimation").", " ;
00494 echo " il est en général conseillé de bien connaitres les «" ;
00495 sdl() ;
00496 echo href("https://www.math.u-bordeaux.fr/~pmagal100p/Licence%203%20SDV%202012/Cours%20chap%204.pdf","grands modèles probabilistes")."» classiques comme " ;
00497 echo " la ".href("https://www.maths-et-tiques.fr/telech/BinomialeGM.pdf","loi binomiale").", " ;
00498 echo " (".href("https://fr.wikipedia.org/wiki/Loi_binomiale","wiki")."), " ;
00499 sdl() ;
00500 echo " la ".href("https://en.wikipedia.org/wiki/Poisson_distribution","loi de Poisson")." (".href("https://fr.wikipedia.org/wiki/Loi_de_Poisson","wiki FR").") ou " ;
00501 echo " la ".href("https://en.wikipedia.org/wiki/Normal_distribution","loi normale")." (".href("https://fr.wikipedia.org/wiki/Loi_normale","wiki FR").") " ;
00502 echo " pour comprendre ce qui est modélisé et calculé car on passe souvent des " ;
00503 sdl() ;
00504 echo href("https://en.wikipedia.org/wiki/Sampling_(statistics)","échantillons") ;
00505 echo " aux " ;
00506 echo href("https://en.wikipedia.org/wiki/Sampling_distribution","populations sous-jacentes") ;
00507 echo " avec des hypothèses parfois difficiles à vérifier." ;
00508 finp() ;
00509
00510 p("texte") ;
00511 echo "Si vous voulez vraiment comprendre comment on modélise mathématiquement ce qui est aléatoire, voici quelques PDF " ;
00512 echo " qui peuvent vous servir de référence :" ;
00513 finp() ;
00514
00515 table(0,20) ;
00516 tr() ;
00517 td("C") ;
00518 $url10 = "http://www.math.uiuc.edu/~r-ash/BPT/BPT.pdf" ;
00519 $img10 = "bpt.png" ;
00520 echo href($url10,img($img10,"bpt",150)) ;
00521 fintd() ;
00522 td() ; nbsp(4) ; fintd() ;
00523 td("C") ;
00524 p() ;
00525 nbsp() ; br() ;
00526 $url11 = "https://services.math.duke.edu/~rtd/PTE/PTE4_1.pdf" ;
00527 $img11 = "ptae.png" ;
00528 echo href($url11,img($img11,"ptae",150)) ;
00529 finp() ;
00530 fintd() ;
00531 td() ; nbsp(4) ; fintd() ;
00532 td() ;
00533 p() ;
00534 $url12 = "http://www.med.mcgill.ca/epidemiology/hanley/bios601/GaussianModel/JaynesProbabilityTheory.pdf" ;
00535 $img12 = "jaynes.png" ;
00536 echo href($url12,img($img12,"jaynes",150)) ;
00537 finp() ;
00538 fintd() ;
00539 td() ; nbsp(4) ; fintd() ;
00540 td() ;
00541 p() ;
00542 $url13 = "http://www.math.harvard.edu/~knill/books/KnillProbability.pdf" ;
00543 $img13 = "knill.png" ;
00544 echo href($url13,img($img13,"knill",150)) ;
00545 finp() ;
00546 fintd() ;
00547 fintr() ;
00548 fintable() ;
00549
00550
00551 p("texte") ;
00552 echo "Le logiciel $R, par exemple utilisé via $Rstudio," ;
00553 echo " est un excellent logiciel pour réaliser des analyses statistiques, car ses " ;
00554 echo href("https://www.rdocumentation.org/trends/","centaines de milliers de fonctions") ;
00555 echo " implémentées dans des " ;
00556 echo href("https://cran.r-project.org/web/packages/index.html","milliers de 'packages' publics") ;
00557 echo " fournissent tous les outils de bases et de nombreux outils avancés. On consultera notamment la page ";
00558 echo href("https://cran.r-project.org/web/views/Optimization.html","Optimization") ;
00559 echo " qui présente les «packages» liés aux problèmes classiques d'optimisation (linéaires, quadratiques, convexes...) " ;
00560 echo " à leurs solveurs et ".em("benchmarks").". " ;
00561 echo " De plus le langage de programmation intégré à $R et sa " ;
00562 echo href("https://cran.r-project.org/other-docs.html","documentation multilingue") ;
00563 echo " permettent un apprentissage rapide et fournissent la possibilité de paramétrer et d'automatiser toutes les tâches à réaliser. " ;
00564 echo " Par exemple pour connaitre les fonctions dont le nom se termine par ".b("test")." il suffit d'écrire " ;
00565 echo b('apropos("test$")')." :" ;
00566 finp() ;
00567
00568 pre_fichier("tests.txt","cadrejaune") ;
00569
00570 p("texte") ;
00571 echo "Ainsi, il est simple de générer des " ;
00572 echo href("https://fr.wikipedia.org/wiki/G%C3%A9n%C3%A9rateur_de_nombres_pseudo-al%C3%A9atoires","nombres pseudo-aléatoires").", par " ;
00573 echo " exemple en $R avec des fonctions comme " ;
00574 echo hrrr("Uniform","stats","runif()").", " ;
00575 echo hrrr("Binomial","stats","rbinom()").", " ;
00576 echo hrrr("Poisson","stats","rpois()")." ou " ;
00577 echo hrrr("Normal","stats","rnorm()").". " ;
00578 echo "Encore faut-il savoir à quoi cela correspond..." ;
00579 finp() ;
00580
00581 pre_fichier("pseudoAleat.r","cadrebleu") ;
00582
00583 p() ;
00584 nbsp(15) ;
00585 $img = "violinplot.png" ;
00586 echo href($img,img($img,"",600)) ;
00587 finp() ;
00588
00589 p("texte") ;
00590 echo " Il est en revanche plus difficile de «faire propre» avec des générations reproductibles, " ;
00591 echo " laissant la possibilité à d'autres de vérifier nos calculs. " ;
00592 finp() ;
00593
00594 p("texte") ;
00595 echo "Il ne faut pas oublier non plus qu'une analyse scientifique doit être rigoureuse et suivre un protocole " ;
00596 echo " soigneusement défini. Ainsi, en recherche clinique, on ne compare pas un groupe d'hommes de 40 ans à un groupe de femmes " ;
00597 echo " de 60 ans car on ne saurait pas attribuer une différence au sexe ou à l'age (" ;
00598 echo href("http://medphar.univ-poitiers.fr/santepub/images/staff_2011/0525_BIAIS.pdf","biais de confusion")."). " ;
00599 echo " Les comparaisons de pourcentages peuvent aussi donner lieu à des impossibilités apparentes, comme le " ;
00600 echo href("https://fr.wikipedia.org/wiki/Paradoxe_de_Simpson","paradoxe de Simpson").". " ;
00601 echo " En informatique, se limiter à comparer des temps d'exécution sur une même machine ne prouve sans doute pas " ;
00602 echo " grand chose à cause de l'encombrement mémoire, des accès-disque, de la disponibilité des processeurs..." ;
00603 finp() ;
00604
00605 p("texte") ;
00606 echo "Les questions scientifiques et philosophiques de fond posées par la reproductibilité et la qualité d'une solution logicielle " ;
00607 echo " sont nombreuses. Pour des ".href("https://www.latex-project.org/","algorithmes déterministes")." une fois la preuve faite de la " ;
00608 echo " solution et de sa programmation, il est souvent possible d'écrire un programme de vérification à condition que son exécution soit " ;
00609 echo " réalisée en un temps «raisonnable»." ;
00610 echo " Un problème comme celui du " ;
00611 echo href("https://www.researchgate.net/publication/51948459_Computing_a_Longest_Common_Palindromic_Subsequence","plus grand palindrome commun") ;
00612 echo " à un ensemble de génomes bactériens par exemple, se révèle assez \"simple\" si on utilise " ;
00613 echo " une structure de données adaptée comme " ;
00614 echo " un ".href("https://en.wikipedia.org/wiki/Suffix_tree","arbre des suffixes") ;
00615 echo " ou la ".href("https://wcipeg.com/wiki/Longest_palindromic_subsequence","programmation dynamique").". " ;
00616 echo " Il n'en va pas de même pour les problèmes au-delà de la classe " ;
00617 echo href("https://en.wikipedia.org/wiki/List_of_NP-complete_problems","NP-complets").", " ;
00618 echo " par exemple pour les problèmes ".href("https://en.wikipedia.org/wiki/PSPACE","PSPACE").". " ;
00619 echo " Comment démontrer, par exemple, qu'on a bien trouvé une solution à un problème si la vérification de la solution " ;
00620 echo " est elle-même un problème PSPACE ?" ;
00621 finp() ;
00622
00623 p("texte") ;
00624 echo "Comme le montre l'exemple du code de C. GANDRUD pour son ".href("gandrud.pdf","livre").", " ;
00625 echo " il est possible de produire un ouvrage entier avec des analyses statistiques reproductibles " ;
00626 echo " même pour des données (fixes) lues sur Internet. " ;
00627 echo " Cela demande beaucoup de rigueur, d'organisation et quelques compétences techniques en " ;
00628 echo $R." dont " ;
00629 echo href("tests.txt","knitr")." et en " ;
00630 echo href("https://www.latex-project.org/","LaTeX").". " ;
00631 echo " Vous pouvez le vérifier en téléchargeant le code-source du livre sur le " ;
00632 echo href("https://github.com/christophergandrud/Rep-Res-Book","github de l'auteur").". " ;
00633 finp() ;
00634
00635 table(0,20) ;
00636 tr() ;
00637 td("C") ;
00638 $url7 = "https://stat.ethz.ch/R-manual/R-devel/library/datasets/html/anscombe.html" ;
00639 $img7 = "irr.jpg" ;
00640 echo href($url7,img($img7,"",200)) ;
00641 fintd() ;
00642 td() ; nbsp(4) ; fintd() ;
00643 td("C") ;
00644 p() ;
00645 nbsp() ; br() ;
00646 $url8 = "https://www.r-bloggers.com/using-and-abusing-data-visualization-anscombes-quartet-and-cheating-bonferroni/" ;
00647 $img8 = "rrrwost.jpg" ;
00648 echo href($url8,img($img8,"",250)) ;
00649 finp() ;
00650 fintd() ;
00651 td() ;
00652 p() ;
00653 $url9 = "https://www.crcpress.com/Reproducible-Research-with-R-and-R-Studio-Second-Edition/Gandrud/p/book/9781498715379" ;
00654 $img9 = "rrwr.jpg" ;
00655 $tit = "Reproducible Research with R and RStudio" ;
00656 $aut = "Christopher Gandrud" ;
00657 $edi = "CRC Press. Second Edition." ;
00658 echo href($url9,img($img9,"rrrr",250)) ;
00659 finp() ;
00660 fintd() ;
00661 fintr() ;
00662 fintable() ;
00663
00664
00665 p("texte") ;
00666 echo "Dans le même genre d'idées, le manuel des analyses statistiques de la base de données " ;
00667 echo href("http://forge.info.univ-angers.fr/~gh/Leadb/","LEADB")." disponible à l'adresse " ;
00668 echo href("http://forge.info.univ-angers.fr/~gh/Leadb/index.php?action=12&mode=0","statistical analysis") ;
00669 echo " comporte 1 716 pages (!) et est re-généré automatiquement par script lors de changements dans la " ;
00670 echo " base de données. A un niveau moindre, la page que vous lisez actuellement est générée par PHP sur le serveur " ;
00671 echo " mais vous pouvez consulter son code-source ".href("montresource.php?nomfic=stim2017.php","ici")." ce " ;
00672 echo " qui vous permet de la reproduire mais aussi de discuter de la qualité du code." ;
00673 finp() ;
00674
00675 finblockquote() ;
00676
00677 ###################################################################
00678
00679 finblockquote() ;
00680 finSection() ;
00681 finPage() ;
00682 exit() ;
00683 ?>
Pour ne pas voir les numéros de ligne, ajoutez &nl=non à la suite du nom du fichier.
Retour à la page principale de (gH)