data1的数据如下(线性可分)
前50的标签为1,后50个为-1
data2是针对实现pocket算法而设计的,其实只是在PLA算法上的更新迭代上做了改动
PLA实现代码如下:一些函数解释在后面
相关函数说明:
1。pandas中的iloc函数
df.iloc[:,0].values - > 取第0列的所有数据
df.iloc[:,:3].values - > 取前3列(即0 1 2列)的所有数据
2。np.dot()
点乘,详细见图便可理解
3。np.hstack()
见图即可理解
4。关于where函数,刚开始有点难理解
最后出现两个array的意思是:第一个array的意思是第几行的意思,第二个array是第几个的意思
结合起来就是第几行第几个的意思
以下是针对data2线性不可分的情况下做的改进