地图归约/Hadoop非常适合从各种资源的大量数据中获取洞察,并按照我们希望的方式组织这些数据。
但在训练方面,我的印象是我们必须一次性将所有训练数据导入算法(无论是支持向量机、逻辑回归还是随机森林),这样算法才能构建出一个包含所有信息的模型。地图归约/Hadoop能在训练部分提供帮助吗?如果可以,一般是如何帮助的?
回答:
是的。有许多地图归约的实现方式,比如Hadoop流处理,甚至一些简单的工具如Pig,都可以用于学习。此外,还有一些基于地图归约构建的分布式学习工具集,例如vowpal wabbit(https://github.com/JohnLangford/vowpal_wabbit/wiki/Tutorial)。这种方法的核心思想是对数据的小部分(由HDFS分割)进行训练,然后对模型进行平均和节点间的通信。因此,模型可以直接从基于部分数据构建的子模型中获得更新。