[logiciel] machine learning-intelligence artificielle-logiciel à réseau neuronal expliqués en BD

[mis à jour le 27 septembre 2018] Il nous était difficile de parler algorithme dans une première présentation sans évoquer dans la foulée les concepts techniques et juridiques autours du deep learning et de l’I.A. Voici donc la seconde présentation « machine learning-intelligence artificielle-logiciel à réseau neuronal » avec les 2 tomes (vraiment exceptionnels) de « Odin » aux Editions Soleil. Alors : deep learning ? machine learning ? logiciel à réseau neuronal ? intelligence artificielle ? SoftBot ? De quoi parle-t-on ? Dans tous les cas, il s’agit en réalité de la nouvelle génération de logiciels dits « auto-apprenants ». Il faut commencer (ou finir) par un bon rappel de droit du logiciel (la protection sous condition d’originalité, tout ça…) et ajouter un peu de droit du contenu des bases de données, et vous êtes prêt(e) pour rédiger le bon contrat… Vous êtes toujours perplexe ? Analyse technique et juridique en détail dans la présentation proposée dans le slider ci-dessous.



machine learning-intelligence artificielle-logiciel à réseau neuronal : de quoi parle-t-on ?

C’ets la difficulté de ces matières techniques nouvelles : entre les effets de mode, les termes « qui font chics et branchés » et les mauvaises traductions depuis la langue de Shakespeare, on ne sait plus quel mot utiliser. Aujourd’hui, ce sera simple : deep learning = machine learning = intelligence artificielle = logiciel !

machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-intelligence artificielle-logiciel à réseau neuronal : logiciel et traitement de données numérique

Le machine learning ? C’est un traitement de données numérique par un logiciel. Sauf que… le logiciel modifie (plus ou moins seul) les « motifs de classification » des résultats qu’il permet d’obtenir. C’est en cela que cette technique est révolutionnaire.

machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-intelligence artificielle-logiciel à réseau neuronal : le concept technique

Prenez un logiciel « nouvelle génération » et entrainez le avec des « jeux de données ». Comparez le résultat obtenu avec le résultat espéré, détectez les « faux-positifs », ré-injectez une fonction correctrice dans votre logiciel et recommencez… Techniquement, c’est cela, le « deep learning ».

machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-intelligence artificielle-logiciel à réseau neuronal : la modification des « patterns »

Si le logiciel « auto-apprend », c’est en réalité un abus de langage. La réalité est que le logiciel est conçu pour modifier les « motifs de classification » de ses résultats. Les « patterns », les « motifs de classification » ? Ce sont les « colonnes » dans lesquelles le logiciel va classer le résultat du traitement des données.

Lorsque l’on « nourrit » un logiciel de deep learning avec des data, les résultats « mal classés » par le logiciel constituent des « faux positifs » : pour le logiciel, le classement de l’information traitée est correct, mais pas pour l’analyste humain… Alors, que fait l’humain ? Il analyse les « faux-positifs », il introduit une fonction correctrice dans le logiciel et… et le process recommence. Plus le logiciel traite de données, plus il affine la classification de ses résultats. 

machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-intelligence artificielle-logiciel à réseau neuronal : un stockage des données par le logiciel ?

C’ets la plus grande crainte des « clients », ceux qui bénéficient du droit du producteur sur le contenu de la base de données qui « nourrit » le logiciel : mes data sont-elles conservées dans les patterns ? dans le logiciel ? dans une base de données nouvelle attachée au logiciel ? La réponse technique est très simple : NON ! 

Une fois que les data ont été traitées par le logiciel, le logiciel peut modifier ses patterns, mais ne conservent techniquement en aucune manière les données traitées. Pour « affiner » encore les patterns, tout au plus faudra-t-il refaire « tourner » le logiciel avec les mêmes jeux de données et vérifier que le résultat du traitement s’est affiné. Ce sera le cas si le taux de faux-positifs a diminué jusqu’à un pourcentage acceptable. Evidemment, on sera plus exigeant lors d’une analyse du pourcentage « d’erreurs » si la data est sensible (traitement pour les services spécialisés de renseignement par exemple) que pour une exploitation purement marketing (traitement de « Big Data »).

En réalité, la technique du machine learning est aujourd’hui déjà suffisamment performante pour que les entreprises comme les Etats (services de renseignement compris) disposent d’une grande finesse d’analyse (entendez par là une analyse « très performante »)  sur les data traitées. 

machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-intelligence artificielle-logiciel à réseau neuronal : le traitement du contenu de bases de données

Si le droit du logiciel permet sans difficulté de protéger le logiciel de deep learning (une protection juridique sous réserve de la démonstration classique de l’originalité du code source), l’amélioration des patterns passe juridiquement aussi par la concession d’un droit d’usage sur les données. Il faut donc faire une analyse classique en droit des bases de données pour savoir ce que le prestataire a le droit de faire sur le contenu de la base de données dont il ne serait pas le producteur. 

machine learning-Intelligence artificielle-logiciel à réseau neuronal


Parlons un peu ici de droit des contrats : si le producteur d’une base de données demande un traitement de machine learning à un prestataire (en mode SaaS le plus souvent aujourd’hui), ce producteur doit contractuellement disposer de la part du prestataire éditeur du logiciel du droit d’extraction temporaire sur le contenu de la base de données. Du classique au regard de la Directive 96/9 du 11 mars 1996.

machine learning-Intelligence artificielle-logiciel à réseau neuronal


Contractuellement, la difficulté repose sur l’analyse de la titularité des droits sur le résultat du traitement des données : naturellement, le « data processor » (prestataire) va demander à bénéficier du résultat du traitement des données pour son usage propre. Ce qui est évidemment inacceptable pour le titulaire des droits sur les data traitées. Car – fort logiquement – le client producteur du contenu de la base de données estimera que le résultat du traitement de ses données lui appartient (sinon, pourquoi paierait-il le prestataire ?).

Pour mettre tout le monde d’accord, je vous propose une métaphore autours de l’utilisation d’un logiciel en mode SaaS : si je rédige un document avec un logiciel de traitement de texte accessible en mode SaaS, qui est l’auteur du texte ? L’éditeur du logiciel auquel j’accède à distance ? Evidemment non !!!

De son coté, l’éditeur prestataire (prudent…) prendra soin de mentionner dans le contrat de service que l’amélioration de ses patterns fait partie des conséquences quasi-mécaniques du droit d’usage concédé par ses soins à son client. Comme le sujet est aujourd’hui éminemment sensible, je ne peux que vous inviter lors de la rédaction de vos contrats à insister sur la titularité des droits sur les data résultats. ça vous évitera des conflits judiciaires ultérieurs…

machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-logiciel à réseau neuronal : le phénomène « Intelligence Artificielle » 

Utiliser le terme « deep learning », ça fait déjà très chic. Parler d’intelligence artificielle, c’est basculer dans l’univers de « Star Wars » ou de « 2001 Odyssée de l’espace »… La réalité ? L’IA ou le « Softbot » (pour « Software robot » – robot logiciel) est une expression sensationnelle du machine learning. Voyez la définition que retient le rapport de la mission « Villani » du 28 mars 2018 :

machine learning-Intelligence artificielle-logiciel à réseau neuronal


Parler de « deep learning » en utilisant les termes « intelligence artificielle » n’apporte rien à notre débat juridico-technique. Ces « robots logiciels » dits « intelligents » ne sont que des logiciels avec une capacité de modification de leurs motifs de classification.

Ces « softbots » sont aujourd’hui, en 2018, utilisés et pas seulement dans les labo de recherche en génie logiciel : ce sont les « agents conversationnels » utilisés pour vous apporter des réponses écrites sur des messageries instantanées d’entreprises (d’assurances ou de banques par exemple) et très (très) bientôt, orales. Bien sûr, l’utilisation la plus médiatisée de l’IA concerne les rapports entre l’entreprise et ses clients consommateurs. Mais bien des industries, moins visibles du grand public, travaillent avec cette nouvelle génération de logiciels. Je pense notamment à l’industrie de la cyber-sécurité qui sait avoir beaucoup à apprendre des « attaques » recensées pour identifier soit des « patterns » d’attaque récurrents, soit les « patterns » non conformes aux modèles déjà identifiés, les modèles « divergents » (donc plus dangereux…). Steven Spielberg a fait un remarquable film de science fiction autours de cette problématique du « modèle divergent » dans « Minority report » : vous vous souvenez ? Une des 3 « pré-cog » qui ne décrit pas la « même » scène que les deux autres… C’est l’idée sous-jacente du machine learning : identifier des patterns récurrents et détecter les patterns « nouveaux » ou « non conformes » (en machine learning, « nouveau » est un synonyme de « non conforme »…). Pour cela, il faut des algorithme logiciels manifestement complexes et beaucoup, beaucoup de data pour « faire tourner la machine« ….  

Le fantasme autours de l’IA repose sur la crainte que nous – humains – ressentons lorsque des robots humanoïdes (associés bien sûr…) seront capables de se mouvoir dans notre espace et de nous répondre comme le feraient d’autres humains. Nos craintes ? ce sont les robots qui ressembleraient à l’homme, mais en faisant mieux. C’est pour l’instant (encore) de la science fiction… Mais le Maitre de la SF en matière de robotique (Isaac Asimov) nous l’a dit dans « Les Robots de l’aube » « L’être humain croira toujours que, plus le robot parait humain, plus il est avancé, complexe et intelligent« . 

Pour nuancer le propos et ajouter un doigt d’humour à une matière qui en manque (un peu), la préface de l’ouvrage « Le temps des robots est-il venu ? » de MM. Braly et Ganascia ajoute : « Il ne faut pas que le robot soit trop intelligent, sinon il voudra rien foutre » (Les nouvelles brèves de comptoir par Jean-Marie Gourio). Comme quoi, les préoccupations de l’humanité peuvent parfois prendre des tournures inattendues !!!

machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-intelligence artificielle-logiciel à réseau neuronal : le problème éthique

Si techniquement, les logiciels de deep learning fonctionnent aujourd’hui de mieux en mieux, ce ne sont pas leur performance qui posent probleme, au contraire. Aujourd’hui, la crainte des humains est de ne pas savoir comment les logiciels parviennent à leurs conclusions. Pour le dire autrement, nous, les humains devrions pouvoir contrôler comment au final un logiciel modifie seul ses motifs de classification. Car le risque est celui du thème principal de la série de film « Terminator » : une intelligence logicielle (« Skynet ») conçue pour automatiser la riposte nucléaire américaine devient « autonome », prend le contrôle de tous les systèmes connectés de la planète et tente d’éradiquer les hommes de la surface de la terre…

Si vous aimez les films de science fiction, vous connaissez une autre IA, très puissante : la « Matrice » de la trilogie « Matrix » : « univers virtuel réaliste dans lequel les humains sont enfermés, simulant le monde actuel. Il a existé plusieurs versions de la matrice, qui se corrige au fur et à mesure des itérations et des anomalies systémiques qui apparaissent inévitablement« . En relisant cet article de wikipedia.fr, je vois « correction » et « itérations » : deux termes typiques de la technologie du « machine learning ». 

machine learning-intelligence artificielle-logiciel à réseau neuronal : le temps des algorithmes ?

Dans « le temps des algorithmes » (Serge Abiteboul et Gilles Dowek) ou dans « le temps des robots est-il venu ? » (Jean-Philippe Braly et Jean-Gabriel Ganascia), ceux qui savent nous invitent à réfléchir au problème de ces « technologies » que nous mettons en oeuvre et qui sont difficilement contrôlables par l’homme. Devons nous continuer dans cette voie ? Devons nous faire autrement ? 

machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-intelligence artificielle-logiciel à réseau neuronal : la protection de l’algorithme de machine learning ?

Maintenant que techniquement et juridiquement, vous et moi sommes en mesure de distinguer ce qui relève de l’algorithme « brevet » ou de l’algorithme « logiciel », la protection juridique du softbot passera par celle du code source de l’IA logicielle. Alors nous en profiterons pour faire un petit rappel sur ce qui se protège dans le logiciel (et ce qui ne se protège pas…). 

machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-intelligence artificielle-logiciel à réseau neuronal : BONUS en forme de quiz ???

Algorithme, brevet, logiciel, deep learning, intelligence artificielle… ça fait beaucoup à digérer en deux présentations… Alors, un petit quiz en trois slides pour tester votre compréhension de ces problématiques ? 

machine learning-Intelligence artificielle-logiciel à réseau neuronal


algorithme-machine learning-intelligence artificielle-logiciel à réseau neuronal : synthèse expresse

machine learning-Intelligence artificielle-logiciel à réseau neuronal


 

machine learning-Intelligence artificielle-logiciel à réseau neuronal


machine learning-Intelligence artificielle-logiciel à réseau neuronal