感知机
来源:互联网 发布:java最好的培训 编辑:程序博客网 时间:2024/05/01 14:52
感知机
超平面w⋅x+b=0
当 wx+b>0时 为+1类
当 wx+b<0时 为-1类距离计算:
1||w||2|w⋅xi+b|注:||w||2为L2范式
计算错分类的距离:
优化:梯度▽下降法
代码简单实现
import numpy as np#梯度下降法def gradDesc(x,y,lr=0.001,loop=400,r=0): #lr=learning rate w=np.zeros(len(x[0])+1) x=np.column_stack([np.ones([len(x),1]),x]) for i in range(loop): y_hat=x.dot(w) misclass=((y*y_hat)<=0) grad=np.dot(y[misclass],x[misclass]) w+=lr*grad #--α▽ => +α·▽ return w,misclassif __name__=='__main__': x=np.array([[1,1],[1,0],[0,1],[2,3],[2,2],[3,3]]) y=np.array([-1,-1,-1,1,1,1]) w=gradDesc(x,y,lr=0.01)#learning rate 需要根据实际情况调整. print(w) #画图 import matplotlib.pyplot as plt plt.scatter(x[:,0],x[:,1],c=y) y_plot=(-x[:,0]*w[0][1]-w[0][0])/w[0][2] plt.plot(x[:,0],y_plot,c='b') plt.show()
阅读全文
0 0
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- 感知机
- Linux(Ubuntu16.0.4)下安装pycharm
- knockoutjs的foreach绑定应首先判断数组是否为空,否则会出错
- Java的重写与重载简析
- 数据结构 c语言 hash查找 链地址法实现
- B. The Festive Evening(Codeforces Round #426 (Div. 2) B)
- 感知机
- 这是标题
- TreeSet的自然排序和定制排序
- 数字和日期转换(Rand/Time)
- 730
- DS.Lab筆記
- 【搜索入门专题1】 hdu1242 J
- 算法四
- C. The Meaningless Game(Codeforces Round #426 (Div. 2) C)