机器学习基石 3-3 Learning with different protocol

之前的两节内容分别从output space和data label两个方面对ML Algorithm进行了分类,本节从与机器进行protocol的过程对ML Algorithm进行划分。


首先解释一下什么叫protocol。protocol定义了一种用户与机器进行沟通的方法。举一个简单的例子,我们可以简单地把work的过程比作上课,用户相当于老师,机器相当于学生。上课方式的不同就是protocol的不同(有些老师上课喜欢提问题,有些老师就只是念PPT)。回到我们的work过程,简单来说protocol就是机器对于data的处理模式的不同。


duck feeding:batch learning



batch learning译为“批处理学习”,也就是一次性将data set中的所有data输入给机器,经过学习过程之后得到一个最佳假设g。这个过程有点类似于duck feeding(填鸭式)。拿上课的例子来打比方就是老师将一本写好了所有标准答案的教材给学生,然后让学生自己学习,最后期末考试得到一个成绩。这是一种非常常见的protocol的方式,当data set的规模不太大时可以使用这种方式进行学习,最后的输出有且仅有一个g。

逐步修正的学习方法:online learning


这种学习方法具有自我更新和修正的特性。回顾之前的PLA和reinforcement learning的方法,机器要对每一个data进行查看并对g进行调整,因此这种学习方法对于每一次数据的查看都会产生一个新的g,这个每次产生的最新的g都会趋向于f。还是上课的例子,online learning类似于老师一条条地将讲义上的内容交给学生,而学生在脑子里不断更新自己的知识体系,最终达到学习的目的。这种学习方法是sequentially的,也就是有序列性的,机器需要从一条一条的数据中不断更新g,最终获取最接近f的g。



主动询问:active learning




这种学习方法不但具有online learning的自我更新的特性,而且能够减少labeling的时间,更为高效地完成work的过程。该方法旨在提高机器asking的能力,即培养机器对work过程中所需要data的感应敏感度,使得机器能够对data set中的部分数据进行查看,获取labeling的结果之后作用到其他的data上。举上课的例子就是学生能够主动地对想学到的知识进行询问,老师只要对学生提出的问题进行解答即可。这种learning的方法比较适用于testing成本较高的过程。


猜你喜欢

转载自blog.csdn.net/qq_30474361/article/details/70741780
今日推荐