XD blog

blog page

2013-08


2013-08-31 Comment travaille un chercheur ?

Pendant les vacances, j'ai lu le livre de Cédric Villani Théorème vivant (Poche) (ou le même chez Grasset). Il y raconte la naissance du théorème qui l'a conduit jusqu'à la médaille Fields. J'aurais pu dire démonstration mais le dernier énoncé est sensiblement différent de la première intuition. Cette recherche est plus une sorte de voyage de plusieurs années dans différents continents des mathématiques et le récit de nombreuses rencontres.

Au delà du fait que le livre est bien écrit et se lit facilement, il fait découvrir ce qu'est le métier de chercheur. C'est aussi un univers qui a ses héros ou ses idoles, et comme tout musicien, ils ont leur domaine de prédilection, des parties des mathématiques avec lesquelles ils jouent plus facilement que d'autres. C'est aussi un métier créatif. Je recommande la lecture du livre à tous ceux qui croient que les mathématiques ne sont qu'une longue série d'exercices à maîtriser.

Il y a peu de chercheurs au sens strict du terme. Cela dit, les métiers sont de moins en moins répétitifs laissant place à une partie créative. On est tous un peu chercheur finalement. Le mot recherche évoque aussi l'échec, on cherche, on cherche mais quand est-ce qu'on trouve ? C'est certes un peu angoissant de se dire qu'il est possible de perdre des journée à essayer de résoudre un problème et de découvrir une semaine plus tard que la solution était devant vos yeux depuis le début voire qu'elle n'y sera jamais. Le livre de Villani raconte une une épopée à succès mais parsemés de chemins explorés puis abandonnés. Chaque échec est pourtant l'occasion de comprendre un peu mieux le problème. Ils nous rapprochent de la solution. Et quel plaisir de partir sur une intuition "je suis sûr que dans cette direction, la solution existe" et d'arriver au bout.

La recherche n'est pas toujours aussi abstraite, il faut voir cette vidéo proposée par L'Institut Henri Poincaré : Modèles en jouet - Tadashi Tokieda. Les sciences sont aussi ludiques que la musique. Et on n'a pas besoin d'être un génie pour en faire (voir le film Bienvenue à Gattaca).

Un des premières vidéos qui m'a enchantée est Le cirque de Calder (partie 2, version longue). Il y a un peu de physique derrière cette marionnette acrobate qui ne rate jamais les anneaux.

2013-08-18 Manger des sandwitchs à Paris

Les émissions culinaires font de plus en plus envie : La PIZZA. On tombe sur des adresses comme ça : Chez Aline rue de la Roquette à Paris où on a soudainement envie de sandwitch.

Un jour, j'aimerais bien construire une carte de bons restaurants qui quadrille Paris. D'autres adresses : Pierre Sang in Oberkampf, Chez Mamane, Le camion qui fume, Le pantruche, Cantine California, Le Grand Pan.

2013-08-15 L'économie, à quoi ça sert ?

C'est l'histoire que j'aurais voulu entendre avant de commencer mes cours d'économie à l'ENSAE. Elle est tirée du livre Pourquoi les crises reviennent toujours ? de Paul Krugman dont je recommande la lecture. Il est bien écrit et très clair. L'histoire de la coopérative de baby-sitting du Capital Hill (en) sert d'exemple illustratif tout au long du livre. L'économie prend un tout autre sens qu'une liste de modèle macro/micro économiques. Je reprends ici les différents passages du livre qui ont trait à ce petit univers fort passionnant du Capitol Hill. Les derniers paragraphes relatifs à la dépréciation du coupon d'hiver sont fictifs mais ils permettent à l'auteur de transposer la récession économique du Japon des années 1990 dans ce microcosme.

Pendant les années 1970, les Sweeney étaient membres d'une coopérative de baby-sitting : une association constitutée de jeunes couples, travaillant presque tous au Congrès, qui désiraient prendre en charge mutuellement la garde de leurs enfants. Cette coopérative d'un genre particulier avait une taille peu commune, près de cent cinquante couples ; c'est dire le nombre de baby-sitters potentiels, mais aussi la difficulté d'exploitation d'une telle structure - il faut assurer en particulier que chaque couple s'acquitte de sa quote-part.

A l'instar de nombreuses institutions de ce genre (et d'autres formes de troc), la coopérative de Capitol Hill résolut le problème en émettant ses propres titres : des coupons donnant droit au porteur à des heures de baby-sitting. Lorsqu'ils gardaient des bébés, les baby-sitters recevaient un nombre de coupons correspondant au nombre d'enfants. Le système était conçu pour empêcher le resquillage : il assurait automatiquement que chaque couple, en fin de compte, fournirait autant d'heures de baby-sitting qu'il en aurait lui-même utilisé.

Mais ce n'était pas si simple, un tel système requiert la circulation d'une quantité considérable de bons. Les couples disposant de plusieurs soirées libres d'affilée, et sans projet immédiat de sortie, allaient essayer de se constituer des réserves pour les utiliser ultérieurement ; cette accumulation se ferait aux dépens des réserves des autres couples, mais il était probable que chaque couple chercherait à détenir suffisamment de coupons pour sortir plusieurs fois entre les épisodes de baby-sitting qu'il assurerait. L'émission de coupons dans la coopérative de Capitol Hill était compliquée : les couples recevaient des coupons lorsqu'ils adhéraient, ils étaient censés les rembourser lorsqu'ils la quittaient ; mais ces coupons leur servaient également à payer des cotisations pour rémunérer les administrateurs, etc. Les détails ne sont pas importants ; le fait est est qu'il arriva un moment où il y eut trop peu de coupons en circulation - trop peu pour couvrir les besoins de la coopérative.

Le résultat fut surprenant. Les couples qui jugeaient leur réserve de coupons insuffisante se montrèrent plus désireux de faire du baby-sitting et réticents pour sortir. Mais il fallait qu'un couple décide de sortir pour qu'un autre couple puisse faire du baby-sitting. Dans ces conditions, les occasions d'en faire devinrent rares, ce qui rendit les couples encore plus hésitants à utiliser leur réserve, sauf pour des occasions exceptionnelles, attitude qui contribua à raréfier encore davantage les occasions de faire du baby-sitting...

Bref, la coopérative était entrée en récession.


more...

2013-08-14 A propos du titre de certains articles dans la presse

Je ne suis pas sûr que le titre de l'article La lettre de Valls à Hollande qui torpille la réforme Taubira paru dans Le Monde du 13 août soit bien choisi. Il parle d'une lettre d'un ministre à un autre concernant un projet de loi en cours. Le projet est en cours de rédaction et non pas dans sa version définitive. Torpiller un projet en cours d'élaboration me paraît plus être un titre pour arrêter le lecteur qu'un fait avéré. Le projet final sera probablement le résultat de ces échanges. Le moyen de communication choisi est-il la preuve d'un désaccord irréconciliable ? Difficile à dire sans savoir comment ces deux ministres ont l'habitude de communiquer. Personnellement, j'aurais préféré un avis sur les chiffres exposés, leur interprétation et les mesures déduites de ces interprétations. Les deux lettres sont précises mais font aussi référence à des échanges passés. Parfois, une bonne engueulade permet d'avancer plus vite. Pour en revenir aux chiffres, le livre L'industrie de la punition, prison et politique pénale en Occident (Nils Christie) permettrait sans doute de considérer ces chiffres avec un peu plus de recul. On n'est plus prompt à émettre un avis sur deux personnes discutant un sujet technique que d'émettre un avis sur le sujet technique en question.

Voici un autre article dont le titre est la conclusion : In Recessions, Women Seek to Become More Attractive. Tout ça parce qu'on achète plus de ouge à lèvre en temps de crise.

Un autre article mais cette fois-ci, le titre est décrit le fait de départ : Big data : vos données en vente. La conclusion reste prudente quant aux possibles conséquentes de cette pratique. Disons que l'anonymat dans les données n'est pas une notion figée. Un peu comme les algorithmes de cryptage / décryptage, elle est en constante évolution. Ce qui est anonyme aujourd'hui ne le sera probablement plus demain parce qu'on disposera de méthodes statistiques puissantes pour inférer des données personnelles à partir de données agrégées mais aussi parce qu'on sera en mesure de croiser des bases de données anonymisées beaucoup plus facilement.

Pour faire écho à ce qui précède, vous regarderez d'un autre oeil les pouelles à Londres : Londres : des poubelles capables de collecter des données. Et pour finir, collecter des données sera bientôt aussi facile que de poser un autocollant. Plus besoin d'énergie, de câbles... Devices Connect with Borrowed TV Signals, and Need No Power Source

Bientôt peut-être, le passeport le plus envié sera celui que deux enfants obtiennent à la fin de la bande dessinée Beatifica Blues (Griffo) sur lequel on peut lire : I Don't Exist.

2013-08-13 Add your module to pipy

The purpose is to upload your own module to pipy and be able to install using:

pip install module_name

First you must have a login. You can do that by clicking on register on pipy. Then type:

c:\python33\python setup.py sdist register upload
If you add any classifiers, they must be in the following list. Last detail, you are being asked to save your credentials, say yes, otherwise it fails.

2013-08-12 Exceptions in Python

when raising an exception, we might be tempted by using the type Exception. But this type also gives information on the error. Python has a list of standard exceptions with a meaningful name: standard exceptions. They should be used.

2013-08-11 pyensae

Exchanging code with students through emails is easy but after a couple of years, looking into my database of emails became difficult. Plus, it is difficult to maintain pieces of code inside emails.

pyensae is the module I will use from now on to exchange code for my teachings. So far, it only contains a function to download materials I put on my website. It should grow over the next years. The module can be obtained:

Having students contributing will be another story. Let's see after a year.

2013-08-10 Machine Learning with Python

Here is the list of modules you should install:

All modules can be installed from Unofficial Windows Binaries for Python Extension Packages except IPython which should be installed with pip (+ setuptools) because it has may dependencies (see installation guidelines) to get a command line windows with colors and copy/paste functionalities. IPython is very interesting for auto-completion. Press TAB and you will get a list of possible options.

Some others modules can be useful:

2013-08-04 Quelques restaurants à Paris, Londres

J'ai découvert le restaurant AuxArtistes dans le XVième. C'est une brasserie sympapthique où il faut inscrire sa commande soi-même sur une feuille de papier que le serveur reprend. Elle était complète le soir où nous y étions. Et comme je n'ai pas souvent l'occasion de manger du boudin noir aux pommes, c'est ce que j'ai choisi et je n'ai pas été déçu. Les frites sont fraîches : un délice.

Je ne sais pas si c'est une mode mais on trouve régulièrement des articles dans la presse sur des restaurants culinaires à Paris dans d'autres capitales d'Europe. Le dernier sur le site du Monde L'Abri à Paris, parmi les meilleurs nouveaux restaurants du monde fait l'éloge de quelques-uns d'entre eux. Dorénavant, le cuisinier n'est plus seulement un bon artisan mais aussi un créateur. On insiste davantage sur la personnalité du chef, sa cuisine fruit de ses expériences et de sa propre recherche qui arrive à maturation. La cuisine n'est pas seulement une affaire de livres ou de recettes.

Les suggestions viennent de ce site Condé Nast Traveler. Le restaurant Abri donne tout de suite envie d'essayer. On sait d'avance qu'on va déguster quelques chose qu'on n'a jamais vu auparavant. Le second restaurant est Bones (voir aussi ici). Apparemment, le chef est passé par celui-ci Spring. Je suis repassé par Sémilla qui reste toujours très bon mais la carte des plats ne changent pas beaucoup.

A Londres, quelques bonnes adresses aussi : Bones Daddies qui fait aussi très envie. La cuisine est aux frontières de plusieurs cultures (et donne envie). Il y a aussi BubbleDogs qui intrigue. Le site web est sympapthique et la présentation de l'équipe donne une touche personnelle qui invite à découvrir une cuisine et leurs auteurs. Enfin, Cevicheuk qui séduit, peut-être parce que c'est une cuisine d'un pays très lointain.

Pour finir, un point de vue sur la complexité française : Moi, ex-ingénieur, libraire entrepreneur.

2013-08-03 La paperasserie administrative

Kate Middleton portait une robe d'une créatrice française d'après cet article La styliste française Séraphine vend ses robes tous azimuts grâce à Kate. Passé l'anecdote l'article retranscrit les propos de la créatrice à propos d'un sujet connexe : "Je travaille aujourd'hui avec cinquante employés, mais je ne sais pas si j'aurais eu le courage d'en avoir autant en France (...) côté administratif : le rapport entre les papiers que je dois remplir pour John Lewis/Peter Jones et les Galeries Lafayette est de un à dix."

Les chiffres simples raisonnent toujours plus longtemps. La France est dix fois plus administrative que le Royaume-Uni. On savait qu'elle l'était plus mais de là à l'être dix fois plus, je me demande ce que cela représente.

On nous promet ou on nous a promis de simplifier tout ça. Simplifier comment... Lorsque la complexité s'installe de manière durable, on s'en accomode et on crée des raccourcis. L'un des moyens et d'écrire des logiciels qui vous précisent ces démarches et leurs coûts associés. Simplifier voudrait dire réécrire ces logiciels... Pas si simple. Les grosses entreprises devraient investir du temps et de l'argent pour cette migration. L'Etat français aussi. On ne passe pas d'un système complexe mais en quelque sorte digéré à un système plus simple mais pour lequel il faut tout adapter. Et puis tout système complexe a ses conseillers qui en ont optimisé l'utilisation, qui en ont cherché les failles. Il a ses avantages aussi.

Toutefois, il apparaît que le temps d'apprentissage nécessaire pour appréhender les règles administratives nécessaires à la création d'une compagnie est plus court en Angleterre qu'en France. Ce savoir complexe est peut-être une barrière à l'entrée, peut être aussi une source d'inégalité entre ceux qui savent et ceux qui doivent apprendre.

Maintenant, comment fait-on pour simplifier si telle est la direction souhaitée ? Comment remplacer le moteur d'un bateau en marche ? A moins d'en créer un en parallèle pendant que l'autre tourne encore... Il faudra former de nombreuses personnes sur le nouveau système (il y a avait environ 18 400 experts comptables en France en 2007).

Ou alors, on garde le sytème actuel qu'on considère un peu comme une boîte noire et on crée des chemins balisés pour les usages les plus fréquents comme par exemple : guide création. On crée des pages Facebook pour la plupart des organismes administratifs, des flux RSS pour informer les gens (et sans doute pour les connaître aussi). Une fois les usages changés, on changera peut-être la boîte noire en boîte claire.

2013-08-01 Datamining avec R ou Python

Il est devenu assez facile de travailler avec R. Même si je trouve toujours le langage compliqué, il faut avouer que des outils comme RStudio rendent l'outil indispensable et de moins en moins difficile d'accès. On peut importer ses données depuis une grande variété de format, créer des rapports en utilisant knitr ou encore créer une application web avec shiny. Il existe un package pour presque tout comme pour faire des tests unitaires avec RUnit.

J'ai pour habitude de faire le plus de choses possibles en Python, de passer au C++ quand c'est vraiment nécessaire et d'utiliser R pour tout ce qui statistiques. R a l'avantage d'avoir une modèle suivi par tous les packages alors que les modules Python suivent leur propre logique le plus souvent.

Un exemple sur les méthodes à noyau : sous R, il faudrait utiliser le package kernlab, sous Python, on se dirigerait vers scikit-learn. Les packages sous Python sont souvent plus gros car les auteurs auront voulu intégrer de nombreux algorithmes selon la même logique. Sous R, chaque package a un périmètre plus réduit et suit les mêmes conventions. Comme Python s'interface avec à peu près tout y compris R, je préfère ce langage dont la syntaxe me paraît plus facile même si je n'hésite pas à repasser à R dès qu'il le faut.

C++

Les deux langages permettent d'inclure des morceau de C++ si nécessaire. Python dispose de diverses façons~: Cython, Boost.Python, ou cffi. Avec R, il y a Rcpp (tutoriel sur Rcpp, il faut aussi installer devtools). Est-ce que le langage C va disparaître ? Pour le moment, si les langages de scripts sont beaucoup plus utilisés, les compilateurs sont la plupart du temps écrits en C++. De nombreuses extensions ont été écrites en C++ (voir Eigen par exemple). Ce langage est souvent un choix raisonnable lorsqu'on veut écrire du code très rapide.

Graphiques

L'outil qui prend un peu plus d'importance ces temps-ci est d3.js car il permet de réaliser des graphiques facilement intégrables sur un site web, un journal en ligne, qu'il permet de faire plus facilement des animations et surtout, comme il est écrit en javascript, il permet de créer des graphes qui réagissent à la souris ou au clavier. Je n'arrive pas encore à trouver un module qui le rende facilement utilisable depuis Python. L'article Method: Data visualization with D3.js and python - part 1 décrit comment s'y prendre sans toutefois citer de module dédié à cet usage. Ca ne devrait pas tarder. Sous R, sans être javascript, il existe ggplot2 qui propose des graphes assez jolis.

Big Data

Enfin, dans le domaine des Big Data, les solutions lourdes type Map/Reduce Hadoop sont de plus en plus fréquentes lorsqu'on traite des données qui arrivent en continu (internet, téléphone, consommation d'énergie...). Pour le reste, un ordinateur portable avec quelques giga octets de mémoire et un disque dur conséquent suffit. Des outils existent pour ne pas avoir à charger une base complète en mémoire. C'est le cas de ff et ffbase (ou ça bigvis) sous R. Sous Python, l'environnement de travail le plus approprié est IPython. Pour manipuler les données, on trouve pandas ou PyTables.


Xavier Dupré