Задать вопрос

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

Большинство обучающих материалов на тему Data Science используют Python или R, но мне хотелось бы для анализа больших данных / машинного обучения использовать Java, потому что для java много больше вакансий и возможность мобильной разработки. Есть желание выучить java и есть идея сделать аналитический сервис с обработкой большого количества сайтов(парсинг) и огромного количества числовых данных (данные будут классифицироваться и ранжироваться, а система будет предсказывать ранги на будущее). Конечно грубо объяснил свою задачу но все же в чем будет проблема, если я буду использовать java для этого? Скорость работы не критична.
  • Вопрос задан
  • 11078 просмотров
Подписаться 8 Оценить 1 комментарий
Решения вопроса 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
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы