В чем преимущество Python перед Java для анализа больших данных / машинного обучения?

Большинство обучающих материалов на тему Data Science используют Python или R, но мне хотелось бы для анализа больших данных / машинного обучения использовать Java, потому что для java много больше вакансий и возможность мобильной разработки. Есть желание выучить java и есть идея сделать аналитический сервис с обработкой большого количества сайтов(парсинг) и огромного количества числовых данных (данные будут классифицироваться и ранжироваться, а система будет предсказывать ранги на будущее). Конечно грубо объяснил свою задачу но все же в чем будет проблема, если я буду использовать java для этого? Скорость работы не критична.
  • Вопрос задан
  • 11009 просмотров
Решения вопроса 3
@zedxxx
Если душа лежит к Java так и карты в руки, тем более, что она будет по-шустрее питона.
Преимущество питона в его простоте и лаконичности. Java же просто охренительно многословна.
Ответ написан
Комментировать
@lPolar
data scientist
ИМХО, Python.
Причина - предельная простота языка + набор готовых библиотек.
Парсите сайты параллельно через grab, который оперирует C-библиотеками (lxml) в удобной питоновой обертке.
Далее, если у вас данных <10 GB после парсинга - берите машинку с большим объемом оперативки, и используйте pandas +sklearn+hdf5 storage для хранения.
Если данных >10 GB - берите распределенный кластер и pyspark + hive для хранения и моделей
Java вам при решении data science задач не поможет - все равно python оперирует библиотеками с C-модулями и функциями (pandas/sklearn) или pyspark, это та же производительность Java, но в удобной обертке.
Ответ написан
Комментировать
neuotq
@neuotq
Прокрастинация
В целом Java ранее была практически стандартом для большого ПО, в тех же корпорациях, где датамайнинг был востребованной функцией, поэтому ее популярность обсуловленна инерцией.
Плюс один из самых популярных инструментов для mapreduce написан на java - Hadoop, хотя чтобы его использовать не обязательно писать на java.
В пайтоне есть хорошее и быстрая мат библиотека, плюс во многих университетах он почти стандарт в обучении и студенты/професура потом ип родолжает делать проекты на нем.
Ну а про R я думаю объяснять не нужно. Я бы именно его выбрал для ядра системы.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
@some1else
Я бы обязательно посмотрел в сторону Scala - внутри тот же JVM, так же есть возможность писать для Hadoop (даже есть библиотеки - Scalding, например), но код гораздо лаконичнее, и часто даже выразительнее, чем на Python
Ответ написан
Комментировать
@asd111
Python проще. Можно написать алгоритм быстрее чем на другом языке.
Можно и на Java. Многие программы для анализа данных написаны на Java - например софт от IBM.
Ответ написан
Комментировать
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Потому что под Python есть SciPy
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
SpectrumData Екатеринбург
от 150 000 до 200 000 ₽
Гринатом Москва
от 150 000 ₽
DIGITAL SECTOR Краснодар
от 150 000 до 250 000 ₽
23 июн. 2024, в 07:50
40000 руб./за проект
23 июн. 2024, в 07:31
600 руб./в час
23 июн. 2024, в 05:23
1500 руб./за проект