我应该使用什么数据结构来存储我的朴素贝叶斯分类器的数据集?

时间:2015-09-04 02:12:35

标签: ruby data-structures machine-learning naivebayes

我正在使用我自己的朴素贝叶斯分类器版本。现在我用标签字符串和功能的哈希/字典训练它。

以下是我使用的训练集的一个示例:

classifier.train(:male, { height: 6, weight: 180, foot_size: 12 })
classifier.train(:male, { height: 5.92, weight: 190, foot_size: 11 })
classifier.train(:male, { height: 5.58, weight: 170, foot_size: 12 })
classifier.train(:male, { height: 5.92, weight: 165, foot_size: 10 })
classifier.train(:female, { height: 5, weight: 100, foot_size: 6 })
classifier.train(:female, { height: 5.5 , weight: 150, foot_size: 8 })
classifier.train(:female, { height: 5.42, weight: 130, foot_size: 7 })
classifier.train(:female, { height: 5.75, weight: 150, foot_size: 9 })

到目前为止,我需要计算每个标签的计数/总数,每个要素的总数以及每个标签内每个要素的数量。

我应该使用什么数据结构来简化/帮助进行这些计算?

1 个答案:

答案 0 :(得分:0)

您可以创建一个类型为人的类/结构

class Person {
      string gender;
      float height;
      float weight;
      int foot_size;
}

然后您可以创建包含这些对象的数组。 人[]人; 使用适当的属性添加任意数量的对象,然后循环遍历数组以计算每个标签。