用Python实现PLA算法及Pocket算法


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线性不可分的情况下做的改进

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM