IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Affichage des résultats du sondage: Sondage : quels sont les meilleurs langages de programmation à apprendre pour l'IA en 2020 ?

Votants
43. Vous ne pouvez pas participer à ce sondage.
  • C++

    5 11,63%
  • Java

    20 46,51%
  • JavaScript

    10 23,26%
  • Julia

    6 13,95%
  • Lisp

    6 13,95%
  • Lua

    0 0%
  • MATLAB

    0 0%
  • Prolog

    9 20,93%
  • Python

    29 67,44%
  • R

    12 27,91%
  • Swift

    0 0%
  • Autres (à préciser dans les commentaires)

    0 0%
Sondage à choix multiple
Intelligence artificielle Discussion :

Sondage : quels sont les meilleurs langages de programmation à apprendre pour l'IA en 2020 ?


Sujet :

Intelligence artificielle

  1. #1
    Chroniqueur Actualités

    Homme Profil pro
    Dirigeant
    Inscrit en
    Juin 2016
    Messages
    3 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Bénin

    Informations professionnelles :
    Activité : Dirigeant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2016
    Messages : 3 160
    Points : 66 256
    Points
    66 256
    Par défaut Sondage : quels sont les meilleurs langages de programmation à apprendre pour l'IA en 2020 ?
    Sondage : quels sont les meilleurs langages de programmation à apprendre pour l'intelligence artificielle en 2020 ?

    L’intelligence artificielle évolue très rapidement et ses applications deviennent de plus en plus nombreuses. L’IA tend à devenir indispensable pour les organisations et les personnes dans le futur. C’est un domaine qui passionne beaucoup de développeurs et il existe de nombreux outils pour contribuer à son développement. Parmi les langages de programmation pour l’IA, il y a Python, C++, Lisp, Prolog... Quel langage de programmation choisirez-vous d’apprendre en 2020 pour concevoir des produits d’IA ? Voici ci-après une sélection de meilleurs langages de programmation de l’IA.

    Python

    Ce n’est nouveau pour personne, Python fait partie des langages de programmation les plus populaires dans le domaine de l’IA. Il est d’ailleurs considéré par beaucoup dans la communauté comme étant le premier langage de programmation de l'intelligence artificielle en raison de sa simplicité. La syntaxe de python est très simple et est facilement assimilable. C'est pourquoi de nombreux algorithmes d'intelligence artificielle peuvent être facilement mis en œuvre en Python. Il nécessite un temps de développement très court par rapport à d'autres langages comme Java, C++ ou Ruby.

    Il supporte les styles de programmation orientés objet, fonctionnels et procéduraux. Il existe de nombreuses bibliothèques en python, ce qui facilite la tâche aux programmeurs. Développé au début des années 1990, Python est devenu l'un des langages de programmation à la croissance la plus rapide en raison de son adaptabilité et de sa facilité d'apprentissage. Enfin, dans un dernier sondage sur Developpez.com sur les meilleurs langages pour le développement de l'IA, il est arrivé premier avec un peu plus de 55 % des voix, suivi par C++ (45,71 %) et Java (18,57).

    C++

    Le C++ est l'un des langages de programmation les plus rapides, sa rapidité est d'une grande aide pour les projets de programmation d'IA qui sont sensibles au temps. Le C++ peut être utilisé pour des approches d'IA statistique comme celles que l'on trouve dans les réseaux de neurones. Avec un temps d'exécution très rapide et les principes de la POO, le C++ est un bon choix pour les programmes d'IA. En fait, une grande partie des bibliothèques d'apprentissage machine et d'apprentissage approfondi sont écrites en C/C++ et offrent des API pour les mêmes.

    De plus, ils offrent également des wrappers pour d'autres langages de programmation. Si vous avez envie de garder le contrôle sur le temps d'exécution et les performances, le C++ est évidemment un bon choix. Un autre point important est qu’il est un langage permettant la réutilisation des programmes en développement grâce à la propriété d'héritage et au masquage des données, ce qui permet de gagner du temps et de l'argent.

    Nom : z1.png
Affichages : 7600
Taille : 235,2 Ko

    Lisp

    Lisp est l'un des langages les plus anciens et les plus adaptés au développement de l'IA. Il est l’oeuvre de John McCarthy, qui est également connu comme l’un des pères de l'intelligence artificielle. Sa toute première version remonte à 1958. Lisp a la capacité de traiter efficacement des informations symboliques. Il a été développé à l'origine pour le calcul Lambda, et depuis son développement, il a beaucoup évolué au fil des ans tout en apportant de nombreuses idées à l’informatique. On distingue le typage dynamique, la récursion, les fonctions d’ordre supérieur, etc.

    Il y a également la gestion automatique du stockage, le compilateur autohébergé et la structure arborescente des données. Lisp a un cycle de développement qui permet une évaluation interactive des expressions et la recompilation de fonctions ou de fichiers pendant que le programme est encore en cours d'exécution. Plus tard, bon nombre de ses fonctions ont été copiées par d’autres langages. Entre 1970 et 80, il est devenu le langage de choix par défaut pour la recherche en intelligence artificielle et est depuis utilisé dans les programmes d’IA qui calculent très bien avec des symboles.

    L'expression symbolique de Lisp et le calcul avec ces symboles sont ses points forts. De même, Lisp se compose d'un système de macro, d'un compilateur bien développé qui peut produire un code efficace, et d'une bibliothèque de types de collections, y compris des tables de hachage et des listes de taille dynamique.

    R

    R est un langage informatique interprété et tapé dynamiquement. Si vous avez déjà programmé dans un autre langage, vous pouvez rapidement comprendre le fonctionnement du langage R. En plus d'être un langage polyvalent, R dispose d'un certain nombre de progiciels utilisés dans le domaine de l'apprentissage automatique. Ces progiciels facilitent la mise en œuvre d'algorithmes d’apprentissage automatique afin de résoudre les problèmes liés à l'entreprise.

    R est l'un des langages de programmation de l'intelligence artificielle. C’est aussi l’un des environnements les plus efficaces pour analyser et manipuler les données à des fins statistiques. De nombreuses grandes sociétés utilisent le langage R pour l'analyse de données, la modélisation de données volumineuses et la visualisation. Certaines d'entre elles sont Google, Uber, le New York Times. R est largement utilisé dans le secteur bancaire, notamment pour la prévision de différents risques.

    Prolog

    Prolog est cité aux côtés de Lisp lorsqu’on parle de développement dans le domaine de l'IA. Prolog offre plusieurs fonctionnalités, dont une correspondance efficace des modèles, un retour en arrière automatique et une structuration des données sous la forme d’arbre. Ces fonctionnalités constituent un cadre de programmation étonnamment puissant et flexible. Il est entièrement basé sur la logique et il est un langage largement utilisé pour la démonstration de théorèmes, la programmation non numérique, le traitement du langage naturel et l'IA en général.

    Prolog est particulièrement adapté aux problèmes qui impliquent des objets structurés et des relations entre eux. La nature de Prolog rend la mise en œuvre des faits et des règles simple et directe. Il prend en charge le développement d'applications d'interface utilisateur graphique, d'administration et de réseau. Il est très bien adapté à des projets tels que les systèmes de commande vocale et le remplissage de modèles.

    Java

    Le langage Java peut aussi être considéré comme un très bon choix pour le développement de l'IA. Le meilleur atout de ce langage est sa JVM (machine virtuelle Java) qui vous permet de créer une version unique d’une application, qui fonctionnera sur toutes les plateformes, ce qui veut dire que le programme est indépendant de la plateforme. Ses points forts sont la transparence, la maintenabilité et la portabilité. Il a plusieurs avantages, dont la facilité d'utilisation, la facilité de débogage, les services de paquets, la simplification du travail sur des projets à grande échelle.

    Il y a aussi la représentation graphique des données et une meilleure interaction avec l'utilisateur. Il intègre également Swing et SWT (la boîte à outils standard des widgets). Ces outils peuvent rendre les graphiques et les interfaces plus attrayants et plus sophistiqués.

    Lua

    Il y a quelques années, Lua montait dans le monde de l'intelligence artificielle. Avec le framework Torch, Lua était l'un des langages les plus populaires pour le développement de l'apprentissage profond. Et il existe toujours beaucoup de travail d'apprentissage profond sur GitHub qui définit les modèles avec Lua/Torch. Avec l'arrivée de frameworks tels que TensorFlow et PyTorch, l'utilisation de Lua a considérablement diminué.

    Julia

    Julia est un langage de programmation de haut niveau et performant pour le calcul scientifique, avec une syntaxe familière aux utilisateurs d'autres environnements de développement similaires (MATLAB, R, Scilab, Python, etc.). Ce qui en fait un bon choix dans le monde mathématique de l'IA bien que ce ne soit pas très populaire en tant que choix de langage en ce moment. Les wrappers comme TensorFlow.jl et Mocha (fortement influencés par Caffe) offrent un bon support d'apprentissage profond.

    Swift

    Chris Lattner, créateur du compilateur LLVM et du langage de programmation Swift, a annoncé Swift pour TensorFlow. Swift pour TensorFlow permet d'importer des bibliothèques Python telles que NumPy et de les utiliser dans le code Swift presque comme avec n'importe quelle autre bibliothèque.

    MATLAB

    MATLAB rend les parties difficiles de l'apprentissage automatique faciles avec des applications « pointer-cliquer » pour former et comparer des modèles, des techniques avancées de traitement du signal et d'extraction de caractéristiques, sélection des fonctionnalités pour optimiser les performances d'un modèle, la possibilité d'utiliser le même code pour étendre le traitement aux big data et aux clusters, etc.

    JavaScript

    Google avait publié TensorFlow.js, une bibliothèque accélérée par WebGL qui permet de former et d'exécuter des modèles d'apprentissage automatique dans le navigateur Web. Il inclut également l'API Keras et la possibilité de charger et d'utiliser des modèles qui ont été formés dans TensorFlow standard. Bien que JavaScript n'a pas actuellement le même accès aux bibliothèques d'apprentissage automatique que les autres langages cités plus haut, les développeurs ajouteront bientôt des réseaux de neurones à leurs pages Web avec presque la même aisance que s'ils ajoutaient une propriété CSS.

    TensorFlow.js est encore à ses débuts. Pour l'instant, cela fonctionne dans le navigateur, mais pas dans Node.js. Il n'implémente pas encore l'API TensorFlow complète.
    Alors, quel langage de programmation de l’IA allez-vous à apprendre en 2020 ?

    Et vous ?

    Maîtrisez-vous déjà l'un de ces langages de programmation pour l'IA ? Quelles sont les raisons de votre choix ?
    Quels autres langages souhaiteriez-vous apprendre et pourquoi ?
    Quels sont les langages de programmation que vous estimez meilleurs pour l'IA ? Pourquoi ?

    Voir aussi

    Sondage : quels sont les meilleurs langages de programmation pour l'IA ? Quels sont vos critères ?

    Guido Van Rossum, le créateur du langage de programmation Python, prend sa retraite, « ça a été une aventure incroyable », dit-il

    Voici l'état de l'écosystème des développeurs en 2019 : l'évolution du monde du code, d'après une enquête menée par Jetbrains
    Contribuez au club : corrections, suggestions, critiques, ... Contactez le service news et Rédigez des actualités

  2. #2
    Membre extrêmement actif Avatar de darklinux
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2005
    Messages
    570
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2005
    Messages : 570
    Points : 1 023
    Points
    1 023
    Par défaut
    Python et on ne perd rien en rapidité puisque les interfaces scikit learn et tensorflow sont en C++ pour les systèmes

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2012
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2012
    Messages : 192
    Points : 312
    Points
    312
    Par défaut
    Pour un débutant, le mieux c'est python. Mais il lui faudra apprendre aussi Pandas, le SQL et/ou le html pour les données, l'IHM par application Web ou par Jupyter pour présenter les résultats (le mode console à ses limites) avoir une connaissance théorique des réseaux de neurones et enfin apprendre TensorFlow (voire Scikit-Learn). Dire que python est très simple, adaptable et facilement assimilable n'est pas faux, mais l'ensemble demande quand même un certain temps. La communauté est la plus importante.

    Pour l'IA orientée sciences (bio-informatique, physique...) et financière, R est très largement employé car le meilleur pour faire des statistiques. Faire de l'IA dans ces domaines en R permet d'avoir le même langage et la communauté est très importante.

    Pour des ressources limitées comme l'embarqué ou le calcul haute performance, C est le mieux. Par contre l'apprentissage est très long, tout comme l'écriture d'algorithmes. Les bugs sont difficilement repérables (pointeurs, débordement, parallélisme...). Enfin, une connaissance des processeurs graphiques pour les plus exigeant est incontournable.

    Bref, le débutant s'orientera en priorité vers python. R peut être également un bon choix. Pour C, c'est plus par challenge ou masochisme qu'il sera choisi.

    Quant aux autres langages, comme Java, cela peut se comprendre si l'on ne connait que lui ou s'il est imposé. Pour les polyglottes, Lua est apprécié. Julia est jeune mais plein de promesses. MatLab (ou GNU Octave) pour le traitement du signal (sons, images, mesures physiques) est incontournable.
    Enfin, pour les autres, je ne les connais pas.

Discussions similaires

  1. Quels sont les meilleurs langages de programmation pour développer une application mobile ?
    Par Stéphane le calme dans le forum Débats sur le développement - Le Best Of
    Réponses: 36
    Dernier message: 13/12/2022, 22h07
  2. Réponses: 10
    Dernier message: 13/03/2020, 17h16
  3. Quels sont les meilleurs langages de programmation en 2017 ? Et pourquoi ?
    Par Community Management dans le forum Langages de programmation
    Réponses: 119
    Dernier message: 29/09/2018, 10h45
  4. Sondage : quels sont les meilleurs langages de programmation pour l'IA ?
    Par Blondelle Mélina dans le forum Intelligence artificielle
    Réponses: 28
    Dernier message: 22/07/2018, 06h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo