summaryrefslogtreecommitdiff
path: root/cross.py
diff options
context:
space:
mode:
authorJoe Zhao <ztuowen@gmail.com>2015-06-04 00:39:54 +0800
committerJoe Zhao <ztuowen@gmail.com>2015-06-04 00:39:54 +0800
commitdae9241190d658f44af6e3f8d7de107f03771797 (patch)
tree9778d53122e9580d0b82719cbf9e411d25e59c6e /cross.py
parentf44d718fad470012ae634cf0fd5046b1307620d7 (diff)
downloadcross-dae9241190d658f44af6e3f8d7de107f03771797.tar.gz
cross-dae9241190d658f44af6e3f8d7de107f03771797.tar.bz2
cross-dae9241190d658f44af6e3f8d7de107f03771797.zip
rename
Diffstat (limited to 'cross.py')
-rw-r--r--cross.py67
1 files changed, 67 insertions, 0 deletions
diff --git a/cross.py b/cross.py
new file mode 100644
index 0000000..3881b6e
--- /dev/null
+++ b/cross.py
@@ -0,0 +1,67 @@
+from misc import *
+
+def onefold(inr,inm,tot,clist,folds,resm)
+
+#clist=[0.0001, 0.005, 0.01, 0.05, 0.1, 0.5, 1, 10, 100, 1000]
+
+#inr="a.rid"
+
+#folds=4
+
+#tot=316
+
+#inm="%d.m"
+
+#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="t%g.m" % 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)
+ params = "-T -d -m %s -i %s -o %s -c %g" % (inm,inr,resm,optc)
+ train(params)
+