Mahout中分布式bayes实现(转)

来源:互联网 发布:mpp文件用什么打开mac 编辑:程序博客网 时间:2024/06/14 08:53

Mahout中的bayes实现分为三部分,

1.   样本构建; 通过org.apache.mahout.classifier.BayesFileFormatter来实现,它将一组文件转换成label\t term1 term2 term3 …这样的格式,供后面分类器构造和分类时使用; 代码分析在前几篇博文中提供了;

2.   训练; 通过org.apache.mahout.classifier.bayes.TrainClassifier实现,它会调用BayesDriver来构建的map reduce类,它们会生成Bayes中间的参数信息,供分类时使用;

3.   测试分类; 通过 org.apach.mahout.classifier.bayes.TestClassifier 实现,它分为串行执行和并行执行两种; 这部分分类前要先调用org.apache.mahout.classifier.bayes.datastore中的一个DataStore类型,由于笔者对于HBase不了解,所以会在后面介绍InMemoryBayesDatastore这个类,它会在分类前被初始化,初始化的对象中保存了在第二步得到的中间参数信息。

BayesFileFormatter源码注释:http://anqiang1900.blog.163.com/blog/static/11418886420103252411298/

BayesFeatureMapper:http://anqiang1900.blog.163.com/blog/static/11418886420103643818519/

BayesTfIdfMapper:http://anqiang1900.blog.163.com/blog/static/11418886420103644331747/

BayesWeightSummerMapper:http://anqiang1900.blog.163.com/blog/static/11418886420103644648280/