林轩田机器学习基石1:机器学习问题(The Learning Problem)

2024-08-21 07:48

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

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


机器学习基石课程大概八周,分为四个部分:

  • When Can Machines Learn?
  • Why Can Machines Learn?
  • How Can Machines Learn?
  • How Can Machines Learn Better?

课程主页:
http://www.csie.ntu.edu.tw/~htlin/

本节笔记Lecture 1-The Learning Problem包含内容如下:

  • When Can Machines Learn?(什么时候用机器学习)
    • What is Machine learning(什么是机器学习)
    • Applications of Machine Learning(机器学习应用)
    • Components of Machine Learning(机器学习组成部分)
    • Machine Learning and Other Fields(机器学习和其他领域)

一、什么是机器学习(What is Machine Learning)

机器学习和学习的异同是什么?首先学习和机器学习的共通性就是观察,他们也有差异性。

1.1 学习的流程

学习的主体是人,人通过观察(听、观、触觉)出发,经过脑袋的内化转化,变成有用的技能。流程图如下:

1.2 机器学习的流程

机器学习的主体是电脑,电脑通过观察资料(语料),经过电脑的CPU运作,变成对电脑有用的技能。流程图如下:

什么是“变成有用的技能”?技能就是在某种领域做事靠谱,比如

  • 对于人,自己的英语能力、数学能力得到了提高
  • 对于电脑,预测股票的能力得到了提高

因此机器学习更准确的定义是:
通过观察计算有规律的数据,根据某种评价指标,提升电脑性能。
流程图如下:

1.3机器学习的三个关键要素

什么时候适合使用机器学习,林老师总结三个关键要素如下:

  1. 编程定义不明确,普通编程难以完成的任务
  2. 资料数据具有某种潜藏的规律,可以学习
  3. 有关于潜藏的规律资料数据

(测试题)下面哪种情况最适合使用机器学习?

  1. 预测小女孩下一次哭的时间是奇数还是偶数(No,没有规律)
  2. 判断一个图是否有环(No,可以编程定义明确)
  3. 预测下一个十年地球是否会毁灭(No,没有数据)
  4. 决定是否同意给用户办理信用卡(Yes,有用户历史行为数据且难以编程解决)

二、机器学习应用(Applications of Machine Learning)

  • 衣(Abu-Mostafa, 2012)
    • 技能:穿衣搭配推荐
    • 数据:衣服销售数字+顾客调差反馈
  • 食(Sadilek et al., 2013)
    • 技能:正确告诉餐厅食物中毒的可能性
    • 数据:用户的Twitter数据(评论的文字+餐厅地点)
  • 住(Tsanas and Xifara, 2012)
    • 技能:预测建房所需能源消耗
    • 数据:历史修建房屋的能源消耗数据
  • 行(Stalkamp et al., 2012)
    • 技能:识别交通信号
    • 数据:交通信号图片和含义数据

除此之外,还有教育(流利说)、金融(信用卡办理)、医疗(药效预测)、法律(摘要)、娱乐(推荐系统)等各种行业。

二、机器学习组成部分(Components of Learning)


以信用卡办理为例,任务是给要用信用卡花钱的用户办理。机器学习组件如下:

  • 输入X(银行用户数据特征,如年龄、性别、工资等)
  • 输出Y(办卡后刷还信用卡的好坏)
  • 训练数据 D = ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x n , y n ) D={(x_1, y_1),(x_2, y_2),...,(x_n, y_n)} D=(x1,y1),(x2,y2),...,(xn,yn)
  • 目标函数 f : x → y f:x \rightarrow y f:xy(理想的函数,表示实际训练数据的分布规律,但是未知)
  • 假设集合H(hypothesis set),我们需要通过算法学到集合中最佳的假设,其对应的函数为 g : x → y g:x \rightarrow y g:xy我们希望最终的模型表达式 g 满 足 g ≈ f g满足g\approx f ggf

机器学习整个流程可以表示如下:

比如以上面的信用卡办理为例,假设其中的hypothesis set H为:

  • h1: 年薪 > 80万
  • h2: 欠款 > 10 万
  • h3: 工龄 < 2年

我们的H中的假设有好有坏,我们通过演算法A去选择最好的一个作为g。

因此我们在机器学习中常说的模型是 演算法A+假设集合H

我们再以预测用户给歌曲打分(0-100分)为例,我们有:

训练数据D = 100万条((userid, songid), rating)对
输入X = 所有可能的(userid, songid)对
输出Y = [0, 100]
假设集合H = 将用户因素和歌曲因子相乘,并由所有可能的因素组合索引

我们以训练数据D为入口,通过演算法A选出H中最好的假设得到g。

四、机器学习和其他领域(Machine Learning and Other Fields)

  • 机器学习与统计

  • 机器学习与数据挖掘

  • 机器学习与人工智能

总结来说:

  • 统计可以实现机器学习
  • 机器学习和数据挖掘相互缠绕,难以区分
  • 机器学习是实现人工智能的一种方式

五、总结

本节主要概括性的讲了机器学习的方方面面,高层笼统,概念清晰,没有太多技术性的东西。

这篇关于林轩田机器学习基石1:机器学习问题(The Learning Problem)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

好题——hdu2522(小数问题:求1/n的第一个循环节)

好喜欢这题,第一次做小数问题,一开始真心没思路,然后参考了网上的一些资料。 知识点***********************************无限不循环小数即无理数,不能写作两整数之比*****************************(一开始没想到,小学没学好) 此题1/n肯定是一个有限循环小数,了解这些后就能做此题了。 按照除法的机制,用一个函数表示出来就可以了,代码如下

hdu1043(八数码问题,广搜 + hash(实现状态压缩) )

利用康拓展开将一个排列映射成一个自然数,然后就变成了普通的广搜题。 #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#include<stdlib.h>#include<ctype.h>#inclu

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

购买磨轮平衡机时应该注意什么问题和技巧

在购买磨轮平衡机时,您应该注意以下几个关键点: 平衡精度 平衡精度是衡量平衡机性能的核心指标,直接影响到不平衡量的检测与校准的准确性,从而决定磨轮的振动和噪声水平。高精度的平衡机能显著减少振动和噪声,提高磨削加工的精度。 转速范围 宽广的转速范围意味着平衡机能够处理更多种类的磨轮,适应不同的工作条件和规格要求。 振动监测能力 振动监测能力是评估平衡机性能的重要因素。通过传感器实时监

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss