Sonapse-LAB / tests /test_learning.py
Kai9987kai's picture
feat: architectural advancement & technical review grounding
0d4b28f
Raw History Blame Contribute Delete
711 Bytes
import numpy as np
import pytest
from synapse.learning import fit_readout, predict, fresh_weights
from synapse.rsi import Policy, propose
def test_gradient_bootstraps_zero_readout():
x=np.eye(4); y=np.array([0,1,0,1]); w=fresh_weights(4)
fitted=fit_readout(x,y,w,method='gradient',steps=30,rate=1.)
assert np.array_equal(predict(x,fitted),y)
assert not w.any()
def test_inherited_policy_generates_successor():
p=Policy(); child=propose(p,0,17); grandchild=propose(child,1,17)
assert child.parent==p.identity
assert grandchild.parent==child.identity
assert grandchild.generation==2
def test_fresh_weights_equal():
assert np.array_equal(fresh_weights(12),fresh_weights(12))