zoukankan      html  css  js  c++  java
  • 感知机:Perceptron Learning Algorithm

    感知机是支持向量机SVM和神经网络的基础

    f = sign(wx+b)

    这样看起来好像是LR是差不多的,LR是用的sigmoid函数,PLA是用的sign符号函数,两者都是线性分类器,主要的差别在于策略不同,即损失函数不同。

    LR是用的均方误差,PLA是用的误分类点到分离超平面的总距离。

    感知机模型:

    f = sign(wx+b)

    几何解释:

    wx+b = 0是一个超平面s,w是s的法向量,b是超平面的截距。

    理想情况下,s把正负类分开。

    感知机学习策略:

    损失函数的选取是:误分类点到超平面s的总距离

    空间中一个点x0到s的距离:

    |wx0+b|/||w||

    误分类点到s的距离:

    -y0*(wx0+b)/||w||

    不考虑系数||w||,那么损失函数是:

    L(w,b) = -Σyi(wxi+b),其中(xi,yi)是误分类点

    PLA的算法也就是解损失函数的最小值的方法是随机梯度下降法

    损失函数L的梯度:

    gradwL = -Σyixi

    gradbL = -Σyi

    1.选取初始参数w,b

    2.从误分类点中随机选取一组:(xi,yi)

    3.更新w = w + ηyixi

       b = b + ηyi

    4.再挑选误分类点,再更新,直到没有误分类点

  • 相关阅读:
    身份证的测试用例
    集合
    网易考拉测试面试题整理
    linux基本指令分类
    网络编程
    设计模式
    MySQL中的索引
    MySQL中的事务
    Java判断字符串是否为乱码
    Activiti6.x删除外键
  • 原文地址:https://www.cnblogs.com/stAr-1/p/8134808.html
Copyright © 2011-2022 走看看