李宏毅机器学习课程---2、Regression - Case Study

一、总结

一句话总结:

分类讨论可能是比较好的找最佳函数的方法:如果 有这样的因素存在的话
模型不够好,可能是因素没有找全
因素以及函数的复杂度,并不是越高越好,适合的才是最好的

1、AI训练师的工作是什么?

为机器挑选【合适的model 和 loss function】,不同的model和loss function,来适合解决不同的问题

loss
英 [lɒs]  美 [lɔs]
n. 减少;亏损;失败;遗失
n. (Loss)人名;(匈)洛什;(法、德、意)洛斯
[ 复数 losses ]

2、如何理解“要训练出厉害的AI,AI训练师功不可没”?

AI训练师为机器挑选【合适的model 和 loss function】,不同的model和loss function,来适合解决不同的问题

3、机器学习要做的就是找一个function,那Regression要做的是什么?

找一个scalar(output a scalar):就是输出一个数值,比如自动驾驶汽车:f(无人车上的各个传感器)= 方向盘的角度,比如90度

4、Regression的实际例子有哪些?

Stock Market Forecast(股票市场预测):f(过去股票市场的变动)= Dow Jones Industrial Average at tomorrow
Self-driving car(自动驾驶汽车):f(无人车上的各个传感器)= 方向盘的角度
Recommendation(推荐):f(使用者A的种种特性 + 商品B的种种特性)= 购买可能性
Estimating the Combat Power(CP) of a pokemon after evolution(评估宝可梦的进化之后的战斗能力):f(进化前的宝可梦的各种属性)= CP after evolution

5、Regression函数是怎么建模的(变量命名规则)?

|||-begin

Estimating the Combat Power(CP) of a pokemon after evolution(评估宝可梦的进化之后的战斗能力):f(进化前的宝可梦的各种属性)= CP after evolution

|||-end

x加下标表示各种输入:进化前的宝可梦的各种属性:用x加下标表示,比如Xw表示重量,Xh表示高度,Xcp表示战斗力等等
y表示输出

6、机器学习中的模型是什么意思?

就是一组函数:a set of function;  比如 【线性模型】 y=b+w*Xcp中,不同的b和w就代表了不同的函数
比如精灵宝可梦进化后战斗力变化: y=b+w*Xcp

7、机器学习中的线性模型长什么样?

y=b+求和符号WiXi
b:bias(偏移),Wi:weight(权重)
Xi:各个属性,比如宝可梦的身高,宝可梦的体重,宝可梦进化前的战斗力

bias
英 ['baɪəs]  美 ['baɪəs]
n. 偏见;偏爱;斜纹;乖离率
vt. 使存偏见
adj. 偏斜的
adv. 偏斜地
n. (Bias)人名;(法、德、葡、喀)比亚斯;(英)拜厄斯

8、机器学习的第二步是衡量第一步Regression中的function好不好、有多好,那么如何衡量?

用loss function:相对于就是求 函数结果和实际结构的方差

9、机器学习的第二步中的Goodness of Function中的Loss functon(简称L)是什么?

评判函数好坏:Loss function是用来评判函数集中函数的好坏的
input:a function;output:how bad it is(这个function的好坏)
举例:可以是求 实际结果与函数结果的方差 来判断函数的好坏
L(f)是可以看做L(w,b)的:因为不同的函数其实就是不同的w和b在变化

10、判断函数集中函数好坏的时候,可以用穷举法来判断么?

一般是不行的:我们需要更有效率的方法:因为Xi可能有很多个,而且w和b的变化范围也几乎是无限的

11、在求函数集中最好的函数的时候用了Gradient Descent(梯度下降法)方法,那么Gradient Descent方法是什么,【原理】又是什么,注意点是什么?

最简单实例分析 + 画图:最简单实例分析,假设只有一个因变量w,那么L(w)可以画出来(纵轴L(w),横轴w)
判断w是加还是减:随机找一个初始的位置,找这个点切线的斜率(微分),如果切线斜率是负数,那么久增加w,反之正数
learning rate:增加w的幅度为η*斜率,那么这个η就是learning rate,η越大,相当于每次跨一大步,学习的越快,不过也没那么精确
不同起始点不一定可以找到global minimal:因为有些点出发,会走到local minima,这个时候斜率为0,w就走不动了,没法判断是向左还是向右

gradient
英 ['greɪdɪənt]  美 ['ɡredɪənt]
n. [数][物] 梯度;坡度;倾斜度
adj. 倾斜的;步行的

descent
英 [dɪ'sent]  美 [dɪ'sɛnt]
n. 下降;血统;袭击
vt. 除去…的气味;使…失去香味

12、在求函数集中最好的函数的时候用了Gradient Descent(梯度下降法)方法,如果变化的参数是两个,那么计算步骤是怎样?

1、选初始值:(Randomly)Pick an initial value w0,b0
2、计算斜率:计算L对w和b的偏微分,这就相当于一个参数时候的斜率,这里是往等高线的法线方向走

13、在求函数集中最好的函数的时候用了Gradient Descent(梯度下降法)方法中,是否斜率(微分)是0的点就是所求?

不是:一条线中可以有很多斜率为0的点,但是他们不一定是极值点

14、在求最好函数的过程中,我们发现最好一次函数的误差测试出来不满意,我们应该怎么做?

增加模型次数,或者分类讨论:可以换二次,三次等的模型,找到最适合的

15、机器学习在求最好函数的过程中,overfitting是什么?

函数模型太复杂了

增加函数次数,training data的误差变小,但是Test data的误差变大:虽然当我们增加函数次数时,可以使training data的Average Error越来越小,但是Test data的表现缺不尽如人意,甚至在五次方程时,大大超出了我们的预估。那么这种现象就叫做’overfitting。

16、机器学习选模型的时候,是选training data的误差最小的,还是选Test data的误差最小的?

选Test data的误差最小的:肯定是选Test data的误差最小的

17、机器学习选模型的时候,函数的次数越高越好么?

最合适的才是最好的:方程不是次数越复杂越好,所以我们要选择一个最合适的:选Test data的误差最小的

18、怎么解决overfitting的问题?

收集更多数据:用来测试:collect more data

19、在机器学习测试最好函数的过程中,我们发现同一个x对应多个y,可能的原因是什么?

遗漏因素:我们少考虑了因素,比如宝可梦的种族
分类讨论:或者可以分类讨论,不同的种族的宝可梦对应不同的 线性模型 ,这里分类讨论比增加函数次数得到的test data的误差更小(也不一定,或者有其它更好的模型)

20、在机器学习测试最好函数的过程中,如何对Loss Function来 Regularization(为什么要对Loss Function来Regularization)?

平滑化:Regularization就是Loss function 平滑化
正确函数一般是平滑的:因为一般平滑smoother的曲线才是我们需要的,那些抖动特别大的一看起来就不对

regularization
[,rɛɡjʊlərɪ'zeʃən]
n. 规则化;调整;合法化

21、为什么在对Loss Function 来 Regularization(使平滑化) 的过程中,增加的参数没有bias(偏移)?

一般没有帮助:因为线性函数的bias对函数平滑没有帮助

二、内容在总结中

 

李宏毅机器学习课程---2、Regression - Case Study的更多相关文章

  1. 李宏毅机器学习课程---4、Gradient Descent (如何优化 )

    李宏毅机器学习课程---4.Gradient Descent (如何优化) 一.总结 一句话总结: 调整learning rates:Tuning your learning rates 随机Grad ...

  2. 李宏毅机器学习课程---3、Where does the error come from

    李宏毅机器学习课程---3.Where does the error come from 一.总结 一句话总结:机器学习的模型中error的来源是什么 bias:比如打靶,你的瞄准点离准心的偏移 va ...

  3. 李宏毅机器学习课程笔记-2.5线性回归Python实战

    本文为作者学习李宏毅机器学习课程时参照样例完成homework1的记录. 任务描述(Task Description) 现在有某地空气质量的观测数据,请使用线性回归拟合数据,预测PM2.5. 数据集描 ...

  4. 李宏毅老师机器学习课程笔记_ML Lecture 1: ML Lecture 1: Regression - Demo

    引言: 最近开始学习"机器学习",早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程.今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子 ...

  5. 李宏毅机器学习笔记3:Classification、Logistic Regression

    李宏毅老师的机器学习课程和吴恩达老师的机器学习课程都是都是ML和DL非常好的入门资料,在YouTube.网易云课堂.B站都能观看到相应的课程视频,接下来这一系列的博客我都将记录老师上课的笔记以及自己对 ...

  6. 李宏毅机器学习笔记1:Regression、Error

    李宏毅老师的机器学习课程和吴恩达老师的机器学习课程都是都是ML和DL非常好的入门资料,在YouTube.网易云课堂.B站都能观看到相应的课程视频,接下来这一系列的博客我都将记录老师上课的笔记以及自己对 ...

  7. 李宏毅老师机器学习课程笔记_ML Lecture 0-1: Introduction of Machine Learning

    引言: 最近开始学习"机器学习",早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程.今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子 ...

  8. 课程三(Structuring Machine Learning Projects),第一周(ML strategy(1)) —— 1.Machine learning Flight simulator:Bird recognition in the city of Peacetopia (case study)

    []To help you practice strategies for machine learning, the following exercise will present an in-de ...

  9. 李宏毅老师机器学习课程笔记_ML Lecture 2: Where does the error come from?

    引言: 最近开始学习"机器学习",早就听说祖国宝岛的李宏毅老师的大名,一直没有时间看他的系列课程.今天听了一课,感觉非常棒,通俗易懂,而又能够抓住重点,中间还能加上一些很有趣的例子 ...

随机推荐

  1. Delphi 消息函数 SendMessage函数

    Delphi中SendMessage使用说明 SendMessage基础知识 函数功能:该函数将指定的消息发送到一个或多个窗口.此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回.而函数Po ...

  2. Spring Cloud Alibaba 从孵化到 "挂牌" 之旅

    背景 2014 年,Spring Boot 1.0 发布.Spring Boot 的发布绝对是 Pivotal 历史上具有里程碑意义的事件,它让我们能够非常简便地开发 Spring 应用,屏蔽了各种配 ...

  3. NOIP模拟测试29(A)

    T1: 题目大意:有一张有向无环图,第$x$次经过边$i$的代价为$a_ix+b_i$,最多经过$c_i$次,起点为1,$s$个点可作为终点,求走$k$次的最小代价. 我们新建一个汇点,将所有可做为终 ...

  4. 暴力字符串hash——cf1200E

    #include<bits/stdc++.h> using namespace std; #define ll long long #define N 1000005 #define mo ...

  5. delphi dll创建及调用

    第一章 DLL简单介绍由于在目前的学习工作中,需要用到DLL文件,就学习了下,在这里作个总结.首先装简单介绍下DLL:1,减小可执行文件的大小DLL技术的产生有很大一部分原因是为了减小可执行文件的大小 ...

  6. wmic命令用法小例

    wmic就是wmic.exe,位于windows目录底下,是一个命令行程序.WMIC可以以两种模式执行:交互模式(Interactive mode)和非交互模式(Non-Interactive mod ...

  7. 微软引入了两种新的网络过滤系统,WFP和NDISfilter

    Windows 8是微软公司推出的最新的客户端OS,内部名称Windows NT 80.相对于Windows NT 5.x,其网络结构变化非常大,原有的TDI,NDIS系统挂接方法不再适用.在Wind ...

  8. Echart使用js进行封装成函数

    Echart使用js进行封装成函数 主要是对 json 串的封装,使用 js 进行对 json 的解析.之间用的最多是循环取出数组中的值,如果拿去使用可直接修改 json 就好. 上一篇把二维的封装好 ...

  9. Dubbo入门到精通学习笔记(十):dubbo服务集群 、Dubbo分布式服务子系统的划分、Dubbo服务接口的设计原则

    文章目录 dubbo服务集群 Dubbo服务集群部署 Dubbo服务集群容错配置--集群容错模式 1.Failover Cluster 失败自动切换,当出现失败,重试其它服务器.`(缺省) 通常用于读 ...

  10. js小项目:显示与输入的内容相关的

    1,添加键盘抬起事件 2,获取文本框的内容,是否与数组中的内容匹配 3,创建元素 <!DOCTYPE html> <html lang="en"> < ...