目前我正在尝试将模型从 sklearn 导出到 Android。为此,我使用库 sklearn-porter ( sklearn-porter )。

这将从训练好的模型生成一个 Java 类,如下所示:

class DecisionTreeClassifier {

   public static int predict(double[] features) {
        int[] classes = new int[2];

        if (features[350] <= 0.5156863033771515) {
            if (features[568] <= 0.0019607844296842813) {
                if (features[430] <= 0.0019607844296842813) {
                    if (features[405] <= 0.009803921915590763) {
...
}

此文件大小约为 1 MB,因此在 Android Studio 中会出现“代码太大”错误。

这个问题有解决方案吗?

最佳答案

当您使用 export_data=True 执行 porter 时,您还会得到一个小的 java 类,它从 .json 文件中读取 DecisionTree 参数:

porter = Porter(clf, language='java')
output = porter.export(export_data=True)
print(output)

关于java - 使用导出的 sklearn 模型时,Android Studio 中的 "Code too large",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58289249/

10-13 04:42