NLP09_机器学习、监督学习、模型搭建流程、朴素贝叶斯、系统评估、准确率,精确率召回率,F1-Measure

本文主要是介绍NLP09_机器学习、监督学习、模型搭建流程、朴素贝叶斯、系统评估、准确率,精确率召回率,F1-Measure,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

基于概率的系统

给定数据集,X代表特征信息,y代表标签
最终学习到x到y的映射关系f
模型f可以表示线性回归、逻辑回归、神经网络

nlp依赖于机器学习

机器学习

在这里插入图片描述

算法分类

监督学习,给定标签。无监督学习只有特征,没有标签
朴素贝叶斯:用于文本分类(垃圾邮件过滤,情感分析)上
逻辑回归:
CRF:
HMM:常用于语言识别
LDA:抽取文本主题
GMM:高斯回归模型
在这里插入图片描述

监督学习

在这里插入图片描述
在这里插入图片描述

无监督学习,

因为没有标签,也就不会产生f这样一个模型,所以更多的是做数据分析
比如将数据进行聚类分析
工业界主流还是监督学习。
K-means常用作聚类操作,占绝大多数聚类场景
PCA:根据协方差矩阵进行降维
MF:矩阵分解,最常用于推荐系统
LDA:用于文本分析,分析出主题
在这里插入图片描述

生成模型和判别模型

生成模型:已经训练好了模型,来生成文本或t图片。模型要记住猫和狗的特点,然后可以用于生成猫或狗的图片
判别模型:只记住猫和狗的区别,而不去记住他们的各自特点,所以也不能用于生成图片。基于x,去做出判断y,得到最大的概率
在这里插入图片描述

AI模型的搭建流程

1、首先要有数据,
2、然后清洗数据,要很重视
3、接着特征工程,也就是确定x,我要从数据里面提取出来关键的信息,也就是特征。
特征工程占据很大成本,70%的时间是在设计特征工程,然后就是一些调参的工作
特征的好坏决定选择模型以后准确率的一个上限,
好的特征可以让你经过调参和选择模型,让系统的准确率达到很高,
坏的特战可能最高的准确率存在一个上限瓶颈。
4、建模
5、预测
在这里插入图片描述

端到端的流程

将特征工程这一步去掉,不做特征工程,这就是端到端的过程
我只是把数据灌进去,然后通过算法去学习。相当于把特征工程和建模整合到了模型里。
但是不是所有的领域都可以使用端到端的方式, NLP领域这种方式大部分情况效果不好。
但是图像识别领域有很好的效果。
在这里插入图片描述
我们把数据分为训练集和测试集,训练集上训练模型

朴素贝叶斯

适合于文本分类,如:垃圾邮件识别
在这里插入图片描述
在这里插入图片描述
计算邮件中每个单词出现的概率

先验信息

在这里插入图片描述

贝叶斯定理

在这里插入图片描述

条件独立

在这里插入图片描述

垃圾邮件预测

假定我已经将邮件中的句子通过分词工具切分
其实最终要的就是邮件是正常还是垃圾的一个概率。
在这里插入图片描述

例子

给出垃圾邮件和正常邮件各3个
先计算先验概率,计算出垃圾邮件和正常邮件所占的比例
构建词库v
注意几点问题:
1、在计算正常邮件和垃圾邮件中单词出现概率中,避免出现单词计算概率为0的情况,所以加了add-one soomthing平滑项
2、在最终预测时出现概率连乘,这样最终的乘积可能会是一个小数点后位数太多,超过了计算机的表示范围,所以报错overflow。为避免这种情况,所以一般计算概率的对数,对数函数是严格递增函数,不影响最终结果的判断,同时也会将连乘变为了对数的相加,更简单
在这里插入图片描述

评估系统

评估方法:
1、准确率
但样本比例不均衡时,准确率这种评估方法不适用,比如负样本90%,正样本10%
比如做一个癌症检测模型,我在训练集中有1000个人,只有5个人是确诊癌症患者,作为正样本。
当我训练模型以后,假如我对测试数据都判断为未得癌症,那这个判断的准确率能达到99。5%,显然这个概率很高,但是它的意义却不大
2、精确率和召回率
selected表示系统判断有癌症的人群,假如判断出10个有癌症,但是实际上只有8个有,还有两个是判断错的,那么精确率就是80%
no selected表示系统判断为没有得癌症的人群,
correct表示实际确实得癌症的,not correct表示实际没有癌症的。
召回率就是看Correct这一列,总共实际的癌症患者是10个,但是系统只判断出8个,另外两个判断为没有得癌症,所以召回率是80%
TP:true positive
FN:false negative

在这里插入图片描述

精确率和召回率是一个互斥关系,精确率增加的同时,召回率在下降
所以一般是要求精确率和召回率都大于某个设定的阈值,那么就满足上线的标准。
在这里插入图片描述

考虑怎样把精确率和召回率合并到一起,组合成一个数字来表示评估的标准

F1-Measure

基于精确率和召回率得到的一个计算公式
目的就是将对系统的多个维度的评价合并成一个维度去考虑。
可以计算出正样本的F1和负样本的F1,最后做平均得到整体样本的一个F1
如果是三个维度以上,类似,最后做平均即可
在这里插入图片描述
正样本和负样本,是考虑全部样本的结果
比如对于正常邮件,是以正常邮件和垃圾邮件总和中去找的,也就是系统判断的正常邮件的结果

在这里插入图片描述
准确率是(16+3)/25

这篇关于NLP09_机器学习、监督学习、模型搭建流程、朴素贝叶斯、系统评估、准确率,精确率召回率,F1-Measure的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/888197

相关文章

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

Java的IO模型、Netty原理解析

《Java的IO模型、Netty原理解析》Java的I/O是以流的方式进行数据输入输出的,Java的类库涉及很多领域的IO内容:标准的输入输出,文件的操作、网络上的数据传输流、字符串流、对象流等,这篇... 目录1.什么是IO2.同步与异步、阻塞与非阻塞3.三种IO模型BIO(blocking I/O)NI

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

Linux系统之主机网络配置方式

《Linux系统之主机网络配置方式》:本文主要介绍Linux系统之主机网络配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、查看主机的网络参数1、查看主机名2、查看IP地址3、查看网关4、查看DNS二、配置网卡1、修改网卡配置文件2、nmcli工具【通用

Linux系统之dns域名解析全过程

《Linux系统之dns域名解析全过程》:本文主要介绍Linux系统之dns域名解析全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、dns域名解析介绍1、DNS核心概念1.1 区域 zone1.2 记录 record二、DNS服务的配置1、正向解析的配置