林轩田机器学习基石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

相关文章

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

Spring Boot中JSON数值溢出问题从报错到优雅解决办法

《SpringBoot中JSON数值溢出问题从报错到优雅解决办法》:本文主要介绍SpringBoot中JSON数值溢出问题从报错到优雅的解决办法,通过修改字段类型为Long、添加全局异常处理和... 目录一、问题背景:为什么我的接口突然报错了?二、为什么会发生这个错误?1. Java 数据类型的“容量”限制

关于MongoDB图片URL存储异常问题以及解决

《关于MongoDB图片URL存储异常问题以及解决》:本文主要介绍关于MongoDB图片URL存储异常问题以及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录MongoDB图片URL存储异常问题项目场景问题描述原因分析解决方案预防措施js总结MongoDB图

SpringBoot项目中报错The field screenShot exceeds its maximum permitted size of 1048576 bytes.的问题及解决

《SpringBoot项目中报错ThefieldscreenShotexceedsitsmaximumpermittedsizeof1048576bytes.的问题及解决》这篇文章... 目录项目场景问题描述原因分析解决方案总结项目场景javascript提示:项目相关背景:项目场景:基于Spring

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

usb接口驱动异常问题常用解决方案

《usb接口驱动异常问题常用解决方案》当遇到USB接口驱动异常时,可以通过多种方法来解决,其中主要就包括重装USB控制器、禁用USB选择性暂停设置、更新或安装新的主板驱动等... usb接口驱动异常怎么办,USB接口驱动异常是常见问题,通常由驱动损坏、系统更新冲突、硬件故障或电源管理设置导致。以下是常用解决

Mysql如何解决死锁问题

《Mysql如何解决死锁问题》:本文主要介绍Mysql如何解决死锁问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录【一】mysql中锁分类和加锁情况【1】按锁的粒度分类全局锁表级锁行级锁【2】按锁的模式分类【二】加锁方式的影响因素【三】Mysql的死锁情况【1

SpringBoot内嵌Tomcat临时目录问题及解决

《SpringBoot内嵌Tomcat临时目录问题及解决》:本文主要介绍SpringBoot内嵌Tomcat临时目录问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录SprinjavascriptgBoot内嵌Tomcat临时目录问题1.背景2.方案3.代码中配置t

SpringBoot使用GZIP压缩反回数据问题

《SpringBoot使用GZIP压缩反回数据问题》:本文主要介绍SpringBoot使用GZIP压缩反回数据问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录SpringBoot使用GZIP压缩反回数据1、初识gzip2、gzip是什么,可以干什么?3、Spr

如何解决idea的Module:‘:app‘platform‘android-32‘not found.问题

《如何解决idea的Module:‘:app‘platform‘android-32‘notfound.问题》:本文主要介绍如何解决idea的Module:‘:app‘platform‘andr... 目录idea的Module:‘:app‘pwww.chinasem.cnlatform‘android-32