Linux🐧
January 5

Python больше не является королем науки о данных

Искусственный интеллект создан с использованием Ideogram 2.0

5 причин, почему Python теряет свою корону

Если вы читаете это, то есть большая вероятность, что Python является вашим основным языком, когда кто-то говорит о науке о данных, и, честно говоря, никто не может с этим поспорить. Python остается королем в королевстве науки о данных благодаря своим превосходным библиотекам, таким как , и .NumpyPandasscikit-learn

Но если что-то всегда было наверху, это не значит, что там всегда безопасно. Вы слышите шепот; Вы видите появление новых языков — может быть, вы задаетесь вопросом,

Время Python истекает?

Хорошо, прежде чем вы бросите мне в лицо свой блокнот Jupyter, позвольте мне прояснить кое-что: я действительно думаю, что Python — это КРУТО. Я этого не отрицаю. Тем не менее, он не лишен недостатков. Он может и не потерять свое место за одну ночь, но трещины образуются.

Итак, давайте рассмотрим 5 причин, которые предполагают, что Python не собирается оставаться на вершине вечно!

Хотите поддержать нас?

Просто подпишитесь на наш канал ТГ и получайте эксклюзивную информацию о нодах и технологиях web3 и не только, раньше всех! Вокруг Крипты и Youtube👍

1. Узкие места производительности: ахиллесова пята Python

Прежде всего, я начну со слона в комнате: Python медленный. Я точно знаю, о чем вы думаете: «У нас есть такие библиотеки, которые все ускоряют». Да, я согласен с вами, но по своей сути Python является интерпретируемым языком, поэтому он медленнее по сравнению с такими языками, как C++ или Java, которые компилируются.NumPyCython

AI Generated using Ideogram 2.0

Добро пожаловать в царство науки о данных, где скорость в основном не является решающим фактором, но как только эти наборы данных вырастут — скажем, терабайты потоковых данных в реальном времени — это может стать довольно большой проблемой. Настолько, что разработчики уже начали переходить от Python к таким языкам, как Julia, разработанным с учетом производительности для численных вычислений. Вы чувствуете здесь ветры перемен, не так ли?

Если вы постоянно боретесь с проблемами скорости Python, возможно, пришло время начать внедрять части вашего конвейера в Julia или Rust для тех частей, где вам действительно нужны пони.

2. Пожирание памяти: маленький грязный секрет Python

Я не знаю почему, но пресса просто не так много внимания уделяет тому, что Python немного пожирает память. Потребление памяти Python может выйти из-под контроля при работе с гигантскими наборами данных, особенно при работе в средах, которые не могут масштабироваться. Это правда, что существуют такие утилиты, которые помогают распараллеливать задачи и управлять памятью, но это скорее обходной путь, чем реальное решение.Dask

Искусственный интеллект создан с использованием Ideogram 2.0

Возьмем, к примеру, Rust. Он не так широко используется в области науки о данных, но завоевывает популярность благодаря эффективности, с которой он обрабатывает память и производительность. Неэффективность Python, однако, до сих пор не была большой проблемой, но с развитием IoT и периферийных вычислений это может стать переломным моментом из-за того, что ресурсы там очень ограничены.

Представьте себе, что вы запускаете скрипт Python на Raspberry Pi для запуска некоторой модели машинного обучения, а затем он вылетает, потому что ваш скрипт просто съел всю доступную память. Расстраивает, правда?

3. Рост предметно-ориентированных языков (DSL)

Это шокирует большинство из вас, но рост числа предметно-ориентированных языков может ослабить доминирование Python. Почему? По моему мнению, самая важная причина заключается в том, что по мере развития отраслей им нужны инструменты, которые соответствуют требованиям таких отраслей.

Возьмем, к примеру, R. Несмотря на то, что Python обогнал его в последние годы, он остается лидером в мире статистики. И давайте не будем забывать о SQL, который, несмотря на отличные библиотеки обработки данных Python, остается основным инструментом для работы с базами данных. На самом деле, Python часто отходит на второй план, когда специалисты по обработке и анализу данных погружаются в серьезные запросы к базам данных или статистический анализ.

Искусственный интеллект создан с использованием Ideogram 2.0

Другой пример? Система Mathematica. Несмотря на то, что Python сделал все возможное, чтобы догнать его в области символьных вычислений, система Mathematica по-прежнему превосходит Python в математическом анализе и решении символических задач.SymPy

В противовес этим более специализированным инструментам, Python, пожалуй, лучше всего описать как

Умеет всё, да по чуть-чуть.

4. Парадокс кривой обучения: Python может быть слишком простым

Да, я это сказал. Эндемичная простота Python может на самом деле навредить. Позвольте мне объяснить: Python часто рекламируют как язык с простым синтаксисом — язык, который даже новички могут освоить довольно быстро. Но вот в чем загвоздка — это заставляет разработчиков успокаиваться.

Это легкость, с которой вы что-то делаете, иногда это отвлекает вас от более глубокого изучения того, как работает алгоритм или как работает информатика.

Искусственный интеллект создан с использованием Ideogram 2.0

Теперь перейдем к таким языкам, как Julia, созданным для научных вычислений и встроенным в более интуитивно понятные структуры для продвинутого математического моделирования.

Конечно, Python упрощает работу, но иногда простота использования идет за счет более глубокого мастерства. Это все равно, что вечно ездить на велосипеде с тренировочными колесами — это работает, но действительно ли вы становитесь лучшим велосипедистом?

Python хорош до тех пор, пока вы не поймете, что вам нужен второй язык, чтобы полностью понять, что происходит под капотом.

5. Фреймворки, ориентированные на ИИ, становятся конкурентоспособными

Итак, искусственный интеллект и машинное обучение уже некоторое время являются игровой площадкой Python. , , — что угодно, они все назвали Python своим домом.TensorFlowPyTorchKeras

Но вот где все становится интересным: появляются и другие языки, ориентированные именно на ИИ, и они могут привлечь к себе внимание.

Искусственный интеллект создан с использованием Ideogram 2.0

Например, Apple активно продвигает Swift для машинного обучения с помощью своего проекта Swift. Почему? Ну, потому что Swift предлагает лучшую производительность для некоторых задач искусственного интеллекта, а его интеграция с экосистемой Apple бесшовна.TensorFlow

Между тем, JAX от Google, хотя на данный момент основан на Python, предоставляет разработчикам новые способы ускорения задач машинного обучения, в то время как этот импульс вполне может вдохновить больше предметно-ориентированных языков на оптимизацию рабочих процессов искусственного интеллекта.

Пайтон уходит в отставку?

Python никуда не денется завтра. Это по-прежнему швейцарский армейский нож среди языков программирования, и на то есть веская причина. Но эта броня, похоже, дает свои трещины по мере того, как область науки о данных растет и диверсифицируется. А с появлением более специализированных инструментов с появлением более быстрых и эффективных языков, специально разработанных для конкретной предметной области, доминирование Python вполне может быть не таким непоколебимым, как раньше.

Искусственный интеллект создан с использованием Ideogram 2.0

Является ли Python по-прежнему королем в науке о данных? На данный момент да. Но она сталкивается с большей конкуренцией, чем когда-либо, и если она не сможет адаптироваться, мы можем просто стать свидетелями свержения. Как напоминает нам поговорка:

Трон кода стабилен настолько, насколько устойчив следующий прорыв.

The throne of code is only as stable as the next breakthrough.

Спасибо за прочтение! Пожалуйста, поделитесь своим отзывом в комментариях и подпишитесь на меня в социальных сетях, если вам понравилась статья. Я также создал сообщество Telegram, где мы можем собираться и обсуждать интересные темы, связанные с криптовалютой. Вы можете присоединиться к нам и принять участие в обсуждении → Telegram: Contact @razgules