forked from qieangel2013/phpml
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathregression.php
50 lines (49 loc) · 1.24 KB
/
regression.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?php
require_once 'vendor/autoload.php';
use Phpml\Regression\LeastSquares;
use Phpml\Regression\SVR;
/*
我们现在对一支股票进行预测
张氏股从2010年开始
2010年单股价123.5$
2011年单股价124.5$
2012年单股价134.5$
2013年单股价144$
2014年单股价144.7$
2015年单股价154.5$
2016年单股价184.5$
我们根据每年的股价涨势计算出
2010年 涨1.1%
2011年 涨1.2%
2012年 涨2.1%
2013年 涨3.1%
2014年 涨3.3%
2015年 涨4.1%
2016年 涨5.1%
*/
/*将上面的数据放入$samples数组里
*/
$samples = [[2010], [2011], [2012], [2013], [2014], [2015],[2016]];
/*
在labels中存入每年的股价涨势
*/
$labels = [1.1, 1.2, 2.1, 3.1, 3.3, 4.1,5.1];
/*
下面我们采用最小二乘法逼近线性模型进行预测
*/
$regression = new LeastSquares();
/*
下面我们采用libsvm的向量回归进行预测
*/
$regression = new SVR(Kernel::LINEAR);
/* 对其进行训练 */
$regression->train($samples, $labels);
/*
如果我们想知道2017年张氏股的涨势是什么样的,我们用最小二乘法逼近线性模型来进行预测
*/
print_r($regression->predict([2017]));
// return 5.53667
/*
我们预测的结果是涨势5.53%
该实例采用回归的最小二乘法算法和向量回归来进行预测的
*/