本文整理汇总了Python中pypet.Environment.add_postprocessing方法的典型用法代码示例。如果您正苦于以下问题:Python Environment.add_postprocessing方法的具体用法?Python Environment.add_postprocessing怎么用?Python Environment.add_postprocessing使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pypet.Environment
的用法示例。
在下文中一共展示了Environment.add_postprocessing方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: main
# 需要导入模块: from pypet import Environment [as 别名]
# 或者: from pypet.Environment import add_postprocessing [as 别名]
def main():
filename = os.path.join('hdf5', 'FiringRate.hdf5')
env = Environment(trajectory='FiringRate',
comment='Experiment to measure the firing rate '
'of a leaky integrate and fire neuron. '
'Exploring different input currents, '
'as well as refractory periods',
add_time=False, # We don't want to add the current time to the name,
log_stdout=True,
log_config='DEFAULT',
multiproc=True,
ncores=2, #My laptop has 2 cores ;-)
wrap_mode='QUEUE',
filename=filename,
overwrite_file=True)
traj = env.trajectory
# Add parameters
add_parameters(traj)
# Let's explore
add_exploration(traj)
# Ad the postprocessing function
env.add_postprocessing(neuron_postproc)
# Run the experiment
env.run(run_neuron)
# Finally disable logging and close all log-files
env.disable_logging()
示例2: main
# 需要导入模块: from pypet import Environment [as 别名]
# 或者: from pypet.Environment import add_postprocessing [as 别名]
def main():
env = Environment(trajectory='postproc_deap',
overwrite_file=True,
log_stdout=False,
log_level=50, # only display ERRORS
automatic_storing=True, # Since we us post-processing, we
# can safely enable automatic storing, because everything will
# only be stored once at the very end of all runs.
comment='Using pypet and DEAP with less overhead'
)
traj = env.traj
# ------- Add parameters ------- #
traj.f_add_parameter('popsize', 100, comment='Population size')
traj.f_add_parameter('CXPB', 0.5, comment='Crossover term')
traj.f_add_parameter('MUTPB', 0.2, comment='Mutation probability')
traj.f_add_parameter('NGEN', 20, comment='Number of generations')
traj.f_add_parameter('generation', 0, comment='Current generation')
traj.f_add_parameter('ind_idx', 0, comment='Index of individual')
traj.f_add_parameter('ind_len', 50, comment='Length of individual')
traj.f_add_parameter('indpb', 0.005, comment='Mutation parameter')
traj.f_add_parameter('tournsize', 3, comment='Selection parameter')
traj.f_add_parameter('seed', 42, comment='Seed for RNG')
# Placeholders for individuals and results that are about to be explored
traj.f_add_derived_parameter('individual', [0 for x in range(traj.ind_len)],
'An indivudal of the population')
traj.f_add_result('fitnesses', [], comment='Fitnesses of all individuals')
# ------- Create and register functions with DEAP ------- #
creator.create("FitnessMax", base.Fitness, weights=(1.0,))
creator.create("Individual", list, fitness=creator.FitnessMax)
toolbox = base.Toolbox()
# Attribute generator
toolbox.register("attr_bool", random.randint, 0, 1)
# Structure initializers
toolbox.register("individual", tools.initRepeat, creator.Individual,
toolbox.attr_bool, traj.ind_len)
toolbox.register("population", tools.initRepeat, list, toolbox.individual)
# Operator registering
toolbox.register("mate", tools.cxTwoPoint)
toolbox.register("mutate", tools.mutFlipBit, indpb=traj.indpb)
toolbox.register("select", tools.selTournament, tournsize=traj.tournsize)
# ------- Initialize Population and Trajectory -------- #
random.seed(traj.seed)
pop = toolbox.population(n=traj.popsize)
eval_pop = [ind for ind in pop if not ind.fitness.valid]
traj.f_explore(cartesian_product({'generation': [0],
'ind_idx': range(len(eval_pop)),
'individual':[list(x) for x in eval_pop]},
[('ind_idx', 'individual'),'generation']))
# ----------- Add postprocessing ------------------ #
postproc = Postprocessing(pop, eval_pop, toolbox) # Add links to important structures
env.add_postprocessing(postproc)
# ------------ Run applying post-processing ---------- #
env.run(eval_one_max)
# ------------ Finished all runs and print result --------------- #
print("-- End of (successful) evolution --")
best_ind = tools.selBest(pop, 1)[0]
print("Best individual is %s, %s" % (best_ind, best_ind.fitness.values))