Archives de
Category: Veille technologique

Artificial intelligence and algorithms: pros and cons | DW Documentary (AI documentary)

Artificial intelligence and algorithms: pros and cons | DW Documentary (AI documentary)

This documentary discusses the evolution of Artificial Intelligence as well as the pros and cons of algorithms. It also accentuates the ethical debate behind this technology.

AI is referred as “a new evolution that could fundamentally change life on our planet”. Will this revolution be used solely in the favor of humanity?

From amazon cashierless supermarkets, to x-rays screening of certain diseases, AI is making fast progressing many fields previously not corelated to the digital world.

However, this “hype” should be treated with caution. It is already raising alarming questions concerning the society, economy, and governance.

In order to know more, I invite you to watch the documentary below.

Centralisme vs Répartition

Centralisme vs Répartition

Écrire un programme informatique, c’est écrire. Même s’il s’agit seulement de décrire des connaissances, des informations, des données et d’exprimer comment elles peuvent évoluer sans perdre leur cohérence et même si le langage de programmation utilisé reste formel, sec et froid, sans ambivalence, sans métaphores, c’est encore écrire.

Si pour chaque problème, on voulait classer les différents algorithmes et leur implémentations, on aurait un ordre partiel, représenté dans un graphe acyclique orienté. Ils seraient rangés par couches :

  • les algorithmes d’une même couche seraient incomparables, car meilleurs sur certains aspects, inférieurs sur d’autres.
  • les algorithmes d’une couche de niveau n seraient supérieurs sur tous les aspects aux algorithmes des couches de niveau inférieur à n

Comme pour le langage naturel, la combinatoire induit que toute phrase raisonnablement longue que l’on écrit, n’a très probablement jamais été écrite. Vérifiez par vous-même : copiez une phrase de ce texte et cherchez la, telle qu’elle sur internet. Vous devrez probablement l’encadrer avec les guillemets du 3 avant de la proposer à votre moteur de recherche favori.

Il est donc difficilement imaginable de créer un programme qui écrit des programmes. Sauf, évidemment, si le problème a traiter est extrêmement bien défini. Le souci, c’est qu’écrire un programme est indissociable de la tâche qui consiste à définir précisément le problème à traiter : le cahier des charges.

Dans tous le processus de développement logiciel, nous sommes donc contraints de faire comme dans l’écriture en langue naturelle : nous puisons nos idées dans notre culture, nos connaissances et notre représentation du monde, pour produire des séquences ordonnées de symboles qui ont un sens, dans le contexte de nos représentations.

Ainsi, dans les premières trois ou quatre décennies de l’informatique, comme les microprocesseurs n’avaient qu’un seul noyau, étaient au mieux associés à un co-processeur arithmétique, n’étaient pas connectés en réseau, il n’y avait aucune incitation à se poser la question d’écrire des algorithmes parallèles, concurrents ou de concevoir des architectures distribuées. Quand nous concevons des machines, elles sont souvent à notre image. Nous prenons alors comme modèle notre cerveau, ou plutôt ce que nous savons, ou croyons savoir de son fonctionnement. C’est ainsi que nous avons développé les approches logiques, symboliques et les approches connexionnistes.

Ce sont les avancées de la science et de la technologie, puis des avancées matérielles qui nous ont incités à changer de style d’écriture et lieu de s’inspirer du cerveau humain, nous avons commencé à nous inspirer des sociétés humaines et à concevoir des approches dites décentralisées.

A ce propos, saviez-vous que « L’existence de sociétés hiérarchisées et inégalitaires n’est pas le résultat d’un long processus naturel et achevé, mais ces formes de gouvernance ont toujours coexisté avec des formes de sociétés égalitaires » ?