commit 819322d2ec75f92e489e62e9cc4947989f672738
parent 7ad46a62f21deaf78af985eb00a7d92c8706b543
Author: David Freifeld <freifeld.david@gmail.com>
Date: Wed, 1 Jul 2020 19:34:00 -0700
Update to W&B demo
Diffstat:
2 files changed, 17 insertions(+), 9 deletions(-)
diff --git a/example.py b/example.py
@@ -2,22 +2,24 @@ import mrbpnn
import matplotlib.pyplot as plt
import numpy
import time
+import wandb
batch_sz = 10
-layers = 2
+layers = 1
epochs = 50
lr = 0.0155
bias_lr = 0.03
-neurons = 3
+neurons = 10
+ratio = 0.9
-net = mrbpnn.Network("./data_banknote_authentication.txt", batch_sz, lr, bias_lr)
+init = time.time()
+net = mrbpnn.Network("./data_banknote_authentication.txt", batch_sz, lr, bias_lr, ratio)
net.add_layer(4, "linear")
for i in range(layers):
net.add_layer(neurons, "lecun_tanh")
net.add_layer(1, "resig")
net.initialize()
-import wandb
wandb.init(project="jacobian")
wandb.config.update({"epochs": epochs,
"batch_size": batch_sz,
@@ -25,9 +27,13 @@ wandb.config.update({"epochs": epochs,
"bias_lr": bias_lr,
"hidden_layers": layers,
"activation":"lecun_tanh",
- "neurons": neurons})
+ "neurons": neurons,
+ "data_split":ratio})
+
for i in range(epochs):
net.train(1)
- wandb.log({'accuracy': net.get_acc(), 'cost': net.get_cost()})
-
+ wandb.log({'accuracy': net.get_acc(), 'cost': net.get_cost(), 'val_accuracy': net.get_val_acc(), 'val_cost': net.get_val_cost()})
+end = time.time()
+
+wandb.run.summary["time"] = end-init
wandb.save('jacobian.h5')
diff --git a/mr_bpnn_2.cpp b/mr_bpnn_2.cpp
@@ -119,6 +119,8 @@ PYBIND11_MODULE(mrbpnn, m) {
.def("update_layer", &Network::update_layer, py::arg("vals"), py::arg("len"), py::arg("index"))
.def("next_batch", &Network::next_batch)
.def("train", &Network::train, py::arg("epochs"))
- .def("get_acc", &Network::get_acc)x
- .def("get_cost", &Network::get_cost);
+ .def("get_acc", &Network::get_acc)
+ .def("get_cost", &Network::get_cost)
+ .def("get_val_acc", &Network::get_val_acc)
+ .def("get_val_cost", &Network::get_val_cost);
}