机器学习基本概念

article/2025/10/14 11:50:25

本文首先介绍机器学习的基本流程,然后针对机器学习涉及的数据、算法和评估这三个方面用到的基础概念进行介绍。

1.机器学习流程 

机器学习是一个数据流转、分析以及得到结果的过程,它的整个流程大致可以分为六个步骤,按照数据流自上而下的顺序排列分别是:场景解析、数据预处理、特征工程、模型训练、模型评估、离线/在线服务。如下图所示:

(1)场景解析:就是先把整个业务逻辑想清楚,把自己的业务场景进行一个抽象;这里的场景抽象就是把业务逻辑和算法进行匹配。

(2)数据预处理:主要进行数据的清洗工作,该阶段的主要目标是减少量纲和噪音数据对于训练数据集的影响。

(3)特征工程:是机器学习中最重要的一个步骤,算法质量并不一定是决定结果的最关键因素,特征工程的效果从某种意义上决定了最终模型的优劣;也就是说,在算法相对固定的情况下,可以说好特征决定了好结果。

(4)模型训练:如下图所示的“逻辑回归二分类”组件表示的是算法训练过程,训练数据经过了数据预处理和特征工程之后进入算法训练模块,并且生成模型。

(5)模型评估:机器学习算法的计算结果一般是一个模型,模型的质量直接影响接下来的数据业务;对于模型的成熟度的评估,其实就是对整套机器学习流程的评估。

(6)离线/在线服务:在实际的业务运用过程中,机器学习通常需要配合调度系统来使用;具体架构如下图所示:

2.数据源结构 

如果把机器学习算法比作一个数据加工场,那么进入工厂的数据就是被算法用来加工的原材料,机器学习算法需要的数据分为三类:结构化数据、非结构化数据和半结构化数据。

(1)结构化数据:是指我们在日常数据库处理中经常看到的日志类数据结构,是以矩阵结构存储在数据库中的数据,可以通过二维表结构来显示;结构化数据主要由两个部分组成,一个部分是每个字段的含义,另一个部分是每个字段的具体数值。

一般说来,机器学习算法处理的数据都是结构化的数据,因为机器学习需要把数据带入矩阵去做一些数学运算,结构化数据原生是以矩阵形态存储的,所以机器学习算法通常是只支持结构化数据的。

结构化数据中还有两个非常重要的概念:特征(Feature)和目标列 (Label);其中特征表示的是数据所描述对象的属性,在结构化数据集中,每一列数据通常就对应一个特征;目标列表示的是每一份数据的打标结果。

(2)半结构化数据:是指按照一定的结构存储,但不是二维的数据库行存储形态的数据;另一种半结构化数据就是在数据表中,某些字段是文本型的,某些字段是数值型的。

半结构化数据常用于一些数据的传递,但是在机器学习算法相关的应用方面还有一定距离,需要把半结构化数据转为结构化数据来进行操作。

(3)非结构化数据:典型的非结构化数据就是图像、文本或者是语音文件,这些数据不能以矩阵的结构存储,目前的做法也是通过把非结构化数据转为二进制存储格式,然后通过算法来挖掘其中的信息。

3.算法分类

将机器学习分为四种,分别是监督学习、无监督学习、半监督学习和增强学习。

(1)监督学习(Supervised Learning):是指每个进入算法的训练数据样本都有对应的期望值也就是目标值,进行机器学习的过程实际上就是特征值和目标队列映射的过程;通过过往的一些数据的特征以及最终结果来进行训练的方式就是监督学习法;监督学习算法的训练数据源需要由特征值以及目标队列两部分组成。

因为监督学习依赖于每个样本的打标,可以得到每个特征序列映射到的确切的目标值是什么,所以常用于回归以及分类场景。常见的监督学习算法如下表所示:

算法

具体包括

分类算法

K近邻、朴素贝叶斯、决策树、随机森林、GBDT和支持向量机等

回归算法

逻辑回归、线性回归等

 

监督学习的一个问题就是获得目标值的成本比较高。

(2)无监督学习(Unsupervised Learning):就是指训练样本不依赖于打标数据的机器学习算法,它主要是用来解决一些聚类场景的问题。常见的无监督学习算法如下表所示:

算法

具体包括

聚类算法

K-Means、DBSCAN等

推荐算法

协同过滤等

相较于监督学习,无监督学习的一大好处就是不依赖于打标数据。

(3)半监督学习(Semi-supervised Learning):通过对样本的部分打标来进行机器学习算法的使用,很多半监督学习算法都是监督学习算法的变形。

(4)强化学习(Reinforcement Learning):是一种比较复杂的机器学习种类, 强调的是系统与外界不断地交互,获得外界的反馈,然后决定自身的行为。

综上,监督学习主要解决的是分类和回归的场景,无监督学习主要解决聚类场景,半监督学习解决的是一些打标数据比较难获得的分类场景,强化学习主要是针对流程中不断需要推理的场景。具体的分类如下表所示:

算法

具体包括

监督学习

逻辑回归、K 近邻、朴素贝叶斯、随机森林、支持向量机

无监督学习

K-means、DBSCAN、协同过滤、LDA

半监督学习

标签传播

强化学习

隐马尔可夫

4.过拟合问题

过拟合(Over-fitting),从字面的意义上理解就是过度拟合的意思,常发生在线性分类器或者线性模型的训练和预测当中。过拟合的原理就是机器学习算法过度学习了训练集数据。 

如果在针对训练集做曲线拟合的时候做得过于“完美”,那么当我们针对于其他预测集进行预测的时候,这套模型很有可能会失准,因为这套模型在训练的时候过度地接近于训练集的特征,缺乏鲁棒性;所以在机器学习训练过程中,100%的拟合训练集数据并不一定是好的。

导致过拟合问题的原因可以总结为以下几种:

1)训练数据集样本单一;

2)训练样本噪音数据干扰过大;

3)模型过于复杂。

针对过拟合这样的预防和解决的办法如下:

1)在训练和建立模型的时候,一定要从相对简单的模型开始,不要一上来就把模型调得非常复杂、特征非常多,这样很容易造成过拟合现象的发生;

2)数据的采样,一定要尽可能地覆盖全部数据种类;

3)在模型的训练过程中,我们也可以利用数学手段预防过拟合现象的发生,可以在算法中添加惩罚函数来预防过拟合。

5.结果评估

常用到的概念包括精确率、召回率、F1值、ROC和AUC几种:

(1)精确率(Precision)、召回率(Recall)和F1(F-Measure)值:先了解下TP、TN、FP和FN这4个指标的含义:

1)TP(True Positive):本来是正样本,被模型预测为正样本。 

2)TN(True Negative):本来是负样本,被模型预测为负样本。 

3)FP(False Positive):本来是负样本,被模型预测为正样本。 
4)FN(False Negative):本来是正样本,被模型预测为负样本。 
精确率=TP/(TP+FP),召回率=TP/(TP+FN),F1=2X精确率X召回率/(精确率+召回率)。

精确率是模型在预测的时候正确的比例,召回率表示的是在预测到的正样例占全部正样例的比例;前者评估的是准确性,后者评估的是覆盖率。

(2)ROC和AUC:ROC(Receiver Operating Characteristic Curve)曲线是常用的二分类场景的模型评估算法曲线,这个曲线的横轴为FP值,TP值是纵轴,只要是模型曲线越接近于左上角就说明模型的效果越好;通过AUC值来表示ROC曲线与横轴围起来的面积,这个AUC值越大表示模型的效果越好。

 

(本文选自本人公众号“周氏逻辑”,欢迎扫码关注!)


http://chatgpt.dhexx.cn/article/UgNMc40L.shtml

相关文章

机器学习基础——损失函数与风险函数

机器学习的目标是从模型的假设空间中选取最优的模型,其具体的策略有经验风险最小化和结构风险最小化。下面简单介绍损失函数和风险函数的相关概念。参考自李航《统计学习方法》。 损失函数 损失函数(loss function)用来预测模型单次预测的好坏,即模型的…

机器学习基础知识之概率论基础详解

机器学习基础知识之概率论基础详解 文章目录 机器学习基础知识之概率论基础详解引言一、随机事件以及其运算1、样本空间的概念2、随机事件3、随机变量4、事件之间的关系4.1包含关系4.2相等关系4.3互不相容 5、事件间的运算5.1并5.2交5.3差5.4对立事件5.5运算性质 6、事件域 二、…

【机器学习基础】机器学习模型与算法最全分类汇总!

机器学习 Author:louwill Machine Learning Lab 本文总共涉及了26种机器学习模型与算法,几乎涵盖了全部主流的机器学习算法。包括线性回归、逻辑回归、Lasso回归、Ridge回归、线性判别分析、近邻、决策树、感知机、神经网络、支持向量机、AdaBoost、GBDT…

python基础教程免费下载-《Python机器学习基础教程》高清版免费PDF下载

Python机器学习基础教程-[德] 安德里亚斯穆勒(Andreas C.Mller)[美]莎拉吉多(Sarah Guido) 著,张亮(hysic) 译 下载地址1:网盘下载 下载地址2:网盘下载 内容简介 本书是机器学习入门书,以Python语言介绍。主要内容包括:机器学习的基本概念及其应用;实践中常用的…

机器学习开发框架

目录 目录 1.什么是机器学习开发框架 2.机器学习框架和深度学习框架的关系 3.常见深度学习框架 1.什么是机器学习开发框架 机器学习开发框架本质上是一种编程库或工具,目的是能够让开发人员更容易、更快速地构建机器学习模型。 机器学习开发框架封装了大量的可…

《Python机器学习基础教程》学习记录(一)

开篇 为了提升自己,准备学习《Python机器学习基础教程》作者: [德]安德里亚斯穆勒 / [美]莎拉吉多,译者: 张亮 ;写此博客,用作记录书中的代码,学习心得等。 第一章 1.4.4 matplotlib matplotlib 是Python 主要的科学…

【机器学习基础】9 大主题!机器学习算法理论面试题大汇总

机器学习是一门理论性和实战性都比较强的技术学科。在应聘机器学习相关工作岗位时,我们常常会遇到各种各样的机器学习问题和知识点。 算法理论基础不仅包含基本概念、数学基础,也包含了机器学习、深度学习相关。今天给大家推荐一个不错的算法理论基础面试…

机器学习数学基础

目录 1 线性代数1.1 矩阵定义1.2 矩阵中的概念1.2.1 向量 1.3 矩阵的运算1.4 矩阵的转置1.5 矩阵的逆 2 微积分2.1 导数的定义2.2 偏导数2.3 方向导数2.4 梯度2.5 凸函数和凹函数 3 概率统计3.1 常用统计变量3.1.1 数学期望和大数定律3.1.2 协方差3.1.3 相关系数 3.2 常见概率分…

图解机器学习算法(1) | 机器学习基础知识(机器学习通关指南·完结)

作者:韩信子ShowMeAI教程地址:https://www.showmeai.tech/tutorials/34本文地址:https://www.showmeai.tech/article-detail/185声明:版权所有,转载请联系平台与作者并注明出处 1. 机器学习概述 1)什么是机…

机器学习基础思维导图

机器学习基础思维导图

机器学习基础学习笔记

机器学习基础 一、机器学习概述 机器学习直白来讲,是根据已有的数据,进行算法选择,并基于算法和数据构建模型,最终对未来进行预测;输入一组数据X-Y,想要得到X-Y间的一个目标函数 f 。根据大量历史数据&am…

机器学习入门——机器学习基础概念

引言 本文介绍机器学习的一些基本概念。包括机器学习的主要任务,机器学习的分类等。 下一篇:机器学习入门——numpy与matplotlib的使用简介 用到的数据 鸢尾花(IRIS)是比较常见的在我们学习机器学习时用到的数据。数据来源: http://archive.ics.uci.e…

机器学习的数学基础

一、概述 我们知道,机器学习的特点就是:以计算机为工具和平台,以数据为研究对象,以学习方法为中心;是概率论、线性代数、数值计算、信息论、最优化理论和计算机科学等多个领域的交叉学科。所以本文就先介绍一下机器学…

机器学习基础环境部署 | 机器学习系列

目录 前言 Anaconda安装 使用conda配置python3.6环境 Spyder配置与使用 安装PyTorch 总结 前言 本文主要是分享一下机器学习初期,基本的环境搭建。也适用于其他python工程化项目环境搭建。都差不多。 Anaconda安装 anaconda官方链接:Anaconda | T…

机器学习基础(Machine Learning,ML)

什么是机器学习 机器学习是人工智能的一个子集,目前已经发展出许多有用的方法,比如支持向量机,回归,决策树,随机森林,强化方法,集成学习,深度学习等,一定程度上可以帮助人…

机器学习基础

一、机器学习概述 1.1 人工智能概述 1.人工智能起源? 图灵测试、达特茅斯会议 2.人工智能的3个阶段 1980年代是正式形成期 1990-2010年代是蓬勃发展期 2012年之后是深度学习期 3.人工智能、机器学习和深度学习之间的关系 机器学习是人工智能实现的一个途径; 深度学…

机器学习基础知识

文章目录 概述一、机器学习分类1.1 主要任务1.2 分类方式1.3 监督学习1.3.1 判别式模型1.3.2 生成式模型 1.4 无监督学习1.4.1 聚类1.4.2 降维 1.5 深度学习1.6 强化学习 二、机器学习步骤三、模型评估指标3.1 分类问题3.2 回归问题 四、机器学习预备知识4.1 数学基础4.2 Pytho…

机器学习之基础知识(全)

目录 1.机器学习概述 1.1 人工智能概述 1.1.1 人工智能使用场景 1.1.2 人工智能小案例 1.2 人工智能发展历程 1.2.1 图灵测试 1.2.2 发展历程 1.2.3 小结 1.3 人工智能主要分支 1.3.1 人工智能、机器学习和深度学习 1.3.2 主要分支介绍 1.3.3 人工智能发展必备三要…

C3D Learning Spatiotemporal Features with 3D Convolutional Networks

Learning Spatiotemporal Features with 3D Convolutional Networks Abstract 摘要主要介绍在大规模有监督的视频数据集下训练出了一种简单且高效的三维卷积神经网络的方法来学习时空特征。且此发现具有三重的效果: 1)相比较于二维,三维卷积…

C3D网络笔记

C3D网络 论文链接 论文翻译 该论文发现: 1、3D ConvNets比2D ConvNets更适用于时空特征的学习; 2、对于3D ConvNet而言,在所有层使用333的小卷积核效果最好; 3、我们通过简单的线性分类器学到的特征名为C3D(Convolutional 3D…