2

我正在尝试使用 XGBOOST 库对销售进行一些预测。但我使用的是 Java API,因为我比 Python 更熟悉 Java。我们还试图验证的另一件事是,在使用相同数据集训练模型时,使用 Python 与 Java 是否会有任何与性能相关的收益。

但问题是我很难找到PandasSciKit等的 Python 等效库。所以我使用以下库来构建 DataFrame,然后对它们进行一些操作。然后将其转储到 CSV 文件中,并再次使用另一个库来读取数据并执行训练和验证数据集的 80/20 拆分。我再次将输出转储到 CSV 文件中,然后将数据读回 XGBOOST 库以创建 DMatrix。

图书馆:

  • 数据框的细木工
  • Weka 用于将数据拆分为 80/20 拆分
  • 用于建模的官方 XGBOOST JVM 包

我知道这不是在 Java 中执行此分析的有效或正确方法。但与此同时,我没有看到任何使用 Java 或 Java 中的任何库完成所有这些操作的示例。

我想检查是否有人使用库的 Java 实现对数据进行了 XGBOOST 分析。此外,如果您在将数据拆分为训练和测试数据集之前使用了任何包来创建 DataFrame、执行操作等。

他将不胜感激任何帮助。

4

1 回答 1

0

我使用 ND4J ( https://github.com/deeplearning4j/nd4j ) 进行 ndarray 操作,并将 XGBoost 的平面矩阵转换为通过 DMatrix 使用。

虽然我主要使用 ndarray 相关操作而不是 DataFrames,但我相信用 JVM 语言实现它们是可行的,没有太多麻烦。

于 2021-09-19T09:26:55.377 回答