Esempio n. 1
0
 def test_tc(self):
     d = data.fromfile(testfile("testdata5.txt"))
     d.discretize()
     tasks = [greedy.GreedyLearner(d) for x in range(5)]
     tc = ipy1.IPython1Controller("127.0.0.1:10113")
     results = tc.run(tasks)
     results = result.merge(results)
     assert isinstance(results, result.LearnerResult)
Esempio n. 2
0
def run(configfile=None):
    try:
        configfile = configfile or sys.argv[2]
    except:
        usage("Please specify a config file.")

    config.read(configfile)

    numtasks = config.get('learner.numtasks')
    tasks = learner.fromconfig().split(numtasks)

    controller = taskcontroller.fromconfig()
    results = controller.run(tasks)

    merged_result = result.merge(results)
    if config.get('result.format') == 'html':
        merged_result.tohtml()
    else:
        merged_result.tofile()
Esempio n. 3
0
def run(configfile=None):
    try:
        configfile = configfile or sys.argv[2]
    except:
        usage("Please specify a config file.")

    config.read(configfile)

    numtasks = config.get('learner.numtasks')
    tasks = learner.fromconfig().split(numtasks)

    controller = taskcontroller.fromconfig()
    results = controller.run(tasks)

    merged_result = result.merge(results)
    if config.get('result.format') == 'html':
        merged_result.tohtml()
    else:
        merged_result.tofile()
Esempio n. 4
0
from pebl.taskcontroller import xgrid
from pebl.test import testfile

help = """Test the Xgrid TaskController.

USAGE: test_xgrid.py configfile

You need to provide the configfile for use with XGridController.

###############################################################################
    WARNING for pebl devs: 
        Do NOT put your configfile under svn. 
        It contains sensitve information.
###############################################################################
"""

if len(sys.argv) < 2:
    print help
    sys.exit(1)

config.read(sys.argv[1])
d = data.fromfile(testfile("testdata5.txt"))
d.discretize()

tc = xgrid.XgridController()
results = tc.run([greedy.GreedyLearner(d, max_time=10) for i in xrange(10)])
results = result.merge(results)

print results
print [r.host for r in results.runs]
Esempio n. 5
0
#!/usr/bin/env python
# Bayesian with five greedy and 5 simulated annearling learners serially
# http://pythonhosted.org/pebl/tutorial.html

from pebl import data, result
from pebl.learner import greedy, simanneal
from pebl.taskcontroller import multiprocess
dataset = data.fromfile("pebl-tutorial-data2.txt")
learners = [ greedy.GreedyLearner(dataset, max_iterations=1000000) for i in range(5) ] + \
  [ simanneal.SimulatedAnnealingLearner(dataset) for i in range(5) ]
tc = multiprocess.MultiProcessController(poolsize=2)
results = tc.run(learners)
merged_result = result.merge(results)
merged_result.tofile("example4-result")
Esempio n. 6
0
from pebl.learner import greedy
from pebl.taskcontroller import ec2
from pebl.test import testfile

help = """Test the EC2 TaskController.

USAGE: test_ec2.py configfile

You need to provide the configfile for use with EC2Controller.

###############################################################################
    WARNING for pebl devs: 
        Do NOT put your configfile under svn. 
        It contains sensitve information.
###############################################################################
"""

if len(sys.argv) < 2:
    print help
    sys.exit(1)

d = data.fromfile(testfile("testdata5.txt"))
d.discretize()

tc = ec2.EC2Controller(config=sys.argv[1], min_count=3)
results = tc.run([greedy.GreedyLearner(d, max_time=10) for i in xrange(10)])
results = result.merge(results)

print results
print[r.host for r in results.runs]
Esempio n. 7
0
from pebl import data, result
from pebl.learner import greedy, simanneal
import numpy as np
from pebl.taskcontroller import multiprocess
dataset = data.fromfile("zinc.txt")


dataset.discretize()

learner1 = greedy.GreedyLearner(dataset, max_iterations=1000)

result1 = learner1.run()

learner2 = greedy.GreedyLearner(dataset, max_iterations=1000)

result2 = learner2.run()

#learners = [ greedy.GreedyLearner(dataset, max_iterations=100) for i in range(5) ] #+ \
           # [ simanneal.SimulatedAnnealingLearner(dataset) for i in range(5) ]

result1.tohtml('example2.out')
result2.tohtml('example3.out')
merged_result = result.merge(result1, result2)
merged_result.tohtml("zinc",)
merged_result.tofile('example.out')
Esempio n. 8
0
#!/usr/bin/env python
# Bayesian with five greedy and 5 simulated annearling learners serially
# http://pythonhosted.org/pebl/tutorial.html

from pebl import data, result
from pebl.learner import greedy, simanneal
dataset = data.fromfile("pebl-tutorial-data2.txt")
learners = [ greedy.GreedyLearner(dataset, max_iterations=1000000) for i in range(5) ] + \
  [ simanneal.SimulatedAnnealingLearner(dataset) for i in range(5) ]
merged_result = result.merge([learner.run() for learner in learners])
merged_result.tofile("example3-result")
Esempio n. 9
0
 def test_tc(self):
     results = self.tc.run(self.tasks)
     results = result.merge(results)
     assert isinstance(results, result.LearnerResult)
Esempio n. 10
0
 def setUp(self):
     super(TestPosterior, self).setUp()
     self.merged = result.merge(self.result1, self.result2)
     self.posterior = self.merged.posterior
Esempio n. 11
0
 def test_merged_scores(self):
     mr = result.merge([self.result1, self.result2])
     assert [n.score for n in mr.networks] == [-13, -12, -11, -10.5, -8.5, -6, -5.5]
Esempio n. 12
0
 def test_merged_size1(self):
     mr = result.merge(self.result1, self.result2)
     len(mr.networks) == (5+3-1) # 1 duplicate network
Esempio n. 13
0
#!/usr/bin/env python
# http://pythonhosted.org/pebl/tutorial.html

from pebl import data, result
from pebl.learner import greedy
dataset = data.fromfile("pebl-tutorial-data2.txt")
learner1 = greedy.GreedyLearner(dataset, max_iterations=1000000)
learner2 = greedy.GreedyLearner(dataset, max_time=120)  # in seconds
result1 = learner1.run()
result2 = learner2.run()
merged_result = result.merge(result1, result2)
merged_result.tofile("example2-result")