最近了解了感知器,决定实现一个简单的来练习一下。
我采用《机器学习实战》这本书的Logistic回归一节的数据来做二分类。首先我把课本提供的代码中加载数据,绘图的部分封装为了一个工具,可以直接加载数据,处理完后再调用绘图引擎绘图。
这组数据的任务是平面点集的线性二分类。
我原来用Logistic回归+随机梯度算法实现过这个任务,收敛结果如下:
现在采用简单的感知器来进行分类。
下面采用线性分类模型,对于输入点 x = [ 1 x y ] x = [1\ x\ y] x=[1 x y],输出 h ( x ) = i n t ( x w > 0 ) h(x) = int(xw > 0) h(x)=int(xw>0)(即直线两边分别为两类点)
为了计算出权重 w = [ w 0 w 1 w 2 ] T w = [w_0\ w_1\ w_2]^T w=[