Pourquoi avons-nous besoin de Python alors que R est si brillant pour l'apprentissage automatique et la science des données?

Joe James

Joe James, MSCS et propriétaire d'une chaîne populaire sur YouTube CS

Répondu il y a 91w · L'auteur dispose de réponses 3k et de vues de réponses 4.8m

Parce que Python est également vraiment génial pour l’apprentissage automatique et la science des données. Python est excellent dans de nombreux domaines, car il possède de nombreuses bibliothèques impressionnantes. C'est excellent pour les scientifiques, les statisticiens, bien plus que la science des données. Programmation orientée objet? Aucun problème. Construire des applications web? Aucun problème. Lier SQL ou Hadoop? Facile.

Je pense que R est plus facile à apprendre et à utiliser pour l’analyse de données, mais Python a des utilisations bien plus possibles dans de nombreux domaines (Plus grande polyvalence).

Vik Paruchuri

Vik Paruchuri, Fondateur de Dataquest

Répondu il y a 91w · L'auteur dispose de réponses 56 et de vues de réponses 1.1m

L'apprentissage automatique et la science des données apportent une valeur ajoutée au client. Par exemple:

  • Une société de crédit souhaite déterminer automatiquement quels emprunteurs rembourseront le prêt et lesquels ne le feront pas.
  • Un hedge fund veut rapidement trouver de bonnes opportunités de trading.
  • Une chaîne de restaurants souhaite déterminer quels éléments du menu ont réussi et lesquels doivent être supprimés.
  • Facebook veut générer rapidement des flux de nouvelles dynamiques.

Aucune des sociétés ci-dessus ne se soucie de savoir si votre modèle est en R ou en Python. Ils se soucient de savoir si le modèle fonctionne et ajoute de la valeur à l'entreprise.

Concrètement, cela signifie que vous choisissez la langue qui:

  • Est le moins cher pour développer l'analyse ou l'algorithme. Cela consiste en deux parties:
    • Le langage qui nécessite le moins de temps des scientifiques de données pour apprendre à effectuer l'analyse. Par exemple, si les besoins de l'entreprise nécessitent un algorithme avancé d'apprentissage automatique et que vos informaticiens ne savent comment effectuer un apprentissage automatique en Python, choisissez Python.
    • Le langage qui prend le moins de temps pour développer l’analyse en.
  • Est facile à intégrer avec d'autres composants de l'entreprise. Si la société a un site Web et souhaite afficher en direct les profils de risque de l'emprunteur, un langage qui s'intègre bien au site Web est logique pour l'analyse.
  • Convient aux besoins commerciaux de l'entreprise. Par exemple, si l'entreprise souhaite créer un moteur en temps réel pour exécuter rapidement des transactions, le langage doit être aussi rapide que possible. Si une entreprise souhaite apprendre en profondeur, la langue doit bien la prendre en charge.

Python a tendance à être préféré à R dans les situations où le langage doit s'intégrer à d'autres composants de l'entreprise, où le reste de l'entreprise utilise déjà Python (c'est-à-dire pour un serveur Web) et où l'ingénierie des données est plus importante que l'apprentissage automatique. et analyse. Nous enseignons Python à Dataquest pour ces raisons.

En fin de compte, les deux langues sont importantes pour la science des données, mais j'espère que cet article montre que la langue est souvent le dernier choix à faire dans un nouveau projet d'apprentissage automatique ou de science des données.

Rahul Anand

Rahul Anand, Data Scientist

Mise à jour il y a 92w

Permettez-moi d'abord de corriger la question pour vous

"Pourquoi Data-Scientist utilise-t-il Python pour le Machine Learning et la Data-Science alors que R est aussi brillant?"

Parce que Python peut faire beaucoup plus, plus efficacement que R. Exemple - Lecture multiple, exploration.

Je vais me concentrer uniquement sur la partie Data-Science et vous expliquer la différence.

Leggi:  Qu'est-ce que l'extraction minière Bitcoin?

Laissez-moi vous montrer la différence de vitesse

Je viens d'imprimer des nombres 10000 en R et en python

Pourquoi avons-nous besoin de Python alors que R est si brillant pour l'apprentissage automatique et la science des données?

R prend vraiment beaucoup de temps pour faire la même chose que python.

Je sais que ce n'est pas la bonne façon de comparer mais vous avez eu l'idée.

Analytique:

R a la bibliothèque data.table où comme python a Panda. Les deux sont bons si vous comparez les fonctionnalités. Mais python est plus rapide.

Visualisation:

R et python à la fois ggplot2, R a brillant, complotement, où vous pouvez interagir avec des données. D'autre part, le python a d3.

Data-Science:

R et Python représentent la plupart des bibliothèques importantes nécessaires à l’apprentissage automatique.

Ce sont les fonctionnalités de base que nous utilisons régulièrement en tant que Data-Scientists.

Laissez-moi vous dire mon point de vue.

Une fois que j’ai les données brutes, j’utilise python pour les nettoyer en utilisant pandas. Comme python est plus rapide en lecture et en écriture des données. Cela m'aide à accélérer le processus de nettoyage.

Vient ensuite la partie analytique, où je préfère R, car il est plus facile d’écrire du code, que la visualisation construise une brillant tableau de bord et présentez-le à mon équipe en jouant avec différents tracés et seuils. Avec l'utilisation de différentes parcelles et analyses, je présente l'extraction dans R.

Maintenant, en fonction de la taille des données, je décide de la météo pour construire un modèle en R ou en python. Si les données sont du texte, j'utilise certainement python à cause de nltk. J'utilise python, si les données sont volumineuses, parce que python est plus rapide, le temps nécessaire aux itérations pour construire le modèle final est considérablement réduit. Je préfère R pour les données <= 10GB.

Une fois le modèle construit, j’utilise R pour effectuer tous les types d’analyses en mode hors connexion et le présente aux entreprises / parties prenantes à l’aide de: brillant, ggplot2 et complotement. J'ai essayé d'intégrer d3 à brillant mais pas encore réussi.

Ensuite, en utilisant le modèle en production, il faut absolument le faire en python. Les modèles hors ligne sont plus faciles à exécuter en mode R, mais si vous devez prédire quoi que ce soit en temps réel, vous devez implémenter le modèle en python.

Ensuite, je fais toute l'analyse de la performance du modèle, des tests A / B, du calcul de l'importance que je fais dans R.

Voilà pourquoi nous avons besoin de Python.

PS: Un jour je préférerais R plus de python. Mais professionnellement, j'utilise les deux pour obtenir les résultats optimaux pour l'entreprise.

Sakina Mirza

Sakina Mirza, k-NN, Naive Bayes, SVM, Forêts décisionnelles

Répondu il y a 11w · L'auteur dispose de réponses 410 et de vues de réponses 810.1k

Parce que,

  • Il a une intégration facile avec et une extensibilité en utilisant C et Java.
  • Il prend en charge plusieurs systèmes et plates-formes.
  • Généralement, il est facile à apprendre, même pour un développeur novice.
  • Comme il y a trop de ressources disponibles pour Python.

R a aussi ses propres avantages comme

  • C'est le paquet d'analyse statistique le plus complet. Comme les nouvelles technologies et les idées apparaissent souvent en premier dans R.
  • As R est un logiciel open-source. Par conséquent, tout le monde peut l'utiliser et le changer.
  • C'est une source ouverte. Nous pouvons utiliser R n'importe où et à tout moment, et même le vendre dans les conditions de la licence.
  • Comme nous le savons, R est bon pour GNU / Linux et Microsoft Windows. En outre, il s'agit d'une plate-forme multiplateforme qui fonctionne sur de nombreux systèmes d'exploitation.
  • Tout le monde peut corriger les bogues, améliorer le code et créer de nouveaux packages.
Leggi:  Quelles compagnies aériennes acceptent PayPal?

Aussi les deux ont leurs propres inconvénients

Inconvénients du langage R

  • En R, la qualité de certains paquets n’est pas parfaite.
  • En R, personne ne peut se plaindre, si quelque chose ne fonctionne pas.
  • C'est une application logicielle. Par conséquent, beaucoup de gens consacrent leur temps au développement.
  • De plus, R peut utiliser toute la mémoire disponible en raison de sa gestion de la mémoire.

Inconvénients de Python

  • Son pool de développeurs Python est plus petit que celui des autres langages.
  • La performance du logiciel
  • Ce n'est pas bon pour le développement mobile.
  • Bien que, il a des limitations sur l'accès à la base de données.
  • La vitesse: plus lent que C ou C ++.

Si vous connaissez les deux langues, avec la pratique, vous saurez qu'une langue conviendra mieux à quel projet.

Si la réponse était utile, s'il vous plaît UPVOTE et suivre Sakina Mirza pour plus de réponses sur Python et Data Science.

Ken Hutchison

Ken Hutchison, R-Dev, PhD Ingénierie, PhD Mathématiques, Passionné d’électronique et Entrepreneur

Répondu il y a 92w · L'auteur dispose de réponses 976 et de vues de réponses 622.3k

C'est une question vraiment fantastique. Je pourrais partager quelques opinions qui pourraient aider.

Premièrement, R était mon premier amour en tant que langue. J'aime beaucoup R Divulgation complète: je déteste absolument le python. Ce serait si proche de la perfection si ce n’était pour cet espace blanc.

Vous pouvez être aussi pythonique que vous le souhaitez, mais je ne veux pas que le défilement horizontal lise mon code.

R est génial et fantastique pour le prototypage. R est plus d'un langage de recherche.

R a beaucoup de choses que vous pouvez manipuler sans vraiment les comprendre (comme python, mais plus de choses (analyse de données)) et je ne pense pas que ce soit bon pour l’utilisateur final moyen: qui n’intègre pas la diligence raisonnable dans apprendre le fonctionnement des algorithmes sous-jacents. Python, lui aussi, fait souvent abstraction des choses, ce qui est moins vrai qu’avant.

Python est beaucoup plus de qualité de production, c'est un vrai langage et vous pouvez donc tisser le front-end et le back-end et l'analyse et plus encore. Ce n'est pas vrai avec R.

Cependant, il existe des algorithmes très très compliqués, difficiles à coder, que vous connaissez peut-être, qui existent dans R et non dans Python. C'est, pour moi, le cas d'utilisation. Les fonctionnalités de nettoyage des données et de série chronologique sont également beaucoup plus robustes. La science des données consiste principalement à nettoyer les données, comme vous le savez.

Python a connu un regain de popularité en raison des API et de son utilisation, ainsi que du fait que de nombreux kits d’apprentissage en profondeur / ai l’ont choisie pour la publication en bibliothèque.

Je me sens audacieux, alors je vais le dire. Le serveur de liste de diffusion, en gros, est rempli de gens terribles, condescendants et dégoûtants. J'ai essayé de me lancer et je ne pouvais pas. Il y avait cette pression des pairs pour brouiller les débutants. Je n'aime pas ça. Le travail de l'homme de métier est d'allumer nos bougies, non?

Python a beaucoup de cela aussi, en ce sens que tout le monde a un moyen plus simple et moins compréhensible de réécrire votre code pour vous.

Leggi:  Comment configurer Paypal pour utiliser l'argent que j'ai sur mon compte plutôt que sur ma carte de crédit

Meh Il y a des gens condescendants dans tous les domaines techniques, python leur a simplement donné un adjectif cool, alors je le remarque davantage. R prend vraiment cela à un niveau CRANtastic cependant.

Ils existent tous les deux pour de bonnes raisons et il existe des cas d'utilisation. Vous feriez bien d'apprendre les deux et de déchiffrer un livre de statistiques souvent.

Ces jours-ci, je code 100x plus souvent en Python que en R. J'aime la flexibilité et j'ai donc besoin d'un langage complet, et python est le «moins» désagréable avec lequel travailler.

En R, vous êtes surhumain en tant qu'analyste. Vous pouvez faire tout ce que les meilleurs cerveaux peuvent faire et en prendre connaissance également. Vous pouvez faire de grandes choses, mais la relation entre le cerveau et la monnaie n’existe pas assez souvent pour la compléter. Un manque.

Donc, même en tant que petit gars, le python est ce que je retire le plus de la boîte, de loin.

Bonne question, continuez!

Sridhar Anand

Sridhar Anand, Co-fondateur de MCAL Global (2017-present)

Répondu il y a 54w

Il n’ya pas de solution miracle dans la science des données.

Plus tôt vous lâchez la même approche, plus vite vous gravissez l’échelle de croissance.

Chaque langage de programmation a un avantage et un inconvénient.

Si vous voulez mettre le clou dans le bois, vous utiliserez un marteau. Si vous voulez visser (pas celui-là, alors vous devez utiliser un tournevis.

Si vous vous en tenez à R et que vous l'utilisez partout, ce sera comme si vous utilisiez un marteau sur des vis dans certains cas.

Si vous demandez à un spécialiste des données ce qu’il fait avec 90% de son temps, je parierai des dollars 1000 sur le fait qu’il passe le plus clair de son temps à manipuler des données et à les préparer pour un apprentissage automatique.

Python est très flexible et convient parfaitement à l’analyse de données, qui est en réalité l’essentiel du travail ou le travail peu sexy en apprentissage automatique.

Si vous souhaitez vous en tenir à R pour l'apprentissage automatique, vous pouvez envisager l'apprentissage de Python pour les activités de munging de données. Cela facilitera beaucoup l'apprentissage de votre machine sur R.

J'ai organisé un webinaire sur l'apprentissage automatique et sur l'utilisation de Python. Vous pouvez le voir ici pour obtenir une réponse plus détaillée:

Webinaire sur l'apprentissage automatique avec Python

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.