问题标签 [smile]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
92 浏览

java - 如何使用距离矩阵创建 CLARANS 集群?

当我使用带有坐标的 CLARANS 集群时,集群是成功的。当我尝试使用距离矩阵编写聚类时,点的分组不正确。我使用haifengl/smilegit 存储库,其中包含我需要的所有集群。我附上了一段带有距离矩阵的代码和两个带有簇输出的 .png 文件。 在此处输入图像描述- 带坐标 - 带在此处输入图像描述距离矩阵

https://drive.google.com/open?id=1lKYQep_yppJP3rhY_n-vZIvKJDbcrfpj - 距离矩阵文件

0 投票
3 回答
560 浏览

java - java - 如何使用肘部方法获得最佳簇数?

我使用haifengl/smile并且我需要获得最佳簇数。

我正在使用CLARANS需要指定要创建的集群数量的地方。我认为也许有一些解决方案可以整理出例如从 2 到 10 个集群,查看最佳结果并选择具有最佳结果的集群数量。肘部方法如何做到这一点?

0 投票
1 回答
357 浏览

smile - 如何在 tech.tablesaw.api.Table 上设置值?

我有一个由 SQL 结果集填充的 tech.tablesaw.api.Table。但我想在运行 SMILE 之前用其他值覆盖其中一列(下面的 setValue 方法不存在,但我正在寻找类似的东西)。表对象是只读的吗?或者有没有办法做到这一点?谢谢!

0 投票
1 回答
907 浏览

java - java.lang.UnsatisfiedLinkError:java.library.path 中没有 mkl_rt

我在 windows10 中有一个使用微笑库的 java8 应用程序。例如,当我运行 LLE 算法时,我收到了以下警告:

Smile-netlib 模块在类路径中不可用。将使用纯 Java 矩阵库。所以我决定通过 maven 添加微笑 ntelib,正如 github 中的微笑所建议的那样。但是再次运行后,我得到了这个堆栈跟踪:

1) mkl_rt 是什么,我如何将它插入到 java 中?这意味着数学内核库?2) 微笑还建议“让他们的机器优化 libblas3 (CBLAS) 和 liblapack3 (Fortran) 在运行时作为共享库可用。” 我怎样才能做到这一点?

编辑:

我找到并下载了 mkl_rt.dll 并将其放在一个名为 dlls 的文件夹中。我当前的问题是,通过在 java.library.path 中设置带有 mkl_rt 的文件夹,它会找到 dll,但找不到来自其他依赖项的函数。我在问题开始的微笑网络库中找到了这段代码。

在此处输入图像描述

JMatrix(蓝色)是smile.math.matrix包中smile-math jar中的一个类,所以当我通过vm参数、编程方式或通过本地位置的eclipse添加路径时,dllsmile-netlib NLMatrix类找不到JMatrix 类是smile-netlib,我收到以下错误。

0 投票
1 回答
284 浏览

scala - 微笑scala api:从数组创建数据框

我正在尝试将微笑集成到我的 scala 代码库中。特别是,我想训练一个随机森林分类器。在FAQ中是这样写的:

大多数 Smile 算法都将简单的 double[] 作为输入。因此,只要样本在双数组中,您就可以使用您喜欢的方法或库来导入数据。

但 RandomForest 似乎并非如此,所有拟合方法似乎都以公式和数据框作为输入。就我而言,我有两个 Array[Array[Double]] 包含两个不同类的示例:例如,第一个应标记为 0,第二个应标记为 1。第一个数组具有形状 (n_samples_0, n_features) 和第二个 (n_samples_1, n_features)

据我所知,在此数据上训练微笑 randomForest 的唯一方法是首先将这两个数组转换为一个微笑数据帧,其中包含 n_features + 1 列(每个特征一个 + 标签一个)和 n_samples_0 + n_samples_1 行. 接着:

因此我的问题是:有没有办法从 Scala API 中的数组创建数据框?我只能通过读取不同的文件格式来找到创建 Dataframe 的方法。

0 投票
0 回答
60 浏览

scala - 微笑 - 模型持久性 - 如何将模型写入 HDFS?

我正在尝试在使用 Spark 和 HDFS 的 Scala 项目中使用Smile。为了模型的可重用性,我需要将它们写入 HDFS。

现在我正在使用写入对象,预先检查路径是否存在,如果不存在则创建它(否则它会抛出 FileNotFoundException):

但这会在本地创建路径“hdfs:/my/hdfs/path”并将模型写入其中,而不是实际写入 HDFS。
请注意,使用 spark 模型及其保存方法有效:

因此我的问题是:如何将微笑模型写入 HDFS?
同样,如果我设法将模型写入 HDFS,我可能还会想知道如何从 HDFS 读取模型。

谢谢!

0 投票
1 回答
76 浏览

cluster-analysis - 如何创建大小相等的集群

我有一大堆数据。无论集群的数量是多少,我都想创建大小相等的集群。我为此使用 SMILE 库。我应该使用什么聚类方法或如何实现具有相同大小的聚类的聚类。

0 投票
1 回答
33 浏览

scala - 如何使用 Windows 中的脚本在 Scala 中运行微笑命令?

我是新来的微笑

例如,我可以在 REPL 中逐行运行教程中的这段代码:

但是,当我将其放入脚本文件iris_knn.sc并执行命令时:

我收到错误:

我究竟做错了什么?我在文档中找不到。

编辑:WSL2 Ubuntu 中的相同错误。

0 投票
0 回答
61 浏览

java - 将微笑文件转换为 Json 文件

jackson-dataformats-binary smile模块是否包含一些实用方法可以轻松地将微笑文件转换为 Json 文件?

我可以使用 将SmileMapper #readValue(File src, Class<T> valueType)文件加载到 Java 对象中,然后使用 Json ObjectMapper #writeValue(File resultFile, Object value)

因为我有一个非常大的微笑文件,所以它会使用相当多的内存来首先将值存储在 Java 变量中,然后再次写入。我对拥有那个 Java 对象不感兴趣。我只想在 Java 程序中完成从微笑文件到 Json 文件的纯转换。

0 投票
0 回答
26 浏览

concurrency - 微笑随机森林中的空指针异常预测并发用户

当我使用 2 个并发用户调用微笑库的 predict 方法时,出现以下错误。我正在使用 Gatling 和 akka http 网络服务。升级到 2.6 的微笑并没有解决问题。当我按顺序运行请求时,问题不会发生。