25 个 Java 机器学习工具和库

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,5000CU*H 3个月
交互式建模 PAI-DSW,每月250计算时 3个月
简介:

本列表总结了25个Java机器学习工具&库:

  1. Weka集成了数据挖掘工作的机器学习算法。这些算法可以直接应用于一个数据集上或者你可以自己编写代码来调用。Weka包括一系列的工具,如数据预处理、分类、回归、聚类、关联规则以及可视化。

2.Massive Online Analysis(MOA)是一个面向数据流挖掘的流行开源框架,有着非常活跃的成长社区。它包括一系列的机器学习算法(分类、回归、聚类、异常检测、概念漂移检测和推荐系统)和评估工具。关联了WEKA项目,MOA也是用Java编写的,其扩展性更强。

screenshot

3.MEKA项目提供了一个面向多标签学习和评价方法的开源实现。在多标签分类中,我们要预测每个输入实例的多个输出变量。这与“普通”情况下只涉及一个单一目标变量的情形不同。此外,MEKA基于WEKA的机器学习工具包。

  1. Advanced Data mining And Machine learning System(ADAMS)是一种新型的柔性工作流引擎,旨在迅速建立并保持真实世界的复杂知识流,它是基于GPLv3发行的。
  2. Environment for Developing KDD-Applications Supported by Index-Structure(ELKI)是一款基于Java的开源(AGPLv3)数据挖掘软件。ELKI主要集中于算法研究,重点研究聚类分析中的无监督方法和异常检测。
  3. Mallet是一个基于Java的面向文本文件的机器学习工具包。Mallet支持分类算法,如最大熵、朴素贝叶斯和决策树分类。
  4. Encog是一个先进的机器学习框架,集成了支持向量机(SVM)、人工神经网络、遗传算法、贝叶斯网络、隐马尔可夫模型(HMM)、遗传编程和遗传算法。
  5. Datumbox机器学习框架是一个用Java编写的开源框架,允许快速地开发机器学习和统计应用。该框架的核心重点包括大量的机器学习算法以及统计测试,能够处理中等规模的数据集。
  6. Deeplearning4j是使用Java和Scala编写的第一个商业级的、开源的、分布式深入学习库。其设计的目的是用于商业环境中,而不是作为一个研究工具。
  7. Mahout是一个内置算法的机器学习框架。Mahout-Samsara帮助人们创建他们自己的数学,并提供了一些现成的算法实现。

11.Rapid Miner是德国多特蒙特技术大学开发的。它为开发者开发应用程序提供了一个GUI(图形用户界面)和Java API。它还提供了一些机器学习算法,用来做数据处理、可视化以及建模。

  1. Apache SAMOA是 一个机器学习(ML)框架,内嵌面向分布式流ML算法的编程抽象,并且允许在没有直接处理底层分布式流处理引擎(DSPEe,如 Apache Storm、Apache S4和Apache samza)复杂性的情况下,开发新的ML算法。用户可以开发分布式流ML算法,而且可以 在多个DSPEs上执行。
  2. Neuroph通过提供支持创建、训练和保存神经网络的Java网络库和GUI工具,简化了神经网络开发。
  3. Oryx 2是一个建立在Apache Spark和Apache Kafka的Lambda架构实现,但随着实时大规模机器学习而逐渐开始专业化。这是一个用于构建应用程序的框架,但也包括打包,以及面向协同过滤、分类、回归和聚类的端到端的应用程序。
  4. Stanford Classifier是一个机器学习工具,它可以将数据项归置到一个类别。一个概率分类器,比如这个,它可以对一个数据项给出类分配的概率分布。该软件是最大熵分类器的一个Java实现。

16.io是一个Retina API,有着快速精确的类似大脑的自然语言处理算法。

17.JSAT是一个快速入门的机器学习库。该库是我在业余时间开发的,基于GPL3发行的。库中的一部分内容可自主学习,例如所有的代码都是独立的。JSAT没有外部依赖,而且是纯Java编写的。

  1. N-Dimensional Arrays for Java(ND4J)是一个用于JVM的科学计算库。它们是用来在生产环境中使用的,这表明例程的设计是以最小的内存需求来运行的。
  2. Java Machine Learning Library(Java机器学习库)是一系列机器学习算法的相关实现。这些算法,无论是源代码还是文档,都编写的很出色。其主要语言是Java。
  3. Java-ML是一个使用Java编写的一系列机器学习算法的Java API。它只提供了一个标准的算法接口。
  4. MLlib (Spark)是Apache Spark的可扩展机器学习库。虽然是Java,但该库与平台还支持Java,Scala和Python绑定。此库是最新的,并且算法很多。
  5. H2O是用于智能应用的机器学习API。它在大数据上对统计学、机器学习和数学进行了规模化。H2O可扩展,开发者可以在核心部分使用简单的数学知识。
  6. WalnutiQ是人脑部分面向对象模型,有着理论常用的学习算法(正在向简单强烈的情感人工智能模型方向研究)。
  7. RankLib是一个排名学习算法库。目前已经实现八种流行的算法。
  8. htm.java(基于Java的Hierarchical Temporal Memory算法实现)是一个面向智能计算的Numenta平台的Java接口。源码

====================================分割线================================
文章转载自 开源中国社区[http://www.oschina.net]

相关实践学习
使用PAI-EAS一键部署ChatGLM及LangChain应用
本场景中主要介绍如何使用模型在线服务(PAI-EAS)部署ChatGLM的AI-Web应用以及启动WebUI进行模型推理,并通过LangChain集成自己的业务数据。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
目录
相关文章
|
20天前
|
监控 Java 测试技术
Java开发现在比较缺少什么工具?
【10月更文挑战第15天】Java开发现在比较缺少什么工具?
31 1
|
6天前
|
Java API Apache
|
12天前
|
Java 数据格式 索引
使用 Java 字节码工具检查类文件完整性的原理是什么
Java字节码工具通过解析和分析类文件的字节码,检查其结构和内容是否符合Java虚拟机规范,确保类文件的完整性和合法性,防止恶意代码或损坏的类文件影响程序运行。
|
12天前
|
Java API Maven
如何使用 Java 字节码工具检查类文件的完整性
本文介绍如何利用Java字节码工具来检测类文件的完整性和有效性,确保类文件未被篡改或损坏,适用于开发和维护阶段的代码质量控制。
|
15天前
|
Web App开发 Java
使用java操作浏览器的工具selenium-java和webdriver下载地址
【10月更文挑战第12天】Selenium-java依赖包用于自动化Web测试,版本为3.141.59。ChromeDriver和EdgeDriver分别用于控制Chrome和Edge浏览器,需确保版本与浏览器匹配。示例代码展示了如何使用Selenium-java模拟登录CSDN,包括设置驱动路径、添加Cookies和获取页面源码。
|
1月前
|
Java 流计算
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
35 1
Flink-03 Flink Java 3分钟上手 Stream 给 Flink-02 DataStreamSource Socket写一个测试的工具!
|
14天前
|
机器学习/深度学习 并行计算 数据挖掘
R语言是一种强大的统计分析工具,广泛应用于数据分析和机器学习领域
【10月更文挑战第21天】R语言是一种强大的统计分析工具,广泛应用于数据分析和机器学习领域。本文将介绍R语言中的一些高级编程技巧,包括函数式编程、向量化运算、字符串处理、循环和条件语句、异常处理和性能优化等方面,以帮助读者更好地掌握R语言的编程技巧,提高数据分析的效率。
35 2
|
22天前
|
JSON JavaScript Java
在Java中处理JSON数据:Jackson与Gson库比较
本文介绍了JSON数据交换格式及其在Java中的应用,重点探讨了两个强大的JSON处理库——Jackson和Gson。文章详细讲解了Jackson库的核心功能,包括数据绑定、流式API和树模型,并通过示例演示了如何使用Jackson进行JSON解析和生成。最后,作者分享了一些实用的代码片段和使用技巧,帮助读者更好地理解和应用这些工具。
在Java中处理JSON数据:Jackson与Gson库比较
|
26天前
|
小程序 Oracle Java
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
这篇文章是关于JVM基础知识的介绍,包括JVM的跨平台和跨语言特性、Class文件格式的详细解析,以及如何使用javap和jclasslib工具来分析Class文件。
35 0
JVM知识体系学习一:JVM了解基础、java编译后class文件的类结构详解,class分析工具 javap 和 jclasslib 的使用
|
27天前
|
Java C++
做了个Java打包工具,可以双击启动了!
本文介绍了作者日常使用Java和Swing进行开发的经验,以及Java程序分发时遇到的问题,如需要JRE环境。文中列举了几种常见的Java程序打包方法,并对比了各自的优缺点,最后作者结合这些方案,利用Winform开发了一款工具,将Java程序打包成二进制可执行文件,简化了分发流程。
做了个Java打包工具,可以双击启动了!