for i in range(10): seed = random.randint(-65536, 65535) # -13920 good seed random.seed(seed) print("seed : ", seed) nn = NeuralNetwork(neuronsPerLayer=[31, 31, 1]) kb = [] testKB = [] for i in range(10000): kb.append((generateDispensableCard(), [1])) kb.append((generateIndispensableCard(), [0])) for i in range(1000): testKB.append((generateDispensableCard(), [1])) testKB.append((generateIndispensableCard(), [0])) untrainedErrorOnKB = nn.test(knowledgeBase=kb) print("untrainedErrorOnKB : ", untrainedErrorOnKB) untrainedErrorOnTest = nn.test(knowledgeBase=testKB) print("untrainedErrorOnTest : ", untrainedErrorOnTest) for i in range(1000): test = False if not i % 20: test = True trainedErrorOnKBi = nn.train(knowledgeBase=kb, doTests=test) print("trainedErrorOnKB", i, " :", trainedErrorOnKBi) else: trainedErrorOnKBi = nn.train(knowledgeBase=kb, doTests=test) trainedErrorOnKB1000 = nn.test(knowledgeBase=kb)
cost = ((test_y['pred_survived'] - test_y['Survived'])**2).mean() test_y = test_y[['pred_survived']] test_y.columns = ['Survived'] return test_y, cost if __name__ == '__main__': x, y = prep_train_data() test_x, test_y = prep_test_data() h_layers = [10, 10] inputs = x.values outputs = y.values nn = NeuralNetwork(n_inputs=4, n_outputs=2, h_layers=h_layers, inputs=inputs, expected_outputs=outputs) nn.open_session() nn.make_model(is_weights_rand=True) nn.make_tensor_board() s = time.time() nn.train(epochs=999, learning_rate=0.01, isliveplot=False) raw_outputs, _ = nn.test(test_inputs=test_x.values, test_outputs=test_y.values) test_y, cost = categorize_output(raw_outputs, test_y) test_y.to_csv('./data/my_submission.csv') print('cost: ', cost) e = time.time() - s print("Training took ", e, "seconds") nn.close_session() nn.plot()