c# - 如何保存 Accord.Net K-Means 的聚类结果以供重复使用?

标签 c# k-means accord.net

我正在尝试保存 Accord.Net K-Means 的聚类结果,这样我就不必在每次运行我的程序时都重新计算。

我还想为每个集群分配永久性的人类可读标签。如果我每次都必须计算集群,这是不可能的。

最佳答案

在 Accord.NET 中,每个对象都可以使用标准的 .NET 二进制序列化来保存。这意味着您可以使用以下方式保存 K-Means:

KMeans kmeans = ...

using (FileStream fs = new FileStream(path, FileMode.Create))
{
    new BinaryFormatter().Serialize(fs, kmeans);
}    

并使用以下方法加载它:

KMeans kmeans = null;

using (FileStream fs = new FileStream(path, FileMode.Open))
{
    kmeans = new BinaryFormatter().Deserialize(fs) as KMeans;
}    

希望对您有所帮助!

关于c# - 如何保存 Accord.Net K-Means 的聚类结果以供重复使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32730157/

相关文章:

c# - 正则表达式没有给出预期的输出

C# 查找套接字 ID?

c# - 图像缓存、HTTPHandler 和 FormsAuthentication

c# - aforge.net 中的过滤器不支持源像素格式

datatable - Asp Core 1.1、DataTable两者都存在

c# - 当我们开始使用 Accord 捕获视频时,CPU 和内存消耗会变高

c# - Linq Lambda 表达式 == 和等于运算符

python - pandas 数据框对象将与 sklearn kmeans 聚类一起使用吗?

python - 内存有限的kmeans聚类

machine-learning - Weka 的 SimpleKMeans 聚类器中的 "seed"是什么?