机器学习--三要素

article/2025/8/26 16:34:58

        本文简单介绍一下机器学习的三要素(以监督学习为例)。机器学习方法都是由模型、策略和算法构成,即机器学习方法由三要素构成,可以简单地表示成:

                                方法 = 模型 + 策略 + 算法

1.模型

        机器学习首先要考虑的问题是学习什么样的模型。在监督学习中,模型就是所要学习的条件概率发布或决策函数。简单地理解:模型本质上就是一个函数,其作用就是实现从一个样本X到样本的标记值Y的一个映射,即 g:X->Y .下面来详细地阐述什么是模型。

        输入空间 X 和输出空间 Y 构成了一个样本空间。对于样本空间中的样本(x,y)∈(X,Y),假定存在一个未知的真实映函数 g: X->Y ,使得 

                y=g(x)    或者     p_{r}(y|x) (真实条件概率分布) 注意:公式里的x表示的是向量,而非单独的一个x值

机器学习的目标是找到一个模型来近似真实映射函数g(x) 或 真实条件概率分布 p_{r}(y|x) 

        由于我们不知道真实的g(x) 或 真实条件概率分布 p_{r}(y|x) 的具体形式,我们只能根据经验来假设一个函数集合F,称其为假设空间(Hypothesis Space),然后通过观测其在训练集D上的特性,从中选择一个理想的假设(Hypothesis)f^{*}\in F.

        假设空间F通常为一个参数化的函数族:

                        F=({f(x;\theta )}|\theta \in \mathbb{R}^{d})        (1)

                其中{f(x;\theta )}是参数为\theta的函数,也称为模型(Model), d 为参数的个数

2.策略

        有了模型的假设空间,机器学习接着需要考虑的是按照什么样的准则学习或选择最优的模型。机器学习的目的在于从假设空间中选择合最优的模型。

        引入损失函数和风险函数的概念,损失函数用于度量模型一次预测的好坏,风险函数度量平均意义下模型的好坏。

2.1.损失函数

        以监督学习为例,监督学习是在假设空间F中选取模型f作为决策函数,对于给定的输入X ,由f(X)给出相应的输出Y,这个输出的预测值f(X)与真实值Y可能一致也可能不一致,用一个损失函数(loss function)或代价函数(cost function)来度量预测错误的程度。损失函数记作:L(Y,f(X)),其值为非负的。

        常用的损失函数:

                (1) 0-1损失函数

                                L(Y,f(X))=\left\{\begin{matrix} 1 & Y\neq f(X) \\ 0& Y= f(X) \end{matrix}\right.        (2)

                (2) 平方损失函数

                                L(Y,f(X)))=(Y-f(X))^{2}        (3)

                (3) 绝对损失函数

                                L(Y,f(X))=|Y-f(X)|        (4)

                (4) 对数损失函数 或者 对数似然损失函数

                                L(Y,P(Y,X))=-logP(Y,X)        (5)

        损失函数数值越小,表示它越接近最优的模型,即模型就越好。

2.2.风险函数

        由于模型的输入、输出(X,Y)是随机变量,遵循联合分布P(X,Y),所以损失函数的期望是:

                        R_{exp}(f)=E_{p}[L(Y,f(X))]=\int _{XxY}L(y,f(x))P(x,y)dxdy        (6)

这是理论上模型f(X)关于联合分布P(X,Y)的平均意义下的损失,称为风险函数期望风险

 这里解释一下:随机变量X 和Y遵循联合概率分布P(X,Y)是什么意思:

        联合概率

联合概率表示为包含多个条件并且所有的条件都同时成立的概率,记作 P( X = a , Y = b) P(X=a,Y=b)或 P(a,b),有的书上也习惯记作P(ab)

        联合概率分布

联合概率分布就是联合概率在样本空间中的分布情况。下面是百度百科上的定义:联合概率分布简称联合分布,是两个及以上随机变量组成的随机变量的概率分布。根据随机变量的不同,联合概率分布的表示形式也不同。对于离散型随机变量,联合概率分布可以以列表的形式表示,也可以以函数的形式表示;对于连续型随机变量,联合概率分布通过非负函数的积分表示。

       在机器学习中,我们的目标就是找到两个随机变量的联合概率分布P( X,Y) ,比如说我们有一个模型,有输入变量空间 X = ( x 1 , x 2 , . . . , x n ) 和输出变量空间 Y = ( y 1 , y 2 , . . . , y m ) ,可能是离散的,可能是连续的。那么现在我们这个模型的作用就是在输入一个x的时候,能够给出一个y,也可以说我们这个模型的作用就是找到X和Y的联合概率分布P(X,Y)。那么我们就可以根据其联合概率得到条件概率,即就可以得到 P(Y∣X),于是就可以利用这个条件概率找到给定一个x的情况下,最大可能的y是哪一个。而我们上面的基本前提就是假设存在X关于Y的联合概率分布。如果根本就不存在这样的联合概率分布,那么这个模型也是个没有什么意义的模型。

        
注意:转载连接 https://blog.csdn.net/qq_39636214/article/details/85036837  

         机器学习的目的就是选择期望风险最小的模型。由于联合分布P(X,Y)是未知的,R_{exp}(f)不能直接计算。实际上,如果知道联合分布P(X,Y),可以从联合分布直接求出条件概率分布P(Y|X),那么也就不需要进行机器学习了。正是因为不知道联合概率分布,所以才需要进行学习。这样一来,一方面根据期望风险最小学习模型要用到联合概率分布,另一方面联合分布又是未知的,所以这就成为一个病态问题。

2.3.经验风险

        给定一个训练数据集:

                                T= { (x_{1},y_{1}),(x_{2},y_{2}),......,(x_{N},y_{N}) }        (7)

模型f(X)关于训练集的平均损失称为 经验风险 (empirical risk) 或 经验损失 (empirical loss),记作 R_{emp} :

                                R_{emp}(f)=\frac{1}{N}\sum_{i=1}^{N}L(y_{i},f(x_{i}))        (8)

        期望风险R_{exp}(f)是模型关于联合分布的期望损失,经验风险R_{emp}(f)是模型关于训练样本集的平均损失。根据大数定理,当样本容量N趋于无穷时,经验风险R_{emp}(f)趋于期望风险R_{exp}(f)

 所以一个很自然的想法是用经验风险估计期望风险。但是有实现中训练样本数目有限,甚至很小,所以用经验风险来估计期望风险往往并不理想,要对经验风险进行一定的矫正。这就关系到监督学习的两个基本策略:经验风险最小化 和 结构风险最小化 

 2.4.经验风险最小化和结构风险最小化

2.4.1经验风险最小化

        在假设空间、损失函数以及训练数据集确定的情况下,经验风险函数式(8) 就可以确定。经验风险最小化(empirical risk minimization,ERM)的策略认为,经验风险最小的模型是最优的模型。根据这一策略,按照经验风险最小化求解最优化问题:

                        min\frac{1}{N}\sum_{i=1}^{N}L(y_{i},f(x_{i})) ,  f\in F (F为假设空间)       (9)

当样本容量足够大时,经验风险最小化能保证有很好的学习效果,在现实中被广泛采纳。如:极大似然估计(maximum likelihood estimation)就是经验风险最小化的一个例子。当模型是条件分布,损失函数是对数损失函数时,经验风险最小化就等于极大似然估计。

2.4.2.结构风险最小化

        当样本容量很小时,经验风险最小化的效果就未必很好,会产生“过拟合”现象(over-fitting)。

过拟合的解释:

        过拟合是指 学习时选择的模型所包含的参数过多,以至于出现这一模型对已知数据预测的很好,但是对未知数据预测的很差的情况。


更好地去理解过拟合:过拟合和欠拟合的形象解释_爱吃冰淇凌的羊驼-CSDN博客_过拟合和欠拟合

        结构风险最小化(structural risk minimization,SRM)是为了防止过拟合而提出来的策略。结构风险最小化等价于正则化(regularization)。结构风险在经验风险上加上表示模型复杂度的正则化项(regularizer)或惩罚项(penalty term)。结构风险的定义为:

                        R_{srm}(f)=\frac{1}{N}\sum_{i=1}^{N}L(y_{i},f(x_{i}))+\lambda J(f)        (10)

其中J(f)是模型的复杂度,是定义在假设空间F上的泛函。模型越复杂,复杂度J(f)就越大;模型越简单,复杂度J(f)就越小。\lambda\geqslant 0是系数,用来权衡经验风险和模型复杂度。

         结构风险最小化的策略认为结构风险最小的模型是最优的模型,所以求最优模型,就是求优化问题:

                        min\frac{1}{N}\sum_{i=1}^{N}L(y_{i},f(x_{i}))+\lambda J(f),  f\in F (F为假设空间)         (11)

        这样,监督学习问题就变成了经验风险或结构风险的最优化问题。这时经验风险或结构风险是最优化的目标函数。

 3.算法

         算法是指学习模型的具体计算方法。机器学习基于训练数据集,根据学习策略,从假设空间中选择最优模型,最后需要考虑用什么样的计算方法求解最优模型。    

 注:本文的内容主要是 李航的《统计学习方法》中的总结


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

相关文章

机器学习:多分类

1,多分类形式化 1.1,分类问题 给定训练样本集合 ,其中 独立同分布,。多分类问题的目标是基于数据 ,从假说集合 中选择一个假说 ,以使得期望误差: 最小。 对于二分类问题,可以以零…

机器学习概述

一 定义 机器学习是一门从数据中研究算法的科学学科。机器学习直白来讲,是根据已有的数据,进行算法选择,并基于算法和数据构建模型,最终对未来进行预测。通过数据训练出一个模型->预测未知属性。 理性认识 输入:…

十大机器学习算法的一个小总结

在公众号看到来一篇不错的文章,讲解机器学习算法的,感觉挺好的,所以这里对常用的机器学习算法做一个小的总结, 然后根据学习李航老师的《统计学习方法》做得笔记,对这些算法进行补充。 简介 关于机器学习算法的研究已…

【机器学习】机器学习简介

一 定义 机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身…

机器学习(一)——什么是机器学习

1.什么是机器学习? 1.1 机器学习定义 机器学习的诞生来源于两个领域: 1.人工智能(artificial intelligence)。 ML是AI四象限中的一个(think optimal)。人工智能主要包括机器学习和深度学习。深度学习是机器…

机器学习介绍

文章目录 一、机器学习介绍二、机器学习的分类三、 如何入门机器学习四、KNN算法五、 参考 一、机器学习介绍 机械学习与我们的日常生活息息相关,例如购物软件的推荐、短视频软件的推送和汽车的紧急避险,都与机械学习相关。那么什么是机械学习呢&#x…

机器学习之MATLAB代码--MATLAB量子粒子群优化LSTM超参数负荷预测(十三)

机器学习之MATLAB代码--MATLAB量子粒子群优化LSTM超参数负荷预测(十三) 代码数据结果 代码 代码按照下列顺序依次: 1、 function result(true_value,predict_value,type) [m,n]size(true_value); true_valuereshape(true_value,[1,m*n]); predict_val…

Python机器学习、深度学习库总结(内含大量示例,建议收藏)

Python机器学习、深度学习库总结(内含大量示例,建议收藏) 前言python常用机器学习及深度学习库介绍总结与分类python 常用机器学习及深度学习库总结分类 更多 前言 目前,随着人工智能的大热,吸引了诸多行业对于人工智…

黑马程序员---三天快速入门Python机器学习(第一天)

机器学习入门 一、机器学习概述1.1 人工智能概述1.1.1 机器学习与人工智能、深度学习1.1.2 机器学习、深度学习能做什么1.1.3 人工智能阶段课程安排 1.2 什么是机器学习1.2.1 定义1.2.2 解释1.2.3 数据集构成 1.3 机器学习算法分类1.3.1 总结1.3.2 练习1.3.3 机器学习算法分类 …

机器学习入门好文,强烈推荐

转自 飞鸟各投林 史上最强----机器学习经典总结---入门必读----心血总结-----回味无穷 让我们从机器学习谈起 导读:在本篇文章中,将对机器学习做个概要的介绍。本文的目的是能让即便完全不了解机器学习的人也能了解机器学习,并且上手相关的实…

机器学习知识点全面总结

👨‍💻作者简介:大数据专业硕士在读,CSDN人工智能领域博客专家,阿里云专家博主,专注大数据与人工智能知识分享,公众号:GoAI的学习小屋,免费分享书籍、简历、导图等资料&a…

《零基础数学建模》——最大最小化模型

目录 ​ 前言一、最大最小化模型概述二、模型标准型三、经典例题 ​ 前言 本文大部分是对于数学建模清风老师的课程学习总结归纳而来,我的理解可能有错误,大家发现错误可以在评论区批评指正,课程地址:《数学建模清风》 前置文章请…

数学建模 matlab 数据建模基础

一、数据的获取 1.从Excel中读取数据 (1)xlsread函数 :从EXCEL读入数据到MATLAB中。 例如: a xlsread(‘D:\adc.xlsx’,1,‘A1:D2’) 其中,‘D:\abc.xlsx’表示读入的EXCEL数据所在的路径以及EXCEL的文件名称&…

【数学建模】数学建模(一)——数学模型概述

一. 模型 1. 原型和模型 原型指人们在现实世界里关心、研究或从事生产、管理的实际对象。模型则指为了某个特定目的将原型的某一部分信息简缩、提炼而构造的原型替代物。 按照模型替代原型的方式,模型可以分为物质模型(形象模型)和理想模型&a…

数学建模——MATLAB基础知识

前言:MATLAB和我们平时学的C语言相类似,大体也是由于三部分组成的。任何的复杂的程序由顺序结构,选择结构,循环结构组成的。 一、顺序结构 1.数据的输入: input 用法:Ainput(字符串)-->>影响程序流…

数学建模竞赛基础知识

国际大学生数学建模 世界大学生数学建模 美国大学生数学建模竞赛,一个比赛多个称呼而已,美赛是一项面向高中生、大学本科层次的一个国际性比赛。 美赛可分为两种: The Mathematical Contest in Modeling (MCM): 俗称数学建模竞赛&#xf…

数学建模——基础

目录 第1章 MATLAB基础知识 1,矩阵的表示 1,数值矩阵的生成 2,符号矩阵的生成 3,特殊矩阵生成 4,一般矩阵运算 5,基本图形绘制 6,简单图像处理 7,建立函数文件/.M文件 8&a…

数据库除法理解

理解 给定关系R和关系S,求RS。 关系R和关系S拥有共同的属性A2、A3 , 首先确定得到的属性为A1。(RS得到的属性是关系R包含而关系S不包含的属性,即A1) 其次确定A1中符合条件的属性值为{a,d}。(关系R中A1的…

数据库课程设计——MOOC学习平台

文章目录 1. 项目介绍:2.代码部分 1. 项目介绍: 采用JDBC接口连接数据库,简单实现Mooc学习平台相关功能。 2.代码部分 1.方法类 package com.mooc; import untlis.DButlis; import java.sql.PreparedStatement; import java.sql.ResultS…