(self, network)
| 16 | |
| 17 | class Optimizer(object): |
| 18 | def optimize(self, network): |
| 19 | loss_history = [] |
| 20 | for i in range(network.max_epochs): |
| 21 | if network.shuffle: |
| 22 | network.shuffle_dataset() |
| 23 | |
| 24 | start_time = time.time() |
| 25 | loss = self.train_epoch(network) |
| 26 | loss_history.append(loss) |
| 27 | if network.verbose: |
| 28 | msg = "Epoch:%s, train loss: %s" % (i, loss) |
| 29 | if network.log_metric: |
| 30 | msg += ", train %s: %s" % (network.metric_name, network.error()) |
| 31 | msg += ", elapsed: %s sec." % (time.time() - start_time) |
| 32 | logging.info(msg) |
| 33 | return loss_history |
| 34 | |
| 35 | def update(self, network): |
| 36 | """Performs an update of parameters.""" |
no test coverage detected