机器学习之分类-概率生成模型

本文涉及的产品
模型训练 PAI-DLC,5000CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,每月250计算时 3个月
简介: 机器学习之分类-概率生成模型

分类



定义:按照种类、等级或性质分别归类。

我们要做的就是找到一个模型(函数)可以对数据进行分类最后给出一个对应的预测类别


20210326225741919.png


我们可以可以通过一些数据的导入通过训练确定模型的一些参数,最后推测的类型。


回归与分类


分类问题不适合使用回归的方式来完成,不是说不行,就是最后的模型会惩罚那些太"正确"的结果。


20210326233051838.png


左图是分类任务使用回归方式预测结果,绿色的线是一个比较理想的模型,可以比较好的用回归来预测我们的结果,但是图二这种情况就会导致我们的模型发生偏离变成了紫色的这部分,这效果反而不好了,就是因为他被远远大于1的这部分“他认为是错误的”数据给“带偏了”。

而且实际中两者不一定有这类线性的关系,到最后不一定会有一个好的结果。


Generative Model


两个箱子里面有两种不同的球,球在两个箱子里面的比例不一样,随机从一个箱子里面取一个A球的概率是多少?


首先我们要对数据进行分析,我们最少需要4种数据。

1、球在两个箱子里面的比例(p(c1)/p(c2))

2、两个箱子随机抽取到的比例(p(A|c1)/p(A|c2))

有了这4个值才可以开始构建模型进行计算。


20210327231511792.png


经过计算得到的公式如上图所示。

如果生成一个模型那么模型的公式是什么呢?


20210327231602645.png


分类的理想步骤


  • 寻找一个模型
    (输出的结果是float,线性结果输出是整型。)
  • loss的定义:f在训练数据上得到不正确结果的次数,次数越小越好


宝可梦分类


通过已有的一些数据区分未知的宝可梦的属性。

宝可梦有18种不一样的属性,属于多分类任务。


第一步收集data


假设收集先出现的300只为训练集后面的为校验集。

比如:

皮卡丘的输出就是电

杰尼龟的输出就是水

妙蛙草的输出就是草


第二步数据处理


以二分类为例(水系的和一般系的)

class1是水系class2是一般系的。

把编号小于400的作为训练集,大于的作为验证集。

其中水系的79只(个),一般系的61只(个)


第三步模型假设。


我们知道了数据和上面Generative Model一样,class1是水系,class2是一般系。

从里面随机取一只宝可梦水系的概率是多少呢???


p(水系)= 79/(79+61)=56%

那么一般系呢?

同理

p(一般系)= 61/(79+61)= 44%


海龟的概率


如果从水系的里面抽取一只出来是海龟那么他的概率是多少呢?


20210327233859597.png


水系的有79只其中杰尼杰尼的杰尼龟,可达鸭,蚊香蝌蚪……都是那么水龟的概率是多少呢?

首先把这些宝可梦的特征用向量来表示。


2021032723433735.png



通过他们的防御力和特殊防御力可以获得一张散点图 。里面每一个点代表了一只宝可梦。

那我们得到海龟的概率是多少呢?

这个值和我们的均值𝝁还有协方差矩阵𝜮决定。

通过𝝁𝜮得到一个模型,然后通过模型可以得到一个值。

不同的均值和协方差矩阵构建的模型是完全不一样的。


如果这两个值固定得到的一个模型,那么数据带进模型得到的值越小我们抽到这个宝可梦的概率就越大。


20210328000627700.png

假设水系宝可梦的模型值如上

我们模型的值可以用下面的公式来表示:


20210328000722783.png


20210328000808763.png


画出来的图就类似于上面的圆,如果一个宝可梦的值是new那么他是水系的概率就 没有那么高,月接近圆里面概率越高。


模型的由来


上面提到了是由均值和协方差矩阵矩阵决定的那么这两个值怎么来呢?

每一个模型都可以抽取到我们所有的宝可梦,只不过概率不一样。

概率值是每一只宝可梦预测值的积,那么我们要怎么样选取最好的那一个模型呢?


20210328002232287.png


通过上面的公式可以求得最好 的值。


20210328002403524.png


进行分类


我们已经把两个模型都获取好了,接下来就是分类的问题。


20210328002619350.png


把数值带人我们之前的那些公式,然后 就是可以获得一个标准,如果这个值大于0.5那么就是就是水系的反之就是普通系的。

经过计算效果都不是很好,没有把水系宝可梦和普通系的宝可梦明显的进行区分,最后的结果不是很好,预测值只有46%。


改进


之前是把宝可梦放在两个盒子里面数据参数非常多,能不能假设他们都在一个盒子里面就是放的位置分布不一样呢?


20210328003825757.png


均值𝝁不相同,但是协方差矩阵𝜮是一样的(类似于一个盒子)


20210328004226718.png


那么这个"盒子"的大小也需要重新计算。对数据进行加权平均以后就可以得到结果。

通过这样子计算准确率得到了54%

然后把每个宝可梦的7个数据代入 在7维的空间里面最后的准确率达到了73%


采用不同的分布方式


不同的分布方式 可以得到不一样的结果

如果你假设所有的维度都是独立的,那么你就使用了朴素贝叶斯分类器。

对于二元特征,你可以假设它们来自伯努利分布。


对于不同的假设最后的结果也是不一样的,如果假设是比较精准的效果就会比较好,如果不是精准的最后的效果也不会很好。


Posterior Probability


2021032801021057.png


传说中的飞桨社区最菜代码人,让我们一起努力!

记住:三岁出品必是精品 (不要脸系列


目录
相关文章
|
30天前
|
机器人
1024 云上见 使用 PAI+LLaMA Factory 微调 Qwen2-VL 模型,搭建 “文旅领域知识问答机器人” 领精美计时器
1024 云上见 使用 PAI+LLaMA Factory 微调 Qwen2-VL 模型,搭建 “文旅领域知识问答机器人” 领精美计时器
85 3
|
9天前
|
机器学习/深度学习 数据采集 监控
如何使用机器学习模型来自动化评估数据质量?
如何使用机器学习模型来自动化评估数据质量?
|
6天前
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
22 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
|
10天前
|
机器学习/深度学习 算法 PyTorch
用Python实现简单机器学习模型:以鸢尾花数据集为例
用Python实现简单机器学习模型:以鸢尾花数据集为例
30 1
|
19天前
|
机器学习/深度学习 数据采集 Python
从零到一:手把手教你完成机器学习项目,从数据预处理到模型部署全攻略
【10月更文挑战第25天】本文通过一个预测房价的案例,详细介绍了从数据预处理到模型部署的完整机器学习项目流程。涵盖数据清洗、特征选择与工程、模型训练与调优、以及使用Flask进行模型部署的步骤,帮助读者掌握机器学习的最佳实践。
58 1
|
22天前
|
机器学习/深度学习 数据采集 监控
如何使用机器学习模型来自动化评估数据质量?
如何使用机器学习模型来自动化评估数据质量?
|
28天前
|
机器人
1024 云上见 使用 PAI+LLaMA Factory 微调 Qwen2-VL 模型,搭建 “文旅领域知识问答机器人” 领 200个 精美计时器等你领
1024 云上见 使用 PAI+LLaMA Factory 微调 Qwen2-VL 模型,搭建 “文旅领域知识问答机器人” 领 200个 精美计时器等你领
72 2
|
1月前
|
人工智能 算法 测试技术
PAI 大语言模型评测平台现已支持裁判员模型评测
本文将为您介绍如何在 PAI 大语言模型评测平台,基于裁判员模型,评价开源模型或者微调后模型的性能。该功能限时免费,欢迎使用。
|
15天前
|
机器学习/深度学习 算法
探索机器学习模型的可解释性
【10月更文挑战第29天】在机器学习领域,一个关键议题是模型的可解释性。本文将通过简单易懂的语言和实例,探讨如何理解和评估机器学习模型的决策过程。我们将从基础概念入手,逐步深入到更复杂的技术手段,旨在为非专业人士提供一扇洞悉机器学习黑箱的窗口。
|
1月前
|
机器学习/深度学习 算法 数据可视化
机器学习的核心功能:分类、回归、聚类与降维
机器学习领域的基本功能类型通常按照学习模式、预测目标和算法适用性来分类。这些类型包括监督学习、无监督学习、半监督学习和强化学习。
26 0

热门文章

最新文章

相关产品

  • 人工智能平台 PAI