## Pipeline
> 在机器学习中,通常运行一系列算法来处理和学习数据集。例如:
* 将每个文档的文本拆分为标记。
* 将每个文档的单词转换为数字特征向量。
* 使用特征向量和标签学习预测模型。
PHP-ML表示像Pipeline这样的工作流程,它包含变换器序列和估计器。
### 构造函数参数
`$transformers`(array | Transformer []) - 实现Transformer接口的对象序列
`$estimator`(Estimator) - 可以训练和预测的估算器
```
use Phpml\Classification\SVC;
use Phpml\FeatureExtraction\TfIdfTransformer;
use Phpml\Pipeline;
$transformers = [
new TfIdfTransformer(),
];
$estimator = new SVC();
$pipeline = new Pipeline($transformers, $estimator);
```
*****
### 例
首先,我们的管道替换缺失值,然后标准化样本,最后训练SVC估计。这样制备的管道重复预测样品的每个转化步骤。
```
use Phpml\Classification\SVC;
use Phpml\Pipeline;
use Phpml\Preprocessing\Imputer;
use Phpml\Preprocessing\Normalizer;
use Phpml\Preprocessing\Imputer\Strategy\MostFrequentStrategy;
$transformers = [
new Imputer(null, new MostFrequentStrategy()),
new Normalizer(),
];
$estimator = new SVC();
$samples = [
[1, -1, 2],
[2, 0, null],
[null, 1, -1],
];
$targets = [
4,
1,
4,
];
$pipeline = new Pipeline($transformers, $estimator);
$pipeline->train($samples, $targets);
$predicted = $pipeline->predict([[0, 0, 0]]);
// $predicted == 4
```
- 基本介绍
- 关联规则学习
- 分类
- SVC
- k近邻算法
- NaiveBayes
- 回归
- 最小二乘法
- SVR
- 聚类
- k均值聚类算法
- DBSCAN聚类算法
- 公
- 准确性
- 混乱矩阵
- 分类报告
- 工作流程
- 神经网络
- 交叉验证
- 随机拆分
- 分层随机分裂
- 特征选择
- 方差阈值
- 特征选择
- 预处理
- 标准化
- 缺失值补全
- 特征提取(自然语言)
- 令牌计数矢量化器(文本处理)
- Tf-idf转换
- 数据集
- ArrayDataset
- CsvDataset
- FilesDataset
- SvmDataset
- MnistDataset
- 准备使用数据集
- Iris Dataset
- Wine Dataset
- Glass Dataset
- 模型管理
- 数学
- 距离
- 矩阵
- 组
- 统计