XD blog

blog page


2017-05-17 Les petits détails des ordinateurs portables

Je passe énormément de temps avec les ordinateurs et je réalise qu'un certain confort est indispensable si on ne veut pas devenir fou. Voici quelques détails auxquels je pense quand j'achète un portable.

2017-05-11 PyParis

PyParis est la déclinaison parisienne du cycle de conférence pydata. Le programme de cette année est plutôt alléchant. Outre les sujets scientidiques, j'y ai découvert une palanquée de modules que je ne connaissais pas.

camisole est un module (documentatino) qui implémente un service de compilation et exécution de code. Ceci peut se réveler assez pratique pour l'enseignement. La liste des langages supportés est plutôt longue. Une machine virtuelle est mise à disposition. Le module implémente uniquement une API REST. Au détour de la documentation, on voit le package isolate (C). Je vous laisse découvrir ce qu'il fait.

Un talk parlera de PDF. Je n'avais pas imaginer qu'on puisse parler de PDF pendant tout un talk. Mais a priori, c'est possible. Quelques moduless : weasyprint, pdftk, reportlab.

Je ne vais pas assez souvent les extensions Unofficial Jupyter Notebook Extensions. Sans doute parce que qu'elles ne marchent pas toujours. Néanmoins, parmi celles que j'ai déjà utilisées, il y a execute_time, hide_input, ScratchPad (pratique celle-ci). Parmi celles que j'ai envie d'essayer, il y a nbTranslate, Table of Contents (2) (même si je rêverais de l'inclure en javascript plutôt que sous forme d'extension), tree filter, Collapsible Headings qui s'exporte aussi en HTML jupyter nbconvert --to html_ch FILE.ipynb.

Côté machine learning, nous avons Surprise pour construire des systèmes de recommandation (documentation). FreeDiscovery automatise quelques opérations standard d'analyse des données. Il y a pas mal de choses au niveau texte : Python API Reference. Un article Extremal Bootstrapping à propos de Conformal Field Theory. pomegranate qui implémente des modèles bayésiens tels que les Hidden Markov Models (à comparer avec hmmlearn.

Enième workflow engine MRQ mais il a l'air assez simple. FluidDyn est une autre option qui incluent également des fonctionalités de calculs numériques. L'objectif est de réaliser des simulations numériques.

Parmi ceux que je n'utiliserai pas tout de suite PySpice qui encapsule SPICE, un langage pour des circuits électroniques. Un bloq boontadata pour lire à propos de différentes architectures de workflow de données en temps réel.

Enfin Ch'ti code ou comment parler de programmation dans les écoles primaires.

Maintenant, il va falloir que j'aille regarder si tout cela s'installe facilement.

2017-05-10 Un vieux livre remis à jour

En 2009, le support de mon cours sortait sous forme de livre Programmation avec le langage PYTHON. Quand j'y pense ça fait huit ans et j'utilisais Python 2.5. En informatique, huit ans ressemblent à une éternité. Aujourd'hui, j'ai repris le contenu, je l'ai converti au format HTML et j'utilise Python 3.6 : Apprendre la programmation avec Python. J'ai commencé à faire pareil avec ma thèse mais ça risque de prendre un peu plus de temps : Les maths d’abord, la programmation ensuite. Et tout est sur GitHub.

2017-04-26 dotAI

J'ai passé l'après-midi à la conférence dotAI. J'ai vu neuf présentations aux théâtres des variétés. Un lieu insolite pour ce genre d'événements. J'ai pris quelques notes que j'ai intégrées aux références du cours que je donne à l'ENSAE. C'est pourquoi vous les trouverez sous la forme d'un commit dotAI.

Le deep learning était la star de la conférence. La moitié des orateurs ont parlé de transfer learning. Je terminerai par deux librairies javascript reinforcejs et synaptic qui ne sont pas aussi puissantes que les outils disponibles en python mais plus vivants depuis une page web.

Bref, ce post est plus m'inciter à y retourner l'année prochaine que pour vous.

2017-04-07 Sherlock Holmes le détective des marginales

Même si je ne suis pas convaincu par la dernière saison, les premiers épisodes contiennent quelques séquences de déductions statistiques symbolisées par les incrustations à l'écran.

Le dessin animé Basil le détective livre aussi quelques séquences de réflexions intéressantes. Sherlock sait où on a le plus de chance de trouver un taxi à telle heure, le nombre de voyageurs problables dans telle zone de Londres, la durée de transport moyenne en fonction du traffic.

Sherlock se penche sur le corps d'une femme. Son manteau est mouillé et n'a pas eu le temps de sécher. La météo indique qu'il a plus au Sud de Londres il y a quelques heures. C'est comme si Sherlock faisait de la traingulation. Chaque indice réduit l'ensemble des possibilités à quelques unes. Plusieurs indices finissent par lui donner une image précise de la personne qu'il ausculte.

Pourquoi les lois marginales... Une personne regarde facebook tous les matins avant de partir au boulot. Si elle ne le fait pas un jour, c'est qu'il s'est peut-être passé quelque chose d'important le matin. Si on n'en sait pas plus, alors on utilise ce qu'on sait des gens en général, les lois marginales. Que les gens le matin ? Ils vont travailler. La personne en question a dû arriver en retard. On vérifie. C'est le cas. Lorsque Sherlock n'a pas assez d'indice, il fait des hypothèses en partant de que feraient les gens qui ressemblent au sujet de son enquête.

2017-03-13 Table ronde sur la numérisation de l'Etat

9 mars. J'assiste à une table ronde autour de la numérisation et la simplification de l'état. Ca bouge beaucoup et bien. Quelques pitchs qui commencent toujours par ce qui irrite et ce qui est proposé. Les ministères communiquent entre eux et le modèle choisi est simple et efficace. Tout le monde communique via des API. Les ministères ne travaillent pas sur un immense système communs mais mettent à disposition des autres leurs données via une API. C'est plutôt futé. Chaque entité gère ses données et contrôle son accès. Les équipes fonctionnent en startup, pitch, font des prototypes en trois mois, on teste avec des cobayes, et passent à l'industrialisation si c'est convainquant. La loi a aussi changé, les échanges de données entre ministères sont gratuits, et un citoyen n'est plus obligé de renseigner ses informations plusieurs fois à partir du moment où ses données sont déjà détenues par un ministère. Il est en quelque sorte très démocratique puisque chaque service échange ce qu'il veut avec qui il veut. Il l'est aussi car l'état ne force pas la numérisation mais donne les moyens d'y parvenir. Regardez FranceConnect, DataAsso, Palyma, Miquado Idée, Alicem, Liquid immat, ApiCarto. Le tout est chapeauté par SGMAT.

On parle d'agilité. Il faut beaucoup de temps pour former quelqu'un à être agile.


more...

2017-02-25 Système de votes

Quelques articles intéressantes sur des systèmes de votes infalsifiables : Theoretical online voting system, Survey of Fully Verifiable Voting Cryptoschemes.

2017-02-24 Open Data

J'ai imaginé des énigmes algorithmiques ou de données. Rien de tel pour apprendre qu'un mystère. Je cherchais à reproduire ce que j'avais fait avec les données vélib sur Paris (Busy areas in Paris) mais pour une ville américaine. J'ai finalement opté pour Chicago car le site open data City Of Chicago est juste incroyable. Par comparaison, (Open Data Paris propose 204 jeux de données, Chicago 1097 et le site est plus simple d'utilisation. On ne trouve rien à Paris lorsqu'on cherche velib ou vélo et on trouve beaucoup de données lorsqu'on cherche bike à Chicago. A quand un seul point d'entrée pour tous les jeux de données ? Bref, l'énigme est accessible : City Bike. Il s'agit de trouver les zones habitées et les zones où l'on trouve une majorité de sociétés. L'énigme se termine par une question : que font les habitants de Chicago après le boulot ?

2017-02-16 Pourquoi je n'aime pas l'informatique

Ca c'est tout ce qui pète en ce moment. J'utilise Jenkins pour vérifier tous les notebooks que j'utilise pour mes enseignements. Un site web a décidé de rendre l'âme et boom deux ronds rouges. Et bim Python 3.6 est sorti. Et plein de rouge à nouveau.

Fais chier !

J'en suis à plus de 150 notebooks et ça prend cinq à six heures de tout tester.

Les ronds rouges, ça fait chier.

2017-02-12 Corrélation de variables catégorielles

Parmi toutes les questions, ce n'est pas l'une de celle qu'on m'a posée cette année et pourtant j'ai vu beaucoup de corrélations entre variables catégorielles. C'est très difficile d'en tirer quoi que ce soit. Au lieu d'essayer de répondre à cette question, je me suis dit qu'il serait sans doute plus amusant d'essayer de traficoter une corrélation entre catégorie qui ait plus de sens. Je me suis dirigé alors vers l'idée d'une corrélation non linéaire et puis sur le fait que si deux variables sont liées alors peut-être qu'on peut prédire l'une à partir de l'autre... Bref, si vous êtes curieux, la suite est là : Corrélations non linéaires.

2017-02-04 Loin des élections, Entrepreneur d'intérêt général, Algorithmes et transparence

J'avais beaucoup d'idées en commençant cet article et j'ai finalement opté pour la rédaction de sa diagonale. Je reviens sur le très cours article écrit sur le projet Entrepreneurs d'Intérêt Général auquel j'ai participé. La liste des lauréats a maintenant été publiée Découvrez la 1e promotion des Entrepreneurs d’intérêt général ! (voir aussi Les lauréats désignés et le dossier de presse). On y retrouve 10 candidats aux profils très variés dont deux que j'avais déjà croisés au cours de mes voyages professoriques. Marion Paclot qui a été élève à l'ENSAE et Frédéric Bardolle qui est le CTO de Data For Good. Pour la petite histoire, Data For Good est l'association qui m'a mis en contact avec la Croix-Rouge grâce à laquelle nous avons pu oragniser le premier hackathon de l'ENSAE. Au delà du fait que cette initiative me paraît très positive, j'ai découvert des personnes qui ont réussi à partager leur plaisir de travailler pour l'Etat. J'ai beaucoup apprécié faire partie du projet en tant que jury.

Depuis ce point de départ, je déroule la pelote des hyperliens et, loin des élections, je découvre l'image d'une administration qui bouge. C'est du moins l'image que j'en ai via Le portail de la modernisation de l'action publique et pour en avoir eu un aperçu de l'intérieur, je suis plutôt confiant que ces projets comme Les services publics se simplifient et innovent sont l'expression d'une réforme ou plutôt d'un mouvement continu de réforme qui dépasse les débats politiques. L'Etat met aussi à disposition des outils qui permettent d'en suivre l'avancement : Tableau de bord des services des services publics numériques - Edition 2016, liste des projets en cours. Les fonctionnaires ne sont pas les seuls à exprimer leurs envies pour l'Etat. Ce dernier organise des hackathons comme celui-ci Design à la BNF : 20 nouveaux services imaginés par les étudiants de l'ENSCI, une façon comme une autre de recueillir des idées imaginées par ceux qui en bénéficieront plus tard.


more...

2017-01-24 Python is better than Perl

Blindspot season 1, episode 6, from Anyone here a fan of "Blindspot"? They had a perl/python smackdown in the last episode.

You might agree or disagree. The fact is that's first time I heard Python in a TV show.

2017-01-09 Les journaux sont sur GitHub

Petit voyage sur GitHub : Los Angeles Time/datadesk, NYTimes, Le Monde, Libération. Je n'ai pas trouvé de GitHub pour Le Figaro. On ne voit que la partie visible mais dans l'ensemble, il y a surtout du javascript et peu de python. Les journaux américains paraissent plus avancés que les journaux français. Le site la BBC proposent un package Python clever-thumbnailer capable d'extraire un échantillon d'une musique ou d'un extrait sonore.

2017-01-08 La chevauchée informatique de 100 notebooks

Articule publié dans Variances 18/01/2017.

Je coordonne et j'anime environ 60 heures de cours et travaux pratiques à l'ENSAE chaque année depuis trois ans et la création de la voix datascience. Si vous allez sur mon site, vous découvrirez que la plupart de ces heures s'appuient sur des exercices écrits sous formes de notebooks et qu'une bonne partie fonctionne par paire, un énoncé, une correction, d'autres contiennent la correction des examens, d'autres répondent à des questions d'étudiants, d'autres... Le notebook est apparu il y a une dizaine d'années et est récemment devenu populaire sous le nom Jupyter. Un notebook Jupyter est un endroit où on écrit du texte, des formules, du code et où on garde la trace des graphiques et des sorties que ces petits bouts de code ont produits. C'est même un lieu où on peut insérer une carte interactive pour zoomer ou dézoomer à volonté. C'est un outil qui a rapidement trouvé son public. Rares sont les professeurs de mathématiques ou d'informatiques qui n'ont pas de notebooks d'autant plus que les étudiants peuvent les télécharger, les exécuter, que tout le monde peut aisément les convertir en PDF, html ou présentations. Essayez, allez sur un moteur de recherche, écrivez le nom d'un professeur, d'une université suivi de notebook et github... (berkely notebook github) C'est un sacré chemin parcouru depuis les polycopiés qui sentaient l'alcool. Ce sont les premières reproduction de support pédagogique qu'il m'ait été donné de découvrir. Cela vous donne d'ailleurs une idée de mon âge. J'ai découvert l'école, j'ai vécu la transition du polycopié vers la photocopie. Un pas fou ! Et depuis je mets en ligne tout ce que je produis pour mes cours, plus d'une centaine de notebooks. Tout est accessible depuis GitHub, le lieu des projets open source, tout est compilé en plusieurs sites web.


more...

2017-01-01 Suite du hackathon

Un hackathon, une nuit blanche, des doutes. Ai-je assez travaillé sur les données ? Sont-elles assez propres ? Si la mauvaise qualité des données suscite l'imaganitation, j'ai eu quelques doutes à une heure avancée de la nuit, vers 4h du heures du matin, au moment où la fatigue vient à bout du plus tenace des étudiants. Je crois que je n'ai jamais vu autant de gens aussi motivés rassemblés au même endroit. Il y avait même une liste d'attente.

Comme l'année dernière, deux challenges, créatif et compétitif. Le premier était proposé par la Croix-Rouge qui proposait de se plonger dans la vie des bénévoles. Plus de 80.000 d'entre eux participent à l'action de la Croix-Rouge, tous de manière différente, qu'est-ce qui les motive ? Un groupe a remarqué qu'il y a avait quelques âges creux qui correspondait avec la venue du premier enfant. Les données proposées aux étudiants étaient plus complètes que celles disponibles sur data.gouv.fr.

Le second challenge, compétitif, proposait de prédire le caractère urgent d'un dossier de surendettement proposé par Crésus. De cette façon, il serait envisageable de passer plus de temps sur les dossiers considérés comme urgent. Les gagnants de ce challenge ont favorisé la qualité de la prédiction même si celle-ci était précise une part réduire des dossiers.

Vers 8h du matin samedi, les croissants ont été dévorés en 20 minutes. Refill. 10h du soir vendredi, sandwitch grecs. Les données, ça creuse. 4h. 4 chaises, c'est assez confortable, plus qu'une chaise.

à suivre


-->

Xavier Dupré