6

《生信与机器学习兴趣小组》第四次分享讨论/打卡贴

 2 years ago
source link: https://ming-lian.github.io/2019/07/22/Bioinfo-ML-Club-4th/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

《生信与机器学习兴趣小组》第四次分享讨论/打卡贴

发表于

2019-07-22

| 分类于 Club

主题:统计机器学习之分类任务入门

直播录屏已上传至B站,传送门

本期内容:

  • 机器学习概述

    • 统计机器学习与深度学习

    • 拟合问题与分类问题

  • 一奶同胞的三个分类算法

文字版笔记,点这里

内容包括上述的三种分类器拉格朗日乘子法

要求参与讨论方式:

在下面的评论栏里贴笔记打卡

Like • 14 Comments Issue Page
  • wuhao08 commented on Mon Jul 22 2019 • edited
  • chensole commented on Tue Jul 23 2019
  • pangkghm commented on Tue Jul 23 2019

    After the first contact with machine learning, I have the framework of machine learning and the understanding of several classifier principles

  • zoe106 commented on Wed Jul 24 2019

    谢谢连明师兄的讲解~~笔记有点长,放在简书上了,https://www.jianshu.com/p/65807c4fdf9a

  • Wentting commented on Wed Jul 24 2019

    感知机,SVM和逻辑斯谛回归


    *感知机是一个线性的分类器,以二维的问题来说,如果数据线性可分,那么一定存在一些线,使得线两侧是两个不同的类
    一个好的感知机模型:

    1. 误分类的点越少越好
    2. 误分类的点离分界面的距离之和越小越好
    • 直觉上这样是更好的分类器,所以叫感知机?*
    • 步长是自己定义的,可以决定一次下降多少进而不断迭代出最优结果,对于“局部最优解"即半山谷的情况,一种方法就是通过加大学习率,使得有可能一部跨过局部的最优解,还可以通过一次只对一个结果进行学习,不通过所有数据进行学习,这样每一次都是当前最佳的方向,这样也可以增大解的不确定性和震荡性,从而解决局部最优解的问题(不确定对不对)
      感知机模型不考虑||w||,所以分类平面并不唯一?
    • 猜测(不知道对不对):感知机只是关注分类是不是正确,所以才不考虑l2范数,所以这也是支持向量机对于感知机改进的地方

    支持向量机

    个人理解: 支持向量机实在感知机基础上的一种改进,感知机只考虑正确分类,因此分界面不是唯一的。而SVM需要找到最优的超平面,学习的策略就是使间隔最大化,并最终转变为一个凸二次规划问题,因此可以将模型定义为在特征空间上间隔最大的线性分类器。

    • SVM的判别模型与感知机基本类似。但是对于好的分类面的定义不相同
      一个好的SVM模型:
      超平面能够让所有点中离它最近的点具有最大间距(支持向量)
    • 函数间隔不适合用来最大化间隔值,因为在超平面固定以后,可以等比例地缩放w的长度和b的值,这样可以使得的值任意大,而几何间隔通过增加约束条件||w||,只随着超平面的变动而变动,所以最大化间隔max margin是几何间隔
    • 目标函数是二次的,约束条件是线性的,可以通过拉格朗日乘子法,利用拉格朗日对偶性变换到对偶变量 (dual variable) 的优化问题,即通过求解与原问题等价的对偶问题得到原始问题的最优解
    • 拉格朗日乘子法的思想是给约束条件加上拉格朗日乘子,将约束条件融合到目标函数中

    ###先写这么多,拉格朗日乘子法的坑之后补上

    • 我们一般熟悉的回归方式是线性回归,当y对x回归的时候,y有无数种取值可能,因此不能作为分类器使用,逻辑斯谛就是把y的取值变换成一个二分类的有限的取值,通过设置阈值进行分类

    师兄讲的很好,自己推一遍再理解师兄讲的思路有很多收获,但是菜鸡如我还是有很多不太懂的,第一次打卡,以后慢慢填吧

  • gsh150801 commented on Thu Jul 25 2019

    根据一些已观察到的证据(例如训练样本)来对感兴趣的未知变量(例如类别标记)进行估计
    (实现路径之一,概率模型,本质是,将机器学习任务归结为计算变量的概率,其核心是基于可观测变量推断出位置变量的条件分布)
    (极大似然是对概率模型参数学习优化目标的一种定义,是道;
    EM算法是用于求解极大似然估计的一种迭代逼近的算法,是术;)
    (求解过程:
    ①定义优化目标:极大似然估计mle
    只有可观测变量:贝叶斯分类器
    含有隐变量:隐马尔可夫模型
    ②求解优化目标:
    标准方程法:一步到位获得最优解的策略
    迭代法(如剃度下降法,牛顿法,拟牛顿法,em算法):先找一个随机解做为起始的当前解,然后对当前解进行迭代更新,保证每一次迭代后得到的新解朝着最优化的方向前进
    )
    #正经的笔记稍后再补上,好久没看数学,感觉要补的很多。背景知识要去看看😂 不懂的就查查参考书目

  • SZJShuffle commented on Mon Jul 29 2019 • edited
  • yueyang0907 commented on Mon Jul 29 2019 • edited

    第一次打卡and第一次在github上回复😂,嘿嘿,谢谢明哥的分享~很高兴能加入兴趣小组呀!
    这次的笔记做的不是很好,挺乱的😂。。听了明哥的直播和结合了网上的资料。。。理解的不是很好哇
    调库说是简单,但是深入理解其中的推理,实属不易。。。【高数、线代、概率】
    emm好啦,放上我的笔记。。##等以后在深入理解些,再来更改

  • Hua-CM commented on Fri Aug 02 2019 • edited

    感知机、SVM与逻辑回归

    感知机(perception)

    感知机只能做到线性分类界面

    分类界面(超平面):

    $$
    w^Tx+b=0
    $$

    分类函数:1 if sign(w*x+b=0) >1 else -1

    点到界面的距离:

    $$
    r=\frac{w^Tx+b}{||w||}
    $$

    推导过程:

    假定有如下超平面 ,及超平面外一点x0,且记x0在该超平面上的投影为x1

    $$
    w^Tx+b=0
    $$

    $$
    \vec{w}\vec{x_1x_0}=|\vec{w}||\vec{x_1x_0}|cos\Theta
    $$

    式中w为法向量,显然这里的cosΘ=1,所以有

    $$
    \vec{w}\vec{x_1x_0}=|\vec{w}||\vec{x_1x_0}|
    $$

    先算等式右边,记向量x0x1的长度为d,则右边等于:

    $$
    ||\vec{w}||d
    $$

    再计算等式左边,根据坐标计算有

    $$
    \vec{w}\vec{x_1x_0}=w^1(x_0^1-x_1^1)+\cdots+w^N(x_0^N-x_1^N)\\
    \quad\quad\quad\quad\quad\quad\quad=w^1x_0^1+\cdots+w^Nx_0^N-(w^1x_1^1+\cdots+w^Nx_1^N)\\
    =w^Tx_0-(-b)
    $$

    因为左右相等,所以不难计算出距离公式。

    批量梯度下降(Batch Gradient Descent):需要对当前的训练集全部遍历一遍

    跳出局部最优:随机梯度下降与加大学习率

    支持向量机(Support Vertical Machine)

    基本假设:离两类间隔尽量远的分界面是一个“好”的分界面

    间隔的计算:由每一类最靠近分界面的点决定

    点距离的计算:见感知机

    其中一类样本必然存在最小距离:r(i)≥min(r),这是几何间隔,记为r

    因此SVM实质上是在找使两侧最小距离最大化的超平面:max(min(r1)+min(r2))

    将上述提到的几何间隔乘以**|w|**就得到SVM超平面的函数间隔,即

    $$
    r=||\vec{w}||r
    $$

    将SVM转换为数学语言:

    先假设一个超平面为分类平面,对于任意一个给定的超平面:

    $$
    w^Tx+b=0
    $$

    其必然有上述提到的函数间隔(如下图)1

    不妨设两类距分类超平面的最小距离分别为{-1,1},则根据以下点的距离公式,我们可以算出在给定超平面的情况下两侧最小距离为下面的二式。

    $$
    r=\frac{w^Tx+b}{||w||}\quad\quad(1)\\
    r=\frac{2}{||w||}\quad\quad\quad\quad(2)
    $$

    因此SVM实际上是在找使(2)式最大化的超平面

    且具有约束条件(即没有比最小距离点离分类超平面更近的点)

    $$
    y_i(w^Tx_i+b)≥1
    $$

    **我的理解:**从这个角度看,几何间隔的支持向量机与感知机相比,一个只考虑最小距离,一个考虑所有样本

    拉格朗日乘子法

    基本的拉格朗日乘子法是求函数f(x1,x2,...)在约束条件g(x1,x2,...)=0下的极值的方法。

    用在SVM中就是求下列(1)式在(2)式约束条件下的极致

    $$
    r=\frac{2}{||w||}\quad\quad\quad\quad(1)\\
    y_i(w^Tx_i+b)≥1\quad(2)
    $$

    具体怎么推的略了(看到数学头就大)

    剩下的内容:

    KKT问题

    感知机和SVM的判别函数:sign()不可导,因此提出逻辑回归的判别函数

    总的来说就是吧判别函数换成了一个smooth过的函数,然后继续套上面的拉格朗日乘子法

    明哥总结:必须先可视化看下,再决定怎么干。不能上来就当调包侠,调啥用啥。

  • jsonProgram commented on Fri Aug 02 2019

    Marked!

  • Peerpoll commented on Mon Aug 05 2019 • edited

    ####哇!大家的笔记做的都比较好,字也写的比我好看多了,我就不贴我的笔记了。我主要分享下在我听完课后,对好奇的几点内容的补充。

    1. 梯度下降法(一般延切线方向进行优化)

    常用的3种方法:

    批量梯度下降,优点:容易得到最优解,缺点:需要考虑所有的样本,处理速度慢
    随机梯度下降,优点:迭代速度快,缺点:每次样本随机,不一定是沿着收敛方向
    小批量梯度下降,每次选着一部分数据进行优化,较为方便。

    2.sigmoid function

    可以将任意输入,映射到[0,1]区间,将在回归模型中得到的值,映射到sigmoid函数中,将回归的到的值转化成概率值,从而进行分类。

  • xuyinsheng commented on Wed Aug 07 2019
  • 2333jing commented on Thu Aug 22 2019 • edited
  • saberlike commented on Sun Sep 01 2019
Powered by Gitment

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK