Компании борются за программистов, способных писать код для машинного обучения и глубокого обучения. Если вам интересны эти темы, возможно, стоит присмотреться к лучшим библиотекам Java, посвящённым машинному обучению, уже сегодня?
![Топ 5 библиотек машинного обучения для Java - 1]()
![Топ 5 библиотек машинного обучения для Java - 2]()
«Сильная сторона Weka заключается в классификации. Так что она идеально подходит приложениям, требующим автоматической классификации данных. Weka также выполняет задачи по кластеризации, прогнозированию, отбору признаков и выявлению аномалий», — говорит Эйб Франк (Eibe Frank), профессор компьютерных наук университета Вайкато в Новой Зеландии.
Набор алгоритмов машинного обучения Weka может быть применён напрямую к базе данных или вызван из вашего собственного кода Java. Он поддерживает несколько стандартных задач по сбору данных, включая предварительную обработку данных, классификацию, кластеризацию, визуализацию, регрессионный анализ и отбор признаков.
Пример использования Weka с Java-кодом: https://weka.wikispaces.com/Use+WEKA+in+your+Java+code
Рабочий процесс в MOA следует простой схеме: сначала выбирается и настраивается поток данных (канал, генератор), затем избирается алгоритм (например, классификатор), задаются его параметры. На третьем шаге выбирается метод оценки или мера, после чего будет получен результат.
Чтобы запустить эксперимент с использованием MOA, пользователь может выбирать между графическим пользовательским интерфейсом (GUI) или командной строкой.
Deeplearning4j — отличный DIY-инструмент для Java-, Scala- и Clojure-программистов, которые работают с Hadoop, фреймворком для разработки и выполнения распределённых программ, работающих на кластерах с тысячами узлов. Hadoop обладает огромной вычислительной мощностью и возможностью обработки практически неограниченного числа параллельных задач.
Глубокие нейронные сети и глубокое обучение с подкреплением (deep reinforcement learning) способны к распознаванию образов и целевому машинному обучению. Это означает, что Deeplearning4j очень полезен для определения моделей и настроений в речи, звуке и тексте. Кроме того, библиотеку можно использовать для обнаружения аномалий в данных временных рядов, таких как финансовые транзакции.
Данный пакет программ поддерживает статистическую обработку естественного языка, кластеризацию, классификацию документов, информационный поиск, вопросы моделирования и другие приложения углублённого изучения.
Главный конёк MALLET — современные инструменты для классификации документов, такие как эффективные стандартные процедуры для преобразования текста. Он поддерживает широкий спектр алгоритмов, включая наивный Байесов алгоритм, дерево принятия решений, алгоритм максимальной Decision Trees и метод максимума энтропии, а также код для анализа работоспособности классификатора.
Это означает, что ELKI крайне полезна в области науки о данных. Этот инструмент успели использовать при изучении звуков кашалотов, космических полётов и прогнозировании трафика.
Возможно, вы знаете другую библиотеку машинного обучения Java, о которой не было рассказано? Делитесь с нами в своих комментариях, интересно узнать, что же мы могли упустить!
По материалам jaxenter
Эллеонора Керри
1 уровень
Топ 5 библиотек машинного обучения для Java
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Алексей Ивашин
8 января 2018, 12:47
Так же есть библиотека JSAT. В ней можно найти алгоритм LDA. "Линейный дискриминантный анализ, а также связанный с ним линейный дискриминант Фишера — методы статистики и машинного обучения, применяемые для нахождения линейных комбинаций признаков, наилучшим образом разделяющих два или более класса объектов или событий."
Которого, к сожалению, нет в Weka.
И так же в JSAT присутствуют основные алгоритмы классификация: Деревья решений, байесовский, логистическая регрессия и прочие
+1
Danila
7 ноября 2017, 13:57
"Пока что ни один язык не стал абсолютным лидером в сфере машинного обучения, но Java — явно в группе фаворитов. " - почти весь ML на питоне, увы
+4
DoDoshka
30 января 2019, 01:47
А почему на питоне все? Неужели Java уступает в этом направлении?
И еще такой вопрос; а смогу ли я писать код на Java для робототехники ?
И еще маленький вопрос; я вот поступил учиться на создателя игр, получив знания в той области, при желании, смогу ли я уйти в сферу писания кода для роботов или вот сейчас популярен космос, космонафтику например.
Спасибо.
0
имир
18 марта 2019, 20:13
Я думаю, на горизонте 5 -7 лет должна вновь поменяться парадигма программирования, на смену объектно - ориентированному программированию придёт что - то новое, один из принципов нового программирования я нашёл, осталось найти ещё 2-3.
0
Danila
17 августа 2019, 16:03
Kotlin и функциональное программирование уже захватили Android и теперь уверенно продвигаются в кровавом энтерпрайзе.
0