def testEquivalence(net): cnet = net.convertToFastNetwork() if cnet == None: return None ds = buildAppropriateDataset(net) if net.sequential: for seq in ds: net.reset() cnet.reset() for input, _ in seq: res = net.activate(input) cres = cnet.activate(input) if net.name == '22': h = net['hidden0'] ch = cnet['hidden0'] print('ni', input, net.inputbuffer.T) print('ci', input, cnet.inputbuffer.T) print('hni', h.inputbuffer.T[0]) print('hci', ch.inputbuffer.T[0]) print('hnout', h.outputbuffer.T[0]) print('hcout', ch.outputbuffer.T[0]) print else: for input, _ in ds: res = net.activate(input) cres = cnet.activate(input) if epsilonCheck(sum(res - cres), 0.001): return True else: print('in-net', net.inputbuffer.T) print('in-arac', cnet.inputbuffer.T) print('out-net', net.outputbuffer.T) print('out-arac', cnet.outputbuffer.T) return (res, cres)
def predictOutcome(net, input, output): res = net.activate(input)[0] if epsilonCheck(res - output): return True else: print 'expected:', round(output, 7), '- got:', round(res, 7) return False
def testEquivalence(net): cnet = net.convertToFastNetwork() if cnet == None: return None ds = buildAppropriateDataset(net) if net.sequential: for seq in ds: net.reset() cnet.reset() for input, _ in seq: res = net.activate(input) cres = cnet.activate(input) if net.name == '22': h = net['hidden0'] ch = cnet['hidden0'] print 'ni', input, net.inputbuffer.T print 'ci', input, cnet.inputbuffer.T print 'hni', h.inputbuffer.T[0] print 'hci', ch.inputbuffer.T[0] print 'hnout', h.outputbuffer.T[0] print 'hcout', ch.outputbuffer.T[0] print else: for input, _ in ds: res = net.activate(input) cres = cnet.activate(input) if epsilonCheck(sum(res - cres), 0.001): return True else: print 'in-net', net.inputbuffer.T print 'in-arac', cnet.inputbuffer.T print 'out-net', net.outputbuffer.T print 'out-arac', cnet.outputbuffer.T return (res, cres)
def predictOutcome(net, input, output): res = net.activate(input)[0] if epsilonCheck(res - output): return True else: print('expected:', round(output, 7), '- got:', round(res, 7)) return False