-
Notifications
You must be signed in to change notification settings - Fork 0
/
analyze.py
37 lines (26 loc) · 925 Bytes
/
analyze.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import config
import inference as inf
import result as re
reload(inf)
reload(re)
def main(prefix):
result = re.load_result(prefix)
result.import_dict(ml_glpp_parameters(result))
re.save_result(prefix,result)
return result
def ml_glpp_parameters(result, model=False):
''' Performs ML inference on the given simulation result,
and returns the resulting parameters '''
if not model: model = inf.MultiNeuron()
model.set_data(result.trial.dt, result.trial.length(),
result.stimulus.signal, result.spike_trains.sparse_bins())
K,H,Mu = model.max_likelihood()
intensity = model.logI(K,H,Mu)
parameters = {'K':K, 'H':H, 'Mu':Mu, 'intensity':intensity,
'stim_basis':model.stim_basis,'spike_basis':model.spike_basis}
return parameters
if(__name__=="__main__"):
import sys
prefix = config.results_dir+sys.argv[1]
print "=== Running analysis: %s" % prefix
main(prefix)