legend php,classify.php

require_once 'vendor/autoload.php';

use Phpml\Classification\SVC;

use Phpml\SupportVectorMachine\Kernel;

/*

在模式识别领域中,最近邻居法(k-Nearest Neighbors algorithm,KNN算法,又译K-近邻算法)是一种用于分类和回归的非参数统计方法。

k-NN分类

输入:包含特征空间中的 k 个最接近的训练样本。

输出:一个分类族群。

k-NN回归

输入:包含特征空间中的 k 个最接近的训练样本。

输出:该对象的属性值。该值是其 k 个最近邻居的值的平均值。

*/

use Phpml\Classification\KNearestNeighbors;

/*

基于应用贝叶斯定理(naive)强劲的独立假设之间的特性

*/

use Phpml\Classification\NaiveBayes;

/*

说一个班级里面有三个男生(男生1、男生2,男生3),三个女生(女生1、女生2,女生3),其中

男生1 身高:176cm 体重:70kg;

男生2 身高:180cm 体重:80kg;

男生2 身高:186cm 体重:86kg;

女生1 身高:161cm 体重:45kg;

女生2 身高:163cm 体重:47kg;

女生3 身高:165cm 体重:49kg;

如果我们将男生定义为1,女生定义为-1(这里定义数值无所谓,你可以定义男生8,女生6,只要是数值就行)

*/

/*将上面的数据放入$samples数组里

*/

$samples = [[176, 70], [180, 80], [161, 45], [163, 47], [186, 86], [165, 49]];

/*

在labels中存入男女生类别标签(1、-1)

*/

$labels = [1, 1, -1, -1, 1, -1];

/*

我们现在采用libsvm来支持分类

下面我们采用线性分类

*/

$classifier = new SVC(Kernel::LINEAR, $cost = 1000);

/* 对其进行训练 */

$classifier->train($samples, $labels);

/*

下面我们采用近邻算法来实现机器学习分类

*/

$classifier = new KNearestNeighbors();

$classifier->train($samples, $labels);

/*

下面我们采用贝叶斯来分类器实现机器学习分类

*/

$classifier = new NaiveBayes();

$classifier->train($samples, $labels);

/* 预测 */

echo $classifier->predict([190, 85]);

// return 1 代表男生

print_r($classifier->predict([[152, 44], [176, 78]]));

// return [-1, 1] 代表女生、男生

exit;

一键复制

编辑

Web IDE

原始数据

按行查看

历史

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQLAlchemy 是一个 SQL 工具包和对象关系映射(ORM)库,用于 Python 编程语言。它提供了一个高级的 SQL 工具和对象关系映射工具,允许开发者以 Python 类和对象的形式操作数据库,而无需编写大量的 SQL 语句。SQLAlchemy 建立在 DBAPI 之上,支持多种数据库后端,如 SQLite, MySQL, PostgreSQL 等。 SQLAlchemy 的核心功能: 对象关系映射(ORM): SQLAlchemy 允许开发者使用 Python 类来表示数据库表,使用类的实例表示表中的行。 开发者可以定义类之间的关系(如一对多、多对多),SQLAlchemy 会自动处理这些关系在数据库中的映射。 通过 ORM,开发者可以像操作 Python 对象一样操作数据库,这大大简化了数据库操作的复杂性。 表达式语言: SQLAlchemy 提供了一个丰富的 SQL 表达式语言,允许开发者以 Python 表达式的方式编写复杂的 SQL 查询。 表达式语言提供了对 SQL 语句的灵活控制,同时保持了代码的可读性和可维护性。 数据库引擎和连接池: SQLAlchemy 支持多种数据库后端,并且为每种后端提供了对应的数据库引擎。 它还提供了连接池管理功能,以优化数据库连接的创建、使用和释放。 会话管理: SQLAlchemy 使用会话(Session)来管理对象的持久化状态。 会话提供了一个工作单元(unit of work)和身份映射(identity map)的概念,使得对象的状态管理和查询更加高效。 事件系统: SQLAlchemy 提供了一个事件系统,允许开发者在 ORM 的各个生命周期阶段插入自定义的钩子函数。 这使得开发者可以在对象加载、修改、删除等操作时执行额外的逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值