J’attendais depuis quelques temps déjà le nouveau moteur de recommandation de Babelio, que Pierre Frémaux (co-fondateur du réseau) avait annoncé au Labo de l’édition (lors de la conférence sur la “lecture sociale”). Plusieurs solutions existent aujourd’hui pour recommander des livres, qu’il s’agisse, par exemple, de maximiser les prédictions (chemins par lesquels passent la majorité des utilisateurs) comme sur GoodReads, d’analyser le contenu d’un texte (Book Genome Project, Small Demons) ou de sonder l’historique d’achat de clients ayant acheté la même chose que vous (Amazon). Une autre piste, développée par Last.fm dans le domaine de la musique et explorée dernièrement par JellyBooks, consiste à apprendre de vos comportements de sélection et de partage de titres.

Chaque voie repose bien évidemment sur des stratégies économiques et des positionnements sur la lecture différents. JellyBooks, par exemple, est arrivé à un moment où le “dépouillement” (le texte, rien que le texte) a été érigé en valeur, inscrite dans des dispositifs graphiques où le blanc est devenu omniprésent (d’où Clearly, d’où Read it Later) comme marque d’une dépollution de l’habillage discursif (publicités, images et articles voisins, etc.) quand il s’agissait toujours d’une (autre) énonciation (ce n’est pas parce que c’est plein de blanc que c’est vide d’intentions). Par ailleurs, comme l’utilisateur est poussé à faire des “coups” (promesse d’achat groupé pour obtenir des réductions), il est moins dans la constitution patiente d’une bibliothèque que dans un prochain livre à acquérir. Conséquence : on ne lui propose pas de les noter, de les critiquer bref, de les charger d’un paratexte (jugé de toute manière intrusif) parce que sa revente à des partenaires n’est pas déterminant dans le modèle envisagé. À l’inverse, des réseaux de lecteurs comme Babelio ont tout intérêt à développer ce genre de fonctionnalités parce que l’accroissement de la bibliothèque des utilisateurs est la condition de la production de données revendues à des partenaires (bibliothèques) ou promises à un éditeur comme moyen d’accroître son influence et son audience (ce sont les critiques, avec le programme Masse Critique). Sans système de recommandation, par conséquent (que l’on doit comprendre, encore une fois, comme l’un des moyens de captiver – fixer l’attention et capturer – l’utilisateur dans la circularité du réseau-rets) pas d’expansion de la bibliothèque et sans expansion, moins de données.

[On aurait cependant tort (comme je le fais ;) ) de n'y voir que des panoptiques  C'est une chose, en effet, de constater la manière dont un dispositif est construit, c'en est une autre de prouver qu'il vous rend bien captif. Au contraire, me semble-t-il, un utilisateur se positionne toujours face à un dispositif, fait avec, échappe en grande partie à ce qu'on veut lui faire faire : bref, il est rarement naïf (ou plutôt : ses gestes de lecture, d'écriture, de manipulation, s'inscrivent dans une série d'opérations et de stratégies qu'on ne peut pas fixer très longtemps et tout le temps - personne n'a jamais les yeux rivés sur une seule interface ou sur un seul support). Par exemple : si j'utilise bien les systèmes de recommandation de livres d'Amazon ou de LibraryThing (c'est l'un des plus performants), ce n'est pas pour autant que j'achète des livres ou que je les rajoute dans ma bibliothèque. J'ai plutôt tendance à trouver une référence sur l'un des deux et à l'ajouter dans mon outil de gestion bibliographique (Zotero ou Mendeley). Mais je n'intéresse ni Amazon ni LibraryThing et mon braconnage ne met donc pas en péril leur mécanique. :-]

Au test, le moteur de recommandations de Babelio est plutôt convaincant (“mon accueil” puis “recommandations”). Et pour cause : c’est un moteur à facettes (dixit Pierre par mail) qui additionne les solutions décrites plus haut. J’ai ainsi accès à un filtrage statistique (chemins par lesquels passent un individu et par lesquels vous seriez susceptibles de passer – ce sont les noeuds du réseau), appréciatif (notes, avis, etc.), thématique (grâce aux tags des utilisateurs, ex : “roman”, “poésie”, “XIXème siècle”, etc.) voire sémantique (là, je n’ai pas trop saisi – une analyse à la Book Genome Project ? – Pierre donnera peut-être des précisions en commentaire même si je crois qu’il s’agit d’une analyse du paratexte : critiques, citations, etc.). Mais sont surtout les actions exigées de l’utilisateur qui réduisent les marges d’erreur. On peut en effet ajouter des livres dans une bibliothèque pour des tas de raisons qui fragilisent la recommandation des suivants, c’est-à-dire la compréhension des affinités d’un lecteur. La “part contingente” (celle qui fait, par exemple, que j’ai ajouté un livre parce qu’un proche, qui passait juste derrière mon écran, m’a demandé de lui sauvegarder une référence que je consultais sur Babelio – comment dès lors croire que cet ajout détermine une préférence ?), est un défi posé à ce genre de sites chargés de la réduire et de la convertir. Aussi dois-je rajouter (c’est-à-dire évaluer) un certain nombre de titres avant qu’une recommandation ne me soit proposée (c’est la règle essentielle du Collaborative Filtering) :

Passée cette étape (à chaque livre ajouté, de nouveaux apparaissent et la recommandations s’affine), j’ai donc accès à une série de titrés recommandés (qu’il me faudra noter, toujours dans un souci d’affinage) et à des suggestions de catégories (parfois originales – et très justes, dans mon cas – comme “relation-mère-fils”) où d’autres livres m’attendent.  Le moteur a par exemple très bien compris que je lisais des essais (sciences humaines), de la poésie, qu’une série de thématiques pouvaient en être dégagées (symbolisme, technique, romantisme, Iran, islam, etc.) et que j’avais un profil plutôt universitaire. Il va donc chercher à associer ces combinaisons avec plus ou moins de réussites, conditionnées par les titres déjà disponibles dans ma bibliothèque et confrontés à l’ensemble des filtres évoqués.

L’utilisateur mesure alors le degré d’efficacité de l’outil à sa capacité à le lire, voire à mettre sous une étiquette claire ce qu’il comprenait à peine de lui-même. On relève bien quelques “erreurs” dont on devine la nature en tentant de comprendre comment un livre a pu nous être proposé. Mais les premières recommandations fournies fonctionnent dans l’ensemble.

On doit cependant bien s’entendre sur ce que signifie “commettre des erreurs” de la part d’un moteur de recommandation, et la manière dont il les corrige, parce que la possibilité de découvrir de nouveaux livres, qui dépasserait le cadre narcissique (j’aime ce que j’aime déjà) ou homophilique (j’aime ce que les autres aiment), c’est-à-dire la possibilité d’emprunter des chemins de traverse, en dépend (si le modèle envisagé est celui de la “découverte” parce qu’un universitaire – c’est du moins mon cas – aura besoin, pour constituer une bibliographie, de références relativement similaires). L’utilisateur peut en effet affiner la recommandation en validant ou non un livre qui lui a été proposé. Mais à partir de quels critères  ? N’est-ce pas, justement, en reconnaissant des livres qui entretiennent une forte parenté avec les autres livres déjà présents dans sa bibliothèque ? Babelio en a manifestement conscience car une justification est chaque fois proposée  (“Ce livre vous a été recommandé car vous avez lu”, etc.). C’est donc un temps d’analyse qui est sollicité (ennemi d’Amazon et d’Apple avec leur “One-click”) au cours duquel l’utilisateur est non seulement poussé à s’interroger sur la pertinence d’une recommandation mais également sur ses propres critères de validation. D’une certaine façon, donc, ce temps d’arrêt participe d’une éducation du goût.

Pour affiner la recommandation, ce n’est donc pas (seulement) sur les filtres qu’il faudra travailler mais, d’une part, sur ce temps d’arrêt, ce temps d’analyse et, d’autre part, sur la diversification des outils d’écriture proposés en amont, qu’il va peut-être falloir en partie rapprocher du texte (passer de l’autour à l’entour : de la critique de livre à l’annotation – tâche cependant difficile, car l’annotation est une pratique lettrée, peu utilisée en dehors des lectures discursives et analytiques, quoique certains tags des utilisateurs de Babelio s’en rapprochent étonnamment), qui produisent des données (tags, notes, etc.) à partir desquelles le moteur va travailler. On pourrait, à terme (mais je sais que c’est déjà en partie le cas sur Babelio même si le taggage à partir du souvenir d’un livre ne produit pas les mêmes effets), se voir ainsi recommandé non plus des livres par grandes catégories mais par des entrées plus originales (exemple : “Poissons”, “Romans avec des personnages aux cheveux blonds”, “Poèmes avec des décasyllabes”, “À lire sous un arbre”, etc.) qui prendraient ainsi mieux en compte les conditions (spatiales, temporelles, corporelles, etc.) dans lesquelles s’inscrit toute lecture.