微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Accord.net将多个对象保存/加载到文件中

如何解决Accord.net将多个对象保存/加载到文件中

我一直在使用Accord.net框架,并创建了一个朴素的贝叶斯分类器,该分类器使用码本将符号表示形式转换为数字表示形式。 Accord.net框架具有Serialization类,可让您轻松地将任何对象(如朴素贝叶斯分类器或代码本)保存为二进制文件。但是,我需要在一个文件中同时包含朴素贝叶斯分类器和代码簿(而不是单独的文件)。有什么办法可以处理这种情况?尽管进行了搜索,但我还没有找到答案。另外,我想在文件添加一个字符串属性,该属性告诉我我保存了哪种分类器“类型”(因为我希望能够序列化/反序列化其他类型的模型)。有什么方法可以将自定义属性添加到Accord.net框架中的单个保存的二进制文件中? 现在,我的代码如下所示(但是,这只是保存朴素的贝叶斯分类器,而不是代码本或字符串属性):

if (naiveBayesWrapper != null)
{
    System.Windows.Forms.SaveFileDialog dialog = new System.Windows.Forms.SaveFileDialog();
    dialog.Title = "Save Naive Bayes Classifier";
    dialog.Filter = "Generic Binary File (*.bin)|*.bin";
    dialog.FilterIndex = 1;
    if (dialog.ShowDialog() == DialogResult.OK)
    {
        string fullpath = Path.GetFullPath(dialog.FileName);
        Serializer.Save(naiveBayesWrapper.naiveBayes,fullpath);
    }
}
else
{
    System.Windows.Forms.MessageBox.Show("No valid classifier found. Please create a valid naive bayes classifier before trying to save.");
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。