Valid XHTML     Valid CSS2    

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&amp;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&amp;ie=UTF8&amp;qid=1496483444&amp;sr=1-6&amp;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&amp;ie=UTF8&amp;qid=1496483562&amp;sr=1-78&amp;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&amp;ie=UTF8&amp;qid=1496483613&amp;sr=1-109&amp;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&amp;qid=1496863416&amp;sr=8-9&amp;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&ucirc;r&nbsp;:" ;
00235     
finp() ;
00236     
00237     
p
("centre") ;
00238     echo
b
(em("Comment &laquo;bien&raquo; stocker ces données d'entrée et les résultats&nbsp;? ")) ;
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 --&nbsp;qui sont une solution standard à ce problème&nbsp;-- " ;
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 &laquo;g&acirc;che tout&raquo; 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&nbsp;: 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&nbsp;:" ;
00284     
finp() ;
00285     
00286     
blockquote() ;
00287     
p() ;
00288     
nbsp
(5) ; echo href("http://xml.coverpages.org/xmlApplications.html","&nbsp;$XML initiatives (2005)&nbsp;","bouton_fin vert_pastel nou") ;
00289     
nbsp
(5) ; echo href("../../../tuteurs/tutxmlpre.htm#gene","&nbsp;introduction à $XML&nbsp;","bouton_fin vert_pastel nou") ;
00290     
nbsp
(5) ; echo href("../../../tuteurs/tutxmlpre.htm#pdtd","&nbsp;$DTD&nbsp;","bouton_fin vert_pastel nou") ;
00291     
nbsp
(5) ; echo href("../../../tuteurs/tutxmlpre.htm#schm","&nbsp;$XSD&nbsp;","bouton_fin vert_pastel nou") ;
00292     
nbsp
(5) ; echo href("../../../tuteurs/tutxmlpre.htm#xslt" ,"&nbsp;$XSL&nbsp;","bouton_fin vert_pastel nou") ;
00293     
nbsp
(5) ; echo href("http://en.wikipedia.org/wiki/XML-RPC","&nbsp;$XMLRPC&nbsp;","bouton_fin vert_pastel nou") ;
00294     
nbsp
(5) ; echo href("http://en.wikipedia.org/wiki/SOAP","&nbsp;$SOAP&nbsp;","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&nbsp;:" ;
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&nbsp;: 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&nbsp;?" ;
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")."&nbsp;:" ;
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&nbsp;:" ;
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 &laquo;boites à moustaches&raquo; ou " ;
00448     echo
href
("https://en.wikipedia.org/wiki/Box_plot","boxplots")." peuvent permettre de se douter " ;
00449     echo
" que les données sont &laquo;assez proches&raquo; ou pas&nbsp;: " ;
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&ecirc;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&ecirc;mes patients, ou des résultats d'exécution " ;
00473     echo
" pour des m&ecirc;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 &laquo;" ;
00495     
sdl() ;
00496     echo
href
("https://www.math.u-bordeaux.fr/~pmagal100p/Licence%203%20SDV%202012/Cours%20chap%204.pdf","grands modèles probabilistes")."&raquo; 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&nbsp;:" ;
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 &laquo;packages&raquo; 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&acirc;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$")')."&nbsp;:" ;
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 &laquo;faire propre&raquo; 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 &ecirc;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&ecirc;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 &laquo;raisonnable&raquo;." ;
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&ecirc;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&ecirc;me un problème PSPACE&nbsp;?" ;
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&ecirc;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&ecirc;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&amp;mode=0","statistical analysis") ;
00669     echo
" comporte 1&nbsp;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 gH    Retour à la page principale de   (gH)