Ejemplo n.º 1
0
def test_AMSGrad_nesterov_momentum_quadratic():
    assert np.allclose(AMSGrad(f=quad1, momentum_type='nesterov').minimize().x,
                       quad1.x_star(),
                       rtol=0.1)
    assert np.allclose(AMSGrad(f=quad2, momentum_type='nesterov').minimize().x,
                       quad2.x_star(),
                       rtol=0.1)
Ejemplo n.º 2
0
def test_AdaDelta_quadratic():
    assert np.allclose(AdaDelta(f=quad1).minimize().x,
                       quad1.x_star(),
                       rtol=0.15)
    assert np.allclose(AdaDelta(f=quad2).minimize().x,
                       quad2.x_star(),
                       rtol=0.15)
Ejemplo n.º 3
0
def test_AdaMax_standard_momentum_quadratic():
    assert np.allclose(AdaMax(f=quad1, momentum_type='standard').minimize().x,
                       quad1.x_star(),
                       rtol=0.1)
    assert np.allclose(AdaMax(f=quad2, momentum_type='standard').minimize().x,
                       quad2.x_star(),
                       rtol=0.1)
Ejemplo n.º 4
0
def test_quadratic():
    assert np.allclose(Subgradient(f=quad1, a_start=0.32).minimize().x,
                       quad1.x_star(),
                       rtol=0.1)
    assert np.allclose(Subgradient(f=quad2, a_start=0.52).minimize().x,
                       quad2.x_star(),
                       rtol=0.1)
Ejemplo n.º 5
0
def test_AdaGrad_quadratic():
    assert np.allclose(AdaGrad(f=quad1, step_size=0.1).minimize().x,
                       quad1.x_star(),
                       rtol=0.1)
    assert np.allclose(AdaGrad(f=quad2, step_size=0.15).minimize().x,
                       quad2.x_star(),
                       rtol=0.1)
Ejemplo n.º 6
0
def test_Adam_Polyak_momentum_quadratic():
    assert np.allclose(Adam(f=quad1, momentum_type='polyak').minimize().x,
                       quad1.x_star(),
                       rtol=0.1)
    assert np.allclose(Adam(f=quad2, momentum_type='polyak').minimize().x,
                       quad2.x_star(),
                       rtol=0.1)
Ejemplo n.º 7
0
def test_RMSProp_quadratic():
    assert np.allclose(RMSProp(f=quad1, step_size=0.1).minimize().x,
                       quad1.x_star(),
                       rtol=0.1)
    assert np.allclose(RMSProp(f=quad2, step_size=0.1).minimize().x,
                       quad2.x_star(),
                       rtol=0.1)
Ejemplo n.º 8
0
def test_Nadam_quadratic():
    assert np.allclose(RMSProp(f=quad1, momentum_type='nesterov').minimize().x,
                       quad1.x_star(),
                       rtol=0.1)
    assert np.allclose(RMSProp(f=quad2, momentum_type='nesterov').minimize().x,
                       quad2.x_star(),
                       rtol=0.1)
Ejemplo n.º 9
0
def test_StochasticGradientDescent_Nesterov_momentum_quadratic():
    assert np.allclose(
        StochasticGradientDescent(f=quad1,
                                  momentum_type='nesterov').minimize().x,
        quad1.x_star())
    assert np.allclose(
        StochasticGradientDescent(f=quad2,
                                  momentum_type='nesterov').minimize().x,
        quad2.x_star())
Ejemplo n.º 10
0
def test_Nadam_quadratic():
    assert np.allclose(Adam(f=quad1, momentum_type='nesterov').minimize().x,
                       quad1.x_star(),
                       rtol=0.1)
    assert np.allclose(Adam(f=quad2,
                            step_size=0.1,
                            momentum_type='nesterov',
                            momentum=0.5).minimize().x,
                       quad2.x_star(),
                       rtol=0.1)
Ejemplo n.º 11
0
def test_quadratic():
    assert np.allclose(ProximalBundle(f=quad1).minimize().x, quad1.x_star())
    assert np.allclose(ProximalBundle(f=quad2).minimize().x, quad2.x_star(), rtol=0.1)
Ejemplo n.º 12
0
def test_ConjugateGradient_quadratic_FletcherReeves():
    assert np.allclose(ConjugateGradient(f=quad1).minimize().x, quad1.x_star())
    assert np.allclose(ConjugateGradient(f=quad2).minimize().x, quad2.x_star())
Ejemplo n.º 13
0
def test_ConjugateGradient_quadratic_DaiYuan():
    assert np.allclose(ConjugateGradient(f=quad1, wf='dy').minimize().x, quad1.x_star())
    assert np.allclose(ConjugateGradient(f=quad2, wf='dy').minimize().x, quad2.x_star())
Ejemplo n.º 14
0
def test_ConjugateGradient_quadratic_HestenesStiefel():
    assert np.allclose(ConjugateGradient(f=quad1, wf='hs').minimize().x, quad1.x_star())
    assert np.allclose(ConjugateGradient(f=quad2, wf='hs').minimize().x, quad2.x_star())
Ejemplo n.º 15
0
def test_ConjugateGradient_quadratic_PolakRibiere():
    assert np.allclose(ConjugateGradient(f=quad1, wf='pr').minimize().x, quad1.x_star())
    assert np.allclose(ConjugateGradient(f=quad2, wf='pr').minimize().x, quad2.x_star())
Ejemplo n.º 16
0
def test_quadratic():
    assert np.allclose(HeavyBallGradient(f=quad1).minimize().x, quad1.x_star())
    assert np.allclose(HeavyBallGradient(f=quad2).minimize().x, quad2.x_star())
Ejemplo n.º 17
0
def test_SteepestGradientDescent_quadratic():
    assert np.allclose(
        SteepestGradientDescent(f=quad1).minimize().x, quad1.x_star())
    assert np.allclose(
        SteepestGradientDescent(f=quad2).minimize().x, quad2.x_star())
Ejemplo n.º 18
0
def test_quadratic():
    assert np.allclose(Newton(f=quad1).minimize().x, quad1.x_star())
    assert np.allclose(Newton(f=quad2).minimize().x, quad2.x_star())