Oracle开源Java机器学习库

为了满足机器学习领域的企业需求,Oracle正在开源许可证下免费提供其Tribuo Java机器学习库。

Oracle希望通过Tribuo来简化在Java中建立和部署机器学习模型的工作,这与Python已经发生的情况类似。下一个发布的Apache 2.0许可和开发由Oracle实验室,Tribuo 是从访问GitHub上和Maven的中央。

Tribuo提供了标准的机器学习功能,包括分类,聚类,异常检测和回归的算法。Tribuo还包括用于加载和转换数据的管道,并为支持的预测任务提供了一套评估。

由于Tribuo收集有关输入的统计信息,因此Tribuo可以描述每个输入的范围,例如。它还在引擎盖下命名要素,管理要素ID和输出ID,以避免在链接模型,加载数据和使输入具有特色时ID冲突和混乱。

Tribuo模型知道它何时首次看到功能,这在使用自然语言处理时特别有用。模型知道什么是输出,并且输出具有强类型。开发人员无需怀疑浮动是概率,回归值还是群集ID。

对于Tribuo,每个都是单独的类型。该模型可以描述它知道的类型和范围。使用强类型输入和输出意味着Tribuo可以跟踪模型构建过程,从点数据通过训练/测试拆分或数据集转换到模型训练和评估来加载。该跟踪数据被烘焙到所有模型和评估中。

Tribuo出处系统可以生成一个配置,该配置可以重建训练流水线以重现模型或评估。同样,可以在新数据或超参数上构建经过调整的模型。因此,用户始终知道Tribuo模型是什么,它来自哪里以及如何创建。

Oracle认为Tribuo填补了企业应用程序机器学习市场的空白。例如,虽然Google建立的TensorFlow库 提供了深度学习的核心算法,但Tribuo提供了几种机器学习算法,其中一些在TensorFlow中,而另一些则不在,同时还提供了与TensorFlow的接口,Oracle的Adam Pocock说, Oracle Labs技术人员的主要成员。

Pocock表示,虽然Apache Spark分析引擎适用于大型分布式系统,但Tribuo适用于可容纳在一台计算机上的较小计算。

除TensorFlow之外,Tribuo还提供了XGBoost 和ONNX运行时的接口 ,从而允许将以ONNX格式存储或在TensorFlow和XGBoost中训练的模型与本机Tribuo模型一起部署。对ONNX模型格式的支持允许在Java中部署使用流行的Python库(例如PyTorch)训练的模型。

Tribuo在Java 8或更高版本上运行。Oracle 根据Oracle贡献者协议接受对 Tribuo的代码贡献。例如,甲骨文内部已将Tribuo用于Fusion Cloud ERP产品中的智能文档识别。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。