分类
简单来说,分类的过程就是对事物做出区别的过程。现在,有一名学生叫小明,同时你想确定他是好学生还是坏学生,这个确定的过程就是分类任务。下面用五个分类算法进行区分小明是好学生还是坏学生。
K近邻算法
以家长的视角给出:
“别和坏学生在一起玩耍,否则你也会和他们一样。”这种思想就是K近邻算法,通过统计离待测样本最近的K个样本的类别,来判断待测样本的类别。
古有孟母三迁,现有土豪父母购学区房。这些故事背后的原因就是想让自己的孩子接触更优秀的学生。以K近邻算法的角度来看,就是让待测样本离正样本距离更近,与负样本距离更远,从而使得待测样本离正样本更近,判断其为正样本。由此可判断小明有很大的可能是好学生。
朴素贝叶斯
以教导处主任的视角给出:
“根据以往经验来看,10个坏学生有9个爱打架。”
现在用贝叶斯公式计算,小明参与了一场打架,判断小明是好学生还是坏学生:
坏学生打架的概率:P(打架|坏学生)=0.9,P(不打架|坏学生)=0.1
根据经验:坏学生占学生总数 P(坏学生)=0.1,打架发生 P(打架)=0.09
P(坏学生|打架) = [P(打架|坏学生)P(坏学生)]/P(打架)
= [0.90.1]/0.09
= 1
由此可知,小明是坏学生。
而朴素贝叶斯算法有一个假设,特征独立,整个形式化计算过程仅做做原始、最简单的假设。意思就是,举个例子,教导处主任同时抓打架和早恋问题,那教导处主任通过打架和早恋这两个特征来判断学生的好坏的前提是这两者没有关联,可是在现实生活中,这种假设又不成立。这也就是朴素贝叶斯的缺点所在。
决策树
以邻居的视角给出:
“判断一个学生是好孩子还是坏孩子,先看抽不抽烟,再看染不染发,最后看讲不讲脏话。”
邻居的判别孩子好坏的特征是:抽烟、染发、讲脏话,其中拥有先后顺序,这就是决策树。决策树的核心就是如何决定特征的先后顺序。
逻辑回归
以纪委的视角给出:
“判断好坏学生看得分,上课讲话扣1分,不交作业扣两分,比赛得奖加5分。”
通过计算最终得分,来判断学生的好坏。
逻辑回归是一个线性的分类器,特征x和结果y存在一种线性的关系。以上面的例子介绍,假设讲话、不交作业、得奖为x1、x2、x3,学生初始分数为0,则y=-x1+(-2)x2+5x3+0。
支持向量机
以班主任的视角给出:
“我想个办法把坏学生都调到最后一排,不要打扰好学生专心学习。”
班主任的想法:让好学生和坏学生保持一个距离,不要干扰好学生。支持向量机就是致力于在正负样本上找到一条分割线,使得它可以完全区分两类样本,同时要满足画出的间隔尽量的大,也就是说,正负样本距离它尽量的远。在分布均匀的情况下,找不到一条分割线,那就提高维度,找到一个超平面,可以通过核函数,其中班主任换位置的办法就是核函数的作用,让原本散落在教室的好坏学生通过换座位来完成区分。