Exemplo n.º 1
0
def simulacao(input_dim,
              num_samples,
              sparseness,
              learning_rate,
              model_seed,
              data_seed,
              nsteps=1000,
              max_count=100):

    acc = np.zeros(nsteps + 1)
    myDataSet = buildRandomBoolDataSet(num_samples, input_dim,
                                       seed=data_seed).batch(num_samples)

    myIter = myDataSet.make_initializable_iterator()
    myFeatures, myLabels = myIter.get_next()
    x = myFeatures
    y_ = myLabels
    model = Model(x, y_, sparseness, learning_rate, seed=model_seed)
    model.set_vanilla_loss()
    # initialize variables
    sess.run(tf.global_variables_initializer())
    sess.run(myIter.initializer)
    acc[0] = model.accuracy.eval()
    count = 1
    for ss in np.arange(1, nsteps + 1):
        sess.run(myIter.initializer)
        model.reduce_sparsness()
        model.train_step.run()
        model.increase_sparsness()
        sess.run(myIter.initializer)
        acc[ss] = model.accuracy.eval()
        if (acc[ss] == acc[ss - count]):
            count += 1
        else:
            count = 1
        if (count == max_count):
            acc[ss:] = acc[ss]
            break

    return acc
Exemplo n.º 2
0
max_count = 100
num_samplesV = 1000
sparse = 0.1

data_seedV = np.arange(3)

myDataSet = buildRandomBoolDataSet(num_samplesV, input_dim,
                                   data_seed).batch(num_samplesV)
myIter = myDataSet.make_initializable_iterator()
myFeatures, myLabels = myIter.get_next()
x = myFeatures
y_ = myLabels

model = Model(x, y_, sparse, learning_rate,
              seed=data_seed)  # simple 2-layer network
model.set_vanilla_loss()

sess.run(tf.global_variables_initializer())
sess.run(myIter.initializer)

count = 1
for ss in np.arange(1, nsteps + 1):
    sess.run(myIter.initializer)
    #model.reduce_sparsness()
    model.train_step.run()

    sess.run(myIter.initializer)
    acc = model.accuracy.eval()

    sess.run(myIter.initializer)
    ce = model.cross_entropy.eval()