PHP-ML 的安装手记(1)
2018-05-21 19:19
253 查看
前缀
前几年已经想在 PHP 语言的领域上,增加【机器学习】以及【人工智能】的一些 lib 或者开源库。但当时,发现PHP还是不太适合做这个事情几个原因:php cli 运行不是很稳定,当时可能出现各种异常然后就没有然后,程序上处理非常非常仔细。一个参数一个函数的调用有问题,就会导致程序崩溃,崩溃!
当时对php 有一些局限性的思维,只认为它是简单单线程运行。处理速度上不可能有什么突破。【吐槽:只是个人观点而已,大家不用介怀】
【机器学习】没有并行运算框架的基础设施上完全是单机运算只能是试验性意义,不能进行小中型规模应用。当时,并行运算框架以及平台也是 PHP 语言的一个过不了的坑。。。。。。不过,当成熟 swoole 出现的情况下,我知道并行运算框架的出现不再是虚幻的楼阁。【吐槽:只是个人猜测,大家不用介怀】
基于以上三点,就没有再继续深究往这个方向去想了。
这几天突然想看看,PHP在【机器学习】领域上是否有所突破?真的出现了 PHP-ML 这样的Lib 了,而且看上去也实现了很多不同类型的算法。说到这里立马尝尝鲜吧!
在Yii 框架的基础上,PHP-ML 安装
1. compase 安装
个人感觉不喜欢。。。不知道它内部干了一些什么操作。这个事情真的不能强求,人比较古老感觉composer安装有一种不可控以及不踏实感觉。2. 下载源码安装
2.1. 下载PHP-ML源码包,https://github.com/qieangel2013/phpml2.2. 在 vendor目录下,新建一个文件夹 【php-ai】 -- 【php-ml】,将下载包所有文件复制过去。
2.3. 在 vendor/composer 文件中,autoload_psr4.php 添加下面内容:
return array( 'Phpml\\' => array($vendorDir . '/php-ai/php-ml/src'), );
2.4. 在 vendor/composer 文件中, autoload_static.php 添加下面内容:
public static $prefixLengthsPsr4 = array ( ....... 'P' => array ( 'Phpml\\' => 6, ), ...... ); public static $prefixDirsPsr4 = array ( ....... 'Phpml\\' => array ( 0 => __DIR__ . '/..' . '/php-ai/php-ml/src', ), ....... );
到这里安装已经完毕,反正我认为这样是比较方便的。主要问题是不用等。
在Yii2 上开始编写Hello World 的测试代码
1. 在Yii2 高级模板下 console/controller 添加 下面文件 PhpMlTestController.php<?php namespace console\controllers; use yii; use yii\console\Controller; use Phpml\Classification\KNearestNeighbors; use Phpml\Regression\LeastSquares; class PhpMlTestController extends Controller { public function actionIndexTest() { # 定义样本数据集 $samples = [[12],[14],[17],[19],[22],[28]]; $target = [3.1,3.2,3.5,3.7,4.1,5]; # 实列化最小二乘法类 $regression = new LeastSquares(); # 训练样本 $regression->train($samples,$target); # 预测 $res = $regression->predict([35]); echo $res; } }
2. 手动运行 yii php-ml-test/index-test, 直接出结果!5.7318725099602
相关文章推荐
- linux下安装PHP APACHE MYSQL 手记
- memcached安装+php使用手记
- IIS6 FastCGI PHP5.3 环境安装手记
- php实现word文档在线浏览功能,配置安装手记
- 【Lamp】 Linux 下安装PHP+Apache+Mysql 手记
- memcached安装+php使用手记
- php实现word文档在线浏览功能,配置安装手记 (转载)
- composer(作曲家)安装php-ml
- Nginx+php-FPM安装配置手记
- php实现word文档在线浏览功能,配置安装手记
- Apache 2.0.50,+php5.1.2+mysql 5.1 安装手记
- (原)ZendStudio 安装手记(ZendStudio 多PHP版本变化处理)
- LNMP-(mysql 5.5.27&php 5.4.6&nginx1.2.3) 安装手记
- apache+php+mysql安装手记(2005.9.6)
- 系统安装手记-Apache-PHP-Mysql
- CentOS 编译 nginx+php+mysql 安装手记
- CentOS 编译 nginx+php+mysql 安装手记
- PHP手记--之安装配置
- apache+fastcgi+php安装手记
- centos上安装php运行环境(手记)