林轩田之机器学习课程笔记(when can machines learn之learning problem)(32之1)

欢迎转载,可以关注博客:http://blog.csdn.net/cqy_chen

前言

其实很早就看完了该课程,看了两遍。在实际的运用中,会发现会慢慢的变成调参侠,比如使用比较火热的XGB,深度学习中的GoogLeNet。调一调,用一用。可以了上线。虽然这些算法的原理都是了解的,但总归是缺点什么,想了想,缺少融会贯通的能力,还需要从哲学思维去了解这些算法。从哪里来,到哪里去?故而再温习该课程,顺便加点自己的感想。
注:本笔记没有完全按照该课程,加入了自己的一些理解。

课程简介

课程主要分为4块:
1 :什么时候机器可以学习
2 :为什么机器可以学习
3:机器如何学习
4:如何让机器学的更好

共32次课程,台大的校园课程是 15周。一周两次。

什么是机器学习

什么是机器学习?本质上是把人学习的过程交给了机器,那么人是怎么学习的呢?看到一堆数据,然后得到一些经验,所谓吃一堑长一智。而机器学习的话,还需要给一个目标函数,不能乱走,比如反欺诈,那么就是要降低欺诈风险,个性化推荐,需要提高用户的满意度等等。
林轩田之机器学习课程笔记(when can machines learn之learning problem)(32之1)
这里的技能可以看做就是我们的优化目标的手段。机器学习就是机器通过一堆资料的学习,找到相应的模型、算法等等,提高解决问题的能力。

为什么要用机器学习

比如要识别下面的图中的二哈。
林轩田之机器学习课程笔记(when can machines learn之learning problem)(32之1)
你能不能写一段规则程序来分别呢?比如耳朵尖尖的,傻傻的(怎么来区分傻呢?)颜色嘛花花的,这个很难人为的定义一些规则来说这个是二哈。搞不好成了牧羊犬。而人类学习,不是说这个狗的耳朵是尖尖的就是二哈,而是根据自己的学习来的。

我们很难通过显式的去定义一个问题的时候,可能就需要机器学习,让机器自己去学习这些规则

当我们不能人工的方式来编写程序的时候,比如无人驾驶,需要汽车自动根据环境来做出反应

当我们很难简单的定义得到一些结果的时候,比如语言识别,图形图像识别

当需要快速做出反应,而我们无法做到的时候,比如高频交易

当我们需要进行个性化推荐的时候,我们不可能了解每个人,这个时候就要用机器学习

授之以渔而不是授之以鱼,教授给电脑如何钓鱼而不是给电脑鱼

机器学习的三个关键:
1)数据,机器学习是数据驱动的。
2)目标,该问题是有潜在的模式的,机器可以从中可以学到东西。
3)不知道如何显示编程的。

如果存在这三个关键的因素,才会去考虑使用机器学习。

机器学习的应用

机器学习应该说在很多地方都有应用,比如每天用的搜索引擎,点开网页的推荐广告、淘宝首页的个性化推荐、无人驾驶、现在比较热门的视频预测(深度学习的对抗学习)
机器学习在我们的衣食住行育乐方面都有各种各样的应用。

食:比如我们可以通过大众点评、口碑网的排名选择商家吃饭。
衣:个性化的搭配衣服,每个人的体型,爱好不同,需要推荐不同的穿衣搭配。
住:比如房价的预测,房屋耗能预测等
行:无人驾驶,信号灯的识别,行人的识别等等
育:在做练习题的时候,可以根据每个人的能力和题目的难度进行推荐答题。如下就是2010年的kddcup关于教育的一个竞赛题目。
http://www.kdd.org/kdd-cup/view/kdd-cup-2010-student-performance-evaluation
乐:比如电影推荐系统,进行个性化的推荐。如下是雅虎在2011年的比赛,电影的个性化推荐。
http://www.kdd.org/kdd2011/kddcup.shtml

机器学习的构成

先看一个简单的问题:
林轩田之机器学习课程笔记(when can machines learn之learning problem)(32之1)
这个是简单的信用卡申请的资料,我们需要通过这些资料判断要不要给用户发信用卡。
这个问题我们可以分解成:
林轩田之机器学习课程笔记(when can machines learn之learning problem)(32之1)
假设用户的资料是由函数f 产生的,这里的f我们是不知道的,这里只是为了方便理解,进行了假设。
这里先进行符号的设定

X:表示我们的输入
y:表示输出
f :表示产生这些资料的函数,或者一个模式。再次强调,这个我们是不知的。
g:提升我们判别能力的假设,函数,模型等。
D:数据,就是我们的一堆资料,一般是成对出现:D={(x1,y1),(x2,y2),......}

我们的目标就是要使得gf尽可能的接近
总体表达如下:
林轩田之机器学习课程笔记(when can machines learn之learning problem)(32之1)

这里将演算法和模型进行了分开,就是HA 。因为模型和演算法还是有些不同的。

机器学习和其他领域的关系

数据挖掘:在大量的数据中找到一些数据之间的关系。

机器学习 :是使用大量的资料去使得g 接近f,机器学习和数据挖掘很难进行区分。

人工智能:AI是通过计算使得机器能够表现出人类的智慧,而机器学习是通往人工智能的一条路,我们的先人们还试过通过知识图谱的方式达到人工智能,貌似不行哇。

统计学习:通过数据进行一些推理,注重的是一些理论,而不是实践。当然统计学习为机器学习提供很多实用的工具。

机器学习和数据挖掘
林轩田之机器学习课程笔记(when can machines learn之learning problem)(32之1)

机器学习和人工智能
林轩田之机器学习课程笔记(when can machines learn之learning problem)(32之1)

机器学习和统计学习
林轩田之机器学习课程笔记(when can machines learn之learning problem)(32之1)

欢迎转载,可以关注博客:http://blog.csdn.net/cqy_chen

————————–done—————————————–