mirror of
https://github.com/apachecn/ailearning.git
synced 2026-05-09 15:52:33 +08:00
更新 15项目案例
This commit is contained in:
@@ -10,14 +10,14 @@
|
||||
## 大数据 场景
|
||||
|
||||
```
|
||||
假如你为一家网络购物商店工作,很多拥护访问该网站,其中有些人会购买商品,有些人则随意浏览后就离开。
|
||||
假如你为一家网络购物商店工作,很多用户访问该网站,其中有些人会购买商品,有些人则随意浏览后就离开。
|
||||
对于你来说,可能很想识别那些有购物意愿的用户。
|
||||
那么问题就来了,数据集可能会非常大,在单机上训练要运行好几天。
|
||||
接下来:我们讲讲 Hadoop 如何来解决这样的问题
|
||||
接下来:我们讲讲 MapRedece 如何来解决这样的问题
|
||||
```
|
||||
|
||||
|
||||
## MapReduce
|
||||
## MapRedece
|
||||
|
||||
### Hadoop 概述
|
||||
|
||||
@@ -79,21 +79,21 @@ cat input/15.BigData_MapReduce/inputFile.txt | python src/python/15.BigData_MapR
|
||||
|
||||
#### Mahout in Action
|
||||
|
||||
1. 简单贝叶斯:
|
||||
2. k-近邻算法:
|
||||
1. 简单贝叶斯:它属于为数不多的可以很自然的使用MapReduce的算法。通过统计在某个类别下某特征的概率。
|
||||
2. k-近邻算法:高维数据下(如文本、图像和视频)流行的近邻查找方法是局部敏感哈希算法。
|
||||
3. 支持向量机(SVM):使用随机梯度下降算法求解,如Pegasos算法。
|
||||
4. 奇异值分解:Lanczos算法是一个有效的求解近似特征值的算法。
|
||||
5. k-均值聚类:canopy算法初始化k个簇,然后再运行K-均值求解结果。
|
||||
|
||||
#### 使用 mrjob 库将 MapReduce 自动化
|
||||
### 使用 mrjob 库将 MapReduce 自动化
|
||||
|
||||
> 理论简介
|
||||
|
||||
* MapReduce作业流自动化的框架:Cascading 和 Oozie.
|
||||
* mrjob是一个不错的学习工具,与2010年底实现了开源,来之于Yelp(一个餐厅点评网站).
|
||||
* MapReduce 作业流自动化的框架:Cascading 和 Oozie.
|
||||
* mrjob 是一个不错的学习工具,与2010年底实现了开源,来之于 Yelp(一个餐厅点评网站).
|
||||
|
||||
```Shell
|
||||
python mrMean.py < inputFile.txt > myOut.txt
|
||||
python src/python/15.BigData_MapReduce/mrMean.py < input/15.BigData_MapReduce/inputFile.txt > input/15.BigData_MapReduce/myOut.txt
|
||||
```
|
||||
|
||||
> 实战脚本
|
||||
@@ -106,11 +106,11 @@ python mrMean.py < inputFile.txt > myOut.txt
|
||||
python src/python/15.BigData_MapReduce/mrMean.py < input/15.BigData_MapReduce/inputFile.txt
|
||||
```
|
||||
|
||||
#### 利用 Pegasos 算法并行训练支持向量机
|
||||
### 项目案例:分布式 SVM 的 Pegasos 算法
|
||||
|
||||
Pegasos是指原始估计梯度求解器(Peimal Estimated sub-GrAdient Solver)
|
||||
|
||||
> Pegasos 工作原理
|
||||
#### Pegasos 工作原理
|
||||
|
||||
1. 从训练集中随机挑选一些样本点添加到带处理列表中
|
||||
2. 按序判断每个样本点是否被正确分类
|
||||
@@ -130,7 +130,7 @@ Pegasos是指原始估计梯度求解器(Peimal Estimated sub-GrAdient Solver)
|
||||
累加对 w 的更新
|
||||
```
|
||||
|
||||
> 开发流程
|
||||
#### 开发流程
|
||||
|
||||
```
|
||||
收集数据:数据按文本格式存放。
|
||||
@@ -141,6 +141,11 @@ Pegasos是指原始估计梯度求解器(Peimal Estimated sub-GrAdient Solver)
|
||||
使用算法:本例不会展示一个完整的应用,但会展示如何在大数据集上训练SVM。该算法其中一个应用场景就是本文分类,通常在文本分类里可能有大量的文档和成千上万的特征。
|
||||
```
|
||||
|
||||
> 训练算法
|
||||
|
||||
[完整代码地址](https://github.com/apachecn/MachineLearning/blob/master/src/python/2.KNN/kNN.py): <https://github.com/apachecn/MachineLearning/blob/master/src/python/2.KNN/kNN.py>
|
||||
|
||||
|
||||
我们继续看 Python 版本的代码实现。
|
||||
|
||||
* * *
|
||||
|
||||
Reference in New Issue
Block a user