コード例 #1
0
def test_trace():
    from EvoDAG import RootGP
    from EvoDAG.node import Add
    y = cl.copy()
    mask = y == 0
    y[mask] = 1
    y[~mask] = -1
    Add.nargs = 3
    gp = RootGP(generations=np.inf,
                tournament_size=2,
                function_set=[Add],
                classifier=False,
                early_stopping_rounds=-1,
                seed=0,
                popsize=4)
    gp.X = X[:-10]
    gp.Xtest = X[-10:]
    gp.y = y[:-10]
    gp.create_population()
    a = gp.random_offspring()
    gp.population.replace(a)
    print(a.position, a.variable, a._weight, gp.population.hist[0].variable)
    s = gp.trace(a)
    print(len(s), s)
    assert a._weight.shape[0] + 1 == len(s)
コード例 #2
0
def create_problem_node2(nargs=4, seed=0):
    from EvoDAG import RootGP
    gp = RootGP(generations=1, popsize=nargs, multiple_outputs=True, seed=seed)
    gp.X = X
    gp.Xtest = X
    y = cl.copy()
    gp.nclasses(y)
    gp.y = y
    return gp, [gp.X[x] for x in range(nargs)]
コード例 #3
0
def test_features():
    from EvoDAG import RootGP
    gp = RootGP(generations=1)
    gp.X = X
    assert gp.nvar == 4
    print(gp.X)
    assert isinstance(gp.X[0], Variable)
    assert isinstance(gp.X[0].hy, SparseArray)
    gp.Xtest = X
    assert gp.X[0].hy.SSE(gp.X[0].hy_test) == 0
コード例 #4
0
ファイル: test_root.py プロジェクト: mgraffg/EvoDAG
def test_features():
    from EvoDAG.sparse_array import SparseArray
    from EvoDAG import RootGP
    gp = RootGP(generations=1)
    gp.X = X
    assert gp.nvar == 4
    print(gp.X)
    assert isinstance(gp.X[0], Variable)
    assert isinstance(gp.X[0].hy, SparseArray)
    gp.Xtest = X
    assert gp.X[0].hy.SSE(gp.X[0].hy_test) == 0
コード例 #5
0
def create_problem_node(nargs=4, seed=0):
    from EvoDAG import RootGP
    gp = RootGP(generations=1, popsize=nargs, classifier=False, seed=seed)
    gp.X = X
    gp.Xtest = X
    y = cl.copy()
    mask = y == 0
    y[mask] = 1
    y[~mask] = -1
    gp.y = y
    return gp, [gp.X[x] for x in range(nargs)]
コード例 #6
0
ファイル: test_node.py プロジェクト: mgraffg/EvoDAG
def create_problem_node(nargs=4):
    from EvoDAG import RootGP
    gp = RootGP(generations=1, popsize=4)
    gp.X = X
    gp.Xtest = X
    y = cl.copy()
    mask = y == 0
    y[mask] = 1
    y[~mask] = -1
    gp.y = y
    return gp, [gp.X[x] for x in range(nargs)]
コード例 #7
0
ファイル: test_naive_bayes.py プロジェクト: yadevi/EvoDAG
def create_problem_node2(nargs=4, seed=0):
    from EvoDAG import RootGP
    from test_root import X, cl
    import numpy as np
    gp = RootGP(generations=1, popsize=nargs, multiple_outputs=True, seed=seed)
    X1 = np.concatenate((X, np.atleast_2d(np.zeros(X.shape[0])).T), axis=1)
    for i in range(10, 20):
        X1[i, -1] = 1
    gp.X = X1
    gp.Xtest = X1
    y = cl.copy()
    gp.nclasses(y)
    gp.y = y
    return gp, [gp.X[x] for x in range(nargs)]
コード例 #8
0
ファイル: test_root.py プロジェクト: mgraffg/EvoDAG
def test_variable():
    from EvoDAG import RootGP
    gp = RootGP(generations=1, popsize=4)
    gp.X = X
    Xtest = [x for x in X]
    Xtest[0] = Xtest[0] + np.inf
    gp.Xtest = Xtest
    y = cl.copy()
    mask = y == 0
    y[mask] = 1
    y[~mask] = -1
    gp.y = y
    randint = np.random.randint
    mock = MagicMock()
    mock.side_effect = list(range(gp.popsize))
    np.random.randint = mock
    var = gp.random_leaf()
    assert var.isfinite()
    assert var.hy.isfinite()
    np.random.randint = randint
コード例 #9
0
def test_variable():
    from EvoDAG import RootGP
    gp = RootGP(generations=1, classifier=False, popsize=4)
    gp.X = X
    Xtest = [x for x in X]
    Xtest[0] = Xtest[0] + np.inf
    gp.Xtest = Xtest
    y = cl.copy()
    mask = y == 0
    y[mask] = 1
    y[~mask] = -1
    gp.y = y
    randint = np.random.randint
    mock = MagicMock()
    mock.side_effect = list(range(gp.popsize))
    np.random.randint = mock
    var = gp.random_leaf()
    assert var.isfinite()
    assert var.hy.isfinite()
    np.random.randint = randint
コード例 #10
0
ファイル: test_root.py プロジェクト: mgraffg/EvoDAG
def test_trace():
    from EvoDAG import RootGP
    from EvoDAG.node import Add
    y = cl.copy()
    mask = y == 0
    y[mask] = 1
    y[~mask] = -1
    Add.nargs = 3
    gp = RootGP(generations=np.inf,
                tournament_size=2,
                function_set=[Add],
                early_stopping_rounds=-1,
                seed=0,
                popsize=4)
    gp.X = X[:-10]
    gp.Xtest = X[-10:]
    gp.y = y[:-10]
    gp.create_population()
    a = gp.random_offspring()
    gp.population.replace(a)
    print(a.position, a.variable, a._weight, gp.population.hist[0].variable)
    s = gp.trace(a)
    assert len(s) == 4