##林轩田 机器学习 作业1 PLA算法 18题
####代码还没简化,能跑通
#####数据集来自
https://d396qusza40orc.cloudfront.net/ntumlone%2Fhw1%2Fhw1_18_train.dat
#####测试集来自
https://d396qusza40orc.cloudfront.net/ntumlone%2Fhw1%2Fhw1_18_test.dat
我直接复制下来放到txt中保存的。
同时参考了https://blog.csdn.net/devil_bye/article/details/80752529
查看网上资料,发现有两种对pocket的理解,下面都列出来。
####第二种方法Pocket2效果比第一种方法好,具体哪种是正确的希望大家能提议,谢谢大家。
草稿代码如下
# coding=utf-8
from numpy import *
import random as rd
def loadData(filename,Shuffle=False):##添加随机打乱控制位
fr=open(filename)
Xmat=[]
Ymat=[]
shuffle_data=[]
for line in fr.readlines():
line=line.strip()##去除头尾的空格或者是Tab
curLine=line.split(' ')##以‘ ’为标准将string转换成list
shuffle_data.append(curLine)
if Shuffle:
rd.shuffle(shuffle_data)
for curLine in shuffle_data:
k=curLine
temp=curLine[:-1]
temp2=(curLine[-1]