diff --git a/docs/15.大数据与MapReduce.md b/docs/15.大数据与MapReduce.md index e69de29b..3fd7d388 100644 --- a/docs/15.大数据与MapReduce.md +++ b/docs/15.大数据与MapReduce.md @@ -0,0 +1,42 @@ +# 大数据与MapReduce + +> 本章内容 + +* MapReduce +* Python中Hadoop流的使用 +* 使用mrjob库将MapReduce自动化 +* 利用Pegasos算法并行训练支持向量机 + +## MapReduce:分布式计算的框架 + +``` +优点:可在短时间内完成大量工作。 +缺点:算法必须经过重写,需要对系统工程有一定的理解。 +适用数据类型:数值型和标称型数据。 +``` + +* MapReduce集群的示意图 +![MapReduce集群的示意图](/images/15.BigData_MapReduce/MR_1_cluster.jpg) + +> 关于MapRduce的学习要点 + +* 主节点控制MapReduce的作业流程 +* MapReduce的作业可以分成map任务和reduce任务 +* map任务之间不做数据交流,reduce任务也一样 +* 在map和reduce阶段中间,有一个sort和combine阶段 +* 数据被重复存放在不同的机器上,以防止某个机器实效 +* mapper和reducer传输的数据形式为key/value对 + +## Hadoop流 + +## 在Amazon网络服务商运行Hadoop程序 + +## MapReduce上的机器学习 + +## 在Python中使用mrjob来自动化MapReduce + +## 示例:分布式SVM的Pegasos算法 + +## 你真的需要MapReduce吗? + +## 本章小节 diff --git a/docs/6.支持向量机.md b/docs/6.支持向量机.md index 5e397435..90bc5655 100644 --- a/docs/6.支持向量机.md +++ b/docs/6.支持向量机.md @@ -102,7 +102,7 @@ This is the simplest kind of SVM (Called an LSVM) Support Vectors are those data * 我们知道几乎所有的数据都不那么干净, 通过引入松弛变量来允许数据点可以处于分隔面错误的一侧。 * 约束条件: \\(C>=a>=0,\ and\ \sum_{i=1}^{m} a_i·label_i=0\\) * 这里常量C用于控制“最大化间隔”和“保证大部分点的函数间隔小于1.0” 这两个目标的权重。 -* 常量C是一个常数,我们通过调节钙参数得到不同的结果。一旦求出了所有的alpha,那么分隔超平面就可以通过这些alpha来表示。 +* 常量C是一个常数,我们通过调节该参数得到不同的结果。一旦求出了所有的alpha,那么分隔超平面就可以通过这些alpha来表示。 * 这一结论十分直接,SVM中的主要工作就是要求解 alpha. > SVM应用的一般框架 @@ -131,7 +131,7 @@ SVM的一般流程 * 这里指的合适必须要符合一定的条件 * 1.这两个alpha必须要在间隔边界之外 * 2.这两个alpha还没有进行过区间化处理或者不在边界上。 - * 之所以要同时改变2个alpha;原因,我们有一个约束条件:`Σ a[i]*label(i)=0`;如果只是修改一个alpha,很可能导致约束条件失效。 + * 之所以要同时改变2个alpha;原因,我们有一个约束条件: \\(\sum_{i=1}^{m} a_i·label_i=0\\);如果只是修改一个alpha,很可能导致约束条件失效。 ``` SMO伪代码大致如下: diff --git a/images/15.BigData_MapReduce/MR_1_cluster.jpg b/images/15.BigData_MapReduce/MR_1_cluster.jpg new file mode 100644 index 00000000..6bf55a58 Binary files /dev/null and b/images/15.BigData_MapReduce/MR_1_cluster.jpg differ