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 (将#修改为@)