机器学习:李航-统计学习方法笔记(一)监督学习概论

2023-10-29 22:50

本文主要是介绍机器学习:李航-统计学习方法笔记(一)监督学习概论,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1.1统计学习

1.2统计学习的分类

1.2.1基本分类

监督学习定义:

无监督学习

强化学习

半监督学习

主动学习

1.2.2按模型分类

1.2.3按算法分类

1.2.4按技巧分类

贝叶斯学习(Bayesian learning)

核方法(kernel method)

1.3统计学习的三要素

模型

策略

算法


1.1统计学习

统计学习是关于计算机基于数据构建概率统计模型并运用模型对数据进行预测与分析的一门学科。也可以说统计学习就是计算机系统通过运用数据及统计方提高系统性能的机器学习。故统计学习也称为统计机器学习。

 统计学习的目的在于从假设空间中选取最优模型。

统计学习的对象是数据,数据分为由连续变量和离散变量表示的类型,其中同类数据是指具有某种共同性质的数据。在统计学习的过程中,以变量或者是变量组表示数据。

 统计学习的方法是基于数据构建统计模型从而对数据进行预测与分析。

统计学习方法包括模型的假设空间、模型选择的准则以及模型学习的算法。统计学习方法的三要素:模型、策略、算法        

统计学习由监督学习(supervised learning)、非监督学习(unsupervised learning)、半监督学习(semi-supervised learning)和强化学习(reinforcement learning)等组成。

1.2统计学习的分类

1.2.1基本分类

统计学习可以基本分类分为监督学习、无监督学习、强化学习、半监督学习、主动学习等。

  • 监督学习定义:

从标注数据中学习预测模型的机器学习问题,标注数据表示输入输出的对应关系,预测模型对给定输入产生相应的输出
本质:学习输入到输出的映射的统计规律

相关概念:

  • 输入空间(input space):输入的所有可能的取值集合
  • 输出空间(output space):输出的所有可能的取值集合
  • 实例(instance):每个具体的输入,可由特征向量(feature vector)表示
  • 特征空间(feature space):所有的特征向量存在的空间,特征空间中的每一维对应一个特征,特征空间是模型实际定义位置
  • 假设空间:由输入空间到输出空间的映射的集合。

任务分类:

  • 回归问题:输入变量和输出变量均为连续变量的预测问题。
  • 分类问题:输出变量为有限个离散变量的预测问题。
  • 标注问题:输入变量和输出变量均为变量序列的预测问题。

联合概率分布

  • 监督学习假设输入与输出的随机变量X和Y遵循联合概率分布P(X,Y)。
  • P(X,Y)表示分布函数或分布密度函数,P(x,y)=P(X=x and Y=y)。
  • 统计学习假设数据存在一定的统计规律,X和Y具有联合概率分布就是监督学习关于数据的基本假设。
  • 对于学习系统来说,联合概率分布是未知的。
  • 训练数据和测试数据被看作是依联合分布概率分布P(X,Y)独立同分布产生的。

假设空间

  • 监督学习目的是学习一个由输入到输出的映射,称为模型
  • 模式的集合就是假设空间(hypothesis space)
  • 概率模型:条件概率分布P(Y|X), 决策函数:Y=f(X)

问题形式化

  •  无监督学习

定义

  • 从无标注数据中学习预测模型的机器学习问题
  • 无标注数据表示自然得到的数据。预测模型表示数据的类别、转换或概率
  • 本质:学习数据中的统计规律或潜在结构

问题形式化

  •  强化学习

定义

  • 指智能系统在与环境的连续互动中学习最优行为策略的机器学习问题。
  • 本质:学习最优的序贯决策
  • 假设智能系统与环境的互动基于马尔代夫决策过程,智能系统观测到的时环境互动得到的数据序列。
  • 强化学习的马尔可夫决策过程是状态、奖励、动作序列上的随机过程,由五元组<S,A,P,r,γ>组成。
  • S是有限状态(state)的集合
  • A是有限动作(action)的集合
  • Р是状态转移概率(transition probability)函数:

r是奖励函数(reward function) :

γ是衰减系数(discount factor ) : γ ∈ [0,1]

  • 马尔可夫决策过程具有马尔可夫性,下一个状态只依赖于前一个状态与动作,下一个奖励依赖于前一个状态与动作。

  • 强化学习方法
  • 无模型(model-free)
  • 基于策略(policy-based):求解最优策略π*
  • 基于价值(value-based):求解最优价值函数
  • 有模型(model-based)
  • 1. 通过学习马尔可夫决策过程的模型,包括转移概率函数和奖励函数
  • 2. 通过模型对环境的反馈进行预测
  • 3. 求解价值函数最大的策略π*
  • 半监督学习

  • 少量标注数据,大量未标注数据
  • 利用未标注数据的信息,辅助标注数据,进行监督学习
  • 较低成本
  • 主动学习

  • 机器主动给出实例,教师进行标注
  • 利用标注数据学习预测模型

1.2.2按模型分类

  • 概率模型和非概率模型

概率模型:决策树、贝叶斯网络、马尔科夫随机场、条件随机场、概率潜在语义分析、潜在狄利克雷分配、高斯混合模型

非概率模型:感知机、支持向量机、k近邻、AdaBoost、K均值、潜在语义分析、神经网络

  • 线性模型和非线性模型
  • 参数化模型和非参数模型

1.2.3按算法分类

统计学习模型根据算法分为在线学习和批量学习。

  • 在线学习(online learning):每次接受一个样本,进行预测,之后学习模型,并不断重复该操作的机器学习 。
  • 批量学习(batch learning):一次接受所有的样本,学习模型,之后进行预测。

1.2.4按技巧分类

贝叶斯学习(Bayesian learning)

核方法(kernel method)

1.3统计学习的三要素

上面说到统计学习方法都是由模型、策略和算法构成的,所以三要素可以简单的表示为以下形式:

方法=模型+策略+算法

模型

模型就是所要学习的条件概率分布或者决策函数。

策略

  • 损失函数:损失函数度量模型一次预测的好坏。
  • 风险函数:风险函数度量平均意义下模型预测的好坏。
  • 损失函数可以有以下几种:

  • 损失函数值越小,模型就越好,学习的目标就是选择期望风险最小的模型。
  • 监督学习的两个基本策略:经验风险最小化和结构风险最小化
  • 经验风险或经验损失:模型f(X)关于训练数据集的平均损失 
  •  经验风险最小的模型是最优的模型,当样本容量足够大时,经验风险最小化能保证有很好的学习效果;当样本容量很小时,会产生“过拟合”现象。
  • 结构风险最小化是为了防止过拟合而提出来的策略。

算法

统计学习方法总结为最优化问题

算法是指线性模型的具体计算方法。

这篇关于机器学习:李航-统计学习方法笔记(一)监督学习概论的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python判断for循环最后一次的6种方法

《Python判断for循环最后一次的6种方法》在Python中,通常我们不会直接判断for循环是否正在执行最后一次迭代,因为Python的for循环是基于可迭代对象的,它不知道也不关心迭代的内部状态... 目录1.使用enuhttp://www.chinasem.cnmerate()和len()来判断for

Java循环创建对象内存溢出的解决方法

《Java循环创建对象内存溢出的解决方法》在Java中,如果在循环中不当地创建大量对象而不及时释放内存,很容易导致内存溢出(OutOfMemoryError),所以本文给大家介绍了Java循环创建对象... 目录问题1. 解决方案2. 示例代码2.1 原始版本(可能导致内存溢出)2.2 修改后的版本问题在

四种Flutter子页面向父组件传递数据的方法介绍

《四种Flutter子页面向父组件传递数据的方法介绍》在Flutter中,如果父组件需要调用子组件的方法,可以通过常用的四种方式实现,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录方法 1:使用 GlobalKey 和 State 调用子组件方法方法 2:通过回调函数(Callb

一文详解Python中数据清洗与处理的常用方法

《一文详解Python中数据清洗与处理的常用方法》在数据处理与分析过程中,缺失值、重复值、异常值等问题是常见的挑战,本文总结了多种数据清洗与处理方法,文中的示例代码简洁易懂,有需要的小伙伴可以参考下... 目录缺失值处理重复值处理异常值处理数据类型转换文本清洗数据分组统计数据分箱数据标准化在数据处理与分析过

Java中Object类的常用方法小结

《Java中Object类的常用方法小结》JavaObject类是所有类的父类,位于java.lang包中,本文为大家整理了一些Object类的常用方法,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. public boolean equals(Object obj)2. public int ha

golang1.23版本之前 Timer Reset方法无法正确使用

《golang1.23版本之前TimerReset方法无法正确使用》在Go1.23之前,使用`time.Reset`函数时需要先调用`Stop`并明确从timer的channel中抽取出东西,以避... 目录golang1.23 之前 Reset ​到底有什么问题golang1.23 之前到底应该如何正确的

Vue项目中Element UI组件未注册的问题原因及解决方法

《Vue项目中ElementUI组件未注册的问题原因及解决方法》在Vue项目中使用ElementUI组件库时,开发者可能会遇到一些常见问题,例如组件未正确注册导致的警告或错误,本文将详细探讨这些问题... 目录引言一、问题背景1.1 错误信息分析1.2 问题原因二、解决方法2.1 全局引入 Element

Python调用另一个py文件并传递参数常见的方法及其应用场景

《Python调用另一个py文件并传递参数常见的方法及其应用场景》:本文主要介绍在Python中调用另一个py文件并传递参数的几种常见方法,包括使用import语句、exec函数、subproce... 目录前言1. 使用import语句1.1 基本用法1.2 导入特定函数1.3 处理文件路径2. 使用ex

Oracle查询优化之高效实现仅查询前10条记录的方法与实践

《Oracle查询优化之高效实现仅查询前10条记录的方法与实践》:本文主要介绍Oracle查询优化之高效实现仅查询前10条记录的相关资料,包括使用ROWNUM、ROW_NUMBER()函数、FET... 目录1. 使用 ROWNUM 查询2. 使用 ROW_NUMBER() 函数3. 使用 FETCH FI

Git中恢复已删除分支的几种方法

《Git中恢复已删除分支的几种方法》:本文主要介绍在Git中恢复已删除分支的几种方法,包括查找提交记录、恢复分支、推送恢复的分支等步骤,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录1. 恢复本地删除的分支场景方法2. 恢复远程删除的分支场景方法3. 恢复未推送的本地删除分支场景方法4. 恢复