林轩田机器学习基石3:机器学习类型划分(Types of Learning)

2024-08-21 07:48

本文主要是介绍林轩田机器学习基石3:机器学习类型划分(Types of Learning),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

欢迎关注公众号-AI圈终身学习。
公众号首页回复“机器学习”查看所有系列文章。


上节主要介绍了:

  • 二元分类(Yes/No)问题
  • 线性可分数据的感知器演算法(PLA)
  • 针对线性不可分数据改进的贪心算法Pocket Algorithm。

本节笔记Lecture 3包含内容如下:

  • 机器学习类型划分(Types of Learning)
    • 根据不同的输出空间Y(Learning with Different Output Space Y)
    • 根据不同的数据标签 y n y_n yn(Learning with Different Data Label y n y_n yn
    • 根据不同的协议(Learning with Different Protocol f ⇒ ( x n , y n ) f ⇒ (x_n, y_n) f(xn,yn))
    • 根据不同的输入(Learning with Different Input Space X)

一、根据不同的输出空间Y(Learning with Different Output Space Y)

这一节是概念性知识,很简单。不同的输出空间Y对应不一样的问题。目前我们只学了二分类问题,比如:是否批准信用卡,是否垃圾邮件,是否生病,广告是否赚钱,答案是否正确。这里的输出空间Y取值只有+1和-1两种情况。如果有:

  • 识别数字0到9,则输出空间有10种,这叫多分类问题(Multiclass Classification)
  • 预测病人需要多少天康复,则输出空间有无限种,这叫回归问题(Regression)

归纳一下,如果我们输出空间对应有:

  • 两种,叫二分类问题(Binary Classification)
  • 多种,叫多分类问题(Multiclass Classification)
  • 无限种,叫回归问题(Regression)

二、根据不同的数据标签 y n y_n yn(Learning with Different Data Label y n y_n yn

这一节也是概念性知识,很简单。不同的数据标签 y n y_n yn对应不一样的学习方式。本节主要概念性讲:

  • 监督学习(Supervised)
  • 非监督学习(Unsupervised)
  • 半监督学习(Semi-supervised)
  • 强化学习(Reinforcement Learning)

目前我们学习的数据 x n 与 标 签 y n x_n与标签y_n xnyn一一对应,这种叫监督学习(supervised);

如果数据没有标签,则叫非监督学习(unsupervised),一般的应用场景都是聚类问题;

半监督学习(semi-supervised)数据有部分标签,一般也是聚类场景,相比于非监督学习,类别种类更确定;

强化学习是一种自然的学习方式,比如训练一条狗,叫它“ x n = x_n= xn=sit down”,如果它做了 y n = s i t y_n=sit yn=sit就喂他饼干奖励它,否则就惩罚它。

其他的有比如广告系统、或者围棋等应用场景。通常用于学习顺序的’隐含’信息。

本节小总结如下:

三、根据不同的协议(Learning with Different Protocol f ⇒ ( x n , y n ) f ⇒ (x_n, y_n) f(xn,yn))

根据不同的协议可以把机器学习划分成三种:

  • 批学习(Batch Learning)
  • 在线学习(Online Learning)
  • 主动学习(Active Learning)

批学习(Batch Learning)是比较常见的方式,直接喂给模型一批数学,让它直接学习。

在线学习(Online Learning)是通过一条条的数据慢慢学习。如果我们要提升垃圾邮件系统性能,则他们的流程如下:

PLA和强化学习可以轻松的使用在线学习协议,因为他们都是通过一条一条的数据不断的从假设集中选择更好的假设。

而主动学习(Active Learning)是去主动问问题,即通过某种策略(strategy)选择一条自己不确定数据,询问这条数据的标签。

本节总结就是根据协议可以把机器学习分成三种:Batch、Online、Acitve。他们可以类比成:填鸭式教育、举例教育、主动问问题。目前最重要的协议是Batch Learning。

思考一下这个问题:
一个摄影师有10W张图片,标记了1000张,现在对剩下的图片分类。对于算法认为确定的图片系统直接输出它的类别,如果不确定的询问人类,这是什么协议?

四、根据不同的输入(Learning with Different Input Space X)

在机器学习领域,输入特征一般分成三种类别:

  • 具体的特征(concrete)
  • 原始的特征(raw)
  • 抽象的特征(abstract)

非常容易理解。

具体的特征(concrete)有复杂的物理意义,相对而言机器学习比较容易学习这类数据,比如银行客户的信息:

原始的特征(raw)如图像的原始像素,通常需要人为的转化成具体的特征,再喂给模型,比如识别手写数字的图像输入:

抽象的特征(abstract)比如数据里面每条数据的ID,通常没有物理含义,我们需要进行特征转换/提取/构造

本节总结:

思考一下这个问题:

假设构建一个在线图片广告系统,推送与用户最相关的图片,我们能用哪些输入特征?

五、总结

本节主要讨论了机器学习的类型划分,比较轻松简单的一节:

文中思考题答案

这篇关于林轩田机器学习基石3:机器学习类型划分(Types of Learning)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python中Json和其他类型相互转换的实现示例

《Python中Json和其他类型相互转换的实现示例》本文介绍了在Python中使用json模块实现json数据与dict、object之间的高效转换,包括loads(),load(),dumps()... 项目中经常会用到json格式转为object对象、dict字典格式等。在此做个记录,方便后续用到该方

python中的显式声明类型参数使用方式

《python中的显式声明类型参数使用方式》文章探讨了Python3.10+版本中类型注解的使用,指出FastAPI官方示例强调显式声明参数类型,通过|操作符替代Union/Optional,可提升代... 目录背景python函数显式声明的类型汇总基本类型集合类型Optional and Union(py

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

Python学习笔记之getattr和hasattr用法示例详解

《Python学习笔记之getattr和hasattr用法示例详解》在Python中,hasattr()、getattr()和setattr()是一组内置函数,用于对对象的属性进行操作和查询,这篇文章... 目录1.getattr用法详解1.1 基本作用1.2 示例1.3 原理2.hasattr用法详解2.

MyBatis的xml中字符串类型判空与非字符串类型判空处理方式(最新整理)

《MyBatis的xml中字符串类型判空与非字符串类型判空处理方式(最新整理)》本文给大家介绍MyBatis的xml中字符串类型判空与非字符串类型判空处理方式,本文给大家介绍的非常详细,对大家的学习或... 目录完整 Hutool 写法版本对比优化为什么status变成Long?为什么 price 没事?怎

C#之枚举类型与随机数详解

《C#之枚举类型与随机数详解》文章讲解了枚举类型的定义与使用方法,包括在main外部声明枚举,用于表示游戏状态和周几状态,枚举值默认从0开始递增,也可手动设置初始值以生成随机数... 目录枚举类型1.定义枚举类型(main外)2.使用生成随机数总结枚举类型1.定义枚举类型(main外)enum 类型名字

Python lambda函数(匿名函数)、参数类型与递归全解析

《Pythonlambda函数(匿名函数)、参数类型与递归全解析》本文详解Python中lambda匿名函数、灵活参数类型和递归函数三大进阶特性,分别介绍其定义、应用场景及注意事项,助力编写简洁高效... 目录一、lambda 匿名函数:简洁的单行函数1. lambda 的定义与基本用法2. lambda

C语言自定义类型之联合和枚举解读

《C语言自定义类型之联合和枚举解读》联合体共享内存,大小由最大成员决定,遵循对齐规则;枚举类型列举可能值,提升可读性和类型安全性,两者在C语言中用于优化内存和程序效率... 目录一、联合体1.1 联合体类型的声明1.2 联合体的特点1.2.1 特点11.2.2 特点21.2.3 特点31.3 联合体的大小1

MySQL 索引简介及常见的索引类型有哪些

《MySQL索引简介及常见的索引类型有哪些》MySQL索引是加速数据检索的特殊结构,用于存储列值与位置信息,常见的索引类型包括:主键索引、唯一索引、普通索引、复合索引、全文索引和空间索引等,本文介绍... 目录什么是 mysql 的索引?常见的索引类型有哪些?总结性回答详细解释1. MySQL 索引的概念2