diff options
author | Joe Zhao <ztuowen@gmail.com> | 2015-06-02 14:55:43 +0800 |
---|---|---|
committer | Joe Zhao <ztuowen@gmail.com> | 2015-06-02 14:55:43 +0800 |
commit | 229a3fd8fe5c83cd2230716dbd72be594c7be798 (patch) | |
tree | e550af94098020c8f8bf7b4188122afeac096f32 /cross.py | |
parent | 63627a714d73ee4ec3e0b23755d96baf612948a9 (diff) | |
download | cross-229a3fd8fe5c83cd2230716dbd72be594c7be798.tar.gz cross-229a3fd8fe5c83cd2230716dbd72be594c7be798.tar.bz2 cross-229a3fd8fe5c83cd2230716dbd72be594c7be798.zip |
rename
Diffstat (limited to 'cross.py')
-rw-r--r-- | cross.py | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/cross.py b/cross.py new file mode 100644 index 0000000..5fa9504 --- /dev/null +++ b/cross.py @@ -0,0 +1,68 @@ +from misc import * + +clist=[0.0001, 0.005, 0.01, 0.05, 0.1, 0.5, 1, 10, 100, 1000] + +inr="a.rid" + +folds=4 + +tot=316 + +for ite in range(10): + print("iter %d" % ite) + inm="%d.m" % ite + + o=ite+1 + + step = tot // folds + + ourb=inr + + for i in range(folds-1): + inra=ourb + oura="a%d.rid"%i + ourb="b%d.rid"%i + params = "-c %d -i %s -a %s -b %s" %(step,inra,oura,ourb) + split(params) + + inra=ourb + oura="a%d.rid"% (folds-1) + params = "-s -i %s -a %s"%(inra,oura) + split(params) + + for a in range(folds): + entries=['0','0'] + for b in range(folds): + if b!=a: + tmp=take("a%d.rid"%b) + entries = merge(tmp,entries) + rid="b%d.rid" %a + put(rid,entries) + + optc=1 + bcmc=folds + + for c in clist: + print(c) + oum="%d-%g.m" % (o,c) + + acmc = 0; + for a in range(folds): + rid = "b%d.rid"%a + params = "-T -d -m %s -i %s -o %s -c %g --cg_iter 100" % (inm,rid,oum,c) + train(params) + rid="a%d.rid"%a + params = "-V -C -m %s -i %s -s" %(oum,rid) + acmc+=cmc(params) + + print(acmc/folds) + + if bcmc>acmc: + optc=c + bcmc=acmc + + print("train with: %g" % optc) + oum="%d.m"% o + params = "-T -d -m %s -i %s -o %s -c %g" % (inm,inr,oum,optc) + train(params) + |