Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Log TensorBoard events with chainer

Project description

Build Status codecov

Code Climate

PyPI version

tensorboard-chainer

Write tensorboard events with simple command. including scalar, image, histogram, audio, text, graph and embedding.

This is based on tensorboard-pytorch.

Usage

Install tensorflow.

pip install tensorflow

Execute demo.py and tensorboard. Access "localhost:6006" in your browser.

cd examples
python demo.py
tensorboard --logdir runs

Scalar example

graph

Histogram example

graph

Graph example

graph

Name scope

Like tensorflow, nodes in the graph can be grouped together in the namespace to make it easy to see.

import chainer
import chainer.functions as F
import chainer.links as L
from tb_chainer import name_scope, within_name_scope

class MLP(chainer.Chain):
    def __init__(self, n_units, n_out):
        super(MLP, self).__init__()
        with self.init_scope():
            self.l1 = L.Linear(None, n_units)  # n_in -> n_units
            self.l2 = L.Linear(None, n_units)  # n_units -> n_units
            self.l3 = L.Linear(None, n_out)  # n_units -> n_out

    @within_name_scope('MLP')
    def __call__(self, x):
        with name_scope('linear1', self.l1.params()):
            h1 = F.relu(self.l1(x))
        with name_scope('linear2', self.l2.params()):
            h2 = F.relu(self.l2(h1))
        with name_scope('linear3', self.l3.params()):
            o = self.l3(h2)
        return o

How to save the logs using this model is shown below. add_all_variable_images is the function that saves the Variable's data in the model that matches the pattern as an images. add_all_parameter_histograms is the function that save histograms of the Parameter's data in the model that match the pattern.

from datetime import datetime
from tb_chainer import SummaryWriter

model = L.Classifier(MLP(1000, 10))

res = model(chainer.Variable(np.random.rand(1, 784).astype(np.float32)),
            chainer.Variable(np.random.rand(1).astype(np.int32)))

writer = SummaryWriter('runs/'+datetime.now().strftime('%B%d  %H:%M:%S'))
writer.add_graph([res])
writer.add_all_variable_images([res], pattern='.*MLP.*')
writer.add_all_parameter_histograms([res], pattern='.*MLP.*')

writer.close()

Reference

Project details


Release history Release notifications

This version

0.4.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for tensorboard-chainer, version 0.4.0
Filename, size File type Python version Upload date Hashes
Filename, size tensorboard-chainer-0.4.0.tar.gz (28.4 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page