LBANN  0.103.0
LivermoreBigArtificialNeuralNetworkToolkit
lbann::callback::summarize_images Class Reference

Callback to dump images to event files based on strategy. More...

#include <summarize_images.hpp>

Inheritance diagram for lbann::callback::summarize_images:
[legend]
Collaboration diagram for lbann::callback::summarize_images:
[legend]

Public Member Functions

 summarize_images (std::shared_ptr< lbann_summary > const &summarizer, std::unique_ptr< image_output_strategy > strategy, std::string const &img_source_layer_name, uint64_t interval=1, std::string const &img_format=".jpg")
 summarize_images Constructor. More...
 
callback_basecopy () const override
 Copy constructor. More...
 
std::string name () const override
 Return name of callback. More...
 
void on_batch_evaluate_end (model *m) override
 Hook to pull data from lbann run. More...
 
void write_specific_proto (lbann_data::Callback &proto) const final
 
- Public Member Functions inherited from lbann::callback_base
 callback_base (int batch_interval=1)
 Initialize a callback with an optional batch interval. More...
 
 callback_base (const callback_base &)=default
 
virtual ~callback_base ()=default
 
virtual void setup (trainer *t)
 Called once to set up the callback on the trainer. More...
 
virtual void setup (model *m)
 Called once to set up the callback on the model (after all layers are set up). More...
 
virtual void on_setup_end (model *m)
 Called at the end of setup. More...
 
virtual void on_train_begin (model *m)
 Called at the beginning of training. More...
 
virtual void on_train_end (model *m)
 Called at the end of training. More...
 
virtual void on_phase_end (model *m)
 Called at the end of every phase (multiple epochs) in a layer-wise model training. More...
 
virtual void on_epoch_begin (model *m)
 Called at the beginning of each epoch. More...
 
virtual void on_epoch_end (model *m)
 Called immediate after the end of each epoch. More...
 
virtual void on_batch_begin (model *m)
 Called at the beginning of a (mini-)batch. More...
 
virtual void on_batch_end (model *m)
 Called immediately after the end of a (mini-)batch. More...
 
virtual void on_test_begin (model *m)
 Called at the beginning of testing. More...
 
virtual void on_test_end (model *m)
 Called immediately after the end of testing. More...
 
virtual void on_validation_begin (model *m)
 Called at the beginning of validation. More...
 
virtual void on_validation_end (model *m)
 Called immediately after the end of validation. More...
 
virtual void on_forward_prop_begin (model *m)
 Called when a model begins forward propagation. More...
 
virtual void on_forward_prop_begin (model *m, Layer *l)
 Called when a layer begins forward propagation. More...
 
virtual void on_forward_prop_end (model *m)
 Called when a model ends forward propagation. More...
 
virtual void on_forward_prop_end (model *m, Layer *l)
 Called when a layer ends forward propagation. More...
 
virtual void on_backward_prop_begin (model *m)
 Called when a model begins backward propagation. More...
 
virtual void on_backward_prop_begin (model *m, Layer *l)
 Called when a layer begins backward propagation. More...
 
virtual void on_backward_prop_end (model *m)
 Called when a model ends backward propagation. More...
 
virtual void on_backward_prop_end (model *m, Layer *l)
 Called when a layer ends backward propagation. More...
 
virtual void on_optimize_begin (model *m)
 Called when a model begins optimization. More...
 
virtual void on_optimize_begin (model *m, weights *w)
 Called when weights begins optimization. More...
 
virtual void on_optimize_end (model *m)
 Called when a model ends optimization. More...
 
virtual void on_optimize_end (model *m, weights *w)
 Called when weights ends optimization. More...
 
virtual void on_batch_evaluate_begin (model *m)
 Called at the beginning of a (mini-)batch evaluation (validation / testing). More...
 
virtual void on_evaluate_forward_prop_begin (model *m)
 Called when a model begins forward propagation for evaluation (validation / testing). More...
 
virtual void on_evaluate_forward_prop_begin (model *m, Layer *l)
 Called when a layer begins forward propagation for evaluation (validation / testing). More...
 
virtual void on_evaluate_forward_prop_end (model *m)
 Called when a model ends forward propagation for evaluation (validation / testing). More...
 
virtual void on_evaluate_forward_prop_end (model *m, Layer *l)
 Called when a layer ends forward propagation for evaluation (validation / testing). More...
 
int get_batch_interval () const
 Return the batch interval. More...
 
virtual description get_description () const
 Human-readable description. More...
 
template<class Archive >
void serialize (Archive &ar)
 Store state to archive for checkpoint and restart. More...
 
void write_proto (lbann_data::Callback &proto) const
 Write a protobuf description of the callback. More...
 

Private Member Functions

void dump_images_to_summary (model const &m) const
 Add image to event file. More...
 

Private Attributes

std::shared_ptr< lbann_summarym_summarizer
 
std::unique_ptr< image_output_strategym_strategy
 
std::string m_img_source_layer_name
 
uint64_t m_epoch_interval
 
std::string m_img_format
 Image file format. Valid options: .jpg, .png, .pgm. More...
 

Additional Inherited Members

- Protected Member Functions inherited from lbann::callback_base
std::string get_multi_trainer_path (const model &m, const std::string &root_dir)
 Build a standard directory hierarchy including trainer ID. More...
 
std::string get_multi_trainer_ec_model_path (const model &m, const std::string &root_dir)
 Build a standard directory hierachy including trainer, execution context, and model information (in that order). More...
 
std::string get_multi_trainer_model_path (const model &m, const std::string &root_dir)
 Build a standard directory hierachy including trainer, model information in that order. More...
 
callback_baseoperator= (const callback_base &)=default
 Copy-assignment operator. More...
 
- Protected Attributes inherited from lbann::callback_base
int m_batch_interval
 Batch methods should once every this many steps. More...
 

Detailed Description

Callback to dump images to event files based on strategy.

Definition at line 183 of file summarize_images.hpp.

Constructor & Destructor Documentation

◆ summarize_images()

lbann::callback::summarize_images::summarize_images ( std::shared_ptr< lbann_summary > const &  summarizer,
std::unique_ptr< image_output_strategy strategy,
std::string const &  img_source_layer_name,
uint64_t  interval = 1,
std::string const &  img_format = ".jpg" 
)

summarize_images Constructor.

Parameters
summarizerPointer to lbann_summary object
strategyPointer to image image_output_strategy
img_source_layer_nameName of image layer
intervalInterval of epochs to dump images
img_formatImage file format (e.g. .jpg, .png, .pgm)

Member Function Documentation

◆ copy()

callback_base* lbann::callback::summarize_images::copy ( ) const
overridevirtual

Copy constructor.

Implements lbann::callback_base.

◆ dump_images_to_summary()

void lbann::callback::summarize_images::dump_images_to_summary ( model const &  m) const
private

Add image to event file.

◆ name()

std::string lbann::callback::summarize_images::name ( ) const
inlineoverridevirtual

Return name of callback.

Implements lbann::callback_base.

Definition at line 204 of file summarize_images.hpp.

◆ on_batch_evaluate_end()

void lbann::callback::summarize_images::on_batch_evaluate_end ( model m)
overridevirtual

Hook to pull data from lbann run.

Reimplemented from lbann::callback_base.

◆ write_specific_proto()

void lbann::callback::summarize_images::write_specific_proto ( lbann_data::Callback &  proto) const
finalvirtual

Add callback specific data to prototext

Implements lbann::callback_base.

Member Data Documentation

◆ m_epoch_interval

uint64_t lbann::callback::summarize_images::m_epoch_interval
private

Definition at line 227 of file summarize_images.hpp.

◆ m_img_format

std::string lbann::callback::summarize_images::m_img_format
private

Image file format. Valid options: .jpg, .png, .pgm.

Definition at line 230 of file summarize_images.hpp.

◆ m_img_source_layer_name

std::string lbann::callback::summarize_images::m_img_source_layer_name
private

Definition at line 224 of file summarize_images.hpp.

◆ m_strategy

std::unique_ptr<image_output_strategy> lbann::callback::summarize_images::m_strategy
private

Definition at line 221 of file summarize_images.hpp.

◆ m_summarizer

std::shared_ptr<lbann_summary> lbann::callback::summarize_images::m_summarizer
private

Definition at line 218 of file summarize_images.hpp.


The documentation for this class was generated from the following file: